示例#1
0
 private void m_FileLoadWorker_DoWork(object sender, DoWorkEventArgs e)
 {
     PayPaymentSystem paymentSystem = (this.bsPaymentSystems.get_Current() as PayPaymentSystem) ?? PayPaymentSystem.Null;
     Organization agent = this.agentSelector.SelectedOrganizationOld ?? Organization.Null;
     System.DateTime paymentOrderDate = (this.dbPaymentOrderDate == null) ? Constants.NullDate : this.dbPaymentOrderDate.Value;
     System.DateTime paymentOrderPeriod = (this.dbPaymentOrderPeriod == null) ? Constants.NullDate : this.dbPaymentOrderPeriod.Value;
     if (paymentOrderPeriod != Constants.NullDate)
     {
         paymentOrderPeriod = System.Convert.ToDateTime(string.Concat((object[]) new object[] { "01.", ((int) paymentOrderPeriod.get_Month()), ".", ((int) paymentOrderPeriod.get_Year()) }));
     }
     string selectedFileName = this.fileNameSelector.SelectedFileName;
     if (!string.IsNullOrEmpty(selectedFileName))
     {
         if ((paymentSystem.Name == "Система Город") || (paymentSystem.Name == "Система \"Город\""))
         {
             ReesterType reeType = ReesterType.OUT_CASHPAY;
             if (this.m_CashPaymentReesterRadio.get_Checked())
             {
                 reeType = ReesterType.OUT_CASHPAY;
             }
             else if (this.m_CashlessPaymentReesterRadio.get_Checked())
             {
                 reeType = ReesterType.OUT_CASHLESS;
             }
             else if (this.m_ReturnReesterRadio.get_Checked())
             {
                 reeType = ReesterType.OUT_STORNO;
             }
             try
             {
                 Reester248 fileRee = new Reester248(reeType, selectedFileName, System.Text.Encoding.GetEncoding(0x4e3));
                 PayReester reester2 = PayReester.SaveCityReesterToDatabase(fileRee, paymentSystem, agent);
                 System.IO.FileInfo info = new System.IO.FileInfo(fileRee.FileName);
                 info.MoveTo(info.Directory + @"\Z_" + info.get_Name());
                 e.set_Result(reester2);
                 return;
             }
             catch (System.Exception exception)
             {
                 throw new System.ApplicationException("Файл реестра: " + selectedFileName, exception);
             }
         }
         string name = string.Empty;
         if (this.m_CashPaymentReesterRadio.get_Checked())
         {
             name = "Наличные платежи";
         }
         else if (this.m_CashlessPaymentReesterRadio.get_Checked())
         {
             name = "Безналичные платежи";
         }
         else if (this.m_ReturnReesterRadio.get_Checked())
         {
             name = "Возвраты платежей";
         }
         else if (this.m_ReturnCashlessReesterRadio.get_Checked())
         {
             name = "Возвраты безналичных платежей";
         }
         FasetItem @null = FasetItem.Null;
         if (name != string.Empty)
         {
             @null = FasetItem.FindByName(FasetsEnum.PaymentsReestrType, name);
         }
         try
         {
             e.set_Result(PayReester.LoadReesterFromFile(selectedFileName, paymentSystem, agent, @null, paymentOrderDate, paymentOrderPeriod));
         }
         catch (System.Exception exception2)
         {
             throw new System.ApplicationException("Файл реестра: " + selectedFileName, exception2);
         }
     }
 }
示例#2
0
 public static PayReester SaveCityReesterToDatabase(Reester248 fileRee, PayPaymentSystem paymentSystem, AIS.SN.Model.DomainObjects.Organization agent)
 {
     PayReester reester = new PayReester {
         PaymentSystem = "Система \"Город\"",
         PaymentSystemId = paymentSystem.Id,
         Number = ((int) fileRee.Number).ToString()
     };
     FasetItem item = FasetItem.FindByName(FasetsEnum.PaymentsReestrType, Reester.GetTypeDescription(fileRee.ReeType));
     reester.ReeTypeId = item.Id;
     FasetItem item2 = FasetItem.FindByName(FasetsEnum.PaymentReestrStatus, "Загружен");
     reester.StatusId = item2.Id;
     reester.Created = fileRee.Created;
     reester.FromDate = fileRee.FromDate;
     reester.ToDate = fileRee.ToDate;
     reester.Organization = ((int) fileRee.AgentId).ToString();
     reester.OrganizationId = agent.Id;
     reester.Summ = fileRee.ReeSumm;
     reester.Records = fileRee.RecCount;
     reester.PaymentService = ((int) fileRee.Service).ToString();
     reester.SaveChanges();
     foreach (Record record in fileRee.Records)
     {
         PayReesterRecord record2;
         new PayReesterRecord { ReesterId = reester.Id, StatusId = reester.StatusId, AccountNumber = record.acc_pu, AbonentName = record.fio, Address = record.address, SubService = record.sub_srv_pu, PaymentSumm = record.summ, Period = record.dateb.get_HasValue() ? record.dateb.Value : record2.Period, Apx = record.apx, PaymentDate = record.created.get_HasValue() ? record.created.Value : record2.PaymentDate, ExternalTransactionId = record.uno.ToString() }.SaveChanges();
     }
     reester.Prepare();
     return reester;
 }