Commit 07ba3676040002589f1940aee05fb174dae1a26e

Authored by 谢茂盛
2 parents 151f61c9 a437906e

Merge remote-tracking branch 'origin/dev_finance_20240830' into test

# Conflicts:
#	src/main/java/com/order/erp/service/order/impl/OrderBaseInfoServiceImpl.java
src/main/java/com/order/erp/domain/vo/order/OrderBaseInfoVO.java
@@ -22,6 +22,10 @@ public class OrderBaseInfoVO implements Serializable { @@ -22,6 +22,10 @@ public class OrderBaseInfoVO implements Serializable {
22 22
23 private Long id; 23 private Long id;
24 /** 24 /**
  25 + * 发票单号
  26 + */
  27 + private String invoiceNo;
  28 + /**
25 * 客户编码 29 * 客户编码
26 */ 30 */
27 private String customerCode; 31 private String customerCode;
src/main/java/com/order/erp/service/order/impl/OrderBaseInfoServiceImpl.java
@@ -117,6 +117,9 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl<OrderBaseInfoMapper, O @@ -117,6 +117,9 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl<OrderBaseInfoMapper, O
117 @Resource 117 @Resource
118 private OrderOpinionLogService orderOpinionLogService; 118 private OrderOpinionLogService orderOpinionLogService;
119 119
  120 + @Resource
  121 + private InvoiceBillMappingService invoiceBillMappingService;
  122 +
120 /** 123 /**
121 * 通过ID查询单条数据 124 * 通过ID查询单条数据
122 * <p> 125 * <p>
@@ -198,6 +201,9 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl&lt;OrderBaseInfoMapper, O @@ -198,6 +201,9 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl&lt;OrderBaseInfoMapper, O
198 // 填充质检信息 201 // 填充质检信息
199 fillInspectionStageInfo(resultVOList); 202 fillInspectionStageInfo(resultVOList);
200 203
  204 + // 填充发票信息
  205 + fillInvoiceNo(resultVOList);
  206 +
201 if (locked) { 207 if (locked) {
202 // 填充字段锁定信息 208 // 填充字段锁定信息
203 fillLockFields(resultVOList); 209 fillLockFields(resultVOList);
@@ -253,7 +259,6 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl&lt;OrderBaseInfoMapper, O @@ -253,7 +259,6 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl&lt;OrderBaseInfoMapper, O
253 // 填充质检信息 259 // 填充质检信息
254 fillInspectionStageInfo(resultVOList); 260 fillInspectionStageInfo(resultVOList);
255 } 261 }
256 -  
257 if (CollectionUtils.isNotEmpty(resultVOList)) { 262 if (CollectionUtils.isNotEmpty(resultVOList)) {
258 List<Map<String, Object>> list = buildExportMapVOS(resultVOList, lockFieldVO); 263 List<Map<String, Object>> list = buildExportMapVOS(resultVOList, lockFieldVO);
259 if (CollectionUtils.isNotEmpty(list)) { 264 if (CollectionUtils.isNotEmpty(list)) {
@@ -834,6 +839,30 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl&lt;OrderBaseInfoMapper, O @@ -834,6 +839,30 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl&lt;OrderBaseInfoMapper, O
834 /** 839 /**
835 * @param orderInfoResultVOList 840 * @param orderInfoResultVOList
836 */ 841 */
  842 + private void fillInvoiceNo(List<OrderInfoResultVO> orderInfoResultVOList) {
  843 + if (CollectionUtils.isEmpty(orderInfoResultVOList)) {
  844 + return;
  845 + }
  846 +
  847 + Set<Long> orderIds = orderInfoResultVOList.stream().map(OrderInfoResultVO::getId).collect(Collectors.toSet());
  848 + List<InvoiceBillMappingDO> invoiceBillMappingDOS = invoiceBillMappingService.list(new LambdaQueryWrapper<InvoiceBillMappingDO>()
  849 + .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)
  850 + .in(InvoiceBillMappingDO::getOrderId, orderIds));
  851 + if (CollectionUtils.isEmpty(invoiceBillMappingDOS)) {
  852 + return;
  853 + }
  854 + Map<Long, InvoiceBillMappingDO> invoiceBillMappingDOMap = invoiceBillMappingDOS.stream().collect(Collectors.toMap(InvoiceBillMappingDO::getOrderId, Function.identity(), (v1, v2) -> v1));
  855 + orderInfoResultVOList.forEach(result -> {
  856 + if (invoiceBillMappingDOMap.containsKey(result.getId())) {
  857 + InvoiceBillMappingDO invoiceBillMappingDO = invoiceBillMappingDOMap.get(result.getId());
  858 + result.setInvoiceNo(invoiceBillMappingDO.getInvoiceNo());
  859 + }
  860 + });
  861 + }
  862 +
  863 + /**
  864 + * @param orderInfoResultVOList
  865 + */
837 private void fillReportInfo(List<OrderInfoResultVO> orderInfoResultVOList) { 866 private void fillReportInfo(List<OrderInfoResultVO> orderInfoResultVOList) {
838 if (CollectionUtils.isEmpty(orderInfoResultVOList)) { 867 if (CollectionUtils.isEmpty(orderInfoResultVOList)) {
839 return; 868 return;
@@ -1471,10 +1500,7 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl&lt;OrderBaseInfoMapper, O @@ -1471,10 +1500,7 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl&lt;OrderBaseInfoMapper, O
1471 } 1500 }
1472 1501
1473 orderOptLogService.save(buildOrderOptLogDo(baseInfoDO.getId(), userId, OrderOptTypeEnum.ORDER_CREATE.getDesc(), null)); 1502 orderOptLogService.save(buildOrderOptLogDo(baseInfoDO.getId(), userId, OrderOptTypeEnum.ORDER_CREATE.getDesc(), null));
1474 - OrderOpinionLogDO orderOpinionLogDO = buildOrderOpinionLogDo(baseInfoDO.getId(),  
1475 - OrderOpinionLogEnum.ORDER_PRODUCTION_COMMENT.getDesc(),  
1476 - orderAddVO.getBaseInfo().getProductionComment());  
1477 - orderOpinionLogService.save(orderOpinionLogDO); 1503 +
1478 return ServerResult.success(); 1504 return ServerResult.success();
1479 } 1505 }
1480 1506
@@ -1489,10 +1515,6 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl&lt;OrderBaseInfoMapper, O @@ -1489,10 +1515,6 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl&lt;OrderBaseInfoMapper, O
1489 return OrderOptLogDO.builder().orderId(orderId).userId(userId).fields(jsonString).optType(optType).build(); 1515 return OrderOptLogDO.builder().orderId(orderId).userId(userId).fields(jsonString).optType(optType).build();
1490 } 1516 }
1491 1517
1492 - private OrderOpinionLogDO buildOrderOpinionLogDo(Long orderId, String type, String field) {  
1493 - return OrderOpinionLogDO.builder().orderId(orderId).opinionType(type).field(field).build();  
1494 - }  
1495 -  
1496 /** 1518 /**
1497 * @param updateVO 1519 * @param updateVO
1498 */ 1520 */
@@ -1583,12 +1605,7 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl&lt;OrderBaseInfoMapper, O @@ -1583,12 +1605,7 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl&lt;OrderBaseInfoMapper, O
1583 throw new BusinessException(ServerResultCode.ORDER_BASE_INFO_EMPTY); 1605 throw new BusinessException(ServerResultCode.ORDER_BASE_INFO_EMPTY);
1584 } 1606 }
1585 OrderOptLogDO optLogDO = new OrderOptLogDO(); 1607 OrderOptLogDO optLogDO = new OrderOptLogDO();
1586 - List<OrderOpinionLogDO> orderOpinionLogDOList = new ArrayList<>();  
1587 if (Objects.nonNull(updateVO.getBaseInfo())) { 1608 if (Objects.nonNull(updateVO.getBaseInfo())) {
1588 - if(!(updateVO.getBaseInfo().getProductionComment().equals(orderBaseInfoDo.getProductionComment()))){  
1589 - OrderOpinionLogDO orderOpinionLogDO = buildOrderOpinionLogDo(updateVO.getOrderId(),OrderOpinionLogEnum.ORDER_PRODUCTION_COMMENT.getDesc(),updateVO.getBaseInfo().getProductionComment());  
1590 - orderOpinionLogDOList.add(orderOpinionLogDO);  
1591 - }  
1592 buildUpdateVO(updateVO.getBaseInfo(), orderBaseInfoDo); 1609 buildUpdateVO(updateVO.getBaseInfo(), orderBaseInfoDo);
1593 orderBaseInfoDo.setId(updateVO.getOrderId()); 1610 orderBaseInfoDo.setId(updateVO.getOrderId());
1594 optLogDO = buildOrderOptLogDo(updateVO.getOrderId(), userId, OrderOptTypeEnum.ORDER_EDIT.getDesc(), JSONObject.toJSONString(updateVO)); 1611 optLogDO = buildOrderOptLogDo(updateVO.getOrderId(), userId, OrderOptTypeEnum.ORDER_EDIT.getDesc(), JSONObject.toJSONString(updateVO));
@@ -1624,13 +1641,6 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl&lt;OrderBaseInfoMapper, O @@ -1624,13 +1641,6 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl&lt;OrderBaseInfoMapper, O
1624 trackStageDO.setPpTime(trackStageInfo.getPpTime()); 1641 trackStageDO.setPpTime(trackStageInfo.getPpTime());
1625 } 1642 }
1626 if (StringUtils.isNotBlank(trackStageInfo.getPpConfirmResult())) { 1643 if (StringUtils.isNotBlank(trackStageInfo.getPpConfirmResult())) {
1627 - //由于跟单信息在创建时也是采用edit接口,所以要限制第一次创建时ppconfirmResult为空的情况,这种情况不计算到跟单记录中去。  
1628 - if(!(trackStageInfo.getPpConfirmResult().equals(trackStageDO.getPpConfirmResult())) &&  
1629 - StringUtils.isNotBlank(trackStageDO.getPpConfirmResult()) ){  
1630 - //用于在跟单记录中展示。  
1631 - OrderOpinionLogDO orderOpinionLogDO =buildOrderOpinionLogDo(updateVO.getOrderId(),OrderOpinionLogEnum.ORDER_PP_CONFIRRM_RESULT.getDesc(),trackStageInfo.getPpConfirmResult());  
1632 - orderOpinionLogDOList.add(orderOpinionLogDO);  
1633 - }  
1634 trackStageDO.setPpConfirmResult(trackStageInfo.getPpConfirmResult()); 1644 trackStageDO.setPpConfirmResult(trackStageInfo.getPpConfirmResult());
1635 } 1645 }
1636 if (StringUtils.isNotBlank(trackStageInfo.getEsoSampleSendTime())) { 1646 if (StringUtils.isNotBlank(trackStageInfo.getEsoSampleSendTime())) {
@@ -1640,11 +1650,7 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl&lt;OrderBaseInfoMapper, O @@ -1640,11 +1650,7 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl&lt;OrderBaseInfoMapper, O
1640 trackStageDO.setShippmentSampleSendTime(trackStageInfo.getShippmentSampleSendTime()); 1650 trackStageDO.setShippmentSampleSendTime(trackStageInfo.getShippmentSampleSendTime());
1641 } 1651 }
1642 if (StringUtils.isNotBlank(trackStageInfo.getShippmentSampleConfirmResult())) { 1652 if (StringUtils.isNotBlank(trackStageInfo.getShippmentSampleConfirmResult())) {
1643 - if(!(trackStageInfo.getShippmentSampleConfirmResult().equals(trackStageDO.getShippmentSampleConfirmResult())) &&  
1644 - StringUtils.isNotBlank(trackStageDO.getShippmentSampleConfirmResult())) {  
1645 - OrderOpinionLogDO orderOpinionLogDO = buildOrderOpinionLogDo(updateVO.getOrderId(), OrderOpinionLogEnum.ORDER_SHIPMENT_SAMPLE_CONFIRM_RESULT.getDesc(), trackStageInfo.getShippmentSampleConfirmResult());  
1646 - orderOpinionLogDOList.add(orderOpinionLogDO);  
1647 - }trackStageDO.setShippmentSampleConfirmResult(trackStageInfo.getShippmentSampleConfirmResult()); 1653 + trackStageDO.setShippmentSampleConfirmResult(trackStageInfo.getShippmentSampleConfirmResult());
1648 } 1654 }
1649 if (StringUtils.isNotBlank(trackStageInfo.getSelfTestPassTime())) { 1655 if (StringUtils.isNotBlank(trackStageInfo.getSelfTestPassTime())) {
1650 trackStageDO.setSelfTestPassTime(trackStageInfo.getSelfTestPassTime()); 1656 trackStageDO.setSelfTestPassTime(trackStageInfo.getSelfTestPassTime());
@@ -1653,22 +1659,12 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl&lt;OrderBaseInfoMapper, O @@ -1653,22 +1659,12 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl&lt;OrderBaseInfoMapper, O
1653 trackStageDO.setAitexTestSendTime(trackStageInfo.getAitexTestSendTime()); 1659 trackStageDO.setAitexTestSendTime(trackStageInfo.getAitexTestSendTime());
1654 } 1660 }
1655 if (StringUtils.isNotBlank(trackStageInfo.getAitexTestFinishResult())) { 1661 if (StringUtils.isNotBlank(trackStageInfo.getAitexTestFinishResult())) {
1656 - if(!(trackStageInfo.getAitexTestFinishResult().equals(trackStageDO.getAitexTestFinishResult())) &&  
1657 - StringUtils.isNotBlank(trackStageDO.getAitexTestFinishResult())){  
1658 - OrderOpinionLogDO orderOpinionLogDO =buildOrderOpinionLogDo(updateVO.getOrderId(),OrderOpinionLogEnum.ORDER_AITEX_TEST_FINISH_RESULT.getDesc(),trackStageInfo.getAitexTestFinishResult());  
1659 - orderOpinionLogDOList.add(orderOpinionLogDO);  
1660 - }  
1661 trackStageDO.setAitexTestFinishResult(trackStageInfo.getAitexTestFinishResult()); 1662 trackStageDO.setAitexTestFinishResult(trackStageInfo.getAitexTestFinishResult());
1662 } 1663 }
1663 if (StringUtils.isNotBlank(trackStageInfo.getSgsTestSendTime())) { 1664 if (StringUtils.isNotBlank(trackStageInfo.getSgsTestSendTime())) {
1664 trackStageDO.setSgsTestSendTime(trackStageInfo.getSgsTestSendTime()); 1665 trackStageDO.setSgsTestSendTime(trackStageInfo.getSgsTestSendTime());
1665 } 1666 }
1666 if (StringUtils.isNotBlank(trackStageInfo.getSgsTestFinishResult())) { 1667 if (StringUtils.isNotBlank(trackStageInfo.getSgsTestFinishResult())) {
1667 - if(!(trackStageInfo.getSgsTestFinishResult().equals(trackStageDO.getSgsTestFinishResult())) &&  
1668 - StringUtils.isNotBlank(trackStageDO.getSgsTestFinishResult())){  
1669 - OrderOpinionLogDO orderOpinionLogDO =buildOrderOpinionLogDo(updateVO.getOrderId(),OrderOpinionLogEnum.ORDER_SGS_TEST_FINISH_RESULT.getDesc(),trackStageInfo.getSgsTestFinishResult());  
1670 - orderOpinionLogDOList.add(orderOpinionLogDO);  
1671 - }  
1672 trackStageDO.setSgsTestFinishResult(trackStageInfo.getSgsTestFinishResult()); 1668 trackStageDO.setSgsTestFinishResult(trackStageInfo.getSgsTestFinishResult());
1673 } 1669 }
1674 if (StringUtils.isNotBlank(trackStageInfo.getBarcodeStickerArrivalTime())) { 1670 if (StringUtils.isNotBlank(trackStageInfo.getBarcodeStickerArrivalTime())) {
@@ -1680,18 +1676,6 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl&lt;OrderBaseInfoMapper, O @@ -1680,18 +1676,6 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl&lt;OrderBaseInfoMapper, O
1680 if (StringUtils.isNotBlank(trackStageInfo.getLatestBkTime())) { 1676 if (StringUtils.isNotBlank(trackStageInfo.getLatestBkTime())) {
1681 trackStageDO.setLatestBkTime(trackStageInfo.getLatestBkTime()); 1677 trackStageDO.setLatestBkTime(trackStageInfo.getLatestBkTime());
1682 } 1678 }
1683 - if ((StringUtils.isNotBlank(trackStageInfo.getPpConfirmTime()))) {  
1684 - trackStageDO.setPpConfirmTime(trackStageInfo.getPpConfirmTime());  
1685 - }  
1686 - if ((StringUtils.isNotBlank(trackStageInfo.getShippmentSampleConfirmTime()))) {  
1687 - trackStageDO.setShippmentSampleConfirmTime(trackStageInfo.getShippmentSampleConfirmTime());  
1688 - }  
1689 - if ((StringUtils.isNotBlank(trackStageInfo.getAitexTestFinishTime()))) {  
1690 - trackStageDO.setAitexTestFinishTime(trackStageInfo.getAitexTestFinishTime());  
1691 - }  
1692 - if ((StringUtils.isNotBlank(trackStageInfo.getSgsTestFinishTime()))) {  
1693 - trackStageDO.setSgsTestFinishTime(trackStageInfo.getSgsTestFinishTime());  
1694 - }  
1695 trackStageDO.setOrderId(updateVO.getOrderId()); 1679 trackStageDO.setOrderId(updateVO.getOrderId());
1696 trackStageDO.setOrderStatus(OrderStatusEnum.TRACK_ING.getStatus()); 1680 trackStageDO.setOrderStatus(OrderStatusEnum.TRACK_ING.getStatus());
1697 trackStageService.updateById(trackStageDO); 1681 trackStageService.updateById(trackStageDO);
@@ -1752,26 +1736,6 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl&lt;OrderBaseInfoMapper, O @@ -1752,26 +1736,6 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl&lt;OrderBaseInfoMapper, O
1752 inspectionStageDO.setOrderId(updateVO.getOrderId()); 1736 inspectionStageDO.setOrderId(updateVO.getOrderId());
1753 inspectionStageDO.setOrderStatus(OrderStatusEnum.INSPECT_ING.getStatus()); 1737 inspectionStageDO.setOrderStatus(OrderStatusEnum.INSPECT_ING.getStatus());
1754 inspectionStageService.updateById(inspectionStageDO); 1738 inspectionStageService.updateById(inspectionStageDO);
1755 - OrderBaseInfoDO orderBaseInfoDO = baseInfoService.getById(updateVO.getOrderId());  
1756 - AdminUserDO ProductionDepartmentUserDO = userService.getOne(new LambdaQueryWrapper<AdminUserDO>()  
1757 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
1758 - .eq(AdminUserDO::getUserName, orderBaseInfoDO.getProductionDepartment()));  
1759 - OrderEventJobVO orderEventJobVO = new OrderEventJobVO();  
1760 - orderEventJobVO.setInspectionStageInfo(inspectionStageInfo);  
1761 - OrderBaseInfoVO orderBaseInfoVo = BeanUtil.copyProperties(orderBaseInfoDo, OrderBaseInfoVO.class);  
1762 - orderEventJobVO.setBaseInfo(orderBaseInfoVo);  
1763 - List<String> emails = Arrays.asList(ProductionDepartmentUserDO.getEmail().split( "[,,]+"))  
1764 - .stream().map(String::trim)  
1765 - .collect(Collectors.toList());  
1766 - //一旦修改完质检信息就自动发送邮件对应的生产科。多次编辑保存多次发送。  
1767 - if (StringUtils.isNotBlank(inspectionStageInfo.getEndCheckApplyTime())) {  
1768 - //尾期验货报告。  
1769 - emailSendUtils.sendEmail(EmailTemplateEnum.END_CHECK_REPORT_TEMPLATE, emails, orderEventJobVO);  
1770 - }else if(StringUtils.isNotBlank(inspectionStageInfo.getMidCheckApplyTime())){  
1771 - //中期验货报告。  
1772 - emailSendUtils.sendEmail(EmailTemplateEnum.MID_CHECK_REPORT_TEMPLATE, emails, orderEventJobVO);  
1773 - }  
1774 -  
1775 } else { 1739 } else {
1776 inspectionStageDO = new OrderInspectionStageDO(); 1740 inspectionStageDO = new OrderInspectionStageDO();
1777 BeanUtils.copyProperties(updateVO.getInspectionStageInfo(), inspectionStageDO); 1741 BeanUtils.copyProperties(updateVO.getInspectionStageInfo(), inspectionStageDO);
@@ -1785,7 +1749,6 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl&lt;OrderBaseInfoMapper, O @@ -1785,7 +1749,6 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl&lt;OrderBaseInfoMapper, O
1785 } 1749 }
1786 updateById(orderBaseInfoDo); 1750 updateById(orderBaseInfoDo);
1787 orderOptLogService.save(optLogDO); 1751 orderOptLogService.save(optLogDO);
1788 - orderOpinionLogService.saveBatch(orderOpinionLogDOList);  
1789 return ServerResult.success(); 1752 return ServerResult.success();
1790 } 1753 }
1791 1754
@@ -2043,10 +2006,4 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl&lt;OrderBaseInfoMapper, O @@ -2043,10 +2006,4 @@ public class OrderBaseInfoServiceImpl extends ServiceImpl&lt;OrderBaseInfoMapper, O
2043 } 2006 }
2044 return ServerResult.success(); 2007 return ServerResult.success();
2045 } 2008 }
2046 -  
2047 - @Override  
2048 - public List<OrderBaseInfoDO> getEventList() {  
2049 - List<OrderBaseInfoDO> orderBaseInfoDOList = baseMapper.getEventList();  
2050 - return orderBaseInfoDOList;  
2051 - }  
2052 } 2009 }