caozixuan преди 1 година
родител
ревизия
2b0ad256d3

+ 33 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/bean/result/ObeCourseBasicInfoResult.java

@@ -0,0 +1,33 @@
+package com.qmth.distributed.print.business.bean.result;
+
+import io.swagger.annotations.ApiModelProperty;
+
+/**
+ * @Description: 课程基本信息
+ * @Author: CaoZixuan
+ * @Date: 2024-06-11
+ */
+public class ObeCourseBasicInfoResult {
+
+    @ApiModelProperty("专业名称")
+    private String professionalName;
+
+    @ApiModelProperty("培养方案名称")
+    private String cultureProgramName;
+
+    public String getProfessionalName() {
+        return professionalName;
+    }
+
+    public void setProfessionalName(String professionalName) {
+        this.professionalName = professionalName;
+    }
+
+    public String getCultureProgramName() {
+        return cultureProgramName;
+    }
+
+    public void setCultureProgramName(String cultureProgramName) {
+        this.cultureProgramName = cultureProgramName;
+    }
+}

+ 8 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/mapper/ObeCourseOutlineMapper.java

@@ -3,6 +3,7 @@ package com.qmth.distributed.print.business.mapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.qmth.distributed.print.business.bean.result.ObeCourseBasicInfoResult;
 import com.qmth.distributed.print.business.bean.result.ObeCourseOutlineResult;
 import com.qmth.distributed.print.business.entity.ObeCourseOutline;
 import com.qmth.teachcloud.common.bean.dto.DataPermissionRule;
@@ -22,4 +23,11 @@ public interface ObeCourseOutlineMapper extends BaseMapper<ObeCourseOutline> {
             @Param("professionalId") Long professionalId, @Param("cultureProgramId") Long cultureProgramId, @Param("courseId") Long courseId,
             @Param("courseOutlineName") String courseOutlineName, @Param("dpr") DataPermissionRule dpr);
 
+    /**
+     * 查询课程基本信息
+     *
+     * @param obeCourseOutlineId 课程大纲id
+     * @return 课程基本信息
+     */
+    ObeCourseBasicInfoResult findCourseBasicInfo(@Param("obeCourseOutlineId") Long obeCourseOutlineId);
 }

+ 9 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/ObeCourseOutlineService.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.qmth.distributed.print.business.bean.params.ObeCourseOutlineParam;
 import com.qmth.distributed.print.business.bean.result.CourseWeightSettingStatusResult;
+import com.qmth.distributed.print.business.bean.result.ObeCourseBasicInfoResult;
 import com.qmth.distributed.print.business.bean.result.ObeCourseOutlineResult;
 import com.qmth.distributed.print.business.entity.ObeCourseOutline;
 import com.qmth.distributed.print.business.enums.CourseSettingTypeEnum;
@@ -61,4 +62,12 @@ public interface ObeCourseOutlineService extends IService<ObeCourseOutline> {
      * @return 课程权重设置状态
      */
     CourseWeightSettingStatusResult findCourseWeightSettingStatus(Long obeCourseOutlineId);
+
+    /**
+     * 查询课程基本信息
+     *
+     * @param obeCourseOutlineId 课程大纲id
+     * @return 课程基本信息
+     */
+    ObeCourseBasicInfoResult findCourseBasicInfo(Long obeCourseOutlineId);
 }

+ 9 - 1
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ObeCourseOutlineServiceImpl.java

@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.qmth.distributed.print.business.bean.params.ObeCourseOutlineParam;
 import com.qmth.distributed.print.business.bean.result.CourseWeightSettingStatusResult;
+import com.qmth.distributed.print.business.bean.result.ObeCourseBasicInfoResult;
 import com.qmth.distributed.print.business.bean.result.ObeCourseOutlineResult;
 import com.qmth.distributed.print.business.entity.*;
 import com.qmth.distributed.print.business.enums.CourseSettingTypeEnum;
@@ -99,14 +100,16 @@ public class ObeCourseOutlineServiceImpl extends ServiceImpl<ObeCourseOutlineMap
             // 编辑
             obeCourseOutline.setId(id);
             obeCourseOutline.updateInfo(requestUser.getId());
