From 18ac8ef5bf5767ccf1626d2d8e0b0aa907f49325 Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期一, 06 五月 2024 16:45:03 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 h5/pages/visitorApplication/visitorApplication.vue                                        |    4 
 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/UnitWebController.java     |    4 
 /dev/null                                                                                 |   80 --------------------------
 h5/utils/http.api.js                                                                      |   16 ++--
 server/visits/pom.xml                                                                     |    1 
 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/WebPublicController.java   |    2 
 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/InternalWebController.java |    4 
 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/VisitorWebController.java  |    4 
 h5/pages/userinfo/userinfo.vue                                                            |    4 
 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/ProblemWebController.java  |    4 
 10 files changed, 21 insertions(+), 102 deletions(-)

diff --git a/h5/pages/userinfo/userinfo.vue b/h5/pages/userinfo/userinfo.vue
index 003109f..315bfb3 100644
--- a/h5/pages/userinfo/userinfo.vue
+++ b/h5/pages/userinfo/userinfo.vue
@@ -198,7 +198,7 @@
 				that.$refs.cropper.close()
 				uni.showLoading({ title: '涓婁紶涓�', mask: true });
 				uni.uploadFile({
-					url: `${this.$baseUrl}visitsAdmin/cloudService/web/visit/public/uploadFtp.do`,
+					url: `${this.$baseUrl}visitsAdmin/cloudService/web/public/uploadFtp.do`,
 					filePath: file.tempFilePath,
 					name: 'file',
 					formData: {
@@ -234,7 +234,7 @@
 						if (type === 'imgurl') {
 							uni.showLoading({ title: '涓婁紶涓�', mask: true });
 							uni.uploadFile({
-								url: `${that.$baseUrl}visitsAdmin/cloudService/web/visit/public/uploadFtp.do`,
+								url: `${that.$baseUrl}visitsAdmin/cloudService/web/public/uploadFtp.do`,
 								filePath: chooseImageRes.tempFilePaths[0],
 								name: 'file',
 								formData: {
diff --git a/h5/pages/visitorApplication/visitorApplication.vue b/h5/pages/visitorApplication/visitorApplication.vue
index 59014c8..3856651 100644
--- a/h5/pages/visitorApplication/visitorApplication.vue
+++ b/h5/pages/visitorApplication/visitorApplication.vue
@@ -376,7 +376,7 @@
 				this.$refs.cropper.close()
 				uni.showLoading({ title: '涓婁紶涓�', mask: true });
 				uni.uploadFile({
-					url: `${this.$baseUrl}visitsAdmin/cloudService/web/visit/public/uploadFtp.do`,
+					url: `${this.$baseUrl}visitsAdmin/cloudService/web/public/uploadFtp.do`,
 					filePath: file.tempFilePath,
 					name: 'file',
 					formData: {
@@ -534,7 +534,7 @@
 						uni.showLoading({ title: '涓婁紶涓�', mask: true });
 						for (let i = 0; i < chooseImageRes.tempFilePaths.length; i++) {
 							uni.uploadFile({
-								url: `${this.$baseUrl}visitsAdmin/cloudService/web/visit/public/uploadFtp.do`,
+								url: `${this.$baseUrl}visitsAdmin/cloudService/web/public/uploadFtp.do`,
 								filePath: chooseImageRes.tempFilePaths[i],
 								name: 'file',
 								formData: {
diff --git a/h5/utils/http.api.js b/h5/utils/http.api.js
index 6ee1bfd..3dc870c 100644
--- a/h5/utils/http.api.js
+++ b/h5/utils/http.api.js
@@ -6,14 +6,14 @@
 	    return config;
 	})
 	
-	let wxAuthorize = (params = {}) => vm.$u.http.get('visitsAdmin/cloudService/web/visit/visitor/wxAuthorize', { params });	// 璁垮寰俊鎺堟潈
-	let getSystemDictData = (params = {}) => vm.$u.http.get('visitsAdmin/cloudService/web/visit/other/getSystemDictData', { params });	// 鏌ヨ瀛楀吀鍊兼暟鎹�
-	let getProblemsVO = (params = {}) => vm.$u.http.get('visitsAdmin/cloudService/web/visit/problem/getProblemsVO', { params });	// 鑾峰彇棰樼洰鏁版嵁
-	let finishAnswer = (data = {}) => vm.$u.http.post('visitsAdmin/cloudService/web/visit/problem/finishAnswer', data);	// 淇敼褰撳墠鐧诲綍鐨勭敤鎴蜂俊鎭�
-	let deviceRoleList = (params = {}) => vm.$u.http.get('visitsAdmin/cloudService/web/visit/other/deviceRoleList', { params });	// 璁惧缁勫垪琛�
-	let getVisitedMember = (data = {}) => vm.$u.http.post('visitsAdmin/cloudService/web/visit/visitor/getVisitedMember', data);	// 鏌ヨ琚闂汉淇℃伅
-	let createFk = (data = {}) => vm.$u.http.post('visitsAdmin/cloudService/web/visit/visitor/createFk', data);	// 璁垮璁板綍鎻愪氦
-	let detail = (params = {}) => vm.$u.http.get('visitsAdmin/cloudService/web/visit/visitor/detail', { params });	// 璁垮璁板綍璇︽儏
+	let wxAuthorize = (params = {}) => vm.$u.http.get('visitsAdmin/cloudService/web/visitor/wxAuthorize', { params });	// 璁垮寰俊鎺堟潈
+	let getSystemDictData = (params = {}) => vm.$u.http.get('visitsAdmin/cloudService/web/other/getSystemDictData', { params });	// 鏌ヨ瀛楀吀鍊兼暟鎹�
+	let getProblemsVO = (params = {}) => vm.$u.http.get('visitsAdmin/cloudService/web/problem/getProblemsVO', { params });	// 鑾峰彇棰樼洰鏁版嵁
+	let finishAnswer = (data = {}) => vm.$u.http.post('visitsAdmin/cloudService/web/problem/finishAnswer', data);	// 淇敼褰撳墠鐧诲綍鐨勭敤鎴蜂俊鎭�
+	let deviceRoleList = (params = {}) => vm.$u.http.get('visitsAdmin/cloudService/web/other/deviceRoleList', { params });	// 璁惧缁勫垪琛�
+	let getVisitedMember = (data = {}) => vm.$u.http.post('visitsAdmin/cloudService/web/visitor/getVisitedMember', data);	// 鏌ヨ琚闂汉淇℃伅
+	let createFk = (data = {}) => vm.$u.http.post('visitsAdmin/cloudService/web/visitor/createFk', data);	// 璁垮璁板綍鎻愪氦
+	let detail = (params = {}) => vm.$u.http.get('visitsAdmin/cloudService/web/visitor/detail', { params });	// 璁垮璁板綍璇︽儏
 	
 	vm.$u.api = {
 		wxAuthorize,
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/visit/InternalWebController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/InternalWebController.java
similarity index 97%
rename from server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/visit/InternalWebController.java
rename to server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/InternalWebController.java
index e64ced0..e54df6f 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/visit/InternalWebController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/InternalWebController.java
@@ -1,4 +1,4 @@
-package com.doumee.cloud.web.visit;
+package com.doumee.cloud.web;
 
 import com.doumee.cloud.web.ApiController;
 import com.doumee.config.annotation.LoginNoRequired;
@@ -34,7 +34,7 @@
 @Api(tags = "銆愬叕浼楀彿銆戝唴閮ㄥ姵鍔′汉鍛�")
 @Trace(exclude = true)
 @RestController
-@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/web/visit/member")
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/web/member")
 @Slf4j
 @LoginNoRequired
 public class InternalWebController extends ApiController {
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/visit/ProblemWebController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/ProblemWebController.java
similarity index 94%
rename from server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/visit/ProblemWebController.java
rename to server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/ProblemWebController.java
index 7d14a3c..c7ffcb1 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/visit/ProblemWebController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/ProblemWebController.java
@@ -1,4 +1,4 @@
-package com.doumee.cloud.web.visit;
+package com.doumee.cloud.web;
 
 import com.doumee.cloud.web.ApiController;
 import com.doumee.config.annotation.LoginNoRequired;
@@ -31,7 +31,7 @@
 @Trace(exclude = true)
 @RestController
 @LoginNoRequired
-@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/web/visit/problem")
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/web/problem")
 @Slf4j
 public class ProblemWebController extends ApiController {
 
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/visit/UnitWebController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/UnitWebController.java
similarity index 95%
rename from server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/visit/UnitWebController.java
rename to server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/UnitWebController.java
index 3c47514..a6082ef 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/visit/UnitWebController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/UnitWebController.java
@@ -1,4 +1,4 @@
-package com.doumee.cloud.web.visit;
+package com.doumee.cloud.web;
 
 import com.doumee.biz.system.SystemDictDataBiz;
 import com.doumee.config.annotation.LoginNoRequired;
@@ -32,7 +32,7 @@
 @Trace(exclude = true)
 @RestController
 @LoginNoRequired
-@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/web/visit/other")
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/web/other")
 @Slf4j
 public class UnitWebController {
 
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/visit/VisitorWebController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/VisitorWebController.java
similarity index 95%
rename from server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/visit/VisitorWebController.java
rename to server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/VisitorWebController.java
index 9b82639..c31ca07 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/visit/VisitorWebController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/VisitorWebController.java
@@ -1,4 +1,4 @@
-package com.doumee.cloud.web.visit;
+package com.doumee.cloud.web;
 
 import com.doumee.config.annotation.LoginNoRequired;
 import com.doumee.core.annotation.trace.Trace;
@@ -32,7 +32,7 @@
 @Trace(exclude = true)
 @RestController
 @LoginNoRequired
-@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/web/visit/visitor")
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/web/visitor")
 @Slf4j
 public class VisitorWebController {
 
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/WebPublicController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/WebPublicController.java
index 056cb99..548d308 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/WebPublicController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/WebPublicController.java
@@ -41,7 +41,7 @@
 @Trace(exclude = true)
 @RestController
 @LoginNoRequired
-@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/web/visit/public")
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/web/public")
 @Slf4j
 public class WebPublicController extends BaseController {
 
diff --git a/server/visits/dmvisit_web/pom.xml b/server/visits/dmvisit_web/pom.xml
deleted file mode 100644
index 457830a..0000000
--- a/server/visits/dmvisit_web/pom.xml
+++ /dev/null
@@ -1,61 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-    <modelVersion>4.0.0</modelVersion>
-    <parent>
-        <groupId>com.doumee</groupId>
-        <artifactId>visits</artifactId>
-        <version>1.0.0-SNAPSHOT</version>
-    </parent>
-
-    <artifactId>dmvisit_web</artifactId>
-
-    <properties>
-        <maven.compiler.source>8</maven.compiler.source>
-        <maven.compiler.target>8</maven.compiler.target>
-        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-    </properties>
-
-    <dependencies>
-        <dependency>
-            <groupId>com.doumee</groupId>
-            <artifactId>dmvisit_service</artifactId>
-            <version>1.0.0-SNAPSHOT</version>
-        </dependency>
-    </dependencies>
-
-    <build>
-        <finalName>web_interface</finalName>
-        <resources>
-            <resource>
-                <directory>src/main/resources</directory>
-            </resource>
-        </resources>
-
-        <plugins>
-            <plugin>
-                <groupId>org.springframework.boot</groupId>
-                <artifactId>spring-boot-maven-plugin</artifactId>
-                <configuration>
-                    <fork>true</fork>
-                    <mainClass>com.doumee.InterfaceApplication</mainClass>
-                    <layout>ZIP</layout>
-                </configuration>
-                <executions>
-                    <execution>
-                        <goals>
-                            <goal>repackage</goal>
-                        </goals>
-                    </execution>
-                </executions>
-            </plugin>
-            <!--<plugin>
-            <groupId>org.apache.maven.plugins</groupId>
-            <artifactId>maven-war-plugin</artifactId>
-            <version>2.6</version>
-            </plugin>-->
-
-        </plugins>
-    </build>
-</project>
\ No newline at end of file
diff --git a/server/visits/dmvisit_web/src/main/java/com/doumee/InterfaceApplication.java b/server/visits/dmvisit_web/src/main/java/com/doumee/InterfaceApplication.java
deleted file mode 100644
index d29475d..0000000
--- a/server/visits/dmvisit_web/src/main/java/com/doumee/InterfaceApplication.java
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.doumee;
-
-import lombok.extern.slf4j.Slf4j;
-import org.mybatis.spring.annotation.MapperScan;
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.context.ApplicationContext;
-import org.springframework.scheduling.annotation.EnableAsync;
-
-/**
- * 鍚姩绫�
- * @author Eva.Caesar Liu
- * @date 2023/03/21 14:49
- */
-@Slf4j
-@SpringBootApplication
-@EnableAsync
-@MapperScan("com.doumee.dao")
-public class InterfaceApplication {
-
-    public static void main(String[] args) {
-        ApplicationContext context = SpringApplication.run(InterfaceApplication.class);
-        context.getEnvironment();
-    }
-}
diff --git a/server/visits/dmvisit_web/src/main/java/com/doumee/api/BaseController.java b/server/visits/dmvisit_web/src/main/java/com/doumee/api/BaseController.java
deleted file mode 100644
index bcff305..0000000
--- a/server/visits/dmvisit_web/src/main/java/com/doumee/api/BaseController.java
+++ /dev/null
@@ -1,24 +0,0 @@
-package com.doumee.api;
-
-import com.doumee.core.model.LoginUserInfo;
-import lombok.extern.slf4j.Slf4j;
-import org.apache.shiro.SecurityUtils;
-
-/**
- * Controller鍩虹被
- * @author Eva.Caesar Liu
- * @date 2023/03/21 14:49
- */
-@Slf4j
-public class BaseController {
-
-    /**
-     * 鑾峰彇褰撳墠鐧诲綍鐢ㄦ埛
-     * @author Eva.Caesar Liu
-     * @date 2023/03/21 14:49
-     */
-    protected LoginUserInfo getLoginUser () {
-        return (LoginUserInfo)SecurityUtils.getSubject().getPrincipal();
-    }
-
-}
diff --git a/server/visits/dmvisit_web/src/main/java/com/doumee/api/common/CaptchaController.java b/server/visits/dmvisit_web/src/main/java/com/doumee/api/common/CaptchaController.java
deleted file mode 100644
index f79c623..0000000
--- a/server/visits/dmvisit_web/src/main/java/com/doumee/api/common/CaptchaController.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package com.doumee.api.common;
-
-import com.doumee.api.BaseController;
-import com.doumee.core.annotation.trace.Trace;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.service.common.CaptchaService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-/**
- * @author Eva.Caesar Liu
- * @date 2023/03/21 14:49
- */
-@Api(tags = "鍥剧墖楠岃瘉鐮佹帴鍙�")
-@Trace(exclude = true)
-@RestController
-@RequestMapping("/common")
-public class CaptchaController extends BaseController {
-
-    @Autowired
-    private CaptchaService captchaService;
-
-    /**
-     * @author Eva.Caesar Liu
-     * @date 2023/03/21 14:49
-     */
-    @ApiOperation("鑾峰彇鍥剧墖楠岃瘉鐮�")
-    @GetMapping("/captcha")
-    public ApiResponse<CaptchaService.Captcha> getCaptcha() {
-        return ApiResponse.success(captchaService.genCaptcha());
-    }
-}
diff --git a/server/visits/dmvisit_web/src/main/java/com/doumee/api/web/ApiController.java b/server/visits/dmvisit_web/src/main/java/com/doumee/api/web/ApiController.java
deleted file mode 100644
index 7df9d3e..0000000
--- a/server/visits/dmvisit_web/src/main/java/com/doumee/api/web/ApiController.java
+++ /dev/null
@@ -1,49 +0,0 @@
-package com.doumee.api.web;
-
-import com.doumee.config.Jwt.JwtTokenUtil;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.Member;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.web.context.request.RequestContextHolder;
-import org.springframework.web.context.request.ServletRequestAttributes;
-
-import javax.servlet.http.HttpServletRequest;
-
-/**
- * Controller鍩虹被
- * @author Eva.Caesar Liu
- * @date 2022/03/15 09:54
- */
-@Slf4j
-public class ApiController {
-
-
-    /**
-     * 寰楀埌request瀵硅薄
-     *
-     * @return
-     */
-    public HttpServletRequest getRequest() {
-        HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
-        return request;
-    }
-
-    /**
-     * 鑾峰彇鐢ㄦ埛ID
-     *
-     * @return
-     */
-    protected Integer getMemberId() {
-        Object obj = this.getRequest().getAttribute(JwtTokenUtil.UserId_Name);
-        return obj != null ? Integer.valueOf( obj.toString() ): null;
-    }
-    /**
-     * 鑾峰彇鐢ㄦ埛
-     *
-     * @return
-     */
-    protected Member getMember() {
-        Member member = (Member) this.getRequest().getAttribute(JwtTokenUtil.MEMBER);
-        return member != null ? member : null;
-    }
-}
diff --git a/server/visits/dmvisit_web/src/main/java/com/doumee/api/web/InternalController.java b/server/visits/dmvisit_web/src/main/java/com/doumee/api/web/InternalController.java
deleted file mode 100644
index f4dff7e..0000000
--- a/server/visits/dmvisit_web/src/main/java/com/doumee/api/web/InternalController.java
+++ /dev/null
@@ -1,114 +0,0 @@
-package com.doumee.api.web;
-
-import com.doumee.core.annotation.trace.Trace;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageData;
-import com.doumee.core.model.PageWrap;
-import com.doumee.dao.business.model.Visits;
-import com.doumee.dao.web.reqeust.AccountLoginDTO;
-import com.doumee.dao.web.reqeust.AuditApproveDTO;
-import com.doumee.dao.web.reqeust.VisitMemberDTO;
-import com.doumee.dao.web.reqeust.VisitRecordDTO;
-import com.doumee.dao.web.response.*;
-import com.doumee.service.business.ApproveService;
-import com.doumee.service.business.MemberService;
-import com.doumee.service.business.VisitsService;
-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.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-/**
- * Created by IntelliJ IDEA.
- *
- * @Author : Rk
- * @create 2023/12/28 14:31
- */
-
-@Api(tags = "3銆佸唴閮ㄥ姵鍔′汉鍛�")
-@Trace(exclude = true)
-@RestController
-@RequestMapping("/web/internal")
-@Slf4j
-public class InternalController extends ApiController{
-
-    @Autowired
-    private MemberService memberService;
-
-    @Autowired
-    private VisitsService visitsService;
-
-    @Autowired
-    private ApproveService approveService;
-
-    @ApiOperation(value = "浜哄憳鐧诲綍", notes = "H5")
-    @PostMapping("/accountLogin")
-    public ApiResponse<WxAuthorizeVO> accountLogin(@RequestBody AccountLoginDTO accountLoginDTO) {
-        WxAuthorizeVO wxAuthorizeVO = memberService.accountLogin(accountLoginDTO);
-        return ApiResponse.success("鐧诲綍鎴愬姛",wxAuthorizeVO);
-    }
-
-    @ApiOperation(value = "鍐呴儴浜哄憳棣栭〉", notes = "H5")
-    @GetMapping("/internalHome")
-    @ApiImplicitParams({
-            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
-    })
-    public ApiResponse<InternalHomeVO> internalHome() {
-        return ApiResponse.success("鏌ヨ鎴愬姛",approveService.getHomeData(getMemberId()));
-    }
-
-
-    @ApiOperation("浠诲姟涓績")
-    @PostMapping("/taskCenter")
-    @ApiImplicitParams({
-            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
-    })
-    public ApiResponse<PageData<VisitRecordVO>> taskCenter (@RequestBody PageWrap<VisitRecordDTO> pageWrap) {
-        pageWrap.getModel().setMemberId(getMemberId());
-        return ApiResponse.success(visitsService.taskCenter(pageWrap));
-    }
-
-    @ApiOperation("璁垮璁板綍璇︽儏")
-    @GetMapping("/visitDetail")
-    @ApiImplicitParams({
-            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
-            @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "id", value = "璁板綍涓婚敭", required = true)
-    })
-    public ApiResponse<VisitDetailVO> visitDetail (@RequestParam Integer id) {
-        return ApiResponse.success(visitsService.getVisitDetail(id));
-    }
-
-
-    @ApiOperation(value = "浜哄憳鍒嗛〉",notes = "鍙嫓璁垮唴閮ㄤ汉鍛�")
-    @PostMapping("/memberList")
-    @ApiImplicitParams({
-            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
-    })
-    public ApiResponse<PageData<MemberVO>> memberList (@RequestBody PageWrap<VisitMemberDTO> pageWrap) {
-        return ApiResponse.success(memberService.getVisitedMemberList(pageWrap));
-    }
-
-    @ApiOperation(value = "璁垮璁板綍鎻愪氦", notes = "鍐呴儴浜哄憳鎻愪氦")
-    @PostMapping("/createVisit")
-    @ApiImplicitParams({
-            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
-    })
-    public ApiResponse createVisit(@RequestBody Visits visits) {
-        visits.setCreateMemberId(getMemberId());
-        return ApiResponse.success("鏌ヨ鎴愬姛", visitsService.createFk(visits,false));
-    }
-
-    @ApiOperation(value = "瀹℃壒娴佽褰曞鎵�", notes = "鍐呴儴浜哄憳")
-    @PostMapping("/auditApprove")
-    @ApiImplicitParams({
-            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
-    })
-    public ApiResponse auditApprove(@RequestBody AuditApproveDTO auditApproveDTO) {
-        visitsService.auditApprove(auditApproveDTO);
-        return ApiResponse.success("鎿嶄綔鎴愬姛");
-    }
-
-}
diff --git a/server/visits/dmvisit_web/src/main/java/com/doumee/api/web/ProblemController.java b/server/visits/dmvisit_web/src/main/java/com/doumee/api/web/ProblemController.java
deleted file mode 100644
index 00c2be3..0000000
--- a/server/visits/dmvisit_web/src/main/java/com/doumee/api/web/ProblemController.java
+++ /dev/null
@@ -1,63 +0,0 @@
-package com.doumee.api.web;
-
-import com.doumee.core.annotation.trace.Trace;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.wx.wxPlat.WxPlatNotice;
-import com.doumee.dao.web.reqeust.FinishAnswerDTO;
-import com.doumee.dao.web.response.ProblemsVO;
-import com.doumee.service.business.ProblemLogService;
-import com.doumee.service.business.ProblemsService;
-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.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.List;
-
-/**
- * Created by IntelliJ IDEA.
- *
- * @Author : Rk
- * @create 2023/12/8 8:54
- */
-
-@Api(tags = "2銆侀鐩笟鍔�")
-@Trace(exclude = true)
-@RestController
-@RequestMapping("/web/problem")
-@Slf4j
-public class ProblemController extends ApiController{
-
-    @Autowired
-    private ProblemsService problemsService;
-
-    @Autowired
-    private ProblemLogService problemLogService;
-
-    @Autowired
-    private WxPlatNotice wxPlatNotice;
-
-
-    @ApiOperation(value = "鑾峰彇棰樼洰鏁版嵁", notes = "H5")
-    @GetMapping("/getProblemsVO")
-    @ApiImplicitParams({
-            @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "useType", value = "浣跨敤鍦烘櫙 2鍔冲姟浜哄憳 1鏅�氳瀹�", required = true)
-    })
-    public ApiResponse<List<ProblemsVO>> getProblemsVO(@RequestParam Integer useType) {
-        return ApiResponse.success("鏌ヨ鎴愬姛",problemsService.getProblemsVO(useType));
-    }
-
-
-    @ApiOperation(value = "淇濆瓨绛旈璁板綍", notes = "H5")
-    @PostMapping("/finishAnswer")
-    public ApiResponse<Integer> finishAnswer(@RequestBody FinishAnswerDTO finishAnswerDTO) {
-        return ApiResponse.success("鏌ヨ鎴愬姛",problemLogService.finishAnswer(finishAnswerDTO));
-    }
-
-
-
-
-}
diff --git a/server/visits/dmvisit_web/src/main/java/com/doumee/api/web/PublicController.java b/server/visits/dmvisit_web/src/main/java/com/doumee/api/web/PublicController.java
deleted file mode 100644
index 1e3743d..0000000
--- a/server/visits/dmvisit_web/src/main/java/com/doumee/api/web/PublicController.java
+++ /dev/null
@@ -1,409 +0,0 @@
-package com.doumee.api.web;
-
-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.imageio.ImageIO;
-import javax.imageio.stream.ImageOutputStream;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import java.awt.*;
-import java.awt.image.BufferedImage;
-import java.io.*;
-import java.util.*;
-
-/**
- * @author Eva.Caesar Liu
- * @date 2023/02/14 11:14
- */
-@Api(tags = "鍏叡鎺ュ彛")
-@Trace(exclude = true)
-@RestController
-@RequestMapping("/public")
-@Slf4j
-public class PublicController extends BaseController {
-
-
-    @Autowired
-    private SystemDictDataBiz systemDictDataBiz;
-
-
-    @ApiOperation(value = "涓婁紶", notes = "涓婁紶", httpMethod = "POST", position = 6)
-    @ApiImplicitParams({
-        @ApiImplicitParam(name = "folder", value = "鏂囦欢澶�", required = true, paramType = "query", dataType = "String", dataTypeClass = String.class),
-    })
-    @PostMapping(value = "/upload", headers = "content-type=multipart/form-data")
-    public void uploadMobile(String folder, HttpServletRequest request, HttpServletResponse response) throws Exception {
-        MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
-        upload(multipartRequest, response, folder + "/",
-            systemDictDataBiz.queryByCode(Constants.OSS,Constants.BUCKETNAME).getCode(),
-            systemDictDataBiz.queryByCode(Constants.OSS,Constants.ACCESS_ID).getCode(),
-            systemDictDataBiz.queryByCode(Constants.OSS,Constants.ACCESS_KEY).getCode(),
-            systemDictDataBiz.queryByCode(Constants.OSS,Constants.RESOURCE_PATH).getCode(),
-            systemDictDataBiz.queryByCode(Constants.OSS,Constants.ENDPOINT).getCode());
-    }
-
-
-    @ApiOperation(value = "涓婁紶鍥剧墖", notes = "涓婁紶鍥剧墖", httpMethod = "POST", position = 6)
-    @ApiImplicitParams({
-            @ApiImplicitParam(name = "folder", value = "鏂囦欢澶�", required = true, paramType = "query", dataType = "String", dataTypeClass = String.class),
-    })
-    @PostMapping(value = "/uploadPicture", headers = "content-type=multipart/form-data")
-    public void uploadPicture(String folder, HttpServletRequest request, HttpServletResponse response) throws Exception {
-        MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
-        Iterator<String> fileNames = multipartRequest.getFileNames();
-        Map<String, Object> context = new HashMap<>();
-        while (fileNames.hasNext()){
-            MultipartFile file = multipartRequest.getFile(fileNames.next());
-            String fileName = file.getOriginalFilename();
-            String suffix = fileName.substring(fileName.lastIndexOf("."));
-            if ( !StringUtils.equalsIgnoreCase(suffix, ".jpg") || !StringUtils.equalsIgnoreCase(suffix, ".png")) {
-                context.put("code", 0);
-                context.put("message", "瀵逛笉璧凤紝鏂囦欢鏍煎紡涓婁紶鏈夎锛�");
-            }
-        }
-        upload(multipartRequest, response, folder + "/",
-                systemDictDataBiz.queryByCode(Constants.OSS,Constants.BUCKETNAME).getCode(),
-                systemDictDataBiz.queryByCode(Constants.OSS,Constants.ACCESS_ID).getCode(),
-                systemDictDataBiz.queryByCode(Constants.OSS,Constants.ACCESS_KEY).getCode(),
-                systemDictDataBiz.queryByCode(Constants.OSS,Constants.RESOURCE_PATH).getCode(),
-                systemDictDataBiz.queryByCode(Constants.OSS,Constants.ENDPOINT).getCode());
-    }
-
-
-
-
-    public static  FtpUtil ftp  = null;
-
-    @ApiOperation(value = "涓婁紶鏂囦欢鍒癋TP")
-    @RequestMapping(method= RequestMethod.POST,value="api/uploadFtp.do",headers = "content-type=multipart/form-data")
-    @ResponseBody
-    public void uploadFtp(HttpServletRequest request, HttpServletResponse response, String folderCode) throws Exception {
-        System.out.println("涓婁紶涓�");
-        String folder = systemDictDataBiz.queryByCode(Constants.FTP,folderCode).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());
-                    is = file.getInputStream();
-                    String date = DateUtil.getNowShortDate();
-                    String fName =  date+"/"+ UUID.randomUUID()+".jpg";
-                    String fileName = folder+fName;
-//                    boolean r = ftp.uploadInputstream(compressImg(is),fileName);
-                    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("halfPath", fName);
-                        fileJSON.put("prefixPath", prefixPath);
-                        fileJSON.put("folder", folder);
-                        fileJSON.put("addr", prefixPath+fileName);
-                        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 InputStream compressImg(InputStream is){
-        try {
-            long originalFileSize = is.available();
-            BufferedImage originalImage = ImageIO.read(is);
-
-            double compressionRatio = Math.sqrt((double)originalFileSize / (200 * 1024.0));
-
-            if(compressionRatio >1){
-                int compressedWidth = (int) (originalImage.getWidth() / compressionRatio);
-                int compressedHeight = (int) (originalImage.getHeight() / compressionRatio);
-
-                BufferedImage compressedImage = new BufferedImage(compressedWidth, compressedHeight, BufferedImage.TYPE_INT_RGB);
-                Graphics2D graphics = compressedImage.createGraphics();
-                graphics.drawImage(originalImage, 0, 0, compressedWidth, compressedHeight, null);
-                ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
-                ImageOutputStream imOut = ImageIO.createImageOutputStream(byteArrayOutputStream);
-                ImageIO.write(compressedImage, "jpg", imOut);
-                InputStream inputStream = new ByteArrayInputStream(byteArrayOutputStream.toByteArray());
-                graphics.dispose();
-                return inputStream;
-            }else{
-                ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
-                ImageOutputStream imOut = ImageIO.createImageOutputStream(byteArrayOutputStream);
-                ImageIO.write(originalImage, "jpg", imOut);
-                InputStream inputStream = new ByteArrayInputStream(byteArrayOutputStream.toByteArray());
-                return inputStream;
-            }
-        }catch (Exception e){
-            e.printStackTrace();
-        }
-        return is;
-    }
-
-
-    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_web/src/main/java/com/doumee/api/web/UnitController.java b/server/visits/dmvisit_web/src/main/java/com/doumee/api/web/UnitController.java
deleted file mode 100644
index a858624..0000000
--- a/server/visits/dmvisit_web/src/main/java/com/doumee/api/web/UnitController.java
+++ /dev/null
@@ -1,63 +0,0 @@
-package com.doumee.api.web;
-
-import com.doumee.biz.system.SystemDictDataBiz;
-import com.doumee.core.annotation.trace.Trace;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.dao.system.model.SystemDictData;
-import com.doumee.dao.web.reqeust.FinishAnswerDTO;
-import com.doumee.dao.web.response.DeviceRoleVO;
-import com.doumee.dao.web.response.ProblemsVO;
-import com.doumee.service.business.DeviceRoleService;
-import com.doumee.service.business.DeviceService;
-import com.doumee.service.business.ProblemLogService;
-import com.doumee.service.business.ProblemsService;
-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.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.List;
-
-/**
- * Created by IntelliJ IDEA.
- *
- * @Author : Rk
- * @create 2023/12/7 10:40
- */
-
-@Api(tags = "99銆佸叾浠�")
-@Trace(exclude = true)
-@RestController
-@RequestMapping("/web/unit")
-@Slf4j
-public class UnitController {
-
-    @Autowired
-    private SystemDictDataBiz systemDictDataBiz;
-
-    @Autowired
-    private DeviceRoleService deviceRoleService;
-
-    @ApiOperation(value = "鏌ヨ瀛楀吀鍊兼暟鎹�", notes = "H5")
-    @GetMapping("/getSystemDictData")
-    @ApiImplicitParams({
-            @ApiImplicitParam(paramType = "query", dataType = "String", name = "label", value = "鏁版嵁瀛楀吀鍊�", required = true),
-            @ApiImplicitParam(paramType = "query", dataType = "String", name = "dictCode", value = "绯荤粺瀛楀吀鍊�", required = true)
-    })
-    public ApiResponse<SystemDictData> getSystemDictData(@RequestParam String dictCode, @RequestParam String label) {
-        return ApiResponse.success("鏌ヨ鎴愬姛",systemDictDataBiz.queryByCode(dictCode,label));
-    }
-
-    @ApiOperation(value = "璁惧缁勫垪琛�", notes = "H5")
-    @GetMapping("/deviceRoleList")
-    @ApiImplicitParams({
-            @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "type", value = "绫诲瀷 0鍔冲姟璁垮 1鏅�氳瀹� 2鍐呴儴浜哄憳", required = true)
-    })
-    public ApiResponse<List<DeviceRoleVO>> deviceRoleList(@RequestParam Integer type) {
-        return ApiResponse.success("鏌ヨ鎴愬姛",deviceRoleService.findListByType(type));
-    }
-
-}
diff --git a/server/visits/dmvisit_web/src/main/java/com/doumee/api/web/VisitorController.java b/server/visits/dmvisit_web/src/main/java/com/doumee/api/web/VisitorController.java
deleted file mode 100644
index 2a4a690..0000000
--- a/server/visits/dmvisit_web/src/main/java/com/doumee/api/web/VisitorController.java
+++ /dev/null
@@ -1,76 +0,0 @@
-package com.doumee.api.web;
-
-import com.doumee.core.annotation.trace.Trace;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.utils.Constants;
-import com.doumee.dao.business.model.Visits;
-import com.doumee.dao.web.reqeust.CheckVisitedDTO;
-import com.doumee.dao.web.response.MemberVO;
-import com.doumee.dao.web.response.VisitDetailVO;
-import com.doumee.dao.web.response.WxAuthorizeVO;
-import com.doumee.service.business.MemberService;
-import com.doumee.service.business.VisitsService;
-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.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-import javax.validation.Valid;
-
-/**
- * Created by IntelliJ IDEA.
- *
- * @Author : Rk
- * @create 2023/12/7 10:40
- */
-
-@Api(tags = "1銆佽瀹笟鍔�")
-@Trace(exclude = true)
-@RestController
-@RequestMapping("/web/visitor")
-@Slf4j
-public class VisitorController {
-
-    @Autowired
-    private MemberService memberService;
-
-    @Autowired
-    private VisitsService visitsService;
-
-
-    @ApiOperation(value = "璁垮寰俊鎺堟潈", notes = "璁垮寰俊鎺堟潈鑾峰彇openId")
-    @GetMapping("/wxAuthorize")
-    @ApiImplicitParams({
-            @ApiImplicitParam(paramType = "query", dataType = "String", name = "code", value = "鎺堟潈鐮�", required = true)
-    })
-    public ApiResponse<WxAuthorizeVO> wxAuthorize(@RequestParam String code) {
-        WxAuthorizeVO wxAuthorizeVO =  memberService.wxAuthorize(code);
-        return ApiResponse.success("鏌ヨ鎴愬姛",wxAuthorizeVO);
-    }
-
-
-    @ApiOperation(value = "鏌ヨ琚闂汉淇℃伅", notes = "鏌ヨ琚闂汉淇℃伅")
-    @PostMapping("/getVisitedMember")
-    public ApiResponse<MemberVO> getVisitedMember(@Valid @RequestBody CheckVisitedDTO checkVisitedDTO) {
-        return ApiResponse.success("鏌ヨ鎴愬姛", memberService.getVisitedMember(checkVisitedDTO));
-    }
-
-
-    @ApiOperation(value = "璁垮璁板綍鎻愪氦", notes = "璁垮鎻愪氦")
-    @PostMapping("/createFk")
-    public ApiResponse createFk(@RequestBody Visits visits) {
-        visits.setSourceType(Constants.ZERO);
-        return ApiResponse.success("鏌ヨ鎴愬姛", visitsService.createFk(visits,false));
-    }
-
-
-    @ApiOperation(value = "璁垮璁板綍璇︽儏", notes = "璁垮璁板綍璇︽儏")
-    @GetMapping("/detail")
-    public ApiResponse<VisitDetailVO> detail(@RequestParam Integer id) {
-        return ApiResponse.success("鏌ヨ鎴愬姛", visitsService.getVisitDetail(id));
-    }
-}
diff --git a/server/visits/dmvisit_web/src/main/java/com/doumee/config/shiro/ShiroAuthFilter.java b/server/visits/dmvisit_web/src/main/java/com/doumee/config/shiro/ShiroAuthFilter.java
deleted file mode 100644
index f978edf..0000000
--- a/server/visits/dmvisit_web/src/main/java/com/doumee/config/shiro/ShiroAuthFilter.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package com.doumee.config.shiro;
-
-import com.alibaba.fastjson.JSON;
-import com.doumee.core.model.ApiResponse;
-import org.apache.shiro.web.filter.authc.FormAuthenticationFilter;
-import org.springframework.http.HttpStatus;
-
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-import javax.servlet.http.HttpServletResponse;
-
-/**
- * Shiro璁よ瘉杩囨护鍣紝澶勭悊鏈璇佹儏鍐电殑鍝嶅簲
- * @author Eva.Caesar Liu
- * @date 2023/03/21 14:49
- */
-public class ShiroAuthFilter extends FormAuthenticationFilter {
-
-    public ShiroAuthFilter() {
-        super();
-    }
-
-    @Override
-    protected boolean onAccessDenied(ServletRequest request, ServletResponse response) throws Exception {
-        HttpServletResponse servletResponse = (HttpServletResponse) response;
-        servletResponse.setHeader("content-type", "application/json;charset=UTF-8");
-        servletResponse.getWriter().write(JSON.toJSONString(ApiResponse.failed(HttpStatus.UNAUTHORIZED.value(), "鏈櫥褰曟垨鐧诲綍淇℃伅宸茶繃鏈�")));
-        return Boolean.FALSE;
-    }
-}
diff --git a/server/visits/dmvisit_web/src/main/java/com/doumee/config/shiro/ShiroCache.java b/server/visits/dmvisit_web/src/main/java/com/doumee/config/shiro/ShiroCache.java
deleted file mode 100644
index 36cd7af..0000000
--- a/server/visits/dmvisit_web/src/main/java/com/doumee/config/shiro/ShiroCache.java
+++ /dev/null
@@ -1,113 +0,0 @@
-package com.doumee.config.shiro;
-
-import com.doumee.service.proxy.CacheProxy;
-import lombok.extern.slf4j.Slf4j;
-import org.apache.shiro.cache.Cache;
-import org.apache.shiro.cache.CacheException;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.annotation.Scope;
-import org.springframework.stereotype.Component;
-import org.springframework.util.CollectionUtils;
-
-import java.io.Serializable;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Set;
-
-/**
- * Shiro缂撳瓨
- * @author Eva.Caesar Liu
- * @date 2023/03/21 14:49
- */
-@Scope(value = "prototype")
-@Slf4j
-@Component
-public class ShiroCache implements Cache<Object, Serializable> {
-
-    private String keyPrefix = "";
-
-    @Autowired
-    private CacheProxy<Object, Serializable> cacheProxy;
-
-    public ShiroCache () {
-        log.debug("ShiroCache: new, keyPrefix = [" + keyPrefix + "]");
-    }
-
-    public ShiroCache(String keyPrefix) {
-        log.debug("ShiroCache: new, keyPrefix = [" + keyPrefix + "]");
-        this.keyPrefix = keyPrefix;
-    }
-
-    @Override
-    public Serializable get(Object key) throws CacheException {
-        if (key == null) {
-            return null;
-        }
-        return cacheProxy.get(getKey(key));
-    }
-
-    @Override
-    public Serializable put(Object key, Serializable value) throws CacheException {
-        if (key == null) {
-            return null;
-        }
-        cacheProxy.put(getKey(key), value);
-        return value;
-    }
-
-    public Serializable put(Object key, Serializable value, int timeout) throws CacheException {
-        if (key == null) {
-            return null;
-        }
-        cacheProxy.put(getKey(key), value, timeout);
-        return value;
-    }
-
-    @Override
-    public void clear() throws CacheException {
-        Set<Object> keys = this.keys();
-        cacheProxy.remove(keys);
-    }
-
-    @Override
-    public int size() {
-        return this.keys().size();
-    }
-
-    @Override
-    public Set<Object> keys() {
-        Set<Object> keys = cacheProxy.keys(keyPrefix + "*");
-        if (CollectionUtils.isEmpty(keys)) {
-            return Collections.emptySet();
-        }
-        return keys;
-    }
-
-    @Override
-    public Collection<Serializable> values() {
-        Collection<Serializable> values = new ArrayList<>();
-        Set<Object> keys = this.keys();
-        if (CollectionUtils.isEmpty(keys)) {
-            return values;
-        }
-        for (Object k : keys) {
-            values.add(cacheProxy.get(k));
-        }
-        return values;
-    }
-
-    @Override
-    public Serializable remove(Object key) throws CacheException {
-        if (key == null) {
-            return null;
-        }
-        Serializable value = this.get(getKey(key));
-        cacheProxy.remove(getKey(key));
-        return value;
-    }
-
-    private Object getKey (Object key) {
-        return (key instanceof String ? (this.keyPrefix + key) : key);
-    }
-}
diff --git a/server/visits/dmvisit_web/src/main/java/com/doumee/config/shiro/ShiroCacheManager.java b/server/visits/dmvisit_web/src/main/java/com/doumee/config/shiro/ShiroCacheManager.java
deleted file mode 100644
index fedcb98..0000000
--- a/server/visits/dmvisit_web/src/main/java/com/doumee/config/shiro/ShiroCacheManager.java
+++ /dev/null
@@ -1,44 +0,0 @@
-package com.doumee.config.shiro;
-
-import lombok.extern.slf4j.Slf4j;
-import org.apache.shiro.cache.Cache;
-import org.apache.shiro.cache.CacheException;
-import org.apache.shiro.cache.CacheManager;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.ApplicationContext;
-import org.springframework.stereotype.Component;
-
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.concurrent.ConcurrentMap;
-
-/**
- * 鑷畾涔塖hiro CacheManager
- * @author Eva.Caesar Liu
- * @date 2023/03/21 14:49
- */
-@Slf4j
-@Component
-public class ShiroCacheManager implements CacheManager {
-
-    private final ConcurrentMap<String, Cache> caches = new ConcurrentHashMap();
-
-    private static ApplicationContext applicationContext;
-
-    @Override
-    public <K, V> Cache<K, V> getCache(String name) throws CacheException {
-        log.debug("get cache, name=" + name);
-        Cache cache = this.caches.get(name);
-        if (cache == null) {
-            cache = applicationContext.getBean(ShiroCache.class, "shiro:cache:");
-            this.caches.put(name, cache);
-        }
-        return cache;
-    }
-
-    @Autowired
-    public void setApplicationContext (ApplicationContext applicationContext) {
-        if (ShiroCacheManager.applicationContext == null) {
-            ShiroCacheManager.applicationContext = applicationContext;
-        }
-    }
-}
diff --git a/server/visits/dmvisit_web/src/main/java/com/doumee/config/shiro/ShiroConfig.java b/server/visits/dmvisit_web/src/main/java/com/doumee/config/shiro/ShiroConfig.java
deleted file mode 100644
index 86411e1..0000000
--- a/server/visits/dmvisit_web/src/main/java/com/doumee/config/shiro/ShiroConfig.java
+++ /dev/null
@@ -1,110 +0,0 @@
-package com.doumee.config.shiro;
-
-import org.apache.shiro.mgt.SecurityManager;
-import org.apache.shiro.session.mgt.SessionManager;
-import org.apache.shiro.spring.security.interceptor.AuthorizationAttributeSourceAdvisor;
-import org.apache.shiro.spring.web.ShiroFilterFactoryBean;
-import org.apache.shiro.web.mgt.DefaultWebSecurityManager;
-import org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-
-import javax.servlet.Filter;
-import java.util.HashMap;
-import java.util.LinkedHashMap;
-import java.util.Map;
-
-/**
- * Shiro閰嶇疆
- * @author Eva.Caesar Liu
- * @date 2023/03/21 14:49
- */
-@Configuration
-public class ShiroConfig {
-
-    @Value("${cache.session.expire}")
-    private int sessionExpireTime;
-
-    @Autowired
-    private ShiroCredentialsMatcher shiroCredentialsMatcher;
-
-    @Autowired
-    private ShiroSessionDAO shiroSessionDAO;
-
-    @Autowired
-    private ShiroCacheManager shiroCacheManager;
-
-    @Autowired
-    private ShiroRealm shiroRealm;
-
-    @Bean
-    public DefaultAdvisorAutoProxyCreator defaultAdvisorAutoProxyCreator() {
-        DefaultAdvisorAutoProxyCreator autoProxyCreator = new DefaultAdvisorAutoProxyCreator();
-        autoProxyCreator.setProxyTargetClass(true);
-        return autoProxyCreator;
-    }
-
-    @Bean
-    public SessionManager sessionManager() {
-        ShiroSessionManager sessionManager = new ShiroSessionManager();
-        sessionManager.setSessionDAO(shiroSessionDAO);
-        return sessionManager;
-    }
-
-    @Bean
-    public SecurityManager securityManager() {
-        DefaultWebSecurityManager securityManager = new DefaultWebSecurityManager();
-        securityManager.setRealm(shiroRealm);
-        securityManager.setSessionManager(this.sessionManager());
-        securityManager.setCacheManager(shiroCacheManager);
-        return securityManager;
-    }
-
-    @Bean
-    public ShiroFilterFactoryBean shiroFilterFactoryBean(SecurityManager securityManager) {
-        ShiroFilterFactoryBean shiroFilterFactoryBean = new ShiroFilterFactoryBean();
-        shiroFilterFactoryBean.setSecurityManager(securityManager);
-        Map<String, String> map = new LinkedHashMap<>();
-        // 璺緞鎷︽埅閰嶇疆
-        map.put("/system/login", "anon");
-        map.put("/system/logout", "anon");
-        map.put("/common/captcha", "anon");
-        map.put("/web/**", "anon");
-        //鏂囦欢涓婁紶鍙栨秷鎷︽埅
-        map.put("/public/**", "anon");
-        // - 鏀捐swagger
-        map.put("/doc.html", "anon");
-        map.put("/webjars/**", "anon");
-        map.put("/swagger-resources/**", "anon");
-        map.put("/v2/api-docs/**", "anon");
-        // - 鍏朵粬鎺ュ彛缁熶竴鎷︽埅
-        map.put("/**", "authc");
-        shiroFilterFactoryBean.setFilterChainDefinitionMap(map);
-        // 娣诲姞璁よ瘉杩囨护鍣�
-        Map<String, Filter> filters = new LinkedHashMap<>();
-        filters.put("authc", new ShiroAuthFilter());
-        shiroFilterFactoryBean.setFilters(filters);
-        return shiroFilterFactoryBean;
-    }
-
-    @Bean
-    public AuthorizationAttributeSourceAdvisor authorizationAttributeSourceAdvisor(SecurityManager securityManager) {
-        AuthorizationAttributeSourceAdvisor authorizationAttributeSourceAdvisor = new AuthorizationAttributeSourceAdvisor();
-        authorizationAttributeSourceAdvisor.setSecurityManager(securityManager);
-        return authorizationAttributeSourceAdvisor;
-    }
-
-    @Bean
-    public ShiroSessionDAO getShiroSessionDAO () {
-        shiroSessionDAO.setExpireTime(sessionExpireTime);
-        return shiroSessionDAO;
-    }
-
-    @Bean
-    public ShiroRealm getShiroRealm () {
-        shiroRealm.setCredentialsMatcher(shiroCredentialsMatcher);
-        return shiroRealm;
-    }
-}
diff --git a/server/visits/dmvisit_web/src/main/java/com/doumee/config/shiro/ShiroCredentialsMatcher.java b/server/visits/dmvisit_web/src/main/java/com/doumee/config/shiro/ShiroCredentialsMatcher.java
deleted file mode 100644
index 75c5280..0000000
--- a/server/visits/dmvisit_web/src/main/java/com/doumee/config/shiro/ShiroCredentialsMatcher.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package com.doumee.config.shiro;
-
-import com.doumee.core.utils.Utils;
-import com.doumee.dao.system.model.SystemUser;
-import com.doumee.service.system.SystemUserService;
-import org.apache.shiro.authc.AuthenticationInfo;
-import org.apache.shiro.authc.AuthenticationToken;
-import org.apache.shiro.authc.UsernamePasswordToken;
-import org.apache.shiro.authc.credential.HashedCredentialsMatcher;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.annotation.Lazy;
-import org.springframework.stereotype.Component;
-
-/**
- * Shiro瀵嗙爜姣斿澶勭悊
- * @author Eva.Caesar Liu
- * @date 2023/03/21 14:49
- */
-@Component
-public class ShiroCredentialsMatcher extends HashedCredentialsMatcher {
-
-    @Lazy
-    @Autowired
-    private SystemUserService systemUserService;
-
-    @Override
-    public boolean doCredentialsMatch(AuthenticationToken token, AuthenticationInfo info) {
-        UsernamePasswordToken usernamePasswordToken = (UsernamePasswordToken) token;
-        SystemUser queryUserDto = new SystemUser();
-        queryUserDto.setUsername(usernamePasswordToken.getUsername());
-        queryUserDto.setDeleted(Boolean.FALSE);
-        SystemUser systemUser = systemUserService.findOne(queryUserDto);
-        if (systemUser == null) {
-            return Boolean.FALSE;
-        }
-        // 鍔犲瘑瀵嗙爜
-        String pwd = Utils.Secure.encryptPassword(new String(usernamePasswordToken.getPassword()), systemUser.getSalt());
-        // 姣旇緝瀵嗙爜
-        return this.equals(pwd, systemUser.getPassword());
-    }
-}
diff --git a/server/visits/dmvisit_web/src/main/java/com/doumee/config/shiro/ShiroRealm.java b/server/visits/dmvisit_web/src/main/java/com/doumee/config/shiro/ShiroRealm.java
deleted file mode 100644
index 690addf..0000000
--- a/server/visits/dmvisit_web/src/main/java/com/doumee/config/shiro/ShiroRealm.java
+++ /dev/null
@@ -1,84 +0,0 @@
-package com.doumee.config.shiro;
-
-import com.doumee.core.model.LoginUserInfo;
-import com.doumee.dao.system.model.SystemPermission;
-import com.doumee.dao.system.model.SystemRole;
-import com.doumee.dao.system.model.SystemUser;
-import com.doumee.service.system.SystemPermissionService;
-import com.doumee.service.system.SystemRoleService;
-import com.doumee.service.system.SystemUserService;
-import org.apache.shiro.authc.AuthenticationException;
-import org.apache.shiro.authc.AuthenticationInfo;
-import org.apache.shiro.authc.AuthenticationToken;
-import org.apache.shiro.authc.SimpleAuthenticationInfo;
-import org.apache.shiro.authz.AuthorizationInfo;
-import org.apache.shiro.authz.SimpleAuthorizationInfo;
-import org.apache.shiro.realm.AuthorizingRealm;
-import org.apache.shiro.subject.PrincipalCollection;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.annotation.Lazy;
-import org.springframework.stereotype.Component;
-
-import java.util.List;
-
-/**
- * 鑷畾涔塕ealm锛屽鐞嗚璇佸拰鏉冮檺
- * @author Eva.Caesar Liu
- * @date 2023/03/21 14:49
- */
-@Component
-public class ShiroRealm extends AuthorizingRealm {
-
-    @Lazy
-    @Autowired
-    private SystemUserService systemUserService;
-
-    @Lazy
-    @Autowired
-    private SystemRoleService systemRoleService;
-
-    @Lazy
-    @Autowired
-    private SystemPermissionService systemPermissionService;
-
-    /**
-     * 鏉冮檺澶勭悊
-     * @author Eva.Caesar Liu
-     * @date 2023/03/21 14:49
-     */
-    @Override
-    protected AuthorizationInfo doGetAuthorizationInfo(PrincipalCollection principalCollection) {
-        LoginUserInfo loginUserInfo = (LoginUserInfo)principalCollection.getPrimaryPrincipal();
-        // 璁剧疆鐢ㄦ埛瑙掕壊鍜屾潈闄�
-        SimpleAuthorizationInfo authorizationInfo = new SimpleAuthorizationInfo();
-        authorizationInfo.addRoles(loginUserInfo.getRoles());
-        authorizationInfo.addStringPermissions(loginUserInfo.getPermissions());
-        return authorizationInfo;
-    }
-
-    /**
-     * 璁よ瘉澶勭悊
-     * @author Eva.Caesar Liu
-     * @date 2023/03/21 14:49
-     */
-    @Override
-    protected AuthenticationInfo doGetAuthenticationInfo(AuthenticationToken authenticationToken) throws AuthenticationException {
-        // 鑾峰彇鐢ㄦ埛鍚�
-        String username = authenticationToken.getPrincipal().toString();
-        // 鏍规嵁鐢ㄦ埛鍚嶆煡璇㈢敤鎴峰璞�
-        SystemUser queryDto = new SystemUser();
-        queryDto.setUsername(username);
-        queryDto.setDeleted(Boolean.FALSE);
-        SystemUser user = systemUserService.findOne(queryDto);
-        if (user == null) {
-            return null;
-        }
-        // 鑾峰彇鐧诲綍鐢ㄦ埛淇℃伅
-        List<SystemRole> roles = systemRoleService.findByUserId(user.getId());
-        List<SystemPermission> permissions = systemPermissionService.findByUserId(user.getId());
-        LoginUserInfo userInfo = LoginUserInfo.from(user, roles, permissions);
-        // 楠岃瘉鐢ㄦ埛
-        return new SimpleAuthenticationInfo(userInfo, user.getPassword(), this.getName());
-    }
-
-}
diff --git a/server/visits/dmvisit_web/src/main/java/com/doumee/config/shiro/ShiroSessionDAO.java b/server/visits/dmvisit_web/src/main/java/com/doumee/config/shiro/ShiroSessionDAO.java
deleted file mode 100644
index 2cc6a11..0000000
--- a/server/visits/dmvisit_web/src/main/java/com/doumee/config/shiro/ShiroSessionDAO.java
+++ /dev/null
@@ -1,113 +0,0 @@
-package com.doumee.config.shiro;
-
-import lombok.Data;
-import lombok.extern.slf4j.Slf4j;
-import org.apache.shiro.session.Session;
-import org.apache.shiro.session.UnknownSessionException;
-import org.apache.shiro.session.mgt.SimpleSession;
-import org.apache.shiro.session.mgt.eis.SessionDAO;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
-
-import java.io.Serializable;
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.Set;
-
-/**
- * 鑷畾涔塖hiro SessionDAO锛屽皢浼氳瘽淇℃伅瀛樺叆缂撳瓨涓�
- * @author Eva.Caesar Liu
- * @date 2023/03/21 14:49
- */
-@Data
-@Slf4j
-@Component
-public class ShiroSessionDAO implements SessionDAO {
-
-    private static final String KEY_PREFIX = "shiro:session:";
-
-    @Autowired
-    private ShiroCache shiroCache;
-
-    private int expireTime = 1800;
-
-    @Autowired
-    private ShiroTokenManager shiroTokenManager;
-
-    @Override
-    public Serializable create(Session session) {
-        if (session == null) {
-            log.error("session is null");
-            throw new UnknownSessionException("session is null");
-        }
-        Serializable sessionId = shiroTokenManager.build();
-        ((SimpleSession)session).setId(sessionId);
-        this.saveSession(session);
-        return sessionId;
-    }
-
-    @Override
-    public Session readSession(Serializable sessionId) throws UnknownSessionException{
-        if (sessionId == null) {
-            log.warn("session id is null");
-            return null;
-        }
-        if (sessionId instanceof String) {
-            // 瀵筍essionId杩涜楠岃瘉锛堝彲鐢ㄤ簬闃叉Session鎹曡幏銆佹毚鍔涙崟鎹夌瓑涓�绯诲垪瀹夊叏闂锛屾渶缁堝畨鍏ㄦ�у彇鍐充簬check濡備綍瀹炵幇锛�
-            shiroTokenManager.check((String) sessionId);
-        }
-        log.debug("read session from cache");
-        Session session = getSessionFromCache(sessionId);
-        if (session == null) {
-            throw new UnknownSessionException("There is no session with id [" + sessionId + "]");
-        }
-        return session;
-    }
-
-    @Override
-    public void update(Session session) throws UnknownSessionException {
-        this.saveSession(session);
-    }
-
-    @Override
-    public void delete(Session session) {
-        if (session != null && session.getId() != null) {
-            shiroCache.remove(KEY_PREFIX + session.getId());
-        }
-    }
-
-    @Override
-    public Collection<Session> getActiveSessions() {
-        Set<Session> sessions = new HashSet<>();
-        Set<Object> keys = shiroCache.keys();
-        if (keys != null && keys.size() > 0) {
-            Iterator iter = keys.iterator();
-            while(iter.hasNext()) {
-                sessions.add((Session) shiroCache.get(iter.next()));
-            }
-        }
-        return sessions;
-    }
-
-    private void saveSession(Session session) throws UnknownSessionException {
-        if (session == null || session.getId() == null) {
-            log.error("session or session id is null");
-            throw new UnknownSessionException("session or session id is null");
-        }
-        shiroCache.put(KEY_PREFIX + session.getId(), (SimpleSession)session, expireTime);
-    }
-
-    private Session getSessionFromCache (Serializable sessionId) {
-        Serializable object = shiroCache.get(KEY_PREFIX + sessionId);
-        Session session = null;
-        if (object != null) {
-            session = (Session)shiroCache.get(KEY_PREFIX + sessionId);
-        }
-        return session;
-    }
-
-    public void setExpireTime (int expireTime) {
-        this.expireTime = expireTime;
-    }
-}
diff --git a/server/visits/dmvisit_web/src/main/java/com/doumee/config/shiro/ShiroSessionManager.java b/server/visits/dmvisit_web/src/main/java/com/doumee/config/shiro/ShiroSessionManager.java
deleted file mode 100644
index ef159a7..0000000
--- a/server/visits/dmvisit_web/src/main/java/com/doumee/config/shiro/ShiroSessionManager.java
+++ /dev/null
@@ -1,86 +0,0 @@
-package com.doumee.config.shiro;
-
-import lombok.extern.slf4j.Slf4j;
-import org.apache.shiro.session.Session;
-import org.apache.shiro.session.mgt.DefaultSessionManager;
-import org.apache.shiro.session.mgt.SessionContext;
-import org.apache.shiro.session.mgt.SessionKey;
-import org.apache.shiro.web.servlet.Cookie;
-import org.apache.shiro.web.servlet.ShiroHttpServletRequest;
-import org.apache.shiro.web.servlet.SimpleCookie;
-import org.apache.shiro.web.session.mgt.WebSessionManager;
-import org.apache.shiro.web.util.WebUtils;
-
-import javax.servlet.ServletRequest;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import java.io.Serializable;
-
-/**
- * 鑷畾涔変細璇濈鐞嗗櫒
- * @author Eva.Caesar Liu
- * @date 2023/03/21 14:49
- */
-@Slf4j
-public class ShiroSessionManager extends DefaultSessionManager implements WebSessionManager {
-
-    private static final String AUTH_TOKEN = "eva-auth-token";
-
-    @Override
-    protected void onStart(Session session, SessionContext context) {
-        super.onStart(session, context);
-        if (!WebUtils.isHttp(context)) {
-            log.debug("SessionContext argument is not Http compatible or does not have an Http request/response pair. No session ID cookie will be set.");
-            return;
-        }
-        HttpServletRequest request = WebUtils.getHttpRequest(context);
-        HttpServletResponse response = WebUtils.getHttpResponse(context);
-        Serializable sessionId = session.getId();
-        this.storeSessionId(sessionId, request, response);
-        request.removeAttribute(ShiroHttpServletRequest.REFERENCED_SESSION_ID_SOURCE);
-        request.setAttribute(ShiroHttpServletRequest.REFERENCED_SESSION_IS_NEW, Boolean.TRUE);
-    }
-
-    @Override
-    public Serializable getSessionId(SessionKey key) {
-        Serializable sessionId = super.getSessionId(key);
-        if (sessionId == null && WebUtils.isWeb(key)) {
-            ServletRequest servletRequest = WebUtils.getRequest(key);
-            if (!(servletRequest instanceof HttpServletRequest)) {
-                log.trace("Can not get sessionId from header, the request is not HttpServletRequest");
-                return null;
-            }
-            HttpServletRequest request = (HttpServletRequest) servletRequest;
-            // 浠巆ookie涓幏鍙栬璇�
-            javax.servlet.http.Cookie[] cookies = request.getCookies();
-            if (cookies != null) {
-                for (javax.servlet.http.Cookie cookie : cookies) {
-                    if (AUTH_TOKEN.equals(cookie.getName())) {
-                        return cookie.getValue();
-                    }
-                }
-            }
-            // 浠巋eader涓幏鍙栬璇�
-            return request.getHeader(AUTH_TOKEN);
-        }
-        return sessionId;
-    }
-
-    @Override
-    public boolean isServletContainerSessions() {
-        return false;
-    }
-
-    private void storeSessionId(Serializable currentId, HttpServletRequest request, HttpServletResponse response) {
-        if (currentId == null) {
-            String msg = "sessionId cannot be null when persisting for subsequent requests.";
-            throw new IllegalArgumentException(msg);
-        }
-        Cookie cookie = new SimpleCookie(AUTH_TOKEN);
-        cookie.setHttpOnly(false);
-        String idString = currentId.toString();
-        cookie.setValue(idString);
-        cookie.saveTo(request, response);
-        log.trace("Set session ID cookie for session with id {}", idString);
-    }
-}
diff --git a/server/visits/dmvisit_web/src/main/java/com/doumee/config/shiro/ShiroTokenManager.java b/server/visits/dmvisit_web/src/main/java/com/doumee/config/shiro/ShiroTokenManager.java
deleted file mode 100644
index d5f3b40..0000000
--- a/server/visits/dmvisit_web/src/main/java/com/doumee/config/shiro/ShiroTokenManager.java
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.doumee.config.shiro;
-
-import com.doumee.core.exception.UnSafeSessionException;
-import org.springframework.stereotype.Component;
-
-import java.util.UUID;
-
-/**
- * 榛樿Token绠$悊鍣�
- * @author Eva.Caesar Liu
- * @date 2023/03/21 14:49  36143 45311
- */
-@Component
-public class ShiroTokenManager {
-
-    String build() {
-        return UUID.randomUUID().toString();
-    }
-
-    void check(String token) throws UnSafeSessionException {
-        if (token == null || token.length() != 36) {
-            throw new UnSafeSessionException();
-        }
-    }
-}
diff --git a/server/visits/dmvisit_web/src/main/java/com/doumee/config/swagger/SwaggerConfig.java b/server/visits/dmvisit_web/src/main/java/com/doumee/config/swagger/SwaggerConfig.java
deleted file mode 100644
index c8f9c2c..0000000
--- a/server/visits/dmvisit_web/src/main/java/com/doumee/config/swagger/SwaggerConfig.java
+++ /dev/null
@@ -1,111 +0,0 @@
-package com.doumee.config.swagger;
-
-import com.github.xiaoymin.knife4j.spring.annotations.EnableKnife4j;
-import com.google.common.base.Function;
-import com.google.common.base.Optional;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import springfox.documentation.RequestHandler;
-import springfox.documentation.builders.ApiInfoBuilder;
-import springfox.documentation.builders.PathSelectors;
-import springfox.documentation.oas.annotations.EnableOpenApi;
-import springfox.documentation.service.ApiInfo;
-import springfox.documentation.spi.DocumentationType;
-import springfox.documentation.spring.web.plugins.Docket;
-
-import java.util.function.Predicate;
-
-/**
- * Swagger閰嶇疆
- * @author Eva.Caesar Liu
- * @date 2022/03/11 10:24
- */
-@Configuration
-@EnableOpenApi
-@EnableKnife4j
-public class SwaggerConfig {
-
-    @Value("${swagger.host:}")
-    private String host;
-
-    @Value("${swagger.title:鎺ュ彛鏂囨。}")
-    private String title;
-
-    @Value("${swagger.description:}")
-    private String description;
-
-    @Value("${project.version:}")
-    private String version;
-
-    @Bean
-    public ApiInfo getApiInfo() {
-        return new ApiInfoBuilder()
-                .title(title)
-                .description(description)
-                .version(version)
-                .build();
-    }
- /*   @Bean
-    public Docket getDocket() {
-        return new Docket(DocumentationType.SWAGGER_2)
-                .apiInfo(this.getApiInfo()).groupName("銆愮郴缁熺鐞嗘帴鍙PI銆�")
-                .host(host)
-                .select()
-                .apis( basePackage("com.doumee.api.system;"))
-                // 璁剧疆闇�瑕佽鎵弿鐨勭被锛岃繖閲岃缃负娣诲姞浜咢Api娉ㄨВ鐨勭被
-//                .apis(RequestHandlerSelectors.withClassAnnotation(Api.class))
-                .paths(PathSelectors.any())
-                .build();
-    }*/
-    @Bean
-    public Docket getDocket2() {
-        return new Docket(DocumentationType.SWAGGER_2)
-                .apiInfo(this.getApiInfo()).groupName("default")
-                .host(host)
-                .select()
-                .apis( basePackage("com.doumee.api.system;com.doumee.api.business;com.doumee.api.common"))
-                // 璁剧疆闇�瑕佽鎵弿鐨勭被锛岃繖閲岃缃负娣诲姞浜咢Api娉ㄨВ鐨勭被
-//                .apis(RequestHandlerSelectors.withClassAnnotation(Api.class))
-                .paths(PathSelectors.any())
-                .build();
-    }
-   /* @Bean
-    public Docket getDocket1() {
-        return new Docket(DocumentationType.SWAGGER_2)
-            .apiInfo(this.getApiInfo()).groupName("銆愬叕鍏辨帴鍙PI銆�")
-            .host(host)
-            .select()
-            .apis( basePackage("com.doumee.api.common"))
-            // 璁剧疆闇�瑕佽鎵弿鐨勭被锛岃繖閲岃缃负娣诲姞浜咢Api娉ㄨВ鐨勭被
-//                .apis(RequestHandlerSelectors.withClassAnnotation(Api.class))
-            .paths(PathSelectors.any())
-            .build();
-    }*/
-    /**
-     * 閲嶅啓basePackage鏂规硶锛屼娇鑳藉瀹炵幇澶氬寘璁块棶锛屽鍒惰创涓婂幓
-     * @author  teavamc
-     * @date 2019/1/26
-     * @return com.google.common.base.Predicate<springfox.documentation.RequestHandler>
-     */
-    public static Predicate<RequestHandler> basePackage(String basePackage) {
-        return input -> declaringClass(input).transform(handlerPackage(basePackage)).or(true);
-    }
-
-    private static Function<Class<?>, Boolean> handlerPackage(String basePackage)     {
-        return input -> {
-            // 寰幆鍒ゆ柇鍖归厤
-            for (String strPackage : basePackage.split(";")) {
-                boolean isMatch = input.getPackage().getName().startsWith(strPackage);
-                if (isMatch) {
-                    return true;
-                }
-            }
-            return false;
-        };
-    }
-
-    private static Optional<? extends Class<?>> declaringClass(RequestHandler input) {
-        return Optional.fromNullable(input.declaringClass());
-    }
-}
diff --git a/server/visits/dmvisit_web/src/main/java/com/doumee/config/swagger/SwaggerInterceptor.java b/server/visits/dmvisit_web/src/main/java/com/doumee/config/swagger/SwaggerInterceptor.java
deleted file mode 100644
index 8fd55c6..0000000
--- a/server/visits/dmvisit_web/src/main/java/com/doumee/config/swagger/SwaggerInterceptor.java
+++ /dev/null
@@ -1,45 +0,0 @@
-package com.doumee.config.swagger;
-
-import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.stereotype.Component;
-import org.springframework.web.servlet.HandlerInterceptor;
-
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import java.io.IOException;
-
-/**
- * Swagger鎷︽埅鍣�
- * @author Eva.Caesar Liu
- * @date 2022/04/18 18:12
- */
-@Slf4j
-@Component
-public class SwaggerInterceptor implements HandlerInterceptor {
-
-    @Value("${swagger.enabled:false}")
-    private Boolean enabledSwagger;
-
-    @Value("${swagger.redirect-uri:/}")
-    private String redirectUri;
-
-    @Override
-    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) {
-        if (!enabledSwagger) {
-            String uri = request.getContextPath();
-            if (StringUtils.isNotBlank(redirectUri))
-                uri = request.getContextPath() + redirectUri;
-            if (StringUtils.isBlank(uri))
-                uri = "/";
-            try {
-                response.sendRedirect(uri);
-            } catch (IOException e) {
-                log.error(String.format("Redirect to '%s' for swagger throw an exception : %s", uri, e.getMessage()), e);
-            }
-            return Boolean.FALSE;
-        }
-        return Boolean.TRUE;
-    }
-}
diff --git a/server/visits/dmvisit_web/src/main/java/com/doumee/config/swagger/SwaggerInterceptorConfig.java b/server/visits/dmvisit_web/src/main/java/com/doumee/config/swagger/SwaggerInterceptorConfig.java
deleted file mode 100644
index f67e9a8..0000000
--- a/server/visits/dmvisit_web/src/main/java/com/doumee/config/swagger/SwaggerInterceptorConfig.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package com.doumee.config.swagger;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
-import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
-
-/**
- * Swagger鎷︽埅鍣ㄩ厤缃�
- * @author Eva.Caesar Liu
- * @date 2022/04/18 18:12
- */
-@Configuration
-public class SwaggerInterceptorConfig implements WebMvcConfigurer {
-
-    @Autowired
-    private SwaggerInterceptor swaggerInterceptor;
-
-    @Override
-    public void addInterceptors(InterceptorRegistry registry) {
-        registry.addInterceptor(swaggerInterceptor).addPathPatterns("/swagger-ui.html", "/doc.html");
-    }
-}
diff --git a/server/visits/dmvisit_web/src/main/resources/application.yml b/server/visits/dmvisit_web/src/main/resources/application.yml
deleted file mode 100644
index 2d276df..0000000
--- a/server/visits/dmvisit_web/src/main/resources/application.yml
+++ /dev/null
@@ -1,80 +0,0 @@
-# 椤圭洰淇℃伅閰嶇疆
-project:
-  name: 鏅鸿兘浼氳瀹ゅ皬绋嬪簭绔�
-  version: 1.0.0
-  env: development
-#  env: production
-
-
-spring:
-  #  application:
-  #    name: doumeevisit
-  profiles:
-    active: proHS
-
-  # 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: 10027
-  tomcat:
-    max-swallow-size: -1
-  servlet:
-    session:
-      timeout: PT3H  #琛ㄧず12灏忔椂
\ No newline at end of file
diff --git a/server/visits/pom.xml b/server/visits/pom.xml
index 89e31b2..d608ffc 100644
--- a/server/visits/pom.xml
+++ b/server/visits/pom.xml
@@ -14,7 +14,6 @@
        <module>dmvisit_admin</module>
        <module>dmvisit_service</module>
        <module>dmvisit_screen</module>
-       <module>dmvisit_web</module>
        <module>openapi</module>
        <module>admin_timer</module>
    </modules>

--
Gitblit v1.9.3