update 订单日报

This commit is contained in:
2023-07-24 16:10:27 +08:00
parent 992f945274
commit acb988df79
7 changed files with 903 additions and 204 deletions

View File

@@ -1,233 +1,100 @@
package com.jsowell.pile.domain; package com.jsowell.pile.domain;
import com.jsowell.common.annotation.Excel;
import com.jsowell.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
/** /**
* 结算订单报对象 settle_order_report * 结算订单报
*
* @author jsowell
* @date 2023-06-05
*/ */
public class SettleOrderReport extends BaseEntity { @Getter
@Setter
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class SettleOrderReport {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
/** /**
* 主键 * 主键
*/ */
private Long id; private Integer id;
/** /**
* 运营商id * 运营商id
*/ */
@Excel(name = "运营商id")
private String merchantId; private String merchantId;
/** /**
* 站点id * 站点id
*/ */
@Excel(name = "站点id")
private String stationId; private String stationId;
/**
* 包含订单编号
*/
private String orderCodes;
/** /**
* 用电度数 * 用电度数
*/ */
@Excel(name = "用电度数")
private BigDecimal useElectricity; private BigDecimal useElectricity;
/** /**
* 充电次数 * 充电次数
*/ */
@Excel(name = "充电次数")
private String chargeNum; private String chargeNum;
/** /**
* 充电时长 * 充电时长
*/ */
@Excel(name = "充电时长")
private String chargeTime; private String chargeTime;
/** /**
* 电费金额 * 电费金额
*/ */
@Excel(name = "电费金额")
private BigDecimal electricityAmount; private BigDecimal electricityAmount;
/** /**
* 服务费金额 * 服务费金额
*/ */
@Excel(name = "服务费金额")
private BigDecimal serviceAmount; private BigDecimal serviceAmount;
/** /**
* 收入金额 * 收入金额
*/ */
@Excel(name = "收入金额")
private BigDecimal totalAmount; private BigDecimal totalAmount;
/** /**
* 虚拟金额 * 虚拟金额
*/ */
@Excel(name = "虚拟金额")
private BigDecimal virtualAmount; private BigDecimal virtualAmount;
/** /**
* 交易日期 * 交易日期
*/ */
@Excel(name = "交易日期")
private String tradeDate; private String tradeDate;
/** /**
* 交易金额 * 交易金额
*/ */
@Excel(name = "交易金额")
private BigDecimal tradeAmount; private BigDecimal tradeAmount;
/** /**
* 交易手续费 * 交易手续费
*/ */
@Excel(name = "交易手续费")
private BigDecimal tradeFee; private BigDecimal tradeFee;
/**
* 创建时间
*/
private Date createTime;
/** /**
* 删除标识0-正常1-删除) * 删除标识0-正常1-删除)
*/ */
private String delFlag; private String delFlag;
public void setId(Long id) {
this.id = id;
}
public Long getId() {
return id;
}
public void setMerchantId(String merchantId) {
this.merchantId = merchantId;
}
public String getMerchantId() {
return merchantId;
}
public void setStationId(String stationId) {
this.stationId = stationId;
}
public String getStationId() {
return stationId;
}
public void setUseElectricity(BigDecimal useElectricity) {
this.useElectricity = useElectricity;
}
public BigDecimal getUseElectricity() {
return useElectricity;
}
public void setChargeNum(String chargeNum) {
this.chargeNum = chargeNum;
}
public String getChargeNum() {
return chargeNum;
}
public void setChargeTime(String chargeTime) {
this.chargeTime = chargeTime;
}
public String getChargeTime() {
return chargeTime;
}
public void setElectricityAmount(BigDecimal electricityAmount) {
this.electricityAmount = electricityAmount;
}
public BigDecimal getElectricityAmount() {
return electricityAmount;
}
public void setServiceAmount(BigDecimal serviceAmount) {
this.serviceAmount = serviceAmount;
}
public BigDecimal getServiceAmount() {
return serviceAmount;
}
public void setTotalAmount(BigDecimal totalAmount) {
this.totalAmount = totalAmount;
}
public BigDecimal getTotalAmount() {
return totalAmount;
}
public void setVirtualAmount(BigDecimal virtualAmount) {
this.virtualAmount = virtualAmount;
}
public BigDecimal getVirtualAmount() {
return virtualAmount;
}
public void setTradeDate(String tradeDate) {
this.tradeDate = tradeDate;
}
public String getTradeDate() {
return tradeDate;
}
public void setTradeAmount(BigDecimal tradeAmount) {
this.tradeAmount = tradeAmount;
}
public BigDecimal getTradeAmount() {
return tradeAmount;
}
public void setTradeFee(BigDecimal tradeFee) {
this.tradeFee = tradeFee;
}
public BigDecimal getTradeFee() {
return tradeFee;
}
public void setDelFlag(String delFlag) {
this.delFlag = delFlag;
}
public String getDelFlag() {
return delFlag;
}
@Override
public String toString() {
return new ToStringBuilder(this, ToStringStyle.JSON_STYLE)
.append("id", getId())
.append("merchantId", getMerchantId())
.append("stationId", getStationId())
.append("useElectricity", getUseElectricity())
.append("chargeNum", getChargeNum())
.append("chargeTime", getChargeTime())
.append("electricityAmount", getElectricityAmount())
.append("serviceAmount", getServiceAmount())
.append("totalAmount", getTotalAmount())
.append("virtualAmount", getVirtualAmount())
.append("tradeDate", getTradeDate())
.append("tradeAmount", getTradeAmount())
.append("tradeFee", getTradeFee())
.append("createTime", getCreateTime())
.append("delFlag", getDelFlag())
.toString();
}
} }

View File

