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){ 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") 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; } 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); } } } } 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 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); } } 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; } 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); } 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> </mapper> 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); } 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); } }