浏览代码

更新保养计划状态、更新保养计划、删除以及批量删除保养计划

sl 1 年之前
父节点
当前提交
d9b8f9d194

+ 42 - 5
jeecg_module_ems/src/main/java/org/jeecg/modules/cmmsUpkeepPlan/controller/CmmsUpkeepPlanController.java

@@ -22,6 +22,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import lombok.extern.slf4j.Slf4j;
 
+import org.jeecg.modules.cmmsUpkeepPlanItem.service.ICmmsUpkeepPlanItemService;
 import org.jeecgframework.poi.excel.ExcelImportUtil;
 import org.jeecgframework.poi.excel.def.NormalExcelConstants;
 import org.jeecgframework.poi.excel.entity.ExportParams;
@@ -52,6 +53,9 @@ public class CmmsUpkeepPlanController extends JeecgController<CmmsUpkeepPlan, IC
 	@Autowired
 	private ICmmsUpkeepPlanService cmmsUpkeepPlanService;
 
+	 @Autowired
+	 private ICmmsUpkeepPlanItemService cmmsUpkeepPlanItemService;
+
 	/**
 	 * 分页列表查询
 	 *
@@ -79,7 +83,7 @@ public class CmmsUpkeepPlanController extends JeecgController<CmmsUpkeepPlan, IC
 	/**
 	 *   添加
 	 *
-	 * @param cmmsUpkeepPlan
+	 * @param cmmsUpkeepPlanDto
 	 * @return
 	 */
 	@AutoLog(value = "保养计划-添加")
@@ -89,7 +93,13 @@ public class CmmsUpkeepPlanController extends JeecgController<CmmsUpkeepPlan, IC
 	public Result<String> add(@RequestBody CmmsUpkeepPlanDto cmmsUpkeepPlanDto) {
 //		cmmsUpkeepPlanService.save(cmmsUpkeepPlan);
 //		return Result.OK("添加成功!");
-		return Result.OK(cmmsUpkeepPlanService.insertCmmsUpkeepPlan(cmmsUpkeepPlanDto));
+		boolean b = cmmsUpkeepPlanService.insertCmmsUpkeepPlan(cmmsUpkeepPlanDto);
+		if(b){
+			return Result.OK("新增保养计划成功!");
+		}else{
+			return Result.error("新增保养计划失败!");
+		}
+
 	}
 
 	/**
@@ -105,7 +115,13 @@ public class CmmsUpkeepPlanController extends JeecgController<CmmsUpkeepPlan, IC
 	public Result<String> edit(@RequestBody CmmsUpkeepPlanDto cmmsUpkeepPlanDto) {
 //		cmmsUpkeepPlanService.updateById(cmmsUpkeepPlan);
 		//
-		return Result.OK("编辑成功!");
+//		return Result.OK("编辑成功!");
+		boolean b = cmmsUpkeepPlanService.updateCmmsUpkeepPlan(cmmsUpkeepPlanDto);
+		if(b){
+			return Result.OK("保养计划修改成功!");
+		}else{
+			return Result.error("保养计划修改失败!");
+		}
 	}
 
 	/**
@@ -119,7 +135,8 @@ public class CmmsUpkeepPlanController extends JeecgController<CmmsUpkeepPlan, IC
 	//@RequiresPermissions("org.jeecg.modules:ems_cmms_upkeep_plan:delete")
 	@DeleteMapping(value = "/delete")
 	public Result<String> delete(@RequestParam(name="id",required=true) String id) {
-		cmmsUpkeepPlanService.removeById(id);
+		cmmsUpkeepPlanItemService.delCmmsUpkeepPlanItemByPid(id);//通过保养计划id删除 保养计划-保养项
+		cmmsUpkeepPlanService.removeById(id);//通过保养计划id删除保养计划
 		return Result.OK("删除成功!");
 	}
 
@@ -134,7 +151,9 @@ public class CmmsUpkeepPlanController extends JeecgController<CmmsUpkeepPlan, IC
 	//@RequiresPermissions("org.jeecg.modules:ems_cmms_upkeep_plan:deleteBatch")
 	@DeleteMapping(value = "/deleteBatch")
 	public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
-		this.cmmsUpkeepPlanService.removeByIds(Arrays.asList(ids.split(",")));
+		List<String> idsList = Arrays.asList(ids.split(","));
+		cmmsUpkeepPlanItemService.delCmmsUpkeepPlanItemByPids(idsList);//通过保养计划id批量删除 保养计划-保养项
+		this.cmmsUpkeepPlanService.removeByIds(idsList);
 		return Result.OK("批量删除成功!");
 	}
 
@@ -180,4 +199,22 @@ public class CmmsUpkeepPlanController extends JeecgController<CmmsUpkeepPlan, IC
         return super.importExcel(request, response, CmmsUpkeepPlan.class);
     }
 
+	 /**
+	  *   更新保养计划状态
+	  *
+	  * @param cmmsUpkeepPlan
+	  * @return
+	  */
+	 @AutoLog(value = "保养计划-更新保养计划状态")
+	 @ApiOperation(value="保养计划-更新保养计划状态", notes="保养计划-更新保养计划状态")
+	 @GetMapping(value = "/updateCmmsUpkeepPlanStatusById")
+	 public Result<String> updateCmmsUpkeepPlanStatusById(CmmsUpkeepPlan cmmsUpkeepPlan) {
+		 int ifupdate = cmmsUpkeepPlanService.updateCmmsUpkeepPlanStatusById(cmmsUpkeepPlan);
+		 if(ifupdate==1){
+			 return Result.OK("更新状态成功!");
+		 }else{
+			 return Result.error("更新状态失败!");
+		 }
+	 }
+
 }

