src/main/java/org/springblade/modules/recruitment/mapper/RecruitmentMapper.xml
@@ -14,40 +14,40 @@ sr.dept_id = bt.id WHERE 1=1 <if test="recruitment.tenantName!=null and recruitment.tenantName!=''"> and bt.dept_name like concat('%', #{recruitment.tenantName},'%') <if test="trainingRegistration.tenantName!=null and trainingRegistration.tenantName!=''"> and bt.dept_name like concat('%', #{trainingRegistration.tenantName},'%') </if> <if test="recruitment.province!=null"> and sr.province = #{recruitment.province} <if test="trainingRegistration.province!=null"> and sr.province = #{trainingRegistration.province} </if> <if test="recruitment.city!=null"> and sr.city = #{recruitment.city} <if test="trainingRegistration.city!=null"> and sr.city = #{trainingRegistration.city} </if> <if test="recruitment.district!=null"> and sr.district = #{recruitment.district} <if test="trainingRegistration.district!=null"> and sr.district = #{trainingRegistration.district} </if> <if test="recruitment.permit!=null"> and sr.permit = #{recruitment.permit} <if test="trainingRegistration.permit!=null"> and sr.permit = #{trainingRegistration.permit} </if> <if test="recruitment.education!=null and recruitment.education!=''"> and sr.education = #{recruitment.education} <if test="trainingRegistration.education!=null and trainingRegistration.education!=''"> and sr.education = #{trainingRegistration.education} </if> <if test="recruitment.startTime!=null and recruitment.startTime!=''"> and sr.start_time >= #{recruitment.startTime} <if test="trainingRegistration.startTime!=null and trainingRegistration.startTime!=''"> and sr.start_time >= #{trainingRegistration.startTime} </if> <if test="recruitment.endTime!=null and recruitment.endTime!=''"> and sr.end_time <= #{recruitment.endTime} <if test="trainingRegistration.endTime!=null and trainingRegistration.endTime!=''"> and sr.end_time <= #{trainingRegistration.endTime} </if> <if test="recruitment.minSalary!=null or recruitment.maxSalary!=null"> <if test="recruitment.minSalary==null and recruitment.maxSalary!=null"> and sr.min_salary <= #{recruitment.maxSalary} and sr.max_salary >= #{recruitment.maxSalary} <if test="trainingRegistration.minSalary!=null or trainingRegistration.maxSalary!=null"> <if test="trainingRegistration.minSalary==null and trainingRegistration.maxSalary!=null"> and sr.min_salary <= #{trainingRegistration.maxSalary} and sr.max_salary >= #{trainingRegistration.maxSalary} </if> <if test="recruitment.maxSalary==null and recruitment.minSalary!=null"> and sr.min_salary <= #{recruitment.minSalary} and sr.max_salary >= #{recruitment.minSalary} <if test="trainingRegistration.maxSalary==null and trainingRegistration.minSalary!=null"> and sr.min_salary <= #{trainingRegistration.minSalary} and sr.max_salary >= #{trainingRegistration.minSalary} </if> <if test="recruitment.maxSalary!=null and recruitment.minSalary!=null"> and sr.max_salary <= #{recruitment.maxSalary} and sr.max_salary >= #{recruitment.minSalary} or ( sr.min_salary <= #{recruitment.maxSalary} and sr.min_salary >= #{recruitment.minSalary}) <if test="trainingRegistration.maxSalary!=null and trainingRegistration.minSalary!=null"> and sr.max_salary <= #{trainingRegistration.maxSalary} and sr.max_salary >= #{trainingRegistration.minSalary} or ( sr.min_salary <= #{trainingRegistration.maxSalary} and sr.min_salary >= #{trainingRegistration.minSalary}) </if> </if> @@ -66,8 +66,8 @@ sr.dept_id = bt.id WHERE 1=1 <if test="recruitment.id!=null"> and sr.id = #{recruitment.id} <if test="trainingRegistration.id!=null"> and sr.id = #{trainingRegistration.id} </if> </select> </mapper> src/main/java/org/springblade/modules/system/entity/User.java
@@ -150,8 +150,15 @@ */ @ApiModelProperty(value = "入职时间") private String rtime; private String hold; /** * 行政区域id */ private String jurisdiction; } src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml
@@ -92,7 +92,7 @@ FROM blade_dept dept WHERE dept.parent_id = #{param2} AND dept.is_deleted = 0 dept.is_deleted = 0 <if test="param1!=null and param1!=''"> and dept.tenant_id = #{param1} </if> src/main/java/org/springblade/modules/training/controller/TrainingRegistrationController.java
New file @@ -0,0 +1,89 @@ package org.springblade.modules.training.controller; import com.baomidou.mybatisplus.core.metadata.IPage; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import lombok.AllArgsConstructor; import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Query; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.Func; import org.springblade.modules.training.entity.TrainingRegistration; import org.springblade.modules.training.service.TrainingRegistrationService; import org.springblade.modules.training.vo.TrainingRegistrationVo; import org.springframework.web.bind.annotation.*; import java.util.Date; /** * @author zhongrj * @time 2021-07-12 * @desc 报名培训管理控制层 */ @RestController @AllArgsConstructor @RequestMapping("/trainingRegistration") public class TrainingRegistrationController { private final TrainingRegistrationService trainingRegistrationService; /** * 自定义分页 * @param query page,size * @param trainingRegistration 报名培训信息对象 */ @GetMapping("/page") public R<IPage<TrainingRegistrationVo>> page(TrainingRegistrationVo trainingRegistration, Query query) { IPage<TrainingRegistrationVo> pages = trainingRegistrationService.selectTrainingRegistrationPage(Condition.getPage(query), trainingRegistration); return R.data(pages); } /** * 新增 * @param trainingRegistration 报名培训信息对象 */ @PostMapping("/save") @ApiOperation(value = "新增", notes = "传入trainingRegistration") public R save(@RequestBody TrainingRegistration trainingRegistration) { return R.status(trainingRegistrationService.save(trainingRegistration)); } /** * 修改 * @param trainingRegistration 报名培训信息对象 */ @PostMapping("/update") public R update(@RequestBody TrainingRegistration trainingRegistration) { return R.status(trainingRegistrationService.updateById(trainingRegistration)); } /** * 新增或修改 * @param trainingRegistration 报名培训信息对象 */ @PostMapping("/submit") public R submit(@RequestBody TrainingRegistration trainingRegistration) { return R.status(trainingRegistrationService.saveOrUpdate(trainingRegistration)); } /** * 删除 * @param ids 报名培训信息ids 数组 */ @PostMapping("/remove") public R remove(@ApiParam(value = "主键集合") @RequestParam String ids) { return R.status(trainingRegistrationService.removeByIds(Func.toLongList(ids))); } /** * 详情 * @param trainingRegistration 报名培训信息对象 */ @GetMapping("/detail") @ApiOperation(value = "详情", notes = "传入trainingRegistration") public R<TrainingRegistrationVo> detail(TrainingRegistration trainingRegistration) { TrainingRegistrationVo detail = trainingRegistrationService.selectTrainingRegistrationInfo(trainingRegistration); return R.data(detail); } } src/main/java/org/springblade/modules/training/entity/TrainingRegistration.java
New file @@ -0,0 +1,94 @@ package org.springblade.modules.training.entity; 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 lombok.Data; import org.springframework.format.annotation.DateTimeFormat; import java.io.Serializable; import java.util.Date; /** * 报名培训实体类 * @author zhongrj * @time 2021-07-12 */ @Data @TableName("sys_training_registration") public class TrainingRegistration implements Serializable { private static final long serialVersionUID = 1L; /** * 报名培训主键id */ @TableId(value = "id",type = IdType.AUTO) private Long id; /** * 组织机构id */ @TableField("dept_id") private Long deptId; /** * 报名人姓名 */ private String name; /** * 性别 1:男 2:女 */ private Integer sex; /** * 年龄 */ private Integer age; /** * 身高 */ private String height; /** * 体重 */ private String weight; /** * 报名电话 */ private String phone; /** * 身份证号 */ @TableField("id_card_no") private String idCardNo; /** * 学历证书url */ @TableField("academic_url") private String academicUrl; /** * 培训公司名称 */ @TableField("training_unit_name") private String trainingUnitName; /** * 培训时间 */ @TableField("training_time") @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") @DateTimeFormat(pattern = "yyyy-MM-dd") private Date trainingTime; } src/main/java/org/springblade/modules/training/mapper/TrainingRegistrationMapper.java
New file @@ -0,0 +1,33 @@ package org.springblade.modules.training.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import org.apache.ibatis.annotations.Param; import org.springblade.modules.training.entity.TrainingRegistration; import org.springblade.modules.training.vo.TrainingRegistrationVo; import java.util.List; /** * 报名培训Mapper 接口 * @author zhongrj */ public interface TrainingRegistrationMapper extends BaseMapper<TrainingRegistration> { /** * 自定义分页 * * @param page 分页 * @param recruitment 实体 * @return */ List<TrainingRegistrationVo> selectTrainingRegistrationPage(IPage page, @Param("trainingRegistration") TrainingRegistrationVo recruitment); /** * 详情 * @param trainingRegistration 报名培训信息对象 */ TrainingRegistrationVo selectTrainingRegistrationInfo(@Param("trainingRegistration") TrainingRegistration trainingRegistration); } src/main/java/org/springblade/modules/training/mapper/TrainingRegistrationMapper.xml
New file @@ -0,0 +1,41 @@ <?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="org.springblade.modules.training.mapper.TrainingRegistrationMapper"> <!--报名培训分页信息--> <select id="selectTrainingRegistrationPage" resultType="org.springblade.modules.training.vo.TrainingRegistrationVo"> SELECT sr.*,bt.dept_name AS deptName FROM sys_training_registration sr LEFT JOIN blade_dept bt ON sr.dept_id = bt.id WHERE 1=1 <if test="trainingRegistration.deptName!=null and trainingRegistration.deptName!=''"> and bt.dept_name like concat('%', #{trainingRegistration.deptName},'%') </if> <if test="trainingRegistration.name!=null and trainingRegistration.name!=''"> and sr.name like concat('%', #{trainingRegistration.name},'%') </if> </select> <!--报名培训详情信息--> <select id="selectTrainingRegistrationInfo" resultType="org.springblade.modules.training.vo.TrainingRegistrationVo"> SELECT sr.*,bt.dept_name AS deptName FROM sys_training_registration sr LEFT JOIN blade_dept bt ON sr.dept_id = bt.id WHERE 1=1 <if test="trainingRegistration.id!=null"> and sr.id = #{trainingRegistration.id} </if> </select> </mapper> src/main/java/org/springblade/modules/training/service/TrainingRegistrationService.java
New file @@ -0,0 +1,27 @@ package org.springblade.modules.training.service; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.IService; import org.springblade.modules.training.entity.TrainingRegistration; import org.springblade.modules.training.vo.TrainingRegistrationVo; /** * 报名培训服务类 * @author zhongrj */ public interface TrainingRegistrationService extends IService<TrainingRegistration> { /** * 自定义分页 * @param page * @param trainingRegistration * @return */ IPage<TrainingRegistrationVo> selectTrainingRegistrationPage(IPage<TrainingRegistrationVo> page, TrainingRegistrationVo recruitment); /** * 详情 * @param trainingRegistration 报名培训信息对象 */ TrainingRegistrationVo selectTrainingRegistrationInfo(TrainingRegistration trainingRegistration); } src/main/java/org/springblade/modules/training/service/impl/TrainingRegistrationServiceImpl.java
New file @@ -0,0 +1,32 @@ package org.springblade.modules.training.service.impl; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springblade.modules.training.entity.TrainingRegistration; import org.springblade.modules.training.mapper.TrainingRegistrationMapper; import org.springblade.modules.training.service.TrainingRegistrationService; import org.springblade.modules.training.vo.TrainingRegistrationVo; import org.springframework.stereotype.Service; /** * 报名培训服务实现类 * @author zhongrj */ @Service public class TrainingRegistrationServiceImpl extends ServiceImpl<TrainingRegistrationMapper, TrainingRegistration> implements TrainingRegistrationService { @Override public IPage<TrainingRegistrationVo> selectTrainingRegistrationPage(IPage<TrainingRegistrationVo> page, TrainingRegistrationVo trainingRegistration) { return page.setRecords(baseMapper.selectTrainingRegistrationPage(page, trainingRegistration)); } /** * 详情 * @param trainingRegistration 报名培训信息对象 */ @Override public TrainingRegistrationVo selectTrainingRegistrationInfo(TrainingRegistration trainingRegistration) { return baseMapper.selectTrainingRegistrationInfo(trainingRegistration); } } src/main/java/org/springblade/modules/training/vo/TrainingRegistrationVo.java
New file @@ -0,0 +1,18 @@ package org.springblade.modules.training.vo; import lombok.Data; import org.springblade.modules.training.entity.TrainingRegistration; import java.io.Serializable; /** * @author zhongrj */ @Data public class TrainingRegistrationVo extends TrainingRegistration implements Serializable { /** * 组织机构名称 */ private String deptName; } src/main/resources/application.yml
@@ -199,6 +199,7 @@ - /equipage/** - /car/** - /gun/** - /trainingRegistration/** #授权认证配置 auth: - method: ALL