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;
        }