2023-08-15 20:48:09 +08:00
|
|
|
package com.engine.salary.service.impl;
|
|
|
|
|
|
|
|
|
|
import com.engine.core.impl.Service;
|
|
|
|
|
import com.engine.salary.entity.salarysob.bo.SalarySobInitEnv;
|
|
|
|
|
import com.engine.salary.entity.salarysob.param.SalarySobBasicSaveParam;
|
|
|
|
|
import com.engine.salary.entity.salarysob.po.SalarySobPO;
|
|
|
|
|
import com.engine.salary.service.SalarySobInitService;
|
|
|
|
|
|
|
|
|
|
/**
|
2023-08-23 15:46:18 +08:00
|
|
|
* 薪资账套初始化
|
|
|
|
|
* <p>Copyright: Copyright (c) 2023</p>
|
|
|
|
|
* <p>Company: 泛微软件</p>
|
|
|
|
|
*
|
|
|
|
|
* @author qiantao
|
|
|
|
|
* @version 1.0
|
|
|
|
|
**/
|
2023-08-15 20:48:09 +08:00
|
|
|
public abstract class AbstractSalarySobInitService extends Service implements SalarySobInitService {
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public SalarySobPO init(SalarySobBasicSaveParam saveParam) {
|
|
|
|
|
SalarySobInitEnv env = new SalarySobInitEnv();
|
|
|
|
|
env.setSaveParam(saveParam);
|
|
|
|
|
env.setCurrentUser(user);
|
|
|
|
|
|
|
|
|
|
// 初始化基础设置
|
|
|
|
|
initBasic(env);
|
|
|
|
|
// 初始化员工信息字段
|
|
|
|
|
initEmpField(env);
|
|
|
|
|
// 初始化薪资项目、薪资项目分组
|
|
|
|
|
initItem(env);
|
|
|
|
|
// 初始化回算薪资项目
|
|
|
|
|
initBackItem(env);
|
|
|
|
|
// 初始化累计字段对应规则
|
|
|
|
|
initAddUpRule(env);
|
|
|
|
|
// 初始化个税申报表字段对应规则
|
|
|
|
|
initTaxReportRule(env);
|
|
|
|
|
|
|
|
|
|
return env.getSalarySob();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 初始化基础设置
|
|
|
|
|
*
|
|
|
|
|
* @param env 公共变量
|
|
|
|
|
*/
|
|
|
|
|
protected abstract void initBasic(SalarySobInitEnv env);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 初始化人员信息字段
|
|
|
|
|
*
|
|
|
|
|
* @param env 公共变量
|
|
|
|
|
*/
|
|
|
|
|
protected abstract void initEmpField(SalarySobInitEnv env);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 初始化薪资项目、薪资项目分组
|
|
|
|
|
*
|
|
|
|
|
* @param env 公共变量
|
|
|
|
|
*/
|
|
|
|
|
protected abstract void initItem(SalarySobInitEnv env);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 初始化回算薪资项目
|
|
|
|
|
*
|
|
|
|
|
* @param env 公共变量
|
|
|
|
|
*/
|
|
|
|
|
protected abstract void initBackItem(SalarySobInitEnv env);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 初始化累计字段对应规则
|
|
|
|
|
*
|
|
|
|
|
* @param env 公共变量
|
|
|
|
|
*/
|
|
|
|
|
protected abstract void initAddUpRule(SalarySobInitEnv env);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 初始化个税申报表字段对应规则
|
|
|
|
|
*
|
|
|
|
|
* @param env 公共变量
|
|
|
|
|
*/
|
|
|
|
|
protected abstract void initTaxReportRule(SalarySobInitEnv env);
|
|
|
|
|
}
|