winter 1 год назад
Родитель
Сommit
82029d0c82
29 измененных файлов: 382 добавлений и 5 удалений
  1. +18
    -1
      mallinkAdmin/src/main/java/com/iformall/controller/market/WxFinanceController.java
  2. +3
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxFinanceReceiveBill.java
  3. +3
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxFinanceReceiveSetoff.java
  4. +3
    -0
      mallinkService/src/main/java/com/iformall/enums/EnumBillAction.java
  5. +2
    -0
      mallinkService/src/main/java/com/iformall/mapper/WxFinanceReceiveBillMapper.java
  6. +3
    -0
      mallinkService/src/main/java/com/iformall/mapper/WxFinanceReceiveSetoffMapper.java
  7. +1
    -1
      mallinkService/src/main/java/com/iformall/service/WxBillAdvanceService.java
  8. +1
    -0
      mallinkService/src/main/java/com/iformall/service/WxBillDailyService.java
  9. +1
    -0
      mallinkService/src/main/java/com/iformall/service/WxBillDepositService.java
  10. +1
    -0
      mallinkService/src/main/java/com/iformall/service/WxBillOtherDepositService.java
  11. +1
    -0
      mallinkService/src/main/java/com/iformall/service/WxBillOtherService.java
  12. +1
    -0
      mallinkService/src/main/java/com/iformall/service/WxBillPropertyDepositService.java
  13. +1
    -0
      mallinkService/src/main/java/com/iformall/service/WxBillPropertyService.java
  14. +1
    -0
      mallinkService/src/main/java/com/iformall/service/WxBillRentManageService.java
  15. +1
    -0
      mallinkService/src/main/java/com/iformall/service/WxBillRentService.java
  16. +1
    -0
      mallinkService/src/main/java/com/iformall/service/WxFinanceService.java
  17. +24
    -0
      mallinkService/src/main/java/com/iformall/service/helper/WxBillAllHelper.java
  18. +24
    -0
      mallinkService/src/main/java/com/iformall/service/impl/WxBillAdvanceServiceImpl.java
  19. +24
    -0
      mallinkService/src/main/java/com/iformall/service/impl/WxBillDailyServiceImpl.java
  20. +23
    -0
      mallinkService/src/main/java/com/iformall/service/impl/WxBillDepositServiceImpl.java
  21. +23
    -0
      mallinkService/src/main/java/com/iformall/service/impl/WxBillOtherDepositServiceImpl.java
  22. +23
    -0
      mallinkService/src/main/java/com/iformall/service/impl/WxBillOtherServiceImpl.java
  23. +23
    -0
      mallinkService/src/main/java/com/iformall/service/impl/WxBillPropertyDepositServiceImpl.java
  24. +24
    -0
      mallinkService/src/main/java/com/iformall/service/impl/WxBillPropertyServiceImpl.java
  25. +24
    -0
      mallinkService/src/main/java/com/iformall/service/impl/WxBillRentManageServiceImpl.java
  26. +23
    -0
      mallinkService/src/main/java/com/iformall/service/impl/WxBillRentServiceImpl.java
  27. +83
    -1
      mallinkService/src/main/java/com/iformall/service/impl/WxFinanceServiceImpl.java
  28. +8
    -1
      mallinkService/src/main/resources/mapper/WxFinanceReceiveBillMapper.xml
  29. +14
    -1
      mallinkService/src/main/resources/mapper/WxFinanceReceiveSetoffMapper.xml

+ 18
- 1
mallinkAdmin/src/main/java/com/iformall/controller/market/WxFinanceController.java Просмотреть файл

@@ -248,7 +248,24 @@ public class WxFinanceController extends BaseController {
if (receive.getStatus().intValue() != EnumFinanceReceiveStatus.NORMAL.getCode().intValue()) {
return new ResultData(Result.ERROR,"该状态不允许操作");
}
wxFinanceService.invalidReceive(record, getUser());
if (StringUtils.isNotBlank(record.getRemark())) {
receive.setRemark(record.getRemark());
}
wxFinanceService.invalidReceive(receive, getUser());
return new ResultData();
}
@ApiOperation("红冲")
@PostMapping("receiveRedSet")
public ResultData receiveRedSet(@RequestBody WxFinanceReceive record) {
WxFinanceReceive receive = wxFinanceService.getReceiveById(this.getTenantInfo(), record.getId());
if (receive.getStatus().intValue() != EnumFinanceReceiveStatus.FINISH.getCode().intValue()) {
return new ResultData(Result.ERROR,"该状态不允许操作");
}
if (StringUtils.isNotBlank(record.getRemark())) {
receive.setRemark(record.getRemark());
}
wxFinanceService.redSetoffReceive(receive, getUser());
return new ResultData();
}


+ 3
- 0
mallinkService/src/main/java/com/iformall/domain/po/WxFinanceReceiveBill.java Просмотреть файл

