|
|
@@ -7,6 +7,7 @@ import com.malk.server.aliwork.YDConf;
|
|
|
import com.malk.server.aliwork.YDParam;
|
|
|
import com.malk.server.dingtalk.DDR_New;
|
|
|
import com.malk.service.aliwork.YDClient;
|
|
|
+import com.malk.service.aliwork.YDService;
|
|
|
import com.malk.taisen.service.RtrServer;
|
|
|
import com.malk.taisen.util.CusutUtil;
|
|
|
import com.malk.taisen.util.HttpUtil;
|
|
|
@@ -27,6 +28,10 @@ public class RtrServerImpl implements RtrServer {
|
|
|
|
|
|
@Autowired
|
|
|
private YDClient ydClient;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private YDService ydService;
|
|
|
+
|
|
|
/**
|
|
|
* 测试地址
|
|
|
*/
|
|
|
@@ -34,7 +39,7 @@ public class RtrServerImpl implements RtrServer {
|
|
|
private String QA_sapUrl ;
|
|
|
|
|
|
@Override
|
|
|
- public void RtrInsetSAP0005(String type, String InstanceId) {
|
|
|
+ public void RtrInsetSAP0005(String type,String formUuid, String InstanceId) {
|
|
|
DDR_New ddr = ydClient.queryData(YDParam.builder().formInstId(InstanceId).build(), YDConf.FORM_QUERY.retrieve_id);
|
|
|
Map dataForm = ddr.getFormData();
|
|
|
|
|
|
@@ -76,7 +81,8 @@ public class RtrServerImpl implements RtrServer {
|
|
|
if (type.equals("YWJT")) {
|
|
|
JSONArray itemArray = new JSONArray();
|
|
|
int x = 1;//OA单据行号累计用
|
|
|
- List<Map<String, Object>> tableFils = (List<Map<String, Object>>) dataForm.get("tableField_mipgl0vx");
|
|
|
+ List<Map> tableFils = ydService.queryDetails(YDParam.builder().formInstanceId(InstanceId).formUuid(formUuid).tableFieldId("tableField_mipgl0vx").build());
|
|
|
+// List<Map<String, Object>> tableFils = (List<Map<String, Object>>) dataForm.get("tableField_mipgl0vx");
|
|
|
if (tableFils != null && tableFils.size() > 0) {
|
|
|
for (int n = 0; n < tableFils.size(); n++) {
|
|
|
Map<String, Object> row = new HashMap(tableFils.get(n));
|
|
|
@@ -107,7 +113,8 @@ public class RtrServerImpl implements RtrServer {
|
|
|
itemArray.put(itemObj);
|
|
|
}
|
|
|
}
|
|
|
- List<Map<String, Object>> tableFils2 = (List<Map<String, Object>>) dataForm.get("tableField_miwh5y8n");
|
|
|
+ List<Map> tableFils2 = ydService.queryDetails(YDParam.builder().formInstanceId(InstanceId).formUuid(formUuid).tableFieldId("tableField_miwh5y8n").build());
|
|
|
+// List<Map<String, Object>> tableFils2 = (List<Map<String, Object>>) dataForm.get("tableField_miwh5y8n");
|
|
|
if (tableFils2 != null && tableFils2.size() > 0) {
|
|
|
for (int n = 0; n < tableFils2.size(); n++) {
|
|
|
Map<String, Object> row = new HashMap(tableFils2.get(n));
|
|
|
@@ -146,39 +153,39 @@ public class RtrServerImpl implements RtrServer {
|
|
|
* 调用接口
|
|
|
*/
|
|
|
System.out.println(sapJson);
|
|
|
- log.info("发起POST请求:URL={},参数={}", QA_sapUrl + "SAP005", sapJson);
|
|
|
- String post = HttpUtil.post(QA_sapUrl + "SAP005", null, sapJson.toString(), null);
|
|
|
- log.info(dataForm.get("textField_mi73dy3n")+"POST反馈={}", post);
|
|
|
- System.out.println( "POST反馈====="+post);
|
|
|
- if (!post.equals("")) {
|
|
|
- JSONArray jsonArray = new JSONArray(post);
|
|
|
- if (jsonArray.size() > 0) {
|
|
|
- String voucherNumber = "";
|
|
|
- try {
|
|
|
- cn.hutool.json.JSONObject postJsonObject = jsonArray.getJSONObject(0);
|
|
|
- String E_SYSMSGTYPE = postJsonObject.getStr("E_SYSMSGTYPE");//状态
|
|
|
- String E_MESSAGE = postJsonObject.getStr("E_MESSAGE");//SAP005 接口 反馈值
|
|
|
- if ( E_SYSMSGTYPE.equals("S")) {
|
|
|
- String e_belnr = postJsonObject.getStr("E_BELNR");
|
|
|
- String E_GJAHR = postJsonObject.getStr("E_GJAHR");//凭证年度
|
|
|
- // 执行完加入,把更改表单凭证数据
|
|
|
- ydClient.operateData(YDParam.builder().formInstanceId(InstanceId).updateFormDataJson(JSON.toJSONString(UtilMap.map("textField_l9nsavm2, textField_mejezfwk, textareaField_mi5kjmxb, selectField_mi72r4s6", E_GJAHR, e_belnr,E_MESSAGE,"成功"))).build(), YDConf.FORM_OPERATION.update);
|
|
|
- }else {
|
|
|
- // 报错写入
|
|
|
- saveError(InstanceId,E_MESSAGE);
|
|
|
- }
|
|
|
- } catch (Exception ex) {
|
|
|
- log.error("解析异常{}",ex.getMessage());
|
|
|
- saveError(InstanceId,post);
|
|
|
- }
|
|
|
- } else {
|
|
|
- log.error("返回值数组为空");
|
|
|
- saveError(InstanceId,"返回值数组为空,返回值:"+post);
|
|
|
- }
|
|
|
- }else {
|
|
|
- // 报错写入
|
|
|
- saveError(InstanceId,post);
|
|
|
- }
|
|
|
+// log.info("发起POST请求:URL={},参数={}", QA_sapUrl + "SAP005", sapJson);
|
|
|
+// String post = HttpUtil.post(QA_sapUrl + "SAP005", null, sapJson.toString(), null);
|
|
|
+// log.info(dataForm.get("textField_mi73dy3n")+"POST反馈={}", post);
|
|
|
+// System.out.println( "POST反馈====="+post);
|
|
|
+// if (!post.equals("")) {
|
|
|
+// JSONArray jsonArray = new JSONArray(post);
|
|
|
+// if (jsonArray.size() > 0) {
|
|
|
+// String voucherNumber = "";
|
|
|
+// try {
|
|
|
+// cn.hutool.json.JSONObject postJsonObject = jsonArray.getJSONObject(0);
|
|
|
+// String E_SYSMSGTYPE = postJsonObject.getStr("E_SYSMSGTYPE");//状态
|
|
|
+// String E_MESSAGE = postJsonObject.getStr("E_MESSAGE");//SAP005 接口 反馈值
|
|
|
+// if ( E_SYSMSGTYPE.equals("S")) {
|
|
|
+// String e_belnr = postJsonObject.getStr("E_BELNR");
|
|
|
+// String E_GJAHR = postJsonObject.getStr("E_GJAHR");//凭证年度
|
|
|
+// // 执行完加入,把更改表单凭证数据
|
|
|
+// ydClient.operateData(YDParam.builder().formInstanceId(InstanceId).updateFormDataJson(JSON.toJSONString(UtilMap.map("textField_l9nsavm2, textField_mejezfwk, textareaField_mi5kjmxb, selectField_mi72r4s6", E_GJAHR, e_belnr,E_MESSAGE,"成功"))).build(), YDConf.FORM_OPERATION.update);
|
|
|
+// }else {
|
|
|
+// // 报错写入
|
|
|
+// saveError(InstanceId,E_MESSAGE);
|
|
|
+// }
|
|
|
+// } catch (Exception ex) {
|
|
|
+// log.error("解析异常{}",ex.getMessage());
|
|
|
+// saveError(InstanceId,post);
|
|
|
+// }
|
|
|
+// } else {
|
|
|
+// log.error("返回值数组为空");
|
|
|
+// saveError(InstanceId,"返回值数组为空,返回值:"+post);
|
|
|
+// }
|
|
|
+// }else {
|
|
|
+// // 报错写入
|
|
|
+// saveError(InstanceId,post);
|
|
|
+// }
|
|
|
}
|
|
|
|
|
|
private void saveError(String InstanceId,String errorMsg){
|