From 827b2160094482c075968b74e6b69284e7c6eb80 Mon Sep 17 00:00:00 2001
From: nidapeng <jp@doumee.com>
Date: 星期三, 24 四月 2024 17:00:01 +0800
Subject: [PATCH] 最新版本
---
server/visits/admin_timer/src/main/resources/application.yml | 2
server/meeting/meeting_web/src/main/resources/application.yml | 2
server/visits/dmvisit_admin/src/main/resources/bootstrap.yml | 30 ++
server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/Projects.java | 2
server/meeting/meeting_admin/src/main/resources/bootstrap.yml | 12
server/system_gateway/src/main/resources/application-test.yml | 29 ++
server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/UserRel.java | 2
server/visits/dmvisit_admin/src/main/resources/META-INF/MANIFEST.MF | 2
server/meeting/meeting_admin/src/main/java/com/doumee/api/cloud/CloudBookingsController.java | 208 ++++++++++++++
server/visits/dmvisit_admin/src/main/java/com/doumee/VisitsAdminApplication.java | 6
server/visits/dmvisit_admin/src/main/java/com/doumee/api/cloud/CloudCarsController.java | 106 +++++++
server/system_gateway/src/main/java/com/doumee/Main.java | 7
server/visits/dmvisit_web/src/main/resources/application.yml | 2
server/system_gateway/src/main/resources/application-dev.yml | 60 ++++
server/system_gateway/src/main/java/com/doumee/api/meeting/CloudBookingsController.java | 20 +
server/visits/openapi/src/main/resources/application.yml | 2
server/system_gateway/src/main/resources/META-INF/MANIFEST.MF | 3
server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/Rooms.java | 2
server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/BookingsServiceImpl.java | 2
server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/RoomRecord.java | 2
server/meeting/meeting_admin/src/main/java/com/doumee/config/shiro/ShiroConfig.java | 1
server/visits/dmvisit_admin/src/main/resources/application.yml | 6
server/system_gateway/src/main/resources/bootstrap.yml | 43 +++
server/meeting/meeting_web/src/main/java/com/doumee/api/web/MeetingApi.java | 2
server/system_gateway/src/main/resources/application-pro.yml | 51 +++
server/system_gateway/src/main/java/com/doumee/SystemGatewayApplication.java | 20 +
server/pom.xml | 115 +++++---
server/visits/dmvisit_screen/src/main/resources/application.yml | 2
server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/ProjectRel.java | 2
server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/RoomTime.java | 2
server/visits/dmvisit_admin/src/main/java/com/doumee/config/shiro/ShiroConfig.java | 1
server/system_gateway/src/main/resources/application.yml | 79 +++++
server/meeting/meeting_admin/src/main/resources/application.yml | 11
33 files changed, 771 insertions(+), 65 deletions(-)
diff --git a/server/meeting/meeting_admin/src/main/java/com/doumee/api/cloud/CloudBookingsController.java b/server/meeting/meeting_admin/src/main/java/com/doumee/api/cloud/CloudBookingsController.java
new file mode 100644
index 0000000..13c076a
--- /dev/null
+++ b/server/meeting/meeting_admin/src/main/java/com/doumee/api/cloud/CloudBookingsController.java
@@ -0,0 +1,208 @@
+package com.doumee.api.cloud;
+
+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.SecurityUtils;
+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("/cloud/bookings")
+public class CloudBookingsController extends BaseController {
+
+ @Autowired
+ private BookingsService bookingsService;
+
+ @ApiOperation("娴嬭瘯缃戠")
+ @GetMapping("/test")
+ public ApiResponse test() {
+ return ApiResponse.success("浼氳瀹ゆ祴璇曟垚鍔�");
+ }
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ public ApiResponse create(@RequestBody Bookings bookings) {
+ LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+ bookings.setCreator(user.getId());
+ return ApiResponse.success(bookingsService.create(bookings));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ public ApiResponse deleteById(@PathVariable Integer id) {
+ bookingsService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ 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")
+ public ApiResponse updateById(@RequestBody Bookings bookings) {
+ LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+ bookings.setCreator(user.getId());
+ bookingsService.updateById(bookings);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ public ApiResponse<PageData<Bookings>> findPage (@RequestBody PageWrap<Bookings> pageWrap) {
+ 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}")
+ public ApiResponse<MeetingDetailResponse> findById(@PathVariable Integer id) {
+ return ApiResponse.success(bookingsService.getMeetingDetail(id));
+ }
+
+
+ @ApiOperation("鍙栨秷")
+ @PostMapping("/cancelById")
+ public ApiResponse cancelById(@RequestBody Bookings bookings) {
+ bookingsService.cancelById(bookings);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("浼氳瀹や娇鐢ㄦ椂闀跨粺璁�")
+ @GetMapping("/getRoomStatistics")
+ public ApiResponse<List<RoomStatisticsVo>> getRoomStatistics(@RequestParam Integer yearNum, @RequestParam Integer roomId){
+ return ApiResponse.success(bookingsService.getRoomStatistics(yearNum));
+ }
+
+ @ApiOperation("浜哄憳鍙傚姞浼氳鏃跺父")
+ @PostMapping("/getUserStatistics")
+ 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) {
+
+ 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")
+ 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){
+
+ 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().getId(), null,startTime,endTime));
+ }
+
+ /**
+ * 鑾峰彇鐢ㄦ埛褰撳綋鏈堥绾︿細璁儏鍐�
+ * @return
+ */
+ @ApiOperation("鑾峰彇鐢ㄦ埛褰撳綋鏈堥绾︿細璁儏鍐�")
+ @PostMapping("/findMothBookingMeet")
+ public ApiResponse<List<DateTimeResourceDate>> findMothBookingMeet( @RequestParam(required = false) Integer roomId,String dateMonth){
+
+
+ return ApiResponse.success(bookingsService.findMothBookingMeet(getLoginUser().getId(),roomId,dateMonth));
+ }
+}
diff --git a/server/meeting/meeting_admin/src/main/java/com/doumee/config/shiro/ShiroConfig.java b/server/meeting/meeting_admin/src/main/java/com/doumee/config/shiro/ShiroConfig.java
index edfd770..bd5138b 100644
--- a/server/meeting/meeting_admin/src/main/java/com/doumee/config/shiro/ShiroConfig.java
+++ b/server/meeting/meeting_admin/src/main/java/com/doumee/config/shiro/ShiroConfig.java
@@ -73,6 +73,7 @@
map.put("/common/captcha", "anon");
//鏂囦欢涓婁紶鍙栨秷鎷︽埅
map.put("/public/**", "anon");
+ map.put("/cloud/**", "anon");
// - 鏀捐swagger
map.put("/doc.html", "anon");
diff --git a/server/meeting/meeting_admin/src/main/resources/application.yml b/server/meeting/meeting_admin/src/main/resources/application.yml
index 5ed0488..3f027c1 100644
--- a/server/meeting/meeting_admin/src/main/resources/application.yml
+++ b/server/meeting/meeting_admin/src/main/resources/application.yml
@@ -6,12 +6,10 @@
# env: production
spring:
- # application:
- # name: doumeemes
+ application:
+ name: meetingAdmin
profiles:
active: dev
-
-
# JSON杩斿洖閰嶇疆
jackson:
# 榛樿鏃跺尯
@@ -23,6 +21,9 @@
max-file-size: 200MB
max-request-size: 200MB
enabled: true
+ main:
+ allow-circular-references: true
+
# MyBatis閰嶇疆
mybatis-plus:
mapper-locations: classpath*:/mappers/**/*.xml
@@ -63,6 +64,8 @@
enable: true
username: admin
password: 111111
+ main:
+ allow-circular-references: true
# WEB鏈嶅姟鍣ㄩ厤缃�
server:
diff --git a/server/meeting/meeting_admin/src/main/resources/bootstrap.yml b/server/meeting/meeting_admin/src/main/resources/bootstrap.yml
index f502e10..1076d83 100644
--- a/server/meeting/meeting_admin/src/main/resources/bootstrap.yml
+++ b/server/meeting/meeting_admin/src/main/resources/bootstrap.yml
@@ -1,6 +1,6 @@
spring:
application:
- name: meeting
+ name: meetingAdmin
cloud:
loadbalancer:
enabled: true
@@ -17,14 +17,14 @@
password: nacos
config:
server-addr: http://175.27.187.84:8848 #閰嶇疆Nacos鍦板潃
- namespace: meeting
+ namespace: dmvisit
username: nacos
password: nacos
- file-extension: yaml
- group: dev
- data-id: com.doumee.meeting.admin
+# file-extension: yaml
+# group: dev
+# data-id: com.doumee.meeting.admin
discovery:
server-addr: http://175.27.187.84:8848 #閰嶇疆Nacos鍦板潃
- namespace: meeting
+ namespace: dmvisit
username: nacos
password: nacos
diff --git a/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/ProjectRel.java b/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/ProjectRel.java
index a6fc66c..0be3120 100644
--- a/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/ProjectRel.java
+++ b/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/ProjectRel.java
@@ -18,7 +18,7 @@
*/
@Data
@ApiModel("鏈嶅姟椤圭洰鍏宠仈琛�")
-@TableName("`project_rel`")
+@TableName("`meeting_project_rel`")
public class ProjectRel {
@TableId(type = IdType.AUTO)
diff --git a/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/Projects.java b/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/Projects.java
index 4c1f106..8db1e41 100644
--- a/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/Projects.java
+++ b/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/Projects.java
@@ -18,7 +18,7 @@
*/
@Data
@ApiModel("鏈嶅姟椤圭洰淇℃伅琛�")
-@TableName("`projects`")
+@TableName("`meeting_projects`")
public class Projects {
@TableId(type = IdType.AUTO)
diff --git a/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/RoomRecord.java b/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/RoomRecord.java
index 599c373..fb0da76 100644
--- a/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/RoomRecord.java
+++ b/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/RoomRecord.java
@@ -19,7 +19,7 @@
*/
@Data
@ApiModel("浼氳瀹ゅ紑闂ㄨ褰曡〃")
-@TableName("`room_record`")
+@TableName("`meeting_room_record`")
public class RoomRecord {
@TableId(type = IdType.AUTO)
diff --git a/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/RoomTime.java b/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/RoomTime.java
index 31dc145..a2af730 100644
--- a/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/RoomTime.java
+++ b/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/RoomTime.java
@@ -18,7 +18,7 @@
*/
@Data
@ApiModel("浼氳瀹ら绾︽椂闂存淇℃伅琛�")
-@TableName("`room_time`")
+@TableName("`meeting_room_time`")
public class RoomTime {
@TableId(type = IdType.AUTO)
diff --git a/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/Rooms.java b/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/Rooms.java
index ff41dd5..61ea3b0 100644
--- a/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/Rooms.java
+++ b/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/Rooms.java
@@ -22,7 +22,7 @@
*/
@Data
@ApiModel("浼氳瀹や俊鎭〃")
-@TableName("`rooms`")
+@TableName("`meeting_rooms`")
public class Rooms {
@TableId(type = IdType.AUTO)
diff --git a/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/UserRel.java b/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/UserRel.java
index 7d53d53..924deb6 100644
--- a/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/UserRel.java
+++ b/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/UserRel.java
@@ -19,7 +19,7 @@
*/
@Data
@ApiModel("浼氳瀹ょ鐞嗗憳鍜屽弬浼氫汉鍛樺叧鑱旇〃")
-@TableName("`user_rel`")
+@TableName("`meeting_user_rel`")
public class UserRel {
@TableId(type = IdType.AUTO)
diff --git a/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/BookingsServiceImpl.java b/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/BookingsServiceImpl.java
index 4470e01..fb949c1 100644
--- a/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/BookingsServiceImpl.java
+++ b/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/BookingsServiceImpl.java
@@ -938,7 +938,7 @@
.eq("ISDELETED",MeetConstants.ZERO)
.eq("SEND_NOTICE", MeetConstants.ZERO)
.apply(" now() >= SUBDATE(START_TIME,interval + " + minute + " minute) ")
- .apply(" ROOM_ID in ( select r.id from rooms r where r.ISDELETED = 0 and r.STATUS = 0 )")
+ .apply(" ROOM_ID in ( select r.id from meeting_rooms r where r.ISDELETED = 0 and r.STATUS = 0 )")
);
for (Bookings bookings : bookingsList) {
bookings.setSendNotice(MeetConstants.ONE);
diff --git a/server/meeting/meeting_web/src/main/java/com/doumee/api/web/MeetingApi.java b/server/meeting/meeting_web/src/main/java/com/doumee/api/web/MeetingApi.java
index 2703fe4..a0070b2 100644
--- a/server/meeting/meeting_web/src/main/java/com/doumee/api/web/MeetingApi.java
+++ b/server/meeting/meeting_web/src/main/java/com/doumee/api/web/MeetingApi.java
@@ -123,6 +123,7 @@
QrCodeUtils.encode(content,null, response.getOutputStream(), true);
}
+/*
@LoginRequired
@ApiOperation("鍙備細浜哄憳鍒嗛〉")
@PostMapping("/userPage")
@@ -133,6 +134,7 @@
IPage<UserResponse> page = systemUserService.getUserPage(pageWrap);
return ApiResponse.success("鏌ヨ鎴愬姛", page);
}
+*/
@LoginRequired
diff --git a/server/meeting/meeting_web/src/main/resources/application.yml b/server/meeting/meeting_web/src/main/resources/application.yml
index 3af5437..c04429b 100644
--- a/server/meeting/meeting_web/src/main/resources/application.yml
+++ b/server/meeting/meeting_web/src/main/resources/application.yml
@@ -23,6 +23,8 @@
max-file-size: 200MB
max-request-size: 200MB
enabled: true
+ main:
+ allow-circular-references: true
# MyBatis閰嶇疆
mybatis-plus:
mapper-locations: classpath*:/mappers/**/*.xml
diff --git a/server/pom.xml b/server/pom.xml
index 6e90def..960bf01 100644
--- a/server/pom.xml
+++ b/server/pom.xml
@@ -20,7 +20,36 @@
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.12.RELEASE</version>
</parent>
+ <properties>
+ <java.version>1.8</java.version>
+ <spring-cloud.version>Hoxton.SR12</spring-cloud.version>
+ <spring-cloud-alibaba.version>2.2.7.RELEASE</spring-cloud-alibaba.version>
+ <maven.compiler.source>8</maven.compiler.source>
+ <maven.compiler.target>8</maven.compiler.target>
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+ </properties>
+ <dependencyManagement>
+ <dependencies>
+ <!-- Spring Cloud 渚濊禆绠$悊 -->
+ <dependency>
+ <groupId>org.springframework.cloud</groupId>
+ <artifactId>spring-cloud-dependencies</artifactId>
+ <version>${spring-cloud.version}</version>
+ <type>pom</type>
+ <scope>import</scope>
+ </dependency>
+ <!-- Alibaba Cloud 渚濊禆绠$悊 -->
+ <dependency>
+ <groupId>com.alibaba.cloud</groupId>
+ <artifactId>spring-cloud-alibaba-dependencies</artifactId>
+ <version>${spring-cloud-alibaba.version}</version>
+ <type>pom</type>
+ <scope>import</scope>
+ </dependency>
+ </dependencies>
+ </dependencyManagement>
+<!--
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
@@ -34,20 +63,20 @@
<oshi.version>5.7.0</oshi.version>
<jna.version>5.7.0</jna.version>
<poi.version>5.0.0</poi.version>
- <!-- jwtToken -->
+ <!– jwtToken –>
<jjwt.version>0.9.1</jjwt.version>
- <!-- hutool 宸ュ叿鐩稿叧-->
+ <!– hutool 宸ュ叿鐩稿叧–>
<hutool.version>5.5.8</hutool.version>
- <!-- 寰俊灏忕▼搴� -->
+ <!– 寰俊灏忕▼搴� –>
<weixin-java-miniapp.version>4.1.0</weixin-java-miniapp.version>
- <!-- 寰俊鏀粯 -->
+ <!– 寰俊鏀粯 –>
<weixin-java-pay.version>4.1.0</weixin-java-pay.version>
- <!-- 闃块噷浜慜SS瀛樺偍 -->
+ <!– 闃块噷浜慜SS瀛樺偍 –>
<aliyun-oss.version>3.8.0</aliyun-oss.version>
</properties>
<dependencies>
- <!-- Spring Boot -->
+ <!– Spring Boot –>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
@@ -56,7 +85,7 @@
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-quartz</artifactId>
</dependency>
- <!-- Shiro -->
+ <!– Shiro –>
<dependency>
<groupId>org.apache.shiro</groupId>
<artifactId>shiro-spring</artifactId>
@@ -67,21 +96,21 @@
<artifactId>weixin-java-miniapp</artifactId>
<version>${weixin-java-miniapp.version}</version>
</dependency>
- <!-- MyBatis plus -->
+ <!– MyBatis plus –>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>${mybatis.plus.version}</version>
</dependency>
- <!-- MyBatis鍒嗛〉 -->
+ <!– MyBatis鍒嗛〉 –>
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.3.0</version>
- <!--浣跨敤spring boot2鏁村悎 pagehelper-spring-boot-starter蹇呴』鎺掗櫎涓�涓嬩緷璧�
+ <!–浣跨敤spring boot2鏁村悎 pagehelper-spring-boot-starter蹇呴』鎺掗櫎涓�涓嬩緷璧�
鍥犱负pagehelper-spring-boot-starter涔熷凡缁忓湪pom渚濊禆浜唌ybatis涓巑ybatis-spring
鎵�浠ヤ細涓巑ybatis-plus-boot-starter涓殑mybatis涓巑ybatis-spring鍙戠敓鍐茬獊
- -->
+ –>
<exclusions>
<exclusion>
<groupId>org.mybatis</groupId>
@@ -91,14 +120,14 @@
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
</exclusion>
- <!-- 瑙e喅jsqlparser 渚濊禆鐗堟湰鍐茬獊-->
+ <!– 瑙e喅jsqlparser 渚濊禆鐗堟湰鍐茬獊–>
<exclusion>
<artifactId>jsqlparser</artifactId>
<groupId>com.github.jsqlparser</groupId>
</exclusion>
</exclusions>
</dependency>
- <!-- 杩炴帴姹� -->
+ <!– 杩炴帴姹� –>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
@@ -110,14 +139,14 @@
<scope>runtime</scope>
</dependency>
- <!-- swagger -->
+ <!– swagger –>
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-spring-boot-starter</artifactId>
<version>3.0.3</version>
</dependency>
- <!-- lombok -->
+ <!– lombok –>
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
@@ -142,13 +171,13 @@
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
- <!--google kaptcha-->
+ <!–google kaptcha–>
<dependency>
<groupId>com.github.penggle</groupId>
<artifactId>kaptcha</artifactId>
<version>2.3.2</version>
</dependency>
- <!-- 宸ュ叿鍖� -->
+ <!– 宸ュ叿鍖� –>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
@@ -158,7 +187,7 @@
<artifactId>fastjson</artifactId>
<version>${fastjson.version}</version>
</dependency>
- <!-- Excel瀵煎叆/瀵煎嚭渚濊禆鍖� -->
+ <!– Excel瀵煎叆/瀵煎嚭渚濊禆鍖� –>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
@@ -169,7 +198,7 @@
<artifactId>poi-ooxml</artifactId>
<version>${poi.version}</version>
</dependency>
- <!-- 鑾峰彇绯荤粺淇℃伅渚濊禆鍖� -->
+ <!– 鑾峰彇绯荤粺淇℃伅渚濊禆鍖� –>
<dependency>
<groupId>com.github.oshi</groupId>
<artifactId>oshi-core</artifactId>
@@ -185,34 +214,34 @@
<artifactId>jna-platform</artifactId>
<version>${jna.version}</version>
</dependency>
- <!-- https://mvnrepository.com/artifact/com.github.yulichang/mybatis-plus-join -->
+ <!– https://mvnrepository.com/artifact/com.github.yulichang/mybatis-plus-join –>
<dependency>
<groupId>com.github.yulichang</groupId>
<artifactId>mybatis-plus-join</artifactId>
<version>1.4.2.2</version>
</dependency>
- <!--娣诲姞fileupload渚濊禆-->
+ <!–娣诲姞fileupload渚濊禆–>
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.3</version>
</dependency>
- <!-- FILE杞崲 -->
+ <!– FILE杞崲 –>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
</dependency>
- <!--jwt-->
+ <!–jwt–>
<dependency>
<groupId>io.jsonwebtoken</groupId>
<artifactId>jjwt</artifactId>
<version>${jjwt.version}</version>
</dependency>
- <!--hutool宸ュ叿-->
+ <!–hutool宸ュ叿–>
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
@@ -223,27 +252,27 @@
<artifactId>pinyin4j</artifactId>
<version>2.5.1</version>
</dependency>
-<!-- <!– WeChat 灏忕▼搴� –>-->
-<!-- <dependency>-->
-<!-- <groupId>com.github.binarywang</groupId>-->
-<!-- <artifactId>weixin-java-miniapp</artifactId>-->
-<!-- <version>${weixin-java-miniapp.version}</version>-->
-<!-- </dependency>-->
-<!-- <!– WeChat 鏀粯 –>-->
-<!-- <dependency>-->
-<!-- <groupId>com.github.binarywang</groupId>-->
-<!-- <artifactId>weixin-java-pay</artifactId>-->
-<!-- <version>${weixin-java-pay.version}</version>-->
-<!-- </dependency>-->
+<!– <!– WeChat 灏忕▼搴� –>–>
+<!– <dependency>–>
+<!– <groupId>com.github.binarywang</groupId>–>
+<!– <artifactId>weixin-java-miniapp</artifactId>–>
+<!– <version>${weixin-java-miniapp.version}</version>–>
+<!– </dependency>–>
+<!– <!– WeChat 鏀粯 –>–>
+<!– <dependency>–>
+<!– <groupId>com.github.binarywang</groupId>–>
+<!– <artifactId>weixin-java-pay</artifactId>–>
+<!– <version>${weixin-java-pay.version}</version>–>
+<!– </dependency>–>
- <!-- 闃块噷浜慜SS-->
+ <!– 闃块噷浜慜SS–>
<dependency>
<groupId>com.aliyun.oss</groupId>
<artifactId>aliyun-sdk-oss</artifactId>
<version>${aliyun-oss.version}</version>
</dependency>
- <!-- aliyun sms SDK -->
+ <!– aliyun sms SDK –>
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>aliyun-java-sdk-core</artifactId>
@@ -255,18 +284,18 @@
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>
- <!-- mqtt -->
+ <!– mqtt –>
<dependency>
<groupId>org.springframework.integration</groupId>
<artifactId>spring-integration-mqtt</artifactId>
</dependency>
- <!-- 娴峰悍绯荤粺 -->
+ <!– 娴峰悍绯荤粺 –>
<dependency>
<groupId>com.hikvision.ga</groupId>
<artifactId>artemis-http-client</artifactId>
<version>1.1.3</version>
</dependency>
- <!--鐢熸垚浜岀淮鐮�-->
+ <!–鐢熸垚浜岀淮鐮�–>
<dependency>
<groupId>com.google.zxing</groupId>
<artifactId>javase</artifactId>
@@ -282,7 +311,7 @@
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
- <!-- WxJava鍏紬鍙� -->
+ <!– WxJava鍏紬鍙� –>
<dependency>
<groupId>com.github.binarywang</groupId>
<artifactId>weixin-java-mp</artifactId>
@@ -311,7 +340,7 @@
<type>pom</type>
<scope>import</scope>
</dependency>
- </dependencies>
+ </dependencies>-->
<build>
<plugins>
<plugin>
diff --git a/server/system_gateway/src/main/java/com/doumee/Main.java b/server/system_gateway/src/main/java/com/doumee/Main.java
new file mode 100644
index 0000000..ada0d0d
--- /dev/null
+++ b/server/system_gateway/src/main/java/com/doumee/Main.java
@@ -0,0 +1,7 @@
+package com.doumee;
+
+public class Main {
+ public static void main(String[] args) {
+ System.out.println("Hello world!");
+ }
+}
\ No newline at end of file
diff --git a/server/system_gateway/src/main/java/com/doumee/SystemGatewayApplication.java b/server/system_gateway/src/main/java/com/doumee/SystemGatewayApplication.java
new file mode 100644
index 0000000..361805f
--- /dev/null
+++ b/server/system_gateway/src/main/java/com/doumee/SystemGatewayApplication.java
@@ -0,0 +1,20 @@
+package com.doumee;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
+import org.springframework.context.ApplicationContext;
+
+/**
+ * 鍚姩绫�
+ * @author Eva.Caesar Liu
+ * @date 2023/03/21 14:49
+ */
+@SpringBootApplication
+@EnableDiscoveryClient
+public class SystemGatewayApplication {
+ public static void main(String[] args) {
+ ApplicationContext context = SpringApplication.run(SystemGatewayApplication.class);
+ context.getEnvironment();
+ }
+}
diff --git a/server/system_gateway/src/main/java/com/doumee/api/meeting/CloudBookingsController.java b/server/system_gateway/src/main/java/com/doumee/api/meeting/CloudBookingsController.java
new file mode 100644
index 0000000..22b9424
--- /dev/null
+++ b/server/system_gateway/src/main/java/com/doumee/api/meeting/CloudBookingsController.java
@@ -0,0 +1,20 @@
+package com.doumee.api.meeting;
+
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2023/05/04 18:18
+ */
+@RestController
+@RequestMapping("/gateway")
+public class CloudBookingsController {
+
+ @GetMapping("/test")
+ public String test() {
+ return ("缃戠娴嬭瘯鎴愬姛");
+ }
+
+}
diff --git a/server/system_gateway/src/main/resources/META-INF/MANIFEST.MF b/server/system_gateway/src/main/resources/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..70963e1
--- /dev/null
+++ b/server/system_gateway/src/main/resources/META-INF/MANIFEST.MF
@@ -0,0 +1,3 @@
+Manifest-Version: 1.0
+Main-Class: com.doumee.SystemGatewayApplication
+
diff --git a/server/system_gateway/src/main/resources/application-dev.yml b/server/system_gateway/src/main/resources/application-dev.yml
new file mode 100644
index 0000000..fad750a
--- /dev/null
+++ b/server/system_gateway/src/main/resources/application-dev.yml
@@ -0,0 +1,60 @@
+spring:
+ # 鏁版嵁婧愰厤缃�
+ datasource:
+ url: jdbc:mysql://sh-cdb-aiskr3vy.sql.tencentcdb.com:62443/antaiwuliu?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai
+ username: doumee
+ password: rtjgfEr@&0c0m
+ driver-class-name: com.mysql.cj.jdbc.Driver
+ type: com.alibaba.druid.pool.DruidDataSource
+
+ jackson:
+ time-zone: GMT+8
+ date-format: yyyy-MM-dd HH:mm:ss
+
+#rocketmq:
+# namesrvAddr: rmq-cn-pe335rcnn06.cn-shanghai.rmq.aliyuncs.com:8080
+# groupId: GID-wakatest
+# topic: waka-test
+# username: 4derRb4Sw5EkqUMI
+# password: v50N97wf4av8Q8I4
+
+knife4j:
+ enable: true
+ basic:
+ enable: true
+ username: admin
+ password: 111111
+
+debug_model: true
+
+captcha_check: false
+
+# Swagger閰嶇疆
+swagger:
+ host:
+ title: ${project.name}鎺ュ彛鏂囨。
+ description: ${project.name}鎺ュ彛鏂囨。
+ enabled: true
+ # 绂佺敤swagger鏃剁殑閲嶅畾鍚戝湴鍧�
+ redirect-uri: /
+
+########################寰俊鏀粯鐩稿叧閰嶇疆########################
+wx:
+ pay:
+ appId: wxfab6da18632e28de
+ appSecret: 4ee3b22afa90287834319fc3c1635271
+ mchId: 1229817002
+ mchKey: u4TSNtv0wFP7WRfnxBgijYOtRhS9FvlM
+ notifyUrl: https://dmtest.ahapp.net/smartmeeting_interface/web/api/wxPayNotify
+ keyPath: /usr/local/apiclient_cert.p12
+
+tencent:
+ map:
+ remoteHost: https://apis.map.qq.com
+ appKey: 3AYBZ-I5R3V-2BVP3-UWBDQ-ETBM5-B2BBQ
+
+
+########################瀹氭椂寮�鍚厤缃�########################
+timing: true
+
+des_pwd: 123456SDFKDJF
diff --git a/server/system_gateway/src/main/resources/application-pro.yml b/server/system_gateway/src/main/resources/application-pro.yml
new file mode 100644
index 0000000..b3934c8
--- /dev/null
+++ b/server/system_gateway/src/main/resources/application-pro.yml
@@ -0,0 +1,51 @@
+spring:
+ # 鏁版嵁婧愰厤缃�
+ datasource:
+ url: jdbc:mysql://localhost:3306/smart_meeting?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=GMT%2B8
+ username: root
+ password: Znhys@168.com
+ driver-class-name: com.mysql.cj.jdbc.Driver
+ type: com.alibaba.druid.pool.DruidDataSource
+
+
+knife4j:
+ enable: true
+ basic:
+ enable: true
+ username: admin
+ password: doumee@168.com
+
+debug_model: true
+
+captcha_check: false
+
+# Swagger閰嶇疆
+swagger:
+ host:
+ title: ${project.name}鎺ュ彛鏂囨。
+ description: ${project.name}鎺ュ彛鏂囨。
+ enabled: true
+ # 绂佺敤swagger鏃剁殑閲嶅畾鍚戝湴鍧�
+ redirect-uri: /
+
+
+########################寰俊鏀粯鐩稿叧閰嶇疆########################
+wx:
+ pay:
+ appId: wxfab6da18632e28de
+ appSecret: 4ee3b22afa90287834319fc3c1635271
+ mchId: 1229817002
+ mchKey: u4TSNtv0wFP7WRfnxBgijYOtRhS9FvlM
+ notifyUrl: https://dmtest.ahapp.net/smartmeeting_interface/web/api/wxPayNotify
+ keyPath: /usr/local/apiclient_cert.p12
+
+tencent:
+ map:
+ remoteHost: https://apis.map.qq.com
+ appKey: 3AYBZ-I5R3V-2BVP3-UWBDQ-ETBM5-B2BBQ
+
+
+########################瀹氭椂寮�鍚厤缃�########################
+timing: true
+
+des_pwd: 123456SDFKDJF
\ No newline at end of file
diff --git a/server/system_gateway/src/main/resources/application-test.yml b/server/system_gateway/src/main/resources/application-test.yml
new file mode 100644
index 0000000..e4c1f69
--- /dev/null
+++ b/server/system_gateway/src/main/resources/application-test.yml
@@ -0,0 +1,29 @@
+spring:
+ # 鏁版嵁婧愰厤缃�
+ datasource:
+ url: jdbc:mysql://sh-cdb-aiskr3vy.sql.tencentcdb.com:62443/antaiwuliu?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai
+ username: doumee
+ password: rtjgfEr@&0c0m
+ driver-class-name: com.mysql.cj.jdbc.Driver
+ type: com.alibaba.druid.pool.DruidDataSource
+
+
+knife4j:
+ enable: true
+ basic:
+ enable: true
+ username: admin
+ password: test@168.com
+
+debug_model: true
+
+captcha_check: false
+
+# Swagger閰嶇疆
+swagger:
+ host:
+ title: ${project.name}鎺ュ彛鏂囨。
+ description: ${project.name}鎺ュ彛鏂囨。
+ enabled: true
+ # 绂佺敤swagger鏃剁殑閲嶅畾鍚戝湴鍧�
+ redirect-uri: /
\ No newline at end of file
diff --git a/server/system_gateway/src/main/resources/application.yml b/server/system_gateway/src/main/resources/application.yml
new file mode 100644
index 0000000..076be11
--- /dev/null
+++ b/server/system_gateway/src/main/resources/application.yml
@@ -0,0 +1,79 @@
+# 椤圭洰淇℃伅閰嶇疆
+project:
+ name: 璁垮绯荤粺
+ version: 1.0.0
+ env: development
+# env: production
+
+
+spring:
+ application:
+ name: system_gateway
+ profiles:
+ active: dev
+
+ # JSON杩斿洖閰嶇疆
+ jackson:
+ # 榛樿鏃跺尯
+ time-zone: GMT+8
+ # 榛樿鏃ユ湡鏍煎紡鍖�
+ date-format: yyyy-MM-dd HH:mm:ss
+ servlet:
+ multipart:
+ max-file-size: 200MB
+ max-request-size: 200MB
+ enabled: true
+ main:
+ allow-circular-references: true
+# MyBatis閰嶇疆
+mybatis-plus:
+ mapper-locations: classpath*:/mappers/**/*.xml
+ configuration:
+ map-underscore-to-camel-case: true
+ log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
+
+# 缂撳瓨鍐呭璁剧疆
+cache:
+ session:
+ # 浼氳瘽杩囨湡鏃堕暱(s)
+ expire: 18000
+ captcha:
+ # 楠岃瘉鐮佽繃鏈熸椂闀�(s)
+ expire: 300
+
+# 璺熻釜鏃ュ織
+trace:
+ # 寮�鍚櫤鑳借窡韪ā寮�
+ smart: true
+ # 鎺掗櫎璺熻釜鐨刄RL姝e垯
+ exclude-patterns: .+/list[a-zA-Z0-9\-\_]*$, .+/tree[a-zA-Z0-9\-\_]*$, .+/page[a-zA-Z0-9\-\_]*$, .+/all[a-zA-Z0-9\-\_]*$, /swagger-resources.*
+
+# 鏃ュ織閰嶇疆
+logback:
+ level: INFO
+ appender: ${project.env}
+# dao灞傜殑鏃ュ織璁剧疆涓篸ebug锛屾柟渚挎煡鐪媠ql
+logging:
+ level:
+ com.doumee.dao: debug
+
+knife4j:
+ enable: true
+ basic:
+ enable: true
+ username: admin
+ password: 111111
+
+# WEB鏈嶅姟鍣ㄩ厤缃�
+server:
+ compression:
+ enabled: true
+ mime-types: application/json
+ port: 10010
+ tomcat:
+ max-swallow-size: -1
+ servlet:
+ session:
+ timeout: PT3H #琛ㄧず12灏忔椂
+
+
diff --git a/server/system_gateway/src/main/resources/bootstrap.yml b/server/system_gateway/src/main/resources/bootstrap.yml
new file mode 100644
index 0000000..d6bacc9
--- /dev/null
+++ b/server/system_gateway/src/main/resources/bootstrap.yml
@@ -0,0 +1,43 @@
+spring:
+ application:
+ name: system_gateway
+ cloud:
+ nacos:
+ server-addr: http://175.27.187.84:8848 #閰嶇疆Nacos鍦板潃
+ username: nacos
+ password: nacos
+ discovery:
+ server-addr: http://175.27.187.84:8848 #閰嶇疆Nacos鍦板潃
+ namespace: dmvisit
+ username: nacos
+ password: nacos
+ gateway:
+ discovery:
+ locator:
+ #寮�鍚粠娉ㄥ唽涓績鍔ㄦ�佸垱寤鸿矾鐢辩殑鍔熻兘锛屽埄鐢ㄥ井鏈嶅姟鍚嶈繘琛岃矾鐢�
+ enabled: true
+ #寮�鍚皬鍐欓獙璇侊紝榛樿feign鏍规嵁鏈嶅姟鍚嶆煡鎵鹃兘鏄敤鐨勫叏澶у啓
+ lower-case-service-id: true
+ routes:
+ - id: meetingAdmin
+ uri: lb://meetingAdmin
+# uri: http://localhost:10013
+ # 鏂█,璺緞鐩稿尮閰嶇殑杩涜璺敱
+ predicates:
+ - Path=/meetingAdmin/**
+ filters:
+ - StripPrefix=1
+
+ - id: visitsAdmin
+ uri: lb://visitsAdmin
+# uri: http://localhost:10028
+ # 鏂█,璺緞鐩稿尮閰嶇殑杩涜璺敱
+ predicates:
+ - Path=/visitsAdmin/**
+ filters:
+ - StripPrefix=1
+management:
+ endpoints:
+ web:
+ exposure:
+ include: "*"
diff --git a/server/visits/admin_timer/src/main/resources/application.yml b/server/visits/admin_timer/src/main/resources/application.yml
index fefb609..b52a3fb 100644
--- a/server/visits/admin_timer/src/main/resources/application.yml
+++ b/server/visits/admin_timer/src/main/resources/application.yml
@@ -23,6 +23,8 @@
max-file-size: 200MB
max-request-size: 200MB
enabled: true
+ main:
+ allow-circular-references: true
# MyBatis閰嶇疆
mybatis-plus:
mapper-locations: classpath*:/mappers/**/*.xml
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/AdminApplication.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/VisitsAdminApplication.java
similarity index 72%
rename from server/visits/dmvisit_admin/src/main/java/com/doumee/AdminApplication.java
rename to server/visits/dmvisit_admin/src/main/java/com/doumee/VisitsAdminApplication.java
index adfd32e..05108b1 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/AdminApplication.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/VisitsAdminApplication.java
@@ -4,6 +4,7 @@
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.context.ApplicationContext;
import org.springframework.scheduling.annotation.EnableAsync;
@@ -16,10 +17,11 @@
@EnableAsync
@SpringBootApplication
@MapperScan("com.doumee.dao.*")
-public class AdminApplication {
+@EnableDiscoveryClient
+public class VisitsAdminApplication {
public static void main(String[] args) {
- ApplicationContext context = SpringApplication.run(AdminApplication.class);
+ ApplicationContext context = SpringApplication.run(VisitsAdminApplication.class);
context.getEnvironment();
}
}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/cloud/CloudCarsController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/cloud/CloudCarsController.java
new file mode 100644
index 0000000..5e48302
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/cloud/CloudCarsController.java
@@ -0,0 +1,106 @@
+package com.doumee.api.cloud;
+
+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.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.Cars;
+import com.doumee.service.business.CarsService;
+import com.doumee.service.business.impl.hksync.fhk.HkSyncVehicleFromHKServiceImpl;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+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;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2023/11/30 15:33
+ */
+@Api(tags = "杞﹁締鎺ュ彛")
+@RestController
+@RequestMapping("/cloud/cars")
+public class CloudCarsController extends BaseController {
+
+ @Autowired
+ private CarsService carsService;
+ @Autowired
+ private HkSyncVehicleFromHKServiceImpl hkSyncVehicleFromHKService;
+ @PreventRepeat
+ @ApiOperation("娴嬭瘯缃戠")
+ @GetMapping("/test")
+ public ApiResponse test() {
+ return ApiResponse.success("璁垮绠$悊娴嬭瘯鎴愬姛");
+ }
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @RequiresPermissions("business:cars:create")
+ public ApiResponse create(@RequestBody Cars cars) {
+ return ApiResponse.success(carsService.create(cars));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @RequiresPermissions("business:cars:delete")
+ public ApiResponse deleteById(@PathVariable Integer id) {
+ carsService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @RequiresPermissions("business:cars: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));
+ }
+ carsService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @RequiresPermissions("business:cars:update")
+ public ApiResponse updateById(@RequestBody Cars cars) {
+ carsService.updateById(cars);
+ return ApiResponse.success(null);
+ }
+ @ApiOperation("鍏ㄩ噺鍚屾杞﹁締淇℃伅")
+ @PostMapping("/sync")
+ @RequiresPermissions("business:cars:sync")
+ public ApiResponse sync(@RequestBody Cars cars) {
+ hkSyncVehicleFromHKService.syncVehicleData();
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @RequiresPermissions("business:cars:query")
+ public ApiResponse<PageData<Cars>> findPage (@RequestBody PageWrap<Cars> pageWrap) {
+ return ApiResponse.success(carsService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @RequiresPermissions("business:cars:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<Cars> pageWrap, HttpServletResponse response) {
+ ExcelExporter.build(Cars.class).export(carsService.findPage(pageWrap).getRecords(), "杞﹁締淇℃伅琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @RequiresPermissions("business:cars:query")
+ public ApiResponse findById(@PathVariable Integer id) {
+ return ApiResponse.success(carsService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/config/shiro/ShiroConfig.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/config/shiro/ShiroConfig.java
index cd9d3e2..9c2fd8c 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/config/shiro/ShiroConfig.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/config/shiro/ShiroConfig.java
@@ -99,6 +99,7 @@
map.put("/system/initCompany", "anon");
map.put("/system/logout", "anon");
map.put("/common/captcha", "anon");
+ map.put("/cloud/**", "anon");
map.put("/statistics/**", "anon");
map.put("/business/hksync/push/**", "anon");
map.put("/business/member/empowerByList", "anon");
diff --git a/server/visits/dmvisit_admin/src/main/resources/META-INF/MANIFEST.MF b/server/visits/dmvisit_admin/src/main/resources/META-INF/MANIFEST.MF
index 7ff5b00..a143bed 100644
--- a/server/visits/dmvisit_admin/src/main/resources/META-INF/MANIFEST.MF
+++ b/server/visits/dmvisit_admin/src/main/resources/META-INF/MANIFEST.MF
@@ -1,3 +1,3 @@
Manifest-Version: 1.0
-Main-Class: com.doumee.AdminApplication
+Main-Class: com.doumee.VisitsAdminApplication
diff --git a/server/visits/dmvisit_admin/src/main/resources/application.yml b/server/visits/dmvisit_admin/src/main/resources/application.yml
index 11e389c..9f08258 100644
--- a/server/visits/dmvisit_admin/src/main/resources/application.yml
+++ b/server/visits/dmvisit_admin/src/main/resources/application.yml
@@ -7,8 +7,8 @@
spring:
- # application:
- # name: doumeevisit
+ application:
+ name: visitsAdmin
profiles:
active: dev
@@ -23,6 +23,8 @@
max-file-size: 200MB
max-request-size: 200MB
enabled: true
+ main:
+ allow-circular-references: true
# MyBatis閰嶇疆
mybatis-plus:
mapper-locations: classpath*:/mappers/**/*.xml
diff --git a/server/visits/dmvisit_admin/src/main/resources/bootstrap.yml b/server/visits/dmvisit_admin/src/main/resources/bootstrap.yml
new file mode 100644
index 0000000..de8f5dc
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/resources/bootstrap.yml
@@ -0,0 +1,30 @@
+spring:
+ application:
+ name: visitsAdmin
+ cloud:
+ loadbalancer:
+ enabled: true
+ nacos:
+ # 浣跨敤Nacos璐熻浇绛栫暐锛屽紑鍙戠幆澧冨彲浠ュ埄鐢ㄥ氨杩戣闂満鍒跺畾鍚戣闂紝鍚姩鍙傛暟濡備笅锛�
+ # -Dspring.cloud.nacos.discovery.cluster-name=鑷畾涔�
+ enabled: true
+ cache:
+ # 鏆傛椂鍏抽棴缂撳瓨
+ enabled: false
+ nacos:
+ server-addr: http://175.27.187.84:8848 #閰嶇疆Nacos鍦板潃
+ username: nacos
+ password: nacos
+# config:
+# server-addr: http://175.27.187.84:8848 #閰嶇疆Nacos鍦板潃
+# namespace: dmvisit
+# username: nacos
+# password: nacos
+# file-extension: yaml
+# group: dev
+# data-id: com.doumee.meeting.admin
+ discovery:
+ server-addr: http://175.27.187.84:8848 #閰嶇疆Nacos鍦板潃
+ namespace: dmvisit
+ username: nacos
+ password: nacos
diff --git a/server/visits/dmvisit_screen/src/main/resources/application.yml b/server/visits/dmvisit_screen/src/main/resources/application.yml
index 6f450bc..28b05ac 100644
--- a/server/visits/dmvisit_screen/src/main/resources/application.yml
+++ b/server/visits/dmvisit_screen/src/main/resources/application.yml
@@ -23,6 +23,8 @@
max-file-size: 200MB
max-request-size: 200MB
enabled: true
+ main:
+ allow-circular-references: true
# MyBatis閰嶇疆
mybatis-plus:
mapper-locations: classpath*:/mappers/**/*.xml
diff --git a/server/visits/dmvisit_web/src/main/resources/application.yml b/server/visits/dmvisit_web/src/main/resources/application.yml
index 5a8c63a..2d276df 100644
--- a/server/visits/dmvisit_web/src/main/resources/application.yml
+++ b/server/visits/dmvisit_web/src/main/resources/application.yml
@@ -23,6 +23,8 @@
max-file-size: 200MB
max-request-size: 200MB
enabled: true
+ main:
+ allow-circular-references: true
# MyBatis閰嶇疆
mybatis-plus:
mapper-locations: classpath*:/mappers/**/*.xml
diff --git a/server/visits/openapi/src/main/resources/application.yml b/server/visits/openapi/src/main/resources/application.yml
index fca0d3f..96b89ae 100644
--- a/server/visits/openapi/src/main/resources/application.yml
+++ b/server/visits/openapi/src/main/resources/application.yml
@@ -22,6 +22,8 @@
max-file-size: 200MB
max-request-size: 200MB
enabled: true
+ main:
+ allow-circular-references: true
# MyBatis閰嶇疆
mybatis-plus:
mapper-locations: classpath*:/mappers/**/*.xml
--
Gitblit v1.9.3