From a02d12deb461fd4cfd81ccd90104f9704a255bef Mon Sep 17 00:00:00 2001 From: yanyan Date: Wed, 3 Apr 2024 17:57:25 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B0=8F=E7=A8=8B=E5=BA=8Ftoken=E6=A0=A1?= =?UTF-8?q?=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/EmergencyService/pom.xml | 16 ++-- .../src/main/resources/application.yml | 5 ++ .../templates/project/scene/manage.html | 6 +- .../com/zdxt/knowledge/annotation/Applet.java | 12 +++ .../controller/AnswerBankController.java | 2 + .../controller/BannerManageController.java | 2 + .../controller/CustomImageController.java | 4 + .../KnowledgeLibraryController.java | 5 ++ .../controller/QuestionAnswerController.java | 5 ++ .../controller/QuestionFreController.java | 4 + .../controller/SceneHomeController.java | 3 + .../controller/SceneManageController.java | 6 ++ .../controller/SceneMedalController.java | 7 ++ .../controller/SceneMessageController.java | 5 ++ .../controller/SceneQuestionController.java | 10 +-- .../controller/SceneRoleController.java | 2 + .../controller/SceneTabController.java | 5 ++ .../controller/SceneTextController.java | 2 + .../controller/UserAddressController.java | 3 + .../controller/UserFeedbackController.java | 3 + .../controller/WechatLoginController.java | 5 ++ .../zdxt/knowledge/jwt/JwtClaimsConstant.java | 6 ++ .../com/zdxt/knowledge/jwt/JwtProperties.java | 20 +++++ .../jwt/JwtTokenUserInterceptor.java | 76 +++++++++++++++++++ .../java/com/zdxt/knowledge/jwt/JwtUtil.java | 59 ++++++++++++++ .../knowledge/jwt/WebMvcConfiguration.java | 39 ++++++++++ .../service/impl/SceneTextServiceImpl.java | 6 ++ .../service/impl/WechatServiceImpl.java | 22 ++++-- 28 files changed, 321 insertions(+), 19 deletions(-) create mode 100644 lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/annotation/Applet.java create mode 100644 lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/jwt/JwtClaimsConstant.java create mode 100644 lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/jwt/JwtProperties.java create mode 100644 lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/jwt/JwtTokenUserInterceptor.java create mode 100644 lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/jwt/JwtUtil.java create mode 100644 lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/jwt/WebMvcConfiguration.java diff --git a/lib/EmergencyService/pom.xml b/lib/EmergencyService/pom.xml index ebefad66..099e50e7 100644 --- a/lib/EmergencyService/pom.xml +++ b/lib/EmergencyService/pom.xml @@ -118,6 +118,12 @@ mybatis-plus-extension 3.4.2 + + io.jsonwebtoken + jjwt + 0.9.1 + + @@ -460,11 +466,11 @@ 5.1.3 - - EmergencyXxlJob - xxl-job-core - 1.0.0 - + + + + + diff --git a/lib/EmergencyService/zdxtEmergencyBootStart/src/main/resources/application.yml b/lib/EmergencyService/zdxtEmergencyBootStart/src/main/resources/application.yml index c9c0e6a6..2b37fa9c 100644 --- a/lib/EmergencyService/zdxtEmergencyBootStart/src/main/resources/application.yml +++ b/lib/EmergencyService/zdxtEmergencyBootStart/src/main/resources/application.yml @@ -46,6 +46,11 @@ wechat: secret: e54f86b3b85e5e418c025392abe39807 grantType: authorization_code requestUrl: https://api.weixin.qq.com/sns/jscode2session + jwt: + # 配置用户端令牌 + userSecretKey: zdxtApp + userTtl: 7200000 + userTokenName: Authentication # 用户配置 user: diff --git a/lib/EmergencyService/zdxtEmergencyBootStart/src/main/resources/templates/project/scene/manage.html b/lib/EmergencyService/zdxtEmergencyBootStart/src/main/resources/templates/project/scene/manage.html index 1c0f2f88..04201694 100644 --- a/lib/EmergencyService/zdxtEmergencyBootStart/src/main/resources/templates/project/scene/manage.html +++ b/lib/EmergencyService/zdxtEmergencyBootStart/src/main/resources/templates/project/scene/manage.html @@ -153,7 +153,7 @@ actions.push(' 编辑 '); actions.push(' 删除'); actions.push('查看 '); - actions.push('角色'); + actions.push('角色'); actions.push('上移'); return actions.join(''); } @@ -206,6 +206,10 @@ }); } + function rolePage(id) { + window.location.href=ctx + "small/project/role/view/" + id; + } + function generateQRCode() { table.set(); var rows = $.common.isEmpty(table.options.uniqueId) ? $.table.selectFirstColumns() : $.table.selectColumns(table.options.uniqueId); diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/annotation/Applet.java b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/annotation/Applet.java new file mode 100644 index 00000000..0c5bc1aa --- /dev/null +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/annotation/Applet.java @@ -0,0 +1,12 @@ +package com.zdxt.knowledge.annotation; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +@Target(ElementType.METHOD) +@Retention(RetentionPolicy.RUNTIME) +public @interface Applet { + +} diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/AnswerBankController.java b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/AnswerBankController.java index 9f8d138e..0de1ab82 100755 --- a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/AnswerBankController.java +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/AnswerBankController.java @@ -57,6 +57,7 @@ public class AnswerBankController extends BaseController * 新增答案库 */ @GetMapping("/add") + @RequiresPermissions("small:answer:add") public String add() { return prefix + "/add"; @@ -77,6 +78,7 @@ public class AnswerBankController extends BaseController /** * 修改答案库 */ + @RequiresPermissions("small:answer:edit") @GetMapping("/edit/{guid}") public String edit(@PathVariable("guid") String guid, ModelMap mmap) { diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/BannerManageController.java b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/BannerManageController.java index ecd54bb6..702bf466 100755 --- a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/BannerManageController.java +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/BannerManageController.java @@ -56,6 +56,7 @@ public class BannerManageController extends BaseController /** * 新增横幅管理 */ + @RequiresPermissions("banner:manage:add") @GetMapping("/add") public String add() { @@ -77,6 +78,7 @@ public class BannerManageController extends BaseController /** * 修改横幅管理 */ + @RequiresPermissions("banner:manage:edit") @GetMapping("/edit/{guid}") public String edit(@PathVariable("guid") String guid, ModelMap mmap) { diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/CustomImageController.java b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/CustomImageController.java index b0a0ca33..9fddfff9 100755 --- a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/CustomImageController.java +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/CustomImageController.java @@ -3,6 +3,7 @@ package com.zdxt.knowledge.controller; import com.zdxt.common.ZDResponse; import com.zdxt.common.controller.BaseController; import com.zdxt.common.util.TableDataInfo; +import com.zdxt.knowledge.annotation.Applet; import com.zdxt.knowledge.domain.CustomImage; import com.zdxt.knowledge.service.ICustomImageService; import org.apache.shiro.authz.annotation.RequiresPermissions; @@ -60,6 +61,7 @@ public class CustomImageController extends BaseController { */ @PostMapping("/listAll") @ResponseBody + @Applet public ZDResponse listAll(@RequestBody CustomImage customImage) { List list = customImageService.selectCustomImageListAll(customImage); return ZDResponse.success("成功", list); @@ -68,6 +70,7 @@ public class CustomImageController extends BaseController { /** * 新增自定义图片管理 */ + @RequiresPermissions("custom:image:add") @GetMapping("/add") public String add() { return prefix + "/add"; @@ -112,6 +115,7 @@ public class CustomImageController extends BaseController { /** * 修改自定义图片管理 */ + @RequiresPermissions("custom:image:edit") @GetMapping("/edit/{guid}") public String edit(@PathVariable("guid") String guid, ModelMap mmap) { CustomImage customImage = customImageService.selectCustomImageById(guid); diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/KnowledgeLibraryController.java b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/KnowledgeLibraryController.java index 894748e2..a6833cc8 100755 --- a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/KnowledgeLibraryController.java +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/KnowledgeLibraryController.java @@ -7,6 +7,7 @@ import com.zdxt.common.ZDResponse; import com.zdxt.common.controller.BaseController; import com.zdxt.common.util.StringUtils; import com.zdxt.common.util.TableDataInfo; +import com.zdxt.knowledge.annotation.Applet; import com.zdxt.knowledge.domain.KnowledgeLibrary; import com.zdxt.knowledge.service.IKnowledgeLibraryService; import org.apache.shiro.authz.annotation.RequiresPermissions; @@ -60,6 +61,7 @@ public class KnowledgeLibraryController extends BaseController { */ @PostMapping("/listApp") @ResponseBody + @Applet public TableDataInfo listApp(@RequestBody KnowledgeLibrary knowledgeLibrary) { if (StringUtils.isNotNull(knowledgeLibrary.getPageNum()) && StringUtils.isNotNull(knowledgeLibrary.getPageSize())) { PageHelper.startPage(knowledgeLibrary.getPageNum(), knowledgeLibrary.getPageSize()); @@ -74,6 +76,7 @@ public class KnowledgeLibraryController extends BaseController { */ @PostMapping("/getById") @ResponseBody + @Applet public ZDResponse getById(@RequestBody KnowledgeLibrary knowledgeLibrary) { KnowledgeLibrary library = knowledgeLibraryService.selectKnowledgeLibraryById(knowledgeLibrary.getGuid()); return ZDResponse.success("成功", library); @@ -82,6 +85,7 @@ public class KnowledgeLibraryController extends BaseController { /** * 新增知识库 */ + @RequiresPermissions("small:library:add") @GetMapping("/add") public String add(ModelMap mmap) { DictDataBean dictBean = new DictDataBean(); @@ -104,6 +108,7 @@ public class KnowledgeLibraryController extends BaseController { /** * 修改知识库 */ + @RequiresPermissions("small:library:edit") @GetMapping("/edit/{guid}") public String edit(@PathVariable("guid") String guid, ModelMap mmap) { KnowledgeLibrary knowledgeLibrary = knowledgeLibraryService.selectKnowledgeLibraryById(guid); diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/QuestionAnswerController.java b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/QuestionAnswerController.java index abc8aab9..9f9af766 100755 --- a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/QuestionAnswerController.java +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/QuestionAnswerController.java @@ -4,6 +4,7 @@ import com.zdxt.common.ZDResponse; import com.zdxt.common.controller.BaseController; import com.zdxt.common.util.StringUtils; import com.zdxt.common.util.TableDataInfo; +import com.zdxt.knowledge.annotation.Applet; import com.zdxt.knowledge.domain.QuestionAnswer; import com.zdxt.knowledge.domain.QuestionCount; import com.zdxt.knowledge.domain.SceneMedal; @@ -66,6 +67,7 @@ public class QuestionAnswerController extends BaseController { */ @PostMapping("/listAll") @ResponseBody + @Applet public ZDResponse listAll(@RequestBody QuestionAnswer questionAnswer) { List list = questionAnswerService.selectQuestionAnswerList(questionAnswer); return ZDResponse.success("成功", list); @@ -76,6 +78,7 @@ public class QuestionAnswerController extends BaseController { */ @PostMapping("/updateUserScore") @ResponseBody + @Applet public ZDResponse updateUserScore(@RequestBody QuestionCount questionCount) { QuestionAnswer questionAnswer = new QuestionAnswer(); questionAnswer.setQuestionFreId(questionCount.getQuestionFreId()); @@ -126,6 +129,7 @@ public class QuestionAnswerController extends BaseController { */ @PostMapping("/add") @ResponseBody + @Applet public ZDResponse addSave(@RequestBody QuestionAnswer questionAnswer) { int resNum = questionAnswerService.insertQuestionAnswer(questionAnswer); return resNum > 0 ? ZDResponse.success("操作成功", resNum) : ZDResponse.error("操作失败", resNum); @@ -167,6 +171,7 @@ public class QuestionAnswerController extends BaseController { */ @GetMapping("/queryQAByFreId/{guid}") @ResponseBody + @Applet public ZDResponse queryQAByFreId(@PathVariable("guid") String guid) { List list = questionAnswerService.queryQAByFreId(guid); return ZDResponse.success("操作成功", list); diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/QuestionFreController.java b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/QuestionFreController.java index 2a13cd5e..08447c36 100755 --- a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/QuestionFreController.java +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/QuestionFreController.java @@ -4,6 +4,7 @@ import com.zdxt.common.ZDResponse; import com.zdxt.common.controller.BaseController; import com.zdxt.common.util.StringUtils; import com.zdxt.common.util.TableDataInfo; +import com.zdxt.knowledge.annotation.Applet; import com.zdxt.knowledge.domain.QuestionFre; import com.zdxt.knowledge.service.IQuestionFreService; import org.apache.shiro.authz.annotation.RequiresPermissions; @@ -52,6 +53,7 @@ public class QuestionFreController extends BaseController { */ @PostMapping("/listAll") @ResponseBody + @Applet public ZDResponse listAll(@RequestBody QuestionFre questionFre) { List list = questionFreService.selectQuestionFreList(questionFre); return ZDResponse.success("成功", list); @@ -59,6 +61,7 @@ public class QuestionFreController extends BaseController { @PostMapping("/getRelationInfo") @ResponseBody + @Applet public ZDResponse getRelationInfo(@RequestBody String guid) { Map map = questionFreService.getRelationInfo(guid); return ZDResponse.success("成功", map); @@ -77,6 +80,7 @@ public class QuestionFreController extends BaseController { */ @PostMapping("/add") @ResponseBody + @Applet public ZDResponse addSave(@RequestBody QuestionFre questionFre) { String guid = questionFreService.insertQuestionFre(questionFre); return StringUtils.isNotEmpty(guid) ? ZDResponse.success("操作成功", guid) : ZDResponse.error("操作失败", guid); diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneHomeController.java b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneHomeController.java index c064d0c0..25cd46e9 100644 --- a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneHomeController.java +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneHomeController.java @@ -3,6 +3,7 @@ package com.zdxt.knowledge.controller; import com.zdxt.common.ZDResponse; import com.zdxt.common.controller.BaseController; import com.zdxt.common.util.TableDataInfo; +import com.zdxt.knowledge.annotation.Applet; import com.zdxt.knowledge.domain.SceneHome; import com.zdxt.knowledge.service.ISceneHomeService; import org.apache.shiro.authz.annotation.RequiresPermissions; @@ -52,6 +53,7 @@ public class SceneHomeController extends BaseController { */ @PostMapping("/listAll") @ResponseBody + @Applet public ZDResponse listAll(@RequestBody SceneHome sceneHome) { List list = sceneHomeService.selectSceneHomeListAll(sceneHome); return ZDResponse.success("成功", list); @@ -119,6 +121,7 @@ public class SceneHomeController extends BaseController { /** * 排序上移 */ + @RequiresPermissions("project:home:edit") @GetMapping("/sort/{guid}") @ResponseBody public ZDResponse sort(@PathVariable("guid") String guid) { diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneManageController.java b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneManageController.java index a2fd831f..2930d405 100755 --- a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneManageController.java +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneManageController.java @@ -5,6 +5,7 @@ import com.zdxt.common.ZDResponse; import com.zdxt.common.controller.BaseController; import com.zdxt.common.util.StringUtils; import com.zdxt.common.util.TableDataInfo; +import com.zdxt.knowledge.annotation.Applet; import com.zdxt.knowledge.domain.QuestionFre; import com.zdxt.knowledge.domain.SceneImportDataModel; import com.zdxt.knowledge.domain.SceneManage; @@ -76,6 +77,7 @@ public class SceneManageController extends BaseController { */ @PostMapping("/listApp") @ResponseBody + @Applet public TableDataInfo listApp(@RequestBody SceneManage sceneManage) { if (StringUtils.isNotNull(sceneManage.getPageNum()) && StringUtils.isNotNull(sceneManage.getPageSize())) { PageHelper.startPage(sceneManage.getPageNum(), sceneManage.getPageSize()); @@ -113,6 +115,7 @@ public class SceneManageController extends BaseController { */ @PostMapping("/getQRCode") @ResponseBody + @Applet public ZDResponse getQRCode() throws Exception { return sceneManageService.getQRCode(); } @@ -140,6 +143,7 @@ public class SceneManageController extends BaseController { /** * 新增场景 */ + @RequiresPermissions("project:manage:add") @GetMapping("/add") public String add() { return prefix + "/add"; @@ -159,6 +163,7 @@ public class SceneManageController extends BaseController { /** * 修改 */ + @RequiresPermissions("project:manage:edit") @GetMapping("/edit/{guid}") public String edit(@PathVariable("guid") String guid, ModelMap mmap) { SceneManage sceneManage = sceneManageService.selectSceneManageById(guid); @@ -191,6 +196,7 @@ public class SceneManageController extends BaseController { /** * 排序上移 */ + @RequiresPermissions("project:manage:sort") @GetMapping("/sort/{guid}") @ResponseBody public ZDResponse sort(@PathVariable("guid") String guid) { diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneMedalController.java b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneMedalController.java index abf12024..8ef9c570 100755 --- a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneMedalController.java +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneMedalController.java @@ -5,6 +5,7 @@ import com.zdxt.common.ZDResponse; import com.zdxt.common.controller.BaseController; import com.zdxt.common.util.TableDataInfo; import com.zdxt.domain.auth.DictData; +import com.zdxt.knowledge.annotation.Applet; import com.zdxt.knowledge.domain.SceneManage; import com.zdxt.knowledge.domain.SceneMedal; import com.zdxt.knowledge.service.ISceneManageService; @@ -63,6 +64,7 @@ public class SceneMedalController extends BaseController { /** * 成就勋章图标 */ + @RequiresPermissions("project:medal:edit") @GetMapping("/selected/{guid}") public String selected(@PathVariable("guid") String guid, ModelMap mmap) { SceneMedal sceneMedal = sceneMedalService.selectSceneMedalById(guid); @@ -97,6 +99,7 @@ public class SceneMedalController extends BaseController { */ @PostMapping("/listAll") @ResponseBody + @Applet public ZDResponse listAll(@RequestBody SceneMedal sceneMedal) { List list = sceneMedalService.selectSceneMedalList(sceneMedal); return ZDResponse.success("成功", list); @@ -107,6 +110,7 @@ public class SceneMedalController extends BaseController { */ @PostMapping("/medalInfo") @ResponseBody + @Applet public ZDResponse medalInfo(@RequestBody String guid) { SceneMedal sceneMedal = new SceneMedal(); @@ -148,6 +152,7 @@ public class SceneMedalController extends BaseController { /** * 新增 */ + @RequiresPermissions("project:medal:add") @GetMapping("/add/{type}") public String add(@PathVariable("type") String type, ModelMap mmap) { List sceneList = sceneManageService.selectSceneManageListAll(new SceneManage()); @@ -170,6 +175,7 @@ public class SceneMedalController extends BaseController { /** * 修改 */ + @RequiresPermissions("project:medal:edit") @GetMapping("/edit/{guid}") public String edit(@PathVariable("guid") String guid, ModelMap mmap) { SceneMedal sceneMedal = sceneMedalService.selectSceneMedalById(guid); @@ -203,6 +209,7 @@ public class SceneMedalController extends BaseController { /** * 排序上移 */ + @RequiresPermissions("project:medal:sort") @GetMapping("/sort/{guid}/{type}") @ResponseBody public ZDResponse sort(@PathVariable("guid") String guid, @PathVariable("type") String type) { diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneMessageController.java b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneMessageController.java index 07e9925f..c0323683 100755 --- a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneMessageController.java +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneMessageController.java @@ -6,6 +6,7 @@ import com.zdxt.common.controller.BaseController; import com.zdxt.common.util.SqlUtil; import com.zdxt.common.util.StringUtils; import com.zdxt.common.util.TableDataInfo; +import com.zdxt.knowledge.annotation.Applet; import com.zdxt.knowledge.domain.SceneMessage; import com.zdxt.knowledge.service.ISceneMessageService; import org.apache.shiro.authz.annotation.RequiresPermissions; @@ -55,6 +56,7 @@ public class SceneMessageController extends BaseController { */ @PostMapping("/listByApp") @ResponseBody + @Applet public TableDataInfo listByApp(@RequestBody SceneMessage sceneMessage) { if (StringUtils.isNotNull(sceneMessage.getPageNum()) && StringUtils.isNotNull(sceneMessage.getPageSize())) { PageHelper.startPage(sceneMessage.getPageNum(), sceneMessage.getPageSize()); @@ -68,6 +70,7 @@ public class SceneMessageController extends BaseController { */ @PostMapping("/getById") @ResponseBody + @Applet public ZDResponse getById(@RequestBody SceneMessage sceneMessage) { SceneMessage message = sceneMessageService.selectSceneMessageById(sceneMessage.getGuid()); return ZDResponse.success("成功", message); @@ -87,6 +90,7 @@ public class SceneMessageController extends BaseController { /** * 新增 */ + @RequiresPermissions("project:message:add") @GetMapping("/add") public String add() { return prefix + "/add"; @@ -106,6 +110,7 @@ public class SceneMessageController extends BaseController { /** * 修改 */ + @RequiresPermissions("project:message:edit") @GetMapping("/edit/{guid}") public String edit(@PathVariable("guid") String guid, ModelMap mmap) { SceneMessage sceneMessage = sceneMessageService.selectSceneMessageById(guid); diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneQuestionController.java b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneQuestionController.java index 7cde6876..fff5e1b3 100644 --- a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneQuestionController.java +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneQuestionController.java @@ -1,14 +1,12 @@ package com.zdxt.knowledge.controller; -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONObject; import com.zdxt.auth.feign.RoleApi; import com.zdxt.common.ZDResponse; import com.zdxt.common.controller.BaseController; import com.zdxt.common.util.TableDataInfo; +import com.zdxt.knowledge.annotation.Applet; import com.zdxt.knowledge.domain.SceneManage; import com.zdxt.knowledge.domain.SceneQuestion; -import com.zdxt.knowledge.domain.SceneRole; import com.zdxt.knowledge.mapper.SceneManageMapper; import com.zdxt.knowledge.mapper.SceneRoleMapper; import com.zdxt.knowledge.service.ISceneQuestionService; @@ -40,8 +38,6 @@ public class SceneQuestionController extends BaseController { @Autowired private SceneManageMapper sceneManageMapper; - @Autowired - private SceneRoleMapper sceneRoleMapper; @Autowired private RoleApi roleApi; @@ -76,6 +72,7 @@ public class SceneQuestionController extends BaseController { /** * 新增场景题目 */ + @RequiresPermissions("project:question:add") @GetMapping("/add") public String add(@RequestParam("parentId") String parentId, ModelMap mmap) { mmap.put("parentId", parentId); @@ -96,6 +93,7 @@ public class SceneQuestionController extends BaseController { /** * 修改场景题目 */ + @RequiresPermissions("project:question:edit") @GetMapping("/edit/{guid}") public String edit(@PathVariable("guid") String guid, ModelMap mmap) { SceneQuestion sceneQuestion = sceneQuestionService.selectSceneQuestionById(guid); @@ -175,6 +173,7 @@ public class SceneQuestionController extends BaseController { /** * 新增场景题目 */ + @RequiresPermissions("project:question:add") @GetMapping("/addNew") public String addNew(@RequestParam("guid") String guid, @RequestParam("parentId") String parentId, ModelMap mmap) { SceneQuestion sceneQuestion = sceneQuestionService.selectSceneQuestionById(guid); @@ -209,6 +208,7 @@ public class SceneQuestionController extends BaseController { @PostMapping("/getBindJsonApp") @ResponseBody + @Applet public ZDResponse getBindJsonApp(@RequestBody String guid) { List> list = sceneQuestionService.selectQuestionTree(guid); return ZDResponse.success("成功", list); diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneRoleController.java b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneRoleController.java index d29edb12..1280c2b6 100644 --- a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneRoleController.java +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneRoleController.java @@ -3,6 +3,7 @@ package com.zdxt.knowledge.controller; import com.zdxt.common.ZDResponse; import com.zdxt.common.controller.BaseController; import com.zdxt.common.util.TableDataInfo; +import com.zdxt.knowledge.annotation.Applet; import com.zdxt.knowledge.domain.SceneRole; import com.zdxt.knowledge.service.ISceneRoleService; import org.apache.shiro.authz.annotation.RequiresPermissions; @@ -51,6 +52,7 @@ public class SceneRoleController extends BaseController { */ @PostMapping("/listAll") @ResponseBody + @Applet public ZDResponse listAll(@RequestBody SceneRole sceneRole) { List list = sceneRoleService.selectSceneRoleList(sceneRole); return ZDResponse.success("成功", list); diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneTabController.java b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneTabController.java index 79bd3efa..77b3372f 100755 --- a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneTabController.java +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneTabController.java @@ -3,6 +3,7 @@ package com.zdxt.knowledge.controller; import com.zdxt.common.ZDResponse; import com.zdxt.common.controller.BaseController; import com.zdxt.common.util.TableDataInfo; +import com.zdxt.knowledge.annotation.Applet; import com.zdxt.knowledge.domain.SceneTab; import com.zdxt.knowledge.service.ISceneTabService; import org.apache.shiro.authz.annotation.RequiresPermissions; @@ -54,6 +55,7 @@ public class SceneTabController extends BaseController { */ @PostMapping("/listByApp") @ResponseBody + @Applet public ZDResponse listByApp(@RequestBody SceneTab sceneTab) { List list = sceneTabService.selectSceneTabList(sceneTab); return ZDResponse.success("成功", list); @@ -64,6 +66,7 @@ public class SceneTabController extends BaseController { */ @PostMapping("/listAll") @ResponseBody + @Applet public ZDResponse listAll(@RequestBody SceneTab sceneTab) { List list = sceneTabService.selectSceneTabListAll(sceneTab); return ZDResponse.success("成功", list); @@ -111,6 +114,7 @@ public class SceneTabController extends BaseController { /** * 选中 */ + @RequiresPermissions("project:tab:edit") @GetMapping("/selected/{guid}") public String selected(@PathVariable("guid") String guid, ModelMap mmap) { SceneTab sceneTab = sceneTabService.selectSceneTabById(guid); @@ -153,6 +157,7 @@ public class SceneTabController extends BaseController { /** * 排序上移 */ + @RequiresPermissions("project:tab:edit") @GetMapping("/sort/{guid}") @ResponseBody public ZDResponse sort(@PathVariable("guid") String guid) { diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneTextController.java b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneTextController.java index 4ffe852d..bd8079ee 100755 --- a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneTextController.java +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneTextController.java @@ -3,6 +3,7 @@ package com.zdxt.knowledge.controller; import com.zdxt.common.ZDResponse; import com.zdxt.common.controller.BaseController; import com.zdxt.common.util.TableDataInfo; +import com.zdxt.knowledge.annotation.Applet; import com.zdxt.knowledge.domain.SceneText; import com.zdxt.knowledge.service.ISceneTextService; import org.apache.shiro.authz.annotation.RequiresPermissions; @@ -52,6 +53,7 @@ public class SceneTextController extends BaseController { */ @PostMapping("/listAll") @ResponseBody + @Applet public ZDResponse listAll(@RequestBody SceneText sceneText) { List list = sceneTextService.selectSceneTextList(sceneText); return ZDResponse.success("成功", list); diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/UserAddressController.java b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/UserAddressController.java index b496c20e..cdf40d01 100755 --- a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/UserAddressController.java +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/UserAddressController.java @@ -3,6 +3,7 @@ package com.zdxt.knowledge.controller; import com.zdxt.common.ZDResponse; import com.zdxt.common.controller.BaseController; import com.zdxt.common.util.TableDataInfo; +import com.zdxt.knowledge.annotation.Applet; import com.zdxt.knowledge.domain.UserAddress; import com.zdxt.knowledge.service.IUserAddressService; import org.apache.shiro.authz.annotation.RequiresPermissions; @@ -53,6 +54,7 @@ public class UserAddressController extends BaseController { */ @PostMapping("/listAll") @ResponseBody + @Applet public ZDResponse listAll(@RequestBody UserAddress userAddress) { List list = userAddressService.selectUserAddressList(userAddress); return ZDResponse.success("成功", list); @@ -83,6 +85,7 @@ public class UserAddressController extends BaseController { //@RequiresPermissions("project:address:add") @PostMapping("/add") @ResponseBody + @Applet public ZDResponse addSave(@RequestBody UserAddress userAddress) { return userAddressService.insertUserAddress(userAddress) > 0 ? ZDResponse.success() : ZDResponse.error("新增失败"); diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/UserFeedbackController.java b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/UserFeedbackController.java index 62e9d1f1..c6f31e8a 100755 --- a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/UserFeedbackController.java +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/UserFeedbackController.java @@ -3,6 +3,7 @@ package com.zdxt.knowledge.controller; import com.zdxt.common.ZDResponse; import com.zdxt.common.controller.BaseController; import com.zdxt.common.util.TableDataInfo; +import com.zdxt.knowledge.annotation.Applet; import com.zdxt.knowledge.domain.UserFeedback; import com.zdxt.knowledge.service.IUserFeedbackService; import org.apache.shiro.authz.annotation.RequiresPermissions; @@ -52,6 +53,7 @@ public class UserFeedbackController extends BaseController { */ @PostMapping("/listAll") @ResponseBody + @Applet public ZDResponse listAll(@RequestBody UserFeedback userFeedback) { List list = userFeedbackService.selectUserFeedbackList(userFeedback); return ZDResponse.success("成功", list); @@ -73,6 +75,7 @@ public class UserFeedbackController extends BaseController { */ @PostMapping("/add") @ResponseBody + @Applet public ZDResponse addSave(@RequestBody UserFeedback userFeedback) { return userFeedbackService.insertUserFeedback(userFeedback) > 0 ? ZDResponse.success() : ZDResponse.error("新增失败"); diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/WechatLoginController.java b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/WechatLoginController.java index 3e5cc29e..08cb137d 100755 --- a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/WechatLoginController.java +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/WechatLoginController.java @@ -4,6 +4,7 @@ import com.zdxt.common.ZDResponse; import com.zdxt.common.controller.BaseController; import com.zdxt.common.util.StringUtils; import com.zdxt.common.util.TableDataInfo; +import com.zdxt.knowledge.annotation.Applet; import com.zdxt.knowledge.domain.SceneMedal; import com.zdxt.knowledge.domain.WechatLoginRequest; import com.zdxt.knowledge.domain.WechatUser; @@ -79,6 +80,7 @@ public class WechatLoginController extends BaseController { @PostMapping("/getActiveStatus") @ResponseBody + @Applet public ZDResponse getActiveStatus(@RequestBody WechatUser wechatUser) { WechatUser user = wechatService.selectUserById(wechatUser.getGuid()); return ZDResponse.success("成功", user); @@ -86,6 +88,7 @@ public class WechatLoginController extends BaseController { @PostMapping("/editActiveStatus") @ResponseBody + @Applet public ZDResponse editActiveStatus(@RequestBody WechatUser wechatUser) { return wechatService.update(wechatUser) > 0 ? ZDResponse.success() : ZDResponse.error("编辑失败"); @@ -119,6 +122,7 @@ public class WechatLoginController extends BaseController { */ @PostMapping("/editUserMedal") @ResponseBody + @Applet public ZDResponse editUserMedal(@RequestBody WechatUser wechatUser) { // 先通过场景id获取到相关联的勋章id String medalId = wechatUser.getMedal(); @@ -162,6 +166,7 @@ public class WechatLoginController extends BaseController { */ @PostMapping("/showMyMedal") @ResponseBody + @Applet public ZDResponse showMyMedal(@RequestBody WechatUser wechatUser) { return wechatService.showMyMedal(wechatUser); } diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/jwt/JwtClaimsConstant.java b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/jwt/JwtClaimsConstant.java new file mode 100644 index 00000000..a168d811 --- /dev/null +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/jwt/JwtClaimsConstant.java @@ -0,0 +1,6 @@ +package com.zdxt.knowledge.jwt; + +public class JwtClaimsConstant { + + public static final String USER_ID = "JWT_CLAIMS_USER_IDENTITY"; +} diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/jwt/JwtProperties.java b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/jwt/JwtProperties.java new file mode 100644 index 00000000..8080a52a --- /dev/null +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/jwt/JwtProperties.java @@ -0,0 +1,20 @@ +package com.zdxt.knowledge.jwt; + +import lombok.Data; +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.stereotype.Component; + +@Component +@ConfigurationProperties(prefix = "wechat.jwt") +@Data +public class JwtProperties { + /** + * 用户端微信用户生成jwt令牌相关配置 + */ + private String userSecretKey; + private long userTtl; + private String userTokenName; + +} + + diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/jwt/JwtTokenUserInterceptor.java b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/jwt/JwtTokenUserInterceptor.java new file mode 100644 index 00000000..192dee68 --- /dev/null +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/jwt/JwtTokenUserInterceptor.java @@ -0,0 +1,76 @@ +package com.zdxt.knowledge.jwt; + +import com.zdxt.knowledge.annotation.Applet; +import com.zdxt.knowledge.domain.WechatUser; +import com.zdxt.knowledge.mapper.WechatLoginMapper; +import io.jsonwebtoken.Claims; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; +import org.springframework.web.method.HandlerMethod; +import org.springframework.web.servlet.HandlerInterceptor; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.util.Objects; + +/** + * jwt令牌校验的拦截器 + */ +@Component +@Slf4j +public class JwtTokenUserInterceptor implements HandlerInterceptor { + + @Autowired + private JwtProperties jwtProperties; + + @Autowired + private WechatLoginMapper wechatLoginMapper; + + /** + * 校验jwt + * + * @param request + * @param response + * @param handler + * @return + * @throws Exception + */ + public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { + + //判断当前拦截到的是Controller的方法还是其他资源 + if (!(handler instanceof HandlerMethod)) { + //当前拦截到的不是动态方法,直接放行 + return true; + } + //只校验小程序的接口,如果不是小程序调用的接口放行 + Applet annotation = ((HandlerMethod) handler) + .getMethodAnnotation(Applet.class); + + if (annotation == null) { + return true; + } + + //1、从请求头中获取令牌 + String token = request.getHeader(jwtProperties.getUserTokenName()); + + //2、校验令牌 + try { + log.info("jwt校验:{}", token); + Claims claims = JwtUtil.parseJWT(jwtProperties.getUserSecretKey(), token); + String userId = claims.get(JwtClaimsConstant.USER_ID).toString(); + log.info("当前用户id:", userId); + WechatUser wechatUser = wechatLoginMapper.selectUserById(userId); + if (Objects.nonNull(wechatUser)) { + return true; + } + return false; + } catch (Exception ex) { + //4、不通过,响应401状态码 + response.setStatus(401); + throw new RuntimeException("非法调用"); + } + } +} + + diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/jwt/JwtUtil.java b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/jwt/JwtUtil.java new file mode 100644 index 00000000..2fb30fdf --- /dev/null +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/jwt/JwtUtil.java @@ -0,0 +1,59 @@ +package com.zdxt.knowledge.jwt; + +import io.jsonwebtoken.Claims; +import io.jsonwebtoken.JwtBuilder; +import io.jsonwebtoken.Jwts; +import io.jsonwebtoken.SignatureAlgorithm; +import java.nio.charset.StandardCharsets; +import java.util.Date; +import java.util.Map; + +public class JwtUtil { + /** + * 生成jwt + * 使用Hs256算法, 私匙使用固定秘钥 + * + * @param secretKey jwt秘钥 + * @param ttlMillis jwt过期时间(毫秒) + * @param claims 设置的信息 + * @return + */ + public static String createJWT(String secretKey, long ttlMillis, Map claims) { + // 指定签名的时候使用的签名算法,也就是header那部分 + SignatureAlgorithm signatureAlgorithm = SignatureAlgorithm.HS256; + + // 生成JWT的时间 + long expMillis = System.currentTimeMillis() + ttlMillis; + Date exp = new Date(expMillis); + + // 设置jwt的body + JwtBuilder builder = Jwts.builder() + // 如果有私有声明,一定要先设置这个自己创建的私有的声明,这个是给builder的claim赋值,一旦写在标准的声明赋值之后,就是覆盖了那些标准的声明的 + .setClaims(claims) + // 设置签名使用的签名算法和签名使用的秘钥 + .signWith(signatureAlgorithm, secretKey.getBytes(StandardCharsets.UTF_8)) + // 设置过期时间 + .setExpiration(exp); + + return builder.compact(); + } + + /** + * Token解密 + * + * @param secretKey jwt秘钥 此秘钥一定要保留好在服务端, 不能暴露出去, 否则sign就可以被伪造, 如果对接多个客户端建议改造成多个 + * @param token 加密后的token + * @return + */ + public static Claims parseJWT(String secretKey, String token) { + // 得到DefaultJwtParser + Claims claims = Jwts.parser() + // 设置签名的秘钥 + .setSigningKey(secretKey.getBytes(StandardCharsets.UTF_8)) + // 设置需要解析的jwt + .parseClaimsJws(token).getBody(); + return claims; + } + +} + diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/jwt/WebMvcConfiguration.java b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/jwt/WebMvcConfiguration.java new file mode 100644 index 00000000..0f36fd79 --- /dev/null +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/jwt/WebMvcConfiguration.java @@ -0,0 +1,39 @@ +package com.zdxt.knowledge.jwt; + +import lombok.extern.slf4j.Slf4j; +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.ResourceHandlerRegistry; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; + +/** + * 配置类,注册web层相关组件 + */ +@Configuration +@Slf4j +public class WebMvcConfiguration implements WebMvcConfigurer { + + @Autowired + private JwtTokenUserInterceptor jwtTokenUserInterceptor; + + @Override + public void addInterceptors(InterceptorRegistry registry) { + registry.addInterceptor(new JwtTokenUserInterceptor()) + .addPathPatterns("/small/**") + .excludePathPatterns("/small/wechat/login"); + } + + @Override + public void addResourceHandlers(ResourceHandlerRegistry registry) { + registry.addResourceHandler("/**") + .addResourceLocations("classpath:/") + .addResourceLocations("classpath:/static/") + .addResourceLocations("classpath:/config/") + .addResourceLocations("classpath:/excel/") + .addResourceLocations("classpath:/font/") + .addResourceLocations("classpath:/template/") + .addResourceLocations("classpath:/templates/"); + } +} + diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/service/impl/SceneTextServiceImpl.java b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/service/impl/SceneTextServiceImpl.java index 6a022163..e01395c9 100644 --- a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/service/impl/SceneTextServiceImpl.java +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/service/impl/SceneTextServiceImpl.java @@ -63,6 +63,9 @@ public class SceneTextServiceImpl implements ISceneTextService { sceneText.setCreator(userBean.getUserName()); sceneText.setCreateTime(DateUtils.getNowDate()); } + if (StringUtils.isNotEmpty(sceneText.getContent()) && sceneText.getContent().length()>10000) { + return -1; + } sceneText.setGuid(StringUtils.getUUID()); return sceneTextMapper.insertSceneText(sceneText); } @@ -75,6 +78,9 @@ public class SceneTextServiceImpl implements ISceneTextService { */ @Override public int updateSceneText(SceneText sceneText) { + if (StringUtils.isNotEmpty(sceneText.getContent()) && sceneText.getContent().length()>10000) { + return -1; + } return sceneTextMapper.updateSceneText(sceneText); } diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/service/impl/WechatServiceImpl.java b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/service/impl/WechatServiceImpl.java index e4a39387..ba83d466 100644 --- a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/service/impl/WechatServiceImpl.java +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/service/impl/WechatServiceImpl.java @@ -7,6 +7,9 @@ import com.zdxt.common.ZDResponse; import com.zdxt.common.util.Convert; import com.zdxt.common.util.StringUtils; import com.zdxt.knowledge.domain.*; +import com.zdxt.knowledge.jwt.JwtClaimsConstant; +import com.zdxt.knowledge.jwt.JwtProperties; +import com.zdxt.knowledge.jwt.JwtUtil; import com.zdxt.knowledge.mapper.SceneMedalMapper; import com.zdxt.knowledge.mapper.WechatLoginMapper; import com.zdxt.knowledge.service.WechatService; @@ -44,6 +47,9 @@ public class WechatServiceImpl implements WechatService { @Autowired private WechatProperties wechatProperties; + @Autowired + private JwtProperties jwtProperties; + @Override public List selectList(WechatUser wechatUser) { @@ -91,24 +97,24 @@ public class WechatServiceImpl implements WechatService { if (user == null) { // 用户不存在,insert用户,这里加了个分布式锁,防止insert重复用户 -// if (setLock(WechatRedisPrefixConstant.INSERT_USER_DISTRIBUTED_LOCK_PREFIX + openId, "1", 10)) { -// // 用户入库 -// insertOrUpdateDO.setToken(getToken()); -// wechatLoginMapper.insertUser(insertOrUpdateDO); -// userInfoMap.put("token", insertOrUpdateDO.getToken()); -// } insertOrUpdateDO.setGuid(StringUtils.getUUID()); insertOrUpdateDO.setCreator("SYSTEM"); insertOrUpdateDO.setToken(getToken(insertOrUpdateDO.getGuid(), insertOrUpdateDO.getNickname())); wechatLoginMapper.insertUser(insertOrUpdateDO); - userInfoMap.put("token", openId); + userInfoMap.put("openId", openId); userInfoMap.put("userId", insertOrUpdateDO.getGuid()); } else { - userInfoMap.put("token", openId); + userInfoMap.put("openId", openId); userInfoMap.put("userId", user.getGuid()); // 已存在,做已存在的处理,如更新用户的头像,昵称等,根据openID更新 //wechatLoginMapper.updateByOpenId(insertOrUpdateDO); } + // 为微信用户生成jwt令牌 + Map claims = new HashMap<>(); + claims.put(JwtClaimsConstant.USER_ID, userInfoMap.get("userId")); + // JwtProperties与application中的配置相关联,然后通过注入的方式间接的拿到配置文件中添加的属性值 + String token = JwtUtil.createJWT(jwtProperties.getUserSecretKey(), jwtProperties.getUserTtl(), claims); + userInfoMap.put("token", token); return userInfoMap; }