package com.qlm.service; import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.jfinal.kit.HttpKit; import com.jfinal.plugin.activerecord.ActiveRecordPlugin; import com.jfinal.plugin.activerecord.Db; import com.jfinal.plugin.activerecord.Record; import com.jfinal.plugin.druid.DruidPlugin; import com.qlm.log.Log; public class WmesService { private static void con(){ DruidPlugin dp = new DruidPlugin("jdbc:mysql://58.20.133.135:6177/jinzai?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull", "jinzai", "rTdBsjA636XkarRa"); ActiveRecordPlugin arp = new ActiveRecordPlugin(dp); // ��web����Ψһ�IJ�ͬ��Ҫ�ֶ�����һ����ز����start()���� dp.start(); arp.start(); } public static void main(String[] args) { con(); uploadData(); } public static void uploadData(){ List find = Db.find("select * from jinzai_upload_master where upload_time is null limit 1000"); if(find.isEmpty()){ Log.info("当前无数据,不同步"); return; } JSONObject bigData = new JSONObject(); JSONObject data = new JSONObject(); bigData.put("data", data); JSONArray header = new JSONArray(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd HH:mm:ss"); data.put("header", header); StringBuilder sb = new StringBuilder(); for (Record record : find) { String task_no = record.getStr("task_no"); String id = record.getStr("id"); if(sb.length()>0){ sb.append(","); } sb.append("'"+id+"'"); String duo_code = record.getStr("duo_code"); String pinxiang = record.getStr("sku"); Date guo_time = record.getDate("guo_time"); String format = sdf.format(guo_time); JSONObject obj1 = new JSONObject(); obj1.put("warehouseid", "JZPJ"); obj1.put("asnno", task_no);//工单号 obj1.put("serialno", id);//箱码 obj1.put("sku", pinxiang);//物料编码 obj1.put("traceId", duo_code);//托盘码 obj1.put("addtime", format);//关联时间 obj1.put("udf06", "tm"); header.add(obj1); } Map headers = new HashMap<>(); headers.put("Content-Type","application/json"); try{ long start = System.currentTimeMillis(); String post = HttpKit.post("http://192.168.0.190:18080/datahubjson/WMS_EM/?method=QRCODE&apptoken=BAB75C8B843F1C92AC3FFE3BD2A06A5F×tamp=2024-06-25%2015:59:16&sign=1&format=JSON", bigData.toString(),headers); Log.info(post); int count = 0; if(sb.length()>0){ count = Db.update("update jinzai_upload_master set upload_time = ? where id in ("+sb+")",new Date()); } long end = System.currentTimeMillis(); Log.info("同步到wms成功,耗时:"+(end-start)+",箱码数量:"+count); }catch(Exception e){ e.printStackTrace(); } } }