+            this.updateById(obeCourseOutline);
         } else {
             // 新增
             obeCourseOutline.setWeightSetting(false);
             obeCourseOutline.insertInfo(requestUser.getId());
+            obeCourseOutline.setUserId(requestUser.getId());
+            this.save(obeCourseOutline);
             // 创建默认评价方式
             obeCourseEvaluationService.createDefaultCourseEvaluation(obeCourseOutline.getId());
         }
-        this.saveOrUpdate(obeCourseOutline);
     }
 
     @Override
@@ -185,4 +188,9 @@ public class ObeCourseOutlineServiceImpl extends ServiceImpl<ObeCourseOutlineMap
         result.setCourseCreateId(userId);
         return result;
     }
+
+    @Override
+    public ObeCourseBasicInfoResult findCourseBasicInfo(Long obeCourseOutlineId) {
+        return this.baseMapper.findCourseBasicInfo(obeCourseOutlineId);
+    }
 }

+ 16 - 0
distributed-print-business/src/main/resources/mapper/ObeCourseOutlineMapper.xml

@@ -58,4 +58,20 @@
         </where>
         ORDER BY oco.create_time DESC
     </select>
+    <select id="findCourseBasicInfo"
+            resultType="com.qmth.distributed.print.business.bean.result.ObeCourseBasicInfoResult">
+        SELECT
+            bp.name AS professionalName, ocp.name AS cultureProgramName
+        FROM
+            obe_course_outline oco
+                LEFT JOIN
+            obe_culture_program ocp ON oco.culture_program_id = ocp.id
+                LEFT JOIN
+            basic_professional bp ON ocp.professional_id = bp.id
+        <where>
+            <if test="obeCourseOutlineId != null">
+                AND oco.id = #{obeCourseOutlineId}
+            </if>
+        </where>
+    </select>
 </mapper>

+ 9 - 1
distributed-print/src/main/java/com/qmth/distributed/print/api/ObeCourseOutlineController.java

@@ -3,6 +3,7 @@ package com.qmth.distributed.print.api;
 import com.qmth.boot.api.constant.ApiConstant;
 import com.qmth.distributed.print.business.bean.params.ObeCourseOutlineParam;
 import com.qmth.distributed.print.business.bean.result.EditResult;
+import com.qmth.distributed.print.business.bean.result.ObeCourseBasicInfoResult;
 import com.qmth.distributed.print.business.bean.result.ObeCourseOutlineResult;
 import com.qmth.distributed.print.business.service.ObeCourseOutlineService;
 import com.qmth.teachcloud.common.annotation.OperationLogDetail;
@@ -84,10 +85,17 @@ public class ObeCourseOutlineController {
         return ResultUtil.ok();
     }
 
+    @ApiOperation(value = "课程大纲-课程基本信息")
+    @RequestMapping(value = "/course_basic_info", method = RequestMethod.POST)
+    @ApiResponses({ @ApiResponse(code = 200, message = "查询成功", response = ObeCourseBasicInfoResult.class) })
+    public Result findCourseBasicInfo(@ApiParam(value = "课程大纲id", required = true) @RequestParam String obeCourseOutlineId) {
+        return ResultUtil.ok(obeCourseOutlineService.findCourseBasicInfo(SystemConstant.convertIdToLong(obeCourseOutlineId)));
+    }
+
     @ApiOperation(value = "课程大纲-查询课程权重设置状态")
     @RequestMapping(value = "/find_course_weight_setting_status", method = RequestMethod.POST)
     @ApiResponses({ @ApiResponse(code = 200, message = "查询成功", response = Result.class) })
-    public Result findCourseWeightSettingStatus(@ApiParam(value = "教学课程id", required = true) @RequestParam String obeCourseOutlineId) {
+    public Result findCourseWeightSettingStatus(@ApiParam(value = "课程大纲id", required = true) @RequestParam String obeCourseOutlineId) {
         return ResultUtil.ok(obeCourseOutlineService.findCourseWeightSettingStatus(SystemConstant.convertIdToLong(obeCourseOutlineId)));
     }
 }