From db1d7484b7114f9f91decef684280866dac34dfe Mon Sep 17 00:00:00 2001
From: “linengliang” <vanSuperEnergy@163.com>
Date: 星期日, 29 十月 2023 23:30:09 +0800
Subject: [PATCH] 消息加台账导入

---
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysAnnouncementSendServiceImpl.java |    7 
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysAnnouncementSendMapper.java            |    4 
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysAnnouncementSendMapper.xml         |   35 +++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamEquipmentMapper.xml                                      |    3 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EquipmentImportVo.java                                          |   66 +++-----
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/ThirdMaintenaceAlart.java                                          |   70 ++++++++
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysAnnouncementSendService.java         |    7 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java                                 |  199 +++++++++++++++++-------
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysAnnouncementSend.java                  |    8 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/Equipment.java                                                  |    5 
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/SysAnnouncementSendController.java    |   52 +++++-
 11 files changed, 327 insertions(+), 129 deletions(-)

diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java
index b1824b6..dce198e 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java
@@ -18,6 +18,9 @@
 import org.jeecg.common.system.base.entity.SysUpload;
 import org.jeecg.common.system.query.QueryGenerator;
 import org.jeecg.common.system.vo.LoginUser;
+import org.jeecg.modules.base.entity.Constructor;
+import org.jeecg.modules.base.service.IConstructorService;
+import org.jeecg.modules.base.service.IFactoryModelService;
 import org.jeecg.modules.eam.entity.*;
 import org.jeecg.modules.eam.model.DepartVo;
 import org.jeecg.modules.eam.service.*;
@@ -29,6 +32,8 @@
 
 import org.jeecg.common.system.base.controller.JeecgController;
 
+import org.jeecg.modules.system.entity.SysDepart;
+import org.jeecg.modules.system.service.ISysDepartService;
 import org.jeecgframework.poi.excel.ExcelImportUtil;
 import org.jeecgframework.poi.excel.entity.ImportParams;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -74,8 +79,6 @@
 	 @Autowired
 	 private IProcessParametersTemplateService processParametersTemplateService;
 
-
-
 	 @Autowired
 	 private ISysBaseAPI sysBaseApi;
 
@@ -99,6 +102,22 @@
 
 	 @Autowired
 	 private IEquipmentCategoryService equipmentCategoryService;
