|
|
@@ -35,40 +35,45 @@ public class SyncProductStockTask {
|
|
|
@Scheduled(cron = "0 0/1 * * * ?")
|
|
|
public void SyncProductStock() {
|
|
|
SqlRowList rs2 = baseDao.queryForRowSet("select TO_CHAR(SYSDATE,'HH24') v_hour,TO_CHAR(SYSDATE,'MI') v_mi from dual");
|
|
|
- if(("08".equals(rs2.getGeneralString("v_hour")) || "15".equals(rs2.getGeneralString("v_hour")))
|
|
|
- && ("32".equals(rs2.getGeneralString("v_mi")) || "34".equals(rs2.getGeneralString("v_mi")))){
|
|
|
- X5JsonHttpClient x5JsonHttpClient = new X5JsonHttpClient(configuration.getX5appid(),configuration.getX5appkey(),configuration.getX5ProductStockUrl());
|
|
|
- Map<String,Object> data = new HashMap<>();
|
|
|
- SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
- String format = sf.format(new Date());
|
|
|
- data.put("request_time",format);
|
|
|
- List<Map<String,Object>> list = new ArrayList<>();
|
|
|
- String Sql="select * from (select rownum rn, A.* from (select ct_id,ct_code,CUSTOMTABLEDETAIL.* from CUSTOMTABLE left join CUSTOMTABLEDETAIL on ct_id=cd_ctid " +
|
|
|
- " where ct_caller='XiaoMiProduct' and ct_id= " +
|
|
|
- " (select ct_id from (select ct_id from CUSTOMTABLE where ct_caller='XiaoMiProduct' and trunc(ct_recorddate)=trunc(sysdate) and ct_statuscode='AUDITED' and nvl(CT_SENDSTATUS,' ')<>'已上传' order by ct_id desc) where rownum=1)" +
|
|
|
- " order by cd_detno) A) where rn<=1000";
|
|
|
- SqlRowList rs = baseDao.queryForRowSet(Sql);
|
|
|
- baseDao.execute("insert into XIAOMIDOCKINGLOG(ML_ID,ML_DATE,ML_CONTENT,ML_RESULT,ML_TYPE)" +
|
|
|
- "values(XIAOMIDOCKINGLOG_seq.nextval,sysdate,'1上传失败!',to_char(sysdate,'yyyy-mm-dd HH24:mi:ss'),'')");
|
|
|
- while (rs.next()){
|
|
|
- Map<String,Object> map = new HashMap<>();
|
|
|
- map.put("factory_code",configuration.getX5vendercode());
|
|
|
- map.put("component_code",rs.getGeneralString("cd_varchar50_3"));
|
|
|
- map.put("product_code",rs.getGeneralString("cd_varchar50_2"));
|
|
|
- map.put("product_desc",rs.getGeneralString("cd_varchar200_1"));
|
|
|
- map.put("product_class",rs.getGeneralString("cd_varchar50_4"));
|
|
|
- map.put("product_level",rs.getInt("cd_number_1"));
|
|
|
- map.put("common_status",rs.getGeneralString("cd_varchar50_6"));
|
|
|
- map.put("stock_num",rs.getGeneralDouble("cd_number_2"));
|
|
|
- map.put("stock_unit",rs.getGeneralString("cd_varchar50_5"));
|
|
|
- map.put("ct_id",rs.getGeneralInt("ct_id"));
|
|
|
- list.add(map);
|
|
|
- }
|
|
|
- data.put("data",list);
|
|
|
- if(list.size()>0){
|
|
|
+ while(rs2.next()) {
|
|
|
+ Object V_HOUR = rs2.getResultList().get(0).get("V_HOUR");
|
|
|
+ Object V_MI = rs2.getResultList().get(0).get("V_MI");
|
|
|
+ if (("02".equals(V_HOUR.toString()) || "15".equals(V_HOUR.toString())
|
|
|
+ || "16".equals(V_HOUR.toString()) || "20".equals(V_HOUR.toString()))
|
|
|
+ && ("14".equals(V_MI.toString()) || "16".equals(V_MI.toString()))) {
|
|
|
+ X5JsonHttpClient x5JsonHttpClient = new X5JsonHttpClient(configuration.getX5appid(), configuration.getX5appkey(), configuration.getX5ProductStockUrl());
|
|
|
+ Map<String, Object> data = new HashMap<>();
|
|
|
+ SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
+ String format = sf.format(new Date());
|
|
|
+ data.put("request_time", format);
|
|
|
+ List<Map<String, Object>> list = new ArrayList<>();
|
|
|
+ String Sql = "select * from (select rownum rn, A.* from (select ct_id,ct_code,CUSTOMTABLEDETAIL.* from CUSTOMTABLE left join CUSTOMTABLEDETAIL on ct_id=cd_ctid " +
|
|
|
+ " where ct_caller='XiaoMiProduct' and ct_id= " +
|
|
|
+ " (select ct_id from (select ct_id from CUSTOMTABLE where ct_caller='XiaoMiProduct' and trunc(ct_recorddate)=trunc(sysdate) and ct_statuscode='AUDITED' and nvl(CT_SENDSTATUS,' ')<>'已上传' order by ct_id desc) where rownum=1)" +
|
|
|
+ " order by cd_detno) A) where rn<=1000";
|
|
|
+ SqlRowList rs = baseDao.queryForRowSet(Sql);
|
|
|
baseDao.execute("insert into XIAOMIDOCKINGLOG(ML_ID,ML_DATE,ML_CONTENT,ML_RESULT,ML_TYPE)" +
|
|
|
- "values(XIAOMIDOCKINGLOG_seq.nextval,sysdate,'2上传失败!',to_char(sysdate,'yyyy-mm-dd HH24:mi:ss'),'')");
|
|
|
- x5JsonHttpClient.post(data, configuration, baseDao, "ProductStock");
|
|
|
+ "values(XIAOMIDOCKINGLOG_seq.nextval,sysdate,'1上传失败!',to_char(sysdate,'yyyy-mm-dd HH24:mi:ss'),'')");
|
|
|
+ while (rs.next()) {
|
|
|
+ Map<String, Object> map = new HashMap<>();
|
|
|
+ map.put("factory_code", configuration.getX5vendercode());
|
|
|
+ map.put("component_code", rs.getGeneralString("cd_varchar50_3"));
|
|
|
+ map.put("product_code", rs.getGeneralString("cd_varchar50_2"));
|
|
|
+ map.put("product_desc", rs.getGeneralString("cd_varchar200_1"));
|
|
|
+ map.put("product_class", rs.getGeneralString("cd_varchar50_4"));
|
|
|
+ map.put("product_level", rs.getInt("cd_number_1"));
|
|
|
+ map.put("common_status", rs.getGeneralString("cd_varchar50_6"));
|
|
|
+ map.put("stock_num", rs.getGeneralDouble("cd_number_2"));
|
|
|
+ map.put("stock_unit", rs.getGeneralString("cd_varchar50_5"));
|
|
|
+ map.put("ct_id", rs.getGeneralInt("ct_id"));
|
|
|
+ list.add(map);
|
|
|
+ }
|
|
|
+ data.put("data", list);
|
|
|
+ if (list.size() > 0) {
|
|
|
+ baseDao.execute("insert into XIAOMIDOCKINGLOG(ML_ID,ML_DATE,ML_CONTENT,ML_RESULT,ML_TYPE)" +
|
|
|
+ "values(XIAOMIDOCKINGLOG_seq.nextval,sysdate,'2上传失败!',to_char(sysdate,'yyyy-mm-dd HH24:mi:ss'),'')");
|
|
|
+ x5JsonHttpClient.post(data, configuration, baseDao, "ProductStock");
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|