From bdfce3674b99e3bb494f1a8a479834f842968ef2 Mon Sep 17 00:00:00 2001
From: bsw215583320 <baoshiwei121@163.com>
Date: 星期五, 22 十一月 2024 11:11:57 +0800
Subject: [PATCH] feat(dry): 添加租户设备查询功能并优化代码

---
 jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/controller/DryEquipmentController.java |   66 ++++++++++++++++++++++++++++-----
 1 files changed, 56 insertions(+), 10 deletions(-)

diff --git a/jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/controller/DryEquipmentController.java b/jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/controller/DryEquipmentController.java
index 88b8858..0bf2aac 100644
--- a/jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/controller/DryEquipmentController.java
+++ b/jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/controller/DryEquipmentController.java
@@ -1,5 +1,6 @@
 package org.jeecg.modules.dry.controller;
 
+import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
 import java.util.Map;
@@ -9,11 +10,16 @@
 import java.net.URLDecoder;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
+
+import cn.hutool.core.bean.BeanUtil;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.config.TenantContext;
 import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.common.util.RedisUtil;
 import org.jeecg.common.util.oConvertUtils;
 import org.jeecg.config.mybatis.MybatisPlusSaasConfig;
+import org.jeecg.modules.dry.common.CacheConstants;
+import org.jeecg.modules.dry.entity.DryEqpType;
 import org.jeecg.modules.dry.entity.DryEquipment;
 import org.jeecg.modules.dry.service.IDryEqpTypeService;
 import org.jeecg.modules.dry.service.IDryEquipmentService;
@@ -23,12 +29,14 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import lombok.extern.slf4j.Slf4j;
 
+import org.jeecg.modules.dry.vo.DryEquipmentVo;
 import org.jeecgframework.poi.excel.ExcelImportUtil;
 import org.jeecgframework.poi.excel.def.NormalExcelConstants;
 import org.jeecgframework.poi.excel.entity.ExportParams;
 import org.jeecgframework.poi.excel.entity.ImportParams;
 import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
 import org.jeecg.common.system.base.controller.JeecgController;
+import org.jetbrains.annotations.NotNull;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
@@ -57,6 +65,9 @@
 	@Autowired
 	private IDryEqpTypeService dryEqpTypeService;
 
