wangwei 7 lat temu
rodzic
commit
d76d058b8d

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

@@ -6,6 +6,7 @@ import org.springframework.web.client.RestTemplate;
 
 import cn.com.qmth.examcloud.core.basic.api.CourseCloudService;
 import cn.com.qmth.examcloud.core.basic.api.request.SaveCourseReq;
+import cn.com.qmth.examcloud.core.basic.api.response.SaveCourseResp;
 
 @Service
 public class CourseCloudServiceClient extends BasicCloudClientSupport
@@ -21,8 +22,8 @@ public class CourseCloudServiceClient extends BasicCloudClientSupport
 	}
 
 	@Override
-	public void saveCourse(SaveCourseReq courseReq) {
-		post("course/saveCourse", courseReq, SaveCourseReq.class);
+	public SaveCourseResp saveCourse(SaveCourseReq courseReq) {
+		return post("course/saveCourse", courseReq, SaveCourseResp.class);
 	}
 
 }

+ 21 - 6
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/provider/CourseCloudServiceProvider.java

@@ -6,7 +6,9 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
 import cn.com.qmth.examcloud.core.basic.api.CourseCloudService;
+import cn.com.qmth.examcloud.core.basic.api.bean.CourseBean;
 import cn.com.qmth.examcloud.core.basic.api.request.SaveCourseReq;
+import cn.com.qmth.examcloud.core.basic.api.response.SaveCourseResp;
 import cn.com.qmth.examcloud.core.basic.dao.entity.Course;
 import cn.com.qmth.examcloud.core.basic.dao.enums.CourseLevel;
 import cn.com.qmth.examcloud.core.basic.service.impl.CourseService;
@@ -22,17 +24,30 @@ public class CourseCloudServiceProvider implements CourseCloudService {
 	@ApiOperation(value = "保存课程")
 	@PostMapping("saveCourse")
 	@Override
-	public void saveCourse(SaveCourseReq courseReq) {
+	public SaveCourseResp saveCourse(SaveCourseReq courseReq) {
 		Course course = courseService.findByOrgIdAndCode(courseReq.getRootOrgId(),
 				courseReq.getCourseCode());
 		if (course == null) {
 			course = new Course();
-			course.setOrgId(courseReq.getRootOrgId());
-			course.setName(courseReq.getCourseName());
-			course.setCode(courseReq.getCourseCode());
-			course.setLevel(getCourseLevelByCName(courseReq.getCourseLevel()));
-			courseService.save(course);
 		}
+		course.setOrgId(courseReq.getRootOrgId());
+		course.setName(courseReq.getCourseName());
+		course.setCode(courseReq.getCourseCode());
+		course.setLevel(getCourseLevelByCName(courseReq.getCourseLevel()));
+
+		Course saved = courseService.save(course);
+
+		SaveCourseResp resp = new SaveCourseResp();
+		CourseBean courseBean = new CourseBean();
+		courseBean.setId(saved.getId());
+		courseBean.setCode(saved.getCode());
+		courseBean.setLevel(saved.getLevel().name());
+		courseBean.setName(saved.getName());
+		courseBean.setRootOrgId(saved.getOrgId());
+
+		resp.setCourseBean(courseBean);
+
+		return resp;
 	}
 
 	private CourseLevel getCourseLevelByCName(String cname) {

+ 2 - 1
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/CourseCloudService.java

@@ -1,6 +1,7 @@
 package cn.com.qmth.examcloud.core.basic.api;
 
 import cn.com.qmth.examcloud.core.basic.api.request.SaveCourseReq;
+import cn.com.qmth.examcloud.core.basic.api.response.SaveCourseResp;
 
 /**
  * 课程服务
@@ -17,6 +18,6 @@ public interface CourseCloudService {
 	 * 
 	 * @param courseReq
 	 */
-	public void saveCourse(SaveCourseReq req);
+	SaveCourseResp saveCourse(SaveCourseReq req);
 
 }

+ 59 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/bean/CourseBean.java

@@ -0,0 +1,59 @@
+package cn.com.qmth.examcloud.core.basic.api.bean;
+
+import cn.com.qmth.examcloud.commons.web.cloud.api.JsonSerializable;
+
+public class CourseBean implements JsonSerializable {
+
+	private static final long serialVersionUID = -6261302618070108336L;
+
+	private Long rootOrgId;
+
+	private Long id;
+
+	private String code;
+
+	private String name;
+
+	private String level;
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+	public Long getId() {
+		return id;
+	}
+
+	public void setId(Long id) {
+		this.id = id;
+	}
+
+	public String getCode() {
+		return code;
+	}
+
+	public void setCode(String code) {
+		this.code = code;
+	}
+
+	public String getName() {
+		return name;
+	}
+
+	public void setName(String name) {
+		this.name = name;
+	}
+
+	public String getLevel() {
+		return level;
+	}
+
+	public void setLevel(String level) {
+		this.level = level;
+	}
+
+}

+ 20 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/SaveCourseResp.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.CourseBean;
+
+public class SaveCourseResp extends BaseResponse {
+
+	private static final long serialVersionUID = -6692031428275657695L;
+
+	private CourseBean courseBean;
+
+	public CourseBean getCourseBean() {
+		return courseBean;
+	}
+
+	public void setCourseBean(CourseBean courseBean) {
+		this.courseBean = courseBean;
+	}
+
+}