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; /** * 薪资账套初始化 *

Copyright: Copyright (c) 2023

*

Company: 泛微软件

* * @author qiantao * @version 1.0 **/ 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); }