+ 16 - 1
jeecg_module_ems/src/main/java/org/jeecg/modules/cmmsUpkeepPlan/mapper/CmmsUpkeepPlanMapper.java

@@ -4,6 +4,8 @@ import java.util.List;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+import org.apache.ibatis.annotations.Update;
 import org.jeecg.modules.cmmsUpkeepItem.entity.CmmsUpkeepItem;
 import org.jeecg.modules.cmmsUpkeepItem.entity.CmmsUpkeepItemDto;
 import org.jeecg.modules.cmmsUpkeepPlan.entity.CmmsUpkeepPlan;
@@ -30,6 +32,19 @@ public interface CmmsUpkeepPlanMapper extends BaseMapper<CmmsUpkeepPlan> {
      * 根据id查找保养计划
      *
      */
-    public List<CmmsUpkeepPlanDto> getCmmsUpkeepPlanContentById(String id);
+    public List<CmmsUpkeepPlanDto> getCmmsUpkeepPlanContentById(@Param("id") String id);
+
+    /**
+     *
+     * 更新保养计划表
+     *
+     */
+    public int updateCmmsUpkeepPlanContentById(@Param("cmmsUpkeepPlanDto") CmmsUpkeepPlanDto cmmsUpkeepPlanDto);
+
+    /**
+     * 更新保养计划状态
+     *
+     */
+    public int updateCmmsUpkeepPlanStatusById(@Param("cmmsUpkeepPlan") CmmsUpkeepPlan cmmsUpkeepPlan);
 
 }

+ 36 - 0
jeecg_module_ems/src/main/java/org/jeecg/modules/cmmsUpkeepPlan/mapper/xml/CmmsUpkeepPlanMapper.xml

@@ -50,4 +50,40 @@
         where a.id = #{id}
     </select>
 
