febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/controller/EmpWorkExperienceController.java
@@ -54,6 +54,7 @@ Map<String, Object> dataTable = FebsUtil.getDataTable(this.empWorkExperienceService.findEmpWorkExperiences(request, empWorkexperience)); return new FebsResponse().data(dataTable); } @ApiOperation(value = "导出员工") @RequestMapping(value = "export",method= RequestMethod.POST) @ControllerEndpoint(operation = "导出用户数据", exceptionMessage = "导出Excel失败") @@ -63,13 +64,14 @@ List<EmpWorkExperience> records = this.empWorkExperienceService.findEmpWorkExperiences(request, empBaseinfo).getRecords(); ExcelKit.$Export(EmpWorkExperience.class, response).downXlsx(records, false); } @PostMapping @PreAuthorize("hasAuthority('empWorkexperience:add')") public void addEmpWorkExperience(@Valid EmpWorkExperience empWorkexperience) throws FebsException { try { this.empWorkExperienceService.createEmpWorkExperience(empWorkexperience); } catch (Exception e) { String message = "新增员工工作经历失败"; String message = "新增员工工作经历失败 "+e.getMessage(); log.error(message, e); throw new FebsException(message); } febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/entity/EmpBaseInfo.java
@@ -59,13 +59,13 @@ private String deptName = ""; @NotBlank(message = "{required}") @FieldInfo(name = "empNumb", type = "varchar", explain = "员工编号") @FieldInfo(name = "empNumb", type = "varchar", explain = "编号") @TableField("empNumb") @ExcelField(value = "员工编号") private String empNumb = ""; @NotBlank(message = "{required}") @FieldInfo(name = "empName", type = "varchar", explain = "员姓名") @FieldInfo(name = "empName", type = "varchar", explain = "姓名") @TableField("empName") @ExcelField(value = "员工姓名") private String empName = ""; @@ -103,7 +103,7 @@ @TableField("certificateType") private String certificateType = ""; @FieldInfo(name = "certificateNumb", type = "varchar", explain = "证件号码") @FieldInfo(name = "certificateNumb", type = "varchar", explain = "身份证号码") @TableField("certificateNumb") @ExcelField(value = "证件号码") private String certificateNumb = ""; @@ -117,7 +117,7 @@ @ExcelField(value = "民族") private String nationName = ""; @FieldInfo(name = "certificateValidity", type = "date", explain = "证件有效期") @FieldInfo(name = "certificateValidity", type = "date", explain = "身份证有效期") @TableField("certificateValidity") @JsonSerialize(using = DateSerializer.class) @JsonDeserialize(using = DateDeSerializer.class) @@ -181,7 +181,7 @@ @TableField("education") private String education = ""; @FieldInfo(name = "educationName", type = "varchar", explain = "学历") @FieldInfo(name = "educationName", type = "varchar", explain = "最高学历") @TableField(exist = false) @ExcelField(value = "最高学历") private String educationName = ""; febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/IEmpWorkExperienceService.java
@@ -1,5 +1,6 @@ package cc.mrbird.febs.server.hr.service; import cc.mrbird.febs.common.core.exception.FebsException; import cc.mrbird.febs.server.hr.entity.EmpWorkExperience; import cc.mrbird.febs.common.core.entity.QueryRequest; @@ -40,7 +41,7 @@ * * @param empWorkexperience empWorkexperience */ void createEmpWorkExperience(EmpWorkExperience empWorkexperience); void createEmpWorkExperience(EmpWorkExperience empWorkexperience) throws FebsException; /** * 修改 febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/impl/EmpWorkExperienceServiceImpl.java
@@ -2,6 +2,7 @@ import cc.mrbird.febs.common.core.constant.ModuleCode; import cc.mrbird.febs.common.core.entity.system.Dept; import cc.mrbird.febs.common.core.exception.FebsException; import cc.mrbird.febs.common.core.utils.CastUtil; import cc.mrbird.febs.common.core.utils.FebsUtil; import cc.mrbird.febs.common.core.utils.SequenceUtil; @@ -93,21 +94,24 @@ @Override @Transactional(rollbackFor = Exception.class) public void createEmpWorkExperience(EmpWorkExperience empWorkexperience) { public void createEmpWorkExperience(EmpWorkExperience empWorkexperience) throws FebsException { String operatorId = Optional.ofNullable(FebsUtil.getCurrentUser()) .map(u -> u.getUserId().toString()) .orElse("1"); if(!checkRepetitiveData(empWorkexperience)) { empWorkexperience.setWorkExperienceId(SequenceUtil.generateId(0L, ModuleCode.HR_EMPLOYEE)); empWorkexperience.setCreator(operatorId); empWorkexperience.setModifier(operatorId); this.save(empWorkexperience); } else { throw new FebsException("已存在此工作经历"); } } @Override @Transactional(rollbackFor = Exception.class) public void updateEmpWorkExperience(EmpWorkExperience empWorkexperience) { String operatorId = Optional.ofNullable(FebsUtil.getCurrentUser()) .map(u -> u.getUserId().toString()) String operatorId = Optional.of(FebsUtil.getUserId()) .orElse("1"); EmpWorkExperience dbData = this.getById(empWorkexperience.getWorkExperienceId()); empWorkexperience.setCreateTime(dbData.getCreateTime()); @@ -197,4 +201,13 @@ this.save(workExperience); } } private boolean checkRepetitiveData(EmpWorkExperience empWorkExperience){ LambdaQueryWrapper<EmpWorkExperience> queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(EmpWorkExperience::getDelFlag,empWorkExperience.getDelFlag()); queryWrapper.eq(EmpWorkExperience::getCertificateNumb, empWorkExperience.getCertificateNumb()); queryWrapper.eq(EmpWorkExperience::getBeginDate,empWorkExperience.getBeginDate()); return this.list(queryWrapper).size()>0; } }