@@ -64,6 +64,9 @@ public class WxFinanceReceiveBill extends TenantEntity {
@io.swagger.annotations.ApiModelProperty(value="账单结束周期",name="endtime")
private Date endtime;
@io.swagger.annotations.ApiModelProperty(value = "是否已删除", name = "isDel")
private Integer isDel;
@TableField(exist = false)
private String shopNumber;
@TableField(exist = false)


+ 3
- 0
mallinkService/src/main/java/com/iformall/domain/po/WxFinanceReceiveSetoff.java Просмотреть файл

@@ -48,4 +48,7 @@ public class WxFinanceReceiveSetoff extends TenantEntity {
@io.swagger.annotations.ApiModelProperty(value="科目编号",name="feesId")
private Long merchantId;
@io.swagger.annotations.ApiModelProperty(value = "是否已删除", name = "isDel")
private Integer isDel;
}

+ 3
- 0
mallinkService/src/main/java/com/iformall/enums/EnumBillAction.java Просмотреть файл

@@ -65,6 +65,9 @@ public enum EnumBillAction {
}
}else if (code.intValue() == RETURN.code.intValue()) {
sb.append(newMoney).append("元");
if (StringUtils.isNotBlank(setoffMoney) && new BigDecimal(setoffMoney).compareTo(new BigDecimal(0)) > 0 ) {
sb.append(",预收冲抵退回").append(setoffMoney).append("元");
}
}else if (code.intValue() == UPDATE_LATE_PAY_MONEY.code.intValue()) {
sb.append("应付金额").append(oldMoney).append("元变更成").append(newMoney).append("元");
}else if (code.intValue() == UPDATE_SERVICE_MONEY.code.intValue()) {


+ 2
- 0
mallinkService/src/main/java/com/iformall/mapper/WxFinanceReceiveBillMapper.java Просмотреть файл

@@ -12,5 +12,7 @@ public interface WxFinanceReceiveBillMapper extends CommonMapper<WxFinanceReceiv
List<WxFinanceReceiveBill> findList(WxFinanceReceiveBill wxBillRent);
WxFinanceReceiveBill selectById(@Param("id")Long id,@Param("tenantId")String tenantId);
void deleteByConditon(WxFinanceReceiveBill wxBillRent);
}

+ 3
- 0
mallinkService/src/main/java/com/iformall/mapper/WxFinanceReceiveSetoffMapper.java Просмотреть файл

@@ -10,7 +10,10 @@ import java.util.List;
public interface WxFinanceReceiveSetoffMapper extends CommonMapper<WxFinanceReceiveSetoff, Long> {

List<WxFinanceReceiveSetoff> findList(WxFinanceReceiveSetoff wxBillRent);
Integer findCount(WxFinanceReceiveSetoff wxBillRent);
WxFinanceReceiveSetoff selectById(@Param("id")Long id,@Param("tenantId")String tenantId);
void deleteByConditon(WxFinanceReceiveSetoff wxBillRent);
}

+ 1
- 1
mallinkService/src/main/java/com/iformall/service/WxBillAdvanceService.java Просмотреть файл