+
+	 @Autowired
+	 private ISysDepartService departService;
+
+	 @Autowired
+	 private ITeamService teamService;
+
+	 @Autowired
+	 private IConstructorService constructorService;
+
+	 @Autowired
+	 private IAreaService areaService;
+
+
+
+
 	/**
 	 * 鍒嗛〉鍒楄〃鏌ヨ
 	 *
@@ -543,119 +562,181 @@
 			 try {
 				 List<EquipmentImportVo> list = ExcelImportUtil.importExcel(file.getInputStream(), EquipmentImportVo.class, params);
 				 for(int i = 0;i<list.size();i++){
+					 Equipment equipment = new Equipment();
                      EquipmentImportVo equipmentImportVo = list.get(i);
-					 EquipmentCategory equipmentCategory = equipmentCategoryService.getOne(new QueryWrapper<EquipmentCategory>().eq("name",equipmentImportVo.getEquipmentCategoryName()),false);
+					 String equipmentCategoryName = equipmentImportVo.getEquipmentCategoryName();
+					 String useId = equipmentImportVo.getUseId();
+					 String areaId = equipmentImportVo.getFactoryModelId();
+					 String manageId = equipmentImportVo.getManageId();
+					 String constructorId = equipmentImportVo.getConstructorId();
+					 String teamId = equipmentImportVo.getTeamId();
                      if(StringUtils.isBlank(equipmentImportVo.getNum())){
 						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:缁熶竴缂栫爜缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
 						 exceptionNum++;
+						 continue;
 					 }
                      else if(StringUtils.isBlank(equipmentImportVo.getName())){
 						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璁惧鍚嶇О缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
 						 exceptionNum++;
-					 }
-                     else if(StringUtils.isBlank(equipmentImportVo.getUseId())){
-						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:浣跨敤閮ㄩ棬缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
-						 exceptionNum++;
-					 }
-//                     else if(StringUtils.isBlank(equipmentImportVo.getEquipmentUda1())){
-//						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:宸ュ尯缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
-//						 exceptionNum++;
-//					 }
-                     else if(StringUtils.isBlank(equipmentImportVo.getManageId())){
-						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:缁存姢閮ㄩ棬缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
-						 exceptionNum++;
+						 continue;
 					 }
                      else if(StringUtils.isBlank(equipmentImportVo.getTeamId())){
 						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:缁翠慨鐝粍缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
 						 exceptionNum++;
+						 continue;
 					 }
                      else if(StringUtils.isBlank(equipmentImportVo.getEquipmentImportanceId())){
 						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:ABC鏍囪瘑缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
 						 exceptionNum++;
-					 }
-                     else if(StringUtils.isBlank(equipmentImportVo.getEquipmentCategoryName())){
-						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璁惧鍒嗙被缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
-						 exceptionNum++;
+						 continue;
 					 }
                      else if(StringUtils.isBlank(equipmentImportVo.getEquipmentStatus())){
 						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璁惧鐘舵�佺己澶�,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
 						 exceptionNum++;
+						 continue;
 					 }
 					 else if(StringUtils.isBlank(equipmentImportVo.getTechnologyStatus())){
-						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璁惧鎶�鏈己澶�,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
+						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璁惧鎶�鏈姸鎬佺己澶�,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
 						 exceptionNum++;
+						 continue;
 					 }
-					 else if(StringUtils.isBlank(equipmentImportVo.getFactoryModelId())){
-						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:杞﹂棿缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
+					 else if(StringUtils.isBlank(equipmentImportVo.getModel())){
+						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璁惧鍨嬪彿缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
 						 exceptionNum++;
+						 continue;
 					 }
-					 else if(StringUtils.isBlank(equipmentImportVo.getWorkCenterId())){
-						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:浜х嚎缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
+					 else if(StringUtils.isBlank(useId)){
+						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:浣跨敤閮ㄩ棬缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
 						 exceptionNum++;
+						 continue;
 					 }
-					 else if(ObjectUtils.isNotNull(equipmentImportVo.getWarrantyStart())){
-						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璐ㄤ繚寮�濮嬫棩鏈熺己澶�,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
+					 else if(StringUtils.isBlank(areaId)){
+						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:宸ュ尯缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
 						 exceptionNum++;
+						 continue;
 					 }
-					 else if(StringUtils.isBlank(equipmentImportVo.getPropertyStatus())){
-						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璧勪骇鐘舵�佺己澶�,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
+					 else if(StringUtils.isBlank(manageId)){
+						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:缁存姢閮ㄩ棬缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
 						 exceptionNum++;
+						 continue;
 					 }
-                     //闈炲繀濉」
-//                     else if(StringUtils.isBlank(equipmentImportVo.getEquipmentUda5())){
+					 else if(StringUtils.isBlank(equipmentCategoryName)){
+						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璁惧鍒嗙被缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
+						 exceptionNum++;
+						 continue;
+					 }
+					 else if(StringUtils.isBlank(teamId)){
+						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:缁翠慨鐝粍缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
+						 exceptionNum++;
+						 continue;
+					 }
+					 //闈炲繀濉」
+					 // else if(ObjectUtils.isNotNull(equipmentImportVo.getWarrantyStart())){
+//						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璐ㄤ繚寮�濮嬫棩鏈熺己澶�,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
+//						 exceptionNum++;
+//					 }
+//					 else if(StringUtils.isBlank(equipmentImportVo.getPropertyStatus())){
+//						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璧勪骇鐘舵�佺己澶�,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
+//						 exceptionNum++;
+//					 }
+//                   else if(StringUtils.isBlank(equipmentImportVo.getEquipmentUda5())){
 //						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:鍔熻兘浣嶇疆缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
 //						 exceptionNum++;
 //					 }
-//                     else if(StringUtils.isBlank(equipmentImportVo.getLocation())){
+//                   else if(StringUtils.isBlank(equipmentImportVo.getLocation())){
 //						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:瀹夎浣嶇疆缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
 //						 exceptionNum++;
 //					 }
-//                     else if(StringUtils.isBlank(equipmentImportVo.getLeaveFactoryDate())){
+//                   else if(StringUtils.isBlank(equipmentImportVo.getLeaveFactoryDate())){
 //						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:鍑哄巶鏃ユ湡缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
 //						 exceptionNum++;
 //					 }
-//                     else if(StringUtils.isBlank(equipmentImportVo.getProjectApprovalNo())){
+//                   else if(StringUtils.isBlank(equipmentImportVo.getProjectApprovalNo())){
 //						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:绔嬮」鍗″彿缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
 //						 exceptionNum++;
 //					 }
-//                     else if(StringUtils.isBlank(equipmentImportVo.getFundSource())){
+//                   else if(StringUtils.isBlank(equipmentImportVo.getFundSource())){
 //						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璧勯噾鏉ユ簮缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
 //						 exceptionNum++;
 //					 }
-//                     else if(StringUtils.isBlank(equipmentImportVo.getAcceptanceCheckDate())){
+//                   else if(StringUtils.isBlank(equipmentImportVo.getAcceptanceCheckDate())){
 //						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:楠屾敹鏃ユ湡缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
 //						 exceptionNum++;
 //					 }
-//                     else if(StringUtils.isBlank(equipmentImportVo.getLeaveFactoryDate())){
+//                   else if(StringUtils.isBlank(equipmentImportVo.getLeaveFactoryDate())){
 //						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:鍑哄巶鏃ユ湡缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
 //						 exceptionNum++;
 //					 }
-//                     else if(StringUtils.isBlank(equipmentImportVo.getFactoryNo())){
+//                   else if(StringUtils.isBlank(equipmentImportVo.getFactoryNo())){
 //						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:鍑哄巶缂栧彿缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
 //						 exceptionNum++;
 //					 }
-//                     else if( StringUtils.isBlank(equipmentImportVo.getConstructorId())){
+//                   else if( StringUtils.isBlank(equipmentImportVo.getConstructorId())){
 //						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璧勪骇鍒堕�犲晢缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
 //						 exceptionNum++;
 //					 }
-                     else if(StringUtils.isBlank(equipmentImportVo.getModel())){
-						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璁惧鍨嬪彿缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
-						 exceptionNum++;
-					 }
-                     else if(StringUtils.isBlank(equipmentImportVo.getSpecification())){
-						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璁惧瑙勬牸缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
-						 exceptionNum++;
-					 }
+//                   else if(StringUtils.isBlank(equipmentImportVo.getSpecification())){
+//						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璁惧瑙勬牸缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
+//						 exceptionNum++;
+//					 }
 //					 else if(StringUtils.isBlank(equipmentImportVo.getGpo())){
 //						 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璁惧鍔熺巼缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;";
 //						 exceptionNum++;
 //					 }
-					 else if(ObjectUtils.isNull(equipmentCategory))
-					       {
-							  exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璇ヨ澶囨墍灞炵被鍒笉瀛樺湪锛岃鍏堢淮鎶よ澶囩被鍒�;";
-							  exceptionNum++;
-						   }
 					 else{
+						 SysDepart use = departService.getOne(new QueryWrapper<SysDepart>().eq("depart_name",useId.trim()),false);
+						 if(ObjectUtils.isNull(useId)){
+							 equipment.setUseId(use.getId());
+						 }else {
+							 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:涓嶅瓨鍦ㄨ浣跨敤閮ㄩ棬,璇风淮鎶ら儴闂ㄦ暟鎹悗鍐嶅鍏�;";
+							 exceptionNum++;
+							 continue;
+						 }
+						 Area area = areaService.getOne(new QueryWrapper<Area>().eq("name",areaId.trim()));
+						 if(ObjectUtils.isNotNull(area)){
+							 equipment.setFactoryModelId(area.getId());
+						 }else {
+							 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:涓嶅瓨鍦ㄨ宸ュ尯,璇风淮鎶ゅ伐鍖烘暟鎹悗鍐嶅鍏�;";
+							 exceptionNum++;
+							 continue;
+						 }
+						 SysDepart manage = departService.getOne(new QueryWrapper<SysDepart>().eq("depart_name",manageId.trim()));
+						 if(ObjectUtils.isNotNull(manage)){
+							 equipment.setManageId(manage.getId());
+						 }else{
+							 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:涓嶅瓨鍦ㄨ缁存姢閮ㄩ棬,璇峰厛缁存姢閮ㄩ棬鏁版嵁鍚庡啀瀵煎叆;";
+							 exceptionNum++;
+							 continue;
+						 }
+						 EquipmentCategory equipmentCategory = equipmentCategoryService.getOne(new QueryWrapper<EquipmentCategory>().eq("name",equipmentCategoryName.trim()),false);
+						 if(ObjectUtils.isNotNull(equipmentCategory)){
+						 	equipment.setEquipmentCategoryId(equipmentCategory.getId());
+						 }
+						 else {
+							 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:涓嶅瓨鍦ㄨ璁惧鍒嗙被,璇峰厛缁存姢璁惧鍒嗙被鏁版嵁鍚庡啀瀵煎叆;";
+							 exceptionNum++;
+							 continue;
+						 }
+						 Team team = teamService.getOne(new QueryWrapper<Team>().eq("name",teamId.trim()),false);
+						 if(ObjectUtils.isNotNull(team)){
+							 equipment.setTeamId(team.getId());
+						 }else {
+							 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:涓嶅瓨鍦ㄨ鐝粍,璇峰厛缁存姢鐝粍鏁版嵁鍚庡啀瀵煎叆;";
+							 exceptionNum++;
+							 continue;
+						 }
+						 if(StringUtils.isNotBlank(constructorId)){
+							 Constructor constructor = constructorService.getByName(constructorId.trim());
+							 if(ObjectUtils.isNotNull(constructor)){
+							 	equipment.setConstructorId(constructor.getId());
+							 }else {
+							 	constructor = new Constructor();
+							 	constructor.setName(constructorId);
+							 	constructor.setDelFlag(0);
+							 	constructorService.save(constructor);
+							 	equipment.setConstructorId(constructor.getId());
+							 }
+						 }
                          if(equipmentImportVo.getPropertyStatus().equals("warranty")){
 							 if(
 							 		ObjectUtils.isNull(equipmentImportVo.getWarrantyStart())
@@ -666,24 +747,19 @@
 							 }
 
 						 }else{
-							 Equipment oriEquipment = equipmentService.getOne(new QueryWrapper<Equipment>().eq("num",equipmentImportVo.getNum()),false);
+							 Equipment oriEquipment = equipmentService
+									 .getOne(new QueryWrapper<Equipment>()
+											 .eq("num",equipmentImportVo.getNum()),false);
 							 if(ObjectUtils.isNull(oriEquipment)){
-								 Equipment equipment = new Equipment();
 								 equipment.setNum(equipmentImportVo.getNum())
 										 .setName(equipmentImportVo.getName())
-										 .setUseId(equipmentImportVo.getUseId())
-										 .setEquipmentUda1(equipmentImportVo.getEquipmentUda1())
-										 .setManageId(equipmentImportVo.getManageId())
-										 .setTeamId(equipmentImportVo.getTeamId())
 										 .setTechnologyStatus(equipmentImportVo.getTechnologyStatus())
 										 .setEquipmentImportanceId(equipmentImportVo.getEquipmentImportanceId())
-										 .setEquipmentCategoryId(equipmentCategory.getId())
 										 .setSpecificEquipment(equipmentImportVo.getKeyEquipmentIdentification())
 										 .setSecurityConfiguration(equipmentImportVo.getSecurityConfiguration())
 										 .setCoolingSystem(equipmentImportVo.getCoolingSystem())
 										 .setFireExtinguisher(equipmentImportVo.getFireExtinguisher())
 										 .setFireExtinguisherValidityPeriod(equipmentImportVo.getFireExtinguisherValidityPeriod())
-										 .setOperatingSystem(equipmentImportVo.getOperatingSystem())
 										 .setSystem(equipmentImportVo.getSystem())
 										 .setPort(equipmentImportVo.getPort())
 										 .setCoordinateNum(equipmentImportVo.getCoordinateNum())
@@ -697,12 +773,9 @@
 										 .setFundSource(equipmentImportVo.getFundSource())
 										 .setAcceptanceCheckDate(equipmentImportVo.getAcceptanceCheckDate())
 										 .setFactoryNumber(equipmentImportVo.getFactoryNumber())
-										 .setConstructorId(equipmentImportVo.getConstructorId())
 										 .setSourceCountry(equipmentImportVo.getSourceCountry())
 										 .setModel(equipmentImportVo.getModel())
 										 .setSpecification(equipmentImportVo.getSpecification())
-										 .setFactoryModelId(equipmentImportVo.getFactoryModelId())
-										 .setWorkCenterId(equipmentImportVo.getWorkCenterId())
 										 .setPropertyStatus(equipmentImportVo.getPropertyStatus())
 										 .setWarrantyStart(equipmentImportVo.getWarrantyStart())
 										 .setWarrantyEnd(equipmentImportVo.getWarrantyEnd())
@@ -737,9 +810,9 @@
 							 }else {
 								 exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐ワ紝鍘熷洜锛氱粺涓�缂栫爜宸插瓨鍦紝鏁版嵁閲嶅瀵煎叆;";
 								 exceptionNum++;
+								 continue;
 							 }
 						 }
-
 					 }
 				 }
 				 if(exceptionNum!=0){
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/Equipment.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/Equipment.java
index 5269ef6..64a01fa 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/Equipment.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/Equipment.java
@@ -202,6 +202,7 @@
     private String precisionParametersTemplateId;
 
     @ApiModelProperty(value = "鎶�鏈姸鎬侀壌瀹氱被鍨嬶紙瀛楀吀technology_status_verification_type锛�")
+    @Dict(dicCode = "technology_status_verification_type")
     private String technologyStatusVerificationType;
 
     @ApiModelProperty(value = "鎶�鏈姸鎬侀壌瀹氬崟鎹�")
@@ -305,8 +306,8 @@
     private List<EquipmentProcessParameters> processEditTableList;
     @TableField(exist = false)
     private List<EquipmentPrecisionParameters> precisionEditTableList;
-    @Dict(dicCode = "id",dictTable = "mom_base_factory_model",dicText = "name")
-    @Excel(width = 15,dicCode = "id",dictTable = "mom_base_factory_model",dicText = "name",orderNum = "39", name = "杞﹂棿")
+    @Dict(dicCode = "id",dictTable = "mom_base_area",dicText = "name")
+    @Excel(width = 15,dicCode = "id",dictTable = "mom_base_area",dicText = "name",orderNum = "39", name = "宸ュ尯")
     private String factoryModelId;
     @Excel(width = 15,dicCode = "id",dictTable = "mom_base_work_center",dicText = "name",name = "浜х嚎",orderNum = "40")
     @Dict(dicCode = "id",dictTable = "mom_base_work_center",dicText = "name")
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EquipmentImportVo.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EquipmentImportVo.java
index cbe80f0..6cdce5b 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EquipmentImportVo.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EquipmentImportVo.java
@@ -14,37 +14,49 @@
 @Data
 @Accessors(chain = true)
 public class EquipmentImportVo {
+    @Excel(name = "璁惧鎵�灞炲垎绫�")
+    private String equipmentCategoryName;
+
     @Excel(name="缁熶竴缂栫爜")
     private String num;
 
     @Excel(name = "璁惧鍚嶇О")
     private String name;
 
-    @Excel(name = "浣跨敤閮ㄩ棬",dictTable = "sys_depart",dicCode = "id",dicText = "depart_name")
+    @Excel(name = "鍨嬪彿")
+    private String model;
+
+//    @Excel(name = "浣跨敤閮ㄩ棬",dictTable = "sys_depart",dicCode = "id",dicText = "depart_name")
     private String useId;
 
-    @Excel(name = "宸ュ尯")
-    private String equipmentUda1;
+//    @Excel(name = "宸ュ尯",dicCode = "id",dictTable = "mom_base_area",dicText = "name")
+    private String factoryModelId;
 
-    @Excel(name = "缁存姢閮ㄩ棬",dictTable = "sys_depart",dicCode = "id",dicText = "depart_name")
+//    @Excel(name = "缁存姢閮ㄩ棬",dictTable = "sys_depart",dicCode = "id",dicText = "depart_name")
     private String manageId;
 
-    @Excel(name = "缁翠慨鐝粍",dictTable = "mom_base_team",dicCode = "id",dicText = "name")
+//    @Excel(name = "缁翠慨鐝粍",dictTable = "mom_base_team",dicCode = "id"2,dicText = "name")
     private String teamId;
 
-    @Excel(name = "ABC鏍囪瘑",dicCode = "id",dictTable="mom_eam_equipment_importance",dicText="name")
+//    @Excel(name = "璧勪骇鍒堕�犲晢",dicCode = "id",dictTable="mom_base_constructor",dicText="name")
+    private String constructorId;
+
+    @Excel(name = "ABC鏍囪瘑",dicCode = "ABC-standard-result")
     private String equipmentImportanceId;
 
-    @Excel(name = "璁惧鎵�灞炲垎绫�")
-    private String equipmentCategoryName;
+    @Excel(name = "璁惧鐘舵��",dicCode = "equipment_status")
+    private String equipmentStatus;
 
-    @Excel(name = "鍏抽敭璁惧鏍囪瘑")
+    @Excel(name = "鎶�鏈姸鎬�",dicCode = "technology_status")
+    private String technologyStatus;
+
+    @Excel(name = "鍏抽敭璁惧鏍囪瘑",dicCode = "specific_equipment")
     private String keyEquipmentIdentification;
 
-    @Excel(name = "瀹夊叏閰嶇疆")
-    private String securityConfiguration;
+    @Excel(name = "璧勪骇鐘舵��",dicCode = "property_status")
+    private String 	propertyStatus;
 
-    @Excel(name = "鍐峰嵈绯荤粺")
+    @Excel(name = "鍐峰嵈绯荤粺",dicCode = "cooling_system")
     private String coolingSystem;
 
     @Excel(name = "鐏伀鍣�")
@@ -52,9 +64,6 @@
 
     @Excel(name = "鐏伀鍣ㄦ湁鏁堟湡")
     private String fireExtinguisherValidityPeriod;
-
-    @Excel(name = "鎿嶄綔绯荤粺")
-    private String operatingSystem;
 
     @Excel(name = "绯荤粺")
     private String system;
@@ -64,9 +73,6 @@
 
     @Excel(name = "鍧愭爣鏁伴噺")
     private BigDecimal coordinateNum;
-
-    @Excel(name = "璁惧鐘舵��",dicCode = "equipment_status")
-    private String equipmentStatus;
 
     @Excel(name = "閲嶉噺")
     private String equipmentUda3;
@@ -95,14 +101,11 @@
     @Excel(name = "鍑哄巶缂栧彿")
     private String factoryNumber;
 
-    @Excel(name = "璧勪骇鍒堕�犲晢",dicCode = "id",dictTable="mom_base_constructor",dicText="name")
-    private String constructorId;
-
     @Excel(name = "璧勪骇鐨勬潵婧愬浗瀹�")
     private String sourceCountry;
 
-    @Excel(name = "鍨嬪彿")
-    private String model;
+    @Excel(name = "瀹夊叏閰嶇疆")
+    private String securityConfiguration;
 
     @Excel(name = "瑙勬牸")
     private String specification;
@@ -110,31 +113,14 @@
     @Excel(name = "鎬诲姛鐜�")
     private String gpo;
 
-    @Excel(name = "鎶�鏈姸鎬�",dicCode = "technology_status")
-    private String technologyStatus;
-
-    @Excel(dicCode = "id",dictTable = "mom_base_factory_model",dicText = "name", name = "杞﹂棿")
-    private String factoryModelId;
-
-    @Excel(dicCode = "id",dictTable = "mom_base_work_center",dicText = "name",name = "浜х嚎")
-    private String workCenterId;
-
     @Excel(name = "璐ㄤ繚寮�濮嬫棩鏈�",format = "yyyyMMdd")
     private Date warrantyStart;
 
     @Excel(name = "璐ㄤ繚缁撴潫鏃ユ湡",format = "yyyyMMdd")
     private Date warrantyEnd;
 
-    @Excel(dicCode = "property_status",name = "璧勪骇鐘舵��")
-    private String 	propertyStatus;
-
     @Excel(name = "涓嬫鎶�鏈姸鎬侀壌瀹氭椂闂�", width = 20, format = "yyyyMMdd")
     private Date  nextTechnologyStatusQualificationTime;
-
-
-
-
-
 
 
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/ThirdMaintenaceAlart.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/ThirdMaintenaceAlart.java
new file mode 100644
index 0000000..a0ccf5d
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/ThirdMaintenaceAlart.java
@@ -0,0 +1,70 @@
+package org.jeecg.modules.eam.job;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import org.hibernate.annotations.Source;
+import org.jeecg.common.api.dto.message.MessageDTO;
+import org.jeecg.common.system.api.ISysBaseAPI;
+import org.jeecg.common.system.vo.DictModel;
+import org.jeecg.modules.eam.entity.Equipment;
+import org.jeecg.modules.eam.entity.EquipmentReportRepair;
+import org.jeecg.modules.eam.service.IEamEquipmentService;
+import org.jeecg.modules.system.entity.*;
+import org.jeecg.modules.system.service.*;
+import org.quartz.Job;
+import org.quartz.JobExecutionContext;
+import org.quartz.JobExecutionException;
+import org.springframework.beans.factory.annotation.Autowired;
+
+import javax.annotation.Resource;
+import java.time.LocalDateTime;
+import java.time.ZoneId;
+import java.util.Date;
+import java.util.List;
+
+public class ThirdMaintenaceAlart implements Job {
+
+    @Resource
+    private IEamEquipmentService equipmentService;
+    @Resource
+    private ISysBaseAPI sysBaseApi;
+    @Resource
+    private ISysRoleService sysRoleService;
+    @Resource
+    private ISysDictService sysDictService;
+    @Resource
+    private ISysDictItemService sysDictItemService;
+    @Resource
+    private ISysUserRoleService sysUserRoleService;
+    @Resource
+    private ISysUserService sysUserService;
+    @Override
+    public void execute(JobExecutionContext context) throws JobExecutionException {
+        LocalDateTime currentDateTime = LocalDateTime.now();
+        LocalDateTime dateBefore2Months = currentDateTime.plusMonths(2);
+        Date result = Date.from(dateBefore2Months.atZone(ZoneId.systemDefault()).toInstant());
+        List<Equipment> needAlerts = equipmentService.list(new QueryWrapper<Equipment>().lt("next_third_maintenance_time",result).eq("property_status","normal").eq("del_flag",0));
+        SysDict sysDict = sysDictService.getOne(new QueryWrapper<SysDict>().eq("dict_code","info_type"),false);
+        SysDictItem sysDictItem = sysDictItemService.getOne(new QueryWrapper<SysDictItem>().eq("item_text","涓変繚娑堟伅").eq("dict_id",sysDict.getId()),false);
+        String roleCode = sysDictItem.getItemValue();
+        SysRole sysRole = sysRoleService.getOne(new QueryWrapper<SysRole>().eq("role_code",roleCode),false);
+        List<SysUserRole> sysUserRoles = sysUserRoleService.list(new QueryWrapper<SysUserRole>().eq("role_id",sysRole.getId()));
+        for(SysUserRole sysUserRole:sysUserRoles){
+            SysUser sysUser = sysUserService.getById(sysUserRole.getUserId());
+            String title = "璁惧涓嬫涓変繚鍒版湡鎻愰啋!";
+            String msg = "缁熶竴缂栫爜涓猴細";
+            for(Equipment equipment:needAlerts){
+                msg = msg+"銆�"+equipment.getNum()+"銆�";
+            }
+            msg = msg+"鐨勮澶囩涓嬫涓変繚鐨勬棩鏈熶笉瓒充袱涓湀锛岃鍙婃椂澶勭悊";
+            MessageDTO messageDTO = new MessageDTO();
+            messageDTO.setTitle(title);
+            messageDTO.setContent(msg);
+            messageDTO.setCategory("涓変繚娑堟伅");
+            messageDTO.setFromUser("admin");
+            messageDTO.setToUser(sysUser.getUsername());
+            if(needAlerts.size()!=0){
+                sysBaseApi.sendSysAnnouncement(messageDTO);
+            }
+        }
+    }
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamEquipmentMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamEquipmentMapper.xml
index 3c4e12a..16d4a2e 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamEquipmentMapper.xml
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamEquipmentMapper.xml
@@ -247,7 +247,8 @@
         t1.property_status propertyStatus,
         t1.check_period checkPeriod,
         t1.next_technology_status_qualification_time nextTechnologyStatusQualificationTime,
-        t1.technology_status_qualification_time technologyStatusQualificationTime
+        t1.technology_status_qualification_time technologyStatusQualificationTime,
+        t1.technology_status_verification_type technologyStatusVerificationType
     from mom_eam_equipment t1
     left join (select * from mom_eam_equipment_category where del_flag = 0) t2 on t1.equipment_category_id = t2.id
     where t1.del_flag  = 0
diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/SysAnnouncementSendController.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/SysAnnouncementSendController.java
index 72462d1..5074614 100644
--- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/SysAnnouncementSendController.java
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/SysAnnouncementSendController.java
@@ -2,7 +2,10 @@
 
 import java.util.Arrays;
 import java.util.Date;
+import java.util.List;
+import java.util.stream.Collectors;
 
+import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 
 import org.apache.shiro.SecurityUtils;
@@ -14,9 +17,9 @@
 import org.jeecg.common.util.SqlInjectionUtil;
 import org.jeecg.common.util.oConvertUtils;
 import org.jeecg.modules.message.websocket.WebSocket;
-import org.jeecg.modules.system.entity.SysAnnouncementSend;
+import org.jeecg.modules.system.entity.*;
 import org.jeecg.modules.system.model.AnnouncementSendModel;
-import org.jeecg.modules.system.service.ISysAnnouncementSendService;
+import org.jeecg.modules.system.service.*;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.DeleteMapping;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -51,7 +54,16 @@
 	private ISysAnnouncementSendService sysAnnouncementSendService;
 	@Autowired
 	private WebSocket webSocket;
-
+	 @Autowired
+	 private ISysRoleService sysRoleService;
+	 @Autowired
+	 private ISysDictService sysDictService;
+	 @Autowired
+	 private ISysDictItemService sysDictItemService;
+	 @Autowired
+	 private ISysUserRoleService sysUserRoleService;
+	 @Autowired
+	 private ISysUserService sysUserService;
 	/**
 	  * 鍒嗛〉鍒楄〃鏌ヨ
 	 * @param sysAnnouncementSend
@@ -92,7 +104,7 @@
 		result.setResult(pageList);
 		return result;
 	}
-	
+
 	/**
 	  *   娣诲姞
 	 * @param sysAnnouncementSend
@@ -110,7 +122,7 @@
 		}
 		return result;
 	}
-	
+
 	/**
 	  *  缂栬緫
 	 * @param sysAnnouncementSend
@@ -129,10 +141,10 @@
 				result.success("鎿嶄綔鎴愬姛!");
 			}
 		}
-		
+
 		return result;
 	}
-	
+
 	/**
 	  *   閫氳繃id鍒犻櫎
 	 * @param id
@@ -150,10 +162,10 @@
 				result.success("鍒犻櫎鎴愬姛!");
 			}
 		}
-		
+
 		return result;
 	}
-	
+
 	/**
 	  *  鎵归噺鍒犻櫎
 	 * @param ids
@@ -170,7 +182,7 @@
 		}
 		return result;
 	}
-	
+
 	/**
 	  * 閫氳繃id鏌ヨ
 	 * @param id
@@ -188,7 +200,7 @@
 		}
 		return result;
 	}
-	
+
 	/**
 	 * @鍔熻兘锛氭洿鏂扮敤鎴风郴缁熸秷鎭槄璇荤姸鎬�
 	 * @param json
@@ -209,7 +221,7 @@
 		result.setSuccess(true);
 		return result;
 	}
-	
+
 	/**
 	 * @鍔熻兘锛氳幏鍙栨垜鐨勬秷鎭�
 	 * @return
@@ -265,4 +277,20 @@
 		 AnnouncementSendModel model = sysAnnouncementSendService.getOne(sendId);
 		 return Result.ok(model);
 	 }
+	 @GetMapping("getPrimaryInfo")
+	 public Result<?> getPrimaryInfo(@RequestParam(name="userId",required=true) String userId){
+		 SysDict sysDict = sysDictService.getOne(new QueryWrapper<SysDict>().eq("dict_code","info_type"),false);
+		 List<SysDictItem> sysDictItemList = sysDictItemService.list(new QueryWrapper<SysDictItem>().eq("dict_id",sysDict.getId()));
+//		 List<String> rollCodeList = sysDictItemList.stream().map(SysDictItem::getItemValue).collect(Collectors.toList());
+//		 List<SysUserRole> sysUserRoles = sysUserRoleService.list(new QueryWrapper<SysUserRole>().eq("user_id",userId));
+//		 List<String> roleIds = sysUserRoles.stream().map(SysUserRole::getRoleId).collect(Collectors.toList());
+//		 List<SysRole> sysRoles = sysRoleService.list(new QueryWrapper<SysRole>().in("role_code",rollCodeList).in("id",roleIds));
+		 List<String> msgCategoryList = sysDictItemList.stream().map(SysDictItem::getItemText).collect(Collectors.toList());
+	 	 List<SysAnnouncementSend> list = sysAnnouncementSendService.getPrimaryInfo(userId,msgCategoryList);
+	 	for(SysAnnouncementSend sysAnnouncementSend:list){
+	 		sysAnnouncementSend.setReadFlag("1");
+	 		sysAnnouncementSendService.updateById(sysAnnouncementSend);
+		}
+        return Result.OK(list);
+	 }
 }
diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysAnnouncementSend.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysAnnouncementSend.java
index 1d2b955..3add804 100644
--- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysAnnouncementSend.java
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysAnnouncementSend.java
@@ -3,6 +3,7 @@
 import java.io.Serializable;
 import java.util.Date;
 import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.Data;
@@ -19,7 +20,7 @@
 @TableName("sys_announcement_send")
 public class SysAnnouncementSend implements Serializable {
     private static final long serialVersionUID = 1L;
-    
+
 	/**id*/
 	@TableId(type = IdType.ASSIGN_ID)
 	private java.lang.String id;
