febs-server/febs-server-generator/src/main/resources/generator/templates/serviceImpl.ftl
@@ -92,7 +92,6 @@ @Override @Transactional(rollbackFor = Exception.class) public void logicDel${className}(String ids) { List<String> list = new ArrayList<>(); String[] str = ids.split(","); List<String> list = new ArrayList<>(Arrays.asList(str)); ${className?uncap_first}Mapper.logicDeleteByIds(list, operatorId); febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/controller/EmpBaseInfoController.java
New file @@ -0,0 +1,110 @@ package cc.mrbird.febs.server.hr.controller; import cc.mrbird.febs.common.core.entity.system.Dept; import cc.mrbird.febs.common.core.entity.system.SystemUser; import cc.mrbird.febs.server.hr.entity.EmpBaseInfo; import cc.mrbird.febs.server.hr.feign.IRemoteDeptService; import cc.mrbird.febs.server.hr.feign.IRemoteUserService; import cc.mrbird.febs.server.hr.service.IEmpBaseInfoService; import cc.mrbird.febs.common.core.entity.FebsResponse; import cc.mrbird.febs.common.core.entity.QueryRequest; import cc.mrbird.febs.common.core.exception.FebsException; import cc.mrbird.febs.common.core.utils.FebsUtil; import lombok.extern.slf4j.Slf4j; import lombok.RequiredArgsConstructor; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.util.Map; /** * name:EmpBaseInfo * package:cc.mrbird.febs.server.hr.controller * description:控制器 * * @author luoyibo * @date 2021-01-30 08:04:50 * @since JDK1.8 */ @Slf4j @Validated @RestController @RequestMapping("empBaseInfo") @RequiredArgsConstructor public class EmpBaseInfoController { private final IEmpBaseInfoService empBaseInfoService; private final IRemoteUserService remoteUserService; private final IRemoteDeptService remoteDeptService; @GetMapping @PreAuthorize("hasAuthority('empBaseinfo:list')") public FebsResponse getAllEmpBaseInfos(EmpBaseInfo empBaseinfo) { return new FebsResponse().data(empBaseInfoService.findEmpBaseInfos(empBaseinfo)); } @GetMapping("list") @PreAuthorize("hasAuthority('empBaseinfo:list')") public FebsResponse empBaseInfoList(QueryRequest request, EmpBaseInfo empBaseinfo) { Map<String, Object> dataTable = FebsUtil.getDataTable(this.empBaseInfoService.findEmpBaseInfos(request, empBaseinfo)); return new FebsResponse().data(dataTable); } @PostMapping @PreAuthorize("hasAuthority('empBaseinfo:add')") public void addEmpBaseInfo(@Valid EmpBaseInfo empBaseinfo) throws FebsException { try { this.empBaseInfoService.createEmpBaseInfo(empBaseinfo); } catch (Exception e) { String message = "新增员工基本信息失败"; log.error(message, e); throw new FebsException(message); } } @DeleteMapping @PreAuthorize("hasAuthority('empBaseinfo:delete')") public void deleteEmpBaseInfo(EmpBaseInfo empBaseinfo) throws FebsException { try { this.empBaseInfoService.deleteEmpBaseInfo(empBaseinfo); } catch (Exception e) { String message = "删除员工基本信息失败"; log.error(message, e); throw new FebsException(message); } } @DeleteMapping("{ids}") @PreAuthorize("hasAuthority('empBaseinfo:delete')") public void logicDeleteEmpBaseInfo(@PathVariable("ids") String ids) throws FebsException { try { this.empBaseInfoService.logicDelEmpBaseInfo(ids); } catch (Exception e) { String message = "逻辑员工基本信息删除失败"; log.error(message, e); throw new FebsException(message); } } @PutMapping @PreAuthorize("hasAuthority('empBaseinfo:update')") public void updateEmpBaseInfo(EmpBaseInfo empBaseinfo) throws FebsException { try { this.empBaseInfoService.updateEmpBaseInfo(empBaseinfo); } catch (Exception e) { String message = "修改失败"; log.error(message, e); throw new FebsException(message); } } @GetMapping("user/list") public FebsResponse getRemoteUserList(QueryRequest request, SystemUser user) { return remoteUserService.userList(request, user); } @GetMapping("dept/list") public FebsResponse getRemoteDeptList(QueryRequest request, Dept dept) { return remoteDeptService.deptList(request, dept); } } febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/controller/EmpWorkExperienceController.java
New file @@ -0,0 +1,96 @@ package cc.mrbird.febs.server.hr.controller; import cc.mrbird.febs.server.hr.entity.EmpWorkExperience; import cc.mrbird.febs.server.hr.service.IEmpWorkExperienceService; import cc.mrbird.febs.common.core.entity.FebsResponse; import cc.mrbird.febs.common.core.entity.QueryRequest; import cc.mrbird.febs.common.core.exception.FebsException; import cc.mrbird.febs.common.core.utils.FebsUtil; import lombok.extern.slf4j.Slf4j; import lombok.RequiredArgsConstructor; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.util.Map; /** * name:EmpWorkexperience * package:cc.mrbird.febs.server.hr.controller * description:员工工作经历控制器 * * @author luoyibo * @date 2021-01-28 12:33:31 * @since JDK1.8 */ @Slf4j @Validated @RestController @RequestMapping("empWorkExperience") @RequiredArgsConstructor public class EmpWorkExperienceController { private final IEmpWorkExperienceService empWorkExperienceService; @GetMapping @PreAuthorize("hasAuthority('empWorkexperience:list')") public FebsResponse getAllEmpWorkExperiences(EmpWorkExperience empWorkexperience) { return new FebsResponse().data(empWorkExperienceService.findEmpWorkExperiences(empWorkexperience)); } @GetMapping("list") @PreAuthorize("hasAuthority('empWorkexperience:list')") public FebsResponse empWorkExperienceList(QueryRequest request, EmpWorkExperience empWorkexperience) { Map<String, Object> dataTable = FebsUtil.getDataTable(this.empWorkExperienceService.findEmpWorkExperiences(request, empWorkexperience)); return new FebsResponse().data(dataTable); } @PostMapping @PreAuthorize("hasAuthority('empWorkexperience:add')") public void addEmpWorkExperience(@Valid EmpWorkExperience empWorkexperience) throws FebsException { try { this.empWorkExperienceService.createEmpWorkExperience(empWorkexperience); } catch (Exception e) { String message = "新增员工工作经历失败"; log.error(message, e); throw new FebsException(message); } } @DeleteMapping @PreAuthorize("hasAuthority('empWorkexperience:delete')") public void deleteEmpWorkExperience(EmpWorkExperience empWorkexperience) throws FebsException { try { this.empWorkExperienceService.deleteEmpWorkExperience(empWorkexperience); } catch (Exception e) { String message = "删除员工工作经历失败"; log.error(message, e); throw new FebsException(message); } } @DeleteMapping("{ids}") @PreAuthorize("hasAuthority('empWorkexperience:delete')") public void logicDeleteEmpWorkExperience(@PathVariable("ids") String ids) throws FebsException { try { this.empWorkExperienceService.logicDelEmpWorkExperience(ids); } catch (Exception e) { String message = "逻辑删除员工工作经历失败"; log.error(message, e); throw new FebsException(message); } } @PutMapping @PreAuthorize("hasAuthority('empWorkexperience:update')") public void updateEmpWorkExperience(EmpWorkExperience empWorkexperience) throws FebsException { try { this.empWorkExperienceService.updateEmpWorkExperience(empWorkexperience); } catch (Exception e) { String message = "修改员工工作经历失败"; log.error(message, e); throw new FebsException(message); } } } febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/entity/EmpBaseInfo.java
New file @@ -0,0 +1,233 @@ package cc.mrbird.febs.server.hr.entity; import java.io.Serializable; import java.util.Date; import cc.mrbird.febs.common.core.annotation.FieldInfo; import cc.mrbird.febs.common.core.utils.DateDeSerializer; import cc.mrbird.febs.common.core.utils.DateSerializer; import cc.mrbird.febs.common.core.utils.DateTimeDeserializer; import cc.mrbird.febs.common.core.utils.DateTimeSerializer; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import lombok.Data; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.Version; import org.springframework.format.annotation.DateTimeFormat; /** * name:EmpBaseinfo * package:cc.mrbird.febs.server.hr.controller * description:数据表映射实体 * * @author luoyibo * @date 2021-01-30 08:04:50 * @since JDK1.8 */ @Data @TableName("t_emp_baseInfo") public class EmpBaseInfo implements Serializable { @FieldInfo(name = "empId", type = "bigint", explain = "员工Id") @TableId(value = "empId") private Long empId = 0L; @FieldInfo(name = "customerId", type = "bigint", explain = "租户Id") @TableField("customerId") private Long customerId = 0L; @FieldInfo(name = "archivesNumb", type = "varchar", explain = "档案号") @TableField("archivesNumb") private String archivesNumb = ""; @FieldInfo(name = "deptId", type = "bigint", explain = "部门Id") @TableField("deptId") private Long deptId = 0L; @FieldInfo(name = "deptName", type = "varchar", explain = "部门名称") @TableField("deptName") private String deptName = ""; @FieldInfo(name = "empNumb", type = "varchar", explain = "员工编号") @TableField("empNumb") private String empNumb = ""; @FieldInfo(name = "empName", type = "varchar", explain = "员工姓名") @TableField("empName") private String empName = ""; @FieldInfo(name = "sex", type = "varchar", explain = "性别码,使用国标性别性别码") @TableField("sex") private String sex = ""; @FieldInfo(name = "jobId", type = "bigint", explain = "岗位Id") @TableField("jobId") private Long jobId = 0L; @FieldInfo(name = "jobName", type = "varchar", explain = "岗位名称") @TableField("jobName") private String jobName = ""; @FieldInfo(name = "empType", type = "varchar", explain = "员工类别,员工类另字典表") @TableField("empType") private String empType = ""; @FieldInfo(name = "certificateType", type = "varchar", explain = "证件类型,人员证件类型,国标代码") @TableField("certificateType") private String certificateType = ""; @FieldInfo(name = "certificateNumb", type = "varchar", explain = "证件号码") @TableField("certificateNumb") private String certificateNumb = ""; @FieldInfo(name = "nation", type = "varchar", explain = "民族") @TableField("nation") private String nation = ""; @FieldInfo(name = "certificateValidity", type = "date", explain = "证件有效期") @TableField("certificateValidity") @JsonSerialize(using = DateSerializer.class) @JsonDeserialize(using = DateDeSerializer.class) @DateTimeFormat(pattern = "yyyy-MM-dd") private Date certificateValidity; @FieldInfo(name = "marriage", type = "varchar", explain = "婚姻状况") @TableField("marriage") private String marriage = ""; @FieldInfo(name = "age", type = "tinyint", explain = "年龄") @TableField("age") private Integer age = 0; @FieldInfo(name = "stature", type = "smallint", explain = "身高") @TableField("stature") private Integer stature = 0; @FieldInfo(name = "birthdate", type = "date", explain = "出生日期") @TableField("birthdate") @JsonSerialize(using = DateSerializer.class) @JsonDeserialize(using = DateDeSerializer.class) @DateTimeFormat(pattern = "yyyy-MM-dd") private Date birthdate; @FieldInfo(name = "politics", type = "varchar", explain = "政治面貌") @TableField("politics") private String politics = ""; @FieldInfo(name = "entryDate", type = "date", explain = "入职日期") @TableField("entryDate") @JsonSerialize(using = DateSerializer.class) @JsonDeserialize(using = DateDeSerializer.class) @DateTimeFormat(pattern = "yyyy-MM-dd") private Date entryDate; @FieldInfo(name = "education", type = "varchar", explain = "最高学历") @TableField("education") private String education = ""; @FieldInfo(name = "seniority", type = "tinyint", explain = "入司工龄") @TableField("seniority") private Integer seniority = 0; @FieldInfo(name = "nativePlace", type = "varchar", explain = "籍贯") @TableField("nativePlace") private String nativePlace = ""; @FieldInfo(name = "censusAddress", type = "varchar", explain = "户籍地址") @TableField("censusAddress") private String censusAddress = ""; @FieldInfo(name = "currentAddress", type = "varchar", explain = "现住址") @TableField("currentAddress") private String currentAddress = ""; @FieldInfo(name = "guardNumb", type = "varchar", explain = "保安员证号") @TableField("guardNumb") private String guardNumb = ""; @FieldInfo(name = "telePhone", type = "varchar", explain = "电话号码") @TableField("telePhone") private String telePhone = ""; @FieldInfo(name = "returnReceipt", type = "varchar", explain = "保安员回执") @TableField("returnReceipt") private String returnReceipt = ""; @FieldInfo(name = "introducer", type = "varchar", explain = "招聘介绍人") @TableField("introducer") private String introducer = ""; @FieldInfo(name = "archivesStatus", type = "varchar", explain = "档案情况") @TableField("archivesStatus") private String archivesStatus = ""; @FieldInfo(name = "bankName", type = "varchar", explain = "银行名称") @TableField("bankName") private String bankName = ""; @FieldInfo(name = "bankNumb", type = "varchar", explain = "银行账号") @TableField("bankNumb") private String bankNumb = ""; @FieldInfo(name = "InsuranceType", type = "varchar", explain = "保险类型") @TableField("InsuranceType") private String insuranceType = ""; @FieldInfo(name = "socialNumb", type = "varchar", explain = "社保电脑号") @TableField("socialNumb") private String socialNumb = ""; @FieldInfo(name = "family", type = "varchar", explain = "家庭成员及关系") @TableField("family") private String family = ""; @FieldInfo(name = "handbookStatus", type = "varchar", explain = "员工手册") @TableField("handbookStatus") private String handbookStatus = ""; @FieldInfo(name = "urgencyPhone", type = "varchar", explain = "紧急联系电话") @TableField("urgencyPhone") private String urgencyPhone = ""; @FieldInfo(name = "empCardStatus", type = "varchar", explain = "工作证") @TableField("empCardStatus") private String empCardStatus = ""; @FieldInfo(name = "certificateList", type = "varchar", explain = "相关证件") @TableField("certificateList") private String certificateList = ""; @FieldInfo(name = "createTime", type = "datetime", explain = "记录创建时间") @TableField("createTime") @JsonSerialize(using = DateTimeSerializer.class) @JsonDeserialize(using = DateTimeDeserializer.class) @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date createTime; @FieldInfo(name = "creator", type = "varchar", explain = "记录创建人") @TableField("creator") private String creator = ""; @FieldInfo(name = "modifyTime", type = "datetime", explain = "记录最后更新时间") @TableField("modifyTime") @JsonSerialize(using = DateTimeSerializer.class) @JsonDeserialize(using = DateTimeDeserializer.class) @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date modifyTime; @FieldInfo(name = "modifier", type = "varchar", explain = "记录最后更新人") @TableField("modifier") private String modifier = ""; @FieldInfo(name = "delFlag", type = "bit", explain = "记录删除标志。0-未删除 1-已删除,默认0") @TableField("delFlag") private Integer delFlag = 0; @FieldInfo(name = "version", type = "int", explain = "记录版本号,用来进行乐观锁控制") @TableField("version") @Version private Integer version = 0; } febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/entity/EmpWorkExperience.java
New file @@ -0,0 +1,126 @@ package cc.mrbird.febs.server.hr.entity; import java.io.Serializable; import java.util.Date; import cc.mrbird.febs.common.core.annotation.FieldInfo; import cc.mrbird.febs.common.core.utils.DateDeSerializer; import cc.mrbird.febs.common.core.utils.DateSerializer; import cc.mrbird.febs.common.core.utils.DateTimeDeserializer; import cc.mrbird.febs.common.core.utils.DateTimeSerializer; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import lombok.Data; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.Version; import org.springframework.format.annotation.DateTimeFormat; /** * name:EmpWorkexperience * package:cc.mrbird.febs.server.hr.controller * description:员工工作经历数据表映射实体 * * @author luoyibo * @date 2021-01-28 12:33:31 * @since JDK1.8 */ @Data @TableName("t_emp_workExperience") public class EmpWorkExperience implements Serializable { @FieldInfo(name = "workExperienceId", type = "bigint", explain = "工作经历Id") @TableId(value = "workExperienceId") private Long workExperienceId; @FieldInfo(name = "empId", type = "bigint", explain = "员工Id") @TableField("empId") private Long empId; @FieldInfo(name = "empNumb", type = "varchar", explain = "员工编号") @TableField("empNumb") private String empNumb; @FieldInfo(name = "empName", type = "varchar", explain = "员工姓名") @TableField("empName") private String empName; @FieldInfo(name = "certificateNumb", type = "varchar", explain = "证件号码") @TableField("certificateNumb") private String certificateNumb; @FieldInfo(name = "sex", type = "varchar", explain = "性别码,使用国标性别性别码") @TableField("sex") private String sex; @FieldInfo(name = "deptId", type = "bigint", explain = "部门Id") @TableField("deptId") private Long deptId = 0L; @FieldInfo(name = "deptName", type = "varchar", explain = "部门名称") @TableField("deptName") private String deptName = ""; @FieldInfo(name = "jobId", type = "bigint", explain = "岗位Id") @TableField("jobId") private Long jobId = 0L; @FieldInfo(name = "jobName", type = "varchar", explain = "岗位名称") @TableField("jobName") private String jobName = ""; @FieldInfo(name = "workUnit", type = "varchar", explain = "工作单位") @TableField("workUnit") private String workUnit; @FieldInfo(name = "beginDate", type = "date", explain = "开始日期") @TableField("beginDate") @JsonSerialize(using = DateSerializer.class) @JsonDeserialize(using = DateDeSerializer.class) @DateTimeFormat(pattern = "yyyy-MM-dd") private Date beginDate; @FieldInfo(name = "endDate", type = "date", explain = "结束日期") @TableField("endDate") @JsonSerialize(using = DateSerializer.class) @JsonDeserialize(using = DateDeSerializer.class) @DateTimeFormat(pattern = "yyyy-MM-dd") private Date endDate; @FieldInfo(name = "jobContent", type = "varchar", explain = "主要工作内容") @TableField("jobContent") private String jobContent; @FieldInfo(name = "createTime", type = "datetime", explain = "记录创建时间") @TableField("createTime") @JsonSerialize(using = DateTimeSerializer.class) @JsonDeserialize(using = DateTimeDeserializer.class) @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date createTime; @FieldInfo(name = "creator", type = "varchar", explain = "记录创建人") @TableField("creator") private String creator; @FieldInfo(name = "modifyTime", type = "datetime", explain = "记录最后更新时间") @TableField("modifyTime") @JsonSerialize(using = DateTimeSerializer.class) @JsonDeserialize(using = DateTimeDeserializer.class) @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date modifyTime; @FieldInfo(name = "modifier", type = "varchar", explain = "记录最后更新人") @TableField("modifier") private String modifier; @FieldInfo(name = "delFlag", type = "bit", explain = "记录删除标志。0-未删除 1-已删除,默认0") @TableField("delFlag") private Integer delFlag; @FieldInfo(name = "version", type = "int", explain = "记录版本号,用来进行乐观锁控制") @TableField("version") @Version private Integer version; } febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/mapper/EmpBaseInfoMapper.java
New file @@ -0,0 +1,42 @@ package cc.mrbird.febs.server.hr.mapper; import cc.mrbird.febs.server.hr.entity.EmpBaseInfo; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Update; import java.util.List; /** * * name:EmpBaseinfo * package:cc.mrbird.febs.server.hr.controller * description:实体Mapper * * @author luoyibo * @date 2021-01-30 08:04:50 * @since JDK1.8 */ public interface EmpBaseInfoMapper extends BaseMapper<EmpBaseInfo> { /** * * 根据Id批量逻辑删除记录 * * date luoyibo * @author: 2021-01-30 08:04:50 * @param list 待删除Id * @param operatorId 操作员Id * @return void */ @Update("<script> " + " UPDATE t_emp_baseinfo SET delFlag = 1,\n" + " modifyTime = NOW(),\n" + " modifier = #{operatorId}, \n" + " version = version+1 \n" + " WHERE badId IN \n" + " <foreach item=\"delId\" collection=\"list\" open=\"(\" close=\")\" separator=\",\">\n" + " #{delId} \n" + " </foreach>\n" + "</script>") void logicDeleteByIds(@Param("list") List<String> list, @Param("operatorId") String operatorId); } febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/mapper/EmpBaseInfoMapper.xml
New file @@ -0,0 +1,5 @@ <?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="cc.mrbird.febs.server.hr.mapper.EmpBaseInfoMapper"> </mapper> febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/mapper/EmpWorkExperienceMapper.java
New file @@ -0,0 +1,41 @@ package cc.mrbird.febs.server.hr.mapper; import cc.mrbird.febs.server.hr.entity.EmpWorkExperience; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Update; import java.util.List; /** * name:EmpWorkexperience * package:cc.mrbird.febs.server.hr.controller * description:员工工作经历实体Mapper * * @author luoyibo * @date 2021-01-28 12:33:31 * @since JDK1.8 */ public interface EmpWorkExperienceMapper extends BaseMapper<EmpWorkExperience> { /** * 根据Id批量逻辑删除记录 * <p> * date luoyibo * * @param list 待删除Id * @param operatorId 操作员Id * @return void * @author: 2021-01-28 12:33:31 */ @Update("<script> " + " UPDATE t_emp_workExperience SET delFlag = 1,\n" + " modifyTime = NOW(),\n" + " modifier = #{operatorId}, \n" + " version = version+1 \n" + " WHERE workExperienceId IN \n" + " <foreach item=\"delId\" collection=\"list\" open=\"(\" close=\")\" separator=\",\">\n" + " #{delId}\n" + " </foreach>\n" + "</script>") void logicDeleteByIds(@Param("list") List<String> list, @Param("operatorId") String operatorId); } febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/IEmpBaseInfoService.java
New file @@ -0,0 +1,70 @@ package cc.mrbird.febs.server.hr.service; import cc.mrbird.febs.server.hr.entity.EmpBaseInfo; import cc.mrbird.febs.common.core.entity.QueryRequest; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; /** * * name:EmpBaseinfo * package:cc.mrbird.febs.server.hr.controller * description:服务接口 * * @author luoyibo * @date 2021-01-30 08:04:50 * @since JDK1.8 */ public interface IEmpBaseInfoService extends IService<EmpBaseInfo> { /** * 查询(分页) * * @param request QueryRequest * @param empBaseInfo empBaseinfo * @return IPage<EmpBaseinfo> */ IPage<EmpBaseInfo> findEmpBaseInfos(QueryRequest request, EmpBaseInfo empBaseInfo); /** * 查询(所有) * * @param empBaseInfo empBaseInfo * @return List<EmpBaseinfo> */ List<EmpBaseInfo> findEmpBaseInfos(EmpBaseInfo empBaseInfo); /** * 新增 * * @param empBaseInfo empBaseInfo */ void createEmpBaseInfo(EmpBaseInfo empBaseInfo); /** * 修改 * * @param empBaseInfo empBaseInfo */ void updateEmpBaseInfo(EmpBaseInfo empBaseInfo); /** * 删除 * * @param empBaseInfo empBaseInfo */ void deleteEmpBaseInfo(EmpBaseInfo empBaseInfo); /** * * 根据Id批量逻辑删除记录 * * date 2021-01-28 10:48 * @author: luoyibo * @param ids 待删除Id * @return void */ void logicDelEmpBaseInfo(String ids); } febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/IEmpWorkExperienceService.java
New file @@ -0,0 +1,69 @@ package cc.mrbird.febs.server.hr.service; import cc.mrbird.febs.server.hr.entity.EmpWorkExperience; import cc.mrbird.febs.common.core.entity.QueryRequest; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; /** * name:EmpWorkexperience * package:cc.mrbird.febs.server.hr.controller * description:员工工作经历服务接口 * * @author luoyibo * @date 2021-01-28 12:33:31 * @since JDK1.8 */ public interface IEmpWorkExperienceService extends IService<EmpWorkExperience> { /** * 查询(分页) * * @param request QueryRequest * @param empWorkexperience empWorkexperience * @return IPage<EmpWorkexperience> */ IPage<EmpWorkExperience> findEmpWorkExperiences(QueryRequest request, EmpWorkExperience empWorkexperience); /** * 查询(所有) * * @param empWorkexperience empWorkexperience * @return List<EmpWorkexperience> */ List<EmpWorkExperience> findEmpWorkExperiences(EmpWorkExperience empWorkexperience); /** * 新增 * * @param empWorkexperience empWorkexperience */ void createEmpWorkExperience(EmpWorkExperience empWorkexperience); /** * 修改 * * @param empWorkexperience empWorkexperience */ void updateEmpWorkExperience(EmpWorkExperience empWorkexperience); /** * 删除 * * @param empWorkexperience empWorkexperience */ void deleteEmpWorkExperience(EmpWorkExperience empWorkexperience); /** * 根据Id批量逻辑删除记录 * <p> * date 2021-01-28 10:48 * * @param ids 待删除Id * @return void * @author: luoyibo */ void logicDelEmpWorkExperience(String ids); } febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/impl/EmpBaseInfoServiceImpl.java
New file @@ -0,0 +1,102 @@ package cc.mrbird.febs.server.hr.service.impl; import cc.mrbird.febs.common.core.constant.ModuleCode; import cc.mrbird.febs.server.hr.entity.EmpBaseInfo; import cc.mrbird.febs.server.hr.mapper.EmpBaseInfoMapper; import cc.mrbird.febs.server.hr.service.IEmpBaseInfoService; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Propagation; import lombok.RequiredArgsConstructor; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import cc.mrbird.febs.common.core.entity.QueryRequest; import cc.mrbird.febs.common.core.utils.FebsUtil; import cc.mrbird.febs.common.core.utils.SequenceUtil; import java.util.*; /** * name:EmpBaseinfo * package:cc.mrbird.febs.server.hr.controller * description:员工基本信息服务接口实现 * * @author luoyibo * @date 2021-01-30 08:04:50 * @since JDK1.8 */ @Service @RequiredArgsConstructor @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) class EmpBaseInfoServiceImpl extends ServiceImpl<EmpBaseInfoMapper, EmpBaseInfo> implements IEmpBaseInfoService { private final EmpBaseInfoMapper empBaseInfoMapper; private final String operatorId = Optional.ofNullable(FebsUtil.getCurrentUser()) .map(u -> u.getUserId().toString()) .orElse("1"); @Override public IPage<EmpBaseInfo> findEmpBaseInfos(QueryRequest request, EmpBaseInfo empBaseInfo) { LambdaQueryWrapper<EmpBaseInfo> queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(EmpBaseInfo::getDelFlag, 0); Page<EmpBaseInfo> page = new Page<>(request.getPageNum(), request.getPageSize()); return this.page(page, queryWrapper); } @Override public List<EmpBaseInfo> findEmpBaseInfos(EmpBaseInfo empBaseInfo) { LambdaQueryWrapper<EmpBaseInfo> queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(EmpBaseInfo::getDelFlag, 0); return this.baseMapper.selectList(queryWrapper); } @Override @Transactional(rollbackFor = Exception.class) public void createEmpBaseInfo(EmpBaseInfo empBaseInfo) { empBaseInfo.setEmpId(SequenceUtil.generateId(0L, ModuleCode.HR_EMPLOYEE)); empBaseInfo.setDeptId(1L); empBaseInfo.setJobId(1L); empBaseInfo.setCreator(operatorId); empBaseInfo.setModifier(operatorId); this.save(empBaseInfo); } @Override @Transactional(rollbackFor = Exception.class) public void updateEmpBaseInfo(EmpBaseInfo empBaseInfo) { EmpBaseInfo dbData = this.getById(empBaseInfo.getEmpId()); empBaseInfo.setCreateTime(dbData.getCreateTime()); empBaseInfo.setCreator(dbData.getCreator()); empBaseInfo.setDelFlag(dbData.getDelFlag()); empBaseInfo.setModifyTime(new Date()); empBaseInfo.setModifier(operatorId); this.saveOrUpdate(empBaseInfo); } @Override @Transactional(rollbackFor = Exception.class) public void deleteEmpBaseInfo(EmpBaseInfo empBaseInfo) { LambdaQueryWrapper<EmpBaseInfo> wrapper = new LambdaQueryWrapper<>(); // TODO 设置删除条件 this.remove(wrapper); } /** * 根据Id批量逻辑删除记录 * <p> * date 2021-01-28 10:48 * * @param ids 待删除Id * @return void * @author: luoyibo */ @Override @Transactional(rollbackFor = Exception.class) public void logicDelEmpBaseInfo(String ids) { String[] str = ids.split(","); List<String> list = new ArrayList<>(Arrays.asList(str)); empBaseInfoMapper.logicDeleteByIds(list, operatorId); } } febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/impl/EmpWorkExperienceServiceImpl.java
New file @@ -0,0 +1,103 @@ package cc.mrbird.febs.server.hr.service.impl; import cc.mrbird.febs.common.core.constant.ModuleCode; import cc.mrbird.febs.common.core.utils.FebsUtil; import cc.mrbird.febs.common.core.utils.SequenceUtil; import cc.mrbird.febs.server.hr.entity.EmpWorkExperience; import cc.mrbird.febs.server.hr.mapper.EmpWorkExperienceMapper; import cc.mrbird.febs.server.hr.service.IEmpWorkExperienceService; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Propagation; import lombok.RequiredArgsConstructor; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import cc.mrbird.febs.common.core.entity.QueryRequest; import java.util.*; /** * name:EmpWorkexperience * package:cc.mrbird.febs.server.hr.controller * description:员工工作经历服务接口实现 * * @author luoyibo * @date 2021-01-28 12:33:31 * @since JDK1.8 */ @Service @RequiredArgsConstructor @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) class EmpWorkExperienceServiceImpl extends ServiceImpl<EmpWorkExperienceMapper, EmpWorkExperience> implements IEmpWorkExperienceService { private final EmpWorkExperienceMapper empWorkexperienceMapper; private final String operatorId = Optional.ofNullable(FebsUtil.getCurrentUser()) .map(u -> u.getUserId().toString()) .orElse("1"); @Override public IPage<EmpWorkExperience> findEmpWorkExperiences(QueryRequest request, EmpWorkExperience empWorkexperience) { LambdaQueryWrapper<EmpWorkExperience> queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(EmpWorkExperience::getDelFlag, 0); Page<EmpWorkExperience> page = new Page<>(request.getPageNum(), request.getPageSize()); return this.page(page, queryWrapper); } @Override public List<EmpWorkExperience> findEmpWorkExperiences(EmpWorkExperience empWorkexperience) { LambdaQueryWrapper<EmpWorkExperience> queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(EmpWorkExperience::getDelFlag, 0); return this.baseMapper.selectList(queryWrapper); } @Override @Transactional(rollbackFor = Exception.class) public void createEmpWorkExperience(EmpWorkExperience empWorkexperience) { empWorkexperience.setWorkExperienceId(SequenceUtil.generateId(0L, ModuleCode.HR_EMPLOYEE)); empWorkexperience.setDeptId(1L); empWorkexperience.setJobId(1L); empWorkexperience.setCreator(operatorId); empWorkexperience.setModifier(operatorId); this.save(empWorkexperience); } @Override @Transactional(rollbackFor = Exception.class) public void updateEmpWorkExperience(EmpWorkExperience empWorkexperience) { EmpWorkExperience dbData = this.getById(empWorkexperience.getWorkExperienceId()); empWorkexperience.setCreateTime(dbData.getCreateTime()); empWorkexperience.setCreator(dbData.getCreator()); empWorkexperience.setDelFlag(dbData.getDelFlag()); empWorkexperience.setModifyTime(new Date()); empWorkexperience.setModifier(operatorId); this.saveOrUpdate(empWorkexperience); } @Override @Transactional(rollbackFor = Exception.class) public void deleteEmpWorkExperience(EmpWorkExperience empWorkexperience) { LambdaQueryWrapper<EmpWorkExperience> wapper = new LambdaQueryWrapper<>(); // TODO 设置删除条件 this.remove(wapper); } /** * 根据Id批量逻辑删除记录 * <p> * date 2021-01-28 10:48 * * @param ids 待删除Id * @return void * @author: luoyibo */ @Override @Transactional(rollbackFor = Exception.class) public void logicDelEmpWorkExperience(String ids) { List<String> list = new ArrayList<>(); String[] str = ids.split(","); list.addAll(Arrays.asList(str)); empWorkexperienceMapper.logicDeleteByIds(list, operatorId); } }