|
|
@ -117,7 +117,7 @@ public class BusCollectionConfirmationService extends MybatisBaseService<BusColl |
|
|
|
return p; |
|
|
|
} |
|
|
|
|
|
|
|
public ResultBean saveOrUpdateAllDto(BusCollectionConfirmationDto dto) { |
|
|
|
public ResultBean saveAllDto(BusCollectionConfirmationDto dto) { |
|
|
|
ResultBean rb = ResultBean.fireFail(); |
|
|
|
BusCollectionConfirmation busCollectionConfirmation = new BusCollectionConfirmation(); |
|
|
|
List<BusSelectedReceivablesDetailedDto> busSelectedReceivablesDetailedDtos = dto.getBusSelectedReceivablesDetailedDtos(); |
|
|
@ -126,86 +126,75 @@ public class BusCollectionConfirmationService extends MybatisBaseService<BusColl |
|
|
|
List<BusCollectionConfirmationAppendixDto> remittanceConfirmationAppendixs = dto.getRemittanceConfirmationAppendixs(); |
|
|
|
String sid1 = busCollectionConfirmation.getSid(); |
|
|
|
String sid = dto.getSid(); |
|
|
|
if (StringUtils.isBlank(sid)) {//新增
|
|
|
|
BeanUtil.copyProperties(dto, busCollectionConfirmation); |
|
|
|
busCollectionConfirmation.setSid(sid1); |
|
|
|
String payFilePath = ""; |
|
|
|
String remFilePath = ""; |
|
|
|
for (BusCollectionConfirmationAppendixDto paymentVoucherAppendix : paymentVoucherAppendixs) { |
|
|
|
BeanUtil.copyProperties(paymentVoucherAppendix, commonAppendixDto); |
|
|
|
payFilePath = commonAppendixDto.getFilePath(); |
|
|
|
if (payFilePath.indexOf(fileUploadComponent.getUrlPrefix()) > -1) { |
|
|
|
payFilePath = payFilePath.replace(fileUploadComponent.getUrlPrefix(), ""); |
|
|
|
commonAppendixDto.setLinkSid(sid1); |
|
|
|
commonAppendixDto.setFilePath(payFilePath); |
|
|
|
commonAppendixDto.setCreateBySid(dto.getStaffSid()); |
|
|
|
commonAppendixDto.setAttachType(CommonAttachTypeEnum.PAYMENT_VOUCHER.getAttachType()); |
|
|
|
commonAppendixFeign.save(commonAppendixDto); |
|
|
|
} |
|
|
|
payFilePath += payFilePath + ","; |
|
|
|
BeanUtil.copyProperties(dto, busCollectionConfirmation); |
|
|
|
busCollectionConfirmation.setSid(sid1); |
|
|
|
String payFilePath = ""; |
|
|
|
String remFilePath = ""; |
|
|
|
for (BusCollectionConfirmationAppendixDto paymentVoucherAppendix : paymentVoucherAppendixs) { |
|
|
|
BeanUtil.copyProperties(paymentVoucherAppendix, commonAppendixDto); |
|
|
|
payFilePath = commonAppendixDto.getFilePath(); |
|
|
|
if (payFilePath.indexOf(fileUploadComponent.getUrlPrefix()) > -1) { |
|
|
|
payFilePath = payFilePath.replace(fileUploadComponent.getUrlPrefix(), ""); |
|
|
|
commonAppendixDto.setLinkSid(sid1); |
|
|
|
commonAppendixDto.setFilePath(payFilePath); |
|
|
|
commonAppendixDto.setCreateBySid(dto.getStaffSid()); |
|
|
|
commonAppendixDto.setAttachType(CommonAttachTypeEnum.PAYMENT_VOUCHER.getAttachType()); |
|
|
|
commonAppendixFeign.save(commonAppendixDto); |
|
|
|
} |
|
|
|
busCollectionConfirmation.setPaymentVoucherUrl(payFilePath.substring(0, payFilePath.length() - 1)); |
|
|
|
for (BusCollectionConfirmationAppendixDto remittanceConfirmationAppendix : remittanceConfirmationAppendixs) { |
|
|
|
BeanUtil.copyProperties(remittanceConfirmationAppendix, commonAppendixDto); |
|
|
|
remFilePath = commonAppendixDto.getFilePath(); |
|
|
|
if (remFilePath.indexOf(fileUploadComponent.getUrlPrefix()) > -1) { |
|
|
|
remFilePath = remFilePath.replace(fileUploadComponent.getUrlPrefix(), ""); |
|
|
|
commonAppendixDto.setLinkSid(sid1); |
|
|
|
commonAppendixDto.setFilePath(remFilePath); |
|
|
|
commonAppendixDto.setCreateBySid(dto.getStaffSid()); |
|
|
|
commonAppendixDto.setAttachType(CommonAttachTypeEnum.PAYMENT_VOUCHER.getAttachType()); |
|
|
|
commonAppendixFeign.save(commonAppendixDto); |
|
|
|
} |
|
|
|
remFilePath += remFilePath + ","; |
|
|
|
} |
|
|
|
busCollectionConfirmation.setRemittanceConfirmationUrl(remFilePath.substring(0, remFilePath.length() - 1)); |
|
|
|
for (BusSelectedReceivablesDetailedDto busSelectedReceivablesDetailedDto : busSelectedReceivablesDetailedDtos) { |
|
|
|
BusSelectedReceivablesDetailed busSelectedReceivablesDetailed = new BusSelectedReceivablesDetailed(); |
|
|
|
BeanUtil.copyProperties(busSelectedReceivablesDetailedDto, busSelectedReceivablesDetailed); |
|
|
|
busSelectedReceivablesDetailed.setCollSid(sid1); |
|
|
|
busSelectedReceivablesDetailedService.save(busSelectedReceivablesDetailed); |
|
|
|
//已选应收款项-车架号
|
|
|
|
String vin = busSelectedReceivablesDetailed.getVIN(); |
|
|
|
//已选应收款项-应收项目名称
|
|
|
|
String receivablesName = busSelectedReceivablesDetailed.getReceivablesName(); |
|
|
|
BusUncollectedReceivablesDetailedVo busUncollectedReceivablesDetailedVo = busUncollectedReceivablesDetailedService.fetchByVinAndRecName(vin, receivablesName); |
|
|
|
//应收未收款项-当前应收金额
|
|
|
|
BigDecimal currentReceivableMoney = new BigDecimal(busUncollectedReceivablesDetailedVo.getCurrentReceivableMoney()); |
|
|
|
//已选应收款项-认款金额
|
|
|
|
BigDecimal subscriptionMoney = busSelectedReceivablesDetailed.getSubscriptionMoney(); |
|
|
|
BigDecimal subtract = currentReceivableMoney.subtract(subscriptionMoney); |
|
|
|
if (subtract.compareTo(BigDecimal.ZERO) < 0){ |
|
|
|
return rb.setMsg("认款金额超出应收金额,请重新输入"); |
|
|
|
} |
|
|
|
busUncollectedReceivablesDetailedVo.setCurrentReceivableMoney(String.format("%.0f",subtract)); |
|
|
|
BusUncollectedReceivablesDetailedDto busUncollectedReceivablesDetailedDto = new BusUncollectedReceivablesDetailedDto(); |
|
|
|
BeanUtil.copyProperties(busUncollectedReceivablesDetailedVo,busUncollectedReceivablesDetailedDto); |
|
|
|
busUncollectedReceivablesDetailedService.updateBySid(busUncollectedReceivablesDetailedDto,busUncollectedReceivablesDetailedDto.getSid()); |
|
|
|
} |
|
|
|
List<BusSelectedReceivablesDetailedVo> busSelectedReceivablesDetailedVos = busSelectedReceivablesDetailedService.fetchByCillSid(sid1); |
|
|
|
BigDecimal totalSubscriptionMone = null; |
|
|
|
for (BusSelectedReceivablesDetailedVo busSelectedReceivablesDetailedVo : busSelectedReceivablesDetailedVos) { |
|
|
|
BigDecimal subscriptionMoney = new BigDecimal(busSelectedReceivablesDetailedVo.getSubscriptionMoney()); |
|
|
|
totalSubscriptionMone = totalSubscriptionMone.add(subscriptionMoney); |
|
|
|
} |
|
|
|
BigDecimal collectionMoney = busCollectionConfirmation.getCollectionMoney(); |
|
|
|
BigDecimal subtract = collectionMoney.subtract(totalSubscriptionMone); |
|
|
|
if (subtract.compareTo(BigDecimal.ZERO) < 0){ |
|
|
|
return rb.setMsg("已选应收款项金额已超出该确认单应收金额总额,请重新核对"); |
|
|
|
payFilePath += payFilePath + ","; |
|
|
|
} |
|
|
|
busCollectionConfirmation.setPaymentVoucherUrl(payFilePath.substring(0, payFilePath.length() - 1)); |
|
|
|
for (BusCollectionConfirmationAppendixDto remittanceConfirmationAppendix : remittanceConfirmationAppendixs) { |
|
|
|
BeanUtil.copyProperties(remittanceConfirmationAppendix, commonAppendixDto); |
|
|
|
remFilePath = commonAppendixDto.getFilePath(); |
|
|
|
if (remFilePath.indexOf(fileUploadComponent.getUrlPrefix()) > -1) { |
|
|
|
remFilePath = remFilePath.replace(fileUploadComponent.getUrlPrefix(), ""); |
|
|
|
commonAppendixDto.setLinkSid(sid1); |
|
|
|
commonAppendixDto.setFilePath(remFilePath); |
|
|
|
commonAppendixDto.setCreateBySid(dto.getStaffSid()); |
|
|
|
commonAppendixDto.setAttachType(CommonAttachTypeEnum.PAYMENT_VOUCHER.getAttachType()); |
|
|
|
commonAppendixFeign.save(commonAppendixDto); |
|
|
|
} |
|
|
|
busCollectionConfirmation.setBalance(totalSubscriptionMone); |
|
|
|
save(busCollectionConfirmation); |
|
|
|
return rb.success().setMsg("添加成功"); |
|
|
|
remFilePath += remFilePath + ","; |
|
|
|
} |
|
|
|
updateBySid(dto, sid); |
|
|
|
busSelectedReceivablesDetailedService.deleteByCollSid(sid); |
|
|
|
busCollectionConfirmation.setRemittanceConfirmationUrl(remFilePath.substring(0, remFilePath.length() - 1)); |
|
|
|
for (BusSelectedReceivablesDetailedDto busSelectedReceivablesDetailedDto : busSelectedReceivablesDetailedDtos) { |
|
|
|
BusSelectedReceivablesDetailed busSelectedReceivablesDetailed = new BusSelectedReceivablesDetailed(); |
|
|
|
BeanUtil.copyProperties(busSelectedReceivablesDetailedDto, busSelectedReceivablesDetailed); |
|
|
|
busSelectedReceivablesDetailed.setCollSid(sid); |
|
|
|
busSelectedReceivablesDetailed.setCollSid(sid1); |
|
|
|
busSelectedReceivablesDetailedService.save(busSelectedReceivablesDetailed); |
|
|
|
//已选应收款项-车架号
|
|
|
|
String vin = busSelectedReceivablesDetailed.getVIN(); |
|
|
|
//已选应收款项-应收项目名称
|
|
|
|
String receivablesName = busSelectedReceivablesDetailed.getReceivablesName(); |
|
|
|
BusUncollectedReceivablesDetailedVo busUncollectedReceivablesDetailedVo = busUncollectedReceivablesDetailedService.fetchByVinAndRecName(vin, receivablesName); |
|
|
|
//应收未收款项-当前应收金额
|
|
|
|
BigDecimal currentReceivableMoney = new BigDecimal(busUncollectedReceivablesDetailedVo.getCurrentReceivableMoney()); |
|
|
|
//已选应收款项-认款金额
|
|
|
|
BigDecimal subscriptionMoney = busSelectedReceivablesDetailed.getSubscriptionMoney(); |
|
|
|
BigDecimal subtract = currentReceivableMoney.subtract(subscriptionMoney); |
|
|
|
if (subtract.compareTo(BigDecimal.ZERO) < 0) { |
|
|
|
return rb.setMsg("认款金额超出应收金额,请重新输入"); |
|
|
|
} |
|
|
|
busUncollectedReceivablesDetailedVo.setCurrentReceivableMoney(String.format("%.0f", subtract)); |
|
|
|
BusUncollectedReceivablesDetailedDto busUncollectedReceivablesDetailedDto = new BusUncollectedReceivablesDetailedDto(); |
|
|
|
BeanUtil.copyProperties(busUncollectedReceivablesDetailedVo, busUncollectedReceivablesDetailedDto); |
|
|
|
busUncollectedReceivablesDetailedService.updateBySid(busUncollectedReceivablesDetailedDto, busUncollectedReceivablesDetailedDto.getSid()); |
|
|
|
} |
|
|
|
List<BusSelectedReceivablesDetailedVo> busSelectedReceivablesDetailedVos = busSelectedReceivablesDetailedService.fetchByCillSid(sid1); |
|
|
|
BigDecimal totalSubscriptionMone = null; |
|
|
|
for (BusSelectedReceivablesDetailedVo busSelectedReceivablesDetailedVo : busSelectedReceivablesDetailedVos) { |
|
|
|
BigDecimal subscriptionMoney = new BigDecimal(busSelectedReceivablesDetailedVo.getSubscriptionMoney()); |
|
|
|
totalSubscriptionMone = totalSubscriptionMone.add(subscriptionMoney); |
|
|
|
} |
|
|
|
BigDecimal collectionMoney = busCollectionConfirmation.getCollectionMoney(); |
|
|
|
BigDecimal subtract = collectionMoney.subtract(totalSubscriptionMone); |
|
|
|
if (subtract.compareTo(BigDecimal.ZERO) < 0) { |
|
|
|
return rb.setMsg("已选应收款项金额已超出该确认单应收金额总额,请重新核对"); |
|
|
|
} |
|
|
|
return rb.success().setMsg("修改成功"); |
|
|
|
busCollectionConfirmation.setBalance(totalSubscriptionMone); |
|
|
|
save(busCollectionConfirmation); |
|
|
|
return rb.success().setMsg("添加成功"); |
|
|
|
} |
|
|
|
|
|
|
|
public ResultBean<BusCollectionConfirmationDetailsVo> fetchByAllSid(String sid) { |
|
|
|