@@ -55,7 +55,7 @@ public interface WxBillAdvanceService {
List<Long> getMerchantIds(WxBillAdvance wxBillRent);
void updateReceivePay(WxBillReceiveUpdateDTO dto,MallUserInfo user,boolean forcePaid);
void backPay(WxBillPayDTO dto,MallUserInfo user);
void updatePay(WxBillPayDTO dto,MallUserInfo user);
void updatePayByMerchant(WxBillPayDTO dto,WxMerchantBUser user,boolean isOnline);
void bad(WxBillPayDTO dto,MallUserInfo user);


+ 1
- 0
mallinkService/src/main/java/com/iformall/service/WxBillDailyService.java Просмотреть файл

@@ -80,6 +80,7 @@ public interface WxBillDailyService {
public void updateReceivePay(WxBillReceiveUpdateDTO dto, MallUserInfo user, boolean forcePaid);
public void notify(WxBillPayDTO dto, MallUserInfo user);
void backPay(WxBillPayDTO dto,MallUserInfo user);
public void updatePay(WxBillPayDTO dto, MallUserInfo user);
public void updatePayByMerchant(WxBillPayDTO dto, WxMerchantBUser user,boolean isOnline);
public void bad(WxBillPayDTO dto,MallUserInfo user);


+ 1
- 0
mallinkService/src/main/java/com/iformall/service/WxBillDepositService.java Просмотреть файл

@@ -83,6 +83,7 @@ public interface WxBillDepositService {
public void updateReceivePay(WxBillReceiveUpdateDTO dto, MallUserInfo user, boolean forcePaid);
public void notify(WxBillPayDTO dto, MallUserInfo user);
void backPay(WxBillPayDTO dto,MallUserInfo user);
public void updatePay(WxBillPayDTO dto, MallUserInfo user);
public void updatePayByMerchant(WxBillPayDTO dto, WxMerchantBUser user,boolean isOnline);
public void returnDeposit(WxBillPayDTO dto, MallUserInfo user);


+ 1
- 0
mallinkService/src/main/java/com/iformall/service/WxBillOtherDepositService.java Просмотреть файл

@@ -79,6 +79,7 @@ public interface WxBillOtherDepositService {
public void updateReceivePay(WxBillReceiveUpdateDTO dto, MallUserInfo user, boolean forcePaid);
public void notify(WxBillPayDTO dto, MallUserInfo user);
void backPay(WxBillPayDTO dto,MallUserInfo user);
public void updatePay(WxBillPayDTO dto, MallUserInfo user);
public void updatePayByMerchant(WxBillPayDTO dto, WxMerchantBUser user,boolean isOnline);
public void returnDeposit(WxBillPayDTO dto, MallUserInfo user);


+ 1
- 0
mallinkService/src/main/java/com/iformall/service/WxBillOtherService.java Просмотреть файл

@@ -75,6 +75,7 @@ public interface WxBillOtherService {
public void updateReceivePay(WxBillReceiveUpdateDTO dto, MallUserInfo user, boolean forcePaid) ;
public void notify(WxBillPayDTO dto, MallUserInfo user);
void backPay(WxBillPayDTO dto,MallUserInfo user);
public void updatePay(WxBillPayDTO dto, MallUserInfo user);
public void updatePayByMerchant(WxBillPayDTO dto, WxMerchantBUser user ,boolean isOnline);
public void bad(WxBillPayDTO dto,MallUserInfo user);


+ 1
- 0
mallinkService/src/main/java/com/iformall/service/WxBillPropertyDepositService.java Просмотреть файл

@@ -85,6 +85,7 @@ public interface WxBillPropertyDepositService {
public void updateReceivePay(WxBillReceiveUpdateDTO dto, MallUserInfo user, boolean forcePaid);
public void notify(WxBillPayDTO dto, MallUserInfo user);
void backPay(WxBillPayDTO dto,MallUserInfo user);
public void updatePay(WxBillPayDTO dto, MallUserInfo user);
public void updatePayByMerchant(WxBillPayDTO dto, WxMerchantBUser user,boolean isOnline);
public void returnDeposit(WxBillPayDTO dto, MallUserInfo user);


+ 1
- 0
mallinkService/src/main/java/com/iformall/service/WxBillPropertyService.java Просмотреть файл

@@ -92,6 +92,7 @@ public interface WxBillPropertyService {
public void updateReceivePay(WxBillReceiveUpdateDTO dto, MallUserInfo user, boolean forcePaid);
public void notify(WxBillPayDTO dto, MallUserInfo user);
void backPay(WxBillPayDTO dto,MallUserInfo user);
public void updatePay(WxBillPayDTO dto, MallUserInfo user);
public void updatePayByMerchant(WxBillPayDTO dto, WxMerchantBUser user,boolean isOnline);
public void bad(WxBillPayDTO dto,MallUserInfo user);


+ 1
- 0
mallinkService/src/main/java/com/iformall/service/WxBillRentManageService.java Просмотреть файл

@@ -91,6 +91,7 @@ public interface WxBillRentManageService {
void updateReceivePay(WxBillReceiveUpdateDTO dto,MallUserInfo user,boolean forcePaid);
public void notify(WxBillPayDTO dto, MallUserInfo user);
void backPay(WxBillPayDTO dto,MallUserInfo user);
public void updatePay(WxBillPayDTO dto, MallUserInfo user);
public void updatePayByMerchant(WxBillPayDTO dto, WxMerchantBUser user,boolean isOnline);
public void bad(WxBillPayDTO dto,MallUserInfo user);


+ 1
- 0
mallinkService/src/main/java/com/iformall/service/WxBillRentService.java Просмотреть файл

@@ -92,6 +92,7 @@ public interface WxBillRentService {
void updateReceivePay(WxBillReceiveUpdateDTO dto,MallUserInfo user,boolean forcePaid);
void notify(WxBillPayDTO dto,MallUserInfo user);
void backPay(WxBillPayDTO dto,MallUserInfo user);
void updatePay(WxBillPayDTO dto,MallUserInfo user);
void updatePayByMerchant(WxBillPayDTO dto,WxMerchantBUser user,boolean isOnline);
void bad(WxBillPayDTO dto,MallUserInfo user);


+ 1
- 0
mallinkService/src/main/java/com/iformall/service/WxFinanceService.java Просмотреть файл

@@ -28,6 +28,7 @@ public interface WxFinanceService {
List<WxBillBaseEntity> createReceive(WxFinanceReceive record,MallUserInfo user);
WxFinanceReceive getReceiveById(TenantEntity tenantEntity,Long id);
void invalidReceive(WxFinanceReceive record,MallUserInfo user);
void redSetoffReceive(WxFinanceReceive record,MallUserInfo user);
//预收款
List<WxBillBaseEntity> calcuetSetOff(FinanceSetOffDTO dto,MallUserInfo user);
FinanceBillSetoffSum getBillSetoffSum(WxFinanceReceive record);


+ 24
- 0
mallinkService/src/main/java/com/iformall/service/helper/WxBillAllHelper.java Просмотреть файл

@@ -959,6 +959,30 @@ public class WxBillAllHelper {
}
}
public void backPay(WxBillPayDTO dto,MallUserInfo user) {
if (dto.getBillTypeValue().intValue() == EnumBillAllType.RENT.getCode().intValue()) {
wxBillRentService.backPay(dto, user);
}else if (dto.getBillTypeValue().intValue() == EnumBillAllType.RENT_BUSSINESS_MANAGE.getCode().intValue()) {
wxBillRentManageService.backPay(dto, user);
}else if (dto.getBillTypeValue().intValue() == EnumBillAllType.RENT_OPERATION_MANAGE.getCode().intValue()) {
wxBillRentManageService.backPay(dto, user);
}else if (dto.getBillTypeValue().intValue() == EnumBillAllType.RENT_DEPOSIT.getCode().intValue()) {
wxBillRentDepositService.backPay(dto, user);
}else if (dto.getBillTypeValue().intValue() == EnumBillAllType.PROPERTY.getCode().intValue()) {
wxBillPropertyService.backPay(dto, user);
}else if (dto.getBillTypeValue().intValue() == EnumBillAllType.PROPERTY_DEPOSIT.getCode().intValue()) {
wxBillPropertyDepositService.backPay(dto, user);
}else if (dto.getBillTypeValue().intValue() == EnumBillAllType.DAILY.getCode().intValue()) {
wxBillDailyService.backPay(dto, user);
}else if (dto.getBillTypeValue().intValue() == EnumBillAllType.OTHER.getCode().intValue()) {
wxBillOtherService.backPay(dto, user);
}else if (dto.getBillTypeValue().intValue() == EnumBillAllType.OTHER_DEPOSIT.getCode().intValue()) {
wxBillOtherDepositService.backPay(dto, user);
}else if (dto.getBillTypeValue().intValue() == EnumBillAllType.ADVANCE.getCode().intValue()) {
wxBillAdvanceService.backPay(dto, user);
}
}
public void updatePay(WxBillPayDTO dto,MallUserInfo user) {
if (dto.getBillTypeValue().intValue() == EnumBillAllType.RENT.getCode().intValue()) {
wxBillRentService.updatePay(dto, user);


+ 24
- 0
mallinkService/src/main/java/com/iformall/service/impl/WxBillAdvanceServiceImpl.java Просмотреть файл

@@ -14,6 +14,7 @@ import com.iformall.domain.po.WxBillAction;
import com.iformall.domain.po.WxBillAdvance;
import com.iformall.domain.po.WxBillDeposit;
import com.iformall.domain.po.WxBillPayWay;
import com.iformall.domain.po.WxBillRent;
import com.iformall.domain.po.WxMerchant;
import com.iformall.domain.po.WxMerchantBUser;
import com.iformall.domain.po.WxPayAccountBill;
@@ -272,6 +273,29 @@ public class WxBillAdvanceServiceImpl extends WxBillBaseService implements WxBil
}
}
@Override
public void backPay(WxBillPayDTO dto, MallUserInfo user) {
WxBillAdvance dbBill = wxBillAdvanceMapper.selectById(dto.getId(),dto.getTenantId());
BigDecimal oldpay = new BigDecimal(0);
if (StringUtils.isNotBlank(dbBill.getPay())) {
oldpay = new BigDecimal(dbBill.getPay());
}
BigDecimal oldsetoff = new BigDecimal(0);
if (StringUtils.isNotBlank(dbBill.getSetOff())) {
oldsetoff = new BigDecimal(dbBill.getSetOff());
}
WxBillAdvance wxBillRent = new WxBillAdvance();
wxBillRent.setId(dto.getId());
wxBillRent.updateTenantInfo(dto);
wxBillRent.setUpdatetime(new Date());
wxBillRent.setPay(oldpay.subtract(new BigDecimal(dto.getAddpay())).toPlainString());
wxBillRent.setSetOff(oldsetoff.subtract(new BigDecimal(dto.getSetOff())).toPlainString());
wxBillAdvanceMapper.updateById(wxBillRent);
EnumBillAction action = EnumBillAction.RETURN;
this.addBillAction(action, dto.getBillTypeValue(),dto.getId(),
dto.getAddpay(), dto.getAddpay(),dto.getSetOff(),wxBillRent.getPayDate(),dto.getPayWayObject(),dto.getRemark(),null,null, user);
}
@Override
public void updatePay(WxBillPayDTO dto, MallUserInfo user) {
WxBillAdvance wxBillRent = updateBillPay(dto);


+ 24
- 0
mallinkService/src/main/java/com/iformall/service/impl/WxBillDailyServiceImpl.java Просмотреть файл

@@ -12,6 +12,7 @@ import com.iformall.domain.po.MallUserInfo;
import com.iformall.domain.po.WxBillAction;
import com.iformall.domain.po.WxBillDaily;
import com.iformall.domain.po.WxBillPayWay;
import com.iformall.domain.po.WxBillRent;
import com.iformall.domain.po.WxMerchant;
import com.iformall.domain.po.WxMerchantBUser;
import com.iformall.domain.po.WxPayAccountBill;
@@ -540,6 +541,29 @@ public class WxBillDailyServiceImpl extends WxBillBaseService implements WxBillD
null, null,null,null,null,dto.getRemark(),null,null, user);
}
@Override
public void backPay(WxBillPayDTO dto, MallUserInfo user) {
WxBillDaily dbBill = wxBillDailyMapper.selectById(dto.getId(),dto.getTenantId());
BigDecimal oldpay = new BigDecimal(0);
if (StringUtils.isNotBlank(dbBill.getPay())) {
oldpay = new BigDecimal(dbBill.getPay());
}
BigDecimal oldsetoff = new BigDecimal(0);
if (StringUtils.isNotBlank(dbBill.getSetOff())) {
oldsetoff = new BigDecimal(dbBill.getSetOff());
}
WxBillDaily wxBillRent = new WxBillDaily();
wxBillRent.setId(dto.getId());
wxBillRent.updateTenantInfo(dto);
wxBillRent.setUpdatetime(new Date());
wxBillRent.setPay(oldpay.subtract(new BigDecimal(dto.getAddpay())).toPlainString());
wxBillRent.setSetOff(oldsetoff.subtract(new BigDecimal(dto.getSetOff())).toPlainString());
wxBillDailyMapper.updateById(wxBillRent);
EnumBillAction action = EnumBillAction.RETURN;
this.addBillAction(action, dto.getBillTypeValue(),dto.getId(),
dto.getAddpay(), dto.getAddpay(),dto.getSetOff(),wxBillRent.getPayDate(),dto.getPayWayObject(),dto.getRemark(),null,null, user);
}
@Override
public void updatePay(WxBillPayDTO dto, MallUserInfo user) {
WxBillDaily wxBillRent = updateBillPay(dto);


+ 23
- 0
mallinkService/src/main/java/com/iformall/service/impl/WxBillDepositServiceImpl.java Просмотреть файл

@@ -482,6 +482,29 @@ public class WxBillDepositServiceImpl extends WxBillBaseService implements WxBil
null, null,null,null,null,dto.getRemark(),null,null, user);
}
@Override
public void backPay(WxBillPayDTO dto, MallUserInfo user) {
WxBillDeposit dbBill = wxBillDepositMapper.selectById(dto.getId(),dto.getTenantId());
BigDecimal oldpay = new BigDecimal(0);
if (StringUtils.isNotBlank(dbBill.getPay())) {
oldpay = new BigDecimal(dbBill.getPay());
}
BigDecimal oldsetoff = new BigDecimal(0);
if (StringUtils.isNotBlank(dbBill.getSetOff())) {
oldsetoff = new BigDecimal(dbBill.getSetOff());
}
WxBillDeposit wxBillRent = new WxBillDeposit();
wxBillRent.setId(dto.getId());
wxBillRent.updateTenantInfo(dto);
wxBillRent.setUpdatetime(new Date());
wxBillRent.setPay(oldpay.subtract(new BigDecimal(dto.getAddpay())).toPlainString());
wxBillRent.setSetOff(oldsetoff.subtract(new BigDecimal(dto.getSetOff())).toPlainString());
wxBillDepositMapper.updateById(wxBillRent);
EnumBillAction action = EnumBillAction.RETURN;
this.addBillAction(action, dto.getBillTypeValue(),dto.getId(),
dto.getAddpay(), dto.getAddpay(),dto.getSetOff(),wxBillRent.getPayDate(),dto.getPayWayObject(),dto.getRemark(),null,null, user);
}
@Override
public void updatePay(WxBillPayDTO dto, MallUserInfo user) {
WxBillDeposit wxBillRent = updateBillPay(dto);


+ 23
- 0
mallinkService/src/main/java/com/iformall/service/impl/WxBillOtherDepositServiceImpl.java Просмотреть файл

@@ -492,6 +492,29 @@ public class WxBillOtherDepositServiceImpl extends WxBillBaseService implements
null,null, null,null,null,dto.getRemark(), null,null,user);
}
@Override
public void backPay(WxBillPayDTO dto, MallUserInfo user) {
WxBillOtherDeposit dbBill = wxBillOtherDepositMapper.selectById(dto.getId(),dto.getTenantId());
BigDecimal oldpay = new BigDecimal(0);
if (StringUtils.isNotBlank(dbBill.getPay())) {
oldpay = new BigDecimal(dbBill.getPay());
}
BigDecimal oldsetoff = new BigDecimal(0);
if (StringUtils.isNotBlank(dbBill.getSetOff())) {
oldsetoff = new BigDecimal(dbBill.getSetOff());
}
WxBillOtherDeposit wxBillRent = new WxBillOtherDeposit();
wxBillRent.setId(dto.getId());
wxBillRent.updateTenantInfo(dto);
wxBillRent.setUpdatetime(new Date());
wxBillRent.setPay(oldpay.subtract(new BigDecimal(dto.getAddpay())).toPlainString());
wxBillRent.setSetOff(oldsetoff.subtract(new BigDecimal(dto.getSetOff())).toPlainString());
wxBillOtherDepositMapper.updateById(wxBillRent);
EnumBillAction action = EnumBillAction.RETURN;
this.addBillAction(action, dto.getBillTypeValue(),dto.getId(),
dto.getAddpay(), dto.getAddpay(),dto.getSetOff(),wxBillRent.getPayDate(),dto.getPayWayObject(),dto.getRemark(),null,null, user);
}
@Override
public void updatePay(WxBillPayDTO dto, MallUserInfo user) {
WxBillOtherDeposit wxBillRent = updateBillPay(dto);


+ 23
- 0
mallinkService/src/main/java/com/iformall/service/impl/WxBillOtherServiceImpl.java Просмотреть файл

@@ -437,6 +437,29 @@ public class WxBillOtherServiceImpl extends WxBillBaseService implements WxBillO
null, null,null,null,null,dto.getRemark(),null,null, user);
}
@Override
public void backPay(WxBillPayDTO dto, MallUserInfo user) {
WxBillOther dbBill = wxBillOtherMapper.selectById(dto.getId(),dto.getTenantId());
BigDecimal oldpay = new BigDecimal(0);
if (StringUtils.isNotBlank(dbBill.getPay())) {
oldpay = new BigDecimal(dbBill.getPay());
}
BigDecimal oldsetoff = new BigDecimal(0);
if (StringUtils.isNotBlank(dbBill.getSetOff())) {
oldsetoff = new BigDecimal(dbBill.getSetOff());
}
WxBillOther wxBillRent = new WxBillOther();
wxBillRent.setId(dto.getId());
wxBillRent.updateTenantInfo(dto);
wxBillRent.setUpdatetime(new Date());
wxBillRent.setPay(oldpay.subtract(new BigDecimal(dto.getAddpay())).toPlainString());
wxBillRent.setSetOff(oldsetoff.subtract(new BigDecimal(dto.getSetOff())).toPlainString());
wxBillOtherMapper.updateById(wxBillRent);
EnumBillAction action = EnumBillAction.RETURN;
this.addBillAction(action, dto.getBillTypeValue(),dto.getId(),
dto.getAddpay(), dto.getAddpay(),dto.getSetOff(),wxBillRent.getPayDate(),dto.getPayWayObject(),dto.getRemark(),null,null, user);
}
@Override
public void updatePay(WxBillPayDTO dto, MallUserInfo user) {
WxBillOther wxBillRent = updateBillPay(dto);


+ 23
- 0
mallinkService/src/main/java/com/iformall/service/impl/WxBillPropertyDepositServiceImpl.java Просмотреть файл

@@ -467,6 +467,29 @@ public class WxBillPropertyDepositServiceImpl extends WxBillBaseService implemen
null, null,null,null,null,dto.getRemark(),null,null, user);
}
@Override
public void backPay(WxBillPayDTO dto, MallUserInfo user) {
WxBillPropertyDeposit dbBill = wxBillPropertyDepositMapper.selectById(dto.getId(),dto.getTenantId());
BigDecimal oldpay = new BigDecimal(0);
if (StringUtils.isNotBlank(dbBill.getPay())) {
oldpay = new BigDecimal(dbBill.getPay());
}
BigDecimal oldsetoff = new BigDecimal(0);
if (StringUtils.isNotBlank(dbBill.getSetOff())) {
oldsetoff = new BigDecimal(dbBill.getSetOff());
}
WxBillPropertyDeposit wxBillRent = new WxBillPropertyDeposit();
wxBillRent.setId(dto.getId());
wxBillRent.updateTenantInfo(dto);
wxBillRent.setUpdatetime(new Date());
wxBillRent.setPay(oldpay.subtract(new BigDecimal(dto.getAddpay())).toPlainString());
wxBillRent.setSetOff(oldsetoff.subtract(new BigDecimal(dto.getSetOff())).toPlainString());
wxBillPropertyDepositMapper.updateById(wxBillRent);
EnumBillAction action = EnumBillAction.RETURN;
this.addBillAction(action, dto.getBillTypeValue(),dto.getId(),
dto.getAddpay(), dto.getAddpay(),dto.getSetOff(),wxBillRent.getPayDate(),dto.getPayWayObject(),dto.getRemark(),null,null, user);
}
@Override
public void updatePay(WxBillPayDTO dto, MallUserInfo user) {
WxBillPropertyDeposit wxBillRent = updateBillPay(dto);


+ 24
- 0
mallinkService/src/main/java/com/iformall/service/impl/WxBillPropertyServiceImpl.java Просмотреть файл

@@ -14,6 +14,7 @@ import com.iformall.domain.po.WxBillAction;
import com.iformall.domain.po.WxBillPayWay;
import com.iformall.domain.po.WxBillProperty;
import com.iformall.domain.po.WxBillPropertyDeposit;
import com.iformall.domain.po.WxBillRent;
import com.iformall.domain.po.WxMerchant;
import com.iformall.domain.po.WxMerchantBUser;
import com.iformall.domain.po.WxPayAccountBill;
@@ -580,6 +581,29 @@ public class WxBillPropertyServiceImpl extends WxBillBaseService implements WxBi
null,null, null,null,null,dto.getRemark(),null,null, user);
}
@Override
public void backPay(WxBillPayDTO dto, MallUserInfo user) {
WxBillProperty dbBill = wxBillPropertyMapper.selectById(dto.getId(),dto.getTenantId());
BigDecimal oldpay = new BigDecimal(0);
if (StringUtils.isNotBlank(dbBill.getPay())) {
oldpay = new BigDecimal(dbBill.getPay());
}
BigDecimal oldsetoff = new BigDecimal(0);
if (StringUtils.isNotBlank(dbBill.getSetOff())) {
oldsetoff = new BigDecimal(dbBill.getSetOff());
}
WxBillProperty wxBillRent = new WxBillProperty();
wxBillRent.setId(dto.getId());
wxBillRent.updateTenantInfo(dto);
wxBillRent.setUpdatetime(new Date());
wxBillRent.setPay(oldpay.subtract(new BigDecimal(dto.getAddpay())).toPlainString());
wxBillRent.setSetOff(oldsetoff.subtract(new BigDecimal(dto.getSetOff())).toPlainString());
wxBillPropertyMapper.updateById(wxBillRent);
EnumBillAction action = EnumBillAction.RETURN;
this.addBillAction(action, dto.getBillTypeValue(),dto.getId(),
dto.getAddpay(), dto.getAddpay(),dto.getSetOff(),wxBillRent.getPayDate(),dto.getPayWayObject(),dto.getRemark(),null,null, user);
}
@Override
public void updatePay(WxBillPayDTO dto, MallUserInfo user) {
WxBillProperty wxBillRent = updateBillPay(dto);


+ 24
- 0
mallinkService/src/main/java/com/iformall/service/impl/WxBillRentManageServiceImpl.java Просмотреть файл

@@ -12,6 +12,7 @@ import com.iformall.domain.dto.WxBillReceiveUpdateDTO;
import com.iformall.domain.po.MallUserInfo;
import com.iformall.domain.po.WxBillAction;
import com.iformall.domain.po.WxBillPayWay;
import com.iformall.domain.po.WxBillRent;
import com.iformall.domain.po.WxBillRentManage;
import com.iformall.domain.po.WxMerchant;
import com.iformall.domain.po.WxMerchantBUser;
@@ -493,6 +494,29 @@ public class WxBillRentManageServiceImpl extends WxBillBaseService implements W
null, null,null,null,null,dto.getRemark(),null,null, user);
}
@Override
public void backPay(WxBillPayDTO dto, MallUserInfo user) {
WxBillRentManage dbBill = wxBillRentManageMapper.selectById(dto.getId(),dto.getTenantId());
BigDecimal oldpay = new BigDecimal(0);
if (StringUtils.isNotBlank(dbBill.getPay())) {
oldpay = new BigDecimal(dbBill.getPay());
}
BigDecimal oldsetoff = new BigDecimal(0);
if (StringUtils.isNotBlank(dbBill.getSetOff())) {
oldsetoff = new BigDecimal(dbBill.getSetOff());
}
WxBillRentManage wxBillRent = new WxBillRentManage();
wxBillRent.setId(dto.getId());
wxBillRent.updateTenantInfo(dto);
wxBillRent.setUpdatetime(new Date());
wxBillRent.setPay(oldpay.subtract(new BigDecimal(dto.getAddpay())).toPlainString());
wxBillRent.setSetOff(oldsetoff.subtract(new BigDecimal(dto.getSetOff())).toPlainString());
wxBillRentManageMapper.updateById(wxBillRent);
EnumBillAction action = EnumBillAction.RETURN;
this.addBillAction(action, dto.getBillTypeValue(),dto.getId(),
dto.getAddpay(), dto.getAddpay(),dto.getSetOff(),wxBillRent.getPayDate(),dto.getPayWayObject(),dto.getRemark(),null,null, user);
}
@Override
public void updatePay(WxBillPayDTO dto, MallUserInfo user) {
WxBillRentManage wxBillRent = updateBillPay(dto);


+ 23
- 0
mallinkService/src/main/java/com/iformall/service/impl/WxBillRentServiceImpl.java Просмотреть файл

@@ -688,6 +688,29 @@ public class WxBillRentServiceImpl extends WxBillBaseService implements WxBillRe
this.addBillAction(EnumBillAction.NOTIFY, dto.getBillTypeValue(),dto.getId(),
null, null,null,null,null,dto.getRemark(),null,null, user);
}
@Override
public void backPay(WxBillPayDTO dto, MallUserInfo user) {
WxBillRent dbBill = wxBillRentMapper.selectById(dto.getId(),dto.getTenantId());
BigDecimal oldpay = new BigDecimal(0);
if (StringUtils.isNotBlank(dbBill.getPay())) {
oldpay = new BigDecimal(dbBill.getPay());
}
BigDecimal oldsetoff = new BigDecimal(0);
if (StringUtils.isNotBlank(dbBill.getSetOff())) {
oldsetoff = new BigDecimal(dbBill.getSetOff());
}
WxBillRent wxBillRent = new WxBillRent();
wxBillRent.setId(dto.getId());
wxBillRent.updateTenantInfo(dto);
wxBillRent.setUpdatetime(new Date());
wxBillRent.setPay(oldpay.subtract(new BigDecimal(dto.getAddpay())).toPlainString());
wxBillRent.setSetOff(oldsetoff.subtract(new BigDecimal(dto.getSetOff())).toPlainString());
wxBillRentMapper.updateById(wxBillRent);
EnumBillAction action = EnumBillAction.RETURN;
this.addBillAction(action, dto.getBillTypeValue(),dto.getId(),
dto.getAddpay(), dto.getAddpay(),dto.getSetOff(),wxBillRent.getPayDate(),dto.getPayWayObject(),dto.getRemark(),null,null, user);
}

@Override
public void updatePay(WxBillPayDTO dto, MallUserInfo user) {


+ 83
- 1
mallinkService/src/main/java/com/iformall/service/impl/WxFinanceServiceImpl.java Просмотреть файл

@@ -659,11 +659,93 @@ public class WxFinanceServiceImpl implements WxFinanceService {
//创建预收账单? WxBillAdvance
}

@Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class})
@Override
public void invalidReceive(WxFinanceReceive record, MallUserInfo user) {
//收款作废
//如果自身是预充单,则被冲抵了就不能作废
if (record.getType().intValue() == EnumFinanceReceiveType.ADVANCE.getCode().intValue()) {
WxFinanceReceiveSetoff rsq0 = new WxFinanceReceiveSetoff();
rsq0.updateTenantInfo(record);
rsq0.setAdvanceId(record.getId());
rsq0.setIsDel(EnumYesOrNo.NO.getCode());
Integer count = wxFinanceReceiveSetoffMapper.findCount(rsq0);
if (null != count && count > 0 ) {
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"存在关联的冲抵单,请先处理");
}
}
//主收款单作废
record.setStatus(EnumFinanceReceiveStatus.INVALID.getCode());
record.setUpdateTime(new Date());
record.setUpdateBy(user.getId());
record.setUpdateByName(user.getName());
wxFinanceReceiveMapper.updateById(record);
//关联的账单删除
WxFinanceReceiveBill bdel = new WxFinanceReceiveBill();
bdel.updateTenantInfo(record);
bdel.setReceiveId(record.getId());
bdel.setUpdateTime(new Date());
wxFinanceReceiveBillMapper.deleteByConditon(bdel);
//查询收款单下的账单
WxFinanceReceiveBill frb = new WxFinanceReceiveBill();
frb.updateTenantInfo(record);
frb.setReceiveId(record.getId());
List<WxFinanceReceiveBill> receiveBills = wxFinanceReceiveBillMapper.findList(frb);
if (null != receiveBills && receiveBills.size() > 0 ) {
WxMerchant merchant = new WxMerchant();
merchant.updateTenantInfo(record);
for (int i = 0 ; i < receiveBills.size() ; i ++) {
WxFinanceReceiveBill rb = receiveBills.get(i);
WxBillBaseEntity bill = wxBillAllHelper.getBillDetail(EnumBillAllType.getEnum(rb.getBillType()), merchant, rb.getId());
if (rb.getPayWay().equals(Constant.bill_pay_way_setoff)) {
//账单回退
WxBillPayDTO payDto = new WxBillPayDTO();
payDto.updateTenantInfo(record);
payDto.setId(bill.getId());
payDto.setBillTypeValue(bill.getBillType());
payDto.setAddpay(rb.getReceive());
payDto.setRemark("收款单作废,系统自动退回");
wxBillAllHelper.backPay(payDto, user);
}else {
//预收单冲抵回退
//查询账单关联的预充收款单,每个预售单的金额回退
WxFinanceReceiveSetoff rsq = new WxFinanceReceiveSetoff();
rsq.updateTenantInfo(record);
rsq.setBillId(bill.getId());
rsq.setBillType(bill.getBillType());
List<WxFinanceReceiveSetoff> setoffList = wxFinanceReceiveSetoffMapper.findList(rsq);
if (null != setoffList) {
for (int j = 0 ; j < setoffList.size() ; j ++) {
WxFinanceReceiveSetoff rs = setoffList.get(j);
WxFinanceReceive advance = this.getReceiveById(record, rs.getAdvanceId());
if (advance.getStatus().intValue() != EnumFinanceReceiveStatus.NORMAL.getCode().intValue()) {
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"关联的预充单["+advance.getId()+"]已被锁定,无法修改");
}
BigDecimal advanceUserMoney = new BigDecimal(0);
if (StringUtils.isNotBlank(advance.getUseMoney())) {
advanceUserMoney = new BigDecimal(advance.getUseMoney());
}
advance.setUseMoney(advanceUserMoney.subtract(new BigDecimal(rs.getSetoff())).toPlainString());
record.setUpdateTime(new Date());
record.setUpdateBy(user.getId());
record.setUpdateByName(user.getName());
wxFinanceReceiveMapper.updateById(advance);
}
}
//记录删除
wxFinanceReceiveSetoffMapper.deleteByConditon(rsq);
}
}
}
}

