hyingbo
2025-05-27 3a740faa161ec976986c0735ba18837f570a525f
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/ThirdMaintenaceAlart.java
@@ -3,6 +3,7 @@
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.constant.enums.MessageSplitTypeEnum;
import org.jeecg.common.system.api.ISysBaseAPI;
import org.jeecg.common.system.vo.DictModel;
import org.jeecg.modules.eam.entity.Equipment;
@@ -42,12 +43,20 @@
        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));
        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);
        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()));
        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 = "设备下次三保到期提醒!";
@@ -58,6 +67,7 @@
            msg = msg+"的设备离下次三保的日期不足两个月,请及时处理";
            MessageDTO messageDTO = new MessageDTO();
            messageDTO.setTitle(title);
            messageDTO.setMessageType(MessageSplitTypeEnum.untilMaintenancePeriod.getType());
            messageDTO.setContent(msg);
            messageDTO.setCategory("三保消息");
            messageDTO.setFromUser("admin");