From 0201c32312f6478b2bde706607c8c6338e9e1d06 Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期三, 27 五月 2026 17:05:29 +0800
Subject: [PATCH] 新增智能电表、空调管理
---
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwElectricalCloudController.java | 101 +++++++++++++++++++++++++++++++++++++-------------
1 files changed, 75 insertions(+), 26 deletions(-)
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwElectricalCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwElectricalCloudController.java
index 846d7ad..9336a8a 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwElectricalCloudController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwElectricalCloudController.java
@@ -1,43 +1,66 @@
package com.doumee.cloud.admin;
-import com.doumee.api.BaseController;
import com.doumee.core.annotation.excel.ExcelExporter;
import com.doumee.core.annotation.pr.PreventRepeat;
+
+import com.doumee.core.utils.Constants;
import com.doumee.core.model.ApiResponse;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
-import com.doumee.core.utils.Constants;
+import com.doumee.dao.business.model.Device;
import com.doumee.dao.business.model.YwElectrical;
+import com.doumee.dao.business.model.YwElectricalData;
+import com.doumee.dao.business.dto.YwElectricalEditDTO;
+import com.doumee.dao.business.dto.YwElectricalOperateDTO;
+import com.doumee.service.business.YwElectricalBizService;
import com.doumee.service.business.YwElectricalService;
+import com.doumee.core.utils.Utils;
+import com.doumee.config.annotation.CloudRequiredPermission;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
-import com.doumee.config.annotation.CloudRequiredPermission;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
-
import javax.servlet.http.HttpServletResponse;
-import java.util.ArrayList;
-import java.util.List;
+import com.doumee.core.model.LoginUserInfo;
+import com.doumee.api.BaseController;
/**
- * 鐢佃〃璁惧淇℃伅
- * @author renkang
- * @date 2026/04/03
+ * 鐢佃〃璁惧淇℃伅Controller瀹氫箟
+ * @author doumee
+ * @date 2026-05-20 15:21:43
*/
-@Api(tags = "鐢佃〃璁惧淇℃伅")
+@Api(tags = "yw_electrical鎺ュ彛")
@RestController
-@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX + "/business/ywElectrical")
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX +"/business/ywElectrical")
public class YwElectricalCloudController extends BaseController {
@Autowired
private YwElectricalService ywElectricalService;
-
+ @Autowired
+ private YwElectricalBizService ywElectricalBizService;
+ @PreventRepeat
+ @ApiOperation("鍏ㄩ噺鍚屾鐢佃〃璁惧鎺ュ彛")
+ @PostMapping("/syncAll")
+ @CloudRequiredPermission("business:ywelectrical:device")
+ public ApiResponse syncHkDevices(@RequestBody YwElectrical ywElectricalData, @RequestHeader(Constants.HEADER_USER_TOKEN) String token){
+ ywElectricalData.setLoginUserInfo(this.getLoginUser(token));
+ String result = ywElectricalService.syncAll(ywElectricalData);
+ return ApiResponse.success(result);
+ }
+ @ApiOperation("鎵ц鐢佃〃寮�鍏抽椄鎿嶄綔")
+ @PostMapping("/controlDo")
+ @CloudRequiredPermission("business:ywelectrical:update")
+ public ApiResponse controlDo(@RequestBody Device param, @RequestHeader(Constants.HEADER_USER_TOKEN) String token){
+ param.setLoginUserInfo(this.getLoginUser(token));
+ ywElectricalService.controlDo(param);
+ return ApiResponse.success(null);
+ }
@PreventRepeat
@ApiOperation("鏂板缓")
@PostMapping("/create")
@CloudRequiredPermission("business:ywelectrical:create")
public ApiResponse create(@RequestBody YwElectrical ywElectrical, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
- ywElectrical.setLoginUserInfo(this.getLoginUser(token));
+ ywElectrical.setLoginUserInfo(this.getLoginUser(token));
return ApiResponse.success(ywElectricalService.create(ywElectrical));
}
@@ -53,12 +76,7 @@
@GetMapping("/delete/batch")
@CloudRequiredPermission("business:ywelectrical:delete")
public ApiResponse deleteByIdInBatch(@RequestParam String ids, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
- String[] idArray = ids.split(",");
- List<Integer> idList = new ArrayList<>();
- for (String id : idArray) {
- idList.add(Integer.valueOf(id));
- }
- ywElectricalService.deleteByIdInBatch(idList, this.getLoginUser(token));
+ ywElectricalService.deleteByIdInBatch(this.getIdList(ids), this.getLoginUser(token));
return ApiResponse.success(null);
}
@@ -74,9 +92,17 @@
@ApiOperation("鍒嗛〉鏌ヨ")
@PostMapping("/page")
@CloudRequiredPermission("business:ywelectrical:query")
- public ApiResponse<PageData<YwElectrical>> findPage(@RequestBody PageWrap<YwElectrical> pageWrap, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ public ApiResponse<PageData<YwElectrical>> findPage (@RequestBody PageWrap<YwElectrical> pageWrap, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
pageWrap.getModel().setLoginUserInfo(this.getLoginUser(token));
return ApiResponse.success(ywElectricalService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @CloudRequiredPermission("business:ywelectrical:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwElectrical> pageWrap, HttpServletResponse response, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ pageWrap.getModel().setLoginUserInfo(this.getLoginUser(token));
+ ExcelExporter.build(YwElectrical.class).export(ywElectricalService.findPage(pageWrap).getRecords(), "鐢佃〃璁惧淇℃伅", response);
}
@ApiOperation("鏍规嵁ID鏌ヨ")
@@ -86,11 +112,34 @@
return ApiResponse.success(ywElectricalService.findById(id));
}
- @ApiOperation("瀵煎嚭Excel")
- @PostMapping("/exportExcel")
- @CloudRequiredPermission("business:ywelectrical:exportExcel")
- public void exportExcel(@RequestBody PageWrap<YwElectrical> pageWrap, HttpServletResponse response, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
- pageWrap.getModel().setLoginUserInfo(this.getLoginUser(token));
- ExcelExporter.build(YwElectrical.class).export(ywElectricalService.findPage(pageWrap).getRecords(), "鐢佃〃璁惧淇℃伅", response);
+ @ApiOperation("缂栬緫璇︽儏")
+ @GetMapping("/detail/{id}")
+ @CloudRequiredPermission("business:ywelectrical:update")
+ public ApiResponse<YwElectricalEditDTO> detail(@PathVariable Integer id, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywElectricalBizService.getDetail(id));
+ }
+
+ @PreventRepeat
+ @ApiOperation("淇濆瓨缂栬緫")
+ @PostMapping("/saveDetail")
+ @CloudRequiredPermission("business:ywelectrical:update")
+ public ApiResponse saveDetail(@RequestBody YwElectricalEditDTO dto, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywElectricalBizService.updateDetail(dto, this.getLoginUser(token));
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("杩滅▼鎺у埗淇℃伅")
+ @GetMapping("/remoteInfo/{id}")
+ @CloudRequiredPermission("business:ywelectrical:update")
+ public ApiResponse remoteInfo(@PathVariable Integer id, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywElectricalBizService.getRemoteInfo(id));
+ }
+
+ @PreventRepeat
+ @ApiOperation("杩滅▼鎿嶄綔")
+ @PostMapping("/operate")
+ @CloudRequiredPermission("business:ywelectrical:update")
+ public ApiResponse<String> operate(@RequestBody YwElectricalOperateDTO dto, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywElectricalBizService.operate(dto, this.getLoginUser(token)));
}
}
--
Gitblit v1.9.3