@Override
public void redSetoffReceive(WxFinanceReceive record, MallUserInfo user) {
//红冲
}




+ 8
- 1
mallinkService/src/main/resources/mapper/WxFinanceReceiveBillMapper.xml Просмотреть файл

@@ -16,11 +16,12 @@
<result column="merchant_id" jdbcType="BIGINT" property="merchantId"/>
<result column="starttime" jdbcType="TIMESTAMP" property="starttime"/>
<result column="endtime" jdbcType="TIMESTAMP" property="endtime"/>
<result column="is_del" jdbcType="INTEGER" property="isDel"/>
</resultMap>

<sql id="allColumns">
`id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`bill_id`,`bill_type`,`fees_id`,
`pay_way`,`receive_id`,`receive`,`merchant_id`,`starttime`,`endtime`
`pay_way`,`receive_id`,`receive`,`merchant_id`,`starttime`,`endtime`,`is_del`
</sql>

<sql id="dynamicWhereConditions">
@@ -38,6 +39,7 @@
<if test=" null != payWay ">and `pay_way` = #{payWay}</if>
<if test=" null != receiveId ">and `receive_id` = #{receiveId}</if>
<if test=" null != merchantId ">and `merchant_id` = #{merchantId}</if>
<if test=" null != isDel ">and `is_del` = #{isDel}</if>
<if test=" null != ids ">
and id in
<foreach collection="ids" index="index" item="idItem" open="(" separator="," close=")">
@@ -60,6 +62,11 @@
from wx_finance_receive_bill where id = #{id} and `tenant_id` = #{tenantId}
</select>
<update id = "deleteByConditon" parameterType="com.iformall.domain.po.WxFinanceReceiveBill">
update wx_finance_receive_bill set is_del = 1 ,update_time = #{updateTime}
<include refid="dynamicWhereConditions"/>
</update>

</mapper>


+ 14
- 1
mallinkService/src/main/resources/mapper/WxFinanceReceiveSetoffMapper.xml Просмотреть файл

@@ -15,11 +15,12 @@
<result column="merchant_id" jdbcType="BIGINT" property="merchantId"/>
<result column="starttime" jdbcType="TIMESTAMP" property="starttime"/>
<result column="endtime" jdbcType="TIMESTAMP" property="endtime"/>
<result column="is_del" jdbcType="INTEGER" property="isDel"/>
</resultMap>

<sql id="allColumns">
`id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`bill_id`,`bill_type`,`fees_id`,
`advance_id`,`setoff`,`merchant_id`,`starttime`,`endtime`
`advance_id`,`setoff`,`merchant_id`,`starttime`,`endtime`,`is_del`
</sql>