@@ -50,4 +51,9 @@
 	 * 鏄惁鏍囨槦 褰撳�间负1鏄爣鏄熸秷鎭�
 	 */
 	private String starFlag;
+	@TableField(exist = false)
+	private String msgCategory;
+	@TableField(exist = false)
+	private String msgContent;
+
 }
diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysAnnouncementSendMapper.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysAnnouncementSendMapper.java
index 7871b62..4c2aad7 100644
--- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysAnnouncementSendMapper.java
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysAnnouncementSendMapper.java
@@ -44,4 +44,8 @@
 	 * 淇敼涓哄凡璇绘秷鎭�
 	 */
 	void updateReaded(@Param("userId") String userId, @Param("annoceIdList") List<String> annoceIdList);
+	/**
+	 * 鑾峰彇棣栭〉娑堟伅
+	 */
+	List<SysAnnouncementSend> getPrimaryInfo(@Param("userId") String userId,@Param("msgCategoryList")List<String> msgCategoryList);
 }
diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysAnnouncementSendMapper.xml b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysAnnouncementSendMapper.xml
index 9925f50..532dd8f 100644
--- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysAnnouncementSendMapper.xml
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysAnnouncementSendMapper.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="org.jeecg.modules.system.mapper.SysAnnouncementSendMapper">
-	
+
 	<resultMap id="AnnouncementSendModel" type="org.jeecg.modules.system.model.AnnouncementSendModel" >
 		<result column="id" property="id" jdbcType="VARCHAR"/>
 		<result column="annt_id" property="anntId" jdbcType="VARCHAR"/>
