Sfoglia il codice sorgente

Merge remote-tracking branch 'origin/master'

LLL 1 anno fa
parent
commit
24cd954710

+ 45 - 7
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,16 +83,23 @@ public class CmmsUpkeepPlanController extends JeecgController<CmmsUpkeepPlan, IC
 	/**
 	 *   添加
 	 *
-	 * @param cmmsUpkeepPlan
+	 * @param cmmsUpkeepPlanDto
 	 * @return
 	 */
 	@AutoLog(value = "保养计划-添加")
 	@ApiOperation(value="保养计划-添加", notes="保养计划-添加")
 	//@RequiresPermissions("org.jeecg.modules:ems_cmms_upkeep_plan:add")
 	@PostMapping(value = "/add")
-	public Result<String> add(@RequestBody CmmsUpkeepPlan cmmsUpkeepPlan) {
-		cmmsUpkeepPlanService.save(cmmsUpkeepPlan);
-		return Result.OK("添加成功!");
+	public Result<String> add(@RequestBody CmmsUpkeepPlanDto cmmsUpkeepPlanDto) {
+//		cmmsUpkeepPlanService.save(cmmsUpkeepPlan);
+//		return Result.OK("添加成功!");
+		boolean b = cmmsUpkeepPlanService.insertCmmsUpkeepPlan(cmmsUpkeepPlanDto);
+		if(b){
+			return Result.OK("新增保养计划成功!");
+		}else{
+			return Result.error("新增保养计划失败!");
+		}
+
 	}
 
 	/**
@@ -104,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("保养计划修改失败!");
+		}
 	}
 
 	/**
@@ -118,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("删除成功!");
 	}
 
@@ -133,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("批量删除成功!");
 	}
 
@@ -179,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("更新状态失败!");
+		 }
+	 }
+
 }

+ 13 - 13
jeecg_module_ems/src/main/java/org/jeecg/modules/cmmsUpkeepPlan/entity/CmmsUpkeepPlan.java

@@ -40,16 +40,16 @@ public class CmmsUpkeepPlan implements Serializable {
     @ApiModelProperty(value = "创建者")
     private java.lang.String createBy;
 	/**创建时间*/
-	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
-    @DateTimeFormat(pattern="yyyy-MM-dd")
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
     @ApiModelProperty(value = "创建时间")
     private java.util.Date createTime;
 	/**更新者*/
     @ApiModelProperty(value = "更新者")
     private java.lang.String updateBy;
 	/**更新时间*/
-	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
-    @DateTimeFormat(pattern="yyyy-MM-dd")
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
     @ApiModelProperty(value = "更新时间")
     private java.util.Date updateTime;
 	/**备注*/
@@ -101,9 +101,9 @@ public class CmmsUpkeepPlan implements Serializable {
     @ApiModelProperty(value = "描述")
     private java.lang.String plandesc;
 	/**开始时间*/
-	@Excel(name = "开始时间", width = 15, format = "yyyy-MM-dd")
-	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
-    @DateTimeFormat(pattern="yyyy-MM-dd")
+	@Excel(name = "开始时间", width = 15, format = "yyyy-MM-dd HH:mm:ss")
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
     @ApiModelProperty(value = "开始时间")
     private java.util.Date begintime;
 	/**重复*/
@@ -127,15 +127,15 @@ public class CmmsUpkeepPlan implements Serializable {
     @ApiModelProperty(value = "状态(0启用 1停用)")
     private java.lang.String status;
 	/**下次执行时间*/
-	@Excel(name = "下次执行时间", width = 15, format = "yyyy-MM-dd")
-	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
-    @DateTimeFormat(pattern="yyyy-MM-dd")
+	@Excel(name = "下次执行时间", width = 15, format = "yyyy-MM-dd HH:mm:ss")
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
     @ApiModelProperty(value = "下次执行时间")
     private java.util.Date nexttime;
 	/**下次通知时间*/
-	@Excel(name = "下次通知时间", width = 15, format = "yyyy-MM-dd")
-	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
-    @DateTimeFormat(pattern="yyyy-MM-dd")
+	@Excel(name = "下次通知时间", width = 15, format = "yyyy-MM-dd HH:mm:ss")
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
     @ApiModelProperty(value = "下次通知时间")
     private java.util.Date noticetime;
 	/**是否已通知:是/否*/

+ 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>

+ 28 - 0
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;
@@ -22,4 +23,31 @@ public interface ICmmsUpkeepPlanService extends IService<CmmsUpkeepPlan> {
      */
     public List<CmmsUpkeepPlanDto> getAllCmmsUpkeepPlan(Page<CmmsUpkeepPlanDto> page, CmmsUpkeepPlan cmmsUpkeepPlan);
 
+    /**
+     * 新增保养计划 保养计划-保养项
+     *
+     * @param cmmsUpkeepPlanDto 保养计划
+     * @return 结果
+     */
+    public boolean insertCmmsUpkeepPlan(CmmsUpkeepPlanDto cmmsUpkeepPlanDto);
+
+    /**
+     * 编辑修改后更新保养计划以及保养计划-保养项
+     *
+     */
+    public boolean updateCmmsUpkeepPlan(CmmsUpkeepPlanDto cmmsUpkeepPlanDto);
+
+    /**
+     *
+     * 更新保养计划表
+     *
+     */
+    public int updateCmmsUpkeepPlanContentById(CmmsUpkeepPlanDto cmmsUpkeepPlanDto);
+
+    /**
+     * 更新保养计划状态
+     *
+     */
+    public int updateCmmsUpkeepPlanStatusById(CmmsUpkeepPlan cmmsUpkeepPlan);
+
 }

+ 137 - 3
jeecg_module_ems/src/main/java/org/jeecg/modules/cmmsUpkeepPlan/service/impl/CmmsUpkeepPlanServiceImpl.java

@@ -1,15 +1,25 @@
 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;
 import org.jeecg.modules.cmmsUpkeepPlan.mapper.CmmsUpkeepPlanMapper;
 import org.jeecg.modules.cmmsUpkeepPlan.service.ICmmsUpkeepPlanService;
+import org.jeecg.modules.cmmsUpkeepPlanItem.entity.CmmsUpkeepPlanItem;
+import org.jeecg.modules.cmmsUpkeepPlanItem.service.ICmmsUpkeepPlanItemService;
+import org.jeecg.modules.util.AutoCodeUtil;
+import org.jeecg.modules.util.UserConstants;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 
+import java.util.ArrayList;
+import java.util.Calendar;
+import java.util.Date;
 import java.util.List;
 
 /**
@@ -25,6 +35,45 @@ public class CmmsUpkeepPlanServiceImpl extends ServiceImpl<CmmsUpkeepPlanMapper,
     @SuppressWarnings("all")
     private CmmsUpkeepPlanMapper cmmsUpkeepPlanMapper;
 
+    @Autowired
+    @SuppressWarnings("all")
+    private ICmmsUpkeepPlanItemService cmmsUpkeepPlanItemService;
+
+    @Autowired
+    @SuppressWarnings("all")
+    private AutoCodeUtil autoCodeUtil;
+
+    /**
+     * 计算下次计划执行时间
+     *
+     */
+    public Date getNextTime(Date beginTime, String timeType, Integer timeNum){
+        Calendar rightNow = Calendar.getInstance();
+        rightNow.setTime(beginTime);
+        switch (timeType) {
+            case "年":
+                rightNow.add(Calendar.YEAR, timeNum);
+                break;
+            case "月":
+                rightNow.add(Calendar.MONTH, timeNum);
+                break;
+            case "周":
+                rightNow.add(Calendar.WEEK_OF_YEAR, timeNum);
+                break;
+            case "天":
+                rightNow.add(Calendar.DATE, timeNum);
+                break;
+            case "小时":
+                rightNow.add(Calendar.HOUR_OF_DAY, timeNum);
+                break;
+            case "分钟":
+                rightNow.add(Calendar.MINUTE, timeNum);
+                break;
+        }
+        return rightNow.getTime();
+    }
+
+
     /**
      * 分页列表查询
      * 根据设备id查找设备名称并进行两表字段拼接
@@ -35,11 +84,96 @@ public class CmmsUpkeepPlanServiceImpl extends ServiceImpl<CmmsUpkeepPlanMapper,
     }
 
     /**
+     * 新增保养计划
+     *
+     * @param cmmsUpkeepPlanDto 保养计划
+     * @return 结果
+     */
+    public boolean insertCmmsUpkeepPlan(CmmsUpkeepPlanDto cmmsUpkeepPlanDto)
+    {
+        //一、更新保养计划表
+        //新建一个保养计划实例
+        CmmsUpkeepPlan cmmsUpkeepPlan = new CmmsUpkeepPlan();
+        //保养计划编号
+        if(cmmsUpkeepPlanDto.getPlancode() == null || "".equals(cmmsUpkeepPlanDto.getPlancode())) cmmsUpkeepPlan.setPlancode(autoCodeUtil.genSerialCode(UserConstants.CMMSUPKEEPPLAN_CODE, null));
+        if(cmmsUpkeepPlanDto.getPlanname() != null) cmmsUpkeepPlan.setPlanname(cmmsUpkeepPlanDto.getPlanname());//保养计划名称
+        if(cmmsUpkeepPlanDto.getBegintime() != null) cmmsUpkeepPlan.setBegintime(cmmsUpkeepPlanDto.getBegintime());//保养计划开始时间
+        if(cmmsUpkeepPlanDto.getRepeatnum() != null) cmmsUpkeepPlan.setRepeatnum(cmmsUpkeepPlanDto.getRepeatnum());//保养计划间隔重复的时间
+        if(cmmsUpkeepPlanDto.getRepeattype() != null) cmmsUpkeepPlan.setRepeattype(cmmsUpkeepPlanDto.getRepeattype());//保养计划间隔重复的时间单位
+        if(cmmsUpkeepPlanDto.getNoticenum() != null) cmmsUpkeepPlan.setNoticenum(cmmsUpkeepPlanDto.getNoticenum());//保养计划执行提前通知时间
+        if(cmmsUpkeepPlanDto.getNoticetype() != null) cmmsUpkeepPlan.setNoticetype(cmmsUpkeepPlanDto.getNoticetype());//保养计划执行提前通知时间单位
+        if(cmmsUpkeepPlanDto.getStatus() != null) cmmsUpkeepPlan.setStatus(cmmsUpkeepPlanDto.getStatus());//保养计划是否启用状态 0启用 1停用
+        if(cmmsUpkeepPlanDto.getIfnotice() != null) cmmsUpkeepPlan.setIfnotice(cmmsUpkeepPlanDto.getIfnotice());//保养计划即将执行是否已通知 是/否
+        if(cmmsUpkeepPlanDto.getEquipmentid() != null) cmmsUpkeepPlan.setEquipmentid(cmmsUpkeepPlanDto.getEquipmentid());//保养计划对应的设备id
+        if(cmmsUpkeepPlanDto.getRemark() != null & (!("".equals(cmmsUpkeepPlanDto.getRemark())))) cmmsUpkeepPlan.setRemark(cmmsUpkeepPlanDto.getRemark());//保养计划备注
+        cmmsUpkeepPlan.setNexttime(getNextTime(cmmsUpkeepPlanDto.getBegintime(), cmmsUpkeepPlanDto.getRepeattype(), cmmsUpkeepPlanDto.getRepeatnum()));//下次保养计划执行时间
+        cmmsUpkeepPlan.setNoticetime(getNextTime(cmmsUpkeepPlanDto.getBegintime(), cmmsUpkeepPlanDto.getNoticetype(), -(cmmsUpkeepPlanDto.getNoticenum())));//保养计划执行提醒时间
+        boolean b1 = this.save(cmmsUpkeepPlan);
+
+        //二、更新保养计划-保养项表
+        List<CmmsUpkeepItemDto> cmmsUpkeepItemDtoList = cmmsUpkeepPlanDto.getCmmsUpkeepItemDtoList();
+        List<CmmsUpkeepPlanItem> cmmsUpkeepPlanItemList = new ArrayList<>();
+        for(CmmsUpkeepItemDto cmmsUpkeepItemDto:cmmsUpkeepItemDtoList){
+            CmmsUpkeepPlanItem cmmsUpkeepPlanItem = new CmmsUpkeepPlanItem();
+            cmmsUpkeepPlanItem.setUpkeepplanid(cmmsUpkeepPlan.getId());//保养计划id
+            if(cmmsUpkeepItemDto.getId() != null) cmmsUpkeepPlanItem.setUpkeepitemid(cmmsUpkeepItemDto.getId());//保养项id
+            cmmsUpkeepPlanItemList.add(cmmsUpkeepPlanItem);
+        }
+        boolean b2 = cmmsUpkeepPlanItemService.saveBatch(cmmsUpkeepPlanItemList);
+        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);
+    }
+
 }