From c58ada7f49aac20b06ea2ebda2cb5c006decf122 Mon Sep 17 00:00:00 2001
From: liukangdong <898885815@qq.com>
Date: 星期五, 10 五月 2024 17:01:55 +0800
Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/dmvisit

---
 server/meeting/meeting_admin/src/main/java/com/doumee/cloud/admin/BookingsCloudController.java |   75 ++++++++++++++++++-------------------
 1 files changed, 37 insertions(+), 38 deletions(-)

diff --git a/server/meeting/meeting_admin/src/main/java/com/doumee/api/CloudBookingsController.java b/server/meeting/meeting_admin/src/main/java/com/doumee/cloud/admin/BookingsCloudController.java
similarity index 76%
rename from server/meeting/meeting_admin/src/main/java/com/doumee/api/CloudBookingsController.java
rename to server/meeting/meeting_admin/src/main/java/com/doumee/cloud/admin/BookingsCloudController.java
index cf6831e..5d03593 100644
--- a/server/meeting/meeting_admin/src/main/java/com/doumee/api/CloudBookingsController.java
+++ b/server/meeting/meeting_admin/src/main/java/com/doumee/cloud/admin/BookingsCloudController.java
@@ -1,9 +1,9 @@
-package com.doumee.api;
+package com.doumee.cloud.admin;
 
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
-import com.doumee.config.annotation.LoginNoRequired;
+import com.doumee.api.BaseController;
 import com.doumee.core.annotation.excel.ExcelExporter;
 import com.doumee.core.annotation.pr.PreventRepeat;
 import com.doumee.core.model.ApiResponse;
@@ -23,7 +23,6 @@
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.SecurityUtils;
 import org.apache.shiro.authz.annotation.RequiresPermissions;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.util.CollectionUtils;
@@ -44,105 +43,106 @@
  * @author 姹熻箘韫�
  * @date 2023/05/04 18:18
  */
-@Api(tags = "寰湇鍔�-浼氳瀹ょ浉鍏虫帴鍙�")
+@Api(tags = "浼氳瀹ら瀹氫俊鎭〃")
 @RestController
