protected void LoadData() { CreateWaitDialog("正在查询...", "请稍等"); List <EmployeeInfo> emp_list = GetEmployeeList(); //排序 emp_list = emp_list.OrderBy(a => a.部门序号).ThenBy(a => a.员工序号).ToList(); List <EmployeeSalaryStructure> monthly_salary_list = new List <EmployeeSalaryStructure>(); foreach (EmployeeInfo emp in emp_list) { //获取员工的执行月薪记录 EmployeeSalaryStructure ss = new EmployeeSalaryStructure(emp); monthly_salary_list.Add(ss); } //排序 monthly_salary_list = monthly_salary_list.OrderByDescending(a => a.年薪_合计).ToList(); int order = 1; foreach (EmployeeSalaryStructure item in monthly_salary_list) { item.序号 = order++; } SetWaitDialogCaption("正在加载..."); CloseWaitDialog(); gridControl1.DataSource = monthly_salary_list; gridControl1.RefreshDataSource(); CloseWaitDialog(); }
private void ShowDetailItems() { EmployeeSalaryStructure item = bandedGridView1.GetRow(bandedGridView1.FocusedRowHandle) as EmployeeSalaryStructure; if (item != null) { PrivateSalary ps = PrivateSalary.GetPrivateSalary(item.员工编号, Convert.ToInt32(year.EditValue), Convert.ToInt32(month.EditValue)); if (ps == null) { MessageBox.Show(string.Format("没有找到{0} {1}年{2}月的工资。", item.姓名, year.Text, month.Text)); } else { ps.薪酬结构 = item; SalaryDetailForm form = new SalaryDetailForm(ps); form.ShowDialog(); } } }
protected void LoadData() { bool 年休假工资 = false, 交通餐饮补贴 = false; bool 绩效工资 = false, 工资借款 = false, 报账工资 = false, 福利借款 = false, 契约津贴 = false; CreateWaitDialog("正在查询...", "请稍等"); List <EmployeeInfo> emp_list = GetEmployeeList(); //排序 emp_list = emp_list.OrderBy(a => a.部门序号).ThenBy(a => a.员工序号).ToList(); List <EmployeeSalaryStructure> monthly_salary_list = new List <EmployeeSalaryStructure>(); foreach (EmployeeInfo emp in emp_list) { //获取员工的执行月薪记录 EmployeeSalaryStructure ss = new EmployeeSalaryStructure(emp); if (ss.月薪项目_减项_绩效工资 != 0) { 绩效工资 = true; } if (ss.月薪项目_减项_工资借款 != 0) { 工资借款 = true; } if (ss.月薪项目_减项_报账工资 != 0) { 报账工资 = true; } if (ss.月薪项目_减项_福利借款 != 0) { 福利借款 = true; } if (ss.月薪项目_减项_契约津贴 != 0) { 契约津贴 = true; } if (ss.月薪项目_年休假 != 0) { 年休假工资 = true; } if (ss.月薪项目_交通餐饮补贴 != 0) { 交通餐饮补贴 = true; } monthly_salary_list.Add(ss); } //排序 monthly_salary_list = monthly_salary_list.OrderByDescending(a => a.年薪_合计).ToList(); int order = 1; foreach (EmployeeSalaryStructure item in monthly_salary_list) { item.序号 = order++; } SetWaitDialogCaption("正在加载..."); CloseWaitDialog(); gridControl1.DataSource = monthly_salary_list; gridControl1.RefreshDataSource(); btn导出.Enabled = true; CloseWaitDialog(); if (!年休假工资) { gridBand年休假.Visible = false; } if (!交通餐饮补贴) { gridBand交通餐饮补贴.Visible = false; } //设置减项栏是否显示 if (!绩效工资) { gridBand绩效工资.Visible = false; } if (!工资借款) { gridBand工资借款.Visible = false; } if (!报账工资) { gridBand报账工资.Visible = false; } if (!福利借款) { gridBand福利借款.Visible = false; } if (!契约津贴) { gridBand契约津贴.Visible = false; } if (!绩效工资 && !工资借款 && !报账工资 && !福利借款 && !契约津贴) { gridBand月薪酬减项.Visible = false; } }
private void FillTable() { if (mySalary == null) { return; } DateTime 期间开始 = new DateTime(mySalary.年度, mySalary.月份, 1); DateTime 期间结束 = 期间开始.AddMonths(1).AddDays(-1); EmployeeSalaryStructure 薪酬结构 = mySalary.薪酬结构; SalaryResult 表工资 = mySalary.基础工资表; PrivateSalary 封闭工资 = mySalary; WageLoan 工资借款 = WageLoan.GetEffective(mySalary.员工编号, 期间开始); ContractAllowance 契约津贴 = ContractAllowance.GetEffective(mySalary.员工编号, 期间开始); decimal 月薪剩余 = 0; #region 薪酬结构 if (薪酬结构 != null) { cells["G3"].Value = (薪酬结构.年薪_合计 / 10000).ToString("#0.####"); cells["G4"].Value = (薪酬结构.年薪_奖励 / 10000).ToString("#0.####"); cells["G5"].Value = (薪酬结构.年薪_12个月 / 10000).ToString("#0.####"); } else { cells["G3"].Value = (封闭工资.职级工资 * 12 / 10000).ToString("#0.####"); cells["G5"].Value = 封闭工资.职级工资.ToString("#0.##"); } cells["G6"].Value = 封闭工资.职级工资.ToString("#0.##"); 月薪剩余 = 封闭工资.职级工资; if (工资借款 != null) { List <MonthlyWageLoanItem> items = MonthlyWageLoanItem.GetMonthlyWageLoanItems(mySalary.员工编号); items = items.FindAll(a => a.期间开始 >= 工资借款.开始时间 && a.期间开始 <= 期间结束); cells["G7"].Value = 工资借款.月借款额度.ToString("#0.##"); cells["G8"].Value = items.Sum(a => a.月借款标准).ToString("#0.##"); 月薪剩余 -= 工资借款.月借款额度; } if (契约津贴 != null) { List <MonthlyContractAllowanceItem> items = MonthlyContractAllowanceItem.GetMonthlyContractAllowanceItems(mySalary.员工编号); items = items.FindAll(a => a.期间开始 >= 契约津贴.开始时间 && a.期间开始 <= 期间结束); cells["G7"].Value = 契约津贴.月津贴额度.ToString("#0.##"); cells["G8"].Value = items.Sum(a => a.月津贴标准).ToString("#0.##"); 月薪剩余 -= 契约津贴.月津贴额度; } 月薪剩余 -= 封闭工资.本月执行绩效工资额; cells["G16"].Value = 封闭工资.本月执行绩效工资额.ToString("#0.##"); cells["G17"].Value = 月薪剩余.ToString("#0.##"); #endregion //工资发放 #region 工资发放 cells["G18"].Value = 表工资.企业排班天数.ToString("#0.##"); cells["G19"].Value = 表工资.实际出勤天数.ToString("#0.##"); cells["G20"].Value = 封闭工资.总出勤工资.ToString("#0.##"); cells["G21"].Value = 表工资.未休年休假工资.ToString("#0.##"); cells["G22"].Value = 表工资.实得满勤奖.ToString("#0.##"); cells["G23"].Value = 封闭工资.总补助工资.ToString("#0.##"); decimal 加班工资 = 表工资.法定节假日出勤工资 + 表工资.休息日出勤工资 + 表工资.月综合出勤工资 + 表工资.工作日延长工作出勤工资; cells["G24"].Value = 加班工资.ToString("#0.##"); cells["G25"].Value = 表工资.综合考核工资.ToString("#0.##"); cells["G28"].Value = 封闭工资.奖项_不含满勤奖.ToString("#0.##"); cells["G29"].Value = 封闭工资.扣项.ToString("#0.##"); cells["G30"].Value = 封闭工资.工资发放总额.ToString("#0.##"); //社保缴纳 cells["G33"].Value = 表工资.住房公积金个人缴纳金额.ToString("#0.##"); cells["G34"].Value = 表工资.养老保险个人缴纳金额.ToString("#0.##"); cells["G35"].Value = 表工资.大病医疗个人缴纳金额.ToString("#0.##"); cells["G36"].Value = 表工资.医疗保险个人缴纳金额.ToString("#0.##"); cells["G37"].Value = 表工资.失业保险个人缴纳金额.ToString("#0.##"); cells["G38"].Value = 0; //生育 cells["G39"].Value = 0; //工伤 cells["G40"].Value = 表工资.社保个人缴纳金额.ToString("#0.##"); //预留工资作奖金 //税后工资 cells["G43"].Value = 封闭工资.总应税工资.ToString("#0.##"); cells["G44"].Value = 封闭工资.个人所得税.ToString("#0.##"); cells["G45"].Value = 封闭工资.总代垫费用.ToString("#0.##"); cells["G46"].Value = 封闭工资.实发工资.ToString("#0.##"); //年薪资奖励 //预留工资作奖金 //税后奖金 #endregion }