| | |
| | | subjectMatter.setDeliveredQuantity(new BigDecimal("0")); |
| | | subjectMatter.setDeliveryStatus(0); |
| | | contractSubjectMatterMapper.insert(subjectMatter); |
| | | //水电类必须有初次表号 |
| | | if (StrUtil.isNotEmpty(contractSubjectMatterAddDTO.getMeterReadCode()) && |
| | | ObjUtil.isNotNull(contractSubjectMatterAddDTO.getMeterReadNum())) { |
| | | meterReadRecordMapper.delete(Wrappers.<MeterReadRecord>lambdaQuery().eq(MeterReadRecord::getContractId, contract.getId())); |
| | | MeterReadRecord record = BeanUtil.copyProperties(contractSubjectMatterAddDTO, MeterReadRecord.class,"id"); |
| | | record.setContractId(contract.getId()); |
| | | record.setMatterId(subjectMatter.getId()); |
| | | record.setContractName(contract.getContractName()); |
| | | record.setBusGuestId(contract.getPartyAId()); |
| | | record.setBusGuestName(contract.getPartyA()); |
| | | record.setMeterReadTime(new Date()); |
| | | meterReadRecordMapper.insert(record); |
| | | } |
| | | }); |
| | | } |
| | | |
| | |
| | | PaymentConfirm oiverdueConfirm = paymentConfirmMapper.selectOne(Wrappers.<PaymentConfirm>lambdaQuery().eq(PaymentConfirm::getScheduleId, contractPaymentSchedule.getId()) |
| | | .eq(PaymentConfirm::getBusinessType, "应收超期")); |
| | | if (ObjUtil.isNull(oiverdueConfirm) && overdueConfirm.getTransationAmount().compareTo(new BigDecimal("0")) > 0) { |
| | | overdueConfirm.setCompId(contractPaymentSchedule.getCompId()); |
| | | paymentConfirmMapper.insert(overdueConfirm); |
| | | } |
| | | //当前逾期 |
| | |
| | | CurrentOverdue overdue = currentOverdueMapper.selectOne(Wrappers.<CurrentOverdue>lambdaQuery().eq(CurrentOverdue::getContractId, currentOverdue.getContractId()) |
| | | .eq(CurrentOverdue::getScheduleId, currentOverdue.getScheduleId()).last("limit 1")); |
| | | if (ObjUtil.isNull(overdue)) { |
| | | currentOverdue.setCompId(contractPaymentSchedule.getCompId()); |
| | | if (currentOverdue.getReceivableAmount().compareTo(new BigDecimal("0")) > 0) { |
| | | currentOverdueMapper.insert(currentOverdue); |
| | | } |
| | |
| | | Map<String, Object> item = new HashMap<>(); |
| | | item.put("no", no); |
| | | item.put("materialName", contractSubjectMatter.getMaterialName()); |
| | | item.put("guige", ""); |
| | | item.put("unit", ""); |
| | | item.put("guige", contractSubjectMatter.getSpecification()); |
| | | item.put("unit", contractSubjectMatter.getUnit()); |
| | | item.put("quantity", contractSubjectMatter.getQuantity()); |
| | | item.put("danzhong", ""); |
| | | item.put("zongzhong", ""); |
| | | item.put("danzhong", contractSubjectMatter.getSingleWight()); |
| | | item.put("zongzhong", contractSubjectMatter.getTotalWight()); |
| | | item.put("unitPrice", contractSubjectMatter.getUnitPrice()); |
| | | item.put("price", contractSubjectMatter.getTotalAmount()); |
| | | items.add(item); |
| | |
| | | record.setBusGuestName(contract.getPartyA()); |
| | | meterReadRecordMapper.insert(record); |
| | | }else { |
| | | //创建收款节点 |
| | | //查询上次收款节点 |
| | | ContractPaymentSchedule lastSchedule = contractPaymentScheduleMapper.selectOne(Wrappers.<ContractPaymentSchedule>lambdaQuery() |
| | | .eq(ContractPaymentSchedule::getContractId,contract.getId()) |
| | | .orderByDesc(ContractPaymentSchedule::getCreateTime).last("limit 1")); |
| | | ContractPaymentSchedule schedule = new ContractPaymentSchedule(); |
| | | schedule.setStageName("房租租赁缴费"); |
| | | schedule.setContractId(contract.getId()); |
| | | schedule.setContractName(contract.getContractName()); |
| | | schedule.setPlannedAmount(subjectMatter.getUnitPrice().multiply(subjectMatter.getQuantity())); |
| | | schedule.setEffectiveEndDate(contractExecDate.getExecDate()); |
| | | schedule.setStageOrder(1); |
| | | if (ObjUtil.isNotNull(lastSchedule)){ |
| | | schedule.setStageOrder(lastSchedule.getStageOrder()+1); |
| | | } |
| | | schedule.setPaymentStatus(0); |
| | | schedule.setActualAmount(new BigDecimal("0")); |
| | | schedule.setCompId(contract.getCompId()); |
| | | contractPaymentScheduleMapper.insert(schedule); |
| | | //房屋租赁生成应收 |
| | | PaymentConfirm confirm = new PaymentConfirm(); |
| | | confirm.setBusinessType("房屋租赁应收"); |
| | |
| | | confirm.setContractId(contract.getId()); |
| | | confirm.setContractName(contract.getContractName()); |
| | | confirm.setContractNo(contract.getContractNo()); |
| | | confirm.setScheduleId(schedule.getId()); |
| | | confirm.setScheduleName(schedule.getStageName()); |
| | | confirm.setConfirmTime(contractExecDate.getExecDate()); |
| | | confirm.setTransationAmount(subjectMatter.getUnitPrice().multiply(subjectMatter.getQuantity())); |
| | | confirm.setTotalAmount(confirm.getTransationAmount().multiply(new BigDecimal("-1"))); |