diff --git a/klp-perf/src/main/java/com/klp/perf/controller/PerfEmployeeInfoController.java b/klp-perf/src/main/java/com/klp/perf/controller/PerfEmployeeInfoController.java deleted file mode 100644 index 5d18464cc..000000000 --- a/klp-perf/src/main/java/com/klp/perf/controller/PerfEmployeeInfoController.java +++ /dev/null @@ -1,99 +0,0 @@ -package com.klp.perf.controller; - -import java.util.List; -import java.util.Arrays; - -import lombok.RequiredArgsConstructor; -import javax.servlet.http.HttpServletResponse; -import javax.validation.constraints.*; -import org.springframework.web.bind.annotation.*; -import org.springframework.validation.annotation.Validated; -import com.klp.common.annotation.RepeatSubmit; -import com.klp.common.annotation.Log; -import com.klp.common.core.controller.BaseController; -import com.klp.common.core.domain.PageQuery; -import com.klp.common.core.domain.R; -import com.klp.common.core.validate.AddGroup; -import com.klp.common.core.validate.EditGroup; -import com.klp.common.enums.BusinessType; -import com.klp.common.utils.poi.ExcelUtil; -import com.klp.perf.domain.vo.PerfEmployeeInfoVo; -import com.klp.perf.domain.bo.PerfEmployeeInfoBo; -import com.klp.perf.service.IPerfEmployeeInfoService; -import com.klp.common.core.page.TableDataInfo; - -/** - * 员工绩效薪资基本信息 - * - * @author klp - * @date 2026-07-07 - */ -@Validated -@RequiredArgsConstructor -@RestController -@RequestMapping("/perf/employeeInfo") -public class PerfEmployeeInfoController extends BaseController { - - private final IPerfEmployeeInfoService iPerfEmployeeInfoService; - - /** - * 查询员工绩效薪资基本信息列表 - */ - @GetMapping("/list") - public TableDataInfo list(PerfEmployeeInfoBo bo, PageQuery pageQuery) { - return iPerfEmployeeInfoService.queryPageList(bo, pageQuery); - } - - /** - * 导出员工绩效薪资基本信息列表 - */ - @Log(title = "员工绩效薪资基本信息", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(PerfEmployeeInfoBo bo, HttpServletResponse response) { - List list = iPerfEmployeeInfoService.queryList(bo); - ExcelUtil.exportExcel(list, "员工绩效薪资基本信息", PerfEmployeeInfoVo.class, response); - } - - /** - * 获取员工绩效薪资基本信息详细信息 - * - * @param id 主键 - */ - @GetMapping("/{id}") - public R getInfo(@NotNull(message = "主键不能为空") - @PathVariable Long id) { - return R.ok(iPerfEmployeeInfoService.queryById(id)); - } - - /** - * 新增员工绩效薪资基本信息 - */ - @Log(title = "员工绩效薪资基本信息", businessType = BusinessType.INSERT) - @RepeatSubmit() - @PostMapping() - public R add(@Validated(AddGroup.class) @RequestBody PerfEmployeeInfoBo bo) { - return toAjax(iPerfEmployeeInfoService.insertByBo(bo)); - } - - /** - * 修改员工绩效薪资基本信息 - */ - @Log(title = "员工绩效薪资基本信息", businessType = BusinessType.UPDATE) - @RepeatSubmit() - @PutMapping() - public R edit(@Validated(EditGroup.class) @RequestBody PerfEmployeeInfoBo bo) { - return toAjax(iPerfEmployeeInfoService.updateByBo(bo)); - } - - /** - * 删除员工绩效薪资基本信息 - * - * @param ids 主键串 - */ - @Log(title = "员工绩效薪资基本信息", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public R remove(@NotEmpty(message = "主键不能为空") - @PathVariable Long[] ids) { - return toAjax(iPerfEmployeeInfoService.deleteWithValidByIds(Arrays.asList(ids), true)); - } -} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/PerfEmployeeInfo.java b/klp-perf/src/main/java/com/klp/perf/domain/PerfEmployeeInfo.java deleted file mode 100644 index 64d05d1f7..000000000 --- a/klp-perf/src/main/java/com/klp/perf/domain/PerfEmployeeInfo.java +++ /dev/null @@ -1,66 +0,0 @@ -package com.klp.perf.domain; - -import com.baomidou.mybatisplus.annotation.*; -import com.klp.common.core.domain.BaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; - -import java.math.BigDecimal; - -/** - * 员工绩效薪资基本信息对象 perf_employee_info - * - * @author klp - * @date 2026-07-07 - */ -@Data -@EqualsAndHashCode(callSuper = true) -@TableName("perf_employee_info") -public class PerfEmployeeInfo extends BaseEntity { - - private static final long serialVersionUID=1L; - - /** - * - */ - @TableId(value = "id") - private Long id; - /** - * 关联现有员工表主键 - */ - private Long employeeId; - /** - * 关联 perf_dept.id (冗余,便于按部门查询) - */ - private Long deptId; - /** - * 岗位/工种 - */ - private String positionName; - /** - * 底薪(元) - */ - private BigDecimal baseSalary; - /** - * 岗位绩效基数(元), 默认≈底薪×20% - */ - private BigDecimal perfBase; - /** - * 默认岗位系数(初始值,后续月度由绩效自动覆盖) - */ - private BigDecimal posCoeffDefault; - /** - * 是否在职 1=在职 0=离职 - */ - private Long isActive; - /** - * 删除标志(0=正常,1=已删除) - */ - @TableLogic - private Integer delFlag; - /** - * 备注 - */ - private String remark; - -} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfEmployeeInfoBo.java b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfEmployeeInfoBo.java deleted file mode 100644 index ed01261b7..000000000 --- a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfEmployeeInfoBo.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.klp.perf.domain.bo; - -import com.klp.common.core.domain.BaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import javax.validation.constraints.*; - -import java.math.BigDecimal; - -/** - * 员工绩效薪资基本信息业务对象 perf_employee_info - * - * @author klp - * @date 2026-07-07 - */ - -@Data -@EqualsAndHashCode(callSuper = true) -public class PerfEmployeeInfoBo extends BaseEntity { - - /** - * - */ - private Long id; - - /** - * 关联现有员工表主键 - */ - private Long employeeId; - - /** - * 关联 perf_dept.id (冗余,便于按部门查询) - */ - private Long deptId; - - /** - * 岗位/工种 - */ - private String positionName; - - /** - * 底薪(元) - */ - private BigDecimal baseSalary; - - /** - * 岗位绩效基数(元), 默认≈底薪×20% - */ - private BigDecimal perfBase; - - /** - * 默认岗位系数(初始值,后续月度由绩效自动覆盖) - */ - private BigDecimal posCoeffDefault; - - /** - * 是否在职 1=在职 0=离职 - */ - private Long isActive; - - /** - * 备注 - */ - private String remark; - - -} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfEmployeeInfoVo.java b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfEmployeeInfoVo.java deleted file mode 100644 index 86aa50faa..000000000 --- a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfEmployeeInfoVo.java +++ /dev/null @@ -1,78 +0,0 @@ -package com.klp.perf.domain.vo; - -import java.math.BigDecimal; -import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; -import com.alibaba.excel.annotation.ExcelProperty; -import com.klp.common.annotation.ExcelDictFormat; -import com.klp.common.convert.ExcelDictConvert; -import lombok.Data; - - -/** - * 员工绩效薪资基本信息视图对象 perf_employee_info - * - * @author klp - * @date 2026-07-07 - */ -@Data -@ExcelIgnoreUnannotated -public class PerfEmployeeInfoVo { - - private static final long serialVersionUID = 1L; - - /** - * - */ - @ExcelProperty(value = "") - private Long id; - - /** - * 关联现有员工表主键 - */ - @ExcelProperty(value = "关联现有员工表主键") - private Long employeeId; - - /** - * 关联 perf_dept.id (冗余,便于按部门查询) - */ - @ExcelProperty(value = "关联 perf_dept.id (冗余,便于按部门查询)") - private Long deptId; - - /** - * 岗位/工种 - */ - @ExcelProperty(value = "岗位/工种") - private String positionName; - - /** - * 底薪(元) - */ - @ExcelProperty(value = "底薪(元)") - private BigDecimal baseSalary; - - /** - * 岗位绩效基数(元), 默认≈底薪×20% - */ - @ExcelProperty(value = "岗位绩效基数(元), 默认≈底薪×20%") - private BigDecimal perfBase; - - /** - * 默认岗位系数(初始值,后续月度由绩效自动覆盖) - */ - @ExcelProperty(value = "默认岗位系数(初始值,后续月度由绩效自动覆盖)") - private BigDecimal posCoeffDefault; - - /** - * 是否在职 1=在职 0=离职 - */ - @ExcelProperty(value = "是否在职 1=在职 0=离职") - private Long isActive; - - /** - * 备注 - */ - @ExcelProperty(value = "备注") - private String remark; - - -} diff --git a/klp-perf/src/main/java/com/klp/perf/mapper/PerfEmployeeInfoMapper.java b/klp-perf/src/main/java/com/klp/perf/mapper/PerfEmployeeInfoMapper.java deleted file mode 100644 index df9a2467e..000000000 --- a/klp-perf/src/main/java/com/klp/perf/mapper/PerfEmployeeInfoMapper.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.klp.perf.mapper; - -import com.klp.perf.domain.PerfEmployeeInfo; -import com.klp.perf.domain.vo.PerfEmployeeInfoVo; -import com.klp.common.core.mapper.BaseMapperPlus; - -/** - * 员工绩效薪资基本信息Mapper接口 - * - * @author klp - * @date 2026-07-07 - */ -public interface PerfEmployeeInfoMapper extends BaseMapperPlus { - -} diff --git a/klp-perf/src/main/java/com/klp/perf/service/IPerfEmployeeInfoService.java b/klp-perf/src/main/java/com/klp/perf/service/IPerfEmployeeInfoService.java deleted file mode 100644 index 9c76f822c..000000000 --- a/klp-perf/src/main/java/com/klp/perf/service/IPerfEmployeeInfoService.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.klp.perf.service; - -import com.klp.perf.domain.PerfEmployeeInfo; -import com.klp.perf.domain.vo.PerfEmployeeInfoVo; -import com.klp.perf.domain.bo.PerfEmployeeInfoBo; -import com.klp.common.core.page.TableDataInfo; -import com.klp.common.core.domain.PageQuery; - -import java.util.Collection; -import java.util.List; - -/** - * 员工绩效薪资基本信息Service接口 - * - * @author klp - * @date 2026-07-07 - */ -public interface IPerfEmployeeInfoService { - - /** - * 查询员工绩效薪资基本信息 - */ - PerfEmployeeInfoVo queryById(Long id); - - /** - * 查询员工绩效薪资基本信息列表 - */ - TableDataInfo queryPageList(PerfEmployeeInfoBo bo, PageQuery pageQuery); - - /** - * 查询员工绩效薪资基本信息列表 - */ - List queryList(PerfEmployeeInfoBo bo); - - /** - * 新增员工绩效薪资基本信息 - */ - Boolean insertByBo(PerfEmployeeInfoBo bo); - - /** - * 修改员工绩效薪资基本信息 - */ - Boolean updateByBo(PerfEmployeeInfoBo bo); - - /** - * 校验并批量删除员工绩效薪资基本信息信息 - */ - Boolean deleteWithValidByIds(Collection ids, Boolean isValid); -} diff --git a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfEmployeeInfoServiceImpl.java b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfEmployeeInfoServiceImpl.java deleted file mode 100644 index 58ce5e835..000000000 --- a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfEmployeeInfoServiceImpl.java +++ /dev/null @@ -1,115 +0,0 @@ -package com.klp.perf.service.impl; - -import cn.hutool.core.bean.BeanUtil; -import com.klp.common.core.page.TableDataInfo; -import com.klp.common.core.domain.PageQuery; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; -import com.klp.common.utils.StringUtils; -import lombok.RequiredArgsConstructor; -import org.springframework.stereotype.Service; -import com.klp.perf.domain.bo.PerfEmployeeInfoBo; -import com.klp.perf.domain.vo.PerfEmployeeInfoVo; -import com.klp.perf.domain.PerfEmployeeInfo; -import com.klp.perf.mapper.PerfEmployeeInfoMapper; -import com.klp.perf.service.IPerfEmployeeInfoService; - -import java.util.List; -import java.util.Map; -import java.util.Collection; - -/** - * 员工绩效薪资基本信息Service业务层处理 - * - * @author klp - * @date 2026-07-07 - */ -@RequiredArgsConstructor -@Service -public class PerfEmployeeInfoServiceImpl implements IPerfEmployeeInfoService { - - private final PerfEmployeeInfoMapper baseMapper; - - /** - * 查询员工绩效薪资基本信息 - */ - @Override - public PerfEmployeeInfoVo queryById(Long id){ - return baseMapper.selectVoById(id); - } - - /** - * 查询员工绩效薪资基本信息列表 - */ - @Override - public TableDataInfo queryPageList(PerfEmployeeInfoBo bo, PageQuery pageQuery) { - LambdaQueryWrapper lqw = buildQueryWrapper(bo); - Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); - return TableDataInfo.build(result); - } - - /** - * 查询员工绩效薪资基本信息列表 - */ - @Override - public List queryList(PerfEmployeeInfoBo bo) { - LambdaQueryWrapper lqw = buildQueryWrapper(bo); - return baseMapper.selectVoList(lqw); - } - - private LambdaQueryWrapper buildQueryWrapper(PerfEmployeeInfoBo bo) { - Map params = bo.getParams(); - LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); - lqw.eq(bo.getEmployeeId() != null, PerfEmployeeInfo::getEmployeeId, bo.getEmployeeId()); - lqw.eq(bo.getDeptId() != null, PerfEmployeeInfo::getDeptId, bo.getDeptId()); - lqw.like(StringUtils.isNotBlank(bo.getPositionName()), PerfEmployeeInfo::getPositionName, bo.getPositionName()); - lqw.eq(bo.getBaseSalary() != null, PerfEmployeeInfo::getBaseSalary, bo.getBaseSalary()); - lqw.eq(bo.getPerfBase() != null, PerfEmployeeInfo::getPerfBase, bo.getPerfBase()); - lqw.eq(bo.getPosCoeffDefault() != null, PerfEmployeeInfo::getPosCoeffDefault, bo.getPosCoeffDefault()); - lqw.eq(bo.getIsActive() != null, PerfEmployeeInfo::getIsActive, bo.getIsActive()); - return lqw; - } - - /** - * 新增员工绩效薪资基本信息 - */ - @Override - public Boolean insertByBo(PerfEmployeeInfoBo bo) { - PerfEmployeeInfo add = BeanUtil.toBean(bo, PerfEmployeeInfo.class); - validEntityBeforeSave(add); - boolean flag = baseMapper.insert(add) > 0; - if (flag) { - bo.setId(add.getId()); - } - return flag; - } - - /** - * 修改员工绩效薪资基本信息 - */ - @Override - public Boolean updateByBo(PerfEmployeeInfoBo bo) { - PerfEmployeeInfo update = BeanUtil.toBean(bo, PerfEmployeeInfo.class); - validEntityBeforeSave(update); - return baseMapper.updateById(update) > 0; - } - - /** - * 保存前的数据校验 - */ - private void validEntityBeforeSave(PerfEmployeeInfo entity){ - //TODO 做一些数据校验,如唯一约束 - } - - /** - * 批量删除员工绩效薪资基本信息 - */ - @Override - public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { - if(isValid){ - //TODO 做一些业务上的校验,判断是否需要校验 - } - return baseMapper.deleteBatchIds(ids) > 0; - } -} diff --git a/klp-perf/src/main/resources/mapper/perf/PerfEmployeeInfoMapper.xml b/klp-perf/src/main/resources/mapper/perf/PerfEmployeeInfoMapper.xml deleted file mode 100644 index 17bb24965..000000000 --- a/klp-perf/src/main/resources/mapper/perf/PerfEmployeeInfoMapper.xml +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - diff --git a/klp-wms/src/main/java/com/klp/domain/WmsEmployeeInfo.java b/klp-wms/src/main/java/com/klp/domain/WmsEmployeeInfo.java index 4875d1859..8d4e35d75 100644 --- a/klp-wms/src/main/java/com/klp/domain/WmsEmployeeInfo.java +++ b/klp-wms/src/main/java/com/klp/domain/WmsEmployeeInfo.java @@ -6,6 +6,7 @@ import lombok.Data; import lombok.EqualsAndHashCode; import java.util.Date; +import java.math.BigDecimal; import com.fasterxml.jackson.annotation.JsonFormat; /** @@ -86,6 +87,18 @@ public class WmsEmployeeInfo extends BaseEntity { * 社保类型(三险/五险) */ private String socialInsuranceType; + /** + * 底薪(元) + */ + private BigDecimal baseSalary; + /** + * 岗位绩效基数(元), 默认≈底薪×20% + */ + private BigDecimal perfBase; + /** + * 默认岗位系数(初始值,后续月度由绩效自动覆盖) + */ + private BigDecimal posCoeffDefault; /** * 逻辑删除标识:0=正常,1=已删 */ diff --git a/klp-wms/src/main/java/com/klp/domain/bo/WmsEmployeeInfoBo.java b/klp-wms/src/main/java/com/klp/domain/bo/WmsEmployeeInfoBo.java index bd259c6c6..2e8fc3f83 100644 --- a/klp-wms/src/main/java/com/klp/domain/bo/WmsEmployeeInfoBo.java +++ b/klp-wms/src/main/java/com/klp/domain/bo/WmsEmployeeInfoBo.java @@ -6,6 +6,7 @@ import lombok.EqualsAndHashCode; import javax.validation.constraints.*; import java.util.Date; +import java.math.BigDecimal; import com.fasterxml.jackson.annotation.JsonFormat; import org.springframework.format.annotation.DateTimeFormat; @@ -114,6 +115,21 @@ public class WmsEmployeeInfoBo extends BaseEntity { */ private String socialInsuranceType; + /** + * 底薪(元) + */ + private BigDecimal baseSalary; + + /** + * 岗位绩效基数(元), 默认≈底薪×20% + */ + private BigDecimal perfBase; + + /** + * 默认岗位系数(初始值,后续月度由绩效自动覆盖) + */ + private BigDecimal posCoeffDefault; + /** * 备注 */ diff --git a/klp-wms/src/main/java/com/klp/domain/vo/WmsEmployeeInfoVo.java b/klp-wms/src/main/java/com/klp/domain/vo/WmsEmployeeInfoVo.java index 392141374..2ef6e4685 100644 --- a/klp-wms/src/main/java/com/klp/domain/vo/WmsEmployeeInfoVo.java +++ b/klp-wms/src/main/java/com/klp/domain/vo/WmsEmployeeInfoVo.java @@ -1,6 +1,7 @@ package com.klp.domain.vo; import java.util.Date; +import java.math.BigDecimal; import com.fasterxml.jackson.annotation.JsonFormat; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; @@ -117,6 +118,24 @@ public class WmsEmployeeInfoVo { */ private String socialInsuranceType; + /** + * 底薪(元) + */ + @ExcelProperty(value = "底薪(元)") + private BigDecimal baseSalary; + + /** + * 岗位绩效基数(元), 默认≈底薪×20% + */ + @ExcelProperty(value = "岗位绩效基数(元)") + private BigDecimal perfBase; + + /** + * 默认岗位系数(初始值,后续月度由绩效自动覆盖) + */ + @ExcelProperty(value = "默认岗位系数") + private BigDecimal posCoeffDefault; + /** * 备注 */ diff --git a/klp-wms/src/main/java/com/klp/service/impl/WmsEmployeeInfoServiceImpl.java b/klp-wms/src/main/java/com/klp/service/impl/WmsEmployeeInfoServiceImpl.java index b7f5c8521..bca353ae4 100644 --- a/klp-wms/src/main/java/com/klp/service/impl/WmsEmployeeInfoServiceImpl.java +++ b/klp-wms/src/main/java/com/klp/service/impl/WmsEmployeeInfoServiceImpl.java @@ -81,6 +81,9 @@ public class WmsEmployeeInfoServiceImpl implements IWmsEmployeeInfoService { lqw.eq(StringUtils.isNotBlank(bo.getRelationship()), WmsEmployeeInfo::getRelationship, bo.getRelationship()); lqw.eq(StringUtils.isNotBlank(bo.getEmergencyContactPhone()), WmsEmployeeInfo::getEmergencyContactPhone, bo.getEmergencyContactPhone()); lqw.eq(StringUtils.isNotBlank(bo.getSocialInsuranceType()), WmsEmployeeInfo::getSocialInsuranceType, bo.getSocialInsuranceType()); + lqw.eq(bo.getBaseSalary() != null, WmsEmployeeInfo::getBaseSalary, bo.getBaseSalary()); + lqw.eq(bo.getPerfBase() != null, WmsEmployeeInfo::getPerfBase, bo.getPerfBase()); + lqw.eq(bo.getPosCoeffDefault() != null, WmsEmployeeInfo::getPosCoeffDefault, bo.getPosCoeffDefault()); // 是否离职 lqw.eq(bo.getIsLeave() != null, WmsEmployeeInfo::getIsLeave, bo.getIsLeave()); // 离职时间范围查询 diff --git a/klp-wms/src/main/resources/mapper/klp/WmsEmployeeInfoMapper.xml b/klp-wms/src/main/resources/mapper/klp/WmsEmployeeInfoMapper.xml index 305120f13..b5c66a4c6 100644 --- a/klp-wms/src/main/resources/mapper/klp/WmsEmployeeInfoMapper.xml +++ b/klp-wms/src/main/resources/mapper/klp/WmsEmployeeInfoMapper.xml @@ -21,6 +21,9 @@ + + +