Browse Source

【博思达】【小米物料WIP对接 】

samhoo 3 năm trước cách đây
mục cha
commit
0ffeeaa63d
1 tập tin đã thay đổi với 69 bổ sung0 xóa
  1. 69 0
      src/main/java/com/uas/eis/task/SyncProductWIPTask.java

+ 69 - 0
src/main/java/com/uas/eis/task/SyncProductWIPTask.java

@@ -0,0 +1,69 @@
+package com.uas.eis.task;
+
+import com.alibaba.fastjson.JSON;
+import com.uas.eis.dao.BaseDao;
+import com.uas.eis.dao.SqlRowList;
+import com.uas.eis.task.httpclient.X5JsonHttpClient;
+import com.uas.eis.utils.Configuration;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scheduling.annotation.EnableAsync;
+import org.springframework.scheduling.annotation.EnableScheduling;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+
+import javax.annotation.Resource;
+import java.text.SimpleDateFormat;
+import java.util.*;
+
+/**
+ * @Author chenwei
+ * @Date 2022-06-14
+ */
+@Component
+@EnableAsync
+@EnableScheduling
+public class SyncProductWIPTask {
+
+    @Autowired
+    private BaseDao baseDao;
+    @Resource(name = "configuration")
+    private Configuration configuration;
+
+    private final Logger logger = LoggerFactory.getLogger(this.getClass());
+
+    @Scheduled(cron = "0 0/1 * * * ?")
+    public void SyncProductWIP() {
+        System.out.println("13434");
+        X5JsonHttpClient x5JsonHttpClient = new X5JsonHttpClient(configuration.getX5appid(),configuration.getX5appkey(),"https://mipoq.p.mi.com/HttpAdapter/HttpMessageServlet?interfaceNamespace=http://xiaomi.com/oem/dummy&interface=SI_MI_OEM_IF122_VENDOR_WIP_S_OUT&senderService=UPSTAR_TECH_QAS&qos=BE",baseDao);
+        Map<String,Object> data = new HashMap<>();
+        SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        String format = sf.format(new Date());
+        System.out.println("format:"+format);
+        data.put("request_time",format);
+        List<Map<String,Object>> list = new ArrayList<>();
+        String Sql="select * from (select rownum rn, A.* from (select ct_code,CUSTOMTABLEDETAIL.* from CUSTOMTABLE left join CUSTOMTABLEDETAIL on ct_id=cd_ctid " +
+                "                 where  ct_caller='XiaoMiProductWIP' order by cd_detno) A) where rn<=2 and rn>=1";
+        SqlRowList rs = baseDao.queryForRowSet(Sql);
+        while (rs.next()){
+            Map<String,Object> map = new HashMap<>();
+            map.put("factory_code",configuration.getX5vendercode());
+            map.put("component_code",rs.getGeneralString("cd_varchar50_1"));
+            map.put("process",rs.getGeneralString("cd_varchar50_2"));
+            map.put("line_id",rs.getGeneralString("cd_varchar50_3"));
+            map.put("site_name",rs.getGeneralString("cd_varchar50_4"));
+            map.put("wip_num",rs.getInt("cd_number_1"));
+            map.put("project_name",rs.getGeneralString("cd_varchar50_5"));
+            map.put("product_code",rs.getGeneralDouble("cd_varchar50_6"));
+            map.put("fact_date",rs.getGeneralString("cd_varchar50_7"));
+            list.add(map);
+        }
+        data.put("data",list);
+        System.out.println("1啊"+data);
+        System.out.println("2啊"+ JSON.toJSONString(data));
+        if(list.size()>0){
+            x5JsonHttpClient.post(data,"ProductWIP");
+        }
+    }
+}