WmesService.java 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. package com.qlm.service;
  2. import java.text.SimpleDateFormat;
  3. import java.util.Date;
  4. import java.util.HashMap;
  5. import java.util.List;
  6. import java.util.Map;
  7. import com.alibaba.fastjson.JSONArray;
  8. import com.alibaba.fastjson.JSONObject;
  9. import com.jfinal.kit.HttpKit;
  10. import com.jfinal.plugin.activerecord.ActiveRecordPlugin;
  11. import com.jfinal.plugin.activerecord.Db;
  12. import com.jfinal.plugin.activerecord.Record;
  13. import com.jfinal.plugin.druid.DruidPlugin;
  14. import com.qlm.log.Log;
  15. public class WmesService {
  16. private static void con(){
  17. DruidPlugin dp = new DruidPlugin("jdbc:mysql://58.20.133.135:6177/jinzai?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull", "jinzai", "rTdBsjA636XkarRa");
  18. ActiveRecordPlugin arp = new ActiveRecordPlugin(dp);
  19. // ��web����Ψһ�IJ�ͬ��Ҫ�ֶ�����һ����ز����start()����
  20. dp.start();
  21. arp.start();
  22. }
  23. public static void main(String[] args) {
  24. con();
  25. uploadData();
  26. }
  27. public static void uploadData(){
  28. List<Record> find = Db.find("select * from jinzai_upload_master where upload_time is null limit 1000");
  29. if(find.isEmpty()){
  30. Log.info("当前无数据,不同步");
  31. return;
  32. }
  33. JSONObject bigData = new JSONObject();
  34. JSONObject data = new JSONObject();
  35. bigData.put("data", data);
  36. JSONArray header = new JSONArray();
  37. SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd HH:mm:ss");
  38. data.put("header", header);
  39. StringBuilder sb = new StringBuilder();
  40. for (Record record : find) {
  41. String task_no = record.getStr("task_no");
  42. String id = record.getStr("id");
  43. if(sb.length()>0){
  44. sb.append(",");
  45. }
  46. sb.append("'"+id+"'");
  47. String duo_code = record.getStr("duo_code");
  48. String pinxiang = record.getStr("sku");
  49. Date guo_time = record.getDate("guo_time");
  50. String format = sdf.format(guo_time);
  51. JSONObject obj1 = new JSONObject();
  52. obj1.put("warehouseid", "JZPJ");
  53. obj1.put("asnno", task_no);//工单号
  54. obj1.put("serialno", id);//箱码
  55. obj1.put("sku", pinxiang);//物料编码
  56. obj1.put("traceId", duo_code);//托盘码
  57. obj1.put("addtime", format);//关联时间
  58. obj1.put("udf06", "tm");
  59. header.add(obj1);
  60. }
  61. Map<String,String> headers = new HashMap<>();
  62. headers.put("Content-Type","application/json");
  63. try{
  64. long start = System.currentTimeMillis();
  65. String post = HttpKit.post("http://192.168.0.190:18080/datahubjson/WMS_EM/?method=QRCODE&apptoken=BAB75C8B843F1C92AC3FFE3BD2A06A5F&timestamp=2024-06-25%2015:59:16&sign=1&format=JSON", bigData.toString(),headers);
  66. Log.info(post);
  67. int count = 0;
  68. if(sb.length()>0){
  69. count = Db.update("update jinzai_upload_master set upload_time = ? where id in ("+sb+")",new Date());
  70. }
  71. long end = System.currentTimeMillis();
  72. Log.info("同步到wms成功,耗时:"+(end-start)+",箱码数量:"+count);
  73. }catch(Exception e){
  74. e.printStackTrace();
  75. }
  76. }
  77. }