+
+	 @Autowired
+	 private RedisUtil redisUtil;
 	/**
 	 * 鍒嗛〉鍒楄〃鏌ヨ
 	 *
@@ -87,7 +98,7 @@
 
 	 @ApiOperation(value="鏌ヨ鎵�鏈夊共鐕ユ満", notes="鏌ヨ鎵�鏈夊共鐕ユ満")
 	 @GetMapping(value = "/listAll")
-	public Result<List<DryEquipment>> queryAllEquipment(DryEquipment dryEquipment, HttpServletRequest req) {
+	public Result<List<DryEquipmentVo>> queryAllEquipment(DryEquipment dryEquipment, HttpServletRequest req) {
 		//------------------------------------------------------------------------------------------------
 		//鏄惁寮�鍚郴缁熺鐞嗘ā鍧楃殑澶氱鎴锋暟鎹殧绂汇�怱AAS澶氱鎴锋ā寮忋��
 		if(MybatisPlusSaasConfig.OPEN_SYSTEM_TENANT_CONTROL){
@@ -96,13 +107,38 @@
 		//------------------------------------------------------------------------------------------------
 		QueryWrapper<DryEquipment> queryWrapper = QueryGenerator.initQueryWrapper(dryEquipment, req.getParameterMap());
 
-		queryWrapper.orderByAsc("code");
-		List<DryEquipment> eqps = dryEquipmentService.list(queryWrapper);
-		eqps.stream().forEach(item -> {
-			item.setType(dryEqpTypeService.getById(item.getType()).getName());
-		});
-		return Result.OK(eqps);
+		 List<DryEquipmentVo> equipmentVos = getDryEquipmentVos(queryWrapper);
+		 return Result.OK(equipmentVos);
 	}
+
+	 @NotNull
+	 private List<DryEquipmentVo> getDryEquipmentVos(QueryWrapper<DryEquipment> queryWrapper) {
+		 queryWrapper.orderByAsc("code");
+		 List<DryEquipment> eqps = dryEquipmentService.list(queryWrapper);
+		 List<DryEquipmentVo> equipmentVos = new ArrayList<>();
+		 eqps.stream().forEach(item -> {
+			 DryEquipmentVo dryEquipmentVo = BeanUtil.toBean(item, DryEquipmentVo.class);
+			 DryEqpType dryEqpType = dryEqpTypeService.getById(item.getType());
+			 dryEquipmentVo.setType(dryEqpType.getName());
+			 dryEquipmentVo.setDryEfficiency(dryEqpType.getDryEfficiency());
+			 dryEquipmentVo.setSteamConsumption(dryEqpType.getSteamConsumption());
+			 dryEquipmentVo.setPowerConsumption(dryEqpType.getPowerConsumption());
+			 equipmentVos.add(dryEquipmentVo);
+		 });
+		 return equipmentVos;
+	 }
+
+
+	 @ApiOperation(value="鏌ヨ绉熸埛鎵�鏈夊共鐕ユ満", notes="鏌ヨ绉熸埛鎵�鏈夊共鐕ユ満")
+	 @GetMapping(value = "/listTenantEqp")
+	 public Result<List<DryEquipmentVo>> queryTenantAllEquipment(DryEquipment dryEquipment, HttpServletRequest req) {
+		TenantContext.setTenant(dryEquipment.getTenantId()+"");
+
+		 QueryWrapper<DryEquipment> queryWrapper = QueryGenerator.initQueryWrapper(dryEquipment, req.getParameterMap());
+
+		 List<DryEquipmentVo> equipmentVos = getDryEquipmentVos(queryWrapper);
+		 return Result.OK(equipmentVos);
+	 }
 
 
 
@@ -134,7 +170,10 @@
 	@RequiresPermissions("dry:dry_equipment:edit")
 	@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
 	public Result<String> edit(@RequestBody DryEquipment dryEquipment) {
+		// 鍒犻櫎redis缂撳瓨
+		redisUtil.del(CacheConstants.RedisKeyEnum.EQP_MAP.getCode());
 		dryEquipmentService.updateById(dryEquipment);
+
 		return Result.OK("缂栬緫鎴愬姛!");
 	}
 
@@ -149,6 +188,7 @@
 	@RequiresPermissions("dry:dry_equipment:delete")
 	@DeleteMapping(value = "/delete")
 	public Result<String> delete(@RequestParam(name="id",required=true) String id) {
+		redisUtil.del(CacheConstants.RedisKeyEnum.EQP_MAP.getCode());
 		dryEquipmentService.removeById(id);
 		return Result.OK("鍒犻櫎鎴愬姛!");
 	}
@@ -164,6 +204,7 @@
 	@RequiresPermissions("dry:dry_equipment:deleteBatch")
 	@DeleteMapping(value = "/deleteBatch")
 	public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
+		redisUtil.del(CacheConstants.RedisKeyEnum.EQP_MAP.getCode());
 		this.dryEquipmentService.removeByIds(Arrays.asList(ids.split(",")));
 		return Result.OK("鎵归噺鍒犻櫎鎴愬姛!");
 	}
@@ -177,13 +218,18 @@
 	//@AutoLog(value = "骞茬嚗鏈�-閫氳繃id鏌ヨ")
 	@ApiOperation(value="骞茬嚗鏈�-閫氳繃id鏌ヨ", notes="骞茬嚗鏈�-閫氳繃id鏌ヨ")
 	@GetMapping(value = "/queryById")
-	public Result<DryEquipment> queryById(@RequestParam(name="id",required=true) String id) {
+	public Result<DryEquipmentVo> queryById(@RequestParam(name="id",required=true) String id) {
 		DryEquipment dryEquipment = dryEquipmentService.getById(id);
-		dryEquipment.setType(dryEqpTypeService.getById(dryEquipment.getType()).getName());
+		DryEquipmentVo dryEquipmentVo = BeanUtil.toBean(dryEquipment, DryEquipmentVo.class);
+		DryEqpType dryEqpType = dryEqpTypeService.getById(dryEquipment.getType());
+		dryEquipmentVo.setType(dryEqpType.getName());
+		dryEquipmentVo.setDryEfficiency(dryEqpType.getDryEfficiency());
+		dryEquipmentVo.setSteamConsumption(dryEqpType.getSteamConsumption());
+		dryEquipmentVo.setPowerConsumption(dryEqpType.getPowerConsumption());
 		if(dryEquipment==null) {
 			return Result.error("鏈壘鍒板搴旀暟鎹�");
 		}
-		return Result.OK(dryEquipment);
+		return Result.OK(dryEquipmentVo);
 	}
 
     /**

--
Gitblit v1.9.3