public static SalaryGrade AddSalaryGrade(string setid, string salPlan, string grade, DateTime effDate) { SalaryGrade plan = GetSalaryGrade(setid, salPlan, grade, effDate); if (plan == null) { plan = new SalaryGrade(); plan.标识 = Guid.NewGuid(); plan.集合 = setid; plan.薪酬体系 = salPlan; plan.薪等编号 = grade; plan.生效日期 = effDate; plan.创建时间 = DateTime.Now; plan.Save(); } return(plan); }
public static void SychSalaryGrade() { foreach (SalGrade sg in SalGrade.薪酬等级表) { SalaryGrade salPlan = AddSalaryGrade(sg.集合, sg.薪酬体系, sg.薪等编号, sg.生效日期); salPlan.薪等名称 = sg.薪等名称; salPlan.状态 = sg.状态; salPlan.基准工资标准 = sg.基准工资标准; salPlan.表工资标准 = sg.表工资标准; salPlan.设定工资标准 = sg.设定工资标准; salPlan.年休假工资 = sg.年休假工资; salPlan.养老保险缴纳基数 = sg.养老保险缴纳基数; salPlan.医疗保险缴纳基数 = sg.医疗保险缴纳基数; salPlan.生育保险缴纳基数 = sg.生育保险缴纳基数; salPlan.失业保险缴纳基数 = sg.失业保险缴纳基数; salPlan.工伤保险缴纳基数 = sg.工伤保险缴纳基数; salPlan.公积金基数 = sg.公积金基数; salPlan.次同步时间 = DateTime.Now; salPlan.Save(); } //冲突处理:有VS无 / 有VS变 / 无VS有 foreach (SalaryGrade grade in GetAll()) { SalGrade found = SalGrade.薪酬等级表.Find(a => a.集合 == grade.集合 && a.薪酬体系 == grade.薪酬体系 && a.薪等编号 == grade.薪等编号 && a.生效日期 == grade.生效日期); if (found == null) { grade.Delete(); } } }