ソースを参照

Merge branch 'master' into prod

lijin 1 年間 前
コミット
c21d2c0c0e

+ 9 - 0
device-api-service/src/main/java/com/xy/mapper/DeviceDataMapper.java

@@ -2,6 +2,7 @@ package com.xy.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.xy.dto.DeviceDataDto;
+import com.xy.dto.DeviceFaultInfoDto;
 import com.xy.entity.DeviceData;
 import org.apache.ibatis.annotations.Param;
 
@@ -23,4 +24,12 @@ public interface DeviceDataMapper extends BaseMapper<DeviceData> {
             , @Param("endDateInt") Integer endDateInt
             , @Param("type") String type
     );
+
+    /**
+     * 根据事件编码分组统计故障已解决、未解决设备数
+     * @return {@link DeviceFaultInfoDto.CountByDeviceVO}
+     */
+    List<DeviceFaultInfoDto.CountByDeviceVO> deviceFaultInfoCount(  );
+
 }
+

+ 19 - 0
device-api-service/src/main/java/com/xy/service/DeviceFaultInfoServiceImpl.java

@@ -65,6 +65,25 @@ public class DeviceFaultInfoServiceImpl extends ServiceImpl<DeviceFaultInfoMappe
     private final DeviceDataMapper deviceDataMapper;
     private final SysCodeConfigureService sysCodeConfigureService;
 
+    @PostMapping("countToDo")
+    @ApiOperation("待处理设备故障统计")
+    public R<Long> countToDo() {
+        long count = count(Wrappers.<DeviceFaultInfo>lambdaQuery().eq(DeviceFaultInfo::getState, 0));
+        return R.ok(count);
+    }
+
+    @PostMapping("countByDevice")
+    @ApiOperation("按故障类型统计设备数")
+    public R<List<DeviceFaultInfoDto.CountByDeviceVO>> countByDevice() {
+        List<DeviceFaultInfoDto.CountByDeviceVO> list = deviceDataMapper.deviceFaultInfoCount();
+        list.forEach(d->{
+            SysCodeConfigureRedis s = SysCodeConfigureUtils.get(d.getEventCode());
+            if(s!=null){
+                d.setEventName(s.getTitle());
+            }
+        });
+        return R.ok(list);
+    }
     @PostMapping("obj")
     @ApiOperation("对象查询")
     public R<DeviceFaultInfoDto.Vo> obj(@RequestBody DeviceFaultInfoDto.Vo vo) {

+ 7 - 2
device-api-service/src/main/java/com/xy/service/DeviceTypeAlgorithmBeforConfigServiceImpl.java

@@ -17,6 +17,7 @@ import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 
+import java.time.LocalDateTime;
 import java.util.List;
 
 import static com.xy.utils.Beans.copy;
@@ -58,7 +59,10 @@ public class DeviceTypeAlgorithmBeforConfigServiceImpl extends ServiceImpl<Devic
     @PostMapping("save")
     @ApiOperation("添加")
     public R save(@RequestBody @Validated DeviceTypeAlgorithmBeforConfigDto.Save save) {
-        DeviceTypeAlgorithmBeforConfig saveInfo = copy(DeviceTypeAlgorithmBeforConfig.class, save);
+        LocalDateTime now = LocalDateTime.now();
+        DeviceTypeAlgorithmBeforConfig saveInfo = copy(DeviceTypeAlgorithmBeforConfig.class, save)
+                .setCreateTime(now)
+                .setUpdateTime(now);
         save(saveInfo);
         return R.ok().setLogMsg(String.format("商户id:%s,算法id:%s,预充金额:%s", save.getMercId(), save.getAlgorithmId(), save.getMoney()));
     }
@@ -68,7 +72,8 @@ public class DeviceTypeAlgorithmBeforConfigServiceImpl extends ServiceImpl<Devic
     @ApiOperation("修改")
     public R update(@RequestBody @Validated DeviceTypeAlgorithmBeforConfigDto.Update update) {
         DeviceTypeAlgorithmBeforConfig deviceTypeAlgorithmBeforConfig = getById(update.getId());
-        DeviceTypeAlgorithmBeforConfig updateInfo = copy(DeviceTypeAlgorithmBeforConfig.class, update);
+        DeviceTypeAlgorithmBeforConfig updateInfo = copy(DeviceTypeAlgorithmBeforConfig.class, update)
+                .setUpdateTime(LocalDateTime.now());
         updateById(updateInfo);
         return R.ok().setLogMsg(String.format("商户id:%s,算法id:%s,原预充金额:%s,新预充金额:%s", deviceTypeAlgorithmBeforConfig.getMercId(), deviceTypeAlgorithmBeforConfig.getAlgorithmId(), deviceTypeAlgorithmBeforConfig.getMoney(), update.getMoney()));
     }

+ 16 - 0
device-api-service/src/main/resources/mapper/DeviceDataMapper.xml

@@ -9,4 +9,20 @@
           and date_value BETWEEN #{beginDateInt} and #{endDateInt}
         GROUP BY date_value
     </select>
+
+
+    <select id="deviceFaultInfoCount" resultType="com.xy.dto.DeviceFaultInfoDto$CountByDeviceVO">
+            SELECT
+            event_code eventCode,
+            sum( state = '0'  ) todoNum,
+            sum( state = '1'   ) doneNum
+        FROM
+            device_fault_info
+        GROUP BY
+            event_code
+
+
+    </select>
+
+
 </mapper>