From 5f11cb1edd264cfae8bf47261a4449f576703227 Mon Sep 17 00:00:00 2001
From: pang.jiabao <pang_jiabao@163.com>
Date: 星期五, 12 七月 2024 19:28:53 +0800
Subject: [PATCH] 调用金蝶同步物料信息
---
src/main/java/com/zy/asrs/task/handler/GhlnHandler.java | 110 +++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 103 insertions(+), 7 deletions(-)
diff --git a/src/main/java/com/zy/asrs/task/handler/GhlnHandler.java b/src/main/java/com/zy/asrs/task/handler/GhlnHandler.java
index 40adf9f..673dc22 100644
--- a/src/main/java/com/zy/asrs/task/handler/GhlnHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/GhlnHandler.java
@@ -4,12 +4,12 @@
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.common.Cools;
import com.zy.asrs.entity.BasDevp;
+import com.zy.asrs.entity.Mat;
import com.zy.asrs.entity.WrkDetl;
import com.zy.asrs.entity.WrkMast;
-import com.zy.asrs.service.ApiLogService;
-import com.zy.asrs.service.BasDevpService;
-import com.zy.asrs.service.WrkDetlService;
-import com.zy.asrs.service.WrkMastService;
+import com.zy.asrs.service.*;
+import com.zy.asrs.task.core.ReturnT;
+
import com.zy.common.constant.MesConstant;
import com.zy.common.constant.OpenApiAddressConstant;
import com.zy.common.utils.HttpHandler;
@@ -18,9 +18,9 @@
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+import java.util.*;
/**
* @author pang.jiabao
@@ -42,6 +42,12 @@
@Autowired
private ApiLogService apiLogService;
+
+ @Autowired
+ private LoginAuthHandler loginAuthHandler;
+
+ @Resource
+ private MatService matService;
/**
* 鍑哄簱鍒拌揪鍑哄簱鐩爣绔欐椂锛岃皟鐢ˋGV寮�鏀惧嚭搴撴帴鍙�
@@ -133,4 +139,94 @@
}
}
+ /**
+ * 璋冪敤閲戣澏鍚屾鐗╂枡鎺ュ彛锛屽閲忓悓姝ユ瘡灏忔椂浜х敓鐨勬柊鐗╂枡
+ */
+ public void syncMat() {
+
+ //鐧诲綍閲戣澏
+ ReturnT<String> start = loginAuthHandler.start();
+
+ //鏉′欢鍜岄渶瑕佽幏寰楃殑缁撴灉鎷兼帴
+ JSONObject jsonObject = new JSONObject();
+ jsonObject.put("FormId", "BD_MATERIAL");
+ jsonObject.put("OrderString","");
+ jsonObject.put("TopRowCount",0);
+ jsonObject.put("Limit", 3000);
+ jsonObject.put("StartRow", "0");
+ jsonObject.put("SubSystemId", "");
+ // 鑾峰彇褰撳墠鏃堕棿
+ LocalDateTime currentDateTime = LocalDateTime.now();
+ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+ // 鑾峰彇褰撳墠鏃堕棿鐨勫墠涓�灏忔椂鏁寸偣鏃堕棿
+ LocalDateTime oneHourAgo = currentDateTime.minusHours(1).withMinute(0).withSecond(0).withNano(0);
+ jsonObject.put("FilterString", "FCreateDate >= '"+oneHourAgo.format(formatter)+"' and FUseOrgId .FNumber='10004'");
+ jsonObject.put("FieldKeys", "FNumber,FName,FCreateDate,FTypeID");
+
+ JSONObject jsonObject1 = new JSONObject();
+ jsonObject1.put("data", jsonObject);
+ String add = jsonObject1.toJSONString();
+
+ String response = "";
+ boolean success = false;
+ String url = "http://192.168.16.7";
+ String address = "K3CLOUD/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.ExecuteBillQuery.common.kdsvc";
+ try {
+ //鑾峰彇Cookie鍊�
+ HashMap<String, Object> headers = new HashMap<>();
+ headers.put("Cookie", start.getContent());
+ response = new HttpHandler.Builder()
+ .setHeaders(headers)
+ .setUri(url)
+ .setPath(address)
+ .setJson(add)
+ .build()
+ .doPost();
+ String[] tempstr;
+ if (!"[]".equals(response)) {
+ String[] returnstr = response.split("],");
+ int count = 0;
+ log.info("--------璋冪敤閲戣澏鍚屾鐗╂枡淇℃伅寮�濮�--------");
+ for (int i = 0; i < returnstr.length; i++) {
+ Mat mat = new Mat();
+ tempstr = returnstr[i].split(",");
+ if (i == 0) {
+ mat.setMatnr(tempstr[0].substring(2)); //鐗╂枡缂栫爜
+ } else {
+ mat.setMatnr(tempstr[0].substring(1)); //鐗╂枡缂栫爜
+ }
+ mat.setMaktx(tempstr[1]); // 鐗╂枡鍚嶇О
+ mat.setTagId(Long.valueOf(tempstr[3])); // 鐗╂枡鍒嗙被
+ mat.setCreateTime(new Date());//鍟嗗搧鍒涘缓鏃堕棿
+ mat.setUpdateTime(new Date());
+ mat.setStatus(1);
+ try {
+ matService.insert(mat);
+ count++;
+ }catch (Exception e){
+ log.error("閲戣澏鍚屾鐗╂枡寮傚父锛歿}", mat);
+ }
+ }
+ log.info("----璋冪敤閲戣澏鍚屾鐗╂枡淇℃伅缁撴灉锛氭�粄},鎴恵}--------",returnstr.length, count);
+ success = true;
+ }
+ } catch (Exception e) {
+ log.error("fail", e);
+ } finally {
+ try {
+ // 淇濆瓨鎺ュ彛鏃ュ織
+ apiLogService.save(
+ "璇锋眰閲戣澏鍚屾鐗╂枡淇℃伅",
+ url + address,
+ null,
+ "127.0.0.1",
+ add,
+ response,
+ success
+ );
+ } catch (Exception e) {
+ log.error("", e);
+ }
+ }
+ }
}
--
Gitblit v1.9.1