فهرست منبع

运行计划优化

yuanchao 1 ماه پیش
والد
کامیت
8633fbbbdd

+ 4 - 1
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/dal/mysql/iotopeationfill/IotOpeationFillMapper.java

@@ -62,9 +62,12 @@ public interface IotOpeationFillMapper extends BaseMapperX<IotOpeationFillDO> {
     List<IotOpeationFillDO> getFillDevices(@Param("deviceIds")List<Long> deviceIds);
 
     List<IotModelTemplateAttrsDO> getAttrsById(IotModelTemplateAttrsRespVO vo);
+
     @TenantIgnore
     int insertFill(List<IotOpeationFillDO> vo);
-    int insertFillOrder(List<IotOpeationFillDO> vo);
+
+    /*int insertFillOrder(List<IotOpeationFillDO> vo);*/
+
     @TenantIgnore
     List<IotOpeationFillDO> fillList(IotOpeationFillPageReqVO vo);
     @TenantIgnore

+ 40 - 34
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/job/IotOperationPlanJob.java

@@ -101,29 +101,32 @@ public class IotOperationPlanJob implements JobHandler {
 
                         //2、根据计划获取设备ID
                         List<IotDeviceRespVO> devList = iotOpeationFillMapper.getFillDevices2(idList);
-                        List<Long> devIdList= devList.stream().map(IotDeviceRespVO::getId).collect(Collectors.toList());
-                        //3、根据设备ID生成主表数据
-                        List<IotOpeationFillOrderDO> orderList = new ArrayList<>();
-                        List<IotOpeationFillDO> pdList = iotOpeationFillMapper.pdList(devIdList);
 
-                        for (IotOpeationFillDO pd:pdList) {
+                        if(devList.size()>0){
+                            List<Long> devIdList= devList.stream().map(IotDeviceRespVO::getId).collect(Collectors.toList());
+                            //3、根据设备ID生成主表数据
+                            List<IotOpeationFillOrderDO> orderList = new ArrayList<>();
+                            List<IotOpeationFillDO> pdList = iotOpeationFillMapper.pdList(devIdList);
 
-                            IotOpeationFillOrderDO fillDO = new IotOpeationFillOrderDO();
+                            for (IotOpeationFillDO pd:pdList) {
 
-                            fillDO.setOrderName(pd.getOrgName()+"/"+LocalDate.now()+"运行记录填报");
-                            fillDO.setDeptId(pd.getDeptId());
-                            fillDO.setOrderStatus(0);
-                            fillDO.setCreateTime(LocalDateTime.now());
-                            fillDO.setUserName(pd.getUserName());
-                            fillDO.setUserId(pd.getUserId());
-                            fillDO.setMobile(pd.getMobile());
-                            orderList.add(fillDO);
+                                IotOpeationFillOrderDO fillDO = new IotOpeationFillOrderDO();
 
-                        }
+                                fillDO.setOrderName(pd.getOrgName()+"/"+LocalDate.now()+"运行记录填报");
+                                fillDO.setDeptId(pd.getDeptId());
+                                fillDO.setOrderStatus(0);
+                                fillDO.setCreateTime(LocalDateTime.now());
+                                fillDO.setUserName(pd.getUserName());
+                                fillDO.setUserId(pd.getUserId());
+                                fillDO.setMobile(pd.getMobile());
+                                orderList.add(fillDO);
+
+                            }
 
+                            deal(planDO, date,devIdList,orderList);
+                        }
 
 
-                        deal(planDO, date,devIdList,orderList);
                     }
                 } else {
                     Date lastdate = Date.from(
@@ -142,28 +145,31 @@ public class IotOperationPlanJob implements JobHandler {
 
                     //2、根据计划获取设备ID
                     List<IotDeviceRespVO> devList = iotOpeationFillMapper.getFillDevices2(idList);
-                    List<Long> devIdList= devList.stream().map(IotDeviceRespVO::getId).collect(Collectors.toList());
-                    //3、根据设备ID生成主表数据
-                    List<IotOpeationFillOrderDO> orderList = new ArrayList<>();
-                    List<IotOpeationFillDO> pdList = iotOpeationFillMapper.pdList(devIdList);
+                    if(devList.size()>0){
+                        List<Long> devIdList= devList.stream().map(IotDeviceRespVO::getId).collect(Collectors.toList());
+                        //3、根据设备ID生成主表数据
+                        List<IotOpeationFillOrderDO> orderList = new ArrayList<>();
+                        List<IotOpeationFillDO> pdList = iotOpeationFillMapper.pdList(devIdList);
 
-                    for (IotOpeationFillDO pd:pdList) {
+                        for (IotOpeationFillDO pd:pdList) {
 
-                        IotOpeationFillOrderDO fillDO = new IotOpeationFillOrderDO();
+                            IotOpeationFillOrderDO fillDO = new IotOpeationFillOrderDO();
 
-                        fillDO.setOrderName(pd.getOrgName()+"/"+LocalDate.now()+"运行记录填报");
-                        fillDO.setDeptId(pd.getDeptId());
-                        fillDO.setOrderStatus(0);
-                        fillDO.setCreateTime(LocalDateTime.now());
-                        fillDO.setUserName(pd.getUserName());
-                        fillDO.setUserId(pd.getUserId());
-                        fillDO.setMobile(pd.getMobile());
-                        orderList.add(fillDO);
+                            fillDO.setOrderName(pd.getOrgName()+"/"+LocalDate.now()+"运行记录填报");
+                            fillDO.setDeptId(pd.getDeptId());
+                            fillDO.setOrderStatus(0);
+                            fillDO.setCreateTime(LocalDateTime.now());
+                            fillDO.setUserName(pd.getUserName());
+                            fillDO.setUserId(pd.getUserId());
+                            fillDO.setMobile(pd.getMobile());
+                            orderList.add(fillDO);
 
-                    }
+                        }
 
 
-                    deal(planDO, lastdate,devIdList,orderList);
+                        deal(planDO, lastdate,devIdList,orderList);
+                    }
+
                 }
             }
 
@@ -221,7 +227,7 @@ public class IotOperationPlanJob implements JobHandler {
         iotOpeationFillOrderMapper.insertBatch(orderList1);
 
 
-        //发送钉钉通知
+        /*//发送钉钉通知
         pmsThreadPoolTaskExecutor.execute(()->{
             try{
                 for (IotOpeationFillOrderDO order:orderList1) {
@@ -230,7 +236,7 @@ public class IotOperationPlanJob implements JobHandler {
             }catch (Exception e){
                 e.printStackTrace();
             }
-        });
+        });*/
 
 
         for (IotOpeationFillDO device:deviceList) {

+ 2 - 2
yudao-module-pms/yudao-module-pms-biz/src/main/resources/mapper/static/IotOpeationFillMapper.xml

@@ -163,7 +163,7 @@
         </foreach>
     </insert>
 
-    <insert id="insertFillOrder"
+   <!-- <insert id="insertFillOrder"
             parameterType="cn.iocoder.yudao.module.pms.dal.dataobject.iotopeationfill.IotOpeationFillDO">
         insert into rq_iot_opeation_fill_order(dept_id,order_name,
         order_status,create_time,order_type,user_name,user_id)
@@ -173,7 +173,7 @@
             #{item.createTime},#{item.orderType},#{item.userName},#{item.userId})
         </foreach>
 
-    </insert>
+    </insert>-->
 
     <insert id="insertLog"
             parameterType="cn.iocoder.yudao.module.pms.dal.dataobject.iotdevicerunlog.IotDeviceRunLogDO">

+ 1 - 1
yudao-module-pms/yudao-module-pms-biz/src/main/resources/mapper/static/IotOperationPlanMapper.xml

@@ -11,7 +11,7 @@
 
 
     <select id="getPlanList" resultType="cn.iocoder.yudao.module.pms.dal.dataobject.iotoperationplan.IotOperationPlanDO">
-        select * from rq_iot_operation_plan where status = '0' and deleted = '0'
+        select * from rq_iot_operation_plan where status = 0 and deleted = 0
     </select>
 
 </mapper>