+    <update id="updateCmmsUpkeepPlanContentById" parameterType="org.jeecg.modules.cmmsUpkeepPlan.entity.CmmsUpkeepPlanDto">
+        update ems_cmms_upkeep_plan
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="cmmsUpkeepPlanDto.updateBy != null">update_by = #{cmmsUpkeepPlanDto.updateBy},</if>
+            <if test="cmmsUpkeepPlanDto.updateTime != null">update_time = #{cmmsUpkeepPlanDto.updateTime},</if>
+            <if test="cmmsUpkeepPlanDto.remark != null">remark = #{cmmsUpkeepPlanDto.remark},</if>
+            <if test="cmmsUpkeepPlanDto.plancode != null">plancode = #{cmmsUpkeepPlanDto.plancode},</if>
+            <if test="cmmsUpkeepPlanDto.planname != null">planname = #{cmmsUpkeepPlanDto.planname},</if>
+            <if test="cmmsUpkeepPlanDto.upkeepprojid != null">upkeepprojid = #{cmmsUpkeepPlanDto.upkeepprojid},</if>
+            <if test="cmmsUpkeepPlanDto.projectname != null">projectname = #{cmmsUpkeepPlanDto.projectname},</if>
+            <if test="cmmsUpkeepPlanDto.address != null">address = #{cmmsUpkeepPlanDto.address},</if>
+            <if test="cmmsUpkeepPlanDto.supplier != null">supplier = #{cmmsUpkeepPlanDto.supplier},</if>
+            <if test="cmmsUpkeepPlanDto.suppliertel != null">suppliertel = #{cmmsUpkeepPlanDto.suppliertel},</if>
+            <if test="cmmsUpkeepPlanDto.linker != null">linker = #{cmmsUpkeepPlanDto.linker},</if>
+            <if test="cmmsUpkeepPlanDto.linkertel != null">linkertel = #{cmmsUpkeepPlanDto.linkertel},</if>
+            <if test="cmmsUpkeepPlanDto.chargeruser != null">chargeruser = #{cmmsUpkeepPlanDto.chargeruser},</if>
+            <if test="cmmsUpkeepPlanDto.plandesc != null">plandesc = #{cmmsUpkeepPlanDto.plandesc},</if>
+            <if test="cmmsUpkeepPlanDto.begintime != null">begintime = #{cmmsUpkeepPlanDto.begintime},</if>
+            <if test="cmmsUpkeepPlanDto.repeatnum != null">repeatnum = #{cmmsUpkeepPlanDto.repeatnum},</if>
+            <if test="cmmsUpkeepPlanDto.repeattype != null">repeattype = #{cmmsUpkeepPlanDto.repeattype},</if>
+            <if test="cmmsUpkeepPlanDto.noticenum != null">noticenum = #{cmmsUpkeepPlanDto.noticenum},</if>
+            <if test="cmmsUpkeepPlanDto.noticetype != null">noticetype = #{cmmsUpkeepPlanDto.noticetype},</if>
+            <if test="cmmsUpkeepPlanDto.status != null">status = #{cmmsUpkeepPlanDto.status},</if>
+            <if test="cmmsUpkeepPlanDto.nexttime != null">nexttime = #{cmmsUpkeepPlanDto.nexttime},</if>
+            <if test="cmmsUpkeepPlanDto.ifnotice != null">ifnotice = #{cmmsUpkeepPlanDto.ifnotice},</if>
+            <if test="cmmsUpkeepPlanDto.noticetime != null">noticetime = #{cmmsUpkeepPlanDto.noticetime},</if>
+            <if test="cmmsUpkeepPlanDto.equipmentid != null">equipmentid = #{cmmsUpkeepPlanDto.equipmentid},</if>
+        </trim>
+        where id = #{cmmsUpkeepPlanDto.id}
+    </update>
+
+    <!--修改计划状态-->
+    <update id="updateCmmsUpkeepPlanStatusById" parameterType="org.jeecg.modules.cmmsUpkeepPlan.entity.CmmsUpkeepPlan">
+        update ems_cmms_upkeep_plan set status = #{cmmsUpkeepPlan.status} where id=#{cmmsUpkeepPlan.id}
+    </update>
+
 </mapper>

+ 22 - 2
jeecg_module_ems/src/main/java/org/jeecg/modules/cmmsUpkeepPlan/service/ICmmsUpkeepPlanService.java

