瀏覽代碼

Merge branch 'matser' of http://119.23.210.103:3000/wy/zdqy_ibps into matser

huangws 9 月之前
父節點
當前提交
42dc672cfc

+ 8 - 4
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/business/service/impl/AuditServiceImpl.java

@@ -51,10 +51,10 @@ public class AuditServiceImpl implements AuditService {
         String sql = "select p.id_,p.bian_zhi_ren_,e.name_,p.bian_zhi_bu_men_,d.name_ as dept_name_,p.pei_xun_nei_rong_,p.shi_fou_guo_shen_," +
                 "date_format(p.pei_xun_shi_jian_,'%%Y-%%m-%%d') pei_xun_shi_jian_,date_format(p.pei_xun_jie_shu_s,'%%Y-%%m-%%d')  " +
                 " pei_xun_jie_shu_s,p.pei_xun_ren_yuan_,p.pei_xun_di_dian_,p.pei_xun_lao_shi_,p.di_dian_," +
-                "IF(pei_xun_shi_jian_<=DATE_FORMAT(date_add(now(), interval 1 week),'%%Y-%%m-%%d'),'1','0') as type_ from t_rypxcjb p " +
+                "IF(pei_xun_shi_jian_<=DATE_FORMAT(date_add(now(), interval 1 week),'%%Y-%%m-%%d'),'1','0') as type_,p.tui_song_biao_zhi from t_rypxcjb p " +
                 "left join ibps_party_employee e on e.id_=p.bian_zhi_ren_ " +
                 "left join ibps_party_position d on d.id_=p.bian_zhi_bu_men_ " +
-                "where p.id_ in(%s)";
+                "where p.id_ in(%s) and (p.tui_song_biao_zhi !='yes' or p.tui_song_biao_zhi is null)";
         sql = String.format(sql, String.join(",", records));
         List<Map<String, Object>> pxList = (List<Map<String, Object>>) commonDao.query(sql);
 
@@ -125,6 +125,8 @@ public class AuditServiceImpl implements AuditService {
                     newsPo.setKey(id);
                     newsMgrService.save(newsPo);
                     log.warn("培训相关的信息填写完整,发布日历和公告,培训记录ID={}",id);
+                    //推送成功后修改推送标志为yes
+                    commonDao.execute("update t_rypxcjb set tui_song_biao_zhi='yes' where id_= '"+id+"'");
                 }
             }
         }
@@ -136,10 +138,10 @@ public class AuditServiceImpl implements AuditService {
         String sql = "select p.id_,p.bian_zhi_ren_,e.name_,p.bian_zhi_bu_men_,d.name_ as dept_name_,p.pei_xun_nei_rong_,p.pei_xun_zhuang_ta," +
                 "date_format(p.pei_xun_shi_jian_,'%%Y-%%m-%%d') pei_xun_shi_jian_,date_format(p.pei_xun_jie_shu_s,'%%Y-%%m-%%d')  " +
                 " pei_xun_jie_shu_s,p.pei_xun_ren_yuan_,p.pei_xun_di_dian_,p.pei_xun_lao_shi_,p.di_dian_," +
-                "IF(pei_xun_shi_jian_<=DATE_FORMAT(date_add(now(), interval 1 week),'%%Y-%%m-%%d'),'1','0') as type_ from t_lhrypxjlb p " +
+                "IF(pei_xun_shi_jian_<=DATE_FORMAT(date_add(now(), interval 1 week),'%%Y-%%m-%%d'),'1','0') as type_,p.tui_song_biao_zhi from t_lhrypxjlb p " +
                 "left join ibps_party_employee e on e.id_=p.bian_zhi_ren_ " +
                 "left join ibps_party_position d on d.id_=p.bian_zhi_bu_men_ " +
-                "where p.id_ in(%s)";
+                "where p.id_ in(%s) and (p.tui_song_biao_zhi !='yes' or p.tui_song_biao_zhi is null)";
         sql = String.format(sql, String.join(",", records));
         List<Map<String, Object>> pxList = (List<Map<String, Object>>) commonDao.query(sql);
 
@@ -210,6 +212,8 @@ public class AuditServiceImpl implements AuditService {
                     newsPo.setKey(id);
                     newsMgrService.save(newsPo);
                     log.warn("培训相关的信息填写完整,发布日历和公告,培训记录ID={}",id);
+                    //推送成功后修改推送标志为yes
+                    commonDao.execute("update t_lhrypxjlb set tui_song_biao_zhi='yes' where id_= '"+id+"'");
                 }
             }
         }