@@ -4,25 +4,75 @@ import com.jsowell.pile.domain.SettleOrderReport;
import com.jsowell.pile.dto.MerchantOrderReportDTO; import com.jsowell.pile.dto.MerchantOrderReportDTO;
import com.jsowell.pile.vo.web.SettleOrderReportVO; import com.jsowell.pile.vo.web.SettleOrderReportVO;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.List; import java.util.List;
/**
* 结算订单报Mapper接口
*
* @author jsowell
* @date 2023-06-05
*/
@Repository
public interface SettleOrderReportMapper { public interface SettleOrderReportMapper {
/**
* delete by primary key
*
* @param id primaryKey
* @return deleteCount
*/
int deleteByPrimaryKey(Integer id);
/**
* insert record to table
*
* @param record the record
* @return insert count
*/
int insert(SettleOrderReport record);
int insertOrUpdate(SettleOrderReport record);
int insertOrUpdateSelective(SettleOrderReport record);
/**
* insert record to table selective
*
* @param record the record
* @return insert count
*/
int insertSelective(SettleOrderReport record);
/**
* select by primary key
*
* @param id primary key
* @return object by primary key
*/
SettleOrderReport selectByPrimaryKey(Integer id);
/**
* update record selective
*
* @param record the updated record
* @return update count
*/
int updateByPrimaryKeySelective(SettleOrderReport record);
/**
* update record
*
* @param record the updated record
* @return update count
*/
int updateByPrimaryKey(SettleOrderReport record);
int updateBatch(List<SettleOrderReport> list);
int updateBatchSelective(List<SettleOrderReport> list);
int batchInsert(@Param("list") List<SettleOrderReport> list);
/** /**
* 查询结算订单报 * 查询结算订单报
* *
* @param id 结算订单报主键 * @param id 结算订单报主键
* @return 结算订单报 * @return 结算订单报
*/ */
public SettleOrderReport selectSettleOrderReportById(Long id); SettleOrderReport selectSettleOrderReportById(Long id);
/** /**
* 查询结算订单报列表 * 查询结算订单报列表
@@ -30,7 +80,7 @@ public interface SettleOrderReportMapper {
* @param settleOrderReport 结算订单报 * @param settleOrderReport 结算订单报
* @return 结算订单报集合 * @return 结算订单报集合
*/ */
public List<SettleOrderReport> selectSettleOrderReportList(SettleOrderReport settleOrderReport); List<SettleOrderReport> selectSettleOrderReportList(SettleOrderReport settleOrderReport);
/** /**
* 新增结算订单报 * 新增结算订单报
@@ -38,7 +88,7 @@ public interface SettleOrderReportMapper {
* @param settleOrderReport 结算订单报 * @param settleOrderReport 结算订单报
* @return 结果 * @return 结果
*/ */
public int insertSettleOrderReport(SettleOrderReport settleOrderReport); int insertSettleOrderReport(SettleOrderReport settleOrderReport);
/** /**
* 修改结算订单报 * 修改结算订单报
@@ -46,7 +96,7 @@ public interface SettleOrderReportMapper {
* @param settleOrderReport 结算订单报 * @param settleOrderReport 结算订单报
* @return 结果 * @return 结果
*/ */
public int updateSettleOrderReport(SettleOrderReport settleOrderReport); int updateSettleOrderReport(SettleOrderReport settleOrderReport);
/** /**
* 删除结算订单报 * 删除结算订单报
@@ -54,7 +104,7 @@ public interface SettleOrderReportMapper {
* @param id 结算订单报主键 * @param id 结算订单报主键
* @return 结果 * @return 结果
*/ */
public int deleteSettleOrderReportById(Long id); int deleteSettleOrderReportById(Long id);
/** /**
* 批量删除结算订单报 * 批量删除结算订单报
@@ -62,14 +112,29 @@ public interface SettleOrderReportMapper {
* @param ids 需要删除的数据主键集合 * @param ids 需要删除的数据主键集合
* @return 结果 * @return 结果
*/ */
public int deleteSettleOrderReportByIds(Long[] ids); int deleteSettleOrderReportByIds(Long[] ids);
/** /**
* 根据运营商id查询订单报表 * 根据运营商id查询订单报表
*
* @param dto * @param dto
* @return * @return
*/ */
List<SettleOrderReportVO> getMerchantOrderReport(@Param("dto") MerchantOrderReportDTO dto); List<SettleOrderReportVO> getMerchantOrderReport(@Param("dto") MerchantOrderReportDTO dto);
/**
* 根据站点id和日期查询订单日报
*
* @param stationId 站点id
* @param date 交易日期
*/
SettleOrderReport selectByStationIdAndDate(@Param("stationId") String stationId, @Param("date") String date); SettleOrderReport selectByStationIdAndDate(@Param("stationId") String stationId, @Param("date") String date);
/**
* 根据运营商id和日期查询订单日报
*
* @param merchantId 运营商id
* @param date 交易日期
*/
List<SettleOrderReport> selectByMerchantIdAndDate(@Param("merchantId") String merchantId, @Param("date") String date);
} }

View File

@@ -23,6 +23,8 @@ public interface ISettleOrderReportService {
SettleOrderReport selectByStationIdAndDate(String stationId, String date); SettleOrderReport selectByStationIdAndDate(String stationId, String date);
List<SettleOrderReport> selectByMerchantIdAndDate(String merchantId, String date);
/** /**
* 查询结算订单报列表 * 查询结算订单报列表
* *
@@ -69,4 +71,26 @@ public interface ISettleOrderReportService {
* @return * @return
*/ */
MerchantOrderReportVO getMerchantOrderReport(MerchantOrderReportDTO dto); MerchantOrderReportVO getMerchantOrderReport(MerchantOrderReportDTO dto);
int deleteByPrimaryKey(Integer id);
int insert(SettleOrderReport record);
int insertOrUpdate(SettleOrderReport record);
int insertOrUpdateSelective(SettleOrderReport record);
int insertSelective(SettleOrderReport record);
SettleOrderReport selectByPrimaryKey(Integer id);
int updateByPrimaryKeySelective(SettleOrderReport record);
int updateByPrimaryKey(SettleOrderReport record);
int updateBatch(List<SettleOrderReport> list);
int updateBatchSelective(List<SettleOrderReport> list);
int batchInsert(List<SettleOrderReport> list);
} }