@@ -1,6 +1,7 @@
 package org.jeecg.modules.cmmsUpkeepPlan.service;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.apache.ibatis.annotations.Param;
 import org.jeecg.modules.cmmsUpkeepPlan.entity.CmmsUpkeepPlan;
 import com.baomidou.mybatisplus.extension.service.IService;
 import org.jeecg.modules.cmmsUpkeepPlan.entity.CmmsUpkeepPlanDto;
@@ -23,11 +24,30 @@ public interface ICmmsUpkeepPlanService extends IService<CmmsUpkeepPlan> {
     public List<CmmsUpkeepPlanDto> getAllCmmsUpkeepPlan(Page<CmmsUpkeepPlanDto> page, CmmsUpkeepPlan cmmsUpkeepPlan);
 
     /**
-     * 新增保养计划
+     * 新增保养计划 保养计划-保养项
      *
      * @param cmmsUpkeepPlanDto 保养计划
      * @return 结果
      */
-    public String insertCmmsUpkeepPlan(CmmsUpkeepPlanDto cmmsUpkeepPlanDto);
+    public boolean insertCmmsUpkeepPlan(CmmsUpkeepPlanDto cmmsUpkeepPlanDto);
+
+    /**
+     * 编辑修改后更新保养计划以及保养计划-保养项
+     *
+     */
+    public boolean updateCmmsUpkeepPlan(CmmsUpkeepPlanDto cmmsUpkeepPlanDto);
+
+    /**
+     *
+     * 更新保养计划表
+     *
+     */
+    public int updateCmmsUpkeepPlanContentById(CmmsUpkeepPlanDto cmmsUpkeepPlanDto);
+
+    /**
+     * 更新保养计划状态
+     *
+     */
+    public int updateCmmsUpkeepPlanStatusById(CmmsUpkeepPlan cmmsUpkeepPlan);
 
 }

+ 52 - 9
jeecg_module_ems/src/main/java/org/jeecg/modules/cmmsUpkeepPlan/service/impl/CmmsUpkeepPlanServiceImpl.java

@@ -1,6 +1,8 @@
 package org.jeecg.modules.cmmsUpkeepPlan.service.impl;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Update;
 import org.jeecg.modules.cmmsUpkeepItem.entity.CmmsUpkeepItemDto;
 import org.jeecg.modules.cmmsUpkeepPlan.entity.CmmsUpkeepPlan;
 import org.jeecg.modules.cmmsUpkeepPlan.entity.CmmsUpkeepPlanDto;
@@ -87,7 +89,7 @@ public class CmmsUpkeepPlanServiceImpl extends ServiceImpl<CmmsUpkeepPlanMapper,
      * @param cmmsUpkeepPlanDto 保养计划
      * @return 结果
      */
-    public String insertCmmsUpkeepPlan(CmmsUpkeepPlanDto cmmsUpkeepPlanDto)
+    public boolean insertCmmsUpkeepPlan(CmmsUpkeepPlanDto cmmsUpkeepPlanDto)
     {
         //一、更新保养计划表
         //新建一个保养计划实例
@@ -118,19 +120,60 @@ public class CmmsUpkeepPlanServiceImpl extends ServiceImpl<CmmsUpkeepPlanMapper,
             cmmsUpkeepPlanItemList.add(cmmsUpkeepPlanItem);
         }
         boolean b2 = cmmsUpkeepPlanItemService.saveBatch(cmmsUpkeepPlanItemList);
-        if(b1&&b2){
-            return "添加保养计划成功!";
-        }else{
-            return "添加保养计划失败!";
-        }
+        return b1 && b2;
     }
 
     /**
      * 编辑修改后更新保养计划以及保养计划-保养项
      *
      */
