From 1abdc3dc706f93804b5e1a65845d6534f860a452 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期五, 10 五月 2024 16:18:49 +0800
Subject: [PATCH] 最新版本
---
/dev/null | 211 -------------------
server/meeting/pom.xml | 27 +-
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/common/PublicCloudController.java | 334 ++++++++++++++++++++++++++++++
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarBook.java | 4
server/meeting/meeting_admin/src/main/java/com/doumee/cloud/admin/BookingTimeCloudController.java | 14
server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/Devices.java | 7
server/meeting/meeting_admin/src/main/java/com/doumee/cloud/admin/UserRelCloudController.java | 14
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarParks.java | 4
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarUseBook.java | 4
9 files changed, 368 insertions(+), 251 deletions(-)
diff --git a/server/meeting/meeting_admin/src/main/java/com/doumee/cloud/admin/BookingTimeCloudController.java b/server/meeting/meeting_admin/src/main/java/com/doumee/cloud/admin/BookingTimeCloudController.java
index 12d1fdd..91360d3 100644
--- a/server/meeting/meeting_admin/src/main/java/com/doumee/cloud/admin/BookingTimeCloudController.java
+++ b/server/meeting/meeting_admin/src/main/java/com/doumee/cloud/admin/BookingTimeCloudController.java
@@ -36,6 +36,7 @@
@PostMapping("/create")
@CloudRequiredPermission("business:bookingtime:create")
public ApiResponse create(@RequestBody BookingTime bookingTime,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ bookingTime.setLoginUserInfo(this.getLoginUser(token));
return ApiResponse.success(bookingTimeService.create(bookingTime));
}
@@ -50,7 +51,7 @@
@ApiOperation("鎵归噺鍒犻櫎")
@GetMapping("/delete/batch")
@CloudRequiredPermission("business:bookingtime:delete")
- public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
+ 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) {
@@ -63,7 +64,8 @@
@ApiOperation("鏍规嵁ID淇敼")
@PostMapping("/updateById")
@CloudRequiredPermission("business:bookingtime:update")
- public ApiResponse updateById(@RequestBody BookingTime bookingTime) {
+ public ApiResponse updateById(@RequestBody BookingTime bookingTime, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ bookingTime.setLoginUserInfo(this.getLoginUser(token));
bookingTimeService.updateById(bookingTime);
return ApiResponse.success(null);
}
@@ -71,21 +73,21 @@
@ApiOperation("鍒嗛〉鏌ヨ")
@PostMapping("/page")
@CloudRequiredPermission("business:bookingtime:query")
- public ApiResponse<PageData<BookingTime>> findPage (@RequestBody PageWrap<BookingTime> pageWrap) {
+ public ApiResponse<PageData<BookingTime>> findPage (@RequestBody PageWrap<BookingTime> pageWrap, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
return ApiResponse.success(bookingTimeService.findPage(pageWrap));
}
@ApiOperation("瀵煎嚭Excel")
@PostMapping("/exportExcel")
@CloudRequiredPermission("business:bookingtime:exportExcel")
- public void exportExcel (@RequestBody PageWrap<BookingTime> pageWrap, HttpServletResponse response) {
+ public void exportExcel (@RequestBody PageWrap<BookingTime> pageWrap, HttpServletResponse response, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
ExcelExporter.build(BookingTime.class).export(bookingTimeService.findPage(pageWrap).getRecords(), "浼氳瀹ら绾︽椂闂存鍏宠仈琛�", response);
}
@ApiOperation("鏍规嵁ID鏌ヨ")
@GetMapping("/{id}")
@CloudRequiredPermission("business:bookingtime:query")
- public ApiResponse findById(@PathVariable Integer id) {
+ public ApiResponse findById(@PathVariable Integer id, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
return ApiResponse.success(bookingTimeService.findById(id));
}
@@ -94,7 +96,7 @@
@ApiOperation("鏍规嵁绉戝鏃ユ湡鏌ヨ鏈夋晥鐨勬椂闂存")
@PostMapping("/findList")
@CloudRequiredPermission("business:roomtime:query")
- public ApiResponse<List<BookingTime>> findPage (@RequestBody BookingTime pageWrap) {
+ public ApiResponse<List<BookingTime>> findPage (@RequestBody BookingTime pageWrap, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
return ApiResponse.success(bookingTimeService.findList(pageWrap));
}
}
diff --git a/server/meeting/meeting_admin/src/main/java/com/doumee/cloud/admin/BookingsController.java b/server/meeting/meeting_admin/src/main/java/com/doumee/cloud/admin/BookingsController.java
deleted file mode 100644
index 82ee367..0000000
--- a/server/meeting/meeting_admin/src/main/java/com/doumee/cloud/admin/BookingsController.java
+++ /dev/null
@@ -1,211 +0,0 @@
-package com.doumee.cloud.admin;
-
-import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONArray;
-import com.alibaba.fastjson.JSONObject;
-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;
-import com.doumee.core.model.LoginUserInfo;
-import com.doumee.core.model.PageData;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.utils.Constants;
-import com.doumee.core.utils.DateUtil;
-import com.doumee.dao.business.model.Bookings;
-import com.doumee.dao.business.vo.RoomStatisticsVo;
-import com.doumee.dao.system.dto.UserStatisticsDTO;
-import com.doumee.dao.system.vo.UserStatisticsVo;
-import com.doumee.dao.web.response.DateTimeResourceDate;
-import com.doumee.dao.web.response.MeetingDetailResponse;
-import com.doumee.service.business.BookingsService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiImplicitParam;
-import io.swagger.annotations.ApiImplicitParams;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.util.CollectionUtils;
-import org.springframework.web.bind.annotation.*;
-
-import javax.servlet.http.HttpServletResponse;
-import java.math.BigDecimal;
-import java.math.RoundingMode;
-import java.time.LocalDate;
-import java.time.LocalDateTime;
-import java.time.LocalTime;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-/**
- * @author 姹熻箘韫�
- * @date 2023/05/04 18:18
- */
-@Api(tags = "浼氳瀹ら瀹氫俊鎭〃")
-@RestController
-@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/bookings")
-public class BookingsController extends BaseController {
-
- @Autowired
- private BookingsService bookingsService;
-
- @PreventRepeat
- @ApiOperation("鏂板缓")
- @PostMapping("/create")
- @RequiresPermissions("business:bookings:create")
- public ApiResponse create(@RequestBody Bookings bookings,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
- bookings.setUserInfo(getLoginUser(token));
- return ApiResponse.success(bookingsService.create(bookings));
- }
-
- @ApiOperation("鏍规嵁ID鍒犻櫎")
- @GetMapping("/delete/{id}")
- @RequiresPermissions("business:bookings:delete")
- public ApiResponse deleteById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
- bookingsService.deleteById(id,getLoginUser(token));
- return ApiResponse.success(null);
- }
-
- @ApiOperation("鎵归噺鍒犻櫎")
- @GetMapping("/delete/batch")
- @RequiresPermissions("business:bookings:delete")
- public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
- String [] idArray = ids.split(",");
- List<Integer> idList = new ArrayList<>();
- for (String id : idArray) {
- idList.add(Integer.valueOf(id));
- }
- bookingsService.deleteByIdInBatch(idList);
- return ApiResponse.success(null);
- }
-
- @ApiOperation("鏍规嵁ID淇敼")
- @PostMapping("/updateById")
- @RequiresPermissions("business:bookings:update")
- public ApiResponse updateById(@RequestBody Bookings bookings,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
- bookings.setUserInfo(getLoginUser(token));
- bookingsService.updateById(bookings);
- return ApiResponse.success(null);
- }
-
- @ApiOperation("鍒嗛〉鏌ヨ")
- @PostMapping("/page")
- @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) {
- ExcelExporter.build(Bookings.class).export(bookingsService.findPage(pageWrap).getRecords(), "浼氳瀹ら瀹氫俊鎭〃", response);
- }
-
- @ApiOperation("鏍规嵁ID鏌ヨ")
- @GetMapping("/{id}")
- @RequiresPermissions("business:bookings:query")
- public ApiResponse<MeetingDetailResponse> findById(@PathVariable Integer id) {
- return ApiResponse.success(bookingsService.getMeetingDetail(id));
- }
-
-
- @ApiOperation("鍙栨秷")
- @PostMapping("/cancelById")
- @RequiresPermissions("business:bookings:update")
- public ApiResponse cancelById(@RequestBody Bookings bookings,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
- bookings.setUserInfo(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")
- @RequiresPermissions("business:bookings:exportExcel")
- public void exportUserStatistics (@RequestBody PageWrap<UserStatisticsDTO> pageWrap,HttpServletResponse response) {
- List<UserStatisticsVo> records = bookingsService.getUserStatistics(pageWrap).getRecords();
- if (!CollectionUtils.isEmpty(records)){
- JSONArray o = (JSONArray) JSON.toJSON(records);
- o.forEach(s->{
- JSONObject jsonObject = (JSONObject) s;
- Set<Map.Entry<String, Object>> entries = jsonObject.entrySet();
- for (Map.Entry<String, Object> entry:entries){
-
- if (entry.getValue() instanceof BigDecimal){
- BigDecimal value = (BigDecimal) entry.getValue();
- entry.setValue(value.compareTo(value.setScale(0, RoundingMode.DOWN)) > 0 ? value : value.setScale(0, RoundingMode.DOWN));
- }
- }
- });
- records = o.toJavaList(UserStatisticsVo.class);
- }
- ExcelExporter.build(UserStatisticsVo.class).export(records, "浜哄憳鍙備細鏃堕暱缁熻", response);
- }
-
- @ApiOperation("浼氳瀹や娇鐢ㄦ椂闀跨粺璁″鍑篍xcel")
- @PostMapping("/exportRoomStatistics")
- @RequiresPermissions("business:bookings:exportExcel")
- public void exportRoomStatistics (@RequestBody PageWrap<UserStatisticsDTO> pageWrap,HttpServletResponse response) {
- List<RoomStatisticsVo> roomStatistics = bookingsService.getRoomStatistics(pageWrap.getModel().getYearNum());
- if (!CollectionUtils.isEmpty(roomStatistics)){
- JSONArray o = (JSONArray) JSON.toJSON(roomStatistics);
- o.forEach(s->{
- JSONObject jsonObject = (JSONObject) s;
- Set<Map.Entry<String, Object>> entries = jsonObject.entrySet();
- for (Map.Entry<String, Object> entry:entries){
-
- if (entry.getValue() instanceof BigDecimal){
- BigDecimal value = (BigDecimal) entry.getValue();
- entry.setValue(value.compareTo(value.setScale(0, RoundingMode.DOWN)) > 0 ? value : value.setScale(0, RoundingMode.DOWN));
- }
- }
- });
- roomStatistics = o.toJavaList(RoomStatisticsVo.class);
- }
- ExcelExporter.build(RoomStatisticsVo.class).export(roomStatistics, "浼氳瀹や娇鐢ㄦ椂闀跨粺璁�", response);
- }
-
- @ApiOperation("鍙備笌鐨勯绾︿細璁�")
- @GetMapping("/reservationCancel")
- @ApiImplicitParams({
- @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "type", value = "1 浠婂ぉ 2 鏈懆", required = true),
- })
- public ApiResponse<List<Bookings>> getMyJoinBookingMeet(@RequestParam Integer type
- ,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
-
- LocalDateTime startTime = LocalDateTime.of(LocalDate.now(), LocalTime.of(00,00,00));
- LocalDateTime endTime = LocalDateTime.of(LocalDate.now(), LocalTime.of(23,59,59));
- if(Constants.equalsInteger(type,Constants.TWO)){
- startTime = DateUtil.getMonday();
- endTime = DateUtil.getSunday();
- }
- return ApiResponse.success(bookingsService.getMyJoinBookingMeet(getLoginUser(token).getId(), null,startTime,endTime));
- }
-
- /**
- * 鑾峰彇鐢ㄦ埛褰撳綋鏈堥绾︿細璁儏鍐�
- * @return
- */
- @ApiOperation("鑾峰彇鐢ㄦ埛褰撳綋鏈堥绾︿細璁儏鍐�")
- @PostMapping("/findMothBookingMeet")
- public ApiResponse<List<DateTimeResourceDate>> findMothBookingMeet( @RequestParam(required = false) Integer roomId
- ,String dateMonth,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
- return ApiResponse.success(bookingsService.findMothBookingMeet(getLoginUser(token).getId(),roomId,dateMonth));
- }
-}
diff --git a/server/meeting/meeting_admin/src/main/java/com/doumee/cloud/admin/UserRelCloudController.java b/server/meeting/meeting_admin/src/main/java/com/doumee/cloud/admin/UserRelCloudController.java
index 774c1b0..b400986 100644
--- a/server/meeting/meeting_admin/src/main/java/com/doumee/cloud/admin/UserRelCloudController.java
+++ b/server/meeting/meeting_admin/src/main/java/com/doumee/cloud/admin/UserRelCloudController.java
@@ -35,14 +35,14 @@
@ApiOperation("鏂板缓")
@PostMapping("/create")
@CloudRequiredPermission("business:userrel:create")
- public ApiResponse create(@RequestBody UserRel userRel) {
+ public ApiResponse create(@RequestBody UserRel userRel, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
return ApiResponse.success(userRelService.create(userRel));
}
@ApiOperation("鏍规嵁ID鍒犻櫎")
@GetMapping("/delete/{id}")
@CloudRequiredPermission("business:userrel:delete")
- public ApiResponse deleteById(@PathVariable Integer id) {
+ public ApiResponse deleteById(@PathVariable Integer id, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
userRelService.deleteById(id);
return ApiResponse.success(null);
}
@@ -50,7 +50,7 @@
@ApiOperation("鎵归噺鍒犻櫎")
@GetMapping("/delete/batch")
@CloudRequiredPermission("business:userrel:delete")
- public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
+ 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) {
@@ -63,7 +63,7 @@
@ApiOperation("鏍规嵁ID淇敼")
@PostMapping("/updateById")
@CloudRequiredPermission("business:userrel:update")
- public ApiResponse updateById(@RequestBody UserRel userRel) {
+ public ApiResponse updateById(@RequestBody UserRel userRel, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
userRelService.updateById(userRel);
return ApiResponse.success(null);
}
@@ -71,21 +71,21 @@
@ApiOperation("鍒嗛〉鏌ヨ")
@PostMapping("/page")
@CloudRequiredPermission("business:userrel:query")
- public ApiResponse<PageData<UserRel>> findPage (@RequestBody PageWrap<UserRel> pageWrap) {
+ public ApiResponse<PageData<UserRel>> findPage (@RequestBody PageWrap<UserRel> pageWrap, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
return ApiResponse.success(userRelService.findPage(pageWrap));
}
@ApiOperation("瀵煎嚭Excel")
@PostMapping("/exportExcel")
@CloudRequiredPermission("business:userrel:exportExcel")
- public void exportExcel (@RequestBody PageWrap<UserRel> pageWrap, HttpServletResponse response) {
+ public void exportExcel (@RequestBody PageWrap<UserRel> pageWrap, HttpServletResponse response, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
ExcelExporter.build(UserRel.class).export(userRelService.findPage(pageWrap).getRecords(), "浼氳瀹ょ鐞嗗憳鍜屽弬浼氫汉鍛樺叧鑱旇〃", response);
}
@ApiOperation("鏍规嵁ID鏌ヨ")
@GetMapping("/{id}")
@CloudRequiredPermission("business:userrel:query")
- public ApiResponse findById(@PathVariable Integer id) {
+ public ApiResponse findById(@PathVariable Integer id, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
return ApiResponse.success(userRelService.findById(id));
}
}
diff --git a/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/Devices.java b/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/Devices.java
index 0d3630b..31bdf95 100644
--- a/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/Devices.java
+++ b/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/Devices.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.annotation.TableField;
import com.doumee.core.annotation.excel.ExcelColumn;
import com.doumee.core.constants.OperaType;
+import com.doumee.core.model.LoginUserModel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.baomidou.mybatisplus.annotation.IdType;
@@ -22,7 +23,7 @@
@Data
@ApiModel("璁惧绠$悊淇℃伅琛�")
@TableName("`devices`")
-public class Devices {
+public class Devices extends LoginUserModel {
@TableId(type = IdType.AUTO)
@ApiModelProperty(value = "涓婚敭", example = "1")
@@ -35,7 +36,6 @@
@ApiModelProperty(value = "鍒涘缓鏃堕棿")
@ExcelColumn(name="鍒涘缓鏃堕棿")
- @JsonFormat(pattern = "yyyy-MM-dd")
private Date createDate;
@ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
@@ -44,8 +44,7 @@
@ApiModelProperty(value = "鏇存柊鏃堕棿")
@ExcelColumn(name="鏇存柊鏃堕棿")
- @JsonFormat(pattern = "yyyy-MM-dd")
- private Date editDate;
+ private Date editDate;
@ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
@ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
diff --git a/server/meeting/pom.xml b/server/meeting/pom.xml
index d2f272e..5a4ac9c 100644
--- a/server/meeting/pom.xml
+++ b/server/meeting/pom.xml
@@ -20,12 +20,21 @@
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
- <dependency>
+ <dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.3.12.RELEASE</version>
<type>pom</type>
<scope>import</scope>
+ </dependency>
+ <!-- <dependency>
+ <groupId>org.springframework.cloud</groupId>
+ <artifactId>spring-cloud-starter-bootstrap</artifactId>
+ </dependency>-->
+ <dependency>
+ <groupId>com.alibaba.cloud</groupId>
+ <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
+ <!-- <version>2.2.7.RELEASE</version>-->
</dependency>
<!--<dependency>
<groupId>org.springframework.cloud</groupId>
@@ -33,20 +42,10 @@
</dependency>-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
- <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
-<!-- <version>2.2.7.RELEASE</version>-->
- </dependency>
- <dependency>
- <groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
-<!-- <version>2.2.7.RELEASE</version>-->
+ <!-- <version>2.2.7.RELEASE</version>-->
</dependency>
- <!-- Swagger 澧炲己knife4j 寰湇鍔tarter -->
- <dependency>
- <groupId>com.github.xiaoymin</groupId>
- <artifactId>knife4j-micro-spring-boot-starter</artifactId>
- <version>3.0.3</version>
- <scope>compile</scope>
- </dependency>
+
+ <!-- 鎺ュ彛鏂囨。 -->
</dependencies>
</project>
\ No newline at end of file
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/common/PublicCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/common/PublicCloudController.java
index e69de29..b47d7a0 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/common/PublicCloudController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/common/PublicCloudController.java
@@ -0,0 +1,334 @@
+package com.doumee.cloud.common;
+
+import com.alibaba.fastjson.JSONObject;
+import com.doumee.api.BaseController;
+import com.doumee.biz.system.SystemDictDataBiz;
+import com.doumee.core.annotation.trace.Trace;
+import com.doumee.core.utils.Constants;
+import com.doumee.core.utils.DateUtil;
+import com.doumee.core.utils.FtpUtil;
+import com.doumee.core.utils.aliyun.ALiYunUtil;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+import org.springframework.web.multipart.MultipartHttpServletRequest;
+import org.springframework.web.multipart.commons.CommonsMultipartResolver;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.File;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.PrintWriter;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
+import java.util.UUID;
+
+/**
+ * @author Eva.Caesar Liu
+ * @date 2023/02/14 11:14
+ */
+@Api(tags = "鍏叡涓婁紶鎺ュ彛")
+@Trace(exclude = true)
+@RestController
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/public")
+@Slf4j
+public class PublicCloudController extends BaseController {
+
+
+ @Autowired
+ private SystemDictDataBiz systemDictDataBiz;
+
+
+
+ public static FtpUtil ftp = null;
+
+ @ApiOperation(value = "涓婁紶鏂囦欢鍒癋TP")
+ @RequestMapping(method= RequestMethod.POST,value="/upload")
+ @ResponseBody
+ public void upload(HttpServletRequest request, HttpServletResponse response, String folder) throws Exception {
+// folder = systemDictDataBiz.queryByCode(Constants.FTP,folder).getCode();
+ String prefixPath = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode();
+ InputStream is = null;
+ response.setCharacterEncoding("UTF-8");
+ response.setContentType("text/html;charset=UTF-8");
+ Map<String, Object> context = new HashMap<>();
+ try {
+ if(ftp == null){
+ ftp = new FtpUtil(systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_HOST).getCode(),
+ Integer.parseInt(systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_PORT).getCode()),
+ systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_USERNAME).getCode(),
+ systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_PWD).getCode());
+ }else{
+ ftp.connect();
+ }
+
+ CommonsMultipartResolver multipartResovler = new CommonsMultipartResolver();
+ if (multipartResovler.isMultipart(request)) {
+ MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
+ Iterator<String> it = multipartRequest.getFileNames();
+ while (it.hasNext()) {
+ MultipartFile file = multipartRequest.getFile(it.next());
+ String originname = file.getOriginalFilename();
+ is = file.getInputStream();
+ String date = DateUtil.getNowShortDate();
+ String fName = date+"/"+ UUID.randomUUID()+".jpg";
+ String fileName = folder+"/"+fName;
+ boolean r = ftp.uploadInputstream(is,fileName);
+ if(r){
+ context.put("success", true);
+ context.put("code", 200);
+ context.put("errno",0);
+ JSONObject fileJSON = new JSONObject();
+// fileJSON.put("prefixPath", prefixPath);
+// fileJSON.put("folder", folder);
+ fileJSON.put("url", prefixPath+fileName);
+ fileJSON.put("imgaddr", fName);
+ fileJSON.put("imgname", fileName);
+ fileJSON.put("originname", originname);
+ context.put("data",fileJSON);
+ context.put("message","璇锋眰鎴愬姛");
+ writerJson(response, context);
+ return;
+ }
+ }
+ }
+ } catch (Exception e) {
+ log.error("銆愪笂浼燜TP澶辫触銆�======================"+e.getMessage());
+ }
+ context.put("code", 0);
+ context.put("message", "涓婁紶澶辫触");
+ context.put("errno",0);
+ writerJson(response, context);
+ return;
+ }
+
+ public void upload(HttpServletRequest request, HttpServletResponse response, String folder, String bucketName,
+ String access_id, String access_key, String resourcePath, String endpoint) throws Exception {
+ response.setCharacterEncoding("UTF-8");
+ response.setContentType("text/html;charset=UTF-8");
+ Map<String, Object> context = new HashMap<>();
+ CommonsMultipartResolver multipartResovler = new CommonsMultipartResolver();
+ if (multipartResovler.isMultipart(request)) {
+ MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
+ Iterator<String> it = multipartRequest.getFileNames();
+ while (it.hasNext()) {
+ MultipartFile file = multipartRequest.getFile((String) it.next());// file
+ // multipartRequest.getFile((String)
+ // it.next());
+ if (file != null) {
+ // 1銆佷笂浼犲埌鏈嶅姟鍣ㄤ复鏃舵枃浠跺す
+ String uploadFileName = file.getOriginalFilename();
+ String originname = uploadFileName;
+ if (originname.lastIndexOf("/") >= 0) {
+ originname = originname.substring(originname.lastIndexOf("/") + 1);
+ }
+ String nfix = "";// 鍚庣紑鍚�
+ if (StringUtils.isNotBlank(uploadFileName)) {
+ nfix = uploadFileName.substring(uploadFileName.lastIndexOf("."));
+ }
+ if (StringUtils.equalsIgnoreCase(nfix, ".exe")) {
+ context.put("code", 4000);
+ context.put("message", "瀵逛笉璧凤紝鏂囦欢鏍煎紡\".exe\"涓婁紶鏈夎锛�");
+ return;
+ }
+ if (StringUtils.equalsIgnoreCase(nfix, ".dll")) {
+ context.put("code", 4000);
+ context.put("message", "瀵逛笉璧凤紝鏂囦欢鏍煎紡\".dll\"涓婁紶鏈夎锛�");
+ return;
+ }
+ String nowDate = DateUtil.getNowShortDate();// 褰撳墠鏃堕棿锛堝勾鏈堟棩锛�
+ String fileName = UUID.randomUUID().toString() + nfix;
+ String tempFileName = nowDate + "/" + fileName;
+ String key = folder + tempFileName;// 鏂囦欢鍚�
+ ALiYunUtil obs = new ALiYunUtil(endpoint,access_id, access_key);
+ if (obs.uploadOnlineObject(file.getInputStream(),bucketName, key,null)) {
+ // 绉诲姩鎴愬姛,杩斿洖鏂囦欢鍚�
+ // sendSuccessMessage(response, resourcePath+key);
+ context.put("success", true);
+ context.put("code", 200);
+ context.put("errno",0);
+ JSONObject fileJSON = new JSONObject();
+ fileJSON.put("url", resourcePath + key);
+ fileJSON.put("imgaddr", tempFileName);
+ fileJSON.put("imgname", fileName);
+ fileJSON.put("originname", originname);
+ context.put("data",fileJSON);
+ context.put("message","璇锋眰鎴愬姛");
+ writerJson(response, context);
+ return;
+ } else {
+ // 绉诲姩澶辫触
+ context.put("code", 0);
+ context.put("message", "涓婁紶澶辫触");
+ writerJson(response, context);
+ return;
+ }
+ }
+
+ }
+ }
+ context.put("code", 0);
+ context.put("message", "涓婁紶澶辫触");
+ context.put("errno",0);
+ writerJson(response, context);
+ return;
+ }
+
+ public static void writerJson(HttpServletResponse response, Object object) {
+ response.setContentType("application/json");
+ writer(response, JSONObject.toJSONString(object));
+ }
+
+ private static void writer(HttpServletResponse response, String str) {
+ try {
+ StringBuffer result = new StringBuffer();
+ //璁剧疆椤甸潰涓嶇紦瀛�
+ response.setHeader("Pragma", "No-cache");
+ response.setHeader("Cache-Control", "no-cache");
+ response.setCharacterEncoding("UTF-8");
+ PrintWriter out = null;
+ out = response.getWriter();
+ out.print(str);
+ out.flush();
+ out.close();
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+
+
+
+
+ public void uploadFileLocal(HttpServletRequest request, String folder, HttpServletResponse response, String rootPath,String dir) throws Exception {
+ response.setCharacterEncoding("UTF-8");
+ response.setContentType("text/html;charset=UTF-8");
+ CommonsMultipartResolver multipartResovler = new CommonsMultipartResolver();
+ Map<String, Object> context = new HashMap<>();
+ if (multipartResovler.isMultipart(request)) {
+ MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
+ Iterator<String> it = multipartRequest.getFileNames();
+ while (it.hasNext()) {
+ MultipartFile file = multipartRequest.getFile((String) it.next());// file
+ // =
+ // (CommonsMultipartFile)
+ // multipartRequest.getFile((String)
+ // it.next());
+ if (file != null) {
+ if (file.getSize() > 200 * 1024 * 1024L) {
+ context.put("code", 4000);
+ context.put("message", "涓婁紶鏂囦欢杩囧ぇ");
+ return;
+ }
+ System.out.println(file.getOriginalFilename());
+ if (file.getOriginalFilename() == null) {
+ context.put("code", 4000);
+ context.put("message", "鏂囦欢鍚嶄笉鍙负绌�");
+ return;
+ }
+ /*
+ * if(file.getOriginalFilename().contains(",")||file.getOriginalFilename().
+ * contains(" ")){ sendFailureMessage(response,"鏂囦欢鍚嶇О鏈夎,涓嶅彲鍚湁閫楀彿绛夌壒娈婂瓧绗�"); }
+ */
+
+ String nowDate = DateUtil.getNowShortDate();
+ folder += nowDate + "/";
+ String strDirPath = rootPath + folder;
+ File dirPath = new File(strDirPath);
+ if (!dirPath.exists()) {
+ dirPath.mkdirs();
+ }
+ String uploadFileName = file.getOriginalFilename();
+ String x = UUID.randomUUID().toString().replace("-", "")
+ + uploadFileName.substring(uploadFileName.lastIndexOf("."));
+ String fileName = folder + x;
+ String fileNames = nowDate + "/" + x;
+ uploadFileName = uploadFileName.replace(" ", "");
+ uploadFileName = uploadFileName.replace("锛�", ",");
+ uploadFileName = uploadFileName.replaceAll(",", "-");
+ System.err.println("R:" + fileName);
+ String fileAndPath = dir + fileName;
+ System.err.println("A:" + fileAndPath);
+ // 鍒ゆ柇濡傛灉涓存椂鐩綍涓瓨鍦ㄧ浉鍚屽悕绉扮殑鏂囦欢鍏堝垹闄わ紝鍦ㄤ笂浼�
+ File tempFile = new File(rootPath + fileName);
+ if (tempFile.isFile() && tempFile.exists()) {
+ tempFile.getAbsoluteFile().delete();
+ }
+ // 涓婁紶鍒版湇鍔″櫒涓存椂鏂囦欢澶�
+ file.transferTo(tempFile);
+ // 杞Щ鍒癋TP鏈嶅姟鍣�
+ String nfix = "";
+ if (null != uploadFileName) {
+ nfix = uploadFileName.substring(uploadFileName.lastIndexOf("."));
+ }
+
+ if (StringUtils.equalsIgnoreCase(nfix, ".exe")) {
+ context.put("code", 4000);
+ context.put("message", "瀵逛笉璧凤紝鏂囦欢鏍煎紡\".exe\"涓婁紶鏈夎锛�");
+ return;
+ }
+ if (StringUtils.equalsIgnoreCase(nfix, ".dll")) {
+ context.put("code", 4000);
+ context.put("message", "瀵逛笉璧凤紝鏂囦欢鏍煎紡\".dll\"涓婁紶鏈夎锛�");
+ return;
+ }
+
+ String remoteName = fileName;
+ String remoteFileName = fileAndPath;
+
+ /* Map map = new HashMap();
+ map.put("url", remoteFileName);
+ map.put("alt", uploadFileName);
+ map.put("href", remoteFileName);
+ List maps = Arrays.asList(remoteFileName);*/
+
+ if (true) {
+ // 鍏抽棴FTP娴�
+ // 绉诲姩鎴愬姛,杩斿洖鏂囦欢鍚�
+
+ /*context.put("error", 0);
+ context.put("url", remoteFileName);
+ context.put("fullurl", remoteFileName);
+ context.put("fname", uploadFileName);
+ context.put("data", maps);
+ context.put("halfurl", fileNames);*/
+
+ context.put("success", true);
+ context.put("code", 200);
+ context.put("errno",0);
+ JSONObject fileJSON = new JSONObject();
+ fileJSON.put("url", remoteFileName);
+ fileJSON.put("imgaddr", fileNames);
+ fileJSON.put("imgname", uploadFileName);
+ fileJSON.put("originname", uploadFileName);
+ context.put("data",fileJSON);
+ context.put("message","璇锋眰鎴愬姛");
+
+ writerJson(response, context);
+ return;
+ } else {
+ // 绉诲姩澶辫触
+ context.put("code", 0);
+ context.put("message", "涓婁紶澶辫触");
+ writerJson(response, context);
+ }
+ }
+ context.put("code", 0);
+ context.put("message", "涓婁紶澶辫触");
+ writerJson(response, context);
+ return;
+ }
+ }
+ context.put("code", 0);
+ context.put("message", "涓婁紶澶辫触");
+ writerJson(response, context);
+ return;
+ }
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarBook.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarBook.java
index 2667ca9..ebdb631 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarBook.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarBook.java
@@ -31,7 +31,6 @@
@ApiModelProperty(value = "鍒涘缓鏃堕棿")
@ExcelColumn(name="鍒涘缓鏃堕棿")
- @JsonFormat(pattern = "yyyy-MM-dd")
private Date createDate;
@ApiModelProperty(value = "鏇存柊浜虹紪鐮�")
@@ -40,8 +39,7 @@
@ApiModelProperty(value = "鏇存柊鏃堕棿")
@ExcelColumn(name="鏇存柊鏃堕棿")
- @JsonFormat(pattern = "yyyy-MM-dd")
- private Date editDate;
+ private Date editDate;
@ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
@ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarParks.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarParks.java
index 4f5e839..6072d09 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarParks.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarParks.java
@@ -31,7 +31,6 @@
@ApiModelProperty(value = "鍒涘缓鏃堕棿")
@ExcelColumn(name="鍒涘缓鏃堕棿")
- @JsonFormat(pattern = "yyyy-MM-dd")
private Date createDate;
@ApiModelProperty(value = "鏇存柊浜虹紪鐮�")
@@ -40,8 +39,7 @@
@ApiModelProperty(value = "鏇存柊鏃堕棿")
@ExcelColumn(name="鏇存柊鏃堕棿")
- @JsonFormat(pattern = "yyyy-MM-dd")
- private Date editDate;
+ private Date editDate;
@ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
@ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarUseBook.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarUseBook.java
index 32d6904..e8bc62b 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarUseBook.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarUseBook.java
@@ -31,7 +31,6 @@
@ApiModelProperty(value = "鍒涘缓鏃堕棿")
@ExcelColumn(name="鍒涘缓鏃堕棿")
- @JsonFormat(pattern = "yyyy-MM-dd")
private Date createDate;
@ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
@@ -40,8 +39,7 @@
@ApiModelProperty(value = "鏇存柊鏃堕棿")
@ExcelColumn(name="鏇存柊鏃堕棿")
- @JsonFormat(pattern = "yyyy-MM-dd")
- private Date editDate;
+ private Date editDate;
@ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
@ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
--
Gitblit v1.9.3