提交 1aa96855 作者: zhenjie

课程相关接口

上级 92e7f084
...@@ -20,6 +20,9 @@ import java.io.Serializable; ...@@ -20,6 +20,9 @@ import java.io.Serializable;
@NoArgsConstructor @NoArgsConstructor
@AllArgsConstructor @AllArgsConstructor
public class CurriculumQo implements Serializable { public class CurriculumQo implements Serializable {
private static final long serialVersionUID = 3124398495152234751L;
@ApiModelProperty(value = "课程名称")
private String curriculumName;
@ApiModelProperty(value = "地域id") @ApiModelProperty(value = "地域id")
private Integer regionId; private Integer regionId;
@ApiModelProperty(value = "执照id") @ApiModelProperty(value = "执照id")
......
package com.mmc.csf.release.flyer.vo; package com.mmc.csf.release.flyer.vo;
import com.mmc.csf.release.model.group.Insert;
import com.mmc.csf.release.model.group.Update;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Builder; import lombok.Builder;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import org.hibernate.validator.constraints.Length;
import javax.validation.constraints.NotNull;
import java.io.Serializable; import java.io.Serializable;
import java.math.BigDecimal; import java.math.BigDecimal;
...@@ -19,7 +23,9 @@ import java.math.BigDecimal; ...@@ -19,7 +23,9 @@ import java.math.BigDecimal;
@AllArgsConstructor @AllArgsConstructor
@Builder @Builder
public class CurriculumInfoVO implements Serializable { public class CurriculumInfoVO implements Serializable {
private static final long serialVersionUID = -7343885960160805850L;
@ApiModelProperty(value = "课程id") @ApiModelProperty(value = "课程id")
@NotNull(message = "课程id不能为空" ,groups = {Update.class})
private Integer id; private Integer id;
@ApiModelProperty(value = "价格") @ApiModelProperty(value = "价格")
...@@ -28,15 +34,33 @@ public class CurriculumInfoVO implements Serializable { ...@@ -28,15 +34,33 @@ public class CurriculumInfoVO implements Serializable {
@ApiModelProperty(value = "供应商名称") @ApiModelProperty(value = "供应商名称")
private String supplierName; private String supplierName;
@ApiModelProperty(value = "课程名称") @ApiModelProperty(value = "课程名称,长度30")
@Length(max = 30)
private String curriculumName; private String curriculumName;
@ApiModelProperty(value = "课程是否免费 0:免费 1:付费") @ApiModelProperty(value = "课程是否免费 0:免费 1:付费")
private Integer free; private Integer free;
@ApiModelProperty(value = "课程介绍") @ApiModelProperty(value = "课程技能类型,二级id")
@NotNull(message = "课程技能id不能为空" ,groups = {Insert.class})
private Integer flightSkills;
@ApiModelProperty(value = "课程技能类型名称1", example = "技能")
private String flightSkillsName1;
@ApiModelProperty(value = "课程技能类型名称2", example = "通用巡检")
private String flightSkillsName2;
@ApiModelProperty(value = "课程介绍(简介), 长度255")
@Length(max = 255)
private String curriculumDesc; private String curriculumDesc;
@ApiModelProperty(value = "课程封面")
private String surfaceUrl;
@ApiModelProperty(value = "课程视频") @ApiModelProperty(value = "课程视频")
private String videoUrl; private String videoUrl;
@ApiModelProperty(value = "课程详情")
private String detailContent;
} }
...@@ -7,6 +7,7 @@ import lombok.Data; ...@@ -7,6 +7,7 @@ import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import java.io.Serializable; import java.io.Serializable;
import java.util.List;
/** /**
* @Author LW * @Author LW
...@@ -23,4 +24,6 @@ public class FlightSkillsVO implements Serializable { ...@@ -23,4 +24,6 @@ public class FlightSkillsVO implements Serializable {
private Integer id; private Integer id;
@ApiModelProperty(value = "行业认证名称") @ApiModelProperty(value = "行业认证名称")
private String skillsName; private String skillsName;
@ApiModelProperty(value = "课程技能")
private List<FlightSkillsVO> flightSkills;
} }
...@@ -3,11 +3,14 @@ package com.mmc.csf.release.controller; ...@@ -3,11 +3,14 @@ package com.mmc.csf.release.controller;
import com.mmc.csf.common.util.web.ResultBody; import com.mmc.csf.common.util.web.ResultBody;
import com.mmc.csf.release.flyer.qo.CurriculumQo; import com.mmc.csf.release.flyer.qo.CurriculumQo;
import com.mmc.csf.release.flyer.vo.CurriculumInfoVO; import com.mmc.csf.release.flyer.vo.CurriculumInfoVO;
import com.mmc.csf.release.model.group.Insert;
import com.mmc.csf.release.model.group.Update;
import com.mmc.csf.release.service.FlyerTrainingService; import com.mmc.csf.release.service.FlyerTrainingService;
import com.mmc.csf.release.flyer.vo.DronePilotLicenseVO; import com.mmc.csf.release.flyer.vo.DronePilotLicenseVO;
import com.mmc.csf.release.flyer.vo.FlightSkillsVO; import com.mmc.csf.release.flyer.vo.FlightSkillsVO;
import com.mmc.csf.release.flyer.vo.RegistrationVO; import com.mmc.csf.release.flyer.vo.RegistrationVO;
import io.swagger.annotations.*; import io.swagger.annotations.*;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; import javax.annotation.Resource;
...@@ -42,20 +45,13 @@ public class FlyerTrainingController extends BaseController{ ...@@ -42,20 +45,13 @@ public class FlyerTrainingController extends BaseController{
return flyerTrainingService.getDronePilotLicense(); return flyerTrainingService.getDronePilotLicense();
} }
@ApiOperation(value = "行业应用认证-下拉列表") @ApiOperation(value = "行业应用认证-下拉列表(课程技能列表)")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = FlightSkillsVO.class)}) @ApiResponses({@ApiResponse(code = 200, message = "OK", response = FlightSkillsVO.class)})
@GetMapping("/getIndustryFlightSkills") @GetMapping("/getIndustryFlightSkills")
public ResultBody getIndustryFlightSkills() { public ResultBody getIndustryFlightSkills() {
return flyerTrainingService.getIndustryFlightSkills(); return flyerTrainingService.getIndustryFlightSkills();
} }
@ApiOperation(value = "课程视频列表")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = CurriculumInfoVO.class)})
@PostMapping("/queryCurriculumInfoList")
public ResultBody queryCurriculumInfoList(@RequestBody CurriculumQo curriculumQo) {
return ResultBody.success(flyerTrainingService.queryCurriculumInfoList(curriculumQo));
}
@ApiOperation(value = "考证-技能") @ApiOperation(value = "考证-技能")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = CurriculumInfoVO.class)}) @ApiResponses({@ApiResponse(code = 200, message = "OK", response = CurriculumInfoVO.class)})
@GetMapping("/licenseOrSkillQueryCurriculum") @GetMapping("/licenseOrSkillQueryCurriculum")
...@@ -63,10 +59,45 @@ public class FlyerTrainingController extends BaseController{ ...@@ -63,10 +59,45 @@ public class FlyerTrainingController extends BaseController{
return flyerTrainingService.licenseOrSkillQueryCurriculum(type); return flyerTrainingService.licenseOrSkillQueryCurriculum(type);
} }
@ApiOperation(value = "课程视频详情") @ApiOperation(value = "V1.0.1课程技能列表")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = FlightSkillsVO.class)})
@GetMapping("treeCurriculumSkill")
public ResultBody treeCurriculumSkill() {
return flyerTrainingService.treeCurriculumSkill();
}
@ApiOperation(value = "V1.0.1课程视频列表")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = CurriculumInfoVO.class)})
@PostMapping("/queryCurriculumInfoList")
public ResultBody queryCurriculumInfoList(@RequestBody CurriculumQo curriculumQo) {
return ResultBody.success(flyerTrainingService.queryCurriculumInfoList(curriculumQo));
}
@ApiOperation(value = "V1.0.1课程视频详情")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = CurriculumInfoVO.class)}) @ApiResponses({@ApiResponse(code = 200, message = "OK", response = CurriculumInfoVO.class)})
@GetMapping("/curriculumDetails") @GetMapping("/curriculumDetails")
public ResultBody curriculumDetails(@ApiParam(value = "课程id") @RequestParam(value = "id") Integer id) { public ResultBody curriculumDetails(@ApiParam(value = "课程id") @RequestParam(value = "id") Integer id) {
return flyerTrainingService.curriculumDetails(id); return flyerTrainingService.curriculumDetails(id);
} }
@ApiOperation(value = "V1.0.1新增课程")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = CurriculumInfoVO.class)})
@PostMapping("addCurriculum")
public ResultBody addCurriculum(@Validated(Insert.class)@RequestBody CurriculumInfoVO curriculumInfoVO) {
return ResultBody.success(flyerTrainingService.addCurriculum(curriculumInfoVO));
}
@ApiOperation(value = "V1.0.1修改课程")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = CurriculumInfoVO.class)})
@PostMapping("updateCurriculum")
public ResultBody updateCurriculum(@Validated(Update.class) @RequestBody CurriculumInfoVO curriculumInfoVO) {
return ResultBody.success(flyerTrainingService.updateCurriculum(curriculumInfoVO));
}
@ApiOperation(value = "V1.0.1删除课程")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("removeCurriculum")
public ResultBody removeCurriculum(@RequestParam Integer id) {
return ResultBody.success(flyerTrainingService.removeCurriculum(id));
}
} }
...@@ -27,7 +27,7 @@ public interface FlyerTrainingDao { ...@@ -27,7 +27,7 @@ public interface FlyerTrainingDao {
List<DronePilotLicenseVO> selectAllLicenses(); List<DronePilotLicenseVO> selectAllLicenses();
/** /**
* 行业飞行技能列表 * 课程技能列表
* *
* @return {@link List}<{@link FlightSkillsDO}> * @return {@link List}<{@link FlightSkillsDO}>
*/ */
...@@ -59,4 +59,28 @@ public interface FlyerTrainingDao { ...@@ -59,4 +59,28 @@ public interface FlyerTrainingDao {
List<CurriculumInfoDO> selectSkillCurriculum(Integer type); List<CurriculumInfoDO> selectSkillCurriculum(Integer type);
CurriculumInfoDO curriculumDetails(Integer id); CurriculumInfoDO curriculumDetails(Integer id);
/**
* 添加课程信息
* @param currInfoDO
*/
Integer addCurriculum(CurriculumInfoDO currInfoDO);
/**
* 修改课程信息
* @param currInfoDO
*/
Integer updateCurriculum(CurriculumInfoDO currInfoDO);
/**
* 删除课程
* @param id
*/
Integer removeCurriculum(Integer id);
/**
* 课程技能列表
* @return
*/
List<FlightSkillsDO> treeCurriculumSkill();
} }
...@@ -65,10 +65,24 @@ public class CurriculumInfoDO implements Serializable { ...@@ -65,10 +65,24 @@ public class CurriculumInfoDO implements Serializable {
private String videoUrl; private String videoUrl;
private String surfaceUrl;
private String detailContent;
public CurriculumInfoDO(CurriculumInfoVO curriculumInfoVO) {
this.id = curriculumInfoVO.getId();
this.curriculumName = curriculumInfoVO.getCurriculumName();
this.curriculumDesc = curriculumInfoVO.getCurriculumDesc();
this.flightSkills = curriculumInfoVO.getFlightSkills();
this.surfaceUrl = curriculumInfoVO.getSurfaceUrl();
this.detailContent = curriculumInfoVO.getDetailContent();
this.videoUrl = curriculumInfoVO.getVideoUrl();
}
public CurriculumInfoVO buildCurriculumInfoVO(){ public CurriculumInfoVO buildCurriculumInfoVO(){
return CurriculumInfoVO.builder().id(id).curriculumDesc(curriculumDesc).price(curriculumPrice) return CurriculumInfoVO.builder().id(id).curriculumDesc(curriculumDesc).price(curriculumPrice)
.free(free).supplierName("浙江科比特创新科技有限公司").curriculumName(curriculumName) .free(free).supplierName("浙江科比特创新科技有限公司").curriculumName(curriculumName)
.videoUrl(videoUrl).build(); .videoUrl(videoUrl).surfaceUrl(this.surfaceUrl).flightSkills(this.flightSkills).detailContent(this.detailContent).build();
} }
} }
......
...@@ -7,6 +7,8 @@ import lombok.Data; ...@@ -7,6 +7,8 @@ import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import java.io.Serializable; import java.io.Serializable;
import java.util.List;
import java.util.stream.Collectors;
/** /**
* @Author LW * @Author LW
...@@ -20,10 +22,14 @@ public class FlightSkillsDO implements Serializable { ...@@ -20,10 +22,14 @@ public class FlightSkillsDO implements Serializable {
private static final long serialVersionUID = -6326079527453519916L; private static final long serialVersionUID = -6326079527453519916L;
@ApiModelProperty(value = "id") @ApiModelProperty(value = "id")
private Integer id; private Integer id;
@ApiModelProperty(value = "pid")
private Integer pid;
@ApiModelProperty(value = "行业认证名称") @ApiModelProperty(value = "行业认证名称")
private String skillsName; private String skillsName;
@ApiModelProperty(value = "子技能")
private List<FlightSkillsDO> childrenSkills;
public FlightSkillsVO buildFlightSkillsVO() { public FlightSkillsVO buildFlightSkillsVO() {
return FlightSkillsVO.builder().id(id).skillsName(skillsName).build(); return FlightSkillsVO.builder().id(this.id).skillsName(this.skillsName).flightSkills(this.childrenSkills == null ? null : this.childrenSkills.stream().map(FlightSkillsDO::buildFlightSkillsVO).collect(Collectors.toList())).build();
} }
} }
...@@ -3,7 +3,9 @@ package com.mmc.csf.release.service; ...@@ -3,7 +3,9 @@ package com.mmc.csf.release.service;
import com.mmc.csf.common.util.page.PageResult; import com.mmc.csf.common.util.page.PageResult;
import com.mmc.csf.common.util.web.ResultBody; import com.mmc.csf.common.util.web.ResultBody;
import com.mmc.csf.release.flyer.qo.CurriculumQo; import com.mmc.csf.release.flyer.qo.CurriculumQo;
import com.mmc.csf.release.flyer.vo.CurriculumInfoVO;
import com.mmc.csf.release.flyer.vo.RegistrationVO; import com.mmc.csf.release.flyer.vo.RegistrationVO;
import io.swagger.models.auth.In;
/** /**
* @Author LW * @Author LW
...@@ -50,4 +52,28 @@ public interface FlyerTrainingService { ...@@ -50,4 +52,28 @@ public interface FlyerTrainingService {
ResultBody licenseOrSkillQueryCurriculum(Integer type); ResultBody licenseOrSkillQueryCurriculum(Integer type);
ResultBody curriculumDetails(Integer id); ResultBody curriculumDetails(Integer id);
/**
* 添加课程
* @param curriculumInfoVO
*/
Integer addCurriculum(CurriculumInfoVO curriculumInfoVO);
/**
* 修改课程
* @param curriculumInfoVO
*/
Integer updateCurriculum(CurriculumInfoVO curriculumInfoVO);
/**
* 删除课程
* @param id
*/
Integer removeCurriculum(Integer id);
/**
* 课程列表
* @return
*/
ResultBody treeCurriculumSkill();
} }
...@@ -9,8 +9,10 @@ import com.mmc.csf.release.entity.PilotRegistrationDO; ...@@ -9,8 +9,10 @@ import com.mmc.csf.release.entity.PilotRegistrationDO;
import com.mmc.csf.release.flyer.qo.CurriculumQo; import com.mmc.csf.release.flyer.qo.CurriculumQo;
import com.mmc.csf.release.flyer.vo.CurriculumInfoVO; import com.mmc.csf.release.flyer.vo.CurriculumInfoVO;
import com.mmc.csf.release.flyer.vo.DronePilotLicenseVO; import com.mmc.csf.release.flyer.vo.DronePilotLicenseVO;
import com.mmc.csf.release.flyer.vo.FlightSkillsVO;
import com.mmc.csf.release.flyer.vo.RegistrationVO; import com.mmc.csf.release.flyer.vo.RegistrationVO;
import com.mmc.csf.release.service.FlyerTrainingService; import com.mmc.csf.release.service.FlyerTrainingService;
import io.swagger.models.auth.In;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -89,7 +91,16 @@ public class FlyerTrainingServiceImpl implements FlyerTrainingService { ...@@ -89,7 +91,16 @@ public class FlyerTrainingServiceImpl implements FlyerTrainingService {
Integer pageNo = curriculumQo.getPageNo(); Integer pageNo = curriculumQo.getPageNo();
curriculumQo.buildCurrentPage(); curriculumQo.buildCurrentPage();
List<CurriculumInfoDO> curriculumList = flyerTrainingDao.listPageCurriculumInfo(curriculumQo); List<CurriculumInfoDO> curriculumList = flyerTrainingDao.listPageCurriculumInfo(curriculumQo);
Map<Integer, FlightSkillsDO> flightSkillsMap = flyerTrainingDao.listIndustryFlightSkills().stream().collect(Collectors.toMap(FlightSkillsDO::getId, d -> d));
List<CurriculumInfoVO> list = curriculumList.stream().map(CurriculumInfoDO::buildCurriculumInfoVO).collect(Collectors.toList()); List<CurriculumInfoVO> list = curriculumList.stream().map(CurriculumInfoDO::buildCurriculumInfoVO).collect(Collectors.toList());
list.stream().map(d -> {
if (flightSkillsMap.get(d.getFlightSkills()) != null){
FlightSkillsDO flightSkillsDO = flightSkillsMap.get(d.getFlightSkills());
d.setFlightSkillsName1(flightSkillsMap.get(flightSkillsDO.getPid()).getSkillsName());
d.setFlightSkillsName2(flightSkillsDO.getSkillsName());
}
return d;
}).collect(Collectors.toList());
return PageResult.buildPage(pageNo, curriculumQo.getPageSize(), count, list); return PageResult.buildPage(pageNo, curriculumQo.getPageSize(), count, list);
} }
...@@ -113,7 +124,40 @@ public class FlyerTrainingServiceImpl implements FlyerTrainingService { ...@@ -113,7 +124,40 @@ public class FlyerTrainingServiceImpl implements FlyerTrainingService {
if (curriculumInfoDO == null) { if (curriculumInfoDO == null) {
return ResultBody.error("课程不存在或已下架!"); return ResultBody.error("课程不存在或已下架!");
}else { }else {
return ResultBody.success(curriculumInfoDO.buildCurriculumInfoVO()); Map<Integer, FlightSkillsDO> flightSkillsMap = flyerTrainingDao.listIndustryFlightSkills().stream().collect(Collectors.toMap(FlightSkillsDO::getId, d -> d));
CurriculumInfoVO curriculumInfoVO = curriculumInfoDO.buildCurriculumInfoVO();
if (flightSkillsMap.get(curriculumInfoVO.getFlightSkills()) != null) {
FlightSkillsDO flightSkillsDO = flightSkillsMap.get(curriculumInfoVO.getFlightSkills());
curriculumInfoVO.setFlightSkillsName1(flightSkillsMap.get(flightSkillsDO.getPid()).getSkillsName());
curriculumInfoVO.setFlightSkillsName2(flightSkillsDO.getSkillsName());
}
return ResultBody.success(curriculumInfoVO);
}
}
@Override
public Integer addCurriculum(CurriculumInfoVO curriculumInfoVO) {
CurriculumInfoDO currInfoDO = new CurriculumInfoDO(curriculumInfoVO);
// TODO Auto-generated method stub 暂时先设置科比特单位ID
currInfoDO.setSupplierId(1);
return flyerTrainingDao.addCurriculum(currInfoDO);
}
@Override
public Integer updateCurriculum(CurriculumInfoVO curriculumInfoVO) {
CurriculumInfoDO currInfoDO = new CurriculumInfoDO(curriculumInfoVO);
return flyerTrainingDao.updateCurriculum(currInfoDO);
} }
@Override
public Integer removeCurriculum(Integer id) {
return flyerTrainingDao.removeCurriculum(id);
}
@Override
public ResultBody treeCurriculumSkill() {
List<FlightSkillsDO> flightSkillsList = flyerTrainingDao.treeCurriculumSkill();
List<FlightSkillsVO> collect = flightSkillsList.stream().map(FlightSkillsDO::buildFlightSkillsVO).collect(Collectors.toList());
return ResultBody.success(collect);
} }
} }
...@@ -10,7 +10,7 @@ spring: ...@@ -10,7 +10,7 @@ spring:
#Database #Database
datasource: datasource:
driver-class-name: com.mysql.cj.jdbc.Driver driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://rm-wz9dd796t4j1giz6t2o.mysql.rds.aliyuncs.com:3306/iuav_ims?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=GMT%2B8 url: jdbc:mysql://rm-wz9dd796t4j1giz6t2o.mysql.rds.aliyuncs.com:3306/iuav_ims_dev?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=GMT%2B8
username: tmj username: tmj
password: MMC@2022&MYSQL password: MMC@2022&MYSQL
# Druid数据源配置 # Druid数据源配置
......
...@@ -4,6 +4,17 @@ ...@@ -4,6 +4,17 @@
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mmc.csf.release.dao.FlyerTrainingDao"> <mapper namespace="com.mmc.csf.release.dao.FlyerTrainingDao">
<resultMap id="flightSkillsResultMap" type="com.mmc.csf.release.entity.FlightSkillsDO">
<id column="id" property="id"/>
<result column="pid" property="pid"/>
<result column="skills_name" property="skillsName"/>
<collection property="childrenSkills" ofType="com.mmc.csf.release.entity.FlightSkillsDO" javaType="java.util.List">
<id column="childId" property="id"/>
<result column="childIdPid" property="pid"/>
<result column="childIdSkillsName" property="skillsName"/>
</collection>
</resultMap>
<insert id="insertPilotRegistrationInfo" parameterType="com.mmc.csf.release.entity.PilotRegistrationDO" <insert id="insertPilotRegistrationInfo" parameterType="com.mmc.csf.release.entity.PilotRegistrationDO"
useGeneratedKeys="true" keyProperty="id"> useGeneratedKeys="true" keyProperty="id">
INSERT INTO pilot_registration(apply_user_id, `name`, city, telephone, driving_license, province, INSERT INTO pilot_registration(apply_user_id, `name`, city, telephone, driving_license, province,
...@@ -12,6 +23,45 @@ ...@@ -12,6 +23,45 @@
VALUES (#{applyUserId}, #{name}, #{city}, #{telephone}, #{drivingLicense}, #{province}, #{uavLicenseLevelOne}, VALUES (#{applyUserId}, #{name}, #{city}, #{telephone}, #{drivingLicense}, #{province}, #{uavLicenseLevelOne},
#{uavLicenseLevelTwo}, #{uavLicenseLevelThree}, #{industryAppAuth}, #{remark}) #{uavLicenseLevelTwo}, #{uavLicenseLevelThree}, #{industryAppAuth}, #{remark})
</insert> </insert>
<insert id="addCurriculum" keyProperty="id" useGeneratedKeys="true" parameterType="com.mmc.csf.release.entity.CurriculumInfoDO">
INSERT INTO `curriculum_info`(`curriculum_name`, `supplier_id`, `curriculum_desc`, `drone_pilot_license_id`, `flight_skills`, `surface_url`, `video_url`, `detail_content`)
VALUES (#{curriculumName},#{supplierId},#{curriculumDesc},#{dronePilotLicenseId},#{flightSkills},#{surfaceUrl},#{videoUrl},#{detailContent});
</insert>
<update id="updateCurriculum" parameterType="com.mmc.csf.release.entity.CurriculumInfoDO">
UPDATE curriculum_info
<set>
<if test="curriculumName != null">
curriculum_name = #{curriculumName},
</if>
<if test="curriculumDesc != null">
curriculum_desc = #{curriculumDesc},
</if>
<if test="dronePilotLicenseId != null">
drone_pilot_license_id = #{dronePilotLicenseId},
</if>
<if test="flightSkills != null">
flight_skills = #{flightSkills},
</if>
<if test="surfaceUrl != null">
surface_url = #{surfaceUrl},
</if>
<if test="videoUrl != null">
video_url = #{videoUrl},
</if>
<if test="detailContent ">
detail_content = #{detailContent},
</if>
</set>
<where>
id = #{id}
</where>
</update>
<update id="removeCurriculum">
update curriculum_info set is_deleted = 1 where id = #{id}
</update>
<select id="selectAllLicenses" resultType="com.mmc.csf.release.flyer.vo.DronePilotLicenseVO"> <select id="selectAllLicenses" resultType="com.mmc.csf.release.flyer.vo.DronePilotLicenseVO">
select id, select id,
parent_id, parent_id,
...@@ -23,6 +73,7 @@ ...@@ -23,6 +73,7 @@
</select> </select>
<select id="listIndustryFlightSkills" resultType="com.mmc.csf.release.entity.FlightSkillsDO"> <select id="listIndustryFlightSkills" resultType="com.mmc.csf.release.entity.FlightSkillsDO">
select id, select id,
pid,
skills_name skills_name
from flight_skills from flight_skills
</select> </select>
...@@ -30,9 +81,12 @@ ...@@ -30,9 +81,12 @@
SELECT SELECT
count(*) count(*)
FROM FROM
curriculum_info ci INNER JOIN curriculum_video cv ON ci.id = cv.curriculum_info_id curriculum_info ci
<where> <where>
and ci.is_deleted = 0 and ci.is_deleted = 0
<if test="curriculumName != null">
and ci.curriculum_name like CONCAT("%", #{curriculumName}, "%")
</if>
<if test="licenseId != null"> <if test="licenseId != null">
and ci.drone_pilot_license_id = #{licenseId} and ci.drone_pilot_license_id = #{licenseId}
</if> </if>
...@@ -51,10 +105,15 @@ ...@@ -51,10 +105,15 @@
ci.is_free free, ci.is_free free,
ci.drone_pilot_license_id, ci.drone_pilot_license_id,
ci.flight_skills, ci.flight_skills,
cv.curriculum_url videoUrl ci.detail_content,
from curriculum_info ci INNER JOIN curriculum_video cv ON ci.id = cv.curriculum_info_id ci.video_url,
ci.surface_url
from curriculum_info ci
<where> <where>
and ci.is_deleted = 0 and ci.is_deleted = 0
<if test="curriculumName != null">
and ci.curriculum_name like CONCAT("%", #{curriculumName}, "%")
</if>
<if test="licenseId != null"> <if test="licenseId != null">
and drone_pilot_license_id = #{licenseId} and drone_pilot_license_id = #{licenseId}
</if> </if>
...@@ -102,10 +161,24 @@ ...@@ -102,10 +161,24 @@
ci.is_free free, ci.is_free free,
ci.drone_pilot_license_id, ci.drone_pilot_license_id,
ci.flight_skills, ci.flight_skills,
cv.curriculum_url videoUrl ci.detail_content,
ci.video_url,
ci.surface_url
from curriculum_info ci from curriculum_info ci
INNER JOIN curriculum_video cv ON ci.id = cv.curriculum_info_id
where ci.id = #{id} where ci.id = #{id}
and ci.is_deleted = 0 and ci.is_deleted = 0
</select> </select>
<select id="treeCurriculumSkill" resultMap="flightSkillsResultMap">
SELECT
fs0.id,
fs0.pid,
fs0.skills_name,
fs1.id as childId,
fs1.pid as childIdPid,
fs1.skills_name as childIdSkillsName
FROM
flight_skills fs0
INNER JOIN flight_skills fs1 ON fs0.id = fs1.pid
</select>
</mapper> </mapper>
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论