View File

@@ -118,6 +118,9 @@ public class AdapayMemberAccountServiceImpl implements IAdapayMemberAccountServi
@Override @Override
public AdapayMemberAccount selectByMerchantId(String merchantId) { public AdapayMemberAccount selectByMerchantId(String merchantId) {
if (StringUtils.isBlank(merchantId)) {
return null;
}
String redisKey = CacheConstants.ADAPAY_MEMBER_ACCOUNT + merchantId; String redisKey = CacheConstants.ADAPAY_MEMBER_ACCOUNT + merchantId;
AdapayMemberAccount adapayMemberAccount = redisCache.getCacheObject(redisKey); AdapayMemberAccount adapayMemberAccount = redisCache.getCacheObject(redisKey);
if (adapayMemberAccount == null) { if (adapayMemberAccount == null) {

View File

@@ -870,16 +870,29 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
/** /**
* 订单分账逻辑 * 订单分账逻辑
* orderSplittingOperations
* 只有开通结算账户的运营商才走分账逻辑 * 只有开通结算账户的运营商才走分账逻辑
*/ */
private void ledgerAccount(OrderBasicInfo orderBasicInfo) throws BaseAdaPayException { private void orderSplittingOperations(String merchantId, String tradeDate) {
// 查询运营商有没有开通结算账户 // 查询运营商有没有开通结算账户
String merchantId = orderBasicInfo.getMerchantId();
AdapayMemberAccount adapayMemberAccount = adapayMemberAccountService.selectByMerchantId(merchantId); AdapayMemberAccount adapayMemberAccount = adapayMemberAccountService.selectByMerchantId(merchantId);
if (adapayMemberAccount == null) { if (adapayMemberAccount == null) {
logger.error("订单分账逻辑error, 运营商id:{}, 未配置结算账户", merchantId);
throw new BusinessException(ReturnCodeEnum.CODE_ADAPAY_MEMBER_IS_NULL_ERROR); throw new BusinessException(ReturnCodeEnum.CODE_ADAPAY_MEMBER_IS_NULL_ERROR);
} }
// 根据交易日期查询运营商下面所有站点的交易日报
List<SettleOrderReport> orderReports = settleOrderReportService.selectByMerchantIdAndDate(merchantId, tradeDate);
}
/**
* 交易确认
* @param orderBasicInfo 订单
* @param adapayMemberAccount 结算账户
* @throws BaseAdaPayException
*/
private void doPaymentConfirm(OrderBasicInfo orderBasicInfo, AdapayMemberAccount adapayMemberAccount) throws BaseAdaPayException {
// 查询订单的交易id // 查询订单的交易id
AdapayCallbackRecord adapayCallbackRecord = adapayCallbackRecordService.selectByOrderCode(orderBasicInfo.getOrderCode()); AdapayCallbackRecord adapayCallbackRecord = adapayCallbackRecordService.selectByOrderCode(orderBasicInfo.getOrderCode());
if (adapayCallbackRecord == null) { if (adapayCallbackRecord == null) {

View File

@@ -46,6 +46,11 @@ public class SettleOrderReportServiceImpl implements ISettleOrderReportService {
return settleOrderReportMapper.selectByStationIdAndDate(stationId, date); return settleOrderReportMapper.selectByStationIdAndDate(stationId, date);
} }
@Override
public List<SettleOrderReport> selectByMerchantIdAndDate(String merchantId, String date) {
return settleOrderReportMapper.selectByMerchantIdAndDate(merchantId, date);
}
/** /**
* 查询结算订单报列表 * 查询结算订单报列表
* *
@@ -104,6 +109,7 @@ public class SettleOrderReportServiceImpl implements ISettleOrderReportService {
/** /**
* 根据运营商id查询订单报表 * 根据运营商id查询订单报表
*
* @param dto * @param dto
* @return * @return
*/ */
@@ -161,4 +167,60 @@ public class SettleOrderReportServiceImpl implements ISettleOrderReportService {
vo.setMerchantOrderReport(report); vo.setMerchantOrderReport(report);
return vo; return vo;
} }
@Override
public int deleteByPrimaryKey(Integer id) {
return settleOrderReportMapper.deleteByPrimaryKey(id);
}
@Override
public int insert(SettleOrderReport record) {
return settleOrderReportMapper.insert(record);
}
@Override
public int insertOrUpdate(SettleOrderReport record) {
return settleOrderReportMapper.insertOrUpdate(record);
}
@Override
public int insertOrUpdateSelective(SettleOrderReport record) {
return settleOrderReportMapper.insertOrUpdateSelective(record);
}
@Override
public int insertSelective(SettleOrderReport record) {
return settleOrderReportMapper.insertSelective(record);
}
@Override
public SettleOrderReport selectByPrimaryKey(Integer id) {
return settleOrderReportMapper.selectByPrimaryKey(id);
}
@Override
public int updateByPrimaryKeySelective(SettleOrderReport record) {
return settleOrderReportMapper.updateByPrimaryKeySelective(record);
}
@Override
public int updateByPrimaryKey(SettleOrderReport record) {
return settleOrderReportMapper.updateByPrimaryKey(record);
}
@Override
public int updateBatch(List<SettleOrderReport> list) {
return settleOrderReportMapper.updateBatch(list);
}
@Override
public int updateBatchSelective(List<SettleOrderReport> list) {
return settleOrderReportMapper.updateBatchSelective(list);
}
@Override
public int batchInsert(List<SettleOrderReport> list) {
return settleOrderReportMapper.batchInsert(list);
}
} }

View File

@@ -1,37 +1,694 @@
<?xml version="1.0" encoding="UTF-8" ?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.jsowell.pile.mapper.SettleOrderReportMapper"> <mapper namespace="com.jsowell.pile.mapper.SettleOrderReportMapper">
<resultMap id="BaseResultMap" type="com.jsowell.pile.domain.SettleOrderReport">
<!--@mbg.generated-->
<!--@Table settle_order_report-->
<id column="id" jdbcType="INTEGER" property="id" />
<result column="merchant_id" jdbcType="VARCHAR" property="merchantId" />
<result column="station_id" jdbcType="VARCHAR" property="stationId" />
<result column="order_codes" jdbcType="LONGVARCHAR" property="orderCodes" />
<result column="use_electricity" jdbcType="DECIMAL" property="useElectricity" />
<result column="charge_num" jdbcType="VARCHAR" property="chargeNum" />
<result column="charge_time" jdbcType="VARCHAR" property="chargeTime" />
<result column="electricity_amount" jdbcType="DECIMAL" property="electricityAmount" />
<result column="service_amount" jdbcType="DECIMAL" property="serviceAmount" />
<result column="total_amount" jdbcType="DECIMAL" property="totalAmount" />
<result column="virtual_amount" jdbcType="DECIMAL" property="virtualAmount" />
<result column="trade_date" jdbcType="VARCHAR" property="tradeDate" />
<result column="trade_amount" jdbcType="DECIMAL" property="tradeAmount" />
<result column="trade_fee" jdbcType="DECIMAL" property="tradeFee" />
<result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
<result column="del_flag" jdbcType="VARCHAR" property="delFlag" />
</resultMap>
<sql id="Base_Column_List">
<!--@mbg.generated-->
id, merchant_id, station_id, order_codes, use_electricity, charge_num, charge_time,
electricity_amount, service_amount, total_amount, virtual_amount, trade_date, trade_amount,
trade_fee, create_time, del_flag
</sql>
<select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
<!--@mbg.generated-->
select
<include refid="Base_Column_List" />
from settle_order_report
where id = #{id,jdbcType=INTEGER}
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.Integer">
<!--@mbg.generated-->
delete from settle_order_report
where id = #{id,jdbcType=INTEGER}
</delete>
<insert id="insert" keyColumn="id" keyProperty="id" parameterType="com.jsowell.pile.domain.SettleOrderReport" useGeneratedKeys="true">
<!--@mbg.generated-->
insert into settle_order_report (merchant_id, station_id, order_codes,
use_electricity, charge_num, charge_time,
electricity_amount, service_amount, total_amount,
virtual_amount, trade_date, trade_amount,
trade_fee, create_time, del_flag
)
values (#{merchantId,jdbcType=VARCHAR}, #{stationId,jdbcType=VARCHAR}, #{orderCodes,jdbcType=LONGVARCHAR},
#{useElectricity,jdbcType=DECIMAL}, #{chargeNum,jdbcType=VARCHAR}, #{chargeTime,jdbcType=VARCHAR},
#{electricityAmount,jdbcType=DECIMAL}, #{serviceAmount,jdbcType=DECIMAL}, #{totalAmount,jdbcType=DECIMAL},
#{virtualAmount,jdbcType=DECIMAL}, #{tradeDate,jdbcType=VARCHAR}, #{tradeAmount,jdbcType=DECIMAL},
#{tradeFee,jdbcType=DECIMAL}, #{createTime,jdbcType=TIMESTAMP}, #{delFlag,jdbcType=VARCHAR}
)
</insert>
<insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.jsowell.pile.domain.SettleOrderReport" useGeneratedKeys="true">
<!--@mbg.generated-->
insert into settle_order_report
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="merchantId != null">
merchant_id,
</if>
<if test="stationId != null">
station_id,
</if>
<if test="orderCodes != null">
order_codes,
</if>
<if test="useElectricity != null">
use_electricity,
</if>
<if test="chargeNum != null">
charge_num,
</if>
<if test="chargeTime != null">
charge_time,
</if>
<if test="electricityAmount != null">
electricity_amount,
</if>
<if test="serviceAmount != null">
service_amount,
</if>
<if test="totalAmount != null">
total_amount,
</if>
<if test="virtualAmount != null">
virtual_amount,
</if>
<if test="tradeDate != null">
trade_date,
</if>
<if test="tradeAmount != null">
trade_amount,
</if>
<if test="tradeFee != null">
trade_fee,
</if>
<if test="createTime != null">
create_time,
</if>
<if test="delFlag != null">
del_flag,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="merchantId != null">
#{merchantId,jdbcType=VARCHAR},
</if>
<if test="stationId != null">
#{stationId,jdbcType=VARCHAR},
</if>
<if test="orderCodes != null">
#{orderCodes,jdbcType=LONGVARCHAR},
</if>
<if test="useElectricity != null">
#{useElectricity,jdbcType=DECIMAL},
</if>
<if test="chargeNum != null">
#{chargeNum,jdbcType=VARCHAR},
</if>
<if test="chargeTime != null">
#{chargeTime,jdbcType=VARCHAR},
</if>
<if test="electricityAmount != null">
#{electricityAmount,jdbcType=DECIMAL},
</if>
<if test="serviceAmount != null">
#{serviceAmount,jdbcType=DECIMAL},
</if>
<if test="totalAmount != null">
#{totalAmount,jdbcType=DECIMAL},
</if>
<if test="virtualAmount != null">
#{virtualAmount,jdbcType=DECIMAL},
</if>
<if test="tradeDate != null">
#{tradeDate,jdbcType=VARCHAR},
</if>
<if test="tradeAmount != null">
#{tradeAmount,jdbcType=DECIMAL},
</if>
<if test="tradeFee != null">
#{tradeFee,jdbcType=DECIMAL},
</if>
<if test="createTime != null">
#{createTime,jdbcType=TIMESTAMP},
</if>
<if test="delFlag != null">
#{delFlag,jdbcType=VARCHAR},
</if>
</trim>
</insert>
<update id="updateByPrimaryKeySelective" parameterType="com.jsowell.pile.domain.SettleOrderReport">
<!--@mbg.generated-->
update settle_order_report
<set>
<if test="merchantId != null">
merchant_id = #{merchantId,jdbcType=VARCHAR},
</if>
<if test="stationId != null">
station_id = #{stationId,jdbcType=VARCHAR},
</if>
<if test="orderCodes != null">
order_codes = #{orderCodes,jdbcType=LONGVARCHAR},
</if>
<if test="useElectricity != null">
use_electricity = #{useElectricity,jdbcType=DECIMAL},
</if>
<if test="chargeNum != null">
charge_num = #{chargeNum,jdbcType=VARCHAR},
</if>
<if test="chargeTime != null">
charge_time = #{chargeTime,jdbcType=VARCHAR},
</if>
<if test="electricityAmount != null">
electricity_amount = #{electricityAmount,jdbcType=DECIMAL},
</if>
<if test="serviceAmount != null">
service_amount = #{serviceAmount,jdbcType=DECIMAL},
</if>
<if test="totalAmount != null">
total_amount = #{totalAmount,jdbcType=DECIMAL},
</if>
<if test="virtualAmount != null">
virtual_amount = #{virtualAmount,jdbcType=DECIMAL},
</if>
<if test="tradeDate != null">
trade_date = #{tradeDate,jdbcType=VARCHAR},
</if>
<if test="tradeAmount != null">
trade_amount = #{tradeAmount,jdbcType=DECIMAL},
</if>
<if test="tradeFee != null">
trade_fee = #{tradeFee,jdbcType=DECIMAL},
</if>
<if test="createTime != null">
create_time = #{createTime,jdbcType=TIMESTAMP},
</if>
<if test="delFlag != null">
del_flag = #{delFlag,jdbcType=VARCHAR},
</if>
</set>
where id = #{id,jdbcType=INTEGER}
</update>
<update id="updateByPrimaryKey" parameterType="com.jsowell.pile.domain.SettleOrderReport">
<!--@mbg.generated-->
update settle_order_report
set merchant_id = #{merchantId,jdbcType=VARCHAR},
station_id = #{stationId,jdbcType=VARCHAR},
order_codes = #{orderCodes,jdbcType=LONGVARCHAR},
use_electricity = #{useElectricity,jdbcType=DECIMAL},
charge_num = #{chargeNum,jdbcType=VARCHAR},
charge_time = #{chargeTime,jdbcType=VARCHAR},
electricity_amount = #{electricityAmount,jdbcType=DECIMAL},
service_amount = #{serviceAmount,jdbcType=DECIMAL},
total_amount = #{totalAmount,jdbcType=DECIMAL},
virtual_amount = #{virtualAmount,jdbcType=DECIMAL},
trade_date = #{tradeDate,jdbcType=VARCHAR},
trade_amount = #{tradeAmount,jdbcType=DECIMAL},
trade_fee = #{tradeFee,jdbcType=DECIMAL},
create_time = #{createTime,jdbcType=TIMESTAMP},
del_flag = #{delFlag,jdbcType=VARCHAR}
where id = #{id,jdbcType=INTEGER}
</update>
<update id="updateBatch" parameterType="java.util.List">
<!--@mbg.generated-->
update settle_order_report
<trim prefix="set" suffixOverrides=",">
<trim prefix="merchant_id = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when id = #{item.id,jdbcType=INTEGER} then #{item.merchantId,jdbcType=VARCHAR}
</foreach>
</trim>
<trim prefix="station_id = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when id = #{item.id,jdbcType=INTEGER} then #{item.stationId,jdbcType=VARCHAR}
</foreach>
</trim>
<trim prefix="order_codes = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when id = #{item.id,jdbcType=INTEGER} then #{item.orderCodes,jdbcType=LONGVARCHAR}
</foreach>
</trim>
<trim prefix="use_electricity = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when id = #{item.id,jdbcType=INTEGER} then #{item.useElectricity,jdbcType=DECIMAL}
</foreach>
</trim>
<trim prefix="charge_num = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when id = #{item.id,jdbcType=INTEGER} then #{item.chargeNum,jdbcType=VARCHAR}
</foreach>
</trim>
<trim prefix="charge_time = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when id = #{item.id,jdbcType=INTEGER} then #{item.chargeTime,jdbcType=VARCHAR}
</foreach>
</trim>
<trim prefix="electricity_amount = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when id = #{item.id,jdbcType=INTEGER} then #{item.electricityAmount,jdbcType=DECIMAL}
</foreach>
</trim>
<trim prefix="service_amount = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when id = #{item.id,jdbcType=INTEGER} then #{item.serviceAmount,jdbcType=DECIMAL}
</foreach>
</trim>
<trim prefix="total_amount = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when id = #{item.id,jdbcType=INTEGER} then #{item.totalAmount,jdbcType=DECIMAL}
</foreach>
</trim>
<trim prefix="virtual_amount = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when id = #{item.id,jdbcType=INTEGER} then #{item.virtualAmount,jdbcType=DECIMAL}
</foreach>
</trim>
<trim prefix="trade_date = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when id = #{item.id,jdbcType=INTEGER} then #{item.tradeDate,jdbcType=VARCHAR}
</foreach>
</trim>
<trim prefix="trade_amount = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when id = #{item.id,jdbcType=INTEGER} then #{item.tradeAmount,jdbcType=DECIMAL}
</foreach>
</trim>
<trim prefix="trade_fee = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when id = #{item.id,jdbcType=INTEGER} then #{item.tradeFee,jdbcType=DECIMAL}
</foreach>
</trim>
<trim prefix="create_time = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when id = #{item.id,jdbcType=INTEGER} then #{item.createTime,jdbcType=TIMESTAMP}
</foreach>
</trim>
<trim prefix="del_flag = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when id = #{item.id,jdbcType=INTEGER} then #{item.delFlag,jdbcType=VARCHAR}
</foreach>
</trim>
</trim>
where id in
<foreach close=")" collection="list" item="item" open="(" separator=", ">
#{item.id,jdbcType=INTEGER}
</foreach>
</update>
<update id="updateBatchSelective" parameterType="java.util.List">
<!--@mbg.generated-->
update settle_order_report
<trim prefix="set" suffixOverrides=",">
<trim prefix="merchant_id = case" suffix="end,">
<foreach collection="list" index="index" item="item">
<if test="item.merchantId != null">
when id = #{item.id,jdbcType=INTEGER} then #{item.merchantId,jdbcType=VARCHAR}
</if>
</foreach>
</trim>
<trim prefix="station_id = case" suffix="end,">
<foreach collection="list" index="index" item="item">
<if test="item.stationId != null">
when id = #{item.id,jdbcType=INTEGER} then #{item.stationId,jdbcType=VARCHAR}
</if>
</foreach>
</trim>
<trim prefix="order_codes = case" suffix="end,">
<foreach collection="list" index="index" item="item">
<if test="item.orderCodes != null">
when id = #{item.id,jdbcType=INTEGER} then #{item.orderCodes,jdbcType=LONGVARCHAR}
</if>
</foreach>
</trim>
<trim prefix="use_electricity = case" suffix="end,">
<foreach collection="list" index="index" item="item">
<if test="item.useElectricity != null">
when id = #{item.id,jdbcType=INTEGER} then #{item.useElectricity,jdbcType=DECIMAL}
</if>
</foreach>
</trim>
<trim prefix="charge_num = case" suffix="end,">
<foreach collection="list" index="index" item="item">
<if test="item.chargeNum != null">
when id = #{item.id,jdbcType=INTEGER} then #{item.chargeNum,jdbcType=VARCHAR}
</if>
</foreach>
</trim>
<trim prefix="charge_time = case" suffix="end,">
<foreach collection="list" index="index" item="item">
<if test="item.chargeTime != null">
when id = #{item.id,jdbcType=INTEGER} then #{item.chargeTime,jdbcType=VARCHAR}
</if>
</foreach>
</trim>
<trim prefix="electricity_amount = case" suffix="end,">
<foreach collection="list" index="index" item="item">
<if test="item.electricityAmount != null">
when id = #{item.id,jdbcType=INTEGER} then #{item.electricityAmount,jdbcType=DECIMAL}
</if>
</foreach>
</trim>
<trim prefix="service_amount = case" suffix="end,">
<foreach collection="list" index="index" item="item">
<if test="item.serviceAmount != null">
when id = #{item.id,jdbcType=INTEGER} then #{item.serviceAmount,jdbcType=DECIMAL}
</if>
</foreach>
</trim>
<trim prefix="total_amount = case" suffix="end,">
<foreach collection="list" index="index" item="item">
<if test="item.totalAmount != null">
when id = #{item.id,jdbcType=INTEGER} then #{item.totalAmount,jdbcType=DECIMAL}
</if>
</foreach>
</trim>
<trim prefix="virtual_amount = case" suffix="end,">
<foreach collection="list" index="index" item="item">
<if test="item.virtualAmount != null">
when id = #{item.id,jdbcType=INTEGER} then #{item.virtualAmount,jdbcType=DECIMAL}
</if>
</foreach>
</trim>
<trim prefix="trade_date = case" suffix="end,">
<foreach collection="list" index="index" item="item">
<if test="item.tradeDate != null">
when id = #{item.id,jdbcType=INTEGER} then #{item.tradeDate,jdbcType=VARCHAR}
</if>
</foreach>
</trim>
<trim prefix="trade_amount = case" suffix="end,">
<foreach collection="list" index="index" item="item">
<if test="item.tradeAmount != null">
when id = #{item.id,jdbcType=INTEGER} then #{item.tradeAmount,jdbcType=DECIMAL}
</if>
</foreach>
</trim>
<trim prefix="trade_fee = case" suffix="end,">
<foreach collection="list" index="index" item="item">
<if test="item.tradeFee != null">
when id = #{item.id,jdbcType=INTEGER} then #{item.tradeFee,jdbcType=DECIMAL}
</if>
</foreach>
</trim>
<trim prefix="create_time = case" suffix="end,">
<foreach collection="list" index="index" item="item">
<if test="item.createTime != null">
when id = #{item.id,jdbcType=INTEGER} then #{item.createTime,jdbcType=TIMESTAMP}
</if>
</foreach>
</trim>
<trim prefix="del_flag = case" suffix="end,">
<foreach collection="list" index="index" item="item">
<if test="item.delFlag != null">
when id = #{item.id,jdbcType=INTEGER} then #{item.delFlag,jdbcType=VARCHAR}
</if>
</foreach>
</trim>
</trim>
where id in
<foreach close=")" collection="list" item="item" open="(" separator=", ">
#{item.id,jdbcType=INTEGER}
</foreach>
</update>
<insert id="batchInsert" keyColumn="id" keyProperty="id" parameterType="map" useGeneratedKeys="true">
<!--@mbg.generated-->
insert into settle_order_report
(merchant_id, station_id, order_codes, use_electricity, charge_num, charge_time,
electricity_amount, service_amount, total_amount, virtual_amount, trade_date, trade_amount,
trade_fee, create_time, del_flag)
values
<foreach collection="list" item="item" separator=",">
(#{item.merchantId,jdbcType=VARCHAR}, #{item.stationId,jdbcType=VARCHAR}, #{item.orderCodes,jdbcType=LONGVARCHAR},
#{item.useElectricity,jdbcType=DECIMAL}, #{item.chargeNum,jdbcType=VARCHAR}, #{item.chargeTime,jdbcType=VARCHAR},
#{item.electricityAmount,jdbcType=DECIMAL}, #{item.serviceAmount,jdbcType=DECIMAL},
#{item.totalAmount,jdbcType=DECIMAL}, #{item.virtualAmount,jdbcType=DECIMAL}, #{item.tradeDate,jdbcType=VARCHAR},
#{item.tradeAmount,jdbcType=DECIMAL}, #{item.tradeFee,jdbcType=DECIMAL}, #{item.createTime,jdbcType=TIMESTAMP},
#{item.delFlag,jdbcType=VARCHAR})
</foreach>
</insert>
<insert id="insertOrUpdate" keyColumn="id" keyProperty="id" parameterType="com.jsowell.pile.domain.SettleOrderReport" useGeneratedKeys="true">
<!--@mbg.generated-->
insert into settle_order_report
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null">
id,
</if>
merchant_id,
station_id,
order_codes,
use_electricity,
charge_num,
charge_time,
electricity_amount,
service_amount,
total_amount,
virtual_amount,
trade_date,
trade_amount,
trade_fee,
create_time,
del_flag,
</trim>
values
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null">
#{id,jdbcType=INTEGER},
</if>
#{merchantId,jdbcType=VARCHAR},
#{stationId,jdbcType=VARCHAR},
#{orderCodes,jdbcType=LONGVARCHAR},
#{useElectricity,jdbcType=DECIMAL},
#{chargeNum,jdbcType=VARCHAR},
#{chargeTime,jdbcType=VARCHAR},
#{electricityAmount,jdbcType=DECIMAL},
#{serviceAmount,jdbcType=DECIMAL},
#{totalAmount,jdbcType=DECIMAL},
#{virtualAmount,jdbcType=DECIMAL},
#{tradeDate,jdbcType=VARCHAR},
#{tradeAmount,jdbcType=DECIMAL},
#{tradeFee,jdbcType=DECIMAL},
#{createTime,jdbcType=TIMESTAMP},
#{delFlag,jdbcType=VARCHAR},
</trim>
on duplicate key update
<trim suffixOverrides=",">
<if test="id != null">
id = #{id,jdbcType=INTEGER},
</if>
merchant_id = #{merchantId,jdbcType=VARCHAR},
station_id = #{stationId,jdbcType=VARCHAR},
order_codes = #{orderCodes,jdbcType=LONGVARCHAR},
use_electricity = #{useElectricity,jdbcType=DECIMAL},
charge_num = #{chargeNum,jdbcType=VARCHAR},
charge_time = #{chargeTime,jdbcType=VARCHAR},
electricity_amount = #{electricityAmount,jdbcType=DECIMAL},
service_amount = #{serviceAmount,jdbcType=DECIMAL},
total_amount = #{totalAmount,jdbcType=DECIMAL},
virtual_amount = #{virtualAmount,jdbcType=DECIMAL},
trade_date = #{tradeDate,jdbcType=VARCHAR},
trade_amount = #{tradeAmount,jdbcType=DECIMAL},
trade_fee = #{tradeFee,jdbcType=DECIMAL},
create_time = #{createTime,jdbcType=TIMESTAMP},
del_flag = #{delFlag,jdbcType=VARCHAR},
</trim>
</insert>
<insert id="insertOrUpdateSelective" keyColumn="id" keyProperty="id" parameterType="com.jsowell.pile.domain.SettleOrderReport" useGeneratedKeys="true">
<!--@mbg.generated-->
insert into settle_order_report
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null">
id,
</if>
<if test="merchantId != null">
merchant_id,
</if>
<if test="stationId != null">
station_id,
</if>
<if test="orderCodes != null">
order_codes,
</if>
<if test="useElectricity != null">
use_electricity,
</if>
<if test="chargeNum != null">
charge_num,
</if>
<if test="chargeTime != null">
charge_time,
</if>
<if test="electricityAmount != null">
electricity_amount,
</if>
<if test="serviceAmount != null">
service_amount,
</if>
<if test="totalAmount != null">
total_amount,
</if>
<if test="virtualAmount != null">
virtual_amount,
</if>
<if test="tradeDate != null">
trade_date,
</if>
<if test="tradeAmount != null">
trade_amount,
</if>
<if test="tradeFee != null">
trade_fee,
</if>
<if test="createTime != null">
create_time,
</if>
<if test="delFlag != null">
del_flag,
</if>
</trim>
values
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null">
#{id,jdbcType=INTEGER},
</if>
<if test="merchantId != null">
#{merchantId,jdbcType=VARCHAR},
</if>
<if test="stationId != null">
#{stationId,jdbcType=VARCHAR},
</if>
<if test="orderCodes != null">
#{orderCodes,jdbcType=LONGVARCHAR},
</if>
<if test="useElectricity != null">
#{useElectricity,jdbcType=DECIMAL},
</if>
<if test="chargeNum != null">
#{chargeNum,jdbcType=VARCHAR},
</if>
<if test="chargeTime != null">
#{chargeTime,jdbcType=VARCHAR},
</if>
<if test="electricityAmount != null">
#{electricityAmount,jdbcType=DECIMAL},
</if>
<if test="serviceAmount != null">
#{serviceAmount,jdbcType=DECIMAL},
</if>
<if test="totalAmount != null">
#{totalAmount,jdbcType=DECIMAL},
</if>
<if test="virtualAmount != null">
#{virtualAmount,jdbcType=DECIMAL},
</if>
<if test="tradeDate != null">
#{tradeDate,jdbcType=VARCHAR},
</if>
<if test="tradeAmount != null">
#{tradeAmount,jdbcType=DECIMAL},
</if>
<if test="tradeFee != null">
#{tradeFee,jdbcType=DECIMAL},
</if>
<if test="createTime != null">
#{createTime,jdbcType=TIMESTAMP},
</if>
<if test="delFlag != null">
#{delFlag,jdbcType=VARCHAR},
</if>
</trim>
on duplicate key update
<trim suffixOverrides=",">
<if test="id != null">
id = #{id,jdbcType=INTEGER},
</if>
<if test="merchantId != null">
merchant_id = #{merchantId,jdbcType=VARCHAR},
</if>
<if test="stationId != null">
station_id = #{stationId,jdbcType=VARCHAR},
</if>
<if test="orderCodes != null">
order_codes = #{orderCodes,jdbcType=LONGVARCHAR},
</if>
<if test="useElectricity != null">
use_electricity = #{useElectricity,jdbcType=DECIMAL},
</if>
<if test="chargeNum != null">
charge_num = #{chargeNum,jdbcType=VARCHAR},
</if>
<if test="chargeTime != null">
charge_time = #{chargeTime,jdbcType=VARCHAR},
</if>
<if test="electricityAmount != null">
electricity_amount = #{electricityAmount,jdbcType=DECIMAL},
</if>
<if test="serviceAmount != null">
service_amount = #{serviceAmount,jdbcType=DECIMAL},
</if>
<if test="totalAmount != null">
total_amount = #{totalAmount,jdbcType=DECIMAL},
</if>
<if test="virtualAmount != null">
virtual_amount = #{virtualAmount,jdbcType=DECIMAL},
</if>
<if test="tradeDate != null">
trade_date = #{tradeDate,jdbcType=VARCHAR},
</if>
<if test="tradeAmount != null">
trade_amount = #{tradeAmount,jdbcType=DECIMAL},
</if>
<if test="tradeFee != null">
trade_fee = #{tradeFee,jdbcType=DECIMAL},
</if>
<if test="createTime != null">
create_time = #{createTime,jdbcType=TIMESTAMP},
</if>
<if test="delFlag != null">
del_flag = #{delFlag,jdbcType=VARCHAR},
</if>
</trim>
</insert>
<resultMap type="com.jsowell.pile.domain.SettleOrderReport" id="SettleOrderReportResult"> <resultMap id="SettleOrderReportResult" type="com.jsowell.pile.domain.SettleOrderReport">
<result property="id" column="id" /> <result column="id" property="id" />
<result property="merchantId" column="merchant_id" /> <result column="merchant_id" property="merchantId" />
<result property="stationId" column="station_id" /> <result column="station_id" property="stationId" />
<result property="useElectricity" column="use_electricity" /> <result column="use_electricity" property="useElectricity" />
<result property="chargeNum" column="charge_num" /> <result column="charge_num" property="chargeNum" />
<result property="chargeTime" column="charge_time" /> <result column="charge_time" property="chargeTime" />
<result property="electricityAmount" column="electricity_amount" /> <result column="electricity_amount" property="electricityAmount" />
<result property="serviceAmount" column="service_amount" /> <result column="service_amount" property="serviceAmount" />
<result property="totalAmount" column="total_amount" /> <result column="total_amount" property="totalAmount" />
<result property="virtualAmount" column="virtual_amount" /> <result column="virtual_amount" property="virtualAmount" />
<result property="tradeDate" column="trade_date" /> <result column="trade_date" property="tradeDate" />
<result property="tradeAmount" column="trade_amount" /> <result column="trade_amount" property="tradeAmount" />
<result property="tradeFee" column="trade_fee" /> <result column="trade_fee" property="tradeFee" />
<result property="createTime" column="create_time" /> <result column="create_time" property="createTime" />
<result property="delFlag" column="del_flag" /> <result column="del_flag" property="delFlag" />
</resultMap> </resultMap>
<sql id="selectSettleOrderReportVo"> <sql id="selectSettleOrderReportVo">
select id, merchant_id, station_id, use_electricity, charge_num, charge_time, electricity_amount, service_amount, total_amount, virtual_amount, trade_date, trade_amount, trade_fee, create_time, del_flag from settle_order_report select
</sql> <include refid="Base_Column_List"/>
from settle_order_report
<sql id="Base_Column_List">
id, merchant_id, station_id, use_electricity, charge_num, charge_time, electricity_amount, service_amount, total_amount, virtual_amount, trade_date, trade_amount, trade_fee, create_time, del_flag
</sql> </sql>
<select id="selectSettleOrderReportList" parameterType="com.jsowell.pile.domain.SettleOrderReport" resultMap="SettleOrderReportResult"> <select id="selectSettleOrderReportList" parameterType="com.jsowell.pile.domain.SettleOrderReport" resultMap="SettleOrderReportResult">
<include refid="selectSettleOrderReportVo"/> <include refid="selectSettleOrderReportVo" />
<where> <where>
<if test="merchantId != null and merchantId != ''"> and merchant_id = #{merchantId}</if> <if test="merchantId != null and merchantId != ''"> and merchant_id = #{merchantId}</if>
<if test="stationId != null and stationId != ''"> and station_id = #{stationId}</if> <if test="stationId != null and stationId != ''"> and station_id = #{stationId}</if>
@@ -50,7 +707,7 @@
</select> </select>
<select id="selectSettleOrderReportById" parameterType="Long" resultMap="SettleOrderReportResult"> <select id="selectSettleOrderReportById" parameterType="Long" resultMap="SettleOrderReportResult">
<include refid="selectSettleOrderReportVo"/> <include refid="selectSettleOrderReportVo" />
where id = #{id} where id = #{id}
</select> </select>
@@ -119,7 +776,7 @@
<delete id="deleteSettleOrderReportByIds" parameterType="String"> <delete id="deleteSettleOrderReportByIds" parameterType="String">
delete from settle_order_report where id in delete from settle_order_report where id in
<foreach item="id" collection="array" open="(" separator="," close=")"> <foreach close=")" collection="array" item="id" open="(" separator=",">
#{id} #{id}
</foreach> </foreach>
</delete> </delete>
@@ -157,10 +814,18 @@
</select> </select>
<select id="selectByStationIdAndDate" resultMap="SettleOrderReportResult"> <select id="selectByStationIdAndDate" resultMap="SettleOrderReportResult">
select <include refid="Base_Column_List"/> select <include refid="Base_Column_List" />
from settle_order_report from settle_order_report
where del_flag = '0' where del_flag = '0'
and station_id = #{stationId,jdbcType=VARCHAR} and station_id = #{stationId,jdbcType=VARCHAR}
and trade_date = #{date,jdbcType=VARCHAR} and trade_date = #{date,jdbcType=VARCHAR}
</select> </select>
<select id="selectByMerchantIdAndDate" resultMap="SettleOrderReportResult">
select <include refid="Base_Column_List" />
from settle_order_report
where del_flag = '0'
and merchant_id = #{merchantId,jdbcType=VARCHAR}
and trade_date = #{date,jdbcType=VARCHAR}
</select>
</mapper> </mapper>