|
@@ -1,7 +1,10 @@
|
|
|
package com.lc.ibps.platform.plan.job;
|
|
package com.lc.ibps.platform.plan.job;
|
|
|
|
|
|
|
|
|
|
+import com.lc.ibps.base.core.util.AppUtil;
|
|
|
|
|
+import com.lc.ibps.base.core.util.BeanUtils;
|
|
|
import com.lc.ibps.base.core.util.JacksonUtil;
|
|
import com.lc.ibps.base.core.util.JacksonUtil;
|
|
|
import com.lc.ibps.base.core.util.string.StringUtil;
|
|
import com.lc.ibps.base.core.util.string.StringUtil;
|
|
|
|
|
+import com.lc.ibps.base.framework.table.ICommonDao;
|
|
|
import com.lc.ibps.components.quartz.BaseJob2;
|
|
import com.lc.ibps.components.quartz.BaseJob2;
|
|
|
import org.quartz.JobDataMap;
|
|
import org.quartz.JobDataMap;
|
|
|
import org.quartz.JobExecutionContext;
|
|
import org.quartz.JobExecutionContext;
|
|
@@ -10,6 +13,9 @@ import org.slf4j.LoggerFactory;
|
|
|
|
|
|
|
|
import java.text.SimpleDateFormat;
|
|
import java.text.SimpleDateFormat;
|
|
|
import java.util.Date;
|
|
import java.util.Date;
|
|
|
|
|
+import java.util.List;
|
|
|
|
|
+import java.util.Map;
|
|
|
|
|
+import java.util.UUID;
|
|
|
|
|
|
|
|
public class EquipmentMaintenancePlanJob extends BaseJob2 {
|
|
public class EquipmentMaintenancePlanJob extends BaseJob2 {
|
|
|
|
|
|
|
@@ -29,28 +35,67 @@ public class EquipmentMaintenancePlanJob extends BaseJob2 {
|
|
|
planDate = planDateParam;
|
|
planDate = planDateParam;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ String querySql = "SELECT * FROM (SELECT " +
|
|
|
|
|
+ " YEAR('"+planDate+"') AS ji_hua_nian_du_ ," +
|
|
|
|
|
+ " CASE device.wei_hu_zhou_qi_c_ " +
|
|
|
|
|
+ " WHEN '日保养' THEN DATE_FORMAT('"+planDate+"', '%j') " +
|
|
|
|
|
+ " WHEN '周保养' THEN DATE_FORMAT('"+planDate+"', '%u') " +
|
|
|
|
|
+ " WHEN '月保养' THEN MONTH('"+planDate+"') " +
|
|
|
|
|
+ " WHEN '季度保养' THEN QUARTER('"+planDate+"') " +
|
|
|
|
|
+ " WHEN '半年保养' THEN IF(MONTH('"+planDate+"')-6>0,2,1) "+
|
|
|
|
|
+ " WHEN '年保养' THEN YEAR('"+planDate+"') " +
|
|
|
|
|
+ " END AS period_num,device.wei_hu_zhou_qi_c_ as zhu_zhou_qi_ ,device.id_ as she_bei_bian_hao_,device.bian_zhi_bu_men_, " +
|
|
|
|
|
+ " device.she_bei_ming_cheng_ as she_bei_ming_chen,device.she_bei_shi_bie_h as ri_qi_,device.cun_fang_di_dian_ as sheng_xiao_ri_qi_, " +
|
|
|
|
|
+ " jhb.id_ as ji_hua_zong_wai_j,jhzb.id_ as ji_hua_wai_jian_ ,device.wei_hu_fang_shi_ as wei_hu_gang_wei_ , device.di_dian_" +
|
|
|
|
|
+ " FROM `t_mjsbwhjhb` jhb,`t_mjsbwhjhzb` jhzb,`v_device_devicemaintenance` device " +
|
|
|
|
|
+ " WHERE jhb.shi_fou_guo_shen_='已完成' AND jhb.zhi_xing_zhuang_t='正常' " +
|
|
|
|
|
+ " AND jhb.id_ = jhzb.parent_id_ " +
|
|
|
|
|
+ " AND jhzb.she_bei_bian_hao_ = device.id_) plan " +
|
|
|
|
|
+ " WHERE NOT EXISTS (SELECT 1 FROM `t_mjsbwhbyjlby` jlb WHERE jlb.she_bei_bian_hao_ = plan.she_bei_bian_hao_ AND jlb.zhu_zhou_qi_ = plan.zhu_zhou_qi_ " +
|
|
|
|
|
+ " AND jlb.period_num = plan.period_num AND jlb.ji_hua_nian_du_=plan.ji_hua_nian_du_)";
|
|
|
|
|
|
|
|
-// SELECT * FROM (SELECT
|
|
|
|
|
-// YEAR('2024-1-7') AS plan_year,
|
|
|
|
|
-// CASE device.wei_hu_zhou_qi_c_
|
|
|
|
|
-// WHEN '日保养' THEN DATE_FORMAT('2024-1-7', '%j')
|
|
|
|
|
-// WHEN '周保养' THEN DATE_FORMAT('2024-1-7', '%u')
|
|
|
|
|
-// WHEN '月保养' THEN MONTH('2024-1-7')
|
|
|
|
|
-// WHEN '季度保养' THEN QUARTER( '2024-1-7')
|
|
|
|
|
-// WHEN '年保养' THEN YEAR('2024-1-7')
|
|
|
|
|
-// END AS period_num,device.wei_hu_zhou_qi_c_ ,device.id_
|
|
|
|
|
-// FROM `t_mjsbwhjhb` jhb,`t_mjsbwhjhzb` jhzb,`v_device_devicemaintenance` device
|
|
|
|
|
-// WHERE jhb.shi_fou_guo_shen_='已完成' AND jhb.zhi_xing_zhuang_t='正常'
|
|
|
|
|
-// AND jhb.id_ = jhzb.parent_id_
|
|
|
|
|
-// AND jhzb.she_bei_bian_hao_ = device.id_) plan
|
|
|
|
|
-// WHERE NOT EXISTS (SELECT 1 FROM `t_mjsbwhbyjlby` jlb WHERE jlb.she_bei_bian_hao_ = plan.id_ AND jlb.zhu_zhou_qi_ = plan.wei_hu_zhou_qi_c_ AND jlb.period_num = plan.period_num AND jlb.ji_hua_nian_du_=plan.plan_year);
|
|
|
|
|
|
|
+ ICommonDao<?> commonDao = AppUtil.getBean(ICommonDao.class);
|
|
|
|
|
+ List<Map<String, Object>> list = (List<Map<String, Object>>) commonDao.query(querySql);
|
|
|
|
|
|
|
|
|
|
+ if (BeanUtils.isNotEmpty(list)){
|
|
|
|
|
+ logger.warn("设备维护添加数据总数:{}",list.size());
|
|
|
|
|
+ int success = 0;int error = 0;
|
|
|
|
|
+ for (Map<String, Object> map : list) {
|
|
|
|
|
+ try {
|
|
|
|
|
+ map.put("ji_hua_shi_jian_", planDate);
|
|
|
|
|
+ String uid = UUID.randomUUID().toString().replace("-", "");
|
|
|
|
|
+ commonDao.execute(this.buildInsertSql(map, uid));
|
|
|
|
|
+ success = success + 1;
|
|
|
|
|
+ }catch (Exception e){
|
|
|
|
|
+ error = error + 1;
|
|
|
|
|
+ logger.error("设备维护添加数据异常,异常数据she_bei_bian_hao_:{}",map.get("she_bei_bian_hao_"));
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ logger.warn("添加设备维护保养数据正常数:{}",success );
|
|
|
|
|
+ logger.warn("添加设备维护保养数据异常数:{}",error);
|
|
|
|
|
+ }else{
|
|
|
|
|
+ logger.warn("未查询到需要添加设备维护保养的数据");
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
|
|
|
|
|
- /*
|
|
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
- Step1. fetch records from above sql.
|
|
|
|
|
- step2. insert into t_mjsbwhbyjlby and t_mjsbwhbyjlzby
|
|
|
|
|
- */
|
|
|
|
|
|
|
+ private String buildInsertSql(Map<String, Object> map, String uuid){
|
|
|
|
|
+ map.put("id_", uuid);
|
|
|
|
|
+ map.put("shi_fou_guo_shen_", "待处理");
|
|
|
|
|
+ map.put("create_time_", new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
|
|
|
|
|
+ StringBuilder sql = new StringBuilder("insert into t_mjsbwhbyjlby (");
|
|
|
|
|
+ for (Object key : map.keySet()) {
|
|
|
|
|
+ sql.append(key).append(",");
|
|
|
|
|
+ }
|
|
|
|
|
+ sql.delete(sql.length()-1,sql.length());
|
|
|
|
|
+ sql.append(") values(");
|
|
|
|
|
+ for (Object val : map.values()) {
|
|
|
|
|
+ sql.append("'").append(val).append("'").append(",");
|
|
|
|
|
+ }
|
|
|
|
|
+ sql.delete(sql.length()-1,sql.length());
|
|
|
|
|
+ sql.append(")");
|
|
|
|
|
+ return sql.toString();
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
}
|
|
}
|