-//    public boolean updateCmmsUpkeepPlan(CmmsUpkeepPlanDto cmmsUpkeepPlanDto){
-//        return true;
-//    }
+    public boolean updateCmmsUpkeepPlan(CmmsUpkeepPlanDto cmmsUpkeepPlanDto){
+        //一、删除之前保养计划-保养项表中关于该计划的保养项  通过planid删除
+        int ifdelplanitem = cmmsUpkeepPlanItemService.delCmmsUpkeepPlanItemByPid(cmmsUpkeepPlanDto.getId());
+
+        //二、更新保养计划表 // 如果当前时间超过了计划开始时间,不管以前有没有通过此计划生成过保养工单,都将下次执行时间赋值为开始时间,同时修改通知时间
+        if (cmmsUpkeepPlanDto.getBegintime().before(new Date())) {
+            //根据当前时间获取下次执行时间(因为不知道开始时间是否修改了,所以更新一下下次执行时间)
+            cmmsUpkeepPlanDto.setNexttime(getNextTime(cmmsUpkeepPlanDto.getBegintime(), cmmsUpkeepPlanDto.getRepeattype(), cmmsUpkeepPlanDto.getRepeatnum()));
+            //当前时间已经超过了计划时间,将下次计划执行时间赋成计划开始时间
+            cmmsUpkeepPlanDto.setBegintime(cmmsUpkeepPlanDto.getNexttime());
+            cmmsUpkeepPlanDto.setIfnotice("否");//更新计划是否已经通知
+        }
+        cmmsUpkeepPlanDto.setNexttime(getNextTime(cmmsUpkeepPlanDto.getBegintime(), cmmsUpkeepPlanDto.getRepeattype(), cmmsUpkeepPlanDto.getRepeatnum()));//更新下次保养计划执行时间
+        cmmsUpkeepPlanDto.setNoticetime(getNextTime(cmmsUpkeepPlanDto.getBegintime(), cmmsUpkeepPlanDto.getNoticetype(), -(cmmsUpkeepPlanDto.getNoticenum())));//更新保养计划执行提醒时间
+        int ifupdateplan = updateCmmsUpkeepPlanContentById(cmmsUpkeepPlanDto);
+
+        //三、将新的保养计划对应的保养项存入保养计划-保养项表
+        List<CmmsUpkeepItemDto> cmmsUpkeepItemDtoList = cmmsUpkeepPlanDto.getCmmsUpkeepItemDtoList();
+        List<CmmsUpkeepPlanItem> cmmsUpkeepPlanItemList = new ArrayList<>();
+        for(CmmsUpkeepItemDto cmmsUpkeepItemDto:cmmsUpkeepItemDtoList){
+            CmmsUpkeepPlanItem cmmsUpkeepPlanItem = new CmmsUpkeepPlanItem();
+            cmmsUpkeepPlanItem.setUpkeepplanid(cmmsUpkeepPlanDto.getId());//保养计划id
+            if(cmmsUpkeepItemDto.getId() != null) cmmsUpkeepPlanItem.setUpkeepitemid(cmmsUpkeepItemDto.getId());//保养项id
+            cmmsUpkeepPlanItemList.add(cmmsUpkeepPlanItem);
+        }
+        boolean b2 = cmmsUpkeepPlanItemService.saveBatch(cmmsUpkeepPlanItemList);
+        System.out.println(ifdelplanitem);
+        System.out.println(ifupdateplan);
+        System.out.println(b2);
+        return (ifdelplanitem==1)&&(ifupdateplan==1)&&b2;
+    }
+
+    /**
+     *
+     * 更新保养计划表
+     *
+     */
+    public int updateCmmsUpkeepPlanContentById(CmmsUpkeepPlanDto cmmsUpkeepPlanDto){
+        return cmmsUpkeepPlanMapper.updateCmmsUpkeepPlanContentById(cmmsUpkeepPlanDto);
+    }
+
+    /**
+     * 更新保养计划状态
+     *
+     */
+    public int updateCmmsUpkeepPlanStatusById(CmmsUpkeepPlan cmmsUpkeepPlan){
+        return cmmsUpkeepPlanMapper.updateCmmsUpkeepPlanStatusById(cmmsUpkeepPlan);
+    }
 
 }

