chenc 3 years ago
parent
commit
3a877533e7

+ 24 - 15
src/main/java/org/jeecg/modules/appInterface/controller/FbsWorkingStatisticsController.java

@@ -62,6 +62,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 import org.springframework.web.multipart.MultipartHttpServletRequest;
@@ -415,6 +416,7 @@ public class FbsWorkingStatisticsController {
 	  */
 	 @RequestMapping(value = "/finishDoing")
 	 @ResponseBody
+	 @Transactional(rollbackFor = Exception.class)
 	 public ResponseEntity<ResHttpStatus> finishDoing(FbsWorkingStatistics entity){
 		 ResHttpStatus res = new ResHttpStatus();
 
@@ -485,7 +487,7 @@ public class FbsWorkingStatisticsController {
 				return new ResponseEntity<ResHttpStatus>(res, HttpStatus.OK);
 			}
 
-			if( par.getFinalTime() == null){
+//			if( par.getFinalTime() == null){
 				Date firstTime = par.getFirstTime();
 				long diff = new Date().getTime() - firstTime.getTime();
 				// 计算差多少分钟
@@ -497,7 +499,7 @@ public class FbsWorkingStatisticsController {
 				entity.setWorkingHours(aa);
 				entity.setFinalTime(new Date());//获取当前时间
 
-			}
+//			}
 
 		 }else{
 			 res.setCode("1");
@@ -561,16 +563,16 @@ public class FbsWorkingStatisticsController {
 			 cBatchList.add(cBatch);
 		 }
 		 //到入库单进行查询批号是否存在
-		 List<Map<String,String>> mapList=iFbsMomOrderService.getIsOnlyByCbatch(cBatchList);
-		 if(mapList!=null&&mapList.size()>0){
-		 	String msg="";
-		 	for (Map<String,String> map:mapList){
-				msg+=map.get("cBatch")+"、";
-			}
-			 res.setCode("1");
-			 res.setMsg("批号"+msg+"已经入库不能重复入库!");
-			 return new ResponseEntity<ResHttpStatus>(res, HttpStatus.OK);
-		 }
+//		 List<Map<String,String>> mapList=iFbsMomOrderService.getIsOnlyByCbatch(cBatchList);
+//		 if(mapList!=null&&mapList.size()>0){
+//		 	String msg="";
+//		 	for (Map<String,String> map:mapList){
+//				msg+=map.get("cBatch")+"、";
+//			}
+//			 res.setCode("1");
+//			 res.setMsg("批号"+msg+"已经入库不能重复入库!");
+//			 return new ResponseEntity<ResHttpStatus>(res, HttpStatus.OK);
+//		 }
 
 		 entity.setStartDate(workshopDispatchList.getPlannedStartTime());//计划时间
 		 entity.setEndDate(workshopDispatchList.getPlannedStartTime());//计划时间
@@ -602,7 +604,7 @@ public class FbsWorkingStatisticsController {
 //		 }
 
 		//单个个标准工时没完善的回写标准工时
-		 updateStandardWorkingHoursZ(workshopDispatchList,allHors,allNum);
+//		 updateStandardWorkingHoursZ(workshopDispatchList,allHors,allNum);
 
 //         if(entity.getState().equals("1")){
 //			 //把数据传入u8数据库
@@ -654,6 +656,8 @@ public class FbsWorkingStatisticsController {
 				 fbsWorkingStatistics.setFinalState("1");
 				 fbsWorkingStatistics.setWorkingHours(new BigDecimal("0.0"));
 				 fbsWorkingStatistics.setQualifiedNumber("0");
+				 fbsWorkingStatistics.setFinalTime(null);
+				 fbsWorkingStatistics.setBatchCode(entity.getBatchCode());
 				 fbsWorkingStatisticsService.updateById(fbsWorkingStatistics);
 				 fbsWorkshopDispatchListService.updateState("1",entity.getPkWorkshopDispatchList());
 				 res.setCode("1");
@@ -765,7 +769,11 @@ public class FbsWorkingStatisticsController {
                  Map<String,Object> itemMap=new LinkedHashMap<>();
                  itemMap.put("AUFNR",workshopDispatchList.getProductionOrderNumberName());//订单号
                  itemMap.put("LMNGA",workTotalNumber.intValue());//报工数量
-                 itemMap.put("ism01",workTotalHours.doubleValue());//正常工时
+				 if(workTotalHours.doubleValue()>0.0){
+					 itemMap.put("ism01",workTotalHours.doubleValue());//正常工时
+				 }else{
+					 itemMap.put("ism01","0.0");//正常工时
+				 }
                  itemMap.put("ile01","H");//实际工时单位
                  itemMap.put("ism02","0.0");//异常工时
 //                 itemMap.put("ILE02","H");//实际工时单位
@@ -773,11 +781,12 @@ public class FbsWorkingStatisticsController {
                  itemMap.put("BUDAT",sdf.format(entity.getFinalTime()));//报工时间
                  Map<String,Object> COMMON_INFO_REQ=new HashMap<>();
                  COMMON_INFO_REQ.put("API_NO","KANB00002");
-                 COMMON_INFO_REQ.put("GUID","1234567890");
+                 COMMON_INFO_REQ.put("GUID",UUID.randomUUID().toString());
                  COMMON_INFO_REQ.put("USERID","USERNAME");
                  itemMap.put("COMMON_INFO_REQ",COMMON_INFO_REQ);
                  JSONObject jsonObject=new JSONObject(itemMap);
                  System.out.println(jsonObject);
+                 entity.setBatchCode(entity.getBatchCode()+jsonObject.toString());
                  jsonObjectResults= InterfaceConnUtils.doPost(jsonObject,"");
              }
 		 } catch (Exception e) {

+ 45 - 0
src/main/java/org/jeecg/modules/fbsInventory/mapper/FbsInventoryMapper.java

@@ -333,4 +333,49 @@ public interface FbsInventoryMapper extends BaseMapper<FbsInventory> {
     * @return void
     */
     void deleteSAPRdrecords32(@Param(value = "list") List<Map<String,Object>> list);
+
+    /**
+    * @Author chenchuang
+    * @Description //TODO 新增从SAP获取到的销售出库单主表
+    * @Date 2022/3/15 14:59
+    * @Param [list]
+    * @return void
+    */
+    void addSAPDispatchList(@Param(value = "list") List<Map<String,Object>> list);
+
+    /**
+    * @Author chenchuang
+    * @Description //TODO 根据从SAP获取到的发退货单ID删除存在的主表数据
+    * @Date 2022/3/15 15:01
+    * @Param [list]
+    * @return void
+    */
+    void deleteSAPDispatchList(@Param(value = "list") List<Map<String,Object>> list);
+
+    /**
+    * @Author chenchuang
+    * @Description //TODO 新增从SAP获取到的发退货单子表
+    * @Date 2022/3/15 15:02
+    * @Param [list]
+    * @return void
+    */
+    void addSAPDispatchLists(@Param(value = "list") List<Map<String,Object>> list);
+
+    /**
+    * @Author chenchuang
+    * @Description //TODO 根据从SAP获取到的发退货主id删除发退货单子表
+    * @Date 2022/3/15 15:03
+    * @Param [list]
+    * @return void
+    */
+    void deleteSAPDispatchLists(@Param(value = "list") List<Map<String,Object>> list);
+
+    /**
+    * @Author chenchuang
+    * @Description //TODO 新增存货
+    * @Date 2022/3/15 13:54
+    * @Param [inventory]
+    * @return void
+    */
+    void addInventory(@Param(value = "inventory") Map<String,Object> inventory);
 }

+ 58 - 0
src/main/java/org/jeecg/modules/fbsInventory/mapper/xml/FbsInventoryMapper.xml

@@ -439,4 +439,62 @@
             #{item.ID}
         </foreach>
     </delete>
+
+    <!-- 获取SAP数据新增发退货单主表 -->
+    <insert id="addSAPDispatchList" parameterType="java.util.List">
+        <foreach collection="list" item="item" index="index" separator=";">
+            insert into dispatchlist (idd,DLID,dDate,cVerifier,create_time,pull_date) values
+            (
+            #{item.idd},
+            #{item.DLID},
+            #{item.dDate},
+            #{item.cVerifier},
+            #{item.create_time},
+            #{item.pull_date}
+            )
+        </foreach>
+    </insert>
+
+    <!-- 获取SAP数据删除发退货单主表 -->
+    <delete id="deleteSAPDispatchList" parameterType="java.util.List">
+        delete from dispatchlist where DLID in
+        <foreach collection="list" item="item" separator="," open="(" close=")">
+            #{item.DLID}
+        </foreach>
+    </delete>
+
+    <!-- 获取SAP数据新增发退货单子表 -->
+    <insert id="addSAPDispatchLists" parameterType="java.util.List">
+        <foreach collection="list" item="item" index="index" separator=";">
+            insert into dispatchlists (idd,DLID,cWhCode,iQuantity,cItemCode,cItemName,fOutQuantity,cWhName,cInvCode,create_time,pull_date) values
+            (
+            #{item.idd},
+            #{item.DLID},
+            #{item.cWhCode},
+            #{item.iQuantity},
+            #{item.cItemCode},
+            #{item.cItemName},
+            #{item.fOutQuantity},
+            #{item.cWhName},
+            #{item.cInvCode},
+            #{item.create_time},
+            #{item.pull_date}
+            )
+        </foreach>
+    </insert>
+
+    <!-- 获取SAP数据删除销售出库单子表 -->
+    <delete id="deleteSAPDispatchLists" parameterType="java.util.List">
+        delete from dispatchlists where DLID in
+        <foreach collection="list" item="item" separator="," open="(" close=")">
+            #{item.DLID}
+        </foreach>
+    </delete>
+
+    <!--新增存货-->
+    <insert id="addInventory" parameterType="java.util.Map">
+        INSERT INTO inventory ( id, cInvCode,cInvName,cInvDefine13,iSafeNum,cInvCCode,cInvCName )
+                       VALUES
+                       ( #{inventory.id}, #{inventory.cInvCode},#{inventory.cInvName},#{inventory.cInvDefine13},#{inventory.iSafeNum},#{inventory.cInvCCode},#{inventory.cInvCName} )
+    </insert>
 </mapper>

+ 49 - 12
src/main/java/org/jeecg/modules/fbsInventory/service/impl/FbsInventoryServiceImpl.java

@@ -100,7 +100,7 @@ public class FbsInventoryServiceImpl extends ServiceImpl<FbsInventoryMapper, Fbs
     public void addSAPInventory(Long start,Long end) {
 
         //传入参数
-        String jsonSting="{\"TIMELIMIT\":{\"ST\":\""+start+"\",\"ET\":\""+end+"\"},\"COMMON_INFO_REQ\":{\"API_NO\":\"KANB00007\",\"GUID\":\"1234567890\",\"USERID\":\"USERNAME\"}}";
+        String jsonSting="{\"TIMELIMIT\":{\"ST\":\""+start+"\",\"ET\":\""+end+"\"},\"COMMON_INFO_REQ\":{\"API_NO\":\"KANB00007\",\"GUID\":\""+UUID.randomUUID().toString()+"\",\"USERID\":\"USERNAME\"}}";
         JSONObject jsonObjectP=JSONObject.parseObject(JSONObject.parse(jsonSting).toString());
         //获取接收数据
         JSONObject jsonObjectResults= InterfaceConnUtils.doPost(jsonObjectP,"");
@@ -146,7 +146,7 @@ public class FbsInventoryServiceImpl extends ServiceImpl<FbsInventoryMapper, Fbs
     @DS("master")
     public void addSAPCurrentStock(Long start,Long end) {
         //传入参数
-        String jsonSting="{\"COMMON_INFO_REQ\":{\"API_NO\":\"KANB00005\",\"GUID\":\"1234567890\",\"USERID\":\"USERNAME\"}}";
+        String jsonSting="{\"COMMON_INFO_REQ\":{\"API_NO\":\"KANB00005\",\"GUID\":\""+UUID.randomUUID().toString()+"\",\"USERID\":\"USERNAME\"}}";
         JSONObject jsonObjectP=JSONObject.parseObject(JSONObject.parse(jsonSting).toString());
         //获取接收数据
         JSONObject jsonObjectResults= InterfaceConnUtils.doPost(jsonObjectP,"");
@@ -187,7 +187,7 @@ public class FbsInventoryServiceImpl extends ServiceImpl<FbsInventoryMapper, Fbs
     @DS("master")
     public void addSAPRdrecord10MainAndItems(Long start,Long end) {
         //传入参数
-        String jsonSting="{\"TIMELIMIT\":{\"ST\":\""+start+"\",\"ET\":\""+end+"\"},\"COMMON_INFO_REQ\":{\"API_NO\":\"KANB00006\",\"GUID\":\"1234567890\",\"USERID\":\"USERNAME\"}}";
+        String jsonSting="{\"TIMELIMIT\":{\"ST\":\""+start+"\",\"ET\":\""+end+"\"},\"COMMON_INFO_REQ\":{\"API_NO\":\"KANB00006\",\"GUID\":\""+UUID.randomUUID().toString()+"\",\"USERID\":\"USERNAME\"}}";
         JSONObject jsonObjectP=JSONObject.parseObject(JSONObject.parse(jsonSting).toString());
         //获取接收数据
         JSONObject jsonObjectResults= InterfaceConnUtils.doPost(jsonObjectP,"");
@@ -259,7 +259,7 @@ public class FbsInventoryServiceImpl extends ServiceImpl<FbsInventoryMapper, Fbs
     @DS("master")
     public void addSAPVendor(Long start,Long end) {
         //传入参数
-        String jsonSting="{\"TIMELIMIT\":{\"ST\":\""+start+"\",\"ET\":\""+end+"\"},\"COMMON_INFO_REQ\":{\"API_NO\":\"KANB00008\",\"GUID\":\"1234567890\",\"USERID\":\"USERNAME\"}}";
+        String jsonSting="{\"TIMELIMIT\":{\"ST\":\""+start+"\",\"ET\":\""+end+"\"},\"COMMON_INFO_REQ\":{\"API_NO\":\"KANB00008\",\"GUID\":\""+UUID.randomUUID().toString()+"\",\"USERID\":\"USERNAME\"}}";
         JSONObject jsonObjectP=JSONObject.parseObject(JSONObject.parse(jsonSting).toString());
         //获取接收数据
         JSONObject jsonObjectResults= InterfaceConnUtils.doPost(jsonObjectP,"");
@@ -295,7 +295,7 @@ public class FbsInventoryServiceImpl extends ServiceImpl<FbsInventoryMapper, Fbs
     @DS("master")
     public void addSAPPO_PoMainAndItems(Long start,Long end) {
         //传入参数
-        String jsonSting="{\"TIMELIMIT\":{\"ST\":\""+start+"\",\"ET\":\""+end+"\"},\"COMMON_INFO_REQ\":{\"API_NO\":\"KANB00009\",\"GUID\":\"1234567890\",\"USERID\":\"USERNAME\"}}";
+        String jsonSting="{\"TIMELIMIT\":{\"ST\":\""+start+"\",\"ET\":\""+end+"\"},\"COMMON_INFO_REQ\":{\"API_NO\":\"KANB00009\",\"GUID\":\""+UUID.randomUUID().toString()+"\",\"USERID\":\"USERNAME\"}}";
         JSONObject jsonObjectP=JSONObject.parseObject(JSONObject.parse(jsonSting).toString());
         //获取接收数据
         JSONObject jsonObjectResults= InterfaceConnUtils.doPost(jsonObjectP,"");
@@ -380,7 +380,7 @@ public class FbsInventoryServiceImpl extends ServiceImpl<FbsInventoryMapper, Fbs
     @DS("master")
     public void addSAPPuArrivalvouch(Long start,Long end) {
         //传入参数
-        String jsonSting="{\"TIMELIMIT\":{\"ST\":\""+start+"\",\"ET\":\""+end+"\"},\"COMMON_INFO_REQ\":{\"API_NO\":\"KANB00011\",\"GUID\":\"1234567890\",\"USERID\":\"USERNAME\"}}";
+        String jsonSting="{\"TIMELIMIT\":{\"ST\":\""+start+"\",\"ET\":\""+end+"\"},\"COMMON_INFO_REQ\":{\"API_NO\":\"KANB00011\",\"GUID\":\""+UUID.randomUUID().toString()+"\",\"USERID\":\"USERNAME\"}}";
         JSONObject jsonObjectP=JSONObject.parseObject(JSONObject.parse(jsonSting).toString());
         //获取接收数据
         JSONObject jsonObjectResults= InterfaceConnUtils.doPost(jsonObjectP,"");
@@ -460,7 +460,7 @@ public class FbsInventoryServiceImpl extends ServiceImpl<FbsInventoryMapper, Fbs
     @DS("master")
     public void addSAPMaterialappvouchMainAndItem(Long start,Long end) {
         //传入参数
-        String jsonSting="{\"TIMELIMIT\":{\"ST\":\""+start+"\",\"ET\":\""+end+"\"},\"COMMON_INFO_REQ\":{\"API_NO\":\"KANB00012\",\"GUID\":\"1234567890\",\"USERID\":\"USERNAME\"}}";
+        String jsonSting="{\"TIMELIMIT\":{\"ST\":\""+start+"\",\"ET\":\""+end+"\"},\"COMMON_INFO_REQ\":{\"API_NO\":\"KANB00012\",\"GUID\":\""+UUID.randomUUID().toString()+"\",\"USERID\":\"USERNAME\"}}";
         JSONObject jsonObjectP=JSONObject.parseObject(JSONObject.parse(jsonSting).toString());
         //获取接收数据
         JSONObject jsonObjectResults= InterfaceConnUtils.doPost(jsonObjectP,"");
@@ -470,6 +470,8 @@ public class FbsInventoryServiceImpl extends ServiceImpl<FbsInventoryMapper, Fbs
             JSONArray jsonArray=jsonObjectResults.getJSONArray("OUTPUT");
             List<Map<String,Object>> addMainList=new ArrayList<>();//储存所有的领料申请主表数据
             List<Map<String,Object>> addItemList=new ArrayList<>();//存储所有的领料申请子表数据
+//            List<Map<String,Object>> dispatchList=new ArrayList<>();//储存所有的领料申请主表数据
+//            List<Map<String,Object>> dispatchItemList=new ArrayList<>();//存储所有的领料申请子表数据
             SimpleDateFormat sdf =   new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss" );
             //循环获取
             for(int a=0;a<jsonArray.size();a++) {
@@ -553,7 +555,7 @@ public class FbsInventoryServiceImpl extends ServiceImpl<FbsInventoryMapper, Fbs
     @DS("master")
     public void addSAPQMCHECKVOUCHER(Long start,Long end) {
         //传入参数
-        String jsonSting="{\"TIMELIMIT\":{\"ST\":\""+start+"\",\"ET\":\""+end+"\"},\"COMMON_INFO_REQ\":{\"API_NO\":\"KANB00004\",\"GUID\":\"1234567890\",\"USERID\":\"USERNAME\"}}";
+        String jsonSting="{\"TIMELIMIT\":{\"ST\":\""+start+"\",\"ET\":\""+end+"\"},\"COMMON_INFO_REQ\":{\"API_NO\":\"KANB00004\",\"GUID\":\""+UUID.randomUUID().toString()+"\",\"USERID\":\"USERNAME\"}}";
         JSONObject jsonObjectP=JSONObject.parseObject(JSONObject.parse(jsonSting).toString());
         //获取接收数据
         JSONObject jsonObjectResults= InterfaceConnUtils.doPost(jsonObjectP,"");
@@ -605,7 +607,7 @@ public class FbsInventoryServiceImpl extends ServiceImpl<FbsInventoryMapper, Fbs
     @DS("master")
     public void addSAPRdrecord32MainAndItem(Long start,Long end) {
         //传入参数
-        String jsonSting="{\"TIMELIMIT\":{\"ST\":\""+start+"\",\"ET\":\""+end+"\"},\"COMMON_INFO_REQ\":{\"API_NO\":\"KANB00010\",\"GUID\":\"1234567890\",\"USERID\":\"USERNAME\"}}";
+        String jsonSting="{\"TIMELIMIT\":{\"ST\":\""+start+"\",\"ET\":\""+end+"\"},\"COMMON_INFO_REQ\":{\"API_NO\":\"KANB00010\",\"GUID\":\""+UUID.randomUUID().toString()+"\",\"USERID\":\"USERNAME\"}}";
         JSONObject jsonObjectP=JSONObject.parseObject(JSONObject.parse(jsonSting).toString());
         //获取接收数据
         JSONObject jsonObjectResults= InterfaceConnUtils.doPost(jsonObjectP,"");
@@ -615,6 +617,8 @@ public class FbsInventoryServiceImpl extends ServiceImpl<FbsInventoryMapper, Fbs
             JSONArray jsonArray=jsonObjectResults.getJSONArray("OUTPUT");
             List<Map<String,Object>> addMainList=new ArrayList<>();//储存所有的销售出库主表数据
             List<Map<String,Object>> addItemList=new ArrayList<>();//存储所有的销售出库子表数据
+            List<Map<String,Object>> addDispatchList=new ArrayList<>();//储存所有的发退货主表数据
+            List<Map<String,Object>> addDispatchListItemList=new ArrayList<>();//存储所有的发退货子表数据
             SimpleDateFormat sdf =   new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss" );
             //循环获取
             for(int a=0;a<jsonArray.size();a++) {
@@ -657,10 +661,21 @@ public class FbsInventoryServiceImpl extends ServiceImpl<FbsInventoryMapper, Fbs
                 }else {
                     mapMain.put("postingDate",null);//过账日期
                 }
-                mapMain.put("deliveryStatus",String.valueOf(jsonObjectMain.get("DELIVERYSTATUS")));//交货状态
+                String DELIVERYSTATUS=String.valueOf(jsonObjectMain.get("DELIVERYSTATUS"));//交货状态
+                mapMain.put("deliveryStatus",DELIVERYSTATUS);//交货状态
                 mapMain.put("create_time",sdf.format(new Date()));//创建时间
                 mapMain.put("pull_date",end+"");//拉取时间
-                addMainList.add(mapMain);
+
+
+                if(DELIVERYSTATUS!=null&&DELIVERYSTATUS.equals("A")){
+                    mapMain.put("idd",UUID.randomUUID().toString());//主键
+                    mapMain.put("DLID",String.valueOf(jsonObjectMain.get("ID")));//主表标识
+                    mapMain.put("cVerifier","审核人");//主表标识
+                    addDispatchList.add(mapMain);
+                }else{
+                    addMainList.add(mapMain);
+                }
+
                 //子表
                 JSONArray jsonArrayItems=jsonObjectMain.getJSONArray("ITEMS");
                 for(int b=0;b<jsonArrayItems.size();b++){
@@ -677,7 +692,15 @@ public class FbsInventoryServiceImpl extends ServiceImpl<FbsInventoryMapper, Fbs
                     mapItem.put("cWhName",String.valueOf(jsonObjectItem.get("CWHNAME")));//仓库名称
                     mapItem.put("create_time",sdf.format(new Date()));//创建时间
                     mapItem.put("pull_date",end+"");//拉取时间
-                    addItemList.add(mapItem);
+                    if(DELIVERYSTATUS!=null&&DELIVERYSTATUS.equals("A")){
+                        mapItem.put("DLID",String.valueOf(jsonObjectItem.get("ID")));//发货退货主表标识
+                        mapItem.put("cItemName",String.valueOf(jsonObjectItem.get("CITEMNAME")));//项目名称
+                        mapItem.put("fOutQuantity",0.0);//累计出库数量
+                        addDispatchListItemList.add(mapItem);
+                    }else{
+                        addItemList.add(mapItem);
+                    }
+
                 }
             }
             //判断获取到数据则进行新增
@@ -694,6 +717,20 @@ public class FbsInventoryServiceImpl extends ServiceImpl<FbsInventoryMapper, Fbs
                 fbsInventoryMapper.addSAPRdrecords32(addItemList);
             }
 
+            //判断获取到数据则进行新增
+            //保存主表
+            if(addDispatchList.size()>0){
+                //先删除
+                this.baseMapper.deleteSAPDispatchList(addDispatchList);
+                this.baseMapper.deleteSAPDispatchLists(addDispatchList);
+                //再删除
+                fbsInventoryMapper.addSAPDispatchList(addDispatchList);
+            }
+            //保存子表
+            if(addDispatchListItemList.size()>0){
+                fbsInventoryMapper.addSAPDispatchLists(addDispatchListItemList);
+            }
+
         }
     }
 

+ 20 - 2
src/main/java/org/jeecg/modules/fbsMomOrder/service/impl/FbsMomOrderServiceImpl.java

@@ -93,7 +93,7 @@ public class FbsMomOrderServiceImpl extends ServiceImpl<FbsMomOrderMapper, FbsMo
 //        JSONObject jsonObject=JSONObject.parseObject("{\"aa\":\"bb\",\"AUFNR\":\"bb\",\"POST1\":\"bb\",\"ERDAT\":\"2021-01-01 12:00:00\",\"aa\":\"bb\"}");
 //        JSONArray jsonArray=JSONArray.parseArray("[{\"moid\":\"bb\",\"item1\":[{\"MoCode\":\"cc\"}]}]");
         //传入参数
-        String jsonSting="{\"TIMELIMIT\":{\"ST\":\""+start+"\",\"ET\":\""+end+"\"},\"COMMON_INFO_REQ\":{\"API_NO\":\"KANB00001\",\"GUID\":\"1234567890\",\"USERID\":\"USERNAME\"}}";
+        String jsonSting="{\"TIMELIMIT\":{\"ST\":\""+start+"\",\"ET\":\""+end+"\"},\"COMMON_INFO_REQ\":{\"API_NO\":\"KANB00001\",\"GUID\":\""+UUID.randomUUID().toString()+"\",\"USERID\":\"USERNAME\"}}";
         JSONObject jsonObjectP=JSONObject.parseObject(JSONObject.parse(jsonSting).toString());
         //获取接收数据
         JSONObject jsonObjectResults= InterfaceConnUtils.doPost(jsonObjectP,"");
@@ -140,7 +140,25 @@ public class FbsMomOrderServiceImpl extends ServiceImpl<FbsMomOrderMapper, FbsMo
                 fbsMomOrderdetail.put("id",UUID.randomUUID().toString());
                 fbsMomOrderdetail.put("MoDId",String.valueOf(jsonObject.get("MOID")));//生产订单明细id(SAP生产订单号)
                 fbsMomOrderdetail.put("MoId",String.valueOf(jsonObject.get("MOID")));//生产订单id(SAP生产订单号)
-                fbsMomOrderdetail.put("InvCode",String.valueOf(jsonObject.get("INVCODE")));//存货编码
+                String InvCode=String.valueOf(jsonObject.get("INVCODE"));//存货编码
+                //判断是否无物料
+                if(InvCode==null||InvCode.equals("")){//无物料则生成物料
+                    SimpleDateFormat df = new SimpleDateFormat("yyyyMMddHHmmss");//设置日期格式
+                    String InvCodeNew=df.format(new Date());
+                    fbsMomOrderdetail.put("InvCode",InvCodeNew);//存货编码
+                    //保存存货
+                    Map<String,Object> mapAdd=new HashMap<>();
+                    mapAdd.put("id",UUID.randomUUID().toString());
+                    mapAdd.put("cInvCode",InvCodeNew);
+                    mapAdd.put("cInvName",String.valueOf(jsonObject.get("INVNAME")));
+                    mapAdd.put("cInvDefine13",getDecimalNew(String.valueOf(jsonObject.get("STANDARDWORKINGHOURSZ"))));
+                    mapAdd.put("iSafeNum",0.0);
+                    mapAdd.put("cInvCCode","无物料");
+                    mapAdd.put("cInvCName","无物料");
+                    fbsInventoryMapper.addInventory(mapAdd);
+                }else{//有则不生成
+                    fbsMomOrderdetail.put("InvCode",InvCode);//存货编码
+                }
                 fbsMomOrderdetail.put("CostItemName",String.valueOf(jsonObject.get("COSTITEMNAME")));//项目名称
                 fbsMomOrderdetail.put("Qty",String.valueOf(jsonObject.get("QTY")));//数量
                 fbsMomOrderdetail.put("SortSeq",Integer.parseInt(jsonObject.get("SORTSEQ").toString()));//行号