<sql id="dynamicWhereConditions">
@@ -36,6 +37,7 @@
<if test=" null != feesId ">and `fees_id` = #{feesId}</if>
<if test=" null != advanceId ">and `advance_id` = #{advanceId}</if>
<if test=" null != merchantId ">and `merchant_id` = #{merchantId}</if>
<if test=" null != isDel ">and `is_del` = #{isDel}</if>
<if test=" null != ids ">
and id in
<foreach collection="ids" index="index" item="idItem" open="(" separator="," close=")">
@@ -52,12 +54,23 @@
<include refid="dynamicWhereConditions"/>
</select>
<select id="findCount" parameterType="com.iformall.domain.po.WxFinanceReceiveSetoff" resultType="Integer">
select count(1)
from wx_finance_receive_setoff
<include refid="dynamicWhereConditions"/>
</select>
<select id="selectById" parameterType="HashMap" resultMap="BaseResultMap">
select
<include refid="allColumns"/>
from wx_finance_receive_setoff where id = #{id} and `tenant_id` = #{tenantId}
</select>
<update id = "deleteByConditon" parameterType="com.iformall.domain.po.WxFinanceReceiveSetoff">
update wx_finance_receive_setoff set is_del = 1 ,update_time = #{updateTime}
<include refid="dynamicWhereConditions"/>
</update>

</mapper>


Загрузка…
Отмена
Сохранить