+ 12 - 0
jeecg_module_ems/src/main/java/org/jeecg/modules/cmmsUpkeepPlanItem/mapper/CmmsUpkeepPlanItemMapper.java

@@ -21,4 +21,16 @@ public interface CmmsUpkeepPlanItemMapper extends BaseMapper<CmmsUpkeepPlanItem>
      */
     public List<CmmsUpkeepPlanItemDto> getCmmsUpkeepPlanItemByPid(@Param("upkeepplanid") String upkeepplanid);
 
+    /**
+     * 根据保养计划id删除 保养计划-保养项
+     *
+     */
+    public int delCmmsUpkeepPlanItemByPid(@Param("upkeepplanid") String upkeepplanid);
+
+    /**
+     * 根据保养计划ids批量删除 保养计划-保养项
+     *
+     */
+    public int delCmmsUpkeepPlanItemByPids(@Param("upkeepplanids") List<String> upkeepplanids);
+
 }

+ 13 - 0
jeecg_module_ems/src/main/java/org/jeecg/modules/cmmsUpkeepPlanItem/mapper/xml/CmmsUpkeepPlanItemMapper.xml

@@ -28,6 +28,19 @@
         </where>
     </select>
 
+    <delete id="delCmmsUpkeepPlanItemByPid" parameterType="String">
+        delete from ems_cmms_upkeep_plan_item where upkeepplanid = #{upkeepplanid}
+    </delete>
+
+    <delete id="delCmmsUpkeepPlanItemByPids" parameterType="String">
+        delete from ems_cmms_upkeep_plan_item where upkeepplanid in
+        <foreach item="upkeepplanid" collection="upkeepplanids" index="index" open="(" separator="," close=")">
+            #{upkeepplanid}
+        </foreach>
+    </delete>
+
+
+
 
 
 </mapper>

+ 12 - 0
jeecg_module_ems/src/main/java/org/jeecg/modules/cmmsUpkeepPlanItem/service/ICmmsUpkeepPlanItemService.java

@@ -21,4 +21,16 @@ public interface ICmmsUpkeepPlanItemService extends IService<CmmsUpkeepPlanItem>
      */
     public List<CmmsUpkeepPlanItemDto> getCmmsUpkeepPlanItemByPid(String upkeepplanid);
 
+    /**
+     * 根据保养计划id删除 保养计划-保养项
+     *
+     */
+    public int delCmmsUpkeepPlanItemByPid(@Param("upkeepplanid") String upkeepplanid);
+
+    /**
+     * 根据保养计划ids批量删除 保养计划-保养项
+     *
+     */
+    public int delCmmsUpkeepPlanItemByPids(List<String> upkeepplanids);
+
 }

+ 16 - 0
jeecg_module_ems/src/main/java/org/jeecg/modules/cmmsUpkeepPlanItem/service/impl/CmmsUpkeepPlanItemServiceImpl.java

@@ -33,4 +33,20 @@ public class CmmsUpkeepPlanItemServiceImpl extends ServiceImpl<CmmsUpkeepPlanIte
         return cmmsUpkeepPlanItemMapper.getCmmsUpkeepPlanItemByPid(upkeepplanid);
     }
 
+    /**
+     * 根据保养计划id删除 保养计划-保养项
+     *
+     */
+    public int delCmmsUpkeepPlanItemByPid(String upkeepplanid){
+        return cmmsUpkeepPlanItemMapper.delCmmsUpkeepPlanItemByPid(upkeepplanid);
+    }
+
+    /**
+     * 根据保养计划ids批量删除 保养计划-保养项
+     *
+     */
+    public int delCmmsUpkeepPlanItemByPids(List<String> upkeepplanids){
+        return cmmsUpkeepPlanItemMapper.delCmmsUpkeepPlanItemByPids(upkeepplanids);
+    }
+
 }