wangwei 7 жил өмнө
parent
commit
aae93cc1da

+ 10 - 3
examcloud-core-basic-api-client/src/main/java/cn/com/qmth/examcloud/core/basic/api/client/OrgCloudServiceClient.java

@@ -6,9 +6,11 @@ import org.springframework.web.client.RestTemplate;
 
 import cn.com.qmth.examcloud.core.basic.api.OrgCloudService;
 import cn.com.qmth.examcloud.core.basic.api.request.GetOrgListByNameLikeReq;
+import cn.com.qmth.examcloud.core.basic.api.request.GetOrgReq;
 import cn.com.qmth.examcloud.core.basic.api.request.SaveOrgReq;
 import cn.com.qmth.examcloud.core.basic.api.response.GetOrgListByNameLikeResp;
-import cn.com.qmth.examcloud.core.basic.api.response.OrgResp;
+import cn.com.qmth.examcloud.core.basic.api.response.GetOrgResp;
+import cn.com.qmth.examcloud.core.basic.api.response.SaveOrgResp;
 
 /**
  * 机构服务客户端
@@ -30,8 +32,8 @@ public class OrgCloudServiceClient extends BasicCloudClientSupport implements Or
 	}
 
 	@Override
-	public OrgResp saveOrg(SaveOrgReq orgReq) {
-		return post("org/saveOrg", orgReq, OrgResp.class);
+	public SaveOrgResp saveOrg(SaveOrgReq orgReq) {
+		return post("org/saveOrg", orgReq, SaveOrgResp.class);
 	}
 
 	@Override
@@ -39,4 +41,9 @@ public class OrgCloudServiceClient extends BasicCloudClientSupport implements Or
 		return post("org/getOrgListByNameLike", req, GetOrgListByNameLikeResp.class);
 	}
 
+	@Override
+	public GetOrgResp getOrg(GetOrgReq req) {
+		return post("org/getOrg", req, GetOrgResp.class);
+	}
+
 }

+ 32 - 5
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/provider/OrgCloudServiceProvider.java

@@ -11,13 +11,16 @@ import org.springframework.web.bind.annotation.RestController;
 
 import com.google.common.collect.Lists;
 
+import cn.com.qmth.examcloud.commons.base.exception.StatusException;
 import cn.com.qmth.examcloud.commons.web.support.ControllerSupport;
 import cn.com.qmth.examcloud.core.basic.api.OrgCloudService;
 import cn.com.qmth.examcloud.core.basic.api.bean.OrgBean;
 import cn.com.qmth.examcloud.core.basic.api.request.GetOrgListByNameLikeReq;
+import cn.com.qmth.examcloud.core.basic.api.request.GetOrgReq;
 import cn.com.qmth.examcloud.core.basic.api.request.SaveOrgReq;
 import cn.com.qmth.examcloud.core.basic.api.response.GetOrgListByNameLikeResp;
-import cn.com.qmth.examcloud.core.basic.api.response.OrgResp;
+import cn.com.qmth.examcloud.core.basic.api.response.GetOrgResp;
+import cn.com.qmth.examcloud.core.basic.api.response.SaveOrgResp;
 import cn.com.qmth.examcloud.core.basic.dao.OrgRepo;
 import cn.com.qmth.examcloud.core.basic.dao.entity.Org;
 import cn.com.qmth.examcloud.core.basic.service.impl.OrgService;
@@ -33,11 +36,11 @@ public class OrgCloudServiceProvider extends ControllerSupport implements OrgClo
 	@Autowired
 	private OrgRepo orgRepo;
 
-	@ApiOperation(value = "保存机构", notes = "保存机构")
+	@ApiOperation(value = "保存机构")
 	@PostMapping("saveOrg")
 	@Override
-	public OrgResp saveOrg(SaveOrgReq orgReq) {
-		OrgResp orgResp = new OrgResp();
+	public SaveOrgResp saveOrg(SaveOrgReq orgReq) {
+		SaveOrgResp orgResp = new SaveOrgResp();
 		Org org = orgService.findFirstByParentIdAndCode(orgReq.getRootOrgId(), orgReq.getOrgCode());
 		if (org == null) {
 			org = new Org();
@@ -53,7 +56,7 @@ public class OrgCloudServiceProvider extends ControllerSupport implements OrgClo
 		return orgResp;
 	}
 
-	@ApiOperation(value = "按机构名称模糊查询机构列表", notes = "按机构名称模糊查询机构列表")
+	@ApiOperation(value = "按机构名称模糊查询机构列表")
 	@PostMapping("getOrgListByNameLike")
 	@Override
 	public GetOrgListByNameLikeResp getOrgListByNameLike(GetOrgListByNameLikeReq req) {
@@ -83,4 +86,28 @@ public class OrgCloudServiceProvider extends ControllerSupport implements OrgClo
 
 		return resp;
 	}
+
+	@ApiOperation(value = "按机构名称模糊查询机构列表")
+	@PostMapping("getOrg")
+	@Override
+	public GetOrgResp getOrg(GetOrgReq req) {
+		Long orgId = req.getOrgId();
+
+		Org org = orgRepo.findOne(orgId);
+
+		if (null == org) {
+			throw new StatusException("B-150001", "机构不存在");
+		}
+
+		OrgBean orgBean = new OrgBean();
+		orgBean.setId(org.getId());
+		orgBean.setLevel(org.getLevel());
+		orgBean.setName(org.getName());
+		orgBean.setParentId(org.getParentId());
+		orgBean.setRootId(org.getRootId());
+
+		GetOrgResp resp = new GetOrgResp();
+		resp.setOrg(orgBean);
+		return resp;
+	}
 }

+ 6 - 2
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/OrgCloudService.java

@@ -1,9 +1,11 @@
 package cn.com.qmth.examcloud.core.basic.api;
 
 import cn.com.qmth.examcloud.core.basic.api.request.GetOrgListByNameLikeReq;
+import cn.com.qmth.examcloud.core.basic.api.request.GetOrgReq;
 import cn.com.qmth.examcloud.core.basic.api.request.SaveOrgReq;
 import cn.com.qmth.examcloud.core.basic.api.response.GetOrgListByNameLikeResp;
-import cn.com.qmth.examcloud.core.basic.api.response.OrgResp;
+import cn.com.qmth.examcloud.core.basic.api.response.GetOrgResp;
+import cn.com.qmth.examcloud.core.basic.api.response.SaveOrgResp;
 
 /**
  * 机构服务
@@ -15,7 +17,9 @@ import cn.com.qmth.examcloud.core.basic.api.response.OrgResp;
  */
 public interface OrgCloudService {
 
-	public OrgResp saveOrg(SaveOrgReq orgReq);
+	GetOrgResp getOrg(GetOrgReq req);
+
+	SaveOrgResp saveOrg(SaveOrgReq orgReq);
 
 	GetOrgListByNameLikeResp getOrgListByNameLike(GetOrgListByNameLikeReq req);
 

+ 19 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetOrgReq.java

@@ -0,0 +1,19 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import cn.com.qmth.examcloud.commons.web.cloud.api.BaseRequest;
+
+public class GetOrgReq extends BaseRequest {
+
+	private static final long serialVersionUID = 8860061888831487546L;
+
+	private Long orgId;
+
+	public Long getOrgId() {
+		return orgId;
+	}
+
+	public void setOrgId(Long orgId) {
+		this.orgId = orgId;
+	}
+
+}

+ 20 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetOrgResp.java

@@ -0,0 +1,20 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import cn.com.qmth.examcloud.commons.web.cloud.api.BaseResponse;
+import cn.com.qmth.examcloud.core.basic.api.bean.OrgBean;
+
+public class GetOrgResp extends BaseResponse {
+
+	private static final long serialVersionUID = -2625382462279650240L;
+
+	private OrgBean org;
+
+	public OrgBean getOrg() {
+		return org;
+	}
+
+	public void setOrg(OrgBean org) {
+		this.org = org;
+	}
+
+}

+ 1 - 1
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/OrgResp.java → examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/SaveOrgResp.java

@@ -1,6 +1,6 @@
 package cn.com.qmth.examcloud.core.basic.api.response;
 
-public class OrgResp {
+public class SaveOrgResp {
 
 	private Long id;