@@ -17,12 +17,12 @@
 		<result column="open_type" property="openType" jdbcType="VARCHAR"/>
 		<result column="open_page" property="openPage" jdbcType="VARCHAR"/>
 	</resultMap>
-	
+
 	<select id="queryByUserId" parameterType="String"  resultType="String">
-	   select sas.annt_id from sys_announcement_send sas 
+	   select sas.annt_id from sys_announcement_send sas
 	   where sas.user_id = #{userId}
 	</select>
-	
+
 	<select id="getMyAnnouncementSendList" parameterType="Object"  resultMap="AnnouncementSendModel">
 	   select
 	   		sas.id,
@@ -96,12 +96,33 @@
 	<!-- 淇敼涓哄凡璇绘秷鎭� -->
 	<update id="updateReaded">
 		update sys_announcement_send set read_flag = '1'
-		 where user_id = #{userId} 
+		 where user_id = #{userId}
 			and annt_id in
 		<foreach collection="annoceIdList" index="index" item="id" open="(" separator="," close=")">
 			#{id}
 		</foreach>
 	</update>
-	
+	<select id="getPrimaryInfo" resultType="org.jeecg.modules.system.entity.SysAnnouncementSend">
+		select
+		t1.id id,
+        t1.annt_id anntId,
+		t1.user_id userId,
+		t1.read_flag readFlag,
+		t2.msg_content msgContent,
+		t2.msg_category msgCategory
+        from
+        sys_announcement_send t1
+        left join sys_announcement t2
+        on t1.annt_id = t2.id
+        where  t1.read_flag = '0'
+        and t1.user_id = #{userId}
+		    <if test="msgCategoryList.size != 0">
+				and t2.msg_category in (
+				<foreach item="msgCategory" collection="msgCategoryList" separator=",">
+					#{msgCategory}
+				</foreach>
+				    )
+			</if>
+	</select>
 
