Ejemplo n.º 1
0
        private void bgwFileParser_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            if (e.Result == null)
            {
                PauseStatusProcessBar();
                return;
            }


            ImportReportType reportType = (ImportReportType)((object[])e.Result)[1];

            switch (reportType)
            {
            case ImportReportType.ClaimOrderReport:
                List <ClaimOrder> claimOrders = (List <ClaimOrder>)((object[])e.Result)[0];
                StatusLabelText =
                    String.Format("文件读取成功(共{0}条),正在进行校验...", claimOrders.Count);
                ChangeStatusLabelColor();
                bgwValidator.RunWorkerAsync(claimOrders);
                break;

            case ImportReportType.SupplierAuthorizationDestoryReport:
                _supplierAuthorizationDestories = (List <SupplierAuthorizationDestory>)((object[])e.Result)[0];
                StatusLabelText =
                    String.Format("文件读取成功(共{0}条)。", _supplierAuthorizationDestories.Count);
                ChangeStatusLabelColor();
                PauseStatusProcessBar();
                break;
            }
        }
Ejemplo n.º 2
0
        private void bgwFileParser_DoWork(object sender, DoWorkEventArgs e)
        {
            ImportReportType reportType = (ImportReportType)((object[])e.Argument)[1];

            switch (reportType)
            {
            case ImportReportType.ClaimOrderReport:
                List <ClaimOrder> claimOrders = new List <ClaimOrder>();
                try
                {
                    claimOrders = ClaimOrderParser.ParseXLSX((string)((object[])e.Argument)[0]);
                    e.Result    = new object[] { claimOrders, ImportReportType.ClaimOrderReport };
                }
                catch (IOException ex)
                {
                    MessageBox.Show("文件被其他程序占用。\n" + ex.Message, "失败!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                break;

            case ImportReportType.SupplierAuthorizationDestoryReport:
                List <SupplierAuthorizationDestory> supplierAuthorizationDestories =
                    new List <SupplierAuthorizationDestory>();
                try
                {
                    supplierAuthorizationDestories =
                        SupplierAuthorizationDestoryReportParser.ParseXLSX((string)((object[])e.Argument)[0]);
                    e.Result = new object[] { supplierAuthorizationDestories, ImportReportType.SupplierAuthorizationDestoryReport };
                }
                catch (IOException ex)
                {
                    MessageBox.Show("文件被其他程序占用。" + ex.Message, "失败!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                break;
            }
        }