| | |
| | | package com.ruoyi.cwgl.service.impl; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.text.SimpleDateFormat; |
| | | import java.util.Arrays; |
| | | import java.util.Date; |
| | |
| | | @Override |
| | | public List<PendingSettlementBusiness> selectPendingSettlement2Cw() { |
| | | List<PendingSettlementBusiness> pendingSettlementBusinesses = pendingSettlementBusinessMapper.selectPendingSettlement2Cw(); |
| | | //更新同步状态用 |
| | | /* Integer[] ids = pendingSettlementBusinesses.stream().map(PendingSettlementBusiness::getServiceId).toArray(Integer[]::new); |
| | | int i = pendingSettlementBusinessMapper.updeteCwData(ids); |
| | | if (i>0){ |
| | | logger.info("同步状态更新成功"); |
| | | }*/ |
| | | return pendingSettlementBusinesses; |
| | | } |
| | | |
| | |
| | | String customerName = pendingSettlementBusinesses.get(0).getCustomerName(); |
| | | createBillVo.setCustomerName(customerName); |
| | | createBillVo.setCount(pendingSettlementBusinesses.size()); |
| | | long priceTotal = 0L; |
| | | BigDecimal priceTotal = BigDecimal.ZERO; |
| | | for (PendingSettlementBusiness pendingSettlementBusiness : pendingSettlementBusinesses) { |
| | | if (pendingSettlementBusiness.getIsCreate().equals(1)){ |
| | | throw new ServiceException(pendingSettlementBusiness.getDispatchNo()+"已入账"); |
| | |
| | | throw new ServiceException("只能选择相同客户名称的数据"); |
| | | |
| | | } |
| | | priceTotal += pendingSettlementBusiness.getEstimatedTotalIncome()==null?0L:pendingSettlementBusiness.getEstimatedTotalIncome(); |
| | | priceTotal =priceTotal.add( pendingSettlementBusiness.getEstimatedTotalIncome()==null?BigDecimal.ZERO:pendingSettlementBusiness.getEstimatedTotalIncome()); |
| | | } |
| | | createBillVo.setPrice(priceTotal); |
| | | return createBillVo; |
| | |
| | | } |
| | | pendingSettlementBusiness.setIsCreate(0); |
| | | List<PendingSettlementBusiness> pendingSettlementBusinesses = pendingSettlementBusinessMapper.selectPendingSettlementBusinessList(pendingSettlementBusiness); |
| | | long priceTotal = pendingSettlementBusinesses.stream() |
| | | .mapToLong(b -> Optional.ofNullable(b.getEstimatedTotalIncome()).orElse(0L)) |
| | | .sum(); |
| | | BigDecimal priceTotal = pendingSettlementBusinesses.stream() |
| | | .map(b -> Optional.ofNullable(b.getEstimatedTotalIncome()).orElse(BigDecimal.ZERO)) |
| | | .reduce(BigDecimal.ZERO, BigDecimal::add); |
| | | CreateBillVo createBillVo = new CreateBillVo(); |
| | | createBillVo.setCustomerName(customerName); |
| | | createBillVo.setCount(pendingSettlementBusinesses.size()); |
| | |
| | | estimatedReceivableBill.setCustomerName(createBillVo.getCustomerName()); |
| | | estimatedReceivableBill.setDispatchCount(createBillVo.getCount()); |
| | | estimatedReceivableBill.setTotalAmount(createBillVo.getPrice()); |
| | | estimatedReceivableBill.setSettledAmount(0L); |
| | | estimatedReceivableBill.setSettledAmount(BigDecimal.ZERO); |
| | | estimatedReceivableBill.setInvoiceStatus(0); |
| | | estimatedReceivableBill.setStatus(0); |
| | | estimatedReceivableBill.setCreateBy(username); |
| | | estimatedReceivableBillMapper.insertEstimatedReceivableBill(estimatedReceivableBill); |
| | | //修改入账 |
| | | estimatedReceivableMapper.updateEstimatedReceivableBillStatus(collect,1,createBillVo.getBillName()); |
| | | |
| | | //修改调度单为已创建账单 |
| | | return pendingSettlementBusinessMapper.updatePendingSettlementBusinessIsCreate(collect,estimatedReceivableBill.getId(),createBillVo.getBillName()); |
| | |
| | | Date date = new Date(); |
| | | String datePart = dateFormat.format(date); |
| | | |
| | | long priceTotal = pendingSettlementBusinesses.stream() |
| | | .mapToLong(b -> Optional.ofNullable(b.getEstimatedTotalIncome()).orElse(0L)) |
| | | .sum(); |
| | | BigDecimal priceTotal = pendingSettlementBusinesses.stream() |
| | | .map(b -> Optional.ofNullable(b.getEstimatedTotalIncome()).orElse(BigDecimal.ZERO)) |
| | | .reduce(BigDecimal.ZERO, BigDecimal::add); |
| | | //调度单集合 |
| | | List<String> collect = pendingSettlementBusinesses.stream().map(PendingSettlementBusiness::getDispatchNo).collect(Collectors.toList()); |
| | | EstimatedReceivableBill estimatedReceivableBill = new EstimatedReceivableBill(); |
| | |
| | | estimatedReceivableBill.setCustomerName(customerName); |
| | | estimatedReceivableBill.setDispatchCount(pendingSettlementBusinesses.size()); |
| | | estimatedReceivableBill.setTotalAmount(priceTotal); |
| | | estimatedReceivableBill.setSettledAmount(0L); |
| | | estimatedReceivableBill.setSettledAmount(BigDecimal.ZERO); |
| | | estimatedReceivableBill.setInvoiceStatus(0); |
| | | estimatedReceivableBill.setStatus(0); |
| | | estimatedReceivableBill.setCreateBy(username); |
| | | estimatedReceivableBillMapper.insertEstimatedReceivableBill(estimatedReceivableBill); |
| | | |
| | | //修改应收管理表已入账 |
| | | estimatedReceivableMapper.updateEstimatedReceivableBillStatus(collect,1,billName); |
| | | //修改调度单为已创建账单 |
| | | return pendingSettlementBusinessMapper.updatePendingSettlementBusinessIsCreate(collect,estimatedReceivableBill.getId(),billName); |
| | | } |
| | |
| | | public List<String> selectCustomName() { |
| | | return pendingSettlementBusinessMapper.selectCustomName(); |
| | | } |
| | | |
| | | @Override |
| | | @DataSource(DataSourceType.CWSJ) |
| | | public int updeteCwData(Integer[] ids) { |
| | | return pendingSettlementBusinessMapper.updeteCwData(ids); |
| | | } |
| | | } |