|
|
@ -255,7 +255,7 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl |
|
|
|
//是否有余额
|
|
|
|
if (StringUtils.isNotBlank(record.getBalance())) { |
|
|
|
//余额是0
|
|
|
|
if (new BigDecimal(record.getBalance()).compareTo(BigDecimal.ZERO) == 0) { |
|
|
|
if (new BigDecimal(record.getBalance()).compareTo(BigDecimal.ZERO) <= 0) { |
|
|
|
record.setShowHandle(false); |
|
|
|
} else { |
|
|
|
//是否是待审核状态或已驳回状态
|
|
|
@ -372,6 +372,9 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl |
|
|
|
if (StringUtils.isBlank(v.getSubscriptionMoney())) { |
|
|
|
return rb.setMsg("认款金额不允许为空"); |
|
|
|
} |
|
|
|
if(new BigDecimal(v.getSubscriptionMoney()).compareTo(new BigDecimal(v.getCurrentReceivableMoney()))>0){ |
|
|
|
return rb.setMsg("认款金额不允许大于当前应收金额"); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
@ -732,7 +735,7 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl |
|
|
|
BigDecimal balance = record.getBalance();//余额
|
|
|
|
//审核状态:1待审核/2已驳回/3已审核
|
|
|
|
if (balance != null) { |
|
|
|
if (balance.compareTo(BigDecimal.ZERO) == 0) { |
|
|
|
if (balance.compareTo(BigDecimal.ZERO) <= 0) { |
|
|
|
record.setShowHandle(false); |
|
|
|
record.setShowDelete(false); |
|
|
|
} else { |
|
|
@ -1041,6 +1044,7 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl |
|
|
|
*/ |
|
|
|
public ResultBean submitCollectionConfirm(AppFinCollectionConfirmationDto dto) { |
|
|
|
ResultBean rb = ResultBean.fireFail(); |
|
|
|
log.info("款项申请提交开始咯====================="); |
|
|
|
//款项申请是否存在
|
|
|
|
String sid = dto.getCollectionBillSid(); |
|
|
|
FinCollectionConfirmation finCollectionConfirmation = fetchBySid(sid); |
|
|
@ -1084,7 +1088,8 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl |
|
|
|
} |
|
|
|
finCollectionConfirmation.setAuditState(1); // 1待审核/2已驳回/3已审核
|
|
|
|
updateById(finCollectionConfirmation); |
|
|
|
|
|
|
|
//查询认款明细中是否有该收款申请的明细,有的话删除,没有则添加
|
|
|
|
finSelectedReceivablesDetailedService.deleteByCollSid(finCollectionConfirmation.getSid()); |
|
|
|
//保存认款明细列表
|
|
|
|
for (AppFinSelectedReceivablesDetailedDto paymentDetail : finSelectedReceivablesDetailedDtos) { |
|
|
|
FinSelectedReceivablesDetailed finSelectedReceivablesDetailed = new FinSelectedReceivablesDetailed(); |
|
|
@ -1104,6 +1109,8 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl |
|
|
|
finSelectedReceivablesDetailed.setPayTypeKey(paymentDetail.getPayTypeKey()); |
|
|
|
finSelectedReceivablesDetailed.setCreateBySid(finCollectionConfirmation.getCreateBySid()); |
|
|
|
finSelectedReceivablesDetailed.setCreateByName(finCollectionConfirmation.getCreateByName()); |
|
|
|
finSelectedReceivablesDetailed.setUseOrgSid(paymentDetail.getUseOrgSid()); |
|
|
|
finSelectedReceivablesDetailed.setCustomerSid(paymentDetail.getCustomerSid()); |
|
|
|
finSelectedReceivablesDetailedService.save(finSelectedReceivablesDetailed); |
|
|
|
|
|
|
|
BaseVehicleTempstateDto baseVehicleTempstateDto = new BaseVehicleTempstateDto(); |
|
|
@ -1172,7 +1179,7 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl |
|
|
|
if (params.getSidList().size() > 0) { |
|
|
|
qw.notIn("sid", params.getSidList()); |
|
|
|
} |
|
|
|
qw.ne("currentReceivableMoney", 0);//应收金额
|
|
|
|
qw.gt("currentReceivableMoney", 0);//应收金额
|
|
|
|
ResultBean<List<BaseVehicleTempstate>> baseVehicleTempstateFeignList = baseVehicleTempstateFeign.getList(VehicleStateTempOrLast.PaymentEnum.FIN_PAYMENT.getCode()); |
|
|
|
List<BaseVehicleTempstate> baseVehicleTempstates = baseVehicleTempstateFeignList.getData(); |
|
|
|
if (baseVehicleTempstates.size() > 0) { |
|
|
@ -1304,11 +1311,6 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl |
|
|
|
finSelectedReceivablesDetailed.setAuditDate(DateUtil.today()); |
|
|
|
finSelectedReceivablesDetailed.setAuditState(2); |
|
|
|
finSelectedReceivablesDetailedService.updateById(finSelectedReceivablesDetailed); |
|
|
|
BigDecimal subscriptionMoney = new BigDecimal(v.getSubscriptionMoney()); |
|
|
|
FinUncollectedReceivablesDetailed finUncollectedReceivablesDetailed = finUncollectedReceivablesDetailedService.fetchBySid(v.getReceivablesSid()); |
|
|
|
BigDecimal currentReceivableMoney = finUncollectedReceivablesDetailed.getCurrentReceivableMoney(); |
|
|
|
String curRecMoney = String.valueOf(currentReceivableMoney.add(subscriptionMoney)); |
|
|
|
finUncollectedReceivablesDetailedService.updateCurRecMoneyBySid(curRecMoney, finUncollectedReceivablesDetailed.getSid()); |
|
|
|
}); |
|
|
|
confirmation.setAuditState(2); |
|
|
|
//更新驳回原因
|
|
|
@ -1881,7 +1883,7 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl |
|
|
|
//查询该申请所有的款项明细
|
|
|
|
finSelectedReceivablesDetailedVos = finSelectedReceivablesDetailedService.fetchByAuditState(sid, 3); |
|
|
|
//与收款金额作比较:更新认款状态 1未认款/2部分认款/3已认款
|
|
|
|
confirmation.setPaymentState(confirmation.getCollectionMoney().compareTo(subscriptionMoneyAll) == 0 ? 3 : subscriptionMoneyAll.compareTo(BigDecimal.ZERO) == 0 ? 1 : 2); |
|
|
|
confirmation.setPaymentState(confirmation.getCollectionMoney().compareTo(subscriptionMoneyAll) <= 0 ? 3 : subscriptionMoneyAll.compareTo(BigDecimal.ZERO) == 0 ? 1 : 2); |
|
|
|
//更新收款申请的余额以及审核状态
|
|
|
|
BigDecimal balanceBigDecimal = confirmation.getCollectionMoney().subtract(subscriptionMoneyAll); |
|
|
|
confirmation.setBalance(balanceBigDecimal); |
|
|
|