SyncProductWIPTask.java 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. package com.uas.eis.task;
  2. import com.alibaba.fastjson.JSON;
  3. import com.uas.eis.dao.BaseDao;
  4. import com.uas.eis.dao.SqlRowList;
  5. import com.uas.eis.task.httpclient.X5JsonHttpClient;
  6. import com.uas.eis.utils.Configuration;
  7. import org.slf4j.Logger;
  8. import org.slf4j.LoggerFactory;
  9. import org.springframework.beans.factory.annotation.Autowired;
  10. import org.springframework.scheduling.annotation.EnableAsync;
  11. import org.springframework.scheduling.annotation.EnableScheduling;
  12. import org.springframework.scheduling.annotation.Scheduled;
  13. import org.springframework.stereotype.Component;
  14. import javax.annotation.Resource;
  15. import java.text.SimpleDateFormat;
  16. import java.util.*;
  17. /**
  18. * @Author chenwei
  19. * @Date 2022-06-14
  20. */
  21. @Component
  22. @EnableAsync
  23. @EnableScheduling
  24. public class SyncProductWIPTask {
  25. @Autowired
  26. private BaseDao baseDao;
  27. @Resource(name = "configuration")
  28. private Configuration configuration;
  29. private final Logger logger = LoggerFactory.getLogger(this.getClass());
  30. @Scheduled(cron = "0 0/1 * * * ?")
  31. public void SyncProductWIP() {
  32. System.out.println("13434");
  33. X5JsonHttpClient x5JsonHttpClient = new X5JsonHttpClient(configuration.getX5appid(),configuration.getX5appkey(),configuration.getX5ProductWIPUrl(),baseDao);
  34. Map<String,Object> data = new HashMap<>();
  35. SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  36. String format = sf.format(new Date());
  37. System.out.println("format:"+format);
  38. data.put("request_time",format);
  39. List<Map<String,Object>> list = new ArrayList<>();
  40. String Sql="select * from (select rownum rn, A.* from (select ct_code,CUSTOMTABLEDETAIL.* from CUSTOMTABLE left join CUSTOMTABLEDETAIL on ct_id=cd_ctid " +
  41. " where ct_caller='XiaoMiProductWIP' order by cd_detno) A) where rn<=2 and rn>=1";
  42. SqlRowList rs = baseDao.queryForRowSet(Sql);
  43. while (rs.next()){
  44. Map<String,Object> map = new HashMap<>();
  45. map.put("factory_code",configuration.getX5vendercode());
  46. map.put("component_code",rs.getGeneralString("cd_varchar50_1"));
  47. map.put("process",rs.getGeneralString("cd_varchar50_2"));
  48. map.put("line_id",rs.getGeneralString("cd_varchar50_3"));
  49. map.put("site_name",rs.getGeneralString("cd_varchar50_4"));
  50. map.put("wip_num",rs.getInt("cd_number_1"));
  51. map.put("project_name",rs.getGeneralString("cd_varchar50_5"));
  52. map.put("product_code",rs.getGeneralDouble("cd_varchar50_6"));
  53. map.put("fact_date",rs.getGeneralString("cd_varchar50_7"));
  54. list.add(map);
  55. }
  56. data.put("data",list);
  57. System.out.println("1啊"+data);
  58. System.out.println("2啊"+ JSON.toJSONString(data));
  59. if(list.size()>0){
  60. x5JsonHttpClient.post(data,"ProductWIP");
  61. }
  62. }
  63. }