-</mapper>
\ No newline at end of file
+</mapper>
diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysAnnouncementSendService.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysAnnouncementSendService.java
index a846d23..1e4e10a 100644
--- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysAnnouncementSendService.java
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysAnnouncementSendService.java
@@ -2,6 +2,7 @@
 
 import java.util.List;
 
+import org.apache.ibatis.annotations.Param;
 import org.jeecg.modules.system.entity.SysAnnouncementSend;
 import org.jeecg.modules.system.model.AnnouncementSendModel;
 
@@ -22,7 +23,7 @@
      * @return
      */
 	public List<String> queryByUserId(String userId);
-	
+
 	/**
 	 * 鑾峰彇鎴戠殑娑堟伅
 	 * @param announcementSendModel
@@ -36,6 +37,8 @@
 	 * @return
 	 */
 	AnnouncementSendModel getOne(String sendId);
-	
+
+	List<SysAnnouncementSend> getPrimaryInfo(String userId,List<String> msgCategoryList);
+
 
 }
diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysAnnouncementSendServiceImpl.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysAnnouncementSendServiceImpl.java
index d07af81..941b114 100644
--- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysAnnouncementSendServiceImpl.java
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysAnnouncementSendServiceImpl.java
@@ -24,7 +24,7 @@
 
 	@Resource
 	private SysAnnouncementSendMapper sysAnnouncementSendMapper;
-	
+
 	@Override
 	public List<String> queryByUserId(String userId) {
 		return sysAnnouncementSendMapper.queryByUserId(userId);
@@ -41,4 +41,9 @@
 		return sysAnnouncementSendMapper.getOne(sendId);
 	}
 
+	@Override
+	public List<SysAnnouncementSend> getPrimaryInfo(String userId, List<String> msgCategoryList) {
+		return baseMapper.getPrimaryInfo(userId,msgCategoryList);
+	}
+
 }

--
Gitblit v1.9.3