Commit 7d4c1709e8f3b4813f67ace4134357355a604a1c
1 parent
a134d96e
1. erp和mes接口开发
Showing
6 changed files
with
140 additions
and
45 deletions
jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/api/erp/controller/ErpController.java
... | ... | @@ -57,13 +57,7 @@ public class ErpController extends BaseController { |
57 | 57 | @ApiLogger(apiName = "出库单下发", from="ERP") |
58 | 58 | public Result shipment(@RequestBody ErpShipment erpShipment, HttpServletRequest req) { |
59 | 59 | String warehouseCode = JwtUtil.getWarehouseCodeByToken(req); |
60 | - Result result = handleMultiProcess("shipment", new JeecgController.MultiProcessListener() { | |
61 | - @Override | |
62 | - public Result doProcess() { | |
63 | - return erpService.shipment(erpShipment, warehouseCode); | |
64 | - } | |
65 | - }); | |
66 | - return result; | |
60 | + return erpService.shipment(erpShipment, warehouseCode); | |
67 | 61 | } |
68 | 62 | |
69 | 63 | |
... | ... | @@ -73,21 +67,14 @@ public class ErpController extends BaseController { |
73 | 67 | public Result cancelShipment(@RequestBody Map<String, String> param, HttpServletRequest req) { |
74 | 68 | String referCode = param.get("referCode"); |
75 | 69 | String warehouseCode = JwtUtil.getWarehouseCodeByToken(req); |
76 | - Result result = handleMultiProcess("cancelShipment", new JeecgController.MultiProcessListener() { | |
77 | - @Override | |
78 | - public Result doProcess() { | |
79 | - return erpService.cancelShipment(referCode, warehouseCode); | |
80 | - } | |
81 | - }); | |
82 | - return result; | |
70 | + return erpService.cancelShipment(referCode, warehouseCode); | |
83 | 71 | } |
84 | 72 | |
85 | 73 | @PostMapping("/searchInventory") |
86 | 74 | @ResponseBody |
87 | 75 | @ApiLogger(apiName = "查询库存", from="ERP") |
88 | 76 | public Result searchInventory(@RequestBody InventoryQueryParam inventoryQueryParam, HttpServletRequest req) { |
89 | - String warehouseCode = JwtUtil.getWarehouseCodeByToken(req); | |
90 | - Result result = erpService.searchInventory(inventoryQueryParam); | |
77 | + Result result = erpService.searchInventory(inventoryQueryParam); | |
91 | 78 | return result; |
92 | 79 | } |
93 | 80 | |
... | ... | @@ -96,12 +83,6 @@ public class ErpController extends BaseController { |
96 | 83 | @ApiLogger(apiName = "增加物料", from="ERP") |
97 | 84 | public Result addMaterial(@RequestBody Material material, HttpServletRequest req) { |
98 | 85 | String warehouseCode = JwtUtil.getWarehouseCodeByToken(req); |
99 | - Result result = handleMultiProcess("addMaterial", new JeecgController.MultiProcessListener() { | |
100 | - @Override | |
101 | - public Result doProcess() { | |
102 | - return erpService.addMaterial(material, warehouseCode); | |
103 | - } | |
104 | - }); | |
105 | - return result; | |
86 | + return erpService.addMaterial(material, warehouseCode); | |
106 | 87 | } |
107 | 88 | } |
... | ... |
jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/api/mes/controller/MesController.java
... | ... | @@ -7,6 +7,8 @@ import org.jeecg.modules.wms.api.erp.entity.ErpReceipt; |
7 | 7 | import org.jeecg.modules.wms.api.erp.entity.ErpShipment; |
8 | 8 | import org.jeecg.modules.wms.api.erp.entity.InventoryQueryParam; |
9 | 9 | import org.jeecg.modules.wms.api.erp.service.IErpService; |
10 | +import org.jeecg.modules.wms.api.mes.entity.MesReceiptMaterial; | |
11 | +import org.jeecg.modules.wms.api.mes.servuce.IMesService; | |
10 | 12 | import org.jeecg.modules.wms.framework.aspectj.lang.annotation.ApiLogger; |
11 | 13 | import org.jeecg.modules.wms.framework.controller.BaseController; |
12 | 14 | import org.springframework.web.bind.annotation.*; |
... | ... | @@ -24,10 +26,12 @@ public class MesController extends BaseController { |
24 | 26 | |
25 | 27 | @Resource |
26 | 28 | private IErpService erpService; |
29 | + @Resource | |
30 | + private IMesService mesService; | |
27 | 31 | |
28 | 32 | @PostMapping("/receipt") |
29 | 33 | @ResponseBody |
30 | - @ApiLogger(apiName = "入库单下发", from="ERP") | |
34 | + @ApiLogger(apiName = "入库单下发", from="MES") | |
31 | 35 | public Result receipt(@RequestBody ErpReceipt erpReceipt, HttpServletRequest req) { |
32 | 36 | String warehouseCode = JwtUtil.getWarehouseCodeByToken(req); |
33 | 37 | return erpService.receipt(erpReceipt, warehouseCode); |
... | ... | @@ -35,7 +39,7 @@ public class MesController extends BaseController { |
35 | 39 | |
36 | 40 | @PostMapping("/cancelReceipt") |
37 | 41 | @ResponseBody |
38 | - @ApiLogger(apiName = "取消入库单", from="ERP") | |
42 | + @ApiLogger(apiName = "取消入库单", from="MES") | |
39 | 43 | public Result cancelReceipt(@RequestBody Map<String, String> param, HttpServletRequest req) { |
40 | 44 | String referCode = param.get("referCode"); |
41 | 45 | String warehouseCode = JwtUtil.getWarehouseCodeByToken(req); |
... | ... | @@ -45,41 +49,45 @@ public class MesController extends BaseController { |
45 | 49 | |
46 | 50 | @PostMapping("/shipment") |
47 | 51 | @ResponseBody |
48 | - @ApiLogger(apiName = "出库单下发", from="ERP") | |
52 | + @ApiLogger(apiName = "出库单下发", from="MES") | |
49 | 53 | public Result shipment(@RequestBody ErpShipment erpShipment, HttpServletRequest req) { |
50 | 54 | String warehouseCode = JwtUtil.getWarehouseCodeByToken(req); |
51 | - Result result = handleMultiProcess("shipment", new JeecgController.MultiProcessListener() { | |
52 | - @Override | |
53 | - public Result doProcess() { | |
54 | - return erpService.shipment(erpShipment, warehouseCode); | |
55 | - } | |
56 | - }); | |
57 | - return result; | |
55 | + return erpService.shipment(erpShipment, warehouseCode); | |
58 | 56 | } |
59 | 57 | |
60 | 58 | |
61 | 59 | @PostMapping("/cancelShipment") |
62 | 60 | @ResponseBody |
63 | - @ApiLogger(apiName = "取消出库单", from="ERP") | |
61 | + @ApiLogger(apiName = "取消出库单", from="MES") | |
64 | 62 | public Result cancelShipment(@RequestBody Map<String, String> param, HttpServletRequest req) { |
65 | 63 | String referCode = param.get("referCode"); |
66 | 64 | String warehouseCode = JwtUtil.getWarehouseCodeByToken(req); |
67 | - Result result = handleMultiProcess("cancelShipment", new JeecgController.MultiProcessListener() { | |
68 | - @Override | |
69 | - public Result doProcess() { | |
70 | - return erpService.cancelShipment(referCode, warehouseCode); | |
71 | - } | |
72 | - }); | |
73 | - return result; | |
65 | + return erpService.cancelShipment(referCode, warehouseCode); | |
74 | 66 | } |
75 | 67 | |
76 | 68 | @PostMapping("/searchInventory") |
77 | 69 | @ResponseBody |
78 | - @ApiLogger(apiName = "查询库存", from="ERP") | |
70 | + @ApiLogger(apiName = "查询库存", from="MES") | |
79 | 71 | public Result searchInventory(@RequestBody InventoryQueryParam inventoryQueryParam, HttpServletRequest req) { |
80 | - Result result = erpService.searchInventory(inventoryQueryParam); | |
72 | + Result result = erpService.searchInventory(inventoryQueryParam); | |
81 | 73 | return result; |
82 | 74 | } |
83 | 75 | |
76 | + @PostMapping("/receiptMaterial") | |
77 | + @ResponseBody | |
78 | + @ApiLogger(apiName = "物料入库", from="MES") | |
79 | + public Result receiptMaterial(@RequestBody MesReceiptMaterial mesReceiptMaterial, HttpServletRequest req) { | |
80 | + String warehouseCode = JwtUtil.getWarehouseCodeByToken(req); | |
81 | + Result result = mesService.receiptMaterial(mesReceiptMaterial, warehouseCode); | |
82 | + return result; | |
83 | + } | |
84 | 84 | |
85 | + @PostMapping("/shipmentMaterial") | |
86 | + @ResponseBody | |
87 | + @ApiLogger(apiName = "物料出库", from="MES") | |
88 | + public Result shipmentMaterial(@RequestBody MesReceiptMaterial mesReceiptMaterial, HttpServletRequest req) { | |
89 | + String warehouseCode = JwtUtil.getWarehouseCodeByToken(req); | |
90 | + Result result = mesService.shipmentMaterial(mesReceiptMaterial, warehouseCode); | |
91 | + return result; | |
92 | + } | |
85 | 93 | } |
... | ... |
jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/api/mes/entity/MesMaterial.java renamed to jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/api/mes/entity/MaterialInfo.java
jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/api/mes/entity/MesReceiptMaterial.java
0 → 100644
1 | +package org.jeecg.modules.wms.api.mes.entity; | |
2 | + | |
3 | +import lombok.Data; | |
4 | + | |
5 | +import java.math.BigDecimal; | |
6 | +import java.util.List; | |
7 | + | |
8 | +@Data | |
9 | +public class MesReceiptMaterial { | |
10 | + | |
11 | + private String referCode; | |
12 | + private String containerCode; | |
13 | + private List<MaterialInfo> materialInfoList; | |
14 | + | |
15 | +} | |
... | ... |
jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/api/mes/servuce/IMesService.java
0 → 100644
1 | +package org.jeecg.modules.wms.api.mes.servuce; | |
2 | + | |
3 | +import org.jeecg.common.api.vo.Result; | |
4 | +import org.jeecg.modules.wms.api.mes.entity.MesReceiptMaterial; | |
5 | + | |
6 | +/** | |
7 | + * @author 游杰 | |
8 | + */ | |
9 | +public interface IMesService { | |
10 | + | |
11 | + public Result receiptMaterial(MesReceiptMaterial mesReceiptMaterial, String warehouseCode); | |
12 | + | |
13 | + public Result shipmentMaterial(MesReceiptMaterial mesMaterial, String warehouseCode); | |
14 | +} | |
... | ... |
jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/api/mes/servuce/impl/MesServiceImpl.java
0 → 100644
1 | +package org.jeecg.modules.wms.api.mes.servuce.impl; | |
2 | + | |
3 | +import org.jeecg.common.api.vo.Result; | |
4 | +import org.jeecg.modules.wms.api.mes.entity.MaterialInfo; | |
5 | +import org.jeecg.modules.wms.api.mes.entity.MesReceiptMaterial; | |
6 | +import org.jeecg.modules.wms.api.mes.servuce.IMesService; | |
7 | +import org.jeecg.modules.wms.receipt.receiptHeader.entity.ReceiptDetail; | |
8 | +import org.jeecg.modules.wms.receipt.receiptHeader.entity.ReceiptHeader; | |
9 | +import org.jeecg.modules.wms.receipt.receiptHeader.service.IReceiptDetailService; | |
10 | +import org.jeecg.modules.wms.receipt.receiptHeader.service.IReceiptHeaderService; | |
11 | +import org.jeecg.modules.wms.receipt.receiving.domain.Receive; | |
12 | +import org.jeecg.modules.wms.receipt.receiving.service.IReceiveService; | |
13 | +import org.springframework.stereotype.Service; | |
14 | + | |
15 | +import javax.annotation.Resource; | |
16 | +import java.math.BigDecimal; | |
17 | +import java.util.ArrayList; | |
18 | +import java.util.List; | |
19 | + | |
20 | +/** | |
21 | + * @author 游杰 | |
22 | + */ | |
23 | +@Service | |
24 | +public class MesServiceImpl implements IMesService { | |
25 | + | |
26 | + @Resource | |
27 | + private IReceiptHeaderService receiptHeaderService; | |
28 | + @Resource | |
29 | + private IReceiptDetailService receiptDetailService; | |
30 | + @Resource | |
31 | + private IReceiveService receiveService; | |
32 | + | |
33 | + /** | |
34 | + * 要求入库单详情 必须是不重样的 | |
35 | + * @return | |
36 | + */ | |
37 | + @Override | |
38 | + public Result receiptMaterial(MesReceiptMaterial mesReceiptMaterial, String warehouseCode) { | |
39 | + List<Receive> receiveList = new ArrayList<>(); | |
40 | + String referCode = mesReceiptMaterial.getReferCode(); | |
41 | + String containerCode = mesReceiptMaterial.getContainerCode(); | |
42 | + List<MaterialInfo> materialInfoList = mesReceiptMaterial.getMaterialInfoList(); | |
43 | + ReceiptHeader receiptHeader = receiptHeaderService.getReceiptHeaderByReferCode(referCode, warehouseCode); | |
44 | + List<ReceiptDetail> receiptDetailList = receiptDetailService.selectByMainId(String.valueOf(receiptHeader.getId())); | |
45 | + for (ReceiptDetail receiptDetail : receiptDetailList) { | |
46 | + String materialCode = receiptDetail.getMaterialCode(); | |
47 | + boolean hav = false; | |
48 | + for (MaterialInfo materialInfo : materialInfoList) { | |
49 | + if(materialInfo.getMaterialCode().equals(materialCode)) { | |
50 | + hav = true; | |
51 | + } | |
52 | + } | |
53 | + if(hav) { | |
54 | + Receive receive = new Receive(); | |
55 | + receive.setId(receiptDetail.getId()); | |
56 | + receive.setContainerCode(containerCode); | |
57 | + receive.setMaterialCode(materialCode); | |
58 | + receive.setMaterialName(receiptDetail.getMaterialName()); | |
59 | + receive.setMateiralSpec(receiptDetail.getMaterialSpec()); | |
60 | + receive.setMaterialUnit(receiptDetail.getMaterialUnit()); | |
61 | + receive.setInventoryStatus(receiptDetail.getInventoryStatus()); | |
62 | + receive.setQty(receiptDetail.getQty()); | |
63 | + receive.setTaskQty(BigDecimal.ZERO); | |
64 | + receiveList.add(receive); | |
65 | + } | |
66 | + } | |
67 | + return receiveService.receiving(receiveList, warehouseCode); | |
68 | + } | |
69 | + | |
70 | + @Override | |
71 | + public Result shipmentMaterial(MesReceiptMaterial mesMaterial, String warehouseCode) { | |
72 | + | |
73 | + return null; | |
74 | + } | |
75 | +} | |
... | ... |