L3HRM后端推送
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
package com.klp.hrm.service;
|
||||
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.bo.HrmAttendCalcBo;
|
||||
import com.klp.hrm.domain.vo.HrmAttendCalcVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface IHrmAttendCalcService {
|
||||
|
||||
HrmAttendCalcVo queryById(Long calcId);
|
||||
|
||||
TableDataInfo<HrmAttendCalcVo> queryPageList(HrmAttendCalcBo bo, PageQuery pageQuery);
|
||||
|
||||
List<HrmAttendCalcVo> queryList(HrmAttendCalcBo bo);
|
||||
|
||||
Boolean insertByBo(HrmAttendCalcBo bo);
|
||||
|
||||
Boolean updateByBo(HrmAttendCalcBo bo);
|
||||
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.klp.hrm.service;
|
||||
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.bo.HrmCertificateBo;
|
||||
import com.klp.hrm.domain.vo.HrmCertificateVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface IHrmCertificateService {
|
||||
|
||||
HrmCertificateVo queryById(Long certId);
|
||||
|
||||
TableDataInfo<HrmCertificateVo> queryPageList(HrmCertificateBo bo, PageQuery pageQuery);
|
||||
|
||||
List<HrmCertificateVo> queryList(HrmCertificateBo bo);
|
||||
|
||||
Boolean insertByBo(HrmCertificateBo bo);
|
||||
|
||||
Boolean updateByBo(HrmCertificateBo bo);
|
||||
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.klp.hrm.service;
|
||||
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.bo.HrmContractBo;
|
||||
import com.klp.hrm.domain.vo.HrmContractVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface IHrmContractService {
|
||||
|
||||
HrmContractVo queryById(Long contractId);
|
||||
|
||||
TableDataInfo<HrmContractVo> queryPageList(HrmContractBo bo, PageQuery pageQuery);
|
||||
|
||||
List<HrmContractVo> queryList(HrmContractBo bo);
|
||||
|
||||
Boolean insertByBo(HrmContractBo bo);
|
||||
|
||||
Boolean updateByBo(HrmContractBo bo);
|
||||
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
package com.klp.hrm.service;
|
||||
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.bo.HrmEmpOrgPositionBo;
|
||||
import com.klp.hrm.domain.vo.HrmEmpOrgPositionVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface IHrmEmpOrgPositionService {
|
||||
HrmEmpOrgPositionVo queryById(Long relId);
|
||||
|
||||
TableDataInfo<HrmEmpOrgPositionVo> queryPageList(HrmEmpOrgPositionBo bo, PageQuery pageQuery);
|
||||
|
||||
List<HrmEmpOrgPositionVo> queryList(HrmEmpOrgPositionBo bo);
|
||||
|
||||
Boolean insertByBo(HrmEmpOrgPositionBo bo);
|
||||
|
||||
Boolean updateByBo(HrmEmpOrgPositionBo bo);
|
||||
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
package com.klp.hrm.service;
|
||||
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.bo.HrmEmployeeBo;
|
||||
import com.klp.hrm.domain.vo.HrmEmployeeVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface IHrmEmployeeService {
|
||||
HrmEmployeeVo queryById(Long empId);
|
||||
|
||||
TableDataInfo<HrmEmployeeVo> queryPageList(HrmEmployeeBo bo, PageQuery pageQuery);
|
||||
|
||||
List<HrmEmployeeVo> queryList(HrmEmployeeBo bo);
|
||||
|
||||
Boolean insertByBo(HrmEmployeeBo bo);
|
||||
|
||||
Boolean updateByBo(HrmEmployeeBo bo);
|
||||
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.klp.hrm.service;
|
||||
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.bo.HrmFlowActionBo;
|
||||
import com.klp.hrm.domain.vo.HrmFlowActionVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface IHrmFlowActionService {
|
||||
|
||||
HrmFlowActionVo queryById(Long actionId);
|
||||
|
||||
TableDataInfo<HrmFlowActionVo> queryPageList(HrmFlowActionBo bo, PageQuery pageQuery);
|
||||
|
||||
List<HrmFlowActionVo> queryList(HrmFlowActionBo bo);
|
||||
|
||||
Boolean insertByBo(HrmFlowActionBo bo);
|
||||
|
||||
Boolean updateByBo(HrmFlowActionBo bo);
|
||||
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
package com.klp.hrm.service;
|
||||
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.bo.HrmFlowInstanceBo;
|
||||
import com.klp.hrm.domain.vo.HrmFlowInstanceVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface IHrmFlowInstanceService {
|
||||
|
||||
HrmFlowInstanceVo queryById(Long instId);
|
||||
|
||||
/**
|
||||
* 启动实例并生成首个待办
|
||||
*/
|
||||
Long startInstance(com.klp.hrm.domain.bo.HrmFlowStartBo bo);
|
||||
|
||||
TableDataInfo<HrmFlowInstanceVo> queryPageList(HrmFlowInstanceBo bo, PageQuery pageQuery);
|
||||
|
||||
List<HrmFlowInstanceVo> queryList(HrmFlowInstanceBo bo);
|
||||
|
||||
Boolean insertByBo(HrmFlowInstanceBo bo);
|
||||
|
||||
Boolean updateByBo(HrmFlowInstanceBo bo);
|
||||
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.klp.hrm.service;
|
||||
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.bo.HrmFlowNodeBo;
|
||||
import com.klp.hrm.domain.vo.HrmFlowNodeVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface IHrmFlowNodeService {
|
||||
|
||||
HrmFlowNodeVo queryById(Long nodeId);
|
||||
|
||||
TableDataInfo<HrmFlowNodeVo> queryPageList(HrmFlowNodeBo bo, PageQuery pageQuery);
|
||||
|
||||
List<HrmFlowNodeVo> queryList(HrmFlowNodeBo bo);
|
||||
|
||||
Boolean insertByBo(HrmFlowNodeBo bo);
|
||||
|
||||
Boolean updateByBo(HrmFlowNodeBo bo);
|
||||
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
package com.klp.hrm.service;
|
||||
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.bo.HrmFlowTaskBo;
|
||||
import com.klp.hrm.domain.vo.HrmFlowTaskVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface IHrmFlowTaskService {
|
||||
|
||||
HrmFlowTaskVo queryById(Long taskId);
|
||||
|
||||
TableDataInfo<HrmFlowTaskVo> queryPageList(HrmFlowTaskBo bo, PageQuery pageQuery);
|
||||
|
||||
List<HrmFlowTaskVo> queryList(HrmFlowTaskBo bo);
|
||||
|
||||
Boolean insertByBo(HrmFlowTaskBo bo);
|
||||
|
||||
Boolean updateByBo(HrmFlowTaskBo bo);
|
||||
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
|
||||
/**
|
||||
* 审批通过,可附带盖章指令(仅用印业务)
|
||||
*/
|
||||
Boolean approve(Long taskId, Long actionUserId, String remark, com.klp.hrm.domain.bo.HrmSealStampBo stampBo);
|
||||
|
||||
/**
|
||||
* 审批驳回
|
||||
*/
|
||||
Boolean reject(Long taskId, Long actionUserId, String remark);
|
||||
|
||||
/**
|
||||
* 撤回/取消
|
||||
*/
|
||||
Boolean withdraw(Long taskId, Long actionUserId, String remark);
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.klp.hrm.service;
|
||||
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.bo.HrmFlowTemplateBo;
|
||||
import com.klp.hrm.domain.vo.HrmFlowTemplateVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface IHrmFlowTemplateService {
|
||||
|
||||
HrmFlowTemplateVo queryById(Long tplId);
|
||||
|
||||
TableDataInfo<HrmFlowTemplateVo> queryPageList(HrmFlowTemplateBo bo, PageQuery pageQuery);
|
||||
|
||||
List<HrmFlowTemplateVo> queryList(HrmFlowTemplateBo bo);
|
||||
|
||||
Boolean insertByBo(HrmFlowTemplateBo bo);
|
||||
|
||||
Boolean updateByBo(HrmFlowTemplateBo bo);
|
||||
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
package com.klp.hrm.service;
|
||||
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.bo.HrmFormDataBo;
|
||||
import com.klp.hrm.domain.vo.HrmFormDataVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface IHrmFormDataService {
|
||||
HrmFormDataVo queryById(Long formId);
|
||||
|
||||
TableDataInfo<HrmFormDataVo> queryPageList(HrmFormDataBo bo, PageQuery pageQuery);
|
||||
|
||||
List<HrmFormDataVo> queryList(HrmFormDataBo bo);
|
||||
|
||||
Boolean insertByBo(HrmFormDataBo bo);
|
||||
|
||||
Boolean updateByBo(HrmFormDataBo bo);
|
||||
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
package com.klp.hrm.service;
|
||||
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.bo.HrmGradeBo;
|
||||
import com.klp.hrm.domain.vo.HrmGradeVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface IHrmGradeService {
|
||||
HrmGradeVo queryById(Long gradeId);
|
||||
|
||||
TableDataInfo<HrmGradeVo> queryPageList(HrmGradeBo bo, PageQuery pageQuery);
|
||||
|
||||
List<HrmGradeVo> queryList(HrmGradeBo bo);
|
||||
|
||||
Boolean insertByBo(HrmGradeBo bo);
|
||||
|
||||
Boolean updateByBo(HrmGradeBo bo);
|
||||
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
package com.klp.hrm.service;
|
||||
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.bo.HrmHeadcountPlanBo;
|
||||
import com.klp.hrm.domain.vo.HrmHeadcountPlanVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface IHrmHeadcountPlanService {
|
||||
HrmHeadcountPlanVo queryById(Long planId);
|
||||
|
||||
TableDataInfo<HrmHeadcountPlanVo> queryPageList(HrmHeadcountPlanBo bo, PageQuery pageQuery);
|
||||
|
||||
List<HrmHeadcountPlanVo> queryList(HrmHeadcountPlanBo bo);
|
||||
|
||||
Boolean insertByBo(HrmHeadcountPlanBo bo);
|
||||
|
||||
Boolean updateByBo(HrmHeadcountPlanBo bo);
|
||||
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.klp.hrm.service;
|
||||
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.bo.HrmLeaveBalanceBo;
|
||||
import com.klp.hrm.domain.vo.HrmLeaveBalanceVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface IHrmLeaveBalanceService {
|
||||
|
||||
HrmLeaveBalanceVo queryById(Long balId);
|
||||
|
||||
TableDataInfo<HrmLeaveBalanceVo> queryPageList(HrmLeaveBalanceBo bo, PageQuery pageQuery);
|
||||
|
||||
List<HrmLeaveBalanceVo> queryList(HrmLeaveBalanceBo bo);
|
||||
|
||||
Boolean insertByBo(HrmLeaveBalanceBo bo);
|
||||
|
||||
Boolean updateByBo(HrmLeaveBalanceBo bo);
|
||||
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.klp.hrm.service;
|
||||
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.bo.HrmLeaveReqBo;
|
||||
import com.klp.hrm.domain.vo.HrmLeaveReqVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface IHrmLeaveReqService {
|
||||
|
||||
HrmLeaveReqVo queryById(Long bizId);
|
||||
|
||||
TableDataInfo<HrmLeaveReqVo> queryPageList(HrmLeaveReqBo bo, PageQuery pageQuery);
|
||||
|
||||
List<HrmLeaveReqVo> queryList(HrmLeaveReqBo bo);
|
||||
|
||||
Boolean insertByBo(HrmLeaveReqBo bo);
|
||||
|
||||
Boolean updateByBo(HrmLeaveReqBo bo);
|
||||
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
package com.klp.hrm.service;
|
||||
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.bo.HrmOrgBo;
|
||||
import com.klp.hrm.domain.vo.HrmOrgVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface IHrmOrgService {
|
||||
HrmOrgVo queryById(Long orgId);
|
||||
|
||||
TableDataInfo<HrmOrgVo> queryPageList(HrmOrgBo bo, PageQuery pageQuery);
|
||||
|
||||
List<HrmOrgVo> queryList(HrmOrgBo bo);
|
||||
|
||||
Boolean insertByBo(HrmOrgBo bo);
|
||||
|
||||
Boolean updateByBo(HrmOrgBo bo);
|
||||
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.klp.hrm.service;
|
||||
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.bo.HrmOvertimeReqBo;
|
||||
import com.klp.hrm.domain.vo.HrmOvertimeReqVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface IHrmOvertimeReqService {
|
||||
|
||||
HrmOvertimeReqVo queryById(Long bizId);
|
||||
|
||||
TableDataInfo<HrmOvertimeReqVo> queryPageList(HrmOvertimeReqBo bo, PageQuery pageQuery);
|
||||
|
||||
List<HrmOvertimeReqVo> queryList(HrmOvertimeReqBo bo);
|
||||
|
||||
Boolean insertByBo(HrmOvertimeReqBo bo);
|
||||
|
||||
Boolean updateByBo(HrmOvertimeReqBo bo);
|
||||
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.klp.hrm.service;
|
||||
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.bo.HrmPayPlanBo;
|
||||
import com.klp.hrm.domain.vo.HrmPayPlanVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface IHrmPayPlanService {
|
||||
|
||||
HrmPayPlanVo queryById(Long planId);
|
||||
|
||||
TableDataInfo<HrmPayPlanVo> queryPageList(HrmPayPlanBo bo, PageQuery pageQuery);
|
||||
|
||||
List<HrmPayPlanVo> queryList(HrmPayPlanBo bo);
|
||||
|
||||
Boolean insertByBo(HrmPayPlanBo bo);
|
||||
|
||||
Boolean updateByBo(HrmPayPlanBo bo);
|
||||
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.klp.hrm.service;
|
||||
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.bo.HrmPayRunBo;
|
||||
import com.klp.hrm.domain.vo.HrmPayRunVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface IHrmPayRunService {
|
||||
|
||||
HrmPayRunVo queryById(Long runId);
|
||||
|
||||
TableDataInfo<HrmPayRunVo> queryPageList(HrmPayRunBo bo, PageQuery pageQuery);
|
||||
|
||||
List<HrmPayRunVo> queryList(HrmPayRunBo bo);
|
||||
|
||||
Boolean insertByBo(HrmPayRunBo bo);
|
||||
|
||||
Boolean updateByBo(HrmPayRunBo bo);
|
||||
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.klp.hrm.service;
|
||||
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.bo.HrmPayslipBo;
|
||||
import com.klp.hrm.domain.vo.HrmPayslipVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface IHrmPayslipService {
|
||||
|
||||
HrmPayslipVo queryById(Long slipId);
|
||||
|
||||
TableDataInfo<HrmPayslipVo> queryPageList(HrmPayslipBo bo, PageQuery pageQuery);
|
||||
|
||||
List<HrmPayslipVo> queryList(HrmPayslipBo bo);
|
||||
|
||||
Boolean insertByBo(HrmPayslipBo bo);
|
||||
|
||||
Boolean updateByBo(HrmPayslipBo bo);
|
||||
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
package com.klp.hrm.service;
|
||||
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.bo.HrmPositionBo;
|
||||
import com.klp.hrm.domain.vo.HrmPositionVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface IHrmPositionService {
|
||||
HrmPositionVo queryById(Long positionId);
|
||||
|
||||
TableDataInfo<HrmPositionVo> queryPageList(HrmPositionBo bo, PageQuery pageQuery);
|
||||
|
||||
List<HrmPositionVo> queryList(HrmPositionBo bo);
|
||||
|
||||
Boolean insertByBo(HrmPositionBo bo);
|
||||
|
||||
Boolean updateByBo(HrmPositionBo bo);
|
||||
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.klp.hrm.service;
|
||||
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.bo.HrmPunchBo;
|
||||
import com.klp.hrm.domain.vo.HrmPunchVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface IHrmPunchService {
|
||||
|
||||
HrmPunchVo queryById(Long punchId);
|
||||
|
||||
TableDataInfo<HrmPunchVo> queryPageList(HrmPunchBo bo, PageQuery pageQuery);
|
||||
|
||||
List<HrmPunchVo> queryList(HrmPunchBo bo);
|
||||
|
||||
Boolean insertByBo(HrmPunchBo bo);
|
||||
|
||||
Boolean updateByBo(HrmPunchBo bo);
|
||||
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.klp.hrm.service;
|
||||
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.bo.HrmScheduleBo;
|
||||
import com.klp.hrm.domain.vo.HrmScheduleVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface IHrmScheduleService {
|
||||
|
||||
HrmScheduleVo queryById(Long schedId);
|
||||
|
||||
TableDataInfo<HrmScheduleVo> queryPageList(HrmScheduleBo bo, PageQuery pageQuery);
|
||||
|
||||
List<HrmScheduleVo> queryList(HrmScheduleBo bo);
|
||||
|
||||
Boolean insertByBo(HrmScheduleBo bo);
|
||||
|
||||
Boolean updateByBo(HrmScheduleBo bo);
|
||||
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
package com.klp.hrm.service;
|
||||
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.bo.HrmSealReqBo;
|
||||
import com.klp.hrm.domain.bo.HrmSealStampBo;
|
||||
import com.klp.hrm.domain.vo.HrmSealReqVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface IHrmSealReqService {
|
||||
|
||||
HrmSealReqVo queryById(Long bizId);
|
||||
|
||||
TableDataInfo<HrmSealReqVo> queryPageList(HrmSealReqBo bo, PageQuery pageQuery);
|
||||
|
||||
List<HrmSealReqVo> queryList(HrmSealReqBo bo);
|
||||
|
||||
Boolean insertByBo(HrmSealReqBo bo);
|
||||
|
||||
Boolean updateByBo(HrmSealReqBo bo);
|
||||
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
|
||||
/**
|
||||
* 简单状态更新(draft/running/approved/rejected/canceled)
|
||||
*/
|
||||
Boolean updateStatus(Long bizId, String status);
|
||||
|
||||
/**
|
||||
* Java 盖章,返回盖章后文件 URL
|
||||
*/
|
||||
String stampWithJava(Long bizId, HrmSealStampBo cmd);
|
||||
|
||||
/**
|
||||
* Python 盖章占位(调用外部服务)
|
||||
*/
|
||||
String stampWithPython(Long bizId, HrmSealStampBo cmd);
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.klp.hrm.service;
|
||||
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.bo.HrmShiftBo;
|
||||
import com.klp.hrm.domain.vo.HrmShiftVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface IHrmShiftService {
|
||||
|
||||
HrmShiftVo queryById(Long shiftId);
|
||||
|
||||
TableDataInfo<HrmShiftVo> queryPageList(HrmShiftBo bo, PageQuery pageQuery);
|
||||
|
||||
List<HrmShiftVo> queryList(HrmShiftBo bo);
|
||||
|
||||
Boolean insertByBo(HrmShiftBo bo);
|
||||
|
||||
Boolean updateByBo(HrmShiftBo bo);
|
||||
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.klp.hrm.service;
|
||||
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.bo.HrmStatSnapshotBo;
|
||||
import com.klp.hrm.domain.vo.HrmStatSnapshotVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface IHrmStatSnapshotService {
|
||||
|
||||
HrmStatSnapshotVo queryById(Long snapId);
|
||||
|
||||
TableDataInfo<HrmStatSnapshotVo> queryPageList(HrmStatSnapshotBo bo, PageQuery pageQuery);
|
||||
|
||||
List<HrmStatSnapshotVo> queryList(HrmStatSnapshotBo bo);
|
||||
|
||||
Boolean insertByBo(HrmStatSnapshotBo bo);
|
||||
|
||||
Boolean updateByBo(HrmStatSnapshotBo bo);
|
||||
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.klp.hrm.service;
|
||||
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.bo.HrmTravelReqBo;
|
||||
import com.klp.hrm.domain.vo.HrmTravelReqVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface IHrmTravelReqService {
|
||||
|
||||
HrmTravelReqVo queryById(Long bizId);
|
||||
|
||||
TableDataInfo<HrmTravelReqVo> queryPageList(HrmTravelReqBo bo, PageQuery pageQuery);
|
||||
|
||||
List<HrmTravelReqVo> queryList(HrmTravelReqBo bo);
|
||||
|
||||
Boolean insertByBo(HrmTravelReqBo bo);
|
||||
|
||||
Boolean updateByBo(HrmTravelReqBo bo);
|
||||
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -0,0 +1,73 @@
|
||||
package com.klp.hrm.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.HrmAttendCalc;
|
||||
import com.klp.hrm.domain.bo.HrmAttendCalcBo;
|
||||
import com.klp.hrm.domain.vo.HrmAttendCalcVo;
|
||||
import com.klp.hrm.mapper.HrmAttendCalcMapper;
|
||||
import com.klp.hrm.service.IHrmAttendCalcService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class HrmAttendCalcServiceImpl implements IHrmAttendCalcService {
|
||||
|
||||
private final HrmAttendCalcMapper baseMapper;
|
||||
|
||||
@Override
|
||||
public HrmAttendCalcVo queryById(Long calcId) {
|
||||
return baseMapper.selectVoById(calcId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<HrmAttendCalcVo> queryPageList(HrmAttendCalcBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<HrmAttendCalc> lqw = buildQueryWrapper(bo);
|
||||
Page<HrmAttendCalcVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HrmAttendCalcVo> queryList(HrmAttendCalcBo bo) {
|
||||
LambdaQueryWrapper<HrmAttendCalc> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(HrmAttendCalcBo bo) {
|
||||
HrmAttendCalc add = BeanUtil.toBean(bo, HrmAttendCalc.class);
|
||||
return baseMapper.insert(add) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateByBo(HrmAttendCalcBo bo) {
|
||||
HrmAttendCalc update = BeanUtil.toBean(bo, HrmAttendCalc.class);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<HrmAttendCalc> buildQueryWrapper(HrmAttendCalcBo bo) {
|
||||
LambdaQueryWrapper<HrmAttendCalc> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getCalcId() != null, HrmAttendCalc::getCalcId, bo.getCalcId());
|
||||
lqw.eq(bo.getEmpId() != null, HrmAttendCalc::getEmpId, bo.getEmpId());
|
||||
lqw.eq(bo.getWorkDate() != null, HrmAttendCalc::getWorkDate, bo.getWorkDate());
|
||||
lqw.eq(bo.getShiftId() != null, HrmAttendCalc::getShiftId, bo.getShiftId());
|
||||
lqw.eq(bo.getStatus() != null, HrmAttendCalc::getStatus, bo.getStatus());
|
||||
return lqw;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,73 @@
|
||||
package com.klp.hrm.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.HrmCertificate;
|
||||
import com.klp.hrm.domain.bo.HrmCertificateBo;
|
||||
import com.klp.hrm.domain.vo.HrmCertificateVo;
|
||||
import com.klp.hrm.mapper.HrmCertificateMapper;
|
||||
import com.klp.hrm.service.IHrmCertificateService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class HrmCertificateServiceImpl implements IHrmCertificateService {
|
||||
|
||||
private final HrmCertificateMapper baseMapper;
|
||||
|
||||
@Override
|
||||
public HrmCertificateVo queryById(Long certId) {
|
||||
return baseMapper.selectVoById(certId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<HrmCertificateVo> queryPageList(HrmCertificateBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<HrmCertificate> lqw = buildQueryWrapper(bo);
|
||||
Page<HrmCertificateVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HrmCertificateVo> queryList(HrmCertificateBo bo) {
|
||||
LambdaQueryWrapper<HrmCertificate> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(HrmCertificateBo bo) {
|
||||
HrmCertificate add = BeanUtil.toBean(bo, HrmCertificate.class);
|
||||
return baseMapper.insert(add) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateByBo(HrmCertificateBo bo) {
|
||||
HrmCertificate update = BeanUtil.toBean(bo, HrmCertificate.class);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<HrmCertificate> buildQueryWrapper(HrmCertificateBo bo) {
|
||||
LambdaQueryWrapper<HrmCertificate> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getCertId() != null, HrmCertificate::getCertId, bo.getCertId());
|
||||
lqw.eq(bo.getEmpId() != null, HrmCertificate::getEmpId, bo.getEmpId());
|
||||
lqw.like(bo.getCertName() != null, HrmCertificate::getCertName, bo.getCertName());
|
||||
lqw.like(bo.getCertNo() != null, HrmCertificate::getCertNo, bo.getCertNo());
|
||||
lqw.eq(bo.getIssuedBy() != null, HrmCertificate::getIssuedBy, bo.getIssuedBy());
|
||||
return lqw;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,73 @@
|
||||
package com.klp.hrm.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.HrmContract;
|
||||
import com.klp.hrm.domain.bo.HrmContractBo;
|
||||
import com.klp.hrm.domain.vo.HrmContractVo;
|
||||
import com.klp.hrm.mapper.HrmContractMapper;
|
||||
import com.klp.hrm.service.IHrmContractService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class HrmContractServiceImpl implements IHrmContractService {
|
||||
|
||||
private final HrmContractMapper baseMapper;
|
||||
|
||||
@Override
|
||||
public HrmContractVo queryById(Long contractId) {
|
||||
return baseMapper.selectVoById(contractId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<HrmContractVo> queryPageList(HrmContractBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<HrmContract> lqw = buildQueryWrapper(bo);
|
||||
Page<HrmContractVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HrmContractVo> queryList(HrmContractBo bo) {
|
||||
LambdaQueryWrapper<HrmContract> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(HrmContractBo bo) {
|
||||
HrmContract add = BeanUtil.toBean(bo, HrmContract.class);
|
||||
return baseMapper.insert(add) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateByBo(HrmContractBo bo) {
|
||||
HrmContract update = BeanUtil.toBean(bo, HrmContract.class);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<HrmContract> buildQueryWrapper(HrmContractBo bo) {
|
||||
LambdaQueryWrapper<HrmContract> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getContractId() != null, HrmContract::getContractId, bo.getContractId());
|
||||
lqw.eq(bo.getEmpId() != null, HrmContract::getEmpId, bo.getEmpId());
|
||||
lqw.like(bo.getContractNo() != null, HrmContract::getContractNo, bo.getContractNo());
|
||||
lqw.eq(bo.getContractType() != null, HrmContract::getContractType, bo.getContractType());
|
||||
lqw.eq(bo.getStatus() != null, HrmContract::getStatus, bo.getStatus());
|
||||
return lqw;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,73 @@
|
||||
package com.klp.hrm.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.HrmEmpOrgPosition;
|
||||
import com.klp.hrm.domain.bo.HrmEmpOrgPositionBo;
|
||||
import com.klp.hrm.domain.vo.HrmEmpOrgPositionVo;
|
||||
import com.klp.hrm.mapper.HrmEmpOrgPositionMapper;
|
||||
import com.klp.hrm.service.IHrmEmpOrgPositionService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class HrmEmpOrgPositionServiceImpl implements IHrmEmpOrgPositionService {
|
||||
|
||||
private final HrmEmpOrgPositionMapper baseMapper;
|
||||
|
||||
@Override
|
||||
public HrmEmpOrgPositionVo queryById(Long relId) {
|
||||
return baseMapper.selectVoById(relId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<HrmEmpOrgPositionVo> queryPageList(HrmEmpOrgPositionBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<HrmEmpOrgPosition> lqw = buildQueryWrapper(bo);
|
||||
Page<HrmEmpOrgPositionVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HrmEmpOrgPositionVo> queryList(HrmEmpOrgPositionBo bo) {
|
||||
LambdaQueryWrapper<HrmEmpOrgPosition> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(HrmEmpOrgPositionBo bo) {
|
||||
HrmEmpOrgPosition add = BeanUtil.toBean(bo, HrmEmpOrgPosition.class);
|
||||
return baseMapper.insert(add) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateByBo(HrmEmpOrgPositionBo bo) {
|
||||
HrmEmpOrgPosition update = BeanUtil.toBean(bo, HrmEmpOrgPosition.class);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<HrmEmpOrgPosition> buildQueryWrapper(HrmEmpOrgPositionBo bo) {
|
||||
LambdaQueryWrapper<HrmEmpOrgPosition> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getRelId() != null, HrmEmpOrgPosition::getRelId, bo.getRelId());
|
||||
lqw.eq(bo.getEmpId() != null, HrmEmpOrgPosition::getEmpId, bo.getEmpId());
|
||||
lqw.eq(bo.getOrgId() != null, HrmEmpOrgPosition::getOrgId, bo.getOrgId());
|
||||
lqw.eq(bo.getPositionId() != null, HrmEmpOrgPosition::getPositionId, bo.getPositionId());
|
||||
lqw.eq(bo.getIsPrimary() != null, HrmEmpOrgPosition::getIsPrimary, bo.getIsPrimary());
|
||||
return lqw;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,75 @@
|
||||
package com.klp.hrm.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.HrmEmployee;
|
||||
import com.klp.hrm.domain.bo.HrmEmployeeBo;
|
||||
import com.klp.hrm.domain.vo.HrmEmployeeVo;
|
||||
import com.klp.hrm.mapper.HrmEmployeeMapper;
|
||||
import com.klp.hrm.service.IHrmEmployeeService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class HrmEmployeeServiceImpl implements IHrmEmployeeService {
|
||||
|
||||
private final HrmEmployeeMapper baseMapper;
|
||||
|
||||
@Override
|
||||
public HrmEmployeeVo queryById(Long empId) {
|
||||
return baseMapper.selectVoById(empId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<HrmEmployeeVo> queryPageList(HrmEmployeeBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<HrmEmployee> lqw = buildQueryWrapper(bo);
|
||||
Page<HrmEmployeeVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HrmEmployeeVo> queryList(HrmEmployeeBo bo) {
|
||||
LambdaQueryWrapper<HrmEmployee> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(HrmEmployeeBo bo) {
|
||||
HrmEmployee add = BeanUtil.toBean(bo, HrmEmployee.class);
|
||||
return baseMapper.insert(add) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateByBo(HrmEmployeeBo bo) {
|
||||
HrmEmployee update = BeanUtil.toBean(bo, HrmEmployee.class);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<HrmEmployee> buildQueryWrapper(HrmEmployeeBo bo) {
|
||||
LambdaQueryWrapper<HrmEmployee> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getEmpId() != null, HrmEmployee::getEmpId, bo.getEmpId());
|
||||
lqw.like(bo.getEmpNo() != null, HrmEmployee::getEmpNo, bo.getEmpNo());
|
||||
lqw.like(bo.getEmpName() != null, HrmEmployee::getEmpName, bo.getEmpName());
|
||||
lqw.eq(bo.getStatus() != null, HrmEmployee::getStatus, bo.getStatus());
|
||||
lqw.eq(bo.getMainOrgId() != null, HrmEmployee::getMainOrgId, bo.getMainOrgId());
|
||||
lqw.eq(bo.getMainPositionId() != null, HrmEmployee::getMainPositionId, bo.getMainPositionId());
|
||||
lqw.orderByAsc(HrmEmployee::getEmpNo);
|
||||
return lqw;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,73 @@
|
||||
package com.klp.hrm.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.HrmFlowAction;
|
||||
import com.klp.hrm.domain.bo.HrmFlowActionBo;
|
||||
import com.klp.hrm.domain.vo.HrmFlowActionVo;
|
||||
import com.klp.hrm.mapper.HrmFlowActionMapper;
|
||||
import com.klp.hrm.service.IHrmFlowActionService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class HrmFlowActionServiceImpl implements IHrmFlowActionService {
|
||||
|
||||
private final HrmFlowActionMapper baseMapper;
|
||||
|
||||
@Override
|
||||
public HrmFlowActionVo queryById(Long actionId) {
|
||||
return baseMapper.selectVoById(actionId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<HrmFlowActionVo> queryPageList(HrmFlowActionBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<HrmFlowAction> lqw = buildQueryWrapper(bo);
|
||||
Page<HrmFlowActionVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HrmFlowActionVo> queryList(HrmFlowActionBo bo) {
|
||||
LambdaQueryWrapper<HrmFlowAction> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(HrmFlowActionBo bo) {
|
||||
HrmFlowAction add = BeanUtil.toBean(bo, HrmFlowAction.class);
|
||||
return baseMapper.insert(add) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateByBo(HrmFlowActionBo bo) {
|
||||
HrmFlowAction update = BeanUtil.toBean(bo, HrmFlowAction.class);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<HrmFlowAction> buildQueryWrapper(HrmFlowActionBo bo) {
|
||||
LambdaQueryWrapper<HrmFlowAction> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getActionId() != null, HrmFlowAction::getActionId, bo.getActionId());
|
||||
lqw.eq(bo.getTaskId() != null, HrmFlowAction::getTaskId, bo.getTaskId());
|
||||
lqw.eq(bo.getInstId() != null, HrmFlowAction::getInstId, bo.getInstId());
|
||||
lqw.eq(bo.getAction() != null, HrmFlowAction::getAction, bo.getAction());
|
||||
lqw.eq(bo.getActionUserId() != null, HrmFlowAction::getActionUserId, bo.getActionUserId());
|
||||
return lqw;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,125 @@
|
||||
package com.klp.hrm.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.HrmFlowInstance;
|
||||
import com.klp.hrm.domain.HrmFlowNode;
|
||||
import com.klp.hrm.domain.HrmFlowTask;
|
||||
import com.klp.hrm.domain.HrmFormData;
|
||||
import com.klp.hrm.domain.bo.HrmFlowStartBo;
|
||||
import com.klp.hrm.domain.bo.HrmFlowInstanceBo;
|
||||
import com.klp.hrm.domain.vo.HrmFlowInstanceVo;
|
||||
import com.klp.hrm.mapper.HrmFlowInstanceMapper;
|
||||
import com.klp.hrm.mapper.HrmFlowNodeMapper;
|
||||
import com.klp.hrm.mapper.HrmFlowTaskMapper;
|
||||
import com.klp.hrm.mapper.HrmFormDataMapper;
|
||||
import com.klp.hrm.service.IHrmFlowInstanceService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class HrmFlowInstanceServiceImpl implements IHrmFlowInstanceService {
|
||||
|
||||
private final HrmFlowInstanceMapper baseMapper;
|
||||
private final HrmFlowNodeMapper nodeMapper;
|
||||
private final HrmFlowTaskMapper taskMapper;
|
||||
private final HrmFormDataMapper formDataMapper;
|
||||
|
||||
@Override
|
||||
public HrmFlowInstanceVo queryById(Long instId) {
|
||||
return baseMapper.selectVoById(instId);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Long startInstance(HrmFlowStartBo bo) {
|
||||
// 找首节点
|
||||
HrmFlowNode firstNode = nodeMapper.selectOne(Wrappers.<HrmFlowNode>lambdaQuery()
|
||||
.eq(HrmFlowNode::getTplId, bo.getTplId())
|
||||
.orderByAsc(HrmFlowNode::getOrderNo)
|
||||
.last("limit 1"));
|
||||
if (firstNode == null) {
|
||||
throw new RuntimeException("流程模板无节点,无法启动");
|
||||
}
|
||||
// 创建实例
|
||||
HrmFlowInstance inst = new HrmFlowInstance();
|
||||
inst.setTplId(bo.getTplId());
|
||||
inst.setBizType(bo.getBizType());
|
||||
inst.setBizId(bo.getBizId());
|
||||
inst.setStatus("running");
|
||||
inst.setCurrentNodeId(firstNode.getNodeId());
|
||||
inst.setStartUserId(bo.getStartUserId());
|
||||
baseMapper.insert(inst);
|
||||
|
||||
// 保存表单
|
||||
if (bo.getContentJson() != null) {
|
||||
HrmFormData form = new HrmFormData();
|
||||
form.setBizType(bo.getBizType());
|
||||
form.setBizId(bo.getBizId());
|
||||
form.setContentJson(bo.getContentJson());
|
||||
formDataMapper.insert(form);
|
||||
}
|
||||
|
||||
// 创建首个待办
|
||||
HrmFlowTask task = new HrmFlowTask();
|
||||
task.setInstId(inst.getInstId());
|
||||
task.setNodeId(firstNode.getNodeId());
|
||||
task.setAssigneeUserId(Objects.requireNonNullElse(bo.getStartUserId(), 0L));
|
||||
task.setStatus("pending");
|
||||
taskMapper.insert(task);
|
||||
|
||||
return inst.getInstId();
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<HrmFlowInstanceVo> queryPageList(HrmFlowInstanceBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<HrmFlowInstance> lqw = buildQueryWrapper(bo);
|
||||
Page<HrmFlowInstanceVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HrmFlowInstanceVo> queryList(HrmFlowInstanceBo bo) {
|
||||
LambdaQueryWrapper<HrmFlowInstance> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(HrmFlowInstanceBo bo) {
|
||||
HrmFlowInstance add = BeanUtil.toBean(bo, HrmFlowInstance.class);
|
||||
return baseMapper.insert(add) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateByBo(HrmFlowInstanceBo bo) {
|
||||
HrmFlowInstance update = BeanUtil.toBean(bo, HrmFlowInstance.class);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<HrmFlowInstance> buildQueryWrapper(HrmFlowInstanceBo bo) {
|
||||
LambdaQueryWrapper<HrmFlowInstance> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getInstId() != null, HrmFlowInstance::getInstId, bo.getInstId());
|
||||
lqw.eq(bo.getTplId() != null, HrmFlowInstance::getTplId, bo.getTplId());
|
||||
lqw.eq(bo.getBizType() != null, HrmFlowInstance::getBizType, bo.getBizType());
|
||||
lqw.eq(bo.getBizId() != null, HrmFlowInstance::getBizId, bo.getBizId());
|
||||
lqw.eq(bo.getStatus() != null, HrmFlowInstance::getStatus, bo.getStatus());
|
||||
return lqw;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,73 @@
|
||||
package com.klp.hrm.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.HrmFlowNode;
|
||||
import com.klp.hrm.domain.bo.HrmFlowNodeBo;
|
||||
import com.klp.hrm.domain.vo.HrmFlowNodeVo;
|
||||
import com.klp.hrm.mapper.HrmFlowNodeMapper;
|
||||
import com.klp.hrm.service.IHrmFlowNodeService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class HrmFlowNodeServiceImpl implements IHrmFlowNodeService {
|
||||
|
||||
private final HrmFlowNodeMapper baseMapper;
|
||||
|
||||
@Override
|
||||
public HrmFlowNodeVo queryById(Long nodeId) {
|
||||
return baseMapper.selectVoById(nodeId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<HrmFlowNodeVo> queryPageList(HrmFlowNodeBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<HrmFlowNode> lqw = buildQueryWrapper(bo);
|
||||
Page<HrmFlowNodeVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HrmFlowNodeVo> queryList(HrmFlowNodeBo bo) {
|
||||
LambdaQueryWrapper<HrmFlowNode> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(HrmFlowNodeBo bo) {
|
||||
HrmFlowNode add = BeanUtil.toBean(bo, HrmFlowNode.class);
|
||||
return baseMapper.insert(add) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateByBo(HrmFlowNodeBo bo) {
|
||||
HrmFlowNode update = BeanUtil.toBean(bo, HrmFlowNode.class);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<HrmFlowNode> buildQueryWrapper(HrmFlowNodeBo bo) {
|
||||
LambdaQueryWrapper<HrmFlowNode> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getNodeId() != null, HrmFlowNode::getNodeId, bo.getNodeId());
|
||||
lqw.eq(bo.getTplId() != null, HrmFlowNode::getTplId, bo.getTplId());
|
||||
lqw.eq(bo.getOrderNo() != null, HrmFlowNode::getOrderNo, bo.getOrderNo());
|
||||
lqw.eq(bo.getNodeType() != null, HrmFlowNode::getNodeType, bo.getNodeType());
|
||||
lqw.eq(bo.getApproverRule() != null, HrmFlowNode::getApproverRule, bo.getApproverRule());
|
||||
return lqw;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,202 @@
|
||||
package com.klp.hrm.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.HrmFlowTask;
|
||||
import com.klp.hrm.domain.HrmFlowAction;
|
||||
import com.klp.hrm.domain.HrmFlowInstance;
|
||||
import com.klp.hrm.domain.HrmFlowNode;
|
||||
import com.klp.hrm.domain.bo.HrmFlowTaskBo;
|
||||
import com.klp.hrm.domain.bo.HrmSealStampBo;
|
||||
import com.klp.hrm.domain.vo.HrmFlowTaskVo;
|
||||
import com.klp.hrm.mapper.HrmFlowActionMapper;
|
||||
import com.klp.hrm.mapper.HrmFlowInstanceMapper;
|
||||
import com.klp.hrm.mapper.HrmFlowNodeMapper;
|
||||
import com.klp.hrm.mapper.HrmFlowTaskMapper;
|
||||
import com.klp.hrm.service.IHrmFlowTaskService;
|
||||
import com.klp.hrm.service.IHrmSealReqService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class HrmFlowTaskServiceImpl implements IHrmFlowTaskService {
|
||||
|
||||
private final HrmFlowTaskMapper baseMapper;
|
||||
private final HrmFlowActionMapper actionMapper;
|
||||
private final HrmFlowInstanceMapper instanceMapper;
|
||||
private final HrmFlowNodeMapper nodeMapper;
|
||||
private final IHrmSealReqService sealReqService;
|
||||
|
||||
@Override
|
||||
public HrmFlowTaskVo queryById(Long taskId) {
|
||||
return baseMapper.selectVoById(taskId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<HrmFlowTaskVo> queryPageList(HrmFlowTaskBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<HrmFlowTask> lqw = buildQueryWrapper(bo);
|
||||
Page<HrmFlowTaskVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HrmFlowTaskVo> queryList(HrmFlowTaskBo bo) {
|
||||
LambdaQueryWrapper<HrmFlowTask> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(HrmFlowTaskBo bo) {
|
||||
HrmFlowTask add = BeanUtil.toBean(bo, HrmFlowTask.class);
|
||||
return baseMapper.insert(add) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateByBo(HrmFlowTaskBo bo) {
|
||||
HrmFlowTask update = BeanUtil.toBean(bo, HrmFlowTask.class);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean approve(Long taskId, Long actionUserId, String remark, HrmSealStampBo stampBo) {
|
||||
HrmFlowTask task = baseMapper.selectById(taskId);
|
||||
if (task == null) {
|
||||
return false;
|
||||
}
|
||||
HrmFlowInstance inst = instanceMapper.selectById(task.getInstId());
|
||||
if (inst == null) {
|
||||
return false;
|
||||
}
|
||||
HrmFlowNode currentNode = nodeMapper.selectById(task.getNodeId());
|
||||
if (currentNode == null) {
|
||||
return false;
|
||||
}
|
||||
// 记录动作
|
||||
saveAction(taskId, inst.getInstId(), "approve", remark, actionUserId);
|
||||
// 完成当前任务
|
||||
task.setStatus("approved");
|
||||
baseMapper.updateById(task);
|
||||
|
||||
// 查找下一节点
|
||||
HrmFlowNode next = nodeMapper.selectOne(Wrappers.<HrmFlowNode>lambdaQuery()
|
||||
.eq(HrmFlowNode::getTplId, inst.getTplId())
|
||||
.gt(HrmFlowNode::getOrderNo, currentNode.getOrderNo())
|
||||
.orderByAsc(HrmFlowNode::getOrderNo)
|
||||
.last("limit 1"));
|
||||
if (next != null) {
|
||||
inst.setCurrentNodeId(next.getNodeId());
|
||||
inst.setStatus("running");
|
||||
instanceMapper.updateById(inst);
|
||||
HrmFlowTask nextTask = new HrmFlowTask();
|
||||
nextTask.setInstId(inst.getInstId());
|
||||
nextTask.setNodeId(next.getNodeId());
|
||||
nextTask.setAssigneeUserId(Objects.requireNonNullElse(actionUserId, 0L));
|
||||
nextTask.setStatus("pending");
|
||||
baseMapper.insert(nextTask);
|
||||
} else {
|
||||
// 末节点通过
|
||||
inst.setStatus("approved");
|
||||
inst.setCurrentNodeId(null);
|
||||
instanceMapper.updateById(inst);
|
||||
// 若业务为用印,更新用印状态为已批准
|
||||
if ("seal".equalsIgnoreCase(inst.getBizType())) {
|
||||
sealReqService.updateStatus(inst.getBizId(), "approved");
|
||||
if (stampBo != null) {
|
||||
sealReqService.stampWithJava(inst.getBizId(), stampBo);
|
||||
}
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean reject(Long taskId, Long actionUserId, String remark) {
|
||||
HrmFlowTask task = baseMapper.selectById(taskId);
|
||||
if (task == null) {
|
||||
return false;
|
||||
}
|
||||
HrmFlowInstance inst = instanceMapper.selectById(task.getInstId());
|
||||
if (inst == null) {
|
||||
return false;
|
||||
}
|
||||
saveAction(taskId, inst.getInstId(), "reject", remark, actionUserId);
|
||||
task.setStatus("rejected");
|
||||
baseMapper.updateById(task);
|
||||
inst.setStatus("rejected");
|
||||
instanceMapper.updateById(inst);
|
||||
if ("seal".equalsIgnoreCase(inst.getBizType())) {
|
||||
sealReqService.updateStatus(inst.getBizId(), "rejected");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean withdraw(Long taskId, Long actionUserId, String remark) {
|
||||
HrmFlowTask task = baseMapper.selectById(taskId);
|
||||
if (task == null) {
|
||||
return false;
|
||||
}
|
||||
HrmFlowInstance inst = instanceMapper.selectById(task.getInstId());
|
||||
if (inst == null) {
|
||||
return false;
|
||||
}
|
||||
saveAction(taskId, inst.getInstId(), "withdraw", remark, actionUserId);
|
||||
task.setStatus("withdraw");
|
||||
baseMapper.updateById(task);
|
||||
// 撤回后重新生成当前节点待办,实例回到running
|
||||
inst.setStatus("running");
|
||||
instanceMapper.updateById(inst);
|
||||
HrmFlowTask reTask = new HrmFlowTask();
|
||||
reTask.setInstId(inst.getInstId());
|
||||
reTask.setNodeId(task.getNodeId());
|
||||
reTask.setAssigneeUserId(Objects.requireNonNullElse(actionUserId, task.getAssigneeUserId()));
|
||||
reTask.setStatus("pending");
|
||||
baseMapper.insert(reTask);
|
||||
if ("seal".equalsIgnoreCase(inst.getBizType())) {
|
||||
sealReqService.updateStatus(inst.getBizId(), "running");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
private void saveAction(Long taskId, Long instId, String action, String remark, Long userId) {
|
||||
HrmFlowAction log = new HrmFlowAction();
|
||||
log.setTaskId(taskId);
|
||||
log.setInstId(instId);
|
||||
log.setAction(action);
|
||||
log.setRemark(remark);
|
||||
log.setActionUserId(userId);
|
||||
log.setCreateTime(LocalDateTime.now());
|
||||
actionMapper.insert(log);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<HrmFlowTask> buildQueryWrapper(HrmFlowTaskBo bo) {
|
||||
LambdaQueryWrapper<HrmFlowTask> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getTaskId() != null, HrmFlowTask::getTaskId, bo.getTaskId());
|
||||
lqw.eq(bo.getInstId() != null, HrmFlowTask::getInstId, bo.getInstId());
|
||||
lqw.eq(bo.getNodeId() != null, HrmFlowTask::getNodeId, bo.getNodeId());
|
||||
lqw.eq(bo.getAssigneeUserId() != null, HrmFlowTask::getAssigneeUserId, bo.getAssigneeUserId());
|
||||
lqw.eq(bo.getStatus() != null, HrmFlowTask::getStatus, bo.getStatus());
|
||||
return lqw;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,74 @@
|
||||
package com.klp.hrm.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.HrmFlowTemplate;
|
||||
import com.klp.hrm.domain.bo.HrmFlowTemplateBo;
|
||||
import com.klp.hrm.domain.vo.HrmFlowTemplateVo;
|
||||
import com.klp.hrm.mapper.HrmFlowTemplateMapper;
|
||||
import com.klp.hrm.service.IHrmFlowTemplateService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class HrmFlowTemplateServiceImpl implements IHrmFlowTemplateService {
|
||||
|
||||
private final HrmFlowTemplateMapper baseMapper;
|
||||
|
||||
@Override
|
||||
public HrmFlowTemplateVo queryById(Long tplId) {
|
||||
return baseMapper.selectVoById(tplId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<HrmFlowTemplateVo> queryPageList(HrmFlowTemplateBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<HrmFlowTemplate> lqw = buildQueryWrapper(bo);
|
||||
Page<HrmFlowTemplateVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HrmFlowTemplateVo> queryList(HrmFlowTemplateBo bo) {
|
||||
LambdaQueryWrapper<HrmFlowTemplate> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(HrmFlowTemplateBo bo) {
|
||||
HrmFlowTemplate add = BeanUtil.toBean(bo, HrmFlowTemplate.class);
|
||||
return baseMapper.insert(add) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateByBo(HrmFlowTemplateBo bo) {
|
||||
HrmFlowTemplate update = BeanUtil.toBean(bo, HrmFlowTemplate.class);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<HrmFlowTemplate> buildQueryWrapper(HrmFlowTemplateBo bo) {
|
||||
LambdaQueryWrapper<HrmFlowTemplate> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getTplId() != null, HrmFlowTemplate::getTplId, bo.getTplId());
|
||||
lqw.like(bo.getTplCode() != null, HrmFlowTemplate::getTplCode, bo.getTplCode());
|
||||
lqw.like(bo.getTplName() != null, HrmFlowTemplate::getTplName, bo.getTplName());
|
||||
lqw.eq(bo.getBizType() != null, HrmFlowTemplate::getBizType, bo.getBizType());
|
||||
lqw.eq(bo.getVersion() != null, HrmFlowTemplate::getVersion, bo.getVersion());
|
||||
lqw.eq(bo.getEnabled() != null, HrmFlowTemplate::getEnabled, bo.getEnabled());
|
||||
return lqw;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
package com.klp.hrm.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.HrmFormData;
|
||||
import com.klp.hrm.domain.bo.HrmFormDataBo;
|
||||
import com.klp.hrm.domain.vo.HrmFormDataVo;
|
||||
import com.klp.hrm.mapper.HrmFormDataMapper;
|
||||
import com.klp.hrm.service.IHrmFormDataService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class HrmFormDataServiceImpl implements IHrmFormDataService {
|
||||
|
||||
private final HrmFormDataMapper baseMapper;
|
||||
|
||||
@Override
|
||||
public HrmFormDataVo queryById(Long formId) {
|
||||
return baseMapper.selectVoById(formId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<HrmFormDataVo> queryPageList(HrmFormDataBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<HrmFormData> lqw = buildQueryWrapper(bo);
|
||||
Page<HrmFormDataVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HrmFormDataVo> queryList(HrmFormDataBo bo) {
|
||||
LambdaQueryWrapper<HrmFormData> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(HrmFormDataBo bo) {
|
||||
HrmFormData add = BeanUtil.toBean(bo, HrmFormData.class);
|
||||
return baseMapper.insert(add) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateByBo(HrmFormDataBo bo) {
|
||||
HrmFormData update = BeanUtil.toBean(bo, HrmFormData.class);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<HrmFormData> buildQueryWrapper(HrmFormDataBo bo) {
|
||||
LambdaQueryWrapper<HrmFormData> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getFormId() != null, HrmFormData::getFormId, bo.getFormId());
|
||||
lqw.eq(bo.getBizType() != null, HrmFormData::getBizType, bo.getBizType());
|
||||
lqw.eq(bo.getBizId() != null, HrmFormData::getBizId, bo.getBizId());
|
||||
return lqw;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,72 @@
|
||||
package com.klp.hrm.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.HrmGrade;
|
||||
import com.klp.hrm.domain.bo.HrmGradeBo;
|
||||
import com.klp.hrm.domain.vo.HrmGradeVo;
|
||||
import com.klp.hrm.mapper.HrmGradeMapper;
|
||||
import com.klp.hrm.service.IHrmGradeService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class HrmGradeServiceImpl implements IHrmGradeService {
|
||||
|
||||
private final HrmGradeMapper baseMapper;
|
||||
|
||||
@Override
|
||||
public HrmGradeVo queryById(Long gradeId) {
|
||||
return baseMapper.selectVoById(gradeId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<HrmGradeVo> queryPageList(HrmGradeBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<HrmGrade> lqw = buildQueryWrapper(bo);
|
||||
Page<HrmGradeVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HrmGradeVo> queryList(HrmGradeBo bo) {
|
||||
LambdaQueryWrapper<HrmGrade> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(HrmGradeBo bo) {
|
||||
HrmGrade add = BeanUtil.toBean(bo, HrmGrade.class);
|
||||
return baseMapper.insert(add) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateByBo(HrmGradeBo bo) {
|
||||
HrmGrade update = BeanUtil.toBean(bo, HrmGrade.class);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<HrmGrade> buildQueryWrapper(HrmGradeBo bo) {
|
||||
LambdaQueryWrapper<HrmGrade> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getGradeId() != null, HrmGrade::getGradeId, bo.getGradeId());
|
||||
lqw.like(bo.getGradeCode() != null, HrmGrade::getGradeCode, bo.getGradeCode());
|
||||
lqw.like(bo.getGradeName() != null, HrmGrade::getGradeName, bo.getGradeName());
|
||||
lqw.orderByAsc(HrmGrade::getLevelNo);
|
||||
return lqw;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,74 @@
|
||||
package com.klp.hrm.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.HrmHeadcountPlan;
|
||||
import com.klp.hrm.domain.bo.HrmHeadcountPlanBo;
|
||||
import com.klp.hrm.domain.vo.HrmHeadcountPlanVo;
|
||||
import com.klp.hrm.mapper.HrmHeadcountPlanMapper;
|
||||
import com.klp.hrm.service.IHrmHeadcountPlanService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class HrmHeadcountPlanServiceImpl implements IHrmHeadcountPlanService {
|
||||
|
||||
private final HrmHeadcountPlanMapper baseMapper;
|
||||
|
||||
@Override
|
||||
public HrmHeadcountPlanVo queryById(Long planId) {
|
||||
return baseMapper.selectVoById(planId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<HrmHeadcountPlanVo> queryPageList(HrmHeadcountPlanBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<HrmHeadcountPlan> lqw = buildQueryWrapper(bo);
|
||||
Page<HrmHeadcountPlanVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HrmHeadcountPlanVo> queryList(HrmHeadcountPlanBo bo) {
|
||||
LambdaQueryWrapper<HrmHeadcountPlan> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(HrmHeadcountPlanBo bo) {
|
||||
HrmHeadcountPlan add = BeanUtil.toBean(bo, HrmHeadcountPlan.class);
|
||||
return baseMapper.insert(add) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateByBo(HrmHeadcountPlanBo bo) {
|
||||
HrmHeadcountPlan update = BeanUtil.toBean(bo, HrmHeadcountPlan.class);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<HrmHeadcountPlan> buildQueryWrapper(HrmHeadcountPlanBo bo) {
|
||||
LambdaQueryWrapper<HrmHeadcountPlan> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getPlanId() != null, HrmHeadcountPlan::getPlanId, bo.getPlanId());
|
||||
lqw.eq(bo.getOrgId() != null, HrmHeadcountPlan::getOrgId, bo.getOrgId());
|
||||
lqw.eq(bo.getPositionId() != null, HrmHeadcountPlan::getPositionId, bo.getPositionId());
|
||||
lqw.eq(bo.getYear() != null, HrmHeadcountPlan::getYear, bo.getYear());
|
||||
lqw.eq(bo.getMonth() != null, HrmHeadcountPlan::getMonth, bo.getMonth());
|
||||
lqw.orderByDesc(HrmHeadcountPlan::getYear).orderByDesc(HrmHeadcountPlan::getMonth);
|
||||
return lqw;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,72 @@
|
||||
package com.klp.hrm.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.HrmLeaveBalance;
|
||||
import com.klp.hrm.domain.bo.HrmLeaveBalanceBo;
|
||||
import com.klp.hrm.domain.vo.HrmLeaveBalanceVo;
|
||||
import com.klp.hrm.mapper.HrmLeaveBalanceMapper;
|
||||
import com.klp.hrm.service.IHrmLeaveBalanceService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class HrmLeaveBalanceServiceImpl implements IHrmLeaveBalanceService {
|
||||
|
||||
private final HrmLeaveBalanceMapper baseMapper;
|
||||
|
||||
@Override
|
||||
public HrmLeaveBalanceVo queryById(Long balId) {
|
||||
return baseMapper.selectVoById(balId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<HrmLeaveBalanceVo> queryPageList(HrmLeaveBalanceBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<HrmLeaveBalance> lqw = buildQueryWrapper(bo);
|
||||
Page<HrmLeaveBalanceVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HrmLeaveBalanceVo> queryList(HrmLeaveBalanceBo bo) {
|
||||
LambdaQueryWrapper<HrmLeaveBalance> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(HrmLeaveBalanceBo bo) {
|
||||
HrmLeaveBalance add = BeanUtil.toBean(bo, HrmLeaveBalance.class);
|
||||
return baseMapper.insert(add) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateByBo(HrmLeaveBalanceBo bo) {
|
||||
HrmLeaveBalance update = BeanUtil.toBean(bo, HrmLeaveBalance.class);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<HrmLeaveBalance> buildQueryWrapper(HrmLeaveBalanceBo bo) {
|
||||
LambdaQueryWrapper<HrmLeaveBalance> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getBalId() != null, HrmLeaveBalance::getBalId, bo.getBalId());
|
||||
lqw.eq(bo.getEmpId() != null, HrmLeaveBalance::getEmpId, bo.getEmpId());
|
||||
lqw.eq(bo.getLeaveType() != null, HrmLeaveBalance::getLeaveType, bo.getLeaveType());
|
||||
lqw.eq(bo.getExpireDate() != null, HrmLeaveBalance::getExpireDate, bo.getExpireDate());
|
||||
return lqw;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,78 @@
|
||||
package com.klp.hrm.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.HrmLeaveReq;
|
||||
import com.klp.hrm.domain.bo.HrmLeaveReqBo;
|
||||
import com.klp.hrm.domain.vo.HrmLeaveReqVo;
|
||||
import com.klp.hrm.mapper.HrmLeaveReqMapper;
|
||||
import com.klp.hrm.service.IHrmLeaveReqService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class HrmLeaveReqServiceImpl implements IHrmLeaveReqService {
|
||||
|
||||
private final HrmLeaveReqMapper baseMapper;
|
||||
|
||||
@Override
|
||||
public HrmLeaveReqVo queryById(Long bizId) {
|
||||
return baseMapper.selectVoById(bizId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<HrmLeaveReqVo> queryPageList(HrmLeaveReqBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<HrmLeaveReq> lqw = buildQueryWrapper(bo);
|
||||
Page<HrmLeaveReqVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HrmLeaveReqVo> queryList(HrmLeaveReqBo bo) {
|
||||
LambdaQueryWrapper<HrmLeaveReq> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(HrmLeaveReqBo bo) {
|
||||
HrmLeaveReq add = BeanUtil.toBean(bo, HrmLeaveReq.class);
|
||||
add.setStatus(defaultStatus(add.getStatus()));
|
||||
return baseMapper.insert(add) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateByBo(HrmLeaveReqBo bo) {
|
||||
HrmLeaveReq update = BeanUtil.toBean(bo, HrmLeaveReq.class);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<HrmLeaveReq> buildQueryWrapper(HrmLeaveReqBo bo) {
|
||||
LambdaQueryWrapper<HrmLeaveReq> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getBizId() != null, HrmLeaveReq::getBizId, bo.getBizId());
|
||||
lqw.eq(bo.getEmpId() != null, HrmLeaveReq::getEmpId, bo.getEmpId());
|
||||
lqw.eq(bo.getLeaveType() != null, HrmLeaveReq::getLeaveType, bo.getLeaveType());
|
||||
lqw.eq(bo.getStatus() != null, HrmLeaveReq::getStatus, bo.getStatus());
|
||||
lqw.eq(bo.getStartTime() != null, HrmLeaveReq::getStartTime, bo.getStartTime());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
private String defaultStatus(String status) {
|
||||
return status == null ? "draft" : status;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,82 @@
|
||||
package com.klp.hrm.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.HrmOrg;
|
||||
import com.klp.hrm.domain.bo.HrmOrgBo;
|
||||
import com.klp.hrm.domain.vo.HrmOrgVo;
|
||||
import com.klp.hrm.mapper.HrmOrgMapper;
|
||||
import com.klp.hrm.service.IHrmOrgService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class HrmOrgServiceImpl implements IHrmOrgService {
|
||||
|
||||
private final HrmOrgMapper baseMapper;
|
||||
|
||||
@Override
|
||||
public HrmOrgVo queryById(Long orgId) {
|
||||
return baseMapper.selectVoById(orgId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<HrmOrgVo> queryPageList(HrmOrgBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<HrmOrg> lqw = buildQueryWrapper(bo);
|
||||
Page<HrmOrgVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HrmOrgVo> queryList(HrmOrgBo bo) {
|
||||
LambdaQueryWrapper<HrmOrg> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(HrmOrgBo bo) {
|
||||
HrmOrg add = BeanUtil.toBean(bo, HrmOrg.class);
|
||||
validEntityBeforeSave(add);
|
||||
return baseMapper.insert(add) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateByBo(HrmOrgBo bo) {
|
||||
HrmOrg update = BeanUtil.toBean(bo, HrmOrg.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
// 可按需添加校验
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<HrmOrg> buildQueryWrapper(HrmOrgBo bo) {
|
||||
LambdaQueryWrapper<HrmOrg> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getOrgId() != null, HrmOrg::getOrgId, bo.getOrgId());
|
||||
lqw.eq(bo.getParentId() != null, HrmOrg::getParentId, bo.getParentId());
|
||||
lqw.like(bo.getOrgCode() != null, HrmOrg::getOrgCode, bo.getOrgCode());
|
||||
lqw.like(bo.getOrgName() != null, HrmOrg::getOrgName, bo.getOrgName());
|
||||
lqw.eq(bo.getOrgType() != null, HrmOrg::getOrgType, bo.getOrgType());
|
||||
lqw.eq(bo.getStatus() != null, HrmOrg::getStatus, bo.getStatus());
|
||||
lqw.orderByAsc(HrmOrg::getParentId).orderByAsc(HrmOrg::getOrderNum);
|
||||
return lqw;
|
||||
}
|
||||
|
||||
private void validEntityBeforeSave(HrmOrg entity) {
|
||||
// 可添加唯一性校验: org_code
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,78 @@
|
||||
package com.klp.hrm.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.HrmOvertimeReq;
|
||||
import com.klp.hrm.domain.bo.HrmOvertimeReqBo;
|
||||
import com.klp.hrm.domain.vo.HrmOvertimeReqVo;
|
||||
import com.klp.hrm.mapper.HrmOvertimeReqMapper;
|
||||
import com.klp.hrm.service.IHrmOvertimeReqService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class HrmOvertimeReqServiceImpl implements IHrmOvertimeReqService {
|
||||
|
||||
private final HrmOvertimeReqMapper baseMapper;
|
||||
|
||||
@Override
|
||||
public HrmOvertimeReqVo queryById(Long bizId) {
|
||||
return baseMapper.selectVoById(bizId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<HrmOvertimeReqVo> queryPageList(HrmOvertimeReqBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<HrmOvertimeReq> lqw = buildQueryWrapper(bo);
|
||||
Page<HrmOvertimeReqVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HrmOvertimeReqVo> queryList(HrmOvertimeReqBo bo) {
|
||||
LambdaQueryWrapper<HrmOvertimeReq> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(HrmOvertimeReqBo bo) {
|
||||
HrmOvertimeReq add = BeanUtil.toBean(bo, HrmOvertimeReq.class);
|
||||
add.setStatus(defaultStatus(add.getStatus()));
|
||||
return baseMapper.insert(add) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateByBo(HrmOvertimeReqBo bo) {
|
||||
HrmOvertimeReq update = BeanUtil.toBean(bo, HrmOvertimeReq.class);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<HrmOvertimeReq> buildQueryWrapper(HrmOvertimeReqBo bo) {
|
||||
LambdaQueryWrapper<HrmOvertimeReq> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getBizId() != null, HrmOvertimeReq::getBizId, bo.getBizId());
|
||||
lqw.eq(bo.getEmpId() != null, HrmOvertimeReq::getEmpId, bo.getEmpId());
|
||||
lqw.eq(bo.getOtType() != null, HrmOvertimeReq::getOtType, bo.getOtType());
|
||||
lqw.eq(bo.getStatus() != null, HrmOvertimeReq::getStatus, bo.getStatus());
|
||||
lqw.eq(bo.getStartTime() != null, HrmOvertimeReq::getStartTime, bo.getStartTime());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
private String defaultStatus(String status) {
|
||||
return status == null ? "draft" : status;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,70 @@
|
||||
package com.klp.hrm.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.HrmPayPlan;
|
||||
import com.klp.hrm.domain.bo.HrmPayPlanBo;
|
||||
import com.klp.hrm.domain.vo.HrmPayPlanVo;
|
||||
import com.klp.hrm.mapper.HrmPayPlanMapper;
|
||||
import com.klp.hrm.service.IHrmPayPlanService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class HrmPayPlanServiceImpl implements IHrmPayPlanService {
|
||||
|
||||
private final HrmPayPlanMapper baseMapper;
|
||||
|
||||
@Override
|
||||
public HrmPayPlanVo queryById(Long planId) {
|
||||
return baseMapper.selectVoById(planId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<HrmPayPlanVo> queryPageList(HrmPayPlanBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<HrmPayPlan> lqw = buildQueryWrapper(bo);
|
||||
Page<HrmPayPlanVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HrmPayPlanVo> queryList(HrmPayPlanBo bo) {
|
||||
LambdaQueryWrapper<HrmPayPlan> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(HrmPayPlanBo bo) {
|
||||
HrmPayPlan add = BeanUtil.toBean(bo, HrmPayPlan.class);
|
||||
return baseMapper.insert(add) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateByBo(HrmPayPlanBo bo) {
|
||||
HrmPayPlan update = BeanUtil.toBean(bo, HrmPayPlan.class);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<HrmPayPlan> buildQueryWrapper(HrmPayPlanBo bo) {
|
||||
LambdaQueryWrapper<HrmPayPlan> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getPlanId() != null, HrmPayPlan::getPlanId, bo.getPlanId());
|
||||
lqw.like(bo.getPlanName() != null, HrmPayPlan::getPlanName, bo.getPlanName());
|
||||
return lqw;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,72 @@
|
||||
package com.klp.hrm.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.HrmPayRun;
|
||||
import com.klp.hrm.domain.bo.HrmPayRunBo;
|
||||
import com.klp.hrm.domain.vo.HrmPayRunVo;
|
||||
import com.klp.hrm.mapper.HrmPayRunMapper;
|
||||
import com.klp.hrm.service.IHrmPayRunService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class HrmPayRunServiceImpl implements IHrmPayRunService {
|
||||
|
||||
private final HrmPayRunMapper baseMapper;
|
||||
|
||||
@Override
|
||||
public HrmPayRunVo queryById(Long runId) {
|
||||
return baseMapper.selectVoById(runId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<HrmPayRunVo> queryPageList(HrmPayRunBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<HrmPayRun> lqw = buildQueryWrapper(bo);
|
||||
Page<HrmPayRunVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HrmPayRunVo> queryList(HrmPayRunBo bo) {
|
||||
LambdaQueryWrapper<HrmPayRun> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(HrmPayRunBo bo) {
|
||||
HrmPayRun add = BeanUtil.toBean(bo, HrmPayRun.class);
|
||||
return baseMapper.insert(add) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateByBo(HrmPayRunBo bo) {
|
||||
HrmPayRun update = BeanUtil.toBean(bo, HrmPayRun.class);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<HrmPayRun> buildQueryWrapper(HrmPayRunBo bo) {
|
||||
LambdaQueryWrapper<HrmPayRun> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getRunId() != null, HrmPayRun::getRunId, bo.getRunId());
|
||||
lqw.like(bo.getPeriod() != null, HrmPayRun::getPeriod, bo.getPeriod());
|
||||
lqw.eq(bo.getStatus() != null, HrmPayRun::getStatus, bo.getStatus());
|
||||
lqw.eq(bo.getPlanId() != null, HrmPayRun::getPlanId, bo.getPlanId());
|
||||
return lqw;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,77 @@
|
||||
package com.klp.hrm.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.HrmPayslip;
|
||||
import com.klp.hrm.domain.bo.HrmPayslipBo;
|
||||
import com.klp.hrm.domain.vo.HrmPayslipVo;
|
||||
import com.klp.hrm.mapper.HrmPayslipMapper;
|
||||
import com.klp.hrm.service.IHrmPayslipService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class HrmPayslipServiceImpl implements IHrmPayslipService {
|
||||
|
||||
private final HrmPayslipMapper baseMapper;
|
||||
|
||||
@Override
|
||||
public HrmPayslipVo queryById(Long slipId) {
|
||||
return baseMapper.selectVoById(slipId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<HrmPayslipVo> queryPageList(HrmPayslipBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<HrmPayslip> lqw = buildQueryWrapper(bo);
|
||||
Page<HrmPayslipVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HrmPayslipVo> queryList(HrmPayslipBo bo) {
|
||||
LambdaQueryWrapper<HrmPayslip> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(HrmPayslipBo bo) {
|
||||
HrmPayslip add = BeanUtil.toBean(bo, HrmPayslip.class);
|
||||
add.setStatus(defaultStatus(add.getStatus()));
|
||||
return baseMapper.insert(add) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateByBo(HrmPayslipBo bo) {
|
||||
HrmPayslip update = BeanUtil.toBean(bo, HrmPayslip.class);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<HrmPayslip> buildQueryWrapper(HrmPayslipBo bo) {
|
||||
LambdaQueryWrapper<HrmPayslip> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getSlipId() != null, HrmPayslip::getSlipId, bo.getSlipId());
|
||||
lqw.eq(bo.getRunId() != null, HrmPayslip::getRunId, bo.getRunId());
|
||||
lqw.eq(bo.getEmpId() != null, HrmPayslip::getEmpId, bo.getEmpId());
|
||||
lqw.eq(bo.getStatus() != null, HrmPayslip::getStatus, bo.getStatus());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
private String defaultStatus(String status) {
|
||||
return status == null ? "issued" : status;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,74 @@
|
||||
package com.klp.hrm.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.HrmPosition;
|
||||
import com.klp.hrm.domain.bo.HrmPositionBo;
|
||||
import com.klp.hrm.domain.vo.HrmPositionVo;
|
||||
import com.klp.hrm.mapper.HrmPositionMapper;
|
||||
import com.klp.hrm.service.IHrmPositionService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class HrmPositionServiceImpl implements IHrmPositionService {
|
||||
|
||||
private final HrmPositionMapper baseMapper;
|
||||
|
||||
@Override
|
||||
public HrmPositionVo queryById(Long positionId) {
|
||||
return baseMapper.selectVoById(positionId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<HrmPositionVo> queryPageList(HrmPositionBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<HrmPosition> lqw = buildQueryWrapper(bo);
|
||||
Page<HrmPositionVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HrmPositionVo> queryList(HrmPositionBo bo) {
|
||||
LambdaQueryWrapper<HrmPosition> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(HrmPositionBo bo) {
|
||||
HrmPosition add = BeanUtil.toBean(bo, HrmPosition.class);
|
||||
return baseMapper.insert(add) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateByBo(HrmPositionBo bo) {
|
||||
HrmPosition update = BeanUtil.toBean(bo, HrmPosition.class);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<HrmPosition> buildQueryWrapper(HrmPositionBo bo) {
|
||||
LambdaQueryWrapper<HrmPosition> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getPositionId() != null, HrmPosition::getPositionId, bo.getPositionId());
|
||||
lqw.like(bo.getPositionCode() != null, HrmPosition::getPositionCode, bo.getPositionCode());
|
||||
lqw.like(bo.getPositionName() != null, HrmPosition::getPositionName, bo.getPositionName());
|
||||
lqw.eq(bo.getGradeId() != null, HrmPosition::getGradeId, bo.getGradeId());
|
||||
lqw.eq(bo.getStatus() != null, HrmPosition::getStatus, bo.getStatus());
|
||||
lqw.orderByAsc(HrmPosition::getOrderNum);
|
||||
return lqw;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,72 @@
|
||||
package com.klp.hrm.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.HrmPunch;
|
||||
import com.klp.hrm.domain.bo.HrmPunchBo;
|
||||
import com.klp.hrm.domain.vo.HrmPunchVo;
|
||||
import com.klp.hrm.mapper.HrmPunchMapper;
|
||||
import com.klp.hrm.service.IHrmPunchService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class HrmPunchServiceImpl implements IHrmPunchService {
|
||||
|
||||
private final HrmPunchMapper baseMapper;
|
||||
|
||||
@Override
|
||||
public HrmPunchVo queryById(Long punchId) {
|
||||
return baseMapper.selectVoById(punchId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<HrmPunchVo> queryPageList(HrmPunchBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<HrmPunch> lqw = buildQueryWrapper(bo);
|
||||
Page<HrmPunchVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HrmPunchVo> queryList(HrmPunchBo bo) {
|
||||
LambdaQueryWrapper<HrmPunch> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(HrmPunchBo bo) {
|
||||
HrmPunch add = BeanUtil.toBean(bo, HrmPunch.class);
|
||||
return baseMapper.insert(add) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateByBo(HrmPunchBo bo) {
|
||||
HrmPunch update = BeanUtil.toBean(bo, HrmPunch.class);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<HrmPunch> buildQueryWrapper(HrmPunchBo bo) {
|
||||
LambdaQueryWrapper<HrmPunch> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getPunchId() != null, HrmPunch::getPunchId, bo.getPunchId());
|
||||
lqw.eq(bo.getEmpId() != null, HrmPunch::getEmpId, bo.getEmpId());
|
||||
lqw.eq(bo.getPunchTime() != null, HrmPunch::getPunchTime, bo.getPunchTime());
|
||||
lqw.eq(bo.getSource() != null, HrmPunch::getSource, bo.getSource());
|
||||
return lqw;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,72 @@
|
||||
package com.klp.hrm.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.HrmSchedule;
|
||||
import com.klp.hrm.domain.bo.HrmScheduleBo;
|
||||
import com.klp.hrm.domain.vo.HrmScheduleVo;
|
||||
import com.klp.hrm.mapper.HrmScheduleMapper;
|
||||
import com.klp.hrm.service.IHrmScheduleService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class HrmScheduleServiceImpl implements IHrmScheduleService {
|
||||
|
||||
private final HrmScheduleMapper baseMapper;
|
||||
|
||||
@Override
|
||||
public HrmScheduleVo queryById(Long schedId) {
|
||||
return baseMapper.selectVoById(schedId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<HrmScheduleVo> queryPageList(HrmScheduleBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<HrmSchedule> lqw = buildQueryWrapper(bo);
|
||||
Page<HrmScheduleVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HrmScheduleVo> queryList(HrmScheduleBo bo) {
|
||||
LambdaQueryWrapper<HrmSchedule> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(HrmScheduleBo bo) {
|
||||
HrmSchedule add = BeanUtil.toBean(bo, HrmSchedule.class);
|
||||
return baseMapper.insert(add) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateByBo(HrmScheduleBo bo) {
|
||||
HrmSchedule update = BeanUtil.toBean(bo, HrmSchedule.class);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<HrmSchedule> buildQueryWrapper(HrmScheduleBo bo) {
|
||||
LambdaQueryWrapper<HrmSchedule> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getSchedId() != null, HrmSchedule::getSchedId, bo.getSchedId());
|
||||
lqw.eq(bo.getEmpId() != null, HrmSchedule::getEmpId, bo.getEmpId());
|
||||
lqw.eq(bo.getWorkDate() != null, HrmSchedule::getWorkDate, bo.getWorkDate());
|
||||
lqw.eq(bo.getShiftId() != null, HrmSchedule::getShiftId, bo.getShiftId());
|
||||
return lqw;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,212 @@
|
||||
package com.klp.hrm.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.io.IoUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.common.exception.ServiceException;
|
||||
import com.klp.hrm.config.StampProperties;
|
||||
import com.klp.hrm.domain.HrmSealReq;
|
||||
import com.klp.hrm.domain.bo.HrmSealReqBo;
|
||||
import com.klp.hrm.domain.bo.HrmSealStampBo;
|
||||
import com.klp.hrm.domain.bo.HrmFlowStartBo;
|
||||
import com.klp.hrm.domain.vo.HrmSealReqVo;
|
||||
import com.klp.hrm.mapper.HrmSealReqMapper;
|
||||
import com.klp.hrm.service.IHrmFlowInstanceService;
|
||||
import com.klp.hrm.service.IHrmSealReqService;
|
||||
import com.klp.oss.core.OssClient;
|
||||
import com.klp.oss.entity.UploadResult;
|
||||
import com.klp.oss.factory.OssFactory;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.pdfbox.pdmodel.PDDocument;
|
||||
import org.apache.pdfbox.pdmodel.PDPage;
|
||||
import org.apache.pdfbox.pdmodel.PDPageContentStream;
|
||||
import org.apache.pdfbox.pdmodel.common.PDRectangle;
|
||||
import org.apache.pdfbox.pdmodel.graphics.image.PDImageXObject;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.io.ByteArrayOutputStream;
|
||||
import java.io.InputStream;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 用印申请 服务实现
|
||||
*/
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class HrmSealReqServiceImpl implements IHrmSealReqService {
|
||||
|
||||
private final HrmSealReqMapper baseMapper;
|
||||
private final StampProperties stampProperties;
|
||||
private final IHrmFlowInstanceService flowInstanceService;
|
||||
|
||||
@Override
|
||||
public HrmSealReqVo queryById(Long bizId) {
|
||||
return baseMapper.selectVoById(bizId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<HrmSealReqVo> queryPageList(HrmSealReqBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<HrmSealReq> lqw = buildQueryWrapper(bo);
|
||||
Page<HrmSealReqVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HrmSealReqVo> queryList(HrmSealReqBo bo) {
|
||||
LambdaQueryWrapper<HrmSealReq> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(HrmSealReqBo bo) {
|
||||
HrmSealReq add = BeanUtil.toBean(bo, HrmSealReq.class);
|
||||
add.setStatus(defaultStatus(add.getStatus()));
|
||||
validEntityBeforeSave(add);
|
||||
boolean ok = baseMapper.insert(add) > 0;
|
||||
// 提交即发起流程(可选)
|
||||
if (ok && bo.getFlowTplId() != null) {
|
||||
HrmFlowStartBo start = new HrmFlowStartBo();
|
||||
start.setTplId(bo.getFlowTplId());
|
||||
start.setBizType("seal");
|
||||
start.setBizId(add.getBizId());
|
||||
start.setStartUserId(bo.getStartUserId());
|
||||
start.setContentJson(bo.getContentJson());
|
||||
flowInstanceService.startInstance(start);
|
||||
// 更新状态为流转中
|
||||
updateStatus(add.getBizId(), "running");
|
||||
}
|
||||
return ok;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateByBo(HrmSealReqBo bo) {
|
||||
if (bo.getBizId() == null) {
|
||||
throw new ServiceException("bizId不能为空");
|
||||
}
|
||||
HrmSealReq update = BeanUtil.toBean(bo, HrmSealReq.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if (isValid) {
|
||||
// 可添加业务校验
|
||||
}
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateStatus(Long bizId, String status) {
|
||||
HrmSealReq req = new HrmSealReq();
|
||||
req.setBizId(bizId);
|
||||
req.setStatus(status);
|
||||
return baseMapper.updateById(req) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public String stampWithJava(Long bizId, HrmSealStampBo cmd) {
|
||||
if (!Boolean.TRUE.equals(stampProperties.getJavaService().getEnabled())) {
|
||||
throw new ServiceException("Java盖章未启用");
|
||||
}
|
||||
String resultUrl = doPdfStamp(cmd);
|
||||
// 更新回执状态/附件占位
|
||||
HrmSealReq update = new HrmSealReq();
|
||||
update.setBizId(bizId);
|
||||
update.setReceiptStatus("done");
|
||||
update.setReceiptFileIds(resultUrl);
|
||||
baseMapper.updateById(update);
|
||||
return resultUrl;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String stampWithPython(Long bizId, HrmSealStampBo cmd) {
|
||||
if (!Boolean.TRUE.equals(stampProperties.getPythonService().isEnabled())) {
|
||||
throw new ServiceException("Python盖章未启用");
|
||||
}
|
||||
// TODO: 调用外部Python服务(用户未提供接口,保留占位)
|
||||
throw new ServiceException("Python盖章接口未实现");
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<HrmSealReq> buildQueryWrapper(HrmSealReqBo bo) {
|
||||
LambdaQueryWrapper<HrmSealReq> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getBizId() != null, HrmSealReq::getBizId, bo.getBizId());
|
||||
lqw.eq(bo.getEmpId() != null, HrmSealReq::getEmpId, bo.getEmpId());
|
||||
lqw.eq(bo.getSealType() != null, HrmSealReq::getSealType, bo.getSealType());
|
||||
lqw.eq(bo.getStatus() != null, HrmSealReq::getStatus, bo.getStatus());
|
||||
lqw.orderByDesc(HrmSealReq::getCreateTime);
|
||||
return lqw;
|
||||
}
|
||||
|
||||
private void validEntityBeforeSave(HrmSealReq entity) {
|
||||
// 预留数据校验,如唯一约束
|
||||
}
|
||||
|
||||
private String defaultStatus(String status) {
|
||||
return status == null ? "draft" : status;
|
||||
}
|
||||
|
||||
private String doPdfStamp(HrmSealStampBo cmd) {
|
||||
try (InputStream pdfIn = getObject(cmd.getTargetFileUrl());
|
||||
InputStream imgIn = getObject(cmd.getStampImageUrl());
|
||||
PDDocument document = PDDocument.load(pdfIn);
|
||||
ByteArrayOutputStream bos = new ByteArrayOutputStream()) {
|
||||
|
||||
int pageIndex = cmd.getPageNo() - 1;
|
||||
if (pageIndex < 0 || pageIndex >= document.getNumberOfPages()) {
|
||||
throw new ServiceException("页码超出范围");
|
||||
}
|
||||
PDPage page = document.getPage(pageIndex);
|
||||
PDRectangle mediaBox = page.getMediaBox();
|
||||
|
||||
byte[] imgBytes = IoUtil.readBytes(imgIn);
|
||||
PDImageXObject image = PDImageXObject.createFromByteArray(document, imgBytes, "stamp");
|
||||
|
||||
float width = cmd.getWidthPx() != null ? cmd.getWidthPx() : image.getWidth();
|
||||
float height = cmd.getHeightPx() != null ? cmd.getHeightPx() : image.getHeight();
|
||||
float x = cmd.getXPx();
|
||||
float y = cmd.getYPx();
|
||||
|
||||
// 保证不越界
|
||||
if (x + width > mediaBox.getWidth()) {
|
||||
width = mediaBox.getWidth() - x;
|
||||
}
|
||||
if (y + height > mediaBox.getHeight()) {
|
||||
height = mediaBox.getHeight() - y;
|
||||
}
|
||||
|
||||
try (PDPageContentStream contentStream = new PDPageContentStream(document, page,
|
||||
PDPageContentStream.AppendMode.APPEND, true, true)) {
|
||||
contentStream.drawImage(image, x, y, width, height);
|
||||
}
|
||||
|
||||
document.save(bos);
|
||||
|
||||
OssClient storage = OssFactory.instance();
|
||||
UploadResult uploadResult = storage.uploadSuffix(bos.toByteArray(), ".pdf", "application/pdf");
|
||||
return uploadResult.getUrl();
|
||||
} catch (ServiceException se) {
|
||||
throw se;
|
||||
} catch (Exception e) {
|
||||
log.error("PDF盖章失败", e);
|
||||
throw new ServiceException("PDF盖章失败: " + e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
private InputStream getObject(String url) {
|
||||
OssClient storage = OssFactory.instance();
|
||||
return storage.getObjectContent(url);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,72 @@
|
||||
package com.klp.hrm.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.HrmShift;
|
||||
import com.klp.hrm.domain.bo.HrmShiftBo;
|
||||
import com.klp.hrm.domain.vo.HrmShiftVo;
|
||||
import com.klp.hrm.mapper.HrmShiftMapper;
|
||||
import com.klp.hrm.service.IHrmShiftService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class HrmShiftServiceImpl implements IHrmShiftService {
|
||||
|
||||
private final HrmShiftMapper baseMapper;
|
||||
|
||||
@Override
|
||||
public HrmShiftVo queryById(Long shiftId) {
|
||||
return baseMapper.selectVoById(shiftId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<HrmShiftVo> queryPageList(HrmShiftBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<HrmShift> lqw = buildQueryWrapper(bo);
|
||||
Page<HrmShiftVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HrmShiftVo> queryList(HrmShiftBo bo) {
|
||||
LambdaQueryWrapper<HrmShift> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(HrmShiftBo bo) {
|
||||
HrmShift add = BeanUtil.toBean(bo, HrmShift.class);
|
||||
return baseMapper.insert(add) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateByBo(HrmShiftBo bo) {
|
||||
HrmShift update = BeanUtil.toBean(bo, HrmShift.class);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<HrmShift> buildQueryWrapper(HrmShiftBo bo) {
|
||||
LambdaQueryWrapper<HrmShift> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getShiftId() != null, HrmShift::getShiftId, bo.getShiftId());
|
||||
lqw.like(bo.getShiftCode() != null, HrmShift::getShiftCode, bo.getShiftCode());
|
||||
lqw.like(bo.getShiftName() != null, HrmShift::getShiftName, bo.getShiftName());
|
||||
lqw.eq(bo.getIsNight() != null, HrmShift::getIsNight, bo.getIsNight());
|
||||
return lqw;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
package com.klp.hrm.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.HrmStatSnapshot;
|
||||
import com.klp.hrm.domain.bo.HrmStatSnapshotBo;
|
||||
import com.klp.hrm.domain.vo.HrmStatSnapshotVo;
|
||||
import com.klp.hrm.mapper.HrmStatSnapshotMapper;
|
||||
import com.klp.hrm.service.IHrmStatSnapshotService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class HrmStatSnapshotServiceImpl implements IHrmStatSnapshotService {
|
||||
|
||||
private final HrmStatSnapshotMapper baseMapper;
|
||||
|
||||
@Override
|
||||
public HrmStatSnapshotVo queryById(Long snapId) {
|
||||
return baseMapper.selectVoById(snapId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<HrmStatSnapshotVo> queryPageList(HrmStatSnapshotBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<HrmStatSnapshot> lqw = buildQueryWrapper(bo);
|
||||
Page<HrmStatSnapshotVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HrmStatSnapshotVo> queryList(HrmStatSnapshotBo bo) {
|
||||
LambdaQueryWrapper<HrmStatSnapshot> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(HrmStatSnapshotBo bo) {
|
||||
HrmStatSnapshot add = BeanUtil.toBean(bo, HrmStatSnapshot.class);
|
||||
return baseMapper.insert(add) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateByBo(HrmStatSnapshotBo bo) {
|
||||
HrmStatSnapshot update = BeanUtil.toBean(bo, HrmStatSnapshot.class);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<HrmStatSnapshot> buildQueryWrapper(HrmStatSnapshotBo bo) {
|
||||
LambdaQueryWrapper<HrmStatSnapshot> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getSnapId() != null, HrmStatSnapshot::getSnapId, bo.getSnapId());
|
||||
lqw.eq(bo.getStatDate() != null, HrmStatSnapshot::getStatDate, bo.getStatDate());
|
||||
lqw.eq(bo.getStatType() != null, HrmStatSnapshot::getStatType, bo.getStatType());
|
||||
return lqw;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,77 @@
|
||||
package com.klp.hrm.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.hrm.domain.HrmTravelReq;
|
||||
import com.klp.hrm.domain.bo.HrmTravelReqBo;
|
||||
import com.klp.hrm.domain.vo.HrmTravelReqVo;
|
||||
import com.klp.hrm.mapper.HrmTravelReqMapper;
|
||||
import com.klp.hrm.service.IHrmTravelReqService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class HrmTravelReqServiceImpl implements IHrmTravelReqService {
|
||||
|
||||
private final HrmTravelReqMapper baseMapper;
|
||||
|
||||
@Override
|
||||
public HrmTravelReqVo queryById(Long bizId) {
|
||||
return baseMapper.selectVoById(bizId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<HrmTravelReqVo> queryPageList(HrmTravelReqBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<HrmTravelReq> lqw = buildQueryWrapper(bo);
|
||||
Page<HrmTravelReqVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HrmTravelReqVo> queryList(HrmTravelReqBo bo) {
|
||||
LambdaQueryWrapper<HrmTravelReq> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(HrmTravelReqBo bo) {
|
||||
HrmTravelReq add = BeanUtil.toBean(bo, HrmTravelReq.class);
|
||||
add.setStatus(defaultStatus(add.getStatus()));
|
||||
return baseMapper.insert(add) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean updateByBo(HrmTravelReqBo bo) {
|
||||
HrmTravelReq update = BeanUtil.toBean(bo, HrmTravelReq.class);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<HrmTravelReq> buildQueryWrapper(HrmTravelReqBo bo) {
|
||||
LambdaQueryWrapper<HrmTravelReq> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getBizId() != null, HrmTravelReq::getBizId, bo.getBizId());
|
||||
lqw.eq(bo.getEmpId() != null, HrmTravelReq::getEmpId, bo.getEmpId());
|
||||
lqw.eq(bo.getStatus() != null, HrmTravelReq::getStatus, bo.getStatus());
|
||||
lqw.eq(bo.getStartTime() != null, HrmTravelReq::getStartTime, bo.getStartTime());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
private String defaultStatus(String status) {
|
||||
return status == null ? "draft" : status;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user