qushaowei
2023-11-22 dd28194577a2bfaf16b72137f5dbb3021b72b3fd
三保未执行消息提醒
已添加1个文件
已修改3个文件
114 ■■■■■ 文件已修改
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/DailyInspectionStandardController.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/ThirdMaintenanceOrderOverdueJob.java 105 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/DailyMaintenanceOrderMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/InspectionOrderMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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();
                                            }
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);
        }
    }
}
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
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