| @@ -145,13 +145,6 @@ public class WxFinanceController extends BaseController { | |||
| @ApiOperation("预收科目新增修改") | |||
| @PostMapping("saveAdvanceFees") | |||
| public ResultData saveAdvanceType(@RequestBody WxEnergyFees record) { | |||
| record.updateTenantInfo(getTenantInfo()); | |||
| if (StringUtils.isBlank(record.getRate())) { | |||
| return new ResultData(Result.ERROR,"请填写抵扣比例"); | |||
| } | |||
| if (new BigDecimal(record.getRate()).compareTo(new BigDecimal(100)) > 0 ) { | |||
| return new ResultData(Result.ERROR,"冲抵比例不能超过100"); | |||
| } | |||
| record.setBillType(EnumBillAllType.ADVANCE.getCode()); | |||
| record.setFixedPrice(EnumYesOrNo.YES.getCode()); | |||
| wxEnergyService.saveOrUpdateFees(record); | |||
| @@ -162,7 +155,7 @@ public class WxFinanceController extends BaseController { | |||
| @PostMapping("saveAdvance") | |||
| public ResultData saveAdvance(@RequestBody WxFinanceReceive record) { | |||
| record.updateTenantInfo(getTenantInfo()); | |||
| if (StringUtils.isBlank(record.getTotalMoney())) { | |||
| if (StringUtils.isBlank(record.getReceiveMoney())) { | |||
| return new ResultData(Result.ERROR,"请填写金额"); | |||
| } | |||
| if (null == record.getFeesId()) { | |||
| @@ -187,20 +180,18 @@ public class WxFinanceController extends BaseController { | |||
| @PostMapping("setoffList") | |||
| public ResultData setoffList(@ModelAttribute FinanceSetOffDTO dto) { | |||
| dto.updateTenantInfo(getTenantInfo()); | |||
| return new ResultData(wxFinanceService.getSetOffList(dto)); | |||
| return new ResultData(wxFinanceService.getSetOffList(dto,true)); | |||
| } | |||
| @ApiOperation("计算冲抵") | |||
| @PostMapping("calcueteSetoff") | |||
| public ResultData calcueteSetoff(@RequestBody FinanceSetOffDTO dto) { | |||
| dto.updateTenantInfo(getTenantInfo()); | |||
| WxBillBaseEntity bill = wxFinanceService.calcuetSetOff(dto,this.getUser()); | |||
| List<WxBillBaseEntity> bill = wxFinanceService.calcuetSetOff(dto,this.getUser()); | |||
| if (null == bill) { | |||
| return new ResultData(Result.ERROR,"未冲抵"); | |||
| } | |||
| List<WxBillBaseEntity> list = new ArrayList<WxBillBaseEntity>(); | |||
| list.add(bill); | |||
| return new ResultData(wxFinanceService.getBills(dto, list)); | |||
| return new ResultData(bill); | |||
| } | |||
| @ApiOperation("新增收款单") | |||
| @@ -211,7 +202,7 @@ public class WxFinanceController extends BaseController { | |||
| return new ResultData(Result.ERROR,"请选择账单和支付方式"); | |||
| } | |||
| List<WxBillBaseEntity> list = wxFinanceService.createReceive(record,this.getUser()); | |||
| return new ResultData(wxFinanceService.getBills(record, list)); | |||
| return new ResultData(); | |||
| } | |||
| @GetMapping("receiveStatus") | |||
| @@ -2857,7 +2857,7 @@ CREATE TABLE `wx_finance_receive` ( | |||
| UNIQUE KEY `id_UNIQUE` (`id`) | |||
| ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='能耗表'; | |||
| CREATE TABLE `wx_finance_receive_bill` ( | |||
| CREATE TABLE `wx_finance_setoff_bill` ( | |||
| `id` bigint(20) NOT NULL COMMENT '主键ID', | |||
| `tenant_id` varchar(5) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '租户ID', | |||
| `parent_tenant_id` varchar(5) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '父租户ID', | |||
| @@ -806,106 +806,7 @@ alter table wx_bill_other_deposit_97 add column set_off varchar(30) COMMENT | |||
| alter table wx_bill_other_deposit_98 add column set_off varchar(30) COMMENT '抵扣金额'; | |||
| alter table wx_bill_other_deposit_99 add column set_off varchar(30) COMMENT '抵扣金额'; | |||
| alter table wx_energy_fees_0 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_1 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_2 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_3 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_4 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_5 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_6 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_7 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_8 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_9 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_10 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_11 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_12 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_13 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_14 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_15 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_16 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_17 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_18 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_19 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_20 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_21 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_22 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_23 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_24 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_25 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_26 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_27 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_28 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_29 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_30 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_31 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_32 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_33 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_34 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_35 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_36 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_37 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_38 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_39 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_40 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_41 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_42 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_43 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_44 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_45 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_46 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_47 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_48 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_49 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_50 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_51 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_52 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_53 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_54 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_55 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_56 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_57 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_58 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_59 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_60 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_61 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_62 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_63 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_64 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_65 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_66 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_67 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_68 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_69 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_70 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_71 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_72 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_73 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_74 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_75 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_76 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_77 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_78 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_79 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_80 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_81 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_82 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_83 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_84 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_85 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_86 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_87 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_88 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_89 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_90 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_91 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_92 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_93 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_94 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_95 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_96 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_97 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_98 add column rate varchar(30) comment '抵扣比例';; | |||
| alter table wx_energy_fees_99 add column rate varchar(30) comment '抵扣比例';; | |||
| @@ -14,8 +14,9 @@ import lombok.Data; | |||
| public class WxBillPayDTO extends TenantEntity{ | |||
| private Long id; | |||
| private Integer billTypeValue;// EnumBillAllType | |||
| private Long advanceId;//收款单单号 | |||
| private String addpay;//支付金额 | |||
| private boolean isSetOff = false;//是否冲抵 | |||
| private String setOff;//冲抵金额 | |||
| private WxBillPayWay payWayObject;//支付方式 | |||
| private Long payWay;//传值 | |||
| private String remark; | |||
| @@ -179,9 +179,6 @@ public class WxEnergyFees extends TenantEntity { | |||
| } | |||
| } | |||
| @io.swagger.annotations.ApiModelProperty(value="冲抵比例",name="rate") | |||
| private String rate; | |||
| @TableField(exist = false) | |||
| private List<Long> feesIds;//冲抵科目 | |||
| @TableField(exist = false) | |||
| @@ -13,6 +13,7 @@ import lombok.EqualsAndHashCode; | |||
| import lombok.ToString; | |||
| import java.math.BigDecimal; | |||
| import java.util.ArrayList; | |||
| import java.util.Date; | |||
| import java.util.List; | |||
| /** | |||
| @@ -45,17 +46,21 @@ public class WxFinanceReceive extends TenantEntity { | |||
| @TableField(exist = false) | |||
| private String feesName; | |||
| @io.swagger.annotations.ApiModelProperty(value = "收款总金额", name = "totalMoney") | |||
| private String totalMoney; | |||
| @io.swagger.annotations.ApiModelProperty(value = "实收金额", name = "receiveMoney") | |||
| private String receiveMoney; | |||
| @io.swagger.annotations.ApiModelProperty(value = "已使用金额(预充值用)", name = "useMoney") | |||
| //跟useMoney的区别是,这个字段是记录此次收款冲抵了多少费用。useMoney是使用了自身多少的实收金额,预充用的到 | |||
| @io.swagger.annotations.ApiModelProperty(value = "冲抵金额", name = "setOffMoney") | |||
| private String setOffMoney; | |||
| @io.swagger.annotations.ApiModelProperty(value = "已使用金额,冲抵里面使用", name = "useMoney") | |||
| private String useMoney; | |||
| public String getRemain() { | |||
| if (StringUtils.isBlank(useMoney)) { | |||
| useMoney = "0"; | |||
| } | |||
| return new BigDecimal(totalMoney).subtract(new BigDecimal(useMoney)).toPlainString(); | |||
| return new BigDecimal(receiveMoney).subtract(new BigDecimal(useMoney)).toPlainString(); | |||
| } | |||
| @io.swagger.annotations.ApiModelProperty(value = "状态EnumFinanceReceiveStatus", name = "status") | |||
| @@ -110,7 +115,4 @@ public class WxFinanceReceive extends TenantEntity { | |||
| private Long floor; | |||
| @TableField(exist = false) | |||
| private String shopIds; | |||
| @TableField(exist = false) | |||
| private String rate; | |||
| } | |||
| @@ -8,11 +8,11 @@ import lombok.ToString; | |||
| import java.util.Date; | |||
| /** | |||
| */ | |||
| @TableName(value = "wx_finance_receive_bill") | |||
| @TableName(value = "wx_finance_setoff_bill") | |||
| @Data | |||
| @ToString(callSuper = true) | |||
| @EqualsAndHashCode(callSuper = true) | |||
| public class WxFinanceReceiveBill extends TenantEntity { | |||
| public class WxFinanceSetoffBill extends TenantEntity { | |||
| private static final long serialVersionUID = 7009117540201976664L; | |||
| @@ -34,6 +34,9 @@ public class WxFinanceReceiveBill extends TenantEntity { | |||
| @io.swagger.annotations.ApiModelProperty(value = "账单类型EnumBillAllType", name = "billType") | |||
| private Integer billType; | |||
| @io.swagger.annotations.ApiModelProperty(value="归属收款单ID",name="advanceId") | |||
| private Long advanceId; | |||
| @io.swagger.annotations.ApiModelProperty(value="科目编号",name="feesId") | |||
| private Long feesId; | |||
| @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.annotation.TableField; | |||
| import com.baomidou.mybatisplus.annotation.TableName; | |||
| import com.iformall.common.SortColumn; | |||
| import com.iformall.domain.po.base.TenantEntity; | |||
| import com.iformall.domain.vo.FinanceSetOffDetailVo; | |||
| import com.iformall.enums.EnumBillAction; | |||
| import lombok.Data; | |||
| @@ -207,4 +208,13 @@ public class WxBillBaseEntity extends TenantEntity { | |||
| @TableField(exist = false) | |||
| private Date needPayStartDay; | |||
| @TableField(exist = false) | |||
| private List<FinanceSetOffDetailVo> setOffDetailList; | |||
| @TableField(exist = false) | |||
| public String currentSetOff = "0"; | |||
| @TableField(exist = false) | |||
| public String currentReceive = "0"; | |||
| } | |||
| @@ -0,0 +1,13 @@ | |||
| package com.iformall.domain.vo; | |||
| import com.iformall.domain.po.base.TenantEntity; | |||
| import lombok.Data; | |||
| /** | |||
| */ | |||
| @Data | |||
| public class FinanceSetOffDetailVo extends TenantEntity{ | |||
| private static final long serialVersionUID = -2767490210273313034L; | |||
| private Long advanceId; | |||
| private String setoff; | |||
| } | |||
| @@ -6,8 +6,8 @@ package com.iformall.enums; | |||
| public enum EnumFinanceReceiveType { | |||
| RECEIVE(1,"缴费"), | |||
| ADVANCE(2,"预充") | |||
| RECEIVE(1,"缴费收单"), | |||
| ADVANCE(2,"预充收单") | |||
| ; | |||
| public static EnumFinanceReceiveType getEnum(Integer code) { | |||
| @@ -1,16 +0,0 @@ | |||
| package com.iformall.mapper; | |||
| import com.iformall.common.CommonMapper; | |||
| import com.iformall.domain.po.WxFinanceReceiveBill; | |||
| import org.apache.ibatis.annotations.Param; | |||
| import java.util.List; | |||
| /** | |||
| */ | |||
| public interface WxFinanceReceiveBillMapper extends CommonMapper<WxFinanceReceiveBill, Long> { | |||
| List<WxFinanceReceiveBill> findList(WxFinanceReceiveBill wxBillRent); | |||
| WxFinanceReceiveBill selectById(@Param("id")Long id,@Param("tenantId")String tenantId); | |||
| } | |||
| @@ -0,0 +1,16 @@ | |||
| package com.iformall.mapper; | |||
| import com.iformall.common.CommonMapper; | |||
| import com.iformall.domain.po.WxFinanceSetoffBill; | |||
| import org.apache.ibatis.annotations.Param; | |||
| import java.util.List; | |||
| /** | |||
| */ | |||
| public interface WxFinanceSetoffBillMapper extends CommonMapper<WxFinanceSetoffBill, Long> { | |||
| List<WxFinanceSetoffBill> findList(WxFinanceSetoffBill wxBillRent); | |||
| WxFinanceSetoffBill selectById(@Param("id")Long id,@Param("tenantId")String tenantId); | |||
| } | |||
| @@ -7,7 +7,7 @@ import com.iformall.domain.dto.FinanceSetOffDTO; | |||
| import com.iformall.domain.po.MallUserInfo; | |||
| import com.iformall.domain.po.WxBillPayWay; | |||
| import com.iformall.domain.po.WxFinanceReceive; | |||
| import com.iformall.domain.po.WxFinanceReceiveBill; | |||
| import com.iformall.domain.po.WxFinanceSetoffBill; | |||
| import com.iformall.domain.po.base.TenantEntity; | |||
| import com.iformall.domain.po.base.WxBillBaseEntity; | |||
| import com.iformall.domain.vo.FinanceBillSetoffSum; | |||
| @@ -27,13 +27,12 @@ public interface WxFinanceService { | |||
| PageInfo<WxFinanceReceive> receiveListAsPage(WxFinanceReceive record, Integer pageIndex, Integer pageSize); | |||
| List<WxBillBaseEntity> createReceive(WxFinanceReceive record,MallUserInfo user); | |||
| void saveOrUpdateReceive(WxFinanceReceive record,MallUserInfo user); | |||
| void saveOrUpdateReceiveBill(WxFinanceReceiveBill record); | |||
| void saveOrUpdateReceiveBill(WxFinanceSetoffBill record); | |||
| WxFinanceReceive getReceiveById(TenantEntity tenantEntity,Long id); | |||
| void invalidReceive(WxFinanceReceive record,MallUserInfo user); | |||
| List<WxBillBaseEntity> getBills(TenantEntity tenantEntity,List<WxBillBaseEntity> bills); | |||
| //预收款 | |||
| WxBillBaseEntity calcuetSetOff(FinanceSetOffDTO dto,MallUserInfo user); | |||
| List<WxBillBaseEntity> calcuetSetOff(FinanceSetOffDTO dto,MallUserInfo user); | |||
| FinanceBillSetoffSum getBillSetoffSum(WxFinanceReceive record); | |||
| List<WxFinanceReceive> getSetOffList(FinanceSetOffDTO dto); | |||
| List<WxFinanceReceive> getSetOffList(FinanceSetOffDTO dto,boolean isMerge); | |||
| } | |||
| @@ -16,12 +16,14 @@ import com.iformall.domain.po.WxBillPayWay; | |||
| import com.iformall.domain.po.WxEnergyFees; | |||
| import com.iformall.domain.po.WxEnergyFeesSetoff; | |||
| import com.iformall.domain.po.WxFinanceReceive; | |||
| import com.iformall.domain.po.WxFinanceReceiveBill; | |||
| import com.iformall.domain.po.WxFinanceSetoffBill; | |||
| import com.iformall.domain.po.WxMerchant; | |||
| import com.iformall.domain.po.WxShop; | |||
| import com.iformall.domain.po.base.BaseEntity.SortField; | |||
| import com.iformall.domain.po.base.TenantEntity; | |||
| import com.iformall.domain.po.base.WxBillBaseEntity; | |||
| import com.iformall.domain.vo.FinanceBillSetoffSum; | |||
| import com.iformall.domain.vo.FinanceSetOffDetailVo; | |||
| import com.iformall.enums.EnumBillAllType; | |||
| import com.iformall.enums.EnumBillStatus; | |||
| import com.iformall.enums.EnumFinanceReceiveStatus; | |||
| @@ -30,7 +32,7 @@ import com.iformall.enums.EnumYesOrNo; | |||
| import com.iformall.exception.MallinkException; | |||
| import com.iformall.mapper.WxBillPayWayMapper; | |||
| import com.iformall.mapper.WxEnergyFeesSetoffMapper; | |||
| import com.iformall.mapper.WxFinanceReceiveBillMapper; | |||
| import com.iformall.mapper.WxFinanceSetoffBillMapper; | |||
| import com.iformall.mapper.WxFinanceReceiveMapper; | |||
| import com.iformall.service.WxBillAdvanceService; | |||
| import com.iformall.service.WxEnergyService; | |||
| @@ -69,7 +71,7 @@ public class WxFinanceServiceImpl implements WxFinanceService { | |||
| @Autowired | |||
| WxFinanceReceiveMapper wxFinanceReceiveMapper; | |||
| @Autowired | |||
| WxFinanceReceiveBillMapper wxFinanceReceiveBillMapper; | |||
| WxFinanceSetoffBillMapper wxFinanceReceiveBillMapper; | |||
| @Lazy | |||
| @Autowired | |||
| @@ -191,7 +193,6 @@ public class WxFinanceServiceImpl implements WxFinanceService { | |||
| WxEnergyFees wfat = advanceTypMap.get(at.getFeesId()); | |||
| if (null != wfat) { | |||
| at.setFeesName(wfat.getName()); | |||
| at.setRate(wfat.getRate()); | |||
| } | |||
| total.add(new BigDecimal(at.getRemain())); | |||
| } | |||
| @@ -202,23 +203,8 @@ public class WxFinanceServiceImpl implements WxFinanceService { | |||
| return retMap; | |||
| } | |||
| private FinanceBillSetoffSum getAdvanceListByFeesId(TenantEntity tenantEntity,Long feesId) { | |||
| WxEnergyFeesSetoff tf = new WxEnergyFeesSetoff(); | |||
| tf.updateTenantInfo(tenantEntity); | |||
| tf.setFeesId(feesId); | |||
| List<Long> feesIdList = wxEnergyFeesSetoffMapper.findadvanceFeesIdList(tf); | |||
| if (null != feesIdList && feesIdList.size() > 0 ) { | |||
| WxFinanceReceive faq = new WxFinanceReceive(); | |||
| faq.updateTenantInfo(tenantEntity); | |||
| faq.setFeesIdList(feesIdList); | |||
| return getBillSetoffSum(faq); | |||
| }else { | |||
| return null; | |||
| } | |||
| } | |||
| @Override | |||
| public List<WxFinanceReceive> getSetOffList(FinanceSetOffDTO dto) { | |||
| public List<WxFinanceReceive> getSetOffList(FinanceSetOffDTO dto,boolean isMerge) { | |||
| if (null == dto.getBills() || dto.getBills().size() <= 0 ) { | |||
| throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"请选择账单"); | |||
| } | |||
| @@ -233,82 +219,111 @@ public class WxFinanceServiceImpl implements WxFinanceService { | |||
| } | |||
| } | |||
| //通过账单科目去查询可以抵扣的预充费用 | |||
| FinanceBillSetoffSum sum = getAdvanceListByFeesId(dto, billFeesId); | |||
| if (null == sum) { | |||
| WxEnergyFeesSetoff tf = new WxEnergyFeesSetoff(); | |||
| tf.updateTenantInfo(dto); | |||
| tf.setFeesId(billFeesId); | |||
| List<Long> feesIdList = wxEnergyFeesSetoffMapper.findadvanceFeesIdList(tf); | |||
| if (null != feesIdList && feesIdList.size() > 0 ) { | |||
| WxFinanceReceive faq = new WxFinanceReceive(); | |||
| faq.updateTenantInfo(dto); | |||
| faq.setFeesIdList(feesIdList); | |||
| if (isMerge) { | |||
| FinanceBillSetoffSum sum = getBillSetoffSum(faq); | |||
| if (null == sum) { | |||
| return null; | |||
| } | |||
| return sum.getAdvanceList(); | |||
| }else { | |||
| faq.setSortColumns(SortField.CreateTime_ASC); | |||
| return wxFinanceReceiveMapper.findList(faq); | |||
| } | |||
| }else { | |||
| return null; | |||
| } | |||
| return sum.getAdvanceList(); | |||
| } | |||
| private String calcuteSetOffMoney(String rate,String money) { | |||
| if (new BigDecimal(money).compareTo(new BigDecimal(0)) <= 0) { | |||
| return "0"; | |||
| private void setSetOff(WxBillBaseEntity bill,List<WxFinanceReceive> advanceList,Integer currentIndex) { | |||
| BigDecimal owe = new BigDecimal(bill.getOwe()); | |||
| BigDecimal b0 = new BigDecimal(0); | |||
| if (owe.compareTo(b0) <= 0) { | |||
| return; | |||
| }else { | |||
| List<FinanceSetOffDetailVo> setoffList = bill.getSetOffDetailList(); | |||
| for (int j = currentIndex ; j < advanceList.size() ; j++) { | |||
| WxFinanceReceive advance = advanceList.get(j); | |||
| BigDecimal remain = new BigDecimal(advance.getRemain()); | |||
| if (remain.compareTo(b0) > 0) { | |||
| if (null == setoffList) { | |||
| setoffList = new ArrayList<FinanceSetOffDetailVo>(); | |||
| } | |||
| FinanceSetOffDetailVo dv = new FinanceSetOffDetailVo(); | |||
| dv.setAdvanceId(advance.getId()); | |||
| BigDecimal billSetOff = null;//账单历史抵扣 | |||
| if (StringUtils.isBlank(bill.getSetOff())) { | |||
| billSetOff = new BigDecimal(bill.getSetOff()); | |||
| }else { | |||
| billSetOff = b0; | |||
| } | |||
| BigDecimal billCurrentSetOff = new BigDecimal(bill.getCurrentSetOff()); | |||
| //如果前面的不够,则后面的继续补 | |||
| if (remain.compareTo(owe) <= 0 ) { | |||
| //设置账单历史抵扣 | |||
| bill.setSetOff(billSetOff.add(remain).toPlainString()); | |||
| //设置账单本次抵扣 | |||
| bill.setCurrentSetOff(billCurrentSetOff.add(remain).toPlainString()); | |||
| //设置预充已使用金额 | |||
| advance.setUseMoney(advance.getReceiveMoney()); | |||
| dv.setSetoff(remain.toPlainString()); | |||
| setoffList.add(dv); | |||
| setSetOff(bill,advanceList,currentIndex); | |||
| }else { | |||
| bill.setSetOff(billSetOff.add(owe).toPlainString()); | |||
| bill.setCurrentSetOff(billCurrentSetOff.add(owe).toPlainString()); | |||
| advance.setUseMoney(new BigDecimal(advance.getUseMoney()).add(owe).toPlainString()); | |||
| dv.setSetoff(owe.toPlainString()); | |||
| setoffList.add(dv); | |||
| } | |||
| }else { | |||
| currentIndex = currentIndex+1; | |||
| } | |||
| } | |||
| } | |||
| return new BigDecimal(money).multiply(new BigDecimal(rate)).divide(new BigDecimal(100)).toPlainString(); | |||
| } | |||
| @Override | |||
| public WxBillBaseEntity calcuetSetOff(FinanceSetOffDTO dto,MallUserInfo user) { | |||
| public List<WxBillBaseEntity> calcuetSetOff(FinanceSetOffDTO dto,MallUserInfo user) { | |||
| //多个账单类型和科目必须一致 | |||
| //优先冲抵时间早的账单,优先用时间早的预充费用来冲抵 | |||
| if (null == dto.getBills() || dto.getBills().size() <= 0 || null == dto.getFeesIdList() || dto.getFeesIdList().size() <= 0 ) { | |||
| throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"请选择账单和抵扣科目"); | |||
| } | |||
| //查询出账单可以抵扣的科目预收项 | |||
| List<WxFinanceReceive> advanceList = getSetOffList(dto); | |||
| WxBillBaseEntity bill = wxBillAllHelper.getBillDetail(EnumBillAllType.getEnum(be.getBillType()), merchant, be.getId()); | |||
| if (new BigDecimal(bill.getOwe()).compareTo(b0) <= 0 ) { | |||
| }else { | |||
| billList.add(bill); | |||
| } | |||
| //根据预充规则计算冲抵费用 | |||
| WxBillBaseEntity bill = wxBillAllHelper.getBillDetail(EnumBillAllType.getEnum(dto.getBillType()), merchant, dto.getBillId()); | |||
| if (new BigDecimal(bill.getOwe()).compareTo(new BigDecimal(0)) <= 0) { | |||
| List<WxFinanceReceive> advanceList = getSetOffList(dto,false); | |||
| if (null == advanceList || advanceList.size() <= 0 ) { | |||
| return null; | |||
| } | |||
| WxFinanceReceive advance = this.getReceiveById(dto, dto.getFinanceAdvanceId()); | |||
| WxEnergyFees ef = new WxEnergyFees(); | |||
| ef.updateTenantInfo(dto); | |||
| ef.setId(advance.getFeesId()); | |||
| WxEnergyFees advanceFees= wxEnergyService.getFeesById(ef); | |||
| //设置账单冲抵金额 | |||
| String money = calcuteSetOffMoney(advanceFees.getRate(),bill.getOwe()); | |||
| //应该是不创建收款记录。因为一个收款记录会包括收款和冲抵的账单详情 | |||
| //新增收款记录,冲抵,关联冲抵账单 | |||
| WxFinanceReceive addreceive = new WxFinanceReceive(); | |||
| addreceive.updateTenantInfo(dto); | |||
| addreceive.setTotalMoney(money); | |||
| addreceive.setMoneyDetail(JSON.toJSONString(advance)); | |||
| addreceive.setMerchantId(bill.getMerchantId()); | |||
| // addreceive.setRemark(advanceType.getName()+"冲抵"); | |||
| // addreceive.setType(EnumFinanceReceiveType.SETOFF.getCode()); | |||
| this.saveOrUpdateReceive(addreceive,user); | |||
| //更新账单 | |||
| WxBillPayDTO payDto = new WxBillPayDTO(); | |||
| payDto.updateTenantInfo(dto); | |||
| payDto.setId(bill.getId()); | |||
| payDto.setBillTypeValue(bill.getBillType()); | |||
| payDto.setAddpay(money); | |||
| payDto.setSetOff(true); | |||
| payDto.setRemark("冲抵单["+addreceive.getId()+"]"); | |||
| wxBillAllHelper.updatePay(payDto, user); | |||
| //插入关联账单信息 | |||
| WxFinanceReceiveBill rb = new WxFinanceReceiveBill(); | |||
| rb.updateTenantInfo(dto); | |||
| rb.setReceiveId(addreceive.getId()); | |||
| rb.setBillId(bill.getId()); | |||
| rb.setBillType(bill.getBillType()); | |||
| rb.setFeesId(bill.getEnergyFeesId()); | |||
| saveOrUpdateReceiveBill(rb); | |||
| return bill; | |||
| //账单排序 | |||
| List<WxBillBaseEntity> bills = dto.getBills(); | |||
| sortBills(bills); | |||
| //每个账单去计算抵扣 | |||
| WxMerchant merchant = new WxMerchant(); | |||
| merchant.updateTenantInfo(dto); | |||
| Integer currentIndex = 0; | |||
| List<WxBillBaseEntity> retList = new ArrayList<WxBillBaseEntity>(); | |||
| for (int i = 0 ; i < bills.size() ; i ++) { | |||
| WxBillBaseEntity be = bills.get(i); | |||
| WxBillBaseEntity bill = wxBillAllHelper.getBillDetail(EnumBillAllType.getEnum(be.getBillType()), merchant, be.getId()); | |||
| be.setReceivePay(bill.getReceivePay()); | |||
| be.setPay(bill.getPay()); | |||
| be.setSetOff(bill.getSetOff()); | |||
| setSetOff(be, advanceList,currentIndex); | |||
| WxBillBaseEntity retb = new WxBillBaseEntity(); | |||
| retb.setId(be.getId()); | |||
| retb.setSetOffDetailList(be.getSetOffDetailList()); | |||
| retList.add(retb); | |||
| } | |||
| return retList; | |||
| } | |||
| private void initQueryParam(WxFinanceReceive record) { | |||
| @@ -416,19 +431,19 @@ public class WxFinanceServiceImpl implements WxFinanceService { | |||
| logger.error("保存失败,e:" + e.getMessage()); | |||
| throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "DB FAILD " + e.getMessage()); | |||
| } | |||
| //增加预收账单 | |||
| WxBillAdvance billAdvance = new WxBillAdvance(); | |||
| billAdvance.updateTenantInfo(user); | |||
| billAdvance.setMerchantId(record.getMerchantId()); | |||
| WxMerchant merchant = wxMerchantService.selectById(record.getMerchantId()); | |||
| billAdvance.setRentShopType(merchant.getRentShopType()); | |||
| billAdvance.setReceivePay(record.getTotalMoney()); | |||
| billAdvance.setPay("0"); | |||
| billAdvance.setStarttime(new Date()); | |||
| billAdvance.setEndtime(new Date()); | |||
| billAdvance.setStatus(EnumBillStatus.SET_OFF.getCode()); | |||
| billAdvance.setEnergyFeesId(record.getFeesId()); | |||
| wxBillAdvanceService.saveOrUpdate(billAdvance, user); | |||
| // //增加预收账单 | |||
| // WxBillAdvance billAdvance = new WxBillAdvance(); | |||
| // billAdvance.updateTenantInfo(user); | |||
| // billAdvance.setMerchantId(record.getMerchantId()); | |||
| // WxMerchant merchant = wxMerchantService.selectById(record.getMerchantId()); | |||
| // billAdvance.setRentShopType(merchant.getRentShopType()); | |||
| // billAdvance.setReceivePay(record.getTotalMoney()); | |||
| // billAdvance.setPay("0"); | |||
| // billAdvance.setStarttime(new Date()); | |||
| // billAdvance.setEndtime(new Date()); | |||
| // billAdvance.setStatus(EnumBillStatus.SET_OFF.getCode()); | |||
| // billAdvance.setEnergyFeesId(record.getFeesId()); | |||
| // wxBillAdvanceService.saveOrUpdate(billAdvance, user); | |||
| } else { | |||
| record.setUpdateBy(user.getId()); | |||
| record.setUpdateByName(user.getName()); | |||
| @@ -438,7 +453,7 @@ public class WxFinanceServiceImpl implements WxFinanceService { | |||
| } | |||
| @Override | |||
| public void saveOrUpdateReceiveBill(WxFinanceReceiveBill record) { | |||
| public void saveOrUpdateReceiveBill(WxFinanceSetoffBill record) { | |||
| Date date = new Date(); | |||
| if (record.getId() == null) { | |||
| final IdWorker idWorker = IdWorker.get(); | |||
| @@ -482,95 +497,96 @@ public class WxFinanceServiceImpl implements WxFinanceService { | |||
| @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) | |||
| @Override | |||
| public List<WxBillBaseEntity> createReceive(WxFinanceReceive record,MallUserInfo user) { | |||
| //所选的账单按照时间先后排序,优先结清时间靠前的 | |||
| List<WxBillBaseEntity> billList = new ArrayList<WxBillBaseEntity>(); | |||
| WxMerchant merchant = new WxMerchant(); | |||
| merchant.updateTenantInfo(record); | |||
| //冲抵信息根据页面返回的账单抵扣信息直接保存入库 | |||
| //费用计算自动优先匹配时间最早的那个 | |||
| BigDecimal b0 = new BigDecimal(0); | |||
| for (int i = 0 ; i < record.getBills().size(); i ++) { | |||
| WxBillBaseEntity be = record.getBills().get(i); | |||
| WxBillBaseEntity bill = wxBillAllHelper.getBillDetail(EnumBillAllType.getEnum(be.getBillType()), merchant, be.getId()); | |||
| if (new BigDecimal(bill.getOwe()).compareTo(b0) <= 0 ) { | |||
| }else { | |||
| billList.add(bill); | |||
| //单保存冲抵的时候,实收金额为0 | |||
| BigDecimal receiveTotal = b0; | |||
| WxBillPayWay payWay0 = null; | |||
| if (null != record.getPayWays()) { | |||
| for (int i = 0 ; i < record.getPayWays().size() ; i ++) { | |||
| WxBillPayWay payWay = record.getPayWays().get(i); | |||
| if (StringUtils.isNotBlank(payWay.getMoney())) { | |||
| receiveTotal = receiveTotal.add(new BigDecimal(payWay.getMoney())); | |||
| if (null == payWay0) { | |||
| payWay0 = payWay; | |||
| } | |||
| } | |||
| } | |||
| } | |||
| if (billList.size() <= 0 ) { | |||
| return null; | |||
| } | |||
| sortBills(billList); | |||
| //增加一条收款记录。关联账单,账单更新收款信息 | |||
| BigDecimal total = new BigDecimal(0); | |||
| for (int i = 0 ; i < record.getPayWays().size() ; i ++) { | |||
| WxBillPayWay payWay = record.getPayWays().get(i); | |||
| total = total.add(new BigDecimal(payWay.getMoney())); | |||
| } | |||
| //冲抵总金额 | |||
| BigDecimal setOffTotal = b0; | |||
| List<WxBillBaseEntity> bills = record.getBills(); | |||
| sortBills(bills); | |||
| //创建一个收款单,关联账单 | |||
| WxFinanceReceive addreceive = new WxFinanceReceive(); | |||
| addreceive.updateTenantInfo(record); | |||
| addreceive.setTotalMoney(total.toPlainString()); | |||
| addreceive.setMoneyDetail(JSON.toJSONString(record.getPayWays())); | |||
| addreceive.setMerchantId(record.getMerchantId()); | |||
| addreceive.setRemark(record.getRemark()); | |||
| addreceive.setStatus(EnumFinanceReceiveStatus.NORMAL.getCode()); | |||
| addreceive.setType(EnumFinanceReceiveType.RECEIVE.getCode()); | |||
| this.saveOrUpdateReceive(record,user); | |||
| WxBillPayWay payWay = record.getPayWays().get(0); | |||
| List<WxBillBaseEntity> updateList = new ArrayList<WxBillBaseEntity>(); | |||
| for (int i = 0 ; i < billList.size(); i ++) { | |||
| WxBillBaseEntity bill = billList.get(i); | |||
| if (total.compareTo(b0) > 0 ) { | |||
| addreceive.setReceiveMoney(receiveTotal.toPlainString()); | |||
| if (receiveTotal.compareTo(b0) > 0) { | |||
| addreceive.setMoneyDetail(JSON.toJSONString(record.getPayWays())); | |||
| } | |||
| WxMerchant merchant = new WxMerchant(); | |||
| merchant.updateTenantInfo(record); | |||
| for (int i = 0 ; i < record.getBills().size(); i++) { | |||
| WxBillBaseEntity be = record.getBills().get(i); | |||
| //计算账单收款费用,更新账单收款 | |||
| if (receiveTotal.compareTo(b0) > 0) { | |||
| WxBillBaseEntity bill = wxBillAllHelper.getBillDetail(EnumBillAllType.getEnum(be.getBillType()), merchant, be.getId()); | |||
| //有收款,就要更新账单的收款 | |||
| //更新账单收款信息 | |||
| String money = ""; | |||
| BigDecimal oweDecimal = new BigDecimal(bill.getOwe()); | |||
| if (oweDecimal.compareTo(total) < 0 ) { | |||
| if (oweDecimal.compareTo(receiveTotal) < 0 ) { | |||
| money = bill.getOwe(); | |||
| total = total.subtract(oweDecimal); | |||
| receiveTotal = receiveTotal.subtract(oweDecimal); | |||
| }else { | |||
| money = total.toPlainString(); | |||
| total = b0; | |||
| money = receiveTotal.toPlainString(); | |||
| receiveTotal = b0; | |||
| } | |||
| WxBillPayDTO payDto = new WxBillPayDTO(); | |||
| payDto.setId(bill.getId()); | |||
| payDto.setBillTypeValue(bill.getBillType()); | |||
| payDto.setId(be.getId()); | |||
| payDto.setBillTypeValue(be.getBillType()); | |||
| payDto.setAdvanceId(addreceive.getId()); | |||
| payDto.setAddpay(money); | |||
| payDto.setPayWay(payWay.getId()); | |||
| payDto.setPayWayObject(payWay); | |||
| payDto.setPayWay(payWay0.getId()); | |||
| payDto.setPayWayObject(payWay0); | |||
| payDto.setRemark("系统收款:收款单["+addreceive.getId()+"]"+record.getRemark()); | |||
| be.setCurrentReceive(money); | |||
| //并且有抵扣 | |||
| if(StringUtils.isNotBlank(be.getCurrentSetOff())) { | |||
| payDto.setSetOff(be.getCurrentSetOff()); | |||
| for (int j = 0 ; j < be.getSetOffDetailList().size(); j ++ ) { | |||
| FinanceSetOffDetailVo setoffdetail = be.getSetOffDetailList().get(j); | |||
| //关联冲抵 | |||
| WxFinanceSetoffBill rb = new WxFinanceSetoffBill(); | |||
| rb.updateTenantInfo(record); | |||
| rb.setReceiveId(addreceive.getId()); | |||
| rb.setBillId(bill.getId()); | |||
| rb.setBillType(bill.getBillType()); | |||
| rb.setFeesId(bill.getEnergyFeesId()); | |||
| rb.setPayWay(payWay0.getId()); | |||
| saveOrUpdateReceiveBill(rb); | |||
| } | |||
| } | |||
| wxBillAllHelper.updatePay(payDto, user); | |||
| //插入关联账单信息 | |||
| WxFinanceReceiveBill rb = new WxFinanceReceiveBill(); | |||
| rb.updateTenantInfo(record); | |||
| rb.setReceiveId(addreceive.getId()); | |||
| rb.setBillId(bill.getId()); | |||
| rb.setBillType(bill.getBillType()); | |||
| rb.setFeesId(bill.getEnergyFeesId()); | |||
| rb.setPayWay(payWay.getId()); | |||
| saveOrUpdateReceiveBill(rb); | |||
| updateList.add(bill); | |||
| } | |||
| } | |||
| if (updateList.size() <= 0 ) { | |||
| return null; | |||
| } | |||
| return updateList; | |||
| } | |||
| @Override | |||
| public List<WxBillBaseEntity> getBills(TenantEntity tenantEntity,List<WxBillBaseEntity> bills) { | |||
| if (null != bills && bills.size() > 0 ) { | |||
| WxMerchant merchant = new WxMerchant(); | |||
| merchant.updateTenantInfo(tenantEntity); | |||
| List<WxBillBaseEntity> retList = new ArrayList<WxBillBaseEntity>(); | |||
| for (int i = 0 ; i < bills.size() ; i++) { | |||
| WxBillBaseEntity be = bills.get(i); | |||
| WxBillBaseEntity bill = wxBillAllHelper.getBillDetail(EnumBillAllType.getEnum(be.getBillType()), merchant, be.getId()); | |||
| retList.add(bill); | |||
| }else if (StringUtils.isNotBlank(be.getCurrentSetOff())) { | |||
| setOffTotal = setOffTotal.add(new BigDecimal(be.getCurrentSetOff())); | |||
| //没收款,有冲抵,就要更新账单的冲抵,然后把对应的预充值使用金额更新,并进行关联 | |||
| } | |||
| return retList; | |||
| } | |||
| return null; | |||
| addreceive.setSetOffMoney(setOffTotal.toPlainString()); | |||
| addreceive.setMerchantId(record.getMerchantId()); | |||
| addreceive.setRemark(record.getRemark()); | |||
| this.saveOrUpdateReceive(record,user); | |||
| return bills; | |||
| } | |||
| @Override | |||
| @@ -17,12 +17,11 @@ | |||
| <result column="fixed_price" jdbcType="INTEGER" property="fixedPrice"/> | |||
| <result column="calcute_unit" jdbcType="INTEGER" property="calcuteUnit"/> | |||
| <result column="time_unit" jdbcType="INTEGER" property="timeUnit"/> | |||
| <result column="rate" jdbcType="VARCHAR" property="rate"/> | |||
| </resultMap> | |||
| <sql id="allColumns"> | |||
| `id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`is_del`,`name`,`price`,`public_calcute`,`type`,`bill_type`,`is_system`, | |||
| `fixed_price`,`calcute_unit`,`time_unit`,`rate` | |||
| `fixed_price`,`calcute_unit`,`time_unit` | |||
| </sql> | |||
| <sql id="dynamicWhereConditions"> | |||
| @@ -7,7 +7,8 @@ | |||
| <result column="parent_tenant_id" jdbcType="VARCHAR" property="parentTenantId" /> | |||
| <result column="create_time" jdbcType="TIMESTAMP" property="createTime"/> | |||
| <result column="update_time" jdbcType="TIMESTAMP" property="updateTime"/> | |||
| <result column="total_money" jdbcType="VARCHAR" property="totalMoney"/> | |||
| <result column="receive_money" jdbcType="VARCHAR" property="receiveMoney"/> | |||
| <result column="set_off_money" jdbcType="VARCHAR" property="setOffMoney"/> | |||
| <result column="use_money" jdbcType="VARCHAR" property="useMoney"/> | |||
| <result column="status" jdbcType="INTEGER" property="status"/> | |||
| <result column="type" jdbcType="INTEGER" property="type"/> | |||
| @@ -22,7 +23,7 @@ | |||
| </resultMap> | |||
| <sql id="allColumns"> | |||
| `id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`total_money`,`use_money`,`status`,`type`,`money_detail`, | |||
| `id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`receive_money`,`set_off_money`,`use_money`,`status`,`type`,`money_detail`, | |||
| `create_by`,`create_by_name`,`update_by`,`update_by_name`,`merchant_id`,`remark`,`feesId` | |||
| </sql> | |||
| @@ -80,7 +81,7 @@ | |||
| </update> | |||
| <select id="getMerchantAdvanceGroupSumList" parameterType="com.iformall.domain.po.WxFinanceReceive" resultMap="BaseResultMap"> | |||
| select fees_id,sum(CAST(total_money AS DECIMAL(20,4))) as total_money,sum(CAST(use_money AS DECIMAL(20,4))) as use_money | |||
| select fees_id,sum(CAST(receive_money AS DECIMAL(20,4))) as receive_money,sum(CAST(use_money AS DECIMAL(20,4))) as use_money | |||
| from wx_finance_receive | |||
| <include refid="dynamicWhereConditions"/> | |||
| and money - use_money > 0 | |||
| @@ -1,7 +1,7 @@ | |||
| <?xml version="1.0" encoding="UTF-8"?> | |||
| <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | |||
| <mapper namespace="com.iformall.mapper.WxFinanceReceiveBillMapper"> | |||
| <resultMap id="BaseResultMap" type="com.iformall.domain.po.WxFinanceReceiveBill"> | |||
| <mapper namespace="com.iformall.mapper.WxFinanceSetoffBillMapper"> | |||
| <resultMap id="BaseResultMap" type="com.iformall.domain.po.WxFinanceSetoffBill"> | |||
| <id column="id" jdbcType="BIGINT" property="id"/> | |||
| <result column="tenant_id" jdbcType="VARCHAR" property="tenantId"/> | |||
| <result column="parent_tenant_id" jdbcType="VARCHAR" property="parentTenantId" /> | |||