Forráskód Böngészése

蒂维同步物料条件完善

wzy 4 hónapja%!(EXTRA string=óta)
szülő
commit
b4df7642d5

+ 2 - 0
mjava-jianhui/src/main/java/com/malk/jianhui/entity/DefectEntity.java

@@ -12,6 +12,8 @@ public class DefectEntity {
     private FNumber FSupplierId;
     //单位
     private FNumber FUnitID;
+    //检验单使用决策
+    private String FUsePolicy;
     //检验不良数量
     private double FInspectDefectQty;
     //不良处理

+ 65 - 16
mjava-jianhui/src/main/java/com/malk/jianhui/service/impl/JianhuiServiceImpl.java

@@ -454,9 +454,17 @@ public class JianhuiServiceImpl implements JianhuiService {
             billQuery.setFormId("BD_MATERIAL");
             billQuery.setFieldKeys("FUseOrgId,FNumber,FName,FSpecification,FDocumentStatus,FForbidStatus,FErpClsID,FBaseUnitId,FRefStatus");
             List<Map> filterString = new ArrayList<>();
-            //修改时间为昨天到今天
-            filterString.add(UtilMap.map("FieldName, Compare, Value, Left, Right, Logic","FModifyDate","265","1","","","0"));
-//            filterString.add(UtilMap.map("FieldName, Compare, Value, Left, Right, Logic","FModifyDate","39","2025-03-06 00:00:00","","","0"));
+            //修改时间或审核日期为昨天到今天
+            filterString.add(UtilMap.map("FieldName, Compare, Value, Left, Right, Logic","FModifyDate","265","1","","","1"));
+            filterString.add(UtilMap.map("FieldName, Compare, Value, Left, Right, Logic","FApproveDate","265","1","","","0"));
+
+//            filterString.add(UtilMap.map("FieldName, Compare, Value, Left, Right, Logic","FModifyDate","39","2025-03-12 00:00:00","","","0"));//修改日期大于等于xx
+//            filterString.add(UtilMap.map("FieldName, Compare, Value, Left, Right, Logic","FModifyDate","16","2025-03-14 00:00:00","","","0"));//修改日期小于等于xx
+//            filterString.add(UtilMap.map("FieldName, Compare, Value, Left, Right, Logic","FCreateDate","39","2025-03-12 00:00:00","","","0"));//创建日期大于等于xx
+//            filterString.add(UtilMap.map("FieldName, Compare, Value, Left, Right, Logic","FCreateDate","16","2025-03-14 00:00:00","","","0"));//创建日期大于等于xx
+//            filterString.add(UtilMap.map("FieldName, Compare, Value, Left, Right, Logic","FApproveDate","16","2025-03-14 00:00:00","","","0"));//审核日期大于等于xx
+
+
             billQuery.setFilterString(filterString);
             billQuery.setLimit(limit);
             do {
@@ -664,6 +672,7 @@ public class JianhuiServiceImpl implements JianhuiService {
             defectEntity.setFMateridlId(new FNumber(getString(detail.get("textField_m64pw0go"))));//物料
             defectEntity.setFSupplierId(new FNumber(getString(detail.get("textField_m6yumh8w"))));//供应商
             defectEntity.setFUnitID(new FNumber(getString(detail.get("textField_m6yntxnj"))));//单位
+            defectEntity.setFUsePolicy("F");//检验单使用决策   F:判退
             defectEntity.setFInspectDefectQty((int) detail.get("numberField_m82qkv1u"));//检验不良数量
 
             //不良处理 A:接收 B:让步接收 F:判退
@@ -700,10 +709,6 @@ public class JianhuiServiceImpl implements JianhuiService {
 
         model.setFEntity(FEntity);
 
-
-
-
-
         save.setModel(model);
 
         try{
@@ -725,22 +730,60 @@ public class JianhuiServiceImpl implements JianhuiService {
                 //提交
                 String resultJson2 = client.submit(formId, JSONObject.toJSONString(submit));
                 RepoRet repoRet2 = gson.fromJson(resultJson2, RepoRet.class);
-                isTrue(repoRet2);
-
-                String orderCode = repoRet2.getResult().getResponseStatus().getSuccessEntitys().get(0).getNumber();
+                if (isTrue(repoRet2)){
+                    String orderCode = repoRet2.getResult().getResponseStatus().getSuccessEntitys().get(0).getNumber();
 
-                ydClient.operateData(YDParam.builder()
-                        .formInstId(formInstId)
-                        .updateFormDataJson(JSONObject.toJSONString(UtilMap.map("textField_m6yntxmz",orderCode)))
-                        .build(), YDConf.FORM_OPERATION.update);
+                    ydClient.operateData(YDParam.builder()
+                            .formInstId(formInstId)
+                            .updateFormDataJson(JSONObject.toJSONString(UtilMap.map("textField_m6yntxmz",orderCode)))
+                            .build(), YDConf.FORM_OPERATION.update);
 
-                if (isTrue(repoRet2)){
                     Audit audit = new Audit();
                     audit.setIds(id);
+
                     //审核
                     String resultJson3 = client.audit(formId,JSONObject.toJSONString(audit));
                     RepoRet repoRet3 = gson.fromJson(resultJson3, RepoRet.class);
-                    isTrue(repoRet3);
+                    if (isTrue(repoRet3)){
+                        //更新检验单使用决策
+                        String formId2 = "QM_InspectBill";
+
+                        Save save2 = new Save();
+                        Model model2 = new Model();
+                        model2.setFID((int)formData.get("numberField_m86nq0a5"));//检验单id
+                        List<Object> FEntityList = new ArrayList<>();
+                        for (Map detail : details) {
+                            Map FEntity2 = new HashMap();
+                            FEntity2.put("FEntryID",detail.get("numberField_m873a1q2"));//分录明细id
+
+                            List<Map> FPolicyDetailList = new ArrayList<>();
+                            Map FPolicyDetail = new HashMap();
+                            FPolicyDetail.put("FDetailID",detail.get("numberField_m8fkgsvo"));//使用决策id
+
+                            //不良处理 A:接收 B:让步接收 F:判退
+                            String FDefProcess = getString(detail.get("selectField_m64pw0gt"));
+                            switch (FDefProcess){
+                                case "接收": FPolicyDetail.put("FUsePolicy","A");break;
+                                case "让步接收": FPolicyDetail.put("FUsePolicy","B");break;
+                                case "判退": FPolicyDetail.put("FUsePolicy","F");break;
+                                default:break;
+                            }
+
+                            FPolicyDetailList.add(FPolicyDetail);
+
+                            FEntity2.put("FPolicyDetail",FPolicyDetailList);
+
+                            FEntityList.add(FEntity2);
+                        }
+                        model2.setFEntity(FEntityList);
+
+                        save2.setModel(model2);
+
+                        String resultJson4 = client.save(formId2,JSONObject.toJSONString(save2));
+
+                        RepoRet repoRet4 = gson.fromJson(resultJson4, RepoRet.class);
+                        isTrue(repoRet4);
+                    }
                 }
             }
         } catch (Exception e) {
@@ -1176,6 +1219,12 @@ public class JianhuiServiceImpl implements JianhuiService {
                             if (!((List<Map>)entity.get("Memo")).isEmpty()){
                                 detail.put("textField_m82j5zsz",((List<Map>)entity.get("Memo")).get(0).get("Value"));//不良原因
                             }
+
+                            List<Map> policyDetail = (List<Map>) entity.get("PolicyDetail");
+                            if (!policyDetail.isEmpty()){
+                                detail.put("numberField_m8fkgsvo",policyDetail.get(0).get("Id"));//使用决策id
+                            }
+
                             detailList.add(detail);
                         }
                         formData.put("tableField_m82j5zso",detailList);