+ 1 - 1
ibps-provider-root/modules/provider-platform/src/main/java/com/lc/ibps/platform/plan/job/PersonnelTrainJob.java

@@ -131,7 +131,7 @@ public class PersonnelTrainJob extends BaseJob2 {
                     newsPo.setPublicItem("notices");
                     newsPo.setPublic0("Y");
                     newsPo.setStatus("publish");
-                    newsPo.setTitle("【"+ peiXunNeiRong +"】的培训通知");
+                    newsPo.setTitle("("+ peiXunNeiRong +")的培训通知-");
                     newsPo.setUserId(userId);
                     newsPo.setUserName(userName);
                     newsPo.setType(didian);

+ 76 - 0
ibps-provider-root/modules/provider-platform/src/main/java/com/lc/ibps/platform/plan/job/SampleDisposalJob.java

@@ -0,0 +1,76 @@
+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.framework.table.ICommonDao;
+import com.lc.ibps.cloud.message.util.MessageQueueProductorUtil;
+import org.quartz.JobExecutionContext;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Map;
+
+public class SampleDisposalJob extends AbstractJob {
+
+    private static final Logger logger = LoggerFactory.getLogger(SampleDisposalJob.class);
+    private ICommonDao<?> commonDao = AppUtil.getBean(ICommonDao.class);
+
+    @Override
+    public void executeJob(JobExecutionContext context) throws Exception {
+        //获取接收人及地点
+        List<Map<String, Object>> recipient = recipient();
+        if(BeanUtils.isNotEmpty(recipient)){
+            //step1: 查询出所有需要发消息的数据
+            String diDian = recipient.get(0).get("di_dian_").toString();
+            String jieShouRenYuan = recipient.get(0).get("jie_shou_ren_yuan").toString();
+            List<Map<String, Object>> queryParam = queryData(diDian);
+            //开始发送消息
+            sendMessage(queryParam,jieShouRenYuan);
+        }
+    }
+
+    private List<Map<String, Object>> queryData(String diDian) {
+        String querySql = " select id_,qi_ta_,chu_li_shu_liang_,di_dian_,shi_fou_guo_shen_,nao_ji_ye_ from t_jyhypjlb where shi_fou_guo_shen_ = '待弃置' and di_dian_ = '%s'";
+        querySql = String.format(querySql, diDian);
+        List<Map<String, Object>> list = (List<Map<String, Object>>) commonDao.query(querySql);
+        LocalDate currentDate = LocalDate.now(); //获取当前时间不含时间
+        ArrayList<Map<String, Object>> resList = new ArrayList<>();
+        for (Map<String, Object> item:list) {
+            String xiaoQi = item.get("nao_ji_ye_").toString();
+            String jieZhiRiQi = xiaoQi.substring(0, 10);
+            LocalDate expiryDate = LocalDate.parse(jieZhiRiQi, DateTimeFormatter.ofPattern("yyyy-MM-dd"));
+            if(currentDate.isAfter(expiryDate)){
+                resList.add(item);
+            }
+        }
+        return resList;
+    }
+    private void sendMessage(List<Map<String, Object>> list,String userIDs){
+        if(BeanUtils.isNotEmpty(list) && BeanUtils.isNotEmpty(userIDs)){
+            //转换接收人
+            List<String> receiver = Arrays.asList(userIDs.split(","));
+            String title = "【检验后标本的保存和弃置记录表】中存在已到期的标本,请及时处理";
+            String neiRong ="以下样本即将过期:<br>";
+            for (Map<String,Object> item : list) {
+                //拼接内容
+                if(neiRong.equals("以下样本即将过期:<br>")){
+                    neiRong = neiRong + "样品类别:" + item.get("qi_ta_").toString() + "-截止日期:" + item.get("nao_ji_ye_").toString();
+                }else{
+                    neiRong = neiRong + "<br>" + "样品类别:" + item.get("qi_ta_").toString() + "-截止日期:" + item.get("nao_ji_ye_").toString();
+                }
+            }
+            MessageQueueProductorUtil.send("SampleDisposalJob", "system" , "inner", receiver,null , title, neiRong, null, null, null);
+        }
+    }
+
+    private List<Map<String, Object>> recipient(){
+        String querySql = "select di_dian_ ,jie_shou_ren_yuan FROM t_jyhbbbchqzjsry LIMIT 1";
+        List<Map<String, Object>> list = (List<Map<String, Object>>) commonDao.query(querySql);
+        return list;
+    }
+}