Parcourir la source

运行记录填报2

yuanchao il y a 2 mois
Parent
commit
0352eb9c83

+ 15 - 9
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/iotopeationfill/IotOpeationFillController.java

@@ -99,12 +99,21 @@ public class IotOpeationFillController {
             deviceRunLogDO.setCreateTime(LocalDateTime.of(fill.getCreateTime(),localTime));
             deviceRunLogDO.setPointName(fill.getPointName());
             if(logList.size()>0){
-                BigDecimal num1 = logList.get(0).getTotalRunTime();
-                BigDecimal num2 = new BigDecimal(fill.getFillContent());
-                deviceRunLogDO.setTotalRunTime(num1.add(num2));
+                if(createReqVO.get(0).getIsCollection()==1){
+                    deviceRunLogDO.setTotalRunTime(createReqVO.get(0).getTotalRunTime());
+                }else{
+                    BigDecimal num1 = logList.get(0).getTotalRunTime();
+                    BigDecimal num2 = new BigDecimal(fill.getFillContent());
+                    deviceRunLogDO.setTotalRunTime(num1.add(num2));
+                }
             }else{
-                BigDecimal num2 = new BigDecimal(fill.getFillContent());
-                deviceRunLogDO.setTotalRunTime(num2);
+                if(createReqVO.get(0).getIsCollection()==1){
+                    deviceRunLogDO.setTotalRunTime(createReqVO.get(0).getTotalRunTime());
+                }else{
+                    BigDecimal num2 = new BigDecimal(fill.getFillContent());
+                    deviceRunLogDO.setTotalRunTime(num2);
+                }
+
             }
 
             logDO.add(deviceRunLogDO);
@@ -221,10 +230,7 @@ public class IotOpeationFillController {
     @Operation(summary = "获得运行记录填报分页")
     public CommonResult<PageResult<IotOpeationFillOrderDO>> getFillRecords(@Valid IotOpeationFillPageReqVO pageReqVO) {
 
-        List<IotOpeationFillOrderDO> list =  iotOpeationFillService.fillRecords(pageReqVO);
-        PageResult<IotOpeationFillOrderDO> fillList = new PageResult(list,Long.valueOf(list.size()));
-
-        return success(BeanUtils.toBean(fillList, IotOpeationFillOrderDO.class));
+        return success(BeanUtils.toBean( iotOpeationFillService.fillRecords(pageReqVO), IotOpeationFillOrderDO.class));
     }
 
 

+ 7 - 0
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/iotopeationfill/vo/IotOpeationFillSaveReqVO.java

@@ -3,6 +3,7 @@ package cn.iocoder.yudao.module.pms.controller.admin.iotopeationfill.vo;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.*;
 
+import java.math.BigDecimal;
 import java.time.LocalDate;
 import java.util.*;
 import javax.validation.constraints.*;
@@ -73,4 +74,10 @@ public class IotOpeationFillSaveReqVO {
     private LocalDate createTime;
 
     private Integer userId;
+
+    private Integer isCollection;
+
+    private BigDecimal totalRunTime;
+
+    private Long orderId;
 }

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

@@ -57,6 +57,7 @@ public interface IotOpeationFillMapper extends BaseMapperX<IotOpeationFillDO> {
     List<IotOpeationFillDO> fillList(IotOpeationFillPageReqVO vo);
     @TenantIgnore
     List<IotOpeationFillDO> fillListByUserId(IotOpeationFillRespVO vo);
+    @TenantIgnore
     List<IotOpeationFillDO> fillListByDeptId(IotOpeationFillRespVO vo);
     @TenantIgnore
     List<IotOpeationFillDO> rdList();
@@ -90,5 +91,5 @@ public interface IotOpeationFillMapper extends BaseMapperX<IotOpeationFillDO> {
     @TenantIgnore
     int updateFillOrder2(IotDeviceRunLogDO vo);
     @TenantIgnore
-    List<IotOpeationFillOrderDO> fillRecords(IotOpeationFillPageReqVO vo);
+    IPage<IotOpeationFillOrderDO> fillRecords(IPage<IotOpeationFillPageReqVO> page, @Param("deviceId") Long deviceId, @Param("orderName") String orderName,@Param("orderStatus") Integer orderStatus);
 }

+ 1 - 1
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/service/iotopeationfill/IotOpeationFillService.java

@@ -104,6 +104,6 @@ public interface IotOpeationFillService {
 
     int updateFillOrder2(IotDeviceRunLogDO vo);
 
-    List<IotOpeationFillOrderDO> fillRecords(IotOpeationFillPageReqVO vo);
+    PageResult<IotOpeationFillOrderDO> fillRecords(IotOpeationFillPageReqVO vo);
 
 }

+ 5 - 2
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/service/iotopeationfill/IotOpeationFillServiceImpl.java

@@ -10,6 +10,8 @@ import cn.iocoder.yudao.module.pms.dal.dataobject.iotopeationfill.IotOpeationFil
 import cn.iocoder.yudao.module.pms.dal.dataobject.iotopeationfill.IotOpeationFillOrderDO;
 import cn.iocoder.yudao.module.pms.dal.mysql.iotopeationfill.IotOpeationFillMapper;
 import cn.iocoder.yudao.module.pms.dal.mysql.iotopeationfill.IotOpeationFillOrderMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import org.springframework.stereotype.Service;
 import javax.annotation.Resource;
 import org.springframework.validation.annotation.Validated;
@@ -174,8 +176,9 @@ public class IotOpeationFillServiceImpl implements IotOpeationFillService {
     }
 
     @Override
-    public List<IotOpeationFillOrderDO> fillRecords(IotOpeationFillPageReqVO vo) {
-        return iotOpeationFillMapper.fillRecords(vo);
+    public PageResult<IotOpeationFillOrderDO> fillRecords(IotOpeationFillPageReqVO vo) {
+        IPage<IotOpeationFillOrderDO> fillOrderDOIPage = iotOpeationFillMapper.fillRecords(Page.of(vo.getPageNo(), vo.getPageSize()),vo.getDeviceId(),vo.getOrderName(),vo.getOrderStatus());
+        return new PageResult<>(fillOrderDOIPage.getRecords(),fillOrderDOIPage.getTotal());
     }
 
 }

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

@@ -149,6 +149,12 @@
                a.id = b.order_id
           and
                b.device_id = #{deviceId}
+          <if test="orderName != null  and orderName != ''">
+               and a.order_name like #{orderName}
+          </if>
+          <if test="orderStatus != null  and orderStatus != ''">
+              and a.order_status like #{orderStatus}
+          </if>
     </select>
 
     <select id="rhList"
@@ -255,18 +261,9 @@
     <select id="getFillList" parameterType="cn.iocoder.yudao.module.pms.controller.admin.iotopeationfill.vo.IotOpeationFillRespVO"
             resultType="cn.iocoder.yudao.module.pms.controller.admin.iotopeationfill.vo.IotOpeationFillRespVO">
         select distinct b.* from
-                                rq_iot_opeation_fill_order a,
-                                rq_iot_opeation_fill b,
-                                rq_iot_device_person c,
-                                rq_iot_model_template_attrs d
+            rq_iot_opeation_fill b
         where
-            a.user_id = c.person_id
-          and
-            c.device_id = b.device_id
-          and
-            a.user_id = #{userId}
-          and
-            b.device_category_id = d.device_category_id
+            b.order_id = #{orderId}
           and
             DATE(b.create_time)=DATE(#{createTime})
         order by b.create_time desc
@@ -290,7 +287,7 @@
         device_id = #{deviceId}
         and
         DATE(create_time)  = DATE(#{createTime})
-        order by create_time
+        order by id
         desc
         limit 1
     </select>