From 4664519e3eb9f27ff6843249bed8122ee2198146 Mon Sep 17 00:00:00 2001 From: zhongbo Date: Tue, 6 Aug 2024 22:03:51 +0800 Subject: [PATCH] =?UTF-8?q?[Feature]:=E6=96=B0=E5=A2=9E=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E6=9D=83=E9=99=90=E5=88=97=E8=A1=A8=E6=8E=A5=E5=8F=A3=E5=8F=8A?= =?UTF-8?q?=E5=8D=95=E5=85=83=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/enums/SurveyPermissionEnum.java | 20 +++++++++ .../core/survey/CollaboratorService.java | 8 ++++ .../controller/CollaboratorController.java | 45 +++++++++++++++++++ .../CollaboratorControllerTest.java | 38 ++++++++++++++++ 4 files changed, 111 insertions(+) create mode 100644 survey-common/src/main/java/com/xiaojusurvey/engine/common/enums/SurveyPermissionEnum.java create mode 100644 survey-core/src/main/java/com/xiaojusurvey/engine/core/survey/CollaboratorService.java create mode 100644 survey-server/src/main/java/com/xiaojusurvey/engine/controller/CollaboratorController.java create mode 100644 survey-server/src/test/java/com/xiaojusurvey/engine/controller/CollaboratorControllerTest.java diff --git a/survey-common/src/main/java/com/xiaojusurvey/engine/common/enums/SurveyPermissionEnum.java b/survey-common/src/main/java/com/xiaojusurvey/engine/common/enums/SurveyPermissionEnum.java new file mode 100644 index 00000000..07036d3b --- /dev/null +++ b/survey-common/src/main/java/com/xiaojusurvey/engine/common/enums/SurveyPermissionEnum.java @@ -0,0 +1,20 @@ +package com.xiaojusurvey.engine.common.enums; + +import lombok.Getter; + +/** + * @author zhongbo + */ + +@Getter +public enum SurveyPermissionEnum { + SURVEY_CONF_MANAGE("SURVEY_CONF_MANAGE"), + SURVEY_RESPONSE_MANAGE("SURVEY_RESPONSE_MANAGE"), + SURVEY_COOPERATION_MANAGE("SURVEY_COOPERATION_MANAGE"); + + private final String permissionDescription; + + SurveyPermissionEnum(String permissionDescription) { + this.permissionDescription = permissionDescription; + } +} diff --git a/survey-core/src/main/java/com/xiaojusurvey/engine/core/survey/CollaboratorService.java b/survey-core/src/main/java/com/xiaojusurvey/engine/core/survey/CollaboratorService.java new file mode 100644 index 00000000..d030a755 --- /dev/null +++ b/survey-core/src/main/java/com/xiaojusurvey/engine/core/survey/CollaboratorService.java @@ -0,0 +1,8 @@ +package com.xiaojusurvey.engine.core.survey; + +import com.xiaojusurvey.engine.common.entity.survey.SurveyMeta; +import com.xiaojusurvey.engine.core.reslut.IdResult; + +public interface CollaboratorService { + IdResult createSurvey(SurveyMeta surveyMeta); +} diff --git a/survey-server/src/main/java/com/xiaojusurvey/engine/controller/CollaboratorController.java b/survey-server/src/main/java/com/xiaojusurvey/engine/controller/CollaboratorController.java new file mode 100644 index 00000000..d28e72b2 --- /dev/null +++ b/survey-server/src/main/java/com/xiaojusurvey/engine/controller/CollaboratorController.java @@ -0,0 +1,45 @@ +package com.xiaojusurvey.engine.controller; + +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.xiaojusurvey.engine.common.enums.SurveyPermissionEnum; +import com.xiaojusurvey.engine.common.rpc.RpcResult; +import com.xiaojusurvey.engine.common.util.RpcResultUtil; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * @author zhongbo + */ +@RequestMapping("/api/collaborator") +@RestController +@Slf4j +public class CollaboratorController { + + /** + * 获取权限列表 + */ + @GetMapping("/getPermissionList") + public RpcResult getPermissionList() { + JSONArray jsonArray = new JSONArray(); + JSONObject surveyConfManage = new JSONObject(); + surveyConfManage.put("name", "问卷配置管理"); + surveyConfManage.put("value", SurveyPermissionEnum.SURVEY_CONF_MANAGE); + + JSONObject surveyResManage = new JSONObject(); + surveyResManage.put("name", "问卷分析管理"); + surveyResManage.put("value", SurveyPermissionEnum.SURVEY_RESPONSE_MANAGE); + + JSONObject surveyCoManage = new JSONObject(); + surveyCoManage.put("name", "协作者管理"); + surveyCoManage.put("value", SurveyPermissionEnum.SURVEY_COOPERATION_MANAGE); + + jsonArray.add(surveyConfManage); + jsonArray.add(surveyResManage); + jsonArray.add(surveyCoManage); + + return RpcResultUtil.createSuccessResult(jsonArray); + } +} diff --git a/survey-server/src/test/java/com/xiaojusurvey/engine/controller/CollaboratorControllerTest.java b/survey-server/src/test/java/com/xiaojusurvey/engine/controller/CollaboratorControllerTest.java new file mode 100644 index 00000000..41f21f6d --- /dev/null +++ b/survey-server/src/test/java/com/xiaojusurvey/engine/controller/CollaboratorControllerTest.java @@ -0,0 +1,38 @@ +package com.xiaojusurvey.engine.controller; + +import com.alibaba.fastjson.JSONArray; +import com.xiaojusurvey.engine.common.entity.user.User; +import com.xiaojusurvey.engine.common.rpc.RpcResult; +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.InjectMocks; +import org.springframework.mock.web.MockHttpServletRequest; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +import javax.servlet.http.HttpServletRequest; + +@RunWith(SpringJUnit4ClassRunner.class) +public class CollaboratorControllerTest { + @InjectMocks + CollaboratorController collaboratorController; + + private HttpServletRequest httpServletRequest; + + @Before + public void initBean() { + httpServletRequest = new MockHttpServletRequest(); + User user = new User(); + user.setId("123"); + user.setUsername("maple"); + httpServletRequest.setAttribute("user", user); + } + + @Test + public void getPermissionList() { + RpcResult permissionListResult = collaboratorController.getPermissionList(); + Assert.assertTrue(permissionListResult.getSuccess()); + Assert.assertEquals(new Integer(200), permissionListResult.getCode()); + } +}