From e997eee6b747c343e432783111371aca0bd89306 Mon Sep 17 00:00:00 2001
From: 李宇 <986321569@qq.com>
Date: Tue, 29 Jun 2021 13:15:24 +0800
Subject: [PATCH] 导出试剂
---
src/main/java/com/nanometer/smartlab/email/EmailSendSchedule.java | 114 ++++++++++++++++++++++++++++++++++-----------------------
1 files changed, 68 insertions(+), 46 deletions(-)
diff --git a/src/main/java/com/nanometer/smartlab/email/EmailSendSchedule.java b/src/main/java/com/nanometer/smartlab/email/EmailSendSchedule.java
index 25a3378..f9e8eae 100644
--- a/src/main/java/com/nanometer/smartlab/email/EmailSendSchedule.java
+++ b/src/main/java/com/nanometer/smartlab/email/EmailSendSchedule.java
@@ -1,6 +1,7 @@
package com.nanometer.smartlab.email;
import com.nanometer.smartlab.entity.EmailStatus;
+import com.nanometer.smartlab.entity.OpeWarehouseReserve;
import com.nanometer.smartlab.entity.SysReagent;
import com.nanometer.smartlab.entity.enumtype.EmailSendStatus;
import com.nanometer.smartlab.exception.BusinessException;
@@ -25,6 +26,13 @@
private OpeOrderService opeOrderService;
private static Logger logger = Logger.getLogger(EmailSendSchedule.class);
+
+ @Resource
+ private SysReagentService sysReagentService;
+ @Resource
+ private OpeWarehouseReserveService opeWarehouseReserveService;
+ @Resource
+ private SysUserService userService;
@Scheduled(fixedDelayString = "${emailSend.schedule.delay}")
public void EmailSendSchedule(){
@@ -61,57 +69,71 @@
// @Scheduled(cron = "0/5 * * * * ?") //每隔5秒执行一次
- @Scheduled(cron = "0 0 8 * * ?") //每天8点执行一次
+ @Scheduled(cron = "0 0 8 * * ?")//每天8点执行一次
public void EmailSendStock(){
- List<String> revicerList = new ArrayList<>();
-
+ //收件人为人员角色为库管员的邮箱
+ List<String> revicerList = userService.getLibrarianEmail();
+ //先查试剂表 安全库存大于0,然后去查库存,实际库存小于安全库存的列表
List<SysReagent> sysReagentList = new ArrayList<>();
-
-
- StringBuffer content = new StringBuffer("<html><body>");
- content.append("<div style=\"line-height:1.7;color:#000000;font-size:14px;font-family:Arial\">");
- content.append("<table border=\"1\">");
- content.append("<tbody>");
- content.append("<tr>");
- content.append("<th>试剂名称</th>");
- content.append("<th>产品编号</th>");
- content.append("<th>CAS</th>");
- content.append("<th>试剂类型</th>");
- content.append("<th>供应商</th>");
- content.append("<th>厂家</th>");
- content.append("<th>规格</th>");
- content.append("<th>包装</th>");
- content.append("<th>安全库存</th>");
- content.append("<th>实际库存</th>");
- content.append("</tr>");
- for (SysReagent sysReagent : sysReagentList){
- content.append("<tr>");
- content.append("<td>"+sysReagent.getName()+"</td>");
- content.append("<td>"+sysReagent.getProductSn()+"</td>");
- content.append("<td>"+sysReagent.getCas()+"</td>");
- content.append("<td>"+sysReagent.getReagentType()+"</td>");
- content.append("<td>"+sysReagent.getSupplierName()+"</td>");
- content.append("<td>"+sysReagent.getProductHomeName()+"</td>");
- content.append("<td>"+sysReagent.getReagentFormat()+"</td>");
- content.append("<td>"+sysReagent.getReagentUnit()+"</td>");
- //content.append("<td>"+sysReagent+"</td>");安全库存
- //content.append("<td>"+sysReagent+"</td>");实际库存
- content.append("</tr>");
+ //已经填写安全库存的试剂
+ List<SysReagent> alreadyFillIn = sysReagentService.selectReagentSafetyNum();
+ if (alreadyFillIn.size() > 0) {
+ for (SysReagent reagent : alreadyFillIn) {
+ int actualNum = opeWarehouseReserveService.countByReagentId(reagent.getId());
+ if (reagent.getSafetynum() > actualNum) {
+ reagent.setActualnum(actualNum);
+ sysReagentList.add(reagent);
+ }
+ }
}
- content.append("</tbody></table></div>");
- content.append("</body></html>");
+ if(sysReagentList.size() > 0 && revicerList.size() > 0 ){
+ StringBuffer content = new StringBuffer("<html><body>");
+ content.append("<div style=\"line-height:1.7;color:#000000;font-size:14px;font-family:Arial\">");
+ content.append("<table border=\"1\">");
+ content.append("<tbody>");
+ content.append("<tr>");
+ content.append("<th>试剂名称</th>");
+ content.append("<th>产品编号</th>");
+ content.append("<th>CAS</th>");
+ content.append("<th>试剂类型</th>");
+ content.append("<th>供应商</th>");
+ content.append("<th>厂家</th>");
+ content.append("<th>规格</th>");
+ content.append("<th>包装</th>");
+ content.append("<th>安全库存</th>");
+ content.append("<th>实际库存</th>");
+ content.append("</tr>");
+ for (SysReagent sysReagent : sysReagentList){
+ content.append("<tr>");
+ content.append("<td>"+sysReagent.getName()+"</td>");
+ content.append("<td>"+sysReagent.getProductSn()+"</td>");
+ content.append("<td>"+sysReagent.getCas()+"</td>");
- try {
- EmailSend.sendArrivalEmail(revicerList,content.toString());
- // 发送成功,更新邮件发送状态为:已发送
- } catch (BusinessException e) {
- // 发送失败,更新邮件发送状态为:发送失败
- logger.warn("操作失败。", e);
- } catch (Exception e) {
- logger.error(e);
+ content.append("<td>"+sysReagent.getReagentType()+"</td>");//
+ content.append("<td>"+sysReagent.getSupplierName()+"</td>");
+
+ content.append("<td>"+sysReagent.getProductHomeName()+"</td>");
+
+ content.append("<td>"+sysReagent.getReagentFormat()+"</td>");//
+
+ content.append("<td>"+sysReagent.getReagentUnit()+"</td>");//
+ content.append("<td>"+sysReagent.getSafetynum()+"</td>");
+ content.append("<td>"+sysReagent.getActualnum()+"</td>");
+ content.append("</tr>");
+ }
+ content.append("</tbody></table></div>");
+ content.append("</body></html>");
+
+ try {
+ EmailSend.sendArrivalEmail(revicerList,content.toString());
+ // 发送成功,更新邮件发送状态为:已发送
+ } catch (BusinessException e) {
+ // 发送失败,更新邮件发送状态为:发送失败
+ logger.warn("操作失败。", e);
+ } catch (Exception e) {
+ logger.error(e);
+ }
}
}
-
-
}
--
Gitblit v1.9.2