Pārlūkot izejas kodu

保养计划更新计划状态接口修改,一个设备只能有一个保养计划启动

sl 1 gadu atpakaļ
vecāks
revīzija
476498c5d8

+ 8 - 1
module_cmms/src/main/java/org/jeecg/modules/cmmsUpkeepPlan/mapper/CmmsUpkeepPlanMapper.java

@@ -49,12 +49,19 @@ public interface CmmsUpkeepPlanMapper extends BaseMapper<CmmsUpkeepPlan> {
     public boolean updateCmmsUpkeepPlanContentById(@Param("cmmsUpkeepPlanDto") CmmsUpkeepPlanDto cmmsUpkeepPlanDto);
 
     /**
-     * 更新保养计划状态
+     * 通过id更新保养计划状态
      *
      */
     public boolean updateCmmsUpkeepPlanStatusById(@Param("cmmsUpkeepPlan") CmmsUpkeepPlan cmmsUpkeepPlan);
 
     /**
+     * 通过设备id将该设备的其它计划都设为不启用
+     * 一个设备只能启用一个计划
+     *
+     */
+    public boolean updateCmmsUpkeepPlanStatusByEqid(@Param("cmmsUpkeepPlan") CmmsUpkeepPlan cmmsUpkeepPlan);
+
+    /**
      * 根据保养计划批量更新下次生成工单时间及通知信息
      *
      */

+ 5 - 0
module_cmms/src/main/java/org/jeecg/modules/cmmsUpkeepPlan/mapper/xml/CmmsUpkeepPlanMapper.xml

@@ -91,6 +91,11 @@
         update cmms_upkeep_plan set status = #{cmmsUpkeepPlan.status} where id=#{cmmsUpkeepPlan.id}
     </update>
 
+    <!--通过设备id修改计划状态-->
+    <update id="updateCmmsUpkeepPlanStatusByEqid" parameterType="org.jeecg.modules.cmmsUpkeepPlan.entity.CmmsUpkeepPlan">
+        update cmms_upkeep_plan set status = "1" where equipmentid=#{cmmsUpkeepPlan.equipmentid} and id != #{cmmsUpkeepPlan.id}
+    </update>
+
     <!--修改下次生成工单时间及通知信息-->
     <update id="updateCmmsUpkeepCreateNoticeByIds" parameterType="org.jeecg.modules.cmmsUpkeepPlan.entity.CmmsUpkeepPlan">
         <foreach item="item" collection="cmmsUpkeepPlanList" index="index" open="(" separator="," close=")">

+ 8 - 1
module_cmms/src/main/java/org/jeecg/modules/cmmsUpkeepPlan/service/ICmmsUpkeepPlanService.java

@@ -57,12 +57,19 @@ public interface ICmmsUpkeepPlanService extends IService<CmmsUpkeepPlan> {
     public boolean updateCmmsUpkeepPlanContentById(CmmsUpkeepPlanDto cmmsUpkeepPlanDto);
 
     /**
-     * 更新保养计划状态
+     * 通过id更新保养计划状态
      *
      */
     public boolean updateCmmsUpkeepPlanStatusById(CmmsUpkeepPlan cmmsUpkeepPlan);
 
     /**
+     * 通过设备id将该设备的其它计划都设为不启用
+     * 一个设备只能启用一个计划
+     *
+     */
+    public boolean updateCmmsUpkeepPlanStatusByEqid(CmmsUpkeepPlan cmmsUpkeepPlan);
+
+    /**
      * 根据保养计划批量更新下次生成工单时间及通知信息
      *
      */

+ 10 - 0
module_cmms/src/main/java/org/jeecg/modules/cmmsUpkeepPlan/service/impl/CmmsUpkeepPlanServiceImpl.java

@@ -220,11 +220,21 @@ public class CmmsUpkeepPlanServiceImpl extends ServiceImpl<CmmsUpkeepPlanMapper,
      */
     public boolean updateCmmsUpkeepPlanStatusById(CmmsUpkeepPlan cmmsUpkeepPlan){
         boolean rtn = cmmsUpkeepPlanMapper.updateCmmsUpkeepPlanStatusById(cmmsUpkeepPlan);
+        if(cmmsUpkeepPlan.getStatus().equals("0")) cmmsUpkeepPlanMapper.updateCmmsUpkeepPlanStatusByEqid(cmmsUpkeepPlan);
         setRedisCache();
         return rtn;
     }
 
     /**
+     * 通过设备id将该设备的其它计划都设为不启用
+     * 一个设备只能启用一个计划
+     *
+     */
+    public boolean updateCmmsUpkeepPlanStatusByEqid(CmmsUpkeepPlan cmmsUpkeepPlan){
+        return cmmsUpkeepPlanMapper.updateCmmsUpkeepPlanStatusByEqid(cmmsUpkeepPlan);
+    }
+
+    /**
      * 根据保养计划批量更新下次生成工单时间及通知信息
      *
      */