private static void SetBankInfo(string empNo, string accType, ToBankReportItem item) { PersonBankInfo bankInfo = PersonBankInfo.Get(empNo, accType); if (bankInfo == null && accType != "A") { bankInfo = PersonBankInfo.Get(empNo, "A"); //没有帐号自动取上表工资帐号 } if (bankInfo != null) { item.银行编号 = bankInfo.银行编号; item.银行名称 = bankInfo.银行名称; item.银行账户 = bankInfo.银行账户; item.账户名称 = bankInfo.账户名称; } }
protected void LoadData() { string accType = cb账户类型.EditValue as string; CreateWaitDialog("正在查询...", "请稍等"); //生成报盘记录 currRows.Clear(); switch (accType) { case "A": case "D": List <SalaryResult> salaryList = new List <SalaryResult>(); //获取上表工资清单 foreach (PayGroup payGroup in AccessController.我管理的薪资组) { salaryList.AddRange(SalaryResult.GetSalaryResults(Convert.ToInt32(year.Value), Convert.ToInt32(month.Text), ccb发放单位.Text, payGroup.英文名)); } foreach (SalaryResult row in salaryList) { ToBankReportItem item = new ToBankReportItem(); item.账户类型 = accType; item.员工编号 = row.员工编号; item.员工姓名 = row.姓名; item.员工序号 = row.员工序号; item.部门序号 = row.财务部门序号; SetBankInfo(row.员工编号, accType, item); if (accType == "A") //上表 { item.金额 = row.实发工资总额; currRows.Add(item); } if (accType == "D" && row.未休年休假工资 > 0) //年休假 { item.金额 = row.未休年休假工资; currRows.Add(item); } } break; case "B": List <PrivateSalary> rows = new List <PrivateSalary>(); foreach (PayGroup payGroup in AccessController.我管理的薪资组) { rows.AddRange(PrivateSalary.GetPrivateSalarys(Convert.ToInt32(year.Value), Convert.ToInt32(month.Text), ccb发放单位.Text, payGroup.英文名)); } foreach (PrivateSalary row in rows) { ToBankReportItem item = new ToBankReportItem(); item.账户类型 = accType; item.员工编号 = row.员工编号; item.员工姓名 = row.姓名; item.部门序号 = row.基础工资表.财务部门序号; item.员工序号 = row.基础工资表.员工序号; item.金额 = row.本次实发工资; SetBankInfo(row.员工编号, accType, item); currRows.Add(item); } break; } //排序 currRows = currRows.OrderBy(a => a.部门序号).ThenBy(a => a.员工序号).ToList(); CreateWaitDialog("正在加载...", "请稍等"); gridControl1.DataSource = currRows; gridView1.ExpandAllGroups(); CloseWaitDialog(); 当前期间 = String.Format("{0}年{1}", year.Value, month.Text) + "月"; 当前账号 = cb账户类型.Text; }