劳动合同模块状态更新及查询优化- 更新劳动合同状态的枚举定义,以支持新的状态流程。
- 在LaborContractService中添加方法updateLaborContractList,以批量更新合同状态。 - 扩展LaborContractServiceImpl,实现新的状态更新逻辑及合同到期查询功能。 -调整数据对象LaborContractDO,以反映状态变更。 此更改支持劳动合同模块的新业务需求,即支持额外的状态并优化状态管理流程。
This commit is contained in:
parent
0a460e76ee
commit
247a809ce4
@ -55,7 +55,7 @@ public class LaborContractDO extends BaseDO {
|
|||||||
*/
|
*/
|
||||||
private Integer probationPeriodTime;
|
private Integer probationPeriodTime;
|
||||||
/**
|
/**
|
||||||
* 状态 0待签 1已签 2过期
|
* 状态 0待签 2过期 3已签 4离职
|
||||||
*/
|
*/
|
||||||
private Integer status;
|
private Integer status;
|
||||||
/**
|
/**
|
||||||
|
@ -7,6 +7,7 @@ import cn.iocoder.yudao.module.system.controller.admin.laborcontract.vo.LaborCon
|
|||||||
import cn.iocoder.yudao.module.system.dal.dataobject.laborcontract.LaborContractDO;
|
import cn.iocoder.yudao.module.system.dal.dataobject.laborcontract.LaborContractDO;
|
||||||
|
|
||||||
import javax.validation.Valid;
|
import javax.validation.Valid;
|
||||||
|
import java.time.LocalDate;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -31,6 +32,13 @@ public interface LaborContractService {
|
|||||||
*/
|
*/
|
||||||
void updateLaborContract(@Valid LaborContractSaveReqVO updateReqVO);
|
void updateLaborContract(@Valid LaborContractSaveReqVO updateReqVO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量更新合同状态
|
||||||
|
* @param ids 主键列表
|
||||||
|
* @param status 状态
|
||||||
|
*/
|
||||||
|
void updateLaborContractList(List<Long> ids, Integer status);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 删除劳动合同管理
|
* 删除劳动合同管理
|
||||||
*
|
*
|
||||||
@ -67,4 +75,13 @@ public interface LaborContractService {
|
|||||||
* @return 签约信息列表
|
* @return 签约信息列表
|
||||||
*/
|
*/
|
||||||
List<LaborContractDO> getListByUserIds(List<Long> userIds);
|
List<LaborContractDO> getListByUserIds(List<Long> userIds);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获得 到期日期小于指定日期的合同列表
|
||||||
|
* @param now 日期
|
||||||
|
* @return 合同列表
|
||||||
|
*/
|
||||||
|
List<LaborContractDO> getListByEndTime(LocalDate now);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
@ -2,6 +2,7 @@ package cn.iocoder.yudao.module.system.service.laborcontract;
|
|||||||
|
|
||||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||||
|
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||||
import cn.iocoder.yudao.module.system.controller.admin.laborcontract.vo.LaborContractPageReqVO;
|
import cn.iocoder.yudao.module.system.controller.admin.laborcontract.vo.LaborContractPageReqVO;
|
||||||
import cn.iocoder.yudao.module.system.controller.admin.laborcontract.vo.LaborContractRespVO;
|
import cn.iocoder.yudao.module.system.controller.admin.laborcontract.vo.LaborContractRespVO;
|
||||||
import cn.iocoder.yudao.module.system.controller.admin.laborcontract.vo.LaborContractSaveReqVO;
|
import cn.iocoder.yudao.module.system.controller.admin.laborcontract.vo.LaborContractSaveReqVO;
|
||||||
@ -14,7 +15,9 @@ import org.springframework.stereotype.Service;
|
|||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
|
import java.time.LocalDate;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
|
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||||
import static cn.iocoder.yudao.module.system.enums.ErrorCodeConstants.LABOR_CONTRACT_NOT_EXISTS;
|
import static cn.iocoder.yudao.module.system.enums.ErrorCodeConstants.LABOR_CONTRACT_NOT_EXISTS;
|
||||||
@ -56,6 +59,18 @@ public class LaborContractServiceImpl implements LaborContractService {
|
|||||||
laborContractMapper.updateById(updateObj);
|
laborContractMapper.updateById(updateObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void updateLaborContractList(List<Long> ids, Integer status) {
|
||||||
|
|
||||||
|
List<LaborContractDO> updateVO = ids.stream()
|
||||||
|
.map(id -> new LaborContractDO()
|
||||||
|
.setId(id)
|
||||||
|
.setStatus(status))
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
|
||||||
|
laborContractMapper.updateBatch(updateVO);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void deleteLaborContract(Long id) {
|
public void deleteLaborContract(Long id) {
|
||||||
// 校验存在
|
// 校验存在
|
||||||
@ -95,4 +110,12 @@ public class LaborContractServiceImpl implements LaborContractService {
|
|||||||
|
|
||||||
return laborContractMapper.selectList(LaborContractDO::getUserId, userIds);
|
return laborContractMapper.selectList(LaborContractDO::getUserId, userIds);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<LaborContractDO> getListByEndTime(LocalDate now) {
|
||||||
|
|
||||||
|
return laborContractMapper.selectList(new LambdaQueryWrapperX<LaborContractDO>()
|
||||||
|
.lt(LaborContractDO::getExpirationDate, now)
|
||||||
|
.eq(LaborContractDO::getStatus, 3));
|
||||||
|
}
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user