Просмотр исходного кода

Merge remote-tracking branch 'origin/master'

lfx недель назад: 2
Родитель
Сommit
72144872fe

+ 65 - 23
mjava-ts/src/main/java/com/malk/taisen/service/impl/NonPoServerImpl.java

@@ -91,6 +91,8 @@ public class NonPoServerImpl implements NonPoServer {
             sapJson.put("ZOA_NUMBER", dataForm.get("textField_mi73dy3n")); //钉钉单据号dataForm.get("textField_mi73dy3n")
             if (dataForm.get("selectField_mejfoona").equals("收据支付")) {//☑ 票据支付时 代码ZINVOICE_AMT 默认ZPAY_AMT的值
                 sapJson.put("ZINVOICE_AMT", dataForm.get("numberField_mejfoool_value").equals("") ? "0" : dataForm.get("numberField_mejfoool_value"));//支付金额
+            } else if (dataForm.get("selectField_mejfoona").equals("无票预付")) {//☑ 无票预付时  ZINVOICE_AMT发票总额  为0
+                sapJson.put("ZINVOICE_AMT", "0");
             } else {
                 sapJson.put("ZINVOICE_AMT", dataForm.get("numberField_mejfoook_value").equals("") ? "0" : dataForm.get("numberField_mejfoook_value"));//发票总额
             }
@@ -102,7 +104,10 @@ public class NonPoServerImpl implements NonPoServer {
             String uname = "";
             if (!dataForm.get("employeeField_mhxdzya9_id").equals("")) {
 
-                List<Map<String, Object>> conditions = new ArrayList<>(Arrays.asList(buildCondition("textField_l6dddg5k", dataForm.get("employeeField_mhxdzya9_id"), "TEXT", "eq", "TextField")));
+                com.alibaba.fastjson.JSONArray array = JSON.parseArray(String.valueOf(dataForm.get("employeeField_mhxdzya9_id")));
+                String number = array.getString(0);
+
+                List<Map<String, Object>> conditions = new ArrayList<>(Arrays.asList(buildCondition("textField_l6dddg5k", number, "TEXT", "eq", "TextField")));
                 String listJson = JSON.toJSONString(conditions);
                 YDParam YGydParam = _getYDTokenZXXZ(listJson);
                 List<Map> dataList = (List<Map>) ydClient.queryData(YGydParam, YDConf.FORM_QUERY.retrieve_search_form).getData();
@@ -114,7 +119,7 @@ public class NonPoServerImpl implements NonPoServer {
                 }
             }
             // uid="CHN-01000332";
-            //  uid = "CHN-01000332";//测试过账人
+            // uid = "CHN-01000332";//测试过账人
             sapJson.put("USNAM", uid);   //过账人
             sapJson.put("BUDAT", CusutUtil.getFormatDate((Long) dataForm.get("dateField_mhxdzyaa")));  //过账日期
             sapJson.put("ZOA_TYPE", dataForm.get("selectField_mejfoona").equals("无票预付") || dataForm.get("selectField_mejfoona").equals("100%清预付款") || dataForm.get("selectField_mejfoona").equals("100%清收据") ? "AD" : "NP");//OA单据类型
@@ -171,7 +176,16 @@ public class NonPoServerImpl implements NonPoServer {
             } else if (dataForm.get("selectField_mejfoona").equals("无票预付")) {
 
                 sapJson.put("BLART", "Z4");//凭证类型
-                sapJson.put("UMSKZ", "A");//特别总账标识
+
+                if (dataForm.containsKey("selectField_mmcx7567")) {
+                    if (!"".equals(dataForm.get("selectField_mmcx7567").toString())) {
+                        sapJson.put("UMSKZ", dataForm.get("selectField_mmcx7567").toString());//特别总账标识
+                    } else {
+                        sapJson.put("UMSKZ", "A");//特别总账标识
+                    }
+                } else {
+                    sapJson.put("UMSKZ", "A");//特别总账标识
+                }
                 JSONArray SapItem = new JSONArray();       //子表
                 JSONObject itemObject = new JSONObject();
                 itemObject.put("ZOA_ITEMNO", "001");       //OA单据行号
@@ -203,7 +217,31 @@ public class NonPoServerImpl implements NonPoServer {
                         JSONObject itemObj = new JSONObject();
                         itemObj.put("KOSTL", String.valueOf(row.get("textField_mi7c3wku"))); //成本中心
                         itemObj.put("DMBTR", String.valueOf(row.get("numberField_mi7c3wky_value")));  //不含税金额
-                        itemObj.put("XREF1", "");//参考码  9000242
+                        if (dataForm.get("textField_mi73dy3n").equals("NP6610260041")) {
+                            itemObj.put("XREF1", "N30340072");//参考码  9000242
+                        } else if (dataForm.get("textField_mi73dy3n").equals("NP6610260040")) {
+                            itemObj.put("XREF1", "N30120071");//参考码  9000242
+                        } else if (dataForm.get("textField_mi73dy3n").equals("NP6610260039")) {
+                            itemObj.put("XREF1", "N30430046");//参考码  9000242
+                        } else if (dataForm.get("textField_mi73dy3n").equals("NP6610260041")) {
+                            itemObj.put("XREF1", "N30340072");//参考码  9000242
+                        } else if (dataForm.get("textField_mi73dy3n").equals("NP6610260038")) {
+                            itemObj.put("XREF1", "N30490028");//参考码  9000242
+                        } else if (dataForm.get("textField_mi73dy3n").equals("NP6610260035")) {
+                            itemObj.put("XREF1", "N30340072");//参考码  9000242
+                        } else if (dataForm.get("textField_mi73dy3n").equals("NP6610260033")) {
+                            itemObj.put("XREF1", "N30190066");//参考码  9000242
+                        } else if (dataForm.get("textField_mi73dy3n").equals("NP6610260032")) {
+                            itemObj.put("XREF1", "N30380070");//参考码  9000242
+                        } else if (dataForm.get("textField_mi73dy3n").equals("NP6610260046")) {
+                            itemObj.put("XREF1", "N30330069");//参考码  9000242
+                        } else if (dataForm.get("textField_mi73dy3n").equals("NP6610260045")) {
+                            itemObj.put("XREF1", "N30290072");//参考码  9000242
+                        } else {
+                            itemObj.put("XREF1", "");//参考码  9000242
+                        }
+
+
                         String sjItemNo = "";
                         if (x < 10) {
                             sjItemNo += "00" + x;
@@ -426,14 +464,17 @@ public class NonPoServerImpl implements NonPoServer {
 /**
  * 冲销
  */
-        String SFCX = (String) dataForm.get("selectField_mkxd6l4o");//是否冲销
-        String CXTSZT = (String) dataForm.get("selectField_mkxmqncp");//冲销推送状态
-        if (SFCX.equals("是") && !CXTSZT.equals("已完成")) {
-            log.info("泰森宜搭:Non-Po冲销, {}", InstanceId);
-            System.out.println("泰森宜搭: Non-Po冲销::" + InstanceId);
-            this.NPOCX(InstanceId, formUuid);
-            System.out.println("泰森宜搭:Non-Po冲销 结束");
-            log.info("泰森宜搭:Non-Po冲销 结束");
+        if (dataForm.containsKey("selectField_mkxd6l4o") && dataForm.containsKey("selectField_mkxmqncp")) {
+            String SFCX = (String) dataForm.get("selectField_mkxd6l4o");//是否冲销
+            String CXTSZT = (String) dataForm.get("selectField_mkxmqncp");//冲销推送状态
+            if ("是".equals(SFCX) && !"已完成".equals(CXTSZT)) {
+                log.info("泰森宜搭:Non-Po冲销, {}", InstanceId);
+                System.out.println("泰森宜搭: Non-Po冲销::" + InstanceId);
+                this.NPOCX(InstanceId, formUuid);
+                System.out.println("泰森宜搭:Non-Po冲销 结束");
+                log.info("泰森宜搭:Non-Po冲销 结束");
+            }
+
         }
 
 
@@ -665,8 +706,10 @@ public class NonPoServerImpl implements NonPoServer {
 
             String uid = "TEST-CN001";
             if (!dataForm.get("employeeField_mhxdzya9_id").equals("")) {
+                com.alibaba.fastjson.JSONArray array = JSON.parseArray(String.valueOf(dataForm.get("employeeField_mhxdzya9_id")));
+                String number = array.getString(0);
 
-                List<Map<String, Object>> conditions = new ArrayList<>(Arrays.asList(buildCondition("textField_l6dddg5k", dataForm.get("employeeField_mhxdzya9_id"), "TEXT", "eq", "TextField")));
+                List<Map<String, Object>> conditions = new ArrayList<>(Arrays.asList(buildCondition("textField_l6dddg5k", number, "TEXT", "eq", "TextField")));
                 String listJson = JSON.toJSONString(conditions);
                 YDParam YGydParam = _getYDTokenZXXZ(listJson);
                 List<Map> dataList = (List<Map>) ydClient.queryData(YGydParam, YDConf.FORM_QUERY.retrieve_search_form).getData();
@@ -693,8 +736,8 @@ public class NonPoServerImpl implements NonPoServer {
                     body.put("ZOA_TYPE", "NP");
 
                     if (detail.containsKey("textField_mkxd96yz")) {
-                        if (!"".equals(detail.get("textField_mkxd96yz").toString())   && detail.get("textField_mkxd96yz").toString() != null) {
-                            body.put("ZOA_NUMBER",   detail.get("textField_mkxd96yz").toString() );
+                        if (!"".equals(detail.get("textField_mkxd96yz").toString()) && detail.get("textField_mkxd96yz").toString() != null) {
+                            body.put("ZOA_NUMBER", detail.get("textField_mkxd96yz").toString());
                         } else {
                             body.put("ZOA_NUMBER", ZOA_NUMBER);
                         }
@@ -721,15 +764,15 @@ public class NonPoServerImpl implements NonPoServer {
                         if (!"".equals(detail.get("dateField_mkxd96z1").toString())) {
                             body.put("BUDAT", CusutUtil.getFormatDate((long) detail.get("dateField_mkxd96z1")));
                         } else {
-                           // body.put("BUDAT", "");
+                            // body.put("BUDAT", "");
                         }
-                    }else {
-                     //   body.put("BUDAT", "");
+                    } else {
+                        //   body.put("BUDAT", "");
                     }
 
 
                     Map result = this._pushSPCX(body);
-                    if (result!=null && result.size()>0){
+                    if (result != null && result.size() > 0) {
                         // prd 重复推送标记成功
                         if ("S".equals(result.get("E_SYSMSGTYPE")) || "post operation had already been done, repeat is not allowed".equals(result.get("E_MESSAGE"))) {
                             detail.put("selectField_mkxoe0yk", "成功");
@@ -741,7 +784,7 @@ public class NonPoServerImpl implements NonPoServer {
                             fail += 1;
                         }
                         detail.put("textareaField_mkxuo69d", result.get("E_MESSAGE"));
-                    }else {
+                    } else {
                         detail.put("selectField_mkxoe0yk", "失败");
                         detail.put("textareaField_mkxuo69d", "失败,请检查后提交");
                         fail += 1;
@@ -794,12 +837,11 @@ public class NonPoServerImpl implements NonPoServer {
             McException.assertAccessException(result.isEmpty(), "Sap接口请求异常, 返回空集合, 需重新推送.");
             return result.get(0);
 
-        }catch (Exception e){
-            return  new HashMap<>();
+        } catch (Exception e) {
+            return new HashMap<>();
         }
 
 
-
     }
 
 

+ 1 - 1
mjava-ts/src/main/resources/application-dev.yml

@@ -4,7 +4,7 @@ server:
   servlet:
     context-path: /api/ts
 npo:
-  scheduling: false
+  scheduling: true
 
 enable:
   scheduling: false

+ 1 - 1
mjava-ts/src/main/resources/application-test.yml

@@ -5,7 +5,7 @@ server:
     context-path: /apits
 
 npo:
-  scheduling: false
+  scheduling: true
 
 enable:
   scheduling: false