From dd28194577a2bfaf16b72137f5dbb3021b72b3fd Mon Sep 17 00:00:00 2001 From: qushaowei <qushaowei@163.com> Date: 星期三, 22 十一月 2023 15:23:25 +0800 Subject: [PATCH] 三保未执行消息提醒 --- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/DailyInspectionStandardController.java | 1 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/ThirdMaintenanceOrderOverdueJob.java | 105 ++++++++++++++++++++++++++++++++++++++++++++++++++++ lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/DailyMaintenanceOrderMapper.xml | 4 +- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/InspectionOrderMapper.xml | 4 +- 4 files changed, 110 insertions(+), 4 deletions(-) diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/DailyInspectionStandardController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/DailyInspectionStandardController.java index bc9ad0e..b2218d8 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/DailyInspectionStandardController.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/DailyInspectionStandardController.java @@ -324,6 +324,7 @@ dailyInspectionStandard.setVersion("1.0"); dailyInspectionStandard.setAssignMode("1"); dailyInspectionStandard.setEquipmentId(equipment.getId()); + dailyInspectionStandard.setApprovalStatus("1"); //dailyInspectionStandardService.save(dailyInspectionStandard); //dailyInspectionStandardId = dailyInspectionStandard.getId(); } diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/ThirdMaintenanceOrderOverdueJob.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/ThirdMaintenanceOrderOverdueJob.java new file mode 100644 index 0000000..adff3bc --- /dev/null +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/ThirdMaintenanceOrderOverdueJob.java @@ -0,0 +1,105 @@ +package org.jeecg.modules.eam.job; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import lombok.extern.slf4j.Slf4j; +import org.apache.shiro.SecurityUtils; +import org.jeecg.common.api.dto.message.MessageDTO; +import org.jeecg.common.system.api.ISysBaseAPI; +import org.jeecg.common.system.vo.LoginUser; +import org.jeecg.common.util.DateUtils; +import org.jeecg.modules.eam.entity.*; +import org.jeecg.modules.eam.service.*; +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 org.springframework.format.annotation.DateTimeFormat; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import java.text.SimpleDateFormat; +import java.time.DayOfWeek; +import java.time.LocalDate; +import java.time.LocalDateTime; +import java.time.ZoneId; +import java.util.Calendar; +import java.util.Date; +import java.util.List; + +/** + * 涓夌骇淇濆吇宸ュ崟 鍒版湡鏈墽琛� 鎶�鏈姸鎬佷慨鏀逛负 绂佺敤锛堢姸鎬侀壌瀹氭湭鎸夋湡瀹屾垚锛� + */ +@Slf4j +public class ThirdMaintenanceOrderOverdueJob implements Job { + + @Autowired + private IDailyMaintenanceOrderService dailyMaintenanceOrderService; + + @Autowired + private IEamEquipmentService equipmentService; + @Autowired + private IMaintenanceCycleService maintenanceCycleService; + + @Autowired + private ISysBaseAPI sysBaseApi; + + @Resource + private ISysRoleService sysRoleService; + @Resource + private ISysDictService sysDictService; + @Resource + private ISysDictItemService sysDictItemService; + @Resource + private ISysUserRoleService sysUserRoleService; + @Resource + private ISysUserService sysUserService; + + @Override + @Transactional(rollbackFor = { Exception.class }) + public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException { + + LocalDateTime currentDateTime = LocalDateTime.now(); + Date result = Date.from(currentDateTime.atZone(ZoneId.systemDefault()).toInstant()); + List<DailyMaintenanceOrder> maintenanceOrders = dailyMaintenanceOrderService.list(new QueryWrapper<DailyMaintenanceOrder>().lt("plan_start_time", result).eq("status",1).eq("del_flag",0)); + for (DailyMaintenanceOrder dailyMaintenanceOrder : maintenanceOrders) { + String maintenanceCycleId = dailyMaintenanceOrder.getMaintenanceCycleId(); + MaintenanceCycle maintenanceCycle = maintenanceCycleService.getById(maintenanceCycleId); + String maintenanceType = maintenanceCycle.getMaintenanceType(); + if("3".equals(maintenanceType)){ + String equipmentId = dailyMaintenanceOrder.getEquipmentId(); + + Equipment equipment = equipmentService.getById(equipmentId); + equipment.setTechnologyStatus("disableNoExe"); + equipmentService.updateById(equipment); + this.equipmentTechnologyStatuAlart(equipment.getNum(),equipment.getTechnologyStatus()); + } + } + } + + void equipmentTechnologyStatuAlart(String equipmentNum,String technologyStatus){ + + SysDict sysDictT = sysDictService.getOne(new QueryWrapper<SysDict>().eq("dict_code","technology_status"),false); + SysDictItem sysDictItemt = sysDictItemService.getOne(new QueryWrapper<SysDictItem>().eq("item_value",technologyStatus) + .eq("dict_id",sysDictT.getId()),false); + + 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 user = sysUserService.getById(sysUserRole.getUserId()); + String msg = "缁熶竴缂栧彿涓恒��"+equipmentNum+"銆戠殑涓夌骇淇濆吇宸ュ崟鏈墽琛岋紝绯荤粺鑷姩灏嗚璁惧鎶�鏈姸鎬佹敼涓恒��"+sysDictItemt.getItemText()+"銆戯紝璇风煡鏅擄紒锛侊紒"; + MessageDTO messageDTO = new MessageDTO(); + messageDTO.setTitle("璁惧鍙拌处鎶�鏈姸鎬佷慨鏀�"); + messageDTO.setContent(msg); + messageDTO.setCategory("杩愪繚璁惧绠$悊鍛�"); + messageDTO.setFromUser("璁惧鍙拌处鎶�鏈姸鎬佷慨鏀规彁閱掑皬鍔╂墜"); + messageDTO.setToUser(user.getUsername()); + sysBaseApi.sendSysAnnouncement(messageDTO); + } + } +} diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/DailyMaintenanceOrderMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/DailyMaintenanceOrderMapper.xml index f9de1a3..35e4aad 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/DailyMaintenanceOrderMapper.xml +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/DailyMaintenanceOrderMapper.xml @@ -31,8 +31,8 @@ <select id="getMaintenanceCycleByStandardId" parameterType="Map" resultType="org.jeecg.modules.eam.model.MaintenanceCycleVo"> SELECT DISTINCT t2.id AS value, - concat( t2.CODE, '/', t2.name ) AS text, - concat( t2.CODE, '/', t2.name ) AS title + t2.name AS text, + t2.name AS title FROM mom_eam_maintenance_standard_detail t1 LEFT JOIN mom_eam_maintenance_cycle t2 ON t1.maintenance_cycle_id = t2.id diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/InspectionOrderMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/InspectionOrderMapper.xml index 9d2172e..9d639ee 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/InspectionOrderMapper.xml +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/InspectionOrderMapper.xml @@ -60,8 +60,8 @@ <select id="getInspectionCycleByEqId" parameterType="Map" resultType="org.jeecg.modules.eam.model.InspectionCycleVo"> SELECT DISTINCT t1.inspection_cycle_id AS value, - concat(t3.code, '/', t3.name) as text, - concat(t3.code, '/', t3.name) as title + t3.name as text, + t3.name as title FROM mom_eam_daily_inspection_standard_detail t1 LEFT JOIN mom_eam_daily_inspection_standard t2 ON t1.daily_inspection_standard_id = t2.id -- Gitblit v1.9.3