| multi-admin/src/main/java/com/gkhy/exam/admin/controller/web/CourseEffectivenController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| multi-system/src/main/java/com/gkhy/exam/system/domain/CourseEffectiven.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| multi-system/src/main/java/com/gkhy/exam/system/mapper/CourseEffectivenMapper.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| multi-system/src/main/java/com/gkhy/exam/system/service/CourseEffectivenService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| multi-system/src/main/java/com/gkhy/exam/system/service/impl/CourseEffectivenServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| multi-system/src/main/resources/mapper/system/CourseEffectivenMapper.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
multi-admin/src/main/java/com/gkhy/exam/admin/controller/web/CourseEffectivenController.java
对比新文件 @@ -0,0 +1,70 @@ package com.gkhy.exam.admin.controller.web; import com.gkhy.exam.common.api.CommonResult; import com.gkhy.exam.system.domain.CourseEffectiven; import com.gkhy.exam.system.domain.InternalAuditPlan; import com.gkhy.exam.system.service.CourseEffectivenService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @RestController @RequestMapping("/effectiven") @Api(tags = "课程有效性评价管理") public class CourseEffectivenController { @Autowired private CourseEffectivenService courseEffectivenService; /** * 课程有效性评价列表 * @param courseEffectiven * @return */ @ApiOperation(value = "课程有效性评价列表(分页)") @ApiImplicitParams({ @ApiImplicitParam(paramType = "query", name = "pageNum", dataType = "int", required = false, value = "当前页,默认1"), @ApiImplicitParam(paramType = "query", name = "pageSize", dataType = "int", required = false, value = "每页数目,默认10"), }) @GetMapping("/list") public CommonResult listCourseEffectiven(CourseEffectiven courseEffectiven){ return CommonResult.success(courseEffectivenService.selectCourseEffectivenList(courseEffectiven)); } /** * 课程有效性评价新增 * @param courseEffectiven * @return */ @ApiOperation(value = "课程有效性评价新增") @PostMapping("/insert") public CommonResult insertCourseEffectiven(@RequestBody CourseEffectiven courseEffectiven){ return courseEffectivenService.insertCourseEffectiven(courseEffectiven); } /** * 课程有效性评价修改 * @param courseEffectiven * @return */ @ApiOperation(value = "课程有效性评价修改") @PostMapping("/update") public CommonResult updateCourseEffectiven(@RequestBody CourseEffectiven courseEffectiven){ return courseEffectivenService.updateCourseEffectiven(courseEffectiven); } /** * 课程有效性评价删除 * @param effectivenId * @return */ @ApiOperation(value = "课程有效性评价删除") @GetMapping("/deleted") public CommonResult deletedCourseEffectiven(@RequestParam("effectivenId") Integer effectivenId){ return courseEffectivenService.deletedCourseEffectiven(effectivenId); } } multi-system/src/main/java/com/gkhy/exam/system/domain/CourseEffectiven.java
对比新文件 @@ -0,0 +1,115 @@ package com.gkhy.exam.system.domain; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; import java.io.Serializable; import java.time.LocalDate; import java.time.LocalDateTime; @Getter @Setter @TableName("course_effectiven") @ApiModel(value = "CourseEffectiven", description = "课程有效性评价") public class CourseEffectiven implements Serializable { @ApiModelProperty("主键") @TableId(value = "id", type = IdType.AUTO) private Integer id; @ApiModelProperty(value = "企业id") @TableField("company_id") private Long companyId; @TableField(exist = false) private String companyName; @ApiModelProperty(value = "计划id") @TableField("plan_id") private Integer planId; @TableField(exist = false) private String planName; @ApiModelProperty(value = "讲师id") @TableField("teacher_id") private Integer teacherId; @TableField(exist = false) private String teacherName; @ApiModelProperty(value = "所属部门id") @TableField("dept_id") private Integer deptId; @TableField(exist = false) private String deptName; @ApiModelProperty(value = "开课日期id") @TableField("open_time") @JsonFormat(pattern = "yyyy-MM-dd") private LocalDate openTime; @ApiModelProperty(value = "员工") @TableField("staffs") private String staffs; @TableField(exist = false) private String staffsNames; @ApiModelProperty(value = "个人素养") @TableField("personal_quality") private String personalQuality; @ApiModelProperty(value = "授课准备") @TableField("preparatory") private String preparatory; @ApiModelProperty(value = "课程内容") @TableField("course_content") private String courseContent; @ApiModelProperty(value = "你的建议") @TableField("suggest") private String suggest; @ApiModelProperty(value = "关于讲师") @TableField("about_teacher") private String aboutTeacher; @ApiModelProperty(value = "关于内容") @TableField("about_content") private String aboutContent; @ApiModelProperty(value = "关于授课方式") @TableField("teach_form") private String teachForm; @ApiModelProperty(value = "其他") @TableField("other") private String other; @TableField("del_flag") private Integer delFlag; @TableField("create_by") private String createBy; @TableField("create_time") private LocalDateTime createTime; @TableField("update_by") private String updateBy; @TableField("update_time") private LocalDateTime updateTime; } multi-system/src/main/java/com/gkhy/exam/system/mapper/CourseEffectivenMapper.java
对比新文件 @@ -0,0 +1,13 @@ package com.gkhy.exam.system.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.gkhy.exam.system.domain.CourseEffectiven; import org.mapstruct.Mapper; import java.util.List; @Mapper public interface CourseEffectivenMapper extends BaseMapper<CourseEffectiven> { List<CourseEffectiven> selectEffectivenList(CourseEffectiven courseEffectiven); } multi-system/src/main/java/com/gkhy/exam/system/service/CourseEffectivenService.java
对比新文件 @@ -0,0 +1,16 @@ package com.gkhy.exam.system.service; import com.baomidou.mybatisplus.extension.service.IService; import com.gkhy.exam.common.api.CommonPage; import com.gkhy.exam.common.api.CommonResult; import com.gkhy.exam.system.domain.CourseEffectiven; public interface CourseEffectivenService extends IService<CourseEffectiven> { CommonPage selectCourseEffectivenList(CourseEffectiven courseEffectiven); CommonResult insertCourseEffectiven(CourseEffectiven courseEffectiven); CommonResult updateCourseEffectiven(CourseEffectiven courseEffectiven); CommonResult deletedCourseEffectiven(Integer effectivenId); } multi-system/src/main/java/com/gkhy/exam/system/service/impl/CourseEffectivenServiceImpl.java
对比新文件 @@ -0,0 +1,103 @@ package com.gkhy.exam.system.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.gkhy.exam.common.api.CommonPage; import com.gkhy.exam.common.api.CommonResult; import com.gkhy.exam.common.domain.entity.SysUser; import com.gkhy.exam.common.utils.PageUtils; import com.gkhy.exam.common.utils.SecurityUtils; import com.gkhy.exam.system.domain.CourseEffectiven; import com.gkhy.exam.system.mapper.CourseEffectivenMapper; import com.gkhy.exam.system.mapper.SysUserMapper; import com.gkhy.exam.system.service.CourseEffectivenService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.time.LocalDateTime; import java.util.*; import java.util.stream.Collectors; @Service public class CourseEffectivenServiceImpl extends ServiceImpl<CourseEffectivenMapper, CourseEffectiven> implements CourseEffectivenService { @Autowired private CourseEffectivenMapper courseEffectivenMapper; @Autowired private SysUserMapper sysUserMapper; @Override public CommonPage selectCourseEffectivenList(CourseEffectiven courseEffectiven) { if (!SecurityUtils.adminUser() && courseEffectiven.getCompanyId() == null){ throw new RuntimeException("非管理员操作,企业查询不可为空"); } PageUtils.startPage(); List<CourseEffectiven> courseEffectivens = courseEffectivenMapper.selectEffectivenList(courseEffectiven); Set<Integer> allUserIds = courseEffectivens.stream() .map(CourseEffectiven::getStaffs) .filter(Objects::nonNull) .flatMap(staffs -> Arrays.stream(staffs.split(","))) .map(String::trim) .filter(s -> !s.isEmpty()) .map(Integer::valueOf) .collect(Collectors.toSet()); if (!allUserIds.isEmpty()) { // 批量查询用户信息 Map<Long, String> userMap = sysUserMapper.selectBatchIds(new ArrayList<>(allUserIds)).stream() .collect(Collectors.toMap(SysUser::getId, SysUser::getName)); // 设置用户姓名 courseEffectivens.forEach(item -> { if (item.getStaffs() != null) { String staffNames = Arrays.stream(item.getStaffs().split(",")) .map(String::trim) .filter(s -> !s.isEmpty()) .map(Long::valueOf) .map(userMap::get) .filter(Objects::nonNull) .collect(Collectors.joining(",")); item.setStaffsNames(staffNames); } }); } return CommonPage.restPage(courseEffectivens); } @Override public CommonResult insertCourseEffectiven(CourseEffectiven courseEffectiven) { courseEffectiven.setCreateBy(SecurityUtils.getUsername()); courseEffectiven.setCreateTime(LocalDateTime.now()); int insert = courseEffectivenMapper.insert(courseEffectiven); if (insert>0){ return CommonResult.success(); } return CommonResult.failed(); } @Override public CommonResult updateCourseEffectiven(CourseEffectiven courseEffectiven) { courseEffectiven.setUpdateBy(SecurityUtils.getUsername()); courseEffectiven.setUpdateTime(LocalDateTime.now()); int update = courseEffectivenMapper.updateById(courseEffectiven); if (update>0){ return CommonResult.success(); } return CommonResult.failed(); } @Override public CommonResult deletedCourseEffectiven(Integer effectivenId) { CourseEffectiven courseEffectiven = new CourseEffectiven(); courseEffectiven.setId(effectivenId); courseEffectiven.setUpdateBy(SecurityUtils.getUsername()); courseEffectiven.setUpdateTime(LocalDateTime.now()); courseEffectiven.setDelFlag(2); int update = courseEffectivenMapper.updateById(courseEffectiven); if (update>0){ return CommonResult.success(); } return CommonResult.failed(); } } multi-system/src/main/resources/mapper/system/CourseEffectivenMapper.xml
对比新文件 @@ -0,0 +1,45 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.gkhy.exam.system.mapper.CourseEffectivenMapper"> <select id="selectEffectivenList" resultType="com.gkhy.exam.system.domain.CourseEffectiven"> SELECT ce.`id`, ce.`company_id`, sc.`name` as company_name, ce.`plan_id`, tp.`train_name` as plan_name, ce.`teacher_id`, su.`name` as teacher_name, ce.`dept_id`, sd.`dept_name`, ce.`open_time`, ce.`staffs`, ce.`personal_quality`, ce.`preparatory`, ce.`course_content`, ce.`suggest`, ce.`about_teacher`, ce.`about_content`, ce.`teach_form`, ce.`other`, ce.`del_flag`, ce.`create_by`, ce.`create_time`, ce.`update_by`, ce.`update_time` FROM `course_effectiven` ce LEFT JOIN sys_user su ON ce.teacher_id = su.id LEFT JOIN sys_company sc ON ce.company_id = sc.id LEFT JOIN sys_dept sd ON ce.dept_id = sd.dept_id LEFT JOIN train_plan tp ON ce.plan_id = tp.id WHERE ce.del_flag = 0 <if test="companyId!=null"> and ce.company_id = #{companyId} </if> ORDER BY ce.create_time DESC </select> </mapper>