-@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/bookings")
-public class CloudBookingsController extends BaseController {
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/bookings")
+public class BookingsCloudController extends BaseController {
 
     @Autowired
     private BookingsService bookingsService;
 
-    @ApiOperation("娴嬭瘯缃戠")
-    @GetMapping("/test")
-    public ApiResponse test() {
-        return ApiResponse.success("浼氳瀹ゆ祴璇曟垚鍔�");
-    }
-
-    @LoginNoRequired
-    @ApiOperation("娴嬭瘯鏃犻渶鐧诲綍鎴愬姛")
-    @GetMapping("/testNoLogin")
-    public ApiResponse testNoLogin() {
-        return ApiResponse.success("浼氳瀹ょ鐞嗘祴璇曟棤闇�鐧诲綍鎴愬姛");
-    }
     @PreventRepeat
     @ApiOperation("鏂板缓")
     @PostMapping("/create")
-    public ApiResponse create(@RequestBody Bookings bookings) {
-        LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+    @RequiresPermissions("business:bookings:create")
+    public ApiResponse create(@RequestBody Bookings bookings,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
+        LoginUserInfo user = getLoginUser(token);
+        bookings.setLoginUserInfo(user);
         bookings.setCreator(user.getId());
         return ApiResponse.success(bookingsService.create(bookings));
     }
 
     @ApiOperation("鏍规嵁ID鍒犻櫎")
     @GetMapping("/delete/{id}")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        bookingsService.deleteById(id);
+    @RequiresPermissions("business:bookings:delete")
+    public ApiResponse deleteById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
+        bookingsService.deleteById(id,this.getLoginUser(token));
         return ApiResponse.success(null);
     }
 
     @ApiOperation("鎵归噺鍒犻櫎")
     @GetMapping("/delete/batch")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
+    @RequiresPermissions("business:bookings: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) {
+        for (String id : idArray ){
             idList.add(Integer.valueOf(id));
         }
-        bookingsService.deleteByIdInBatch(idList);
+        bookingsService.deleteByIdInBatch(idList,this.getLoginUser(token));
         return ApiResponse.success(null);
     }
 
     @ApiOperation("鏍规嵁ID淇敼")
     @PostMapping("/updateById")
-    public ApiResponse updateById(@RequestBody Bookings bookings) {
-        LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
-        bookings.setCreator(user.getId());
+    @RequiresPermissions("business:bookings:update")
+    public ApiResponse updateById(@RequestBody Bookings bookings,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
+        LoginUserInfo user = getLoginUser(token);
+        bookings.setLoginUserInfo(user);
+        bookings.setEditor(user.getId());
         bookingsService.updateById(bookings);
         return ApiResponse.success(null);
     }
 
     @ApiOperation("鍒嗛〉鏌ヨ")
     @PostMapping("/page")
-    public ApiResponse<PageData<Bookings>> findPage (@RequestBody PageWrap<Bookings> pageWrap) {
+    @RequiresPermissions("business:bookings:query")
+    public ApiResponse<PageData<Bookings>> findPage (@RequestBody PageWrap<Bookings> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
         return ApiResponse.success(bookingsService.findPage(pageWrap));
     }
 
     @ApiOperation("瀵煎嚭Excel")
     @PostMapping("/exportExcel")
     @RequiresPermissions("business:bookings:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<Bookings> pageWrap, HttpServletResponse response) {
+    public void exportExcel (@RequestBody PageWrap<Bookings> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
         ExcelExporter.build(Bookings.class).export(bookingsService.findPage(pageWrap).getRecords(), "浼氳瀹ら瀹氫俊鎭〃", response);
     }
 
     @ApiOperation("鏍规嵁ID鏌ヨ")
     @GetMapping("/{id}")
-    public ApiResponse<MeetingDetailResponse> findById(@PathVariable Integer id) {
+    @RequiresPermissions("business:bookings:query")
+    public ApiResponse<MeetingDetailResponse> findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
         return ApiResponse.success(bookingsService.getMeetingDetail(id));
     }
 
 
     @ApiOperation("鍙栨秷")
     @PostMapping("/cancelById")
-    public ApiResponse cancelById(@RequestBody Bookings bookings) {
+    @RequiresPermissions("business:bookings:update")
+    public ApiResponse cancelById(@RequestBody Bookings bookings,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
+        bookings.setLoginUserInfo(this.getLoginUser(token));
         bookingsService.cancelById(bookings);
         return ApiResponse.success(null);
     }
 
     @ApiOperation("浼氳瀹や娇鐢ㄦ椂闀跨粺璁�")
     @GetMapping("/getRoomStatistics")
+    @RequiresPermissions("business:bookings:update")
     public ApiResponse<List<RoomStatisticsVo>> getRoomStatistics(@RequestParam Integer yearNum, @RequestParam Integer roomId){
         return ApiResponse.success(bookingsService.getRoomStatistics(yearNum));
     }
 
     @ApiOperation("浜哄憳鍙傚姞浼氳鏃跺父")
     @PostMapping("/getUserStatistics")
+    @RequiresPermissions("business:bookings:update")
     public ApiResponse<PageData<UserStatisticsVo>> getUserStatistics(@RequestBody PageWrap<UserStatisticsDTO> pageWrap ){
         return ApiResponse.success(bookingsService.getUserStatistics(pageWrap));
     }
 
     @ApiOperation("浜哄憳鍙備細鏃堕暱缁熻瀵煎嚭Excel")
     @PostMapping("/exportUserStatistics")
-    public void exportUserStatistics (@RequestBody PageWrap<UserStatisticsDTO> pageWrap,HttpServletResponse response) {
+    @RequiresPermissions("business:bookings:exportExcel")
+    public void exportUserStatistics (@RequestBody PageWrap<UserStatisticsDTO> pageWrap,HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
 
         List<UserStatisticsVo> records = bookingsService.getUserStatistics(pageWrap).getRecords();
         if (!CollectionUtils.isEmpty(records)){
@@ -165,7 +165,8 @@
 
     @ApiOperation("浼氳瀹や娇鐢ㄦ椂闀跨粺璁″鍑篍xcel")
     @PostMapping("/exportRoomStatistics")
-    public void exportRoomStatistics (@RequestBody PageWrap<UserStatisticsDTO> pageWrap,HttpServletResponse response) {
+    @RequiresPermissions("business:bookings:exportExcel")
+    public void exportRoomStatistics (@RequestBody PageWrap<UserStatisticsDTO> pageWrap,HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
         List<RoomStatisticsVo> roomStatistics = bookingsService.getRoomStatistics(pageWrap.getModel().getYearNum());
         if (!CollectionUtils.isEmpty(roomStatistics)){
             JSONArray o = (JSONArray) JSON.toJSON(roomStatistics);
@@ -198,7 +199,7 @@
             startTime =  DateUtil.getMonday();
             endTime = DateUtil.getSunday();
         }
-        return ApiResponse.success(bookingsService.getMyJoinBookingMeet(getLoginUser().getId(), null,startTime,endTime));
+        return ApiResponse.success(bookingsService.getMyJoinBookingMeet(getLoginUser(null).getId(), null,startTime,endTime));
     }
 
     /**
@@ -208,8 +209,6 @@
     @ApiOperation("鑾峰彇鐢ㄦ埛褰撳綋鏈堥绾︿細璁儏鍐�")
     @PostMapping("/findMothBookingMeet")
     public ApiResponse<List<DateTimeResourceDate>> findMothBookingMeet( @RequestParam(required = false) Integer roomId,String dateMonth){
-
-
-        return ApiResponse.success(bookingsService.findMothBookingMeet(getLoginUser().getId(),roomId,dateMonth));
+        return ApiResponse.success(bookingsService.findMothBookingMeet(getLoginUser(null).getId(),roomId,dateMonth));
     }
 }

--
Gitblit v1.9.3