AmsPurchaseOrderServiceImpl.java 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150
  1. package com.steerinfo.dil.service.impl;
  2. import com.steerinfo.dil.mapper.AmsPurchaseOrderMapper;
  3. import com.steerinfo.dil.mapper.DilBatchMapper;
  4. import com.steerinfo.dil.model.AmsPurchaseOrder;
  5. import com.steerinfo.dil.model.DilBatch;
  6. import com.steerinfo.dil.service.IAmsPurchaseOrderService;
  7. import org.springframework.beans.factory.annotation.Autowired;
  8. import org.springframework.stereotype.Service;
  9. import org.springframework.transaction.annotation.Transactional;
  10. import java.math.BigDecimal;
  11. import java.text.ParseException;
  12. import java.text.SimpleDateFormat;
  13. import java.util.Date;
  14. import java.util.HashMap;
  15. import java.util.List;
  16. import java.util.Map;
  17. /**
  18. * AmsPurchaseOrder服务实现:
  19. *
  20. * @author generator
  21. * @version 1.0-SNAPSHORT 2021-10-23 02:50
  22. * 类描述
  23. * 修订历史:
  24. * 日期:2021-10-23
  25. * 作者:generator
  26. * 参考:
  27. * 描述:AmsPurchaseOrder服务实现
  28. * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
  29. * @see null
  30. */
  31. @Service(value = "amsPurchaseOrderService")
  32. public class AmsPurchaseOrderServiceImpl implements IAmsPurchaseOrderService {
  33. @Autowired
  34. private AmsPurchaseOrderMapper amsPurchaseOrderMapper;
  35. @Autowired
  36. DilBatchMapper dilBatchMapper;
  37. /**
  38. * 采购订单管理
  39. *
  40. * @param mapVal
  41. * @return
  42. */
  43. @Transactional
  44. @Override
  45. public int operationPurchaseOrder(Map<String, Object> mapVal) {
  46. int result = 0;
  47. // 得到金蝶采购主键id
  48. String EASPurchaseId = (String) mapVal.get("EASPurchaseId");
  49. // 得到金蝶分录id
  50. String EASEntryId = (String) mapVal.get("EASEntryId");
  51. // 得到采购订单号
  52. String purchaseOrderNo = (String) mapVal.get("purchaseOrderNo");
  53. // 得到物资唯一编号
  54. String materialCode = (String) mapVal.get("materialCode");
  55. // 得到外轮船名
  56. String resultForeignShipName = (String) mapVal.get("resultForeignShipName");
  57. Map<String, Object> map = new HashMap<>();
  58. map.put("materialCode", materialCode);
  59. BigDecimal materialId = amsPurchaseOrderMapper.getMaterialId(materialCode);
  60. map.put("resultForeignShipName", resultForeignShipName);
  61. // 得到批次
  62. BigDecimal batchId;
  63. // if (amsPurchaseOrderMapper.getBatchId(map) == null) {
  64. DilBatch dilBatch = new DilBatch();
  65. batchId = dilBatchMapper.selectBatchId();
  66. dilBatch.setBatchId(batchId);
  67. dilBatch.setResultForeignShipName(resultForeignShipName);
  68. dilBatch.setMaterialId(materialId);
  69. dilBatch.setInsertTime(new Date());
  70. dilBatch.setUpdateTime(new Date());
  71. dilBatch.setInsertUsername("admin");
  72. dilBatch.setUpdateUsername("admin");
  73. dilBatch.setInsertUpdateRemark("无");
  74. dilBatchMapper.insertSelective(dilBatch);
  75. // }
  76. // else {
  77. // batchId = amsPurchaseOrderMapper.getBatchId(map);
  78. // }
  79. // 得到采购员
  80. String purchaseOrderBuyer = (String) mapVal.get("purchaseOrderBuyer");
  81. // // 得到发货单位
  82. // String sendUnit = (String) mapVal.get("sendUnit");
  83. // 得到采购组织
  84. String purchaseOrganization = (String) mapVal.get("purchaseOrganization");
  85. BigDecimal purchasingOrganizationId = amsPurchaseOrderMapper.getOrganizationId(purchaseOrganization);
  86. // 得到收货单位
  87. String receiveUnit = (String) mapVal.get("receiveUnit");
  88. BigDecimal shipperId = amsPurchaseOrderMapper.getShipperId(receiveUnit);
  89. // 得到订货数量
  90. String purchaseOrderMaterialNumber = (String) mapVal.get("purchaseOrderMaterialNumber");
  91. // 得到订单日期
  92. String purchaseOrderDateStr = (String) mapVal.get("purchaseOrderDate");
  93. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  94. AmsPurchaseOrder amsPurchaseOrder = new AmsPurchaseOrder();
  95. try {
  96. Date purchaseOrderDate = sdf.parse(purchaseOrderDateStr);
  97. amsPurchaseOrder.setPurchaseOrderDate(purchaseOrderDate);
  98. } catch (ParseException e) {
  99. e.printStackTrace();
  100. }
  101. // 得到供应商代码
  102. String supplierDutyParagraph = (String) mapVal.get("supplierDutyParagraph");
  103. BigDecimal supplierId = amsPurchaseOrderMapper.getSupplierId(supplierDutyParagraph);
  104. // 得到数据状态
  105. Integer dataStatus = (Integer) mapVal.get("dataStatus");
  106. amsPurchaseOrder.setPurchaseOrderNo(purchaseOrderNo);
  107. amsPurchaseOrder.setPurchaseOrderBuyer(purchaseOrderBuyer);
  108. amsPurchaseOrder.setPuchaseOrderMaterialNumber(new BigDecimal(purchaseOrderMaterialNumber));
  109. amsPurchaseOrder.setBatchId(batchId);
  110. amsPurchaseOrder.setSupplierUnitId(supplierId);
  111. amsPurchaseOrder.setReceiveUnitId(purchasingOrganizationId);
  112. amsPurchaseOrder.setPurchasingOrganizationId(purchasingOrganizationId);
  113. amsPurchaseOrder.setEasPurchaseOrderId(EASPurchaseId);
  114. amsPurchaseOrder.setInsertTime(new Date());
  115. amsPurchaseOrder.setInsertUsername("admin");
  116. amsPurchaseOrder.setUpdateTime(new Date());
  117. amsPurchaseOrder.setUpdateUsername("admin");
  118. amsPurchaseOrder.setInsertUpdateRemark("无");
  119. amsPurchaseOrder.setEasEntryId(EASEntryId);
  120. Map<String, Object> map1 = new HashMap<>();
  121. BigDecimal deleted = new BigDecimal(0);
  122. map1.put("purchaseOrderNo", purchaseOrderNo);
  123. map1.put("deleted", deleted);
  124. List<AmsPurchaseOrder> amsPurchaseOrders = amsPurchaseOrderMapper.selectByParameters(map1);
  125. // 新增
  126. if (amsPurchaseOrders.size() == 0) {
  127. BigDecimal purchaseId = amsPurchaseOrderMapper.getPurchaseId();
  128. amsPurchaseOrder.setPurchaseOrderId(purchaseId);
  129. amsPurchaseOrder.setDeleted(new BigDecimal(0));
  130. result = amsPurchaseOrderMapper.insertSelective(amsPurchaseOrder);
  131. }
  132. if (amsPurchaseOrders.size() != 0 && dataStatus == 1) {
  133. AmsPurchaseOrder amsPurchaseOrder1 = amsPurchaseOrders.get(0);
  134. amsPurchaseOrder.setPurchaseOrderId(amsPurchaseOrder1.getPurchaseOrderId());
  135. result = amsPurchaseOrderMapper.updateByPrimaryKeySelective(amsPurchaseOrder);
  136. }
  137. if (amsPurchaseOrders.size() != 0 && dataStatus == 2) {
  138. AmsPurchaseOrder amsPurchaseOrder1 = amsPurchaseOrders.get(0);
  139. amsPurchaseOrder.setPurchaseOrderId(amsPurchaseOrder1.getPurchaseOrderId());
  140. amsPurchaseOrder.setDeleted(new BigDecimal(1));
  141. result = amsPurchaseOrderMapper.updateByPrimaryKeySelective(amsPurchaseOrder);
  142. }
  143. return result;
  144. }
  145. }