瀏覽代碼

Merge branch 'master' of http://git.nzklabs.com:3000/huangyuanhao/jfcloud-coldchain

jackzhou 5 月之前
父節點
當前提交
b4da258617

+ 5 - 4
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/monitordevice/service/impl/MonitorDeviceServiceImpl.java

@@ -434,12 +434,13 @@ public class MonitorDeviceServiceImpl extends ServiceImpl<MonitorDeviceMapper, M
         } catch (Exception e) {
             throw new RuntimeException(e);
         }*/
-        response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
+//        response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
+        response.setContentType("application/vnd.ms-excel");
         response.setCharacterEncoding("utf-8");
         //设置导出文件名
         String filename = "笼位信息模版";
 
-        response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + URLEncoder.encode(fileName, StandardCharsets.UTF_8) + ".xlsx");
+        response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + URLEncoder.encode(fileName, StandardCharsets.UTF_8) + ".xls");
         //模板实体类
         List<MonitorDeviceTemplate> secondInspProbExcelDTOS = new ArrayList<>();
         //普通下拉数据
@@ -447,7 +448,7 @@ public class MonitorDeviceServiceImpl extends ServiceImpl<MonitorDeviceMapper, M
         try (OutputStream outputStream = response.getOutputStream()) {
             EasyExcel.write(outputStream, MonitorDeviceTemplate.class)
                     .registerWriteHandler(new CustomCellWriteHandler(map))
-                    .excelType(ExcelTypeEnum.XLSX)
+                    .excelType(ExcelTypeEnum.XLS)
                     .sheet(sheetName)
                     .doWrite(secondInspProbExcelDTOS);
         } catch (IOException e) {
@@ -479,7 +480,7 @@ public class MonitorDeviceServiceImpl extends ServiceImpl<MonitorDeviceMapper, M
             throw new RuntimeException(e);
         }
         // 检查是否大于1000条
-        if (monitorDeviceTemplateList.size() > 2) {
+        if (monitorDeviceTemplateList.size() > 1000) {
             throw new RuntimeException("超过最多处理条数");
         }
         // 将 userExcelList 转成 userList

+ 1 - 1
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/monitortarget/entity/MonitorTarget.java

@@ -57,7 +57,7 @@ public class MonitorTarget extends OrgEntity {
      * 状态(1:正常,2:闲置)
      */
     @Schema(description = "状态(1:正常,2:闲置)")
-    private String status;
+    private String status = "2";
 
     /**
      * 监控位置区域

+ 2 - 0
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/monitortarget/service/MonitorTargetService.java

@@ -138,6 +138,8 @@ public interface MonitorTargetService extends IService<MonitorTarget> {
      */
     void editWithRoom(MonitorTargetEditWithRoomParam monitorTargetEditWithRoomParam);
 
+    List<MonitorTarget> getTargetListByRoom(String roomId);
+
     TargetRoom getRoomByMonitorTargetId(String monitorTargetId);
 
     void updateStatusbatch(Map<String,Integer> deviceCodes);

+ 7 - 0
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/monitortarget/service/impl/MonitorTargetServiceImpl.java

@@ -130,6 +130,13 @@ public class MonitorTargetServiceImpl extends ServiceImpl<MonitorTargetMapper, M
         this.updateById(monitorTarget);
     }
 
+    @Override
+    public List<MonitorTarget> getTargetListByRoom(String roomId) {
+        LambdaQueryWrapper<MonitorTarget> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(MonitorTarget::getRoomId,roomId).eq(MonitorTarget::getDeleteFlag, CommonDeleteFlagEnum.NOT_DELETE);
+        return list(queryWrapper);
+    }
+
     @Transactional(rollbackFor = Exception.class)
     @Override
     public void addWithRoom(MonitorTargetAddWithRoomParam monitorTargetAddWithRoomParam) {

+ 6 - 0
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/monitortargetregion/param/MonitorTargetRegionAddParam.java

@@ -160,4 +160,10 @@ public class MonitorTargetRegionAddParam {
 
     @Schema(description = "勿扰结束时间")
     private String ignoreEndTime;
+
+    /**
+     * 设备下线预警
+     */
+    @Schema(description = "设备下线预警")
+    private Boolean deviceOfflineAlarm;
 }

+ 6 - 0
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/monitortargetregion/param/MonitorTargetRegionEditParam.java

@@ -163,4 +163,10 @@ public class MonitorTargetRegionEditParam {
 
     @Schema(description = "勿扰结束时间")
     private String ignoreEndTime;
+
+    /**
+     * 设备下线预警
+     */
+    @Schema(description = "设备下线预警")
+    private Boolean deviceOfflineAlarm;
 }

+ 4 - 0
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/targetroom/entity/TargetRoom.java

@@ -74,4 +74,8 @@ public class TargetRoom extends OrgEntity {
     @Schema(description = "修改用户")
     @TableField(fill = FieldFill.UPDATE)
     private String updateUser;
+
+    /** 点位数量 */
+    @TableField(exist = false)
+    private Long regionCount;
 }

+ 4 - 0
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/targetroom/param/TargetRoomPageParam.java

@@ -52,4 +52,8 @@ public class TargetRoomPageParam {
     @Schema(description = "房间id")
     private String roomId;
 
+    /** 房间名 */
+    @Schema(description = "房间名")
+    private String name;
+
 }

+ 19 - 3
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/targetroom/service/impl/TargetRoomServiceImpl.java

@@ -20,10 +20,13 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import jakarta.annotation.Resource;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import vip.xiaonuo.auth.core.pojo.SaBaseLoginUser;
 import vip.xiaonuo.auth.core.util.StpLoginUserUtil;
+import vip.xiaonuo.coldchain.modular.monitortarget.entity.MonitorTarget;
+import vip.xiaonuo.coldchain.modular.monitortarget.service.MonitorTargetService;
 import vip.xiaonuo.common.enums.CommonDeleteFlagEnum;
 import vip.xiaonuo.common.enums.CommonSortOrderEnum;
 import vip.xiaonuo.common.exception.CommonException;
@@ -47,12 +50,15 @@ import java.util.List;
 @Service
 public class TargetRoomServiceImpl extends ServiceImpl<TargetRoomMapper, TargetRoom> implements TargetRoomService {
 
+    @Resource
+    private MonitorTargetService monitorTargetService;
+
     @Override
     public Page<TargetRoom> page(TargetRoomPageParam targetRoomPageParam) {
         SaBaseLoginUser loginUser = StpLoginUserUtil.getLoginUser();
         QueryWrapper<TargetRoom> queryWrapper = new QueryWrapper<TargetRoom>().checkSqlInjection();
-        if(ObjectUtil.isNotEmpty(targetRoomPageParam.getRoomId())) {
-            queryWrapper.lambda().like(TargetRoom::getName, targetRoomPageParam.getRoomId());
+        if(ObjectUtil.isNotEmpty(targetRoomPageParam.getName())) {
+            queryWrapper.lambda().like(TargetRoom::getName, targetRoomPageParam.getName());
         }
         queryWrapper.lambda().eq(TargetRoom::getCreateOrg, loginUser.getOrgId()).eq(TargetRoom::getDeleteFlag, CommonDeleteFlagEnum.NOT_DELETE);
         if(ObjectUtil.isAllNotEmpty(targetRoomPageParam.getSortField(), targetRoomPageParam.getSortOrder())) {
@@ -84,6 +90,12 @@ public class TargetRoomServiceImpl extends ServiceImpl<TargetRoomMapper, TargetR
     @Transactional(rollbackFor = Exception.class)
     @Override
     public void delete(List<TargetRoomIdParam> targetRoomIdParamList) {
+        for (TargetRoomIdParam targetRoomIdParam : targetRoomIdParamList) {
+            List<MonitorTarget> targetListByRoom = monitorTargetService.getTargetListByRoom(targetRoomIdParam.getId());
+            if (!targetListByRoom.isEmpty()) {
+                throw new CommonException("该房间中存在冰箱,不可删除!");
+            }
+        }
         // 执行删除
         this.removeByIds(CollStreamUtil.toList(targetRoomIdParamList, TargetRoomIdParam::getId));
     }
@@ -109,6 +121,10 @@ public class TargetRoomServiceImpl extends ServiceImpl<TargetRoomMapper, TargetR
         queryWrapper.eq(TargetRoom::getCreateOrg,loginUser.getOrgId())
                 .eq(TargetRoom::getDeleteFlag, CommonDeleteFlagEnum.NOT_DELETE)
                 .orderByAsc(TargetRoom::getSortCode);
-        return list(queryWrapper);
+        List<TargetRoom> list = list(queryWrapper);
+        list.forEach(targetRoom -> {
+            targetRoom.setRegionCount(monitorTargetService.getTargetCount(null,targetRoom.getId()).getTotal());
+        });
+        return list;
     }
 }