.vscode/settings.json
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,3 @@ { "java.configuration.updateBuildConfiguration": "interactive" } billion-main/src/main/java/com/billion/main/api/RestfulAPI.java
@@ -1,16 +1,8 @@ package com.billion.main.api; import cn.hutool.core.collection.CollUtil; import com.billion.main.api.domain.OutPutParameters; import com.billion.main.api.domain.OutPutParametersChild; import com.billion.main.api.domain.ApiResponse; import com.billion.main.api.domain.WorkOrdersInfo; import com.billion.main.api.domain.WorkOrdersInfoChild; import com.billion.main.bs.domain.BsBomChildInfo; import com.billion.main.bs.domain.BsBomInfo; import com.billion.main.bs.service.IBsBomChildInfoService; import com.billion.main.bs.service.IBsBomInfoService; import com.billion.main.om.domain.OmProductionOrderInfo; import com.billion.main.om.service.IOmProductionOrderInfoService; import com.billion.main.api.service.IWorkOrdersInfoService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -20,17 +12,14 @@ import java.util.ArrayList; import java.util.List; @RestController //@Component @RequestMapping("/dmMes") public class RestfulAPI { @Autowired private IOmProductionOrderInfoService OmProductionOrderInfoService; @Autowired private IBsBomInfoService bsBomInfoService; @Autowired private IBsBomChildInfoService bsBomChildInfoService; private IWorkOrdersInfoService iWorkOrdersInfoService; public static final String getQualityData = "IPå°å/CollectQualityData"; /** @@ -39,62 +28,45 @@ * 2ã产线MESå°æ¥æ¶å°çå·¥åä¿¡æ¯åå ¥å°å·¥å表åBOM表 */ @PostMapping("/receiveWorkOrdersInfo") public OutPutParameters receiveWorkOrdersInfo(@RequestBody WorkOrdersInfo workOrdersInfo) { //ä¿ååæ° List<OmProductionOrderInfo> productionOrderInfoList = new ArrayList<>(); List<BsBomInfo> bomInfoList = new ArrayList<>(); List<BsBomChildInfo> bomChildInfoList = new ArrayList<>(); List<WorkOrdersInfoChild> data = workOrdersInfo.getData(); for (WorkOrdersInfoChild workOrdersInfoChild : data) { OmProductionOrderInfo omProductionOrderInfo = new OmProductionOrderInfo(); BsBomInfo bsBomInfo = new BsBomInfo(); BsBomChildInfo bsBomChildInfo = new BsBomChildInfo(); //ä¿åå·¥åä¿¡æ¯ omProductionOrderInfo.setWorkOrderNo(workOrdersInfo.getOrderNumber()); omProductionOrderInfo.setSalesOrderCode(workOrdersInfo.getBatchNumber()); omProductionOrderInfo.setProductCode(workOrdersInfo.getMaterialNumber()); omProductionOrderInfo.setEngineTye(workOrdersInfo.getEngineType()); omProductionOrderInfo.setEngineName(workOrdersInfo.getEngineName()); omProductionOrderInfo.setPlanQty(Long.valueOf(workOrdersInfo.getProduction_Plan())); omProductionOrderInfo.setPlanStartTime(workOrdersInfo.getStartTime()); omProductionOrderInfo.setRemarks(workOrdersInfo.getDescription()); omProductionOrderInfo.setOrderStatus(workOrdersInfo.getState()); omProductionOrderInfo.setFlag(workOrdersInfo.getFLAG()); //ä¿åBOMä¸»è¡¨ä¿¡æ¯ bsBomInfo.setBomCode(workOrdersInfo.getBomName()); bsBomInfo.setBomName(workOrdersInfo.getBomName()); bsBomInfo.setProductCode(workOrdersInfo.getMaterialNumber()); bsBomInfo.setProductName(workOrdersInfo.getMaterialNumber()); //ä¿åBOMåè¡¨ä¿¡æ¯ bsBomChildInfo.setProductCode(workOrdersInfo.getMaterialNumber()); bsBomChildInfo.setProductName(workOrdersInfo.getMaterialNumber()); bsBomChildInfo.setBomCode(workOrdersInfo.getBomName()); bsBomChildInfo.setLocationCode(workOrdersInfoChild.getStationName()); bsBomChildInfo.setLocationName(workOrdersInfoChild.getStationName()); bsBomChildInfo.setMaterialCode(workOrdersInfoChild.getMaterial()); bsBomChildInfo.setCostQty(workOrdersInfoChild.getCount()); bsBomChildInfo.setChecked(workOrdersInfoChild.getChecked()); bsBomChildInfo.setMaterialName(workOrdersInfoChild.getMaterialName()); // } OutPutParameters outputParams = new OutPutParameters(); //å¤æä¿åçä¸ä¸ªlistæ¯å¦ä¸ºç©º if (CollUtil.isNotEmpty(productionOrderInfoList) && CollUtil.isNotEmpty(bomInfoList) && CollUtil.isNotEmpty(bomChildInfoList)) { //æå ¥æ°æ®åº OmProductionOrderInfoService.insertBatch(productionOrderInfoList); bsBomInfoService.insertBatch(bomInfoList); bsBomChildInfoService.insertBatch(bomChildInfoList); //åºå OutPutParametersChild child = new OutPutParametersChild(workOrdersInfo.getMaterialNumber(), "S", "ééå®æ"); outputParams.addData(child); outputParams.toJson(); } else { OutPutParametersChild child = new OutPutParametersChild(workOrdersInfo.getMaterialNumber(), "F", "éé失败"); outputParams.addData(child); outputParams.toJson(); } public ApiResponse receiveWorkOrdersInfo(@RequestBody WorkOrdersInfo workOrdersInfo) { try { // è°ç¨serviceå±ä¿åæ°æ® boolean saveResult = iWorkOrdersInfoService.saveWorkOrders(workOrdersInfo); return outputParams; // æ建ååºæ°æ® ApiResponse response = new ApiResponse(); List<ApiResponse.ResponseData> dataList = new ArrayList<>(); ApiResponse.ResponseData responseData = new ApiResponse.ResponseData(); if (saveResult) { response.setCode("success"); response.setMessage("APIè°ç¨æå"); responseData.setProductionID(workOrdersInfo.getProductionID()); responseData.setResultCode("S"); responseData.setResultText("ééå®æ"); } else { response.setCode("fail"); response.setMessage("APIè°ç¨å¤±è´¥"); responseData.setProductionID(workOrdersInfo.getProductionID()); responseData.setResultCode("F"); responseData.setResultText("éé失败"); } dataList.add(responseData); response.setData(dataList); return response; } catch (Exception e) { // å¼å¸¸å¤ç ApiResponse response = new ApiResponse(); response.setCode("fail"); response.setMessage("APIè°ç¨å¤±è´¥"); List<ApiResponse.ResponseData> dataList = new ArrayList<>(); ApiResponse.ResponseData responseData = new ApiResponse.ResponseData(); responseData.setProductionID(workOrdersInfo.getProductionID()); responseData.setResultCode("F"); responseData.setResultText("éé失败"); dataList.add(responseData); response.setData(dataList); return response; } } billion-main/src/main/java/com/billion/main/api/domain/ApiResponse.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,24 @@ package com.billion.main.api.domain; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import java.util.List; @Data @AllArgsConstructor @NoArgsConstructor public class ApiResponse { private String code; private String message; private List<ResponseData> data; @Data @AllArgsConstructor @NoArgsConstructor public static class ResponseData { private String ProductionID; private String resultCode; private String resultText; } } billion-main/src/main/java/com/billion/main/api/domain/OutPutParameters.java
ÎļþÒÑɾ³ý billion-main/src/main/java/com/billion/main/api/domain/OutPutParametersChild.java
ÎļþÒÑɾ³ý billion-main/src/main/java/com/billion/main/api/domain/Result.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,20 @@ package com.billion.main.api.domain; import lombok.Data; import java.util.List; @Data public class Result<T> { private String code; private String message; private List<T> data; public static <T> Result<T> success(List<T> data) { Result<T> result = new Result<>(); result.setCode("success"); result.setMessage("APIè°ç¨æå"); result.setData(data); return result; } } billion-main/src/main/java/com/billion/main/api/domain/WorkOrdersInfo.java
@@ -8,18 +8,18 @@ public class WorkOrdersInfo { private String ProductionID; private String OrderNumber; private String BatchNumber; private String MaterialNumber; private String EngineType; private String EngineName; private String Production_Plan; private String StartTime; private String Description; private String State; private String FLAG; private String BomName; private String productionID; private String orderNumber; private String batchNumber; private String materialNumber; private String engineType; private String engineName; private String productionPlan; private String startTime; private String description; private String state; private String fLAG; private String bomName; private List<WorkOrdersInfoChild> data; } billion-main/src/main/java/com/billion/main/api/domain/WorkOrdersInfoChild.java
@@ -4,9 +4,10 @@ @Data public class WorkOrdersInfoChild { private String StationName; private String Material; private String Count; private String Checked; private String MaterialName; private String BomName; // æ·»å BomNameå段ç¨äºå ³è private String stationName; private String material; private String count; private String checked; private String materialName; } billion-main/src/main/java/com/billion/main/api/service/IWorkOrdersInfoService.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,7 @@ package com.billion.main.api.service; import com.billion.main.api.domain.WorkOrdersInfo; public interface IWorkOrdersInfoService { boolean saveWorkOrders(WorkOrdersInfo workOrdersInfo); } billion-main/src/main/java/com/billion/main/api/service/impl/WorkOrdersInfoServiceImpl.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,86 @@ package com.billion.main.api.service.impl; import com.billion.main.api.domain.WorkOrdersInfo; import com.billion.main.api.domain.WorkOrdersInfoChild; import com.billion.main.api.service.IWorkOrdersInfoService; import com.billion.main.bs.domain.BsBomChildInfo; import com.billion.main.bs.domain.BsBomInfo; import com.billion.main.bs.service.IBsBomChildInfoService; import com.billion.main.bs.service.IBsBomInfoService; import com.billion.main.om.domain.OmProductionOrderInfo; import com.billion.main.om.service.IOmProductionOrderInfoService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.List; /** * ç©æééServiceä¸å¡å±å¤ç * * @author Billion-Yi * @date 2024-11-22 */ @Service @Component public class WorkOrdersInfoServiceImpl implements IWorkOrdersInfoService { @Autowired private IOmProductionOrderInfoService omProductionOrderInfoService; @Autowired private IBsBomInfoService bsBomInfoService; @Autowired private IBsBomChildInfoService bsBomChildInfoService; @Transactional @Override public boolean saveWorkOrders(WorkOrdersInfo workOrdersInfo) { try { BsBomInfo bsBomInfo = new BsBomInfo(); Long l = 1002L; bsBomInfo.setId(l); bsBomInfo.setBomCode(workOrdersInfo.getBomName()); bsBomInfo.setBomName(workOrdersInfo.getBomName()); bsBomInfo.setProductCode(workOrdersInfo.getMaterialNumber()); bsBomInfo.setProductName(workOrdersInfo.getMaterialNumber()); bsBomInfoService.insertBsBomInfo(bsBomInfo); OmProductionOrderInfo omProductionOrderInfo = new OmProductionOrderInfo(); omProductionOrderInfo.setWorkOrderNo(workOrdersInfo.getOrderNumber()); omProductionOrderInfo.setSalesOrderCode(workOrdersInfo.getBatchNumber()); omProductionOrderInfo.setProductCode(workOrdersInfo.getMaterialNumber()); omProductionOrderInfo.setEngineType(workOrdersInfo.getEngineType()); omProductionOrderInfo.setEngineName(workOrdersInfo.getEngineName()); // omProductionOrderInfo.setPlanQty(Long.valueOf(workOrdersInfo.getProductionPlan())); omProductionOrderInfo.setPlanStartTime(workOrdersInfo.getStartTime()); omProductionOrderInfo.setRemarks(workOrdersInfo.getDescription()); omProductionOrderInfo.setOrderStatus(workOrdersInfo.getState()); omProductionOrderInfo.setFlag(workOrdersInfo.getFLAG()); omProductionOrderInfoService.insertOmProductionOrderInfo(omProductionOrderInfo); List<WorkOrdersInfoChild> childList = workOrdersInfo.getData(); for (WorkOrdersInfoChild child : childList) { BsBomChildInfo bsBomChildInfo = new BsBomChildInfo(); bsBomChildInfo.setProductCode(workOrdersInfo.getMaterialNumber()); bsBomChildInfo.setProductName(workOrdersInfo.getMaterialNumber()); bsBomChildInfo.setBomCode(workOrdersInfo.getBomName()); bsBomChildInfo.setLocationCode(child.getStationName()); bsBomChildInfo.setLocationName(child.getStationName()); bsBomChildInfo.setMaterialCode(child.getMaterial()); bsBomChildInfo.setCostQty(child.getCount()); bsBomChildInfo.setChecked(child.getChecked()); bsBomChildInfo.setMaterialName(child.getMaterialName()); bsBomChildInfoService.save(bsBomChildInfo); } return true; } catch (Exception e) { throw new RuntimeException("ä¿åå·¥åä¿¡æ¯å¤±è´¥", e); } } } billion-main/src/main/java/com/billion/main/bs/domain/BsBomInfo.java
@@ -1,5 +1,6 @@ package com.billion.main.bs.domain; import com.baomidou.mybatisplus.annotation.TableId; import com.billion.common.annotation.Excel; import com.billion.main.common.BaseEntity; import lombok.Data; @@ -15,6 +16,7 @@ { private static final long serialVersionUID = 1L; @TableId /** 主é®id */ private Long id; billion-main/src/main/java/com/billion/main/om/domain/OmProductionOrderInfo.java
@@ -56,7 +56,7 @@ /** åå¨æºåå· */ @Excel(name = "åå¨æºåå·") private String engineTye; private String engineType; /** æºå */ @Excel(name = "æºå") controller/RestfulAPI.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1 @@ entity/ApiResponse.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1 @@ entity/WorkOrdersInfo.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1 @@ entity/WorkOrdersInfoChild.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1 @@ service/WorkOrderService.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1 @@ service/impl/WorkOrderServiceImpl.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1 @@