From a3cb768d958e64625786857e0db69335875f5d8e Mon Sep 17 00:00:00 2001 From: hyingbo <1363390067@qq.com> Date: 星期五, 06 六月 2025 13:43:55 +0800 Subject: [PATCH] 消息类型更新 --- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EquipmentMaintenancePlanController.java | 138 +++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 124 insertions(+), 14 deletions(-) diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EquipmentMaintenancePlanController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EquipmentMaintenancePlanController.java index 6f6b6c6..36bb9ae 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EquipmentMaintenancePlanController.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EquipmentMaintenancePlanController.java @@ -1,6 +1,8 @@ package org.jeecg.modules.eam.controller; +import org.jeecg.common.api.dto.message.MessageDTO; import org.jeecg.common.constant.CommonConstant; +import org.jeecg.common.system.api.ISysBaseAPI; import org.jeecg.common.system.query.QueryGenerator; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -8,18 +10,18 @@ import lombok.extern.slf4j.Slf4j; import org.jeecg.common.system.base.controller.JeecgController; import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.eam.entity.*; +import org.jeecg.modules.eam.service.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.web.servlet.ModelAndView; + +import java.util.ArrayList; import java.util.Arrays; import org.jeecg.common.util.oConvertUtils; -import org.jeecg.modules.eam.entity.EquipmentMaintenancePlanDetail; -import org.jeecg.modules.eam.entity.EquipmentMaintenancePlan; -import org.jeecg.modules.eam.service.IEquipmentMaintenancePlanService; -import org.jeecg.modules.eam.service.IEquipmentMaintenancePlanDetailService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.jeecg.common.aspect.annotation.AutoLog; @@ -55,6 +57,29 @@ @Autowired private IEquipmentMaintenancePlanDetailService equipmentMaintenancePlanDetailService; + @Autowired + private IDailyMaintenanceOrderService dailyMaintenanceOrderService; + + @Autowired + private IEamEquipmentService equipmentService; + + @Autowired + private IMaintenanceStandardService maintenanceStandardService; + + @Autowired + private IdentityService sysIdentityService; + + @Autowired + private ISysBaseAPI sysBaseApi; + + @Autowired + private IDailyMaintenanceOrderDetailService maintenanceOrderDetailService; + + @Autowired + private IMaintenanceStandardDetailService maintenanceStandardDetailService; + + + /*---------------------------------涓昏〃澶勭悊-begin-------------------------------------*/ @@ -74,6 +99,12 @@ @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, HttpServletRequest req) { QueryWrapper<EquipmentMaintenancePlan> queryWrapper = QueryGenerator.initQueryWrapper(equipmentMaintenancePlan, req.getParameterMap()); + //鎸夊垱寤烘椂闂磋寖鍥存煡璇�,浠庡墠绔帴鏀朵袱涓弬鏁帮紝beginTime鍜宔ndTime + String beginTime = req.getParameter("beginTime"); + String endTime = req.getParameter("endTime"); + if(oConvertUtils.isNotEmpty(beginTime) && oConvertUtils.isNotEmpty(endTime)){ + queryWrapper.between("create_time",beginTime,endTime); + } Page<EquipmentMaintenancePlan> page = new Page<EquipmentMaintenancePlan>(pageNo, pageSize); IPage<EquipmentMaintenancePlan> pageList = equipmentMaintenancePlanService.page(page, queryWrapper); return Result.OK(pageList); @@ -89,15 +120,44 @@ @PostMapping(value = "/add") @Transactional(rollbackFor = {Exception.class}) public Result<String> add(@RequestBody EquipmentMaintenancePlan equipmentMaintenancePlan) { - equipmentMaintenancePlan.setStatus("created"); - List<EquipmentMaintenancePlanDetail> equipmentMaintenancePlanDetails = equipmentMaintenancePlan.getEquipmentMaintenancePlanDetailList(); - equipmentMaintenancePlan.setEquipNo(equipmentMaintenancePlanDetails.size()); + //鍒ゆ柇selectOption绫诲瀷 + equipmentMaintenancePlan.setStatus("created"); equipmentMaintenancePlan.setDelFlag(CommonConstant.DEL_FLAG_0); - equipmentMaintenancePlanService.save(equipmentMaintenancePlan); - for(EquipmentMaintenancePlanDetail equipmentMaintenancePlanDetail:equipmentMaintenancePlanDetails){ - equipmentMaintenancePlanDetail.setPlanId(equipmentMaintenancePlan.getId()); + if(equipmentMaintenancePlan.getSelectOption().equals("0")){ + //鏌ヨ鎵�鏈夎澶囧苟灏嗗叾id灏佽鎴恑dList + List<Equipment> equipments = equipmentService.list(); + List<String> idList = equipments.stream().map(Equipment::getId).collect(Collectors.toList()); + //鏍规嵁idList鍜宼ype鏌ヨ鎵�鏈夎澶囩殑淇濆吇鏍囧噯 + Map<String, Object> maintenanceStandards = equipmentMaintenancePlanService.getStandards(idList,equipmentMaintenancePlan.getType()); + List<MaintenanceStandard> maintenanceStandardList = (List<MaintenanceStandard>) maintenanceStandards.get("records"); + //寰幆maintenanceStandardList灏嗘暟鎹皝瑁呭埌equipmentMaintenancePlanDetailList + List<EquipmentMaintenancePlanDetail> equipmentMaintenancePlanDetailList = new ArrayList<>(); + equipmentMaintenancePlan.setEquipNo(maintenanceStandardList.size()); + equipmentMaintenancePlanService.save(equipmentMaintenancePlan); + for(MaintenanceStandard maintenanceStandard:maintenanceStandardList){ + EquipmentMaintenancePlanDetail equipmentMaintenancePlanDetail = new EquipmentMaintenancePlanDetail(); + equipmentMaintenancePlanDetail.setStandardNum(maintenanceStandard.getNum()); + equipmentMaintenancePlanDetail.setEquipmentName(maintenanceStandard.getEquipmentName()); + equipmentMaintenancePlanDetail.setEquipmentId(maintenanceStandard.getEquipmentId()); + equipmentMaintenancePlanDetail.setEquipmentNum(maintenanceStandard.getEquipmentNum()); + equipmentMaintenancePlanDetail.setModel(maintenanceStandard.getEquipmentModel()); + equipmentMaintenancePlanDetail.setStandardId(maintenanceStandard.getId()); + equipmentMaintenancePlanDetail.setPlanId(equipmentMaintenancePlan.getId()); + equipmentMaintenancePlanDetail.setPlanStartTime(equipmentMaintenancePlan.getBeginTime()); + equipmentMaintenancePlanDetail.setPlanEndTime(equipmentMaintenancePlan.getEndTime()); + equipmentMaintenancePlanDetailList.add(equipmentMaintenancePlanDetail); + } + equipmentMaintenancePlanDetailService.saveBatch(equipmentMaintenancePlanDetailList); } - equipmentMaintenancePlanDetailService.saveBatch(equipmentMaintenancePlanDetails); + else{ + List<EquipmentMaintenancePlanDetail> equipmentMaintenancePlanDetails = equipmentMaintenancePlan.getEquipmentMaintenancePlanDetailList(); + equipmentMaintenancePlan.setEquipNo(equipmentMaintenancePlanDetails.size()); + equipmentMaintenancePlanService.save(equipmentMaintenancePlan); + for(EquipmentMaintenancePlanDetail equipmentMaintenancePlanDetail:equipmentMaintenancePlanDetails){ + equipmentMaintenancePlanDetail.setPlanId(equipmentMaintenancePlan.getId()); + } + equipmentMaintenancePlanDetailService.saveBatch(equipmentMaintenancePlanDetails); + } return Result.OK("娣诲姞鎴愬姛锛�"); } @@ -195,8 +255,53 @@ } @PutMapping("distrbute") public Result<?> distrbute(@RequestBody EquipmentMaintenancePlan equipmentMaintenancePlan) { + LoginUser user= (LoginUser) SecurityUtils.getSubject().getPrincipal(); equipmentMaintenancePlan.setStatus("distributed"); - equipmentMaintenancePlanService.updateById(equipmentMaintenancePlan); + //鐢熸垚宸ュ崟 + List<EquipmentMaintenancePlanDetail> equipmentMaintenancePlanDetails = equipmentMaintenancePlanDetailService.selectByMainId(equipmentMaintenancePlan.getId()); + for(EquipmentMaintenancePlanDetail equipmentMaintenancePlanDetail:equipmentMaintenancePlanDetails){ + MaintenanceStandard maintenanceStandard = maintenanceStandardService.getById(equipmentMaintenancePlanDetail.getStandardId()); + String num = sysIdentityService.getNumByTypeAndLength("MaintenanceOrder",4); + DailyMaintenanceOrder dailyMaintenanceOrder = new DailyMaintenanceOrder(); + dailyMaintenanceOrder.setNum(num); + dailyMaintenanceOrder.setEquipmentId(maintenanceStandard.getEquipmentId()); + dailyMaintenanceOrder.setPlanStartTime(equipmentMaintenancePlanDetail.getPlanStartTime()); + dailyMaintenanceOrder.setPlanEndTime(equipmentMaintenancePlanDetail.getPlanEndTime()); + dailyMaintenanceOrder.setStatus("3");//3:鏈紑濮� + dailyMaintenanceOrder.setMaintenanceStandardId(maintenanceStandard.getId()); + dailyMaintenanceOrder.setCreateType(CommonConstant.ANNOUNCEMENT_SEND_STATUS_2); + List<MaintenanceStandardDetail> maintenanceStandardDetailList = equipmentMaintenancePlanService.getCycle(maintenanceStandard.getId(),equipmentMaintenancePlan.getType()); + if(maintenanceStandardDetailList.size()>0){ + dailyMaintenanceOrder.setMaintenanceCycleId(maintenanceStandardDetailList.get(0).getMaintenanceCycleId()); + } + dailyMaintenanceOrder.setMaintenanceOrderUda1(equipmentMaintenancePlan.getId()); + dailyMaintenanceOrder.setMaintenanceOrderUda2(equipmentMaintenancePlanDetail.getId()); + dailyMaintenanceOrder.setDelFlag(CommonConstant.DEL_FLAG_0); + dailyMaintenanceOrder.setPrecisionInspectionStatus(CommonConstant.STATUS_0); + dailyMaintenanceOrder.setStoveExemptStatus(CommonConstant.STATUS_0); + dailyMaintenanceOrder.setConfirmStatus(CommonConstant.STATUS_0); + dailyMaintenanceOrderService.save(dailyMaintenanceOrder); + for(MaintenanceStandardDetail maintenanceStandardDetail:maintenanceStandardDetailList){ + DailyMaintenanceOrderDetail dailyMaintenanceOrderDetail = new DailyMaintenanceOrderDetail(); + dailyMaintenanceOrderDetail.setDailyMaintenanceOrderId(dailyMaintenanceOrder.getId()); + dailyMaintenanceOrderDetail.setMaintenanceStandardDetailId(maintenanceStandardDetail.getId()); + dailyMaintenanceOrderDetail.setMaintenanceStandardId(maintenanceStandard.getId()); + dailyMaintenanceOrderDetail.setMaintenanceProjectId(maintenanceStandardDetail.getMaintenanceProjectId()); + dailyMaintenanceOrderDetail.setDelFlag(0); + maintenanceOrderDetailService.save(dailyMaintenanceOrderDetail); + } + } + equipmentMaintenancePlanService.updateById(equipmentMaintenancePlan); + String msg = "鍗曟嵁鍙蜂负銆�"+equipmentMaintenancePlan.getNum()+"銆戠殑淇濆吇璁″垝宸茬敓鎴愪繚鍏诲伐鍗�"; + MessageDTO messageDTO = new MessageDTO(); + messageDTO.setTitle("鏈夋柊鐨勪繚鍏诲伐鍗�"); + messageDTO.setContent(msg); + messageDTO.setCategory("淇濆吇宸ュ崟"); + messageDTO.setFromUser(user.getUsername()); + messageDTO.setToUser("admin"); + if(equipmentMaintenancePlanDetails.size()!=0){ + sysBaseApi.sendSysAnnouncement(messageDTO); + } return Result.OK("鎿嶄綔鎴愬姛"); } @@ -340,9 +445,14 @@ } return Result.error("鏂囦欢瀵煎叆澶辫触锛�"); } - + @GetMapping("/getStandards") + public Result<?> getStandards(@RequestParam(name="ids",required=true) String ids, + @RequestParam(name="maintenanceType",required=true) String maintenanceType + ){ + List<String> equipmentIds = Arrays.asList(ids.split(",")); + return Result.OK(equipmentMaintenancePlanService.getStandards(equipmentIds,maintenanceType)); + } /*--------------------------------瀛愯〃澶勭悊-淇濆吇璁″垝鏄庣粏-end----------------------------------------------*/ - -- Gitblit v1.9.3