SHR之员工合同解除

员工合同解除
HRContractInfoFacadeControllerBean

这块的意思的源码可以自行翻阅该源码.

调用员工的实现这个合同自动解除

String sql="select fid from T_HR_HRCONTRACTINFO where FEMPLOYEEID='"+person.getId()+"' and FISNEWESTCONTRACT=1 ";
            IRowSet rs8=DbUtil.executeQuery(ctx,sql);
            try {
                if(rs8.next()){
                    EmployeeContractInfo employeeContractInfo=EmployeeContractFactory.getLocalInstance(ctx).getEmployeeContractInfo(new ObjectUuidPK(BOSUuid.read(rs5.getString("fid"))));
                    employeeContractInfo.setFreeDate(personpositionInfo.getLEFFDT());
                    HRContractInfoFacadeFactory.getLocalInstance(ctx).freeContract(employeeContractInfo);
                }
            } catch (Exception e) {
                e.printStackTrace();
            }

 

普通用户登录Web端,系统设置->员工基础数据->合同类别->选择一个合同类别->合同规则,可以自定义该合同类别的合同规则,持有该合同类别模板的合同的某个员工,做了变动之后,
符合合同规则中定义的目标用工关系状态,就会按照配置自动终止或解除合同,终止或解除日期默认取 变动的生效日期

翻了代码,合同解除,
1.合同记录表(T_HR_EmployeeContract):


  解除日期 更新为所选值
  如果解除日期<当天,state 和 newState 设为5
2.合同中间表(T_HR_HRContractInfo):
  newState 设为 5
  解除日期 更新为所选值
  如果解除日期<当天,state 设为5

合同记录表的newState当初为什么这么处理,原因不明

参考自:黄庆春
posted @ 2019-08-02 16:01  一条有梦想的海洋咸鱼  阅读(265)  评论(0编辑  收藏  举报