Пример #1
0
 private bool FirmValidation()
 {
     if (FirmId != null)
     {
         using (CreditsFirmsContext context = new CreditsFirmsContext())
         {
             Firm firmInfo = (Firm)context.Firms.FirstOrDefault(f => f.Id_Firm == FirmId);
             if (firmInfo != null)
             {
                 FirmName     = firmInfo.Name;
                 LegalAddress = firmInfo.Legal_address;
                 return(false);
             }
             else
             {
                 FirmName     = "";
                 LegalAddress = "";
                 return(true);
             }
         }
     }
     else
     {
         return(false);
     }
 }
        public void ExecuteSaveProperty(object obj)
        {
            if (valProperty && valPrice && Currency != null && Name != null && !string.IsNullOrWhiteSpace(PropertyId) && !string.IsNullOrWhiteSpace(PriceText))
            {
                using (CreditsFirmsContext context = new CreditsFirmsContext())
                {
                    Property   propertyAdd   = new Property();
                    Collateral collateralAdd = context.Collaterals.FirstOrDefault(c => c.Collateral_agreement == CollateralAgreement);
                    propertyAdd.Collateral_agreement = CollateralAgreement;
                    propertyAdd.Currency_Id          = Currency.Currency_Id;
                    propertyAdd.Price       = double.Parse(PriceText);
                    propertyAdd.Id          = PropertyId;
                    propertyAdd.Name        = Name;
                    propertyAdd.Description = Description;
                    collateralAdd.Properties.Add(propertyAdd);

                    context.Properties.Add(propertyAdd);
                    context.SaveChanges();
                    CloseWnd(this, new EventArgs());
                }
                MessageBox.Show("Операция проведена успешно", "Регистрация предмета залога",
                                MessageBoxButton.OK, MessageBoxImage.Asterisk);
            }
            else
            {
                MessageBox.Show("Не все поля заполены корректно", "Ошибка при регистрации залога",
                                MessageBoxButton.OK, MessageBoxImage.Error);
            }
        }
        private void ExecuteSearchCollateral(object obj)
        {
            ObservableCollection <CollateralInfo> collateralsInfo = new ObservableCollection <CollateralInfo>();
            ObservableCollection <Collateral>     collateralsLoad = new ObservableCollection <Collateral>();

            using (CreditsFirmsContext context = new CreditsFirmsContext())
            {
                if (!string.IsNullOrWhiteSpace(SearchCollateral))
                {
                    var collaterals = from c in context.Collaterals
                                      where c.Collateral_agreement.StartsWith(SearchCollateral)
                                      select c;
                    foreach (Collateral collateral in collaterals)
                    {
                        collateralsLoad.Add(collateral);
                    }
                }

                else if (!string.IsNullOrWhiteSpace(SearchClient))
                {
                    var collaterals = from c in context.Collaterals
                                      where c.Firm.Name.Contains(SearchClient) || c.Individual.Name.Contains(SearchClient)
                                      select c;
                    foreach (Collateral collateral in collaterals)
                    {
                        collateralsLoad.Add(collateral);
                    }
                }

                if (collateralsLoad != null)
                {
                    foreach (Collateral collateral in collateralsLoad)
                    {
                        CollateralInfo collateralInfo = new CollateralInfo();
                        collateralInfo.Collateral_agreement = collateral.Collateral_agreement;
                        collateralInfo.Start_date           = collateral.Start_date;
                        collateralInfo.End_date             = collateral.End_date;
                        collateralInfo.Credit_agreement     = collateral.Credit_agreement;
                        collateralInfo.Currency             = collateral.Currencies_directory;
                        collateralInfo.Sum         = collateral.Sum;
                        collateralInfo.FormId      = collateral.FormId;
                        collateralInfo.TypeId      = collateral.TypeId;
                        collateralInfo.Description = collateral.Description;

                        if (collateral.Firm != null)
                        {
                            collateralInfo.ClientId   = collateral.Id_Firm;
                            collateralInfo.ClientName = collateral.Firm.Name;
                        }
                        else
                        {
                            collateralInfo.ClientId   = collateral.Id_Person;
                            collateralInfo.ClientName = collateral.Individual.Name;
                        }
                        collateralsInfo.Add(collateralInfo);
                    }
                    Collaterals = collateralsInfo;
                }
            }
        }
        public void ExecuteSaveMonitoring(object obj)
        {
            using (CreditsFirmsContext context = new CreditsFirmsContext())
            {
                Collateral            collateral       = context.Collaterals.FirstOrDefault(c => c.Collateral_agreement == CollateralAgreement);
                Monitoring_collateral monitoringUpdate = context.Monitoring_collateral.FirstOrDefault(m => m.Collateral_agreement == CollateralAgreement);
                monitoringUpdate.Collateral_agreement = CollateralAgreement;
                monitoringUpdate.Note          = Note;
                monitoringUpdate.Previous_date = Previous_date;
                monitoringUpdate.Planned_date  = Planned_date;

                monitoringUpdate.Employees.Clear();

                if (EmployeeMonitoring != null)
                {
                    Employee emp1 = context.Employees.First(e => e.Employee_Id == EmployeeMonitoring.Employee_Id);
                    emp1.Monitoring_collateral.Add(monitoringUpdate);
                }
                if (EmployeeSupport != null)
                {
                    Employee emp = context.Employees.First(e => e.Employee_Id == EmployeeSupport.Employee_Id);
                    emp.Monitoring_collateral.Add(monitoringUpdate);
                }
                context.SaveChanges();
                CloseWnd(this, new EventArgs());
            }
        }
 public void ExecuteSaveFirm(object obj)
 {
     if (string.IsNullOrWhiteSpace(validateFirm) && string.IsNullOrWhiteSpace(validateDate) && LegalAddress != null &&
         FirmName != null && FirmId != null && DateRegistration != null)
     {
         using (CreditsFirmsContext context = new CreditsFirmsContext())
         {
             Firm firmAdd = new Firm();
             firmAdd.Name              = FirmName;
             firmAdd.Id_Firm           = FirmId;
             firmAdd.Registration_date = DateRegistration;
             firmAdd.Phone             = Phone;
             firmAdd.Legal_address     = LegalAddress;
             context.Firms.Add(firmAdd);
             context.SaveChanges();
             CloseWnd(this, new EventArgs());
         }
         MessageBox.Show("Операция проведена успешно", "Регистрация клиента",
                         MessageBoxButton.OK, MessageBoxImage.Asterisk);
     }
     else
     {
         MessageBox.Show("Не все поля заполены корректно", "Ошибка при регистрации клиента",
                         MessageBoxButton.OK, MessageBoxImage.Error);
     }
 }
 public void ExecuteSavePerson(object obj)
 {
     if (string.IsNullOrWhiteSpace(validatePerson) && string.IsNullOrWhiteSpace(validateDate) && !string.IsNullOrWhiteSpace(Address) &&
         !string.IsNullOrWhiteSpace(PersonName) && PersonId != null && Birthday != null)
     {
         using (CreditsFirmsContext context = new CreditsFirmsContext())
         {
             Individual personAdd = new Individual();
             personAdd.Name      = PersonName;
             personAdd.Id_Person = PersonId;
             personAdd.Birthday  = Birthday;
             personAdd.Address   = Address;
             personAdd.Phone     = Phone;
             context.Individuals.Add(personAdd);
             context.SaveChanges();
             CloseWnd(this, new EventArgs());
         }
         MessageBox.Show("Операция проведена успешно", "Регистрация клиента",
                         MessageBoxButton.OK, MessageBoxImage.Asterisk);
     }
     else
     {
         MessageBox.Show("Не все поля заполены корректно", "Ошибка при регистрации клиента",
                         MessageBoxButton.OK, MessageBoxImage.Error);
     }
 }
Пример #7
0
        public CollateralDialogViewModel(string collateral_agreement, DateTime start_date, DateTime end_date,
                                         string credit_agreement, Currencies_directory currency, int typeId, double sum, string description, int?formId)
        {
            CollateralAgreement = collateral_agreement;
            StartDate           = start_date;
            EndDate             = end_date;
            CreditAgreement     = credit_agreement;
            Currency            = currency;
            SumText             = sum.ToString();
            this.description    = description;
            Flag = true;

            using (CreditsFirmsContext context = new CreditsFirmsContext())
            {
                typeCollateral = (TypeCollateral)context.TypeCollaterals.FirstOrDefault(t => t.TypeId == typeId);
                formCollateral = (FormCollateral)context.FormCollaterals.FirstOrDefault(f => f.FormId == formId);
                Collateral collateral = (Collateral)context.Collaterals.FirstOrDefault(c => c.Collateral_agreement == collateral_agreement);

                if (collateral.Firm != null)
                {
                    firmId = collateral.Id_Firm;
                }
                else
                {
                    personId = collateral.Id_Person;
                }
            }
        }
        public void ExecuteCalculationCommand(object obj)
        {
            using (CreditsFirmsContext context = new CreditsFirmsContext())
            {
                double total          = 0;
                double balanceDay     = 0;
                double balanceDayOver = 0;
                double rateDay        = 0;
                double rateDayOver    = 0;

                for (DateTime date = startDate; date <= endDate; date = date.AddDays(1))
                {
                    if (date.Day == 31)
                    {
                        continue;
                    }
                    var balance     = context.Principal_balance.Where(p => (p.Credit_agreement == CreditAgreement) && (p.Date <= date))?.AsEnumerable().LastOrDefault();
                    var balanceOver = context.Overdue_principal_debt.Where(p => (p.Credit_agreement == CreditAgreement) && (p.Date <= date))?.AsEnumerable().LastOrDefault();
                    if (balance != null)
                    {
                        balanceDay = balance.Balance;
                        rateDay    = context.Interest_rate.Where(i => (i.Credit_agreement == CreditAgreement) && (i.Date <= date)).AsEnumerable().LastOrDefault().Rate;
                        if (balanceOver != null)
                        {
                            balanceDayOver = balanceOver.Sum;
                            rateDayOver    = rateDay * 2;
                        }
                    }
                    else
                    {
                        continue;
                    }

                    double sumDay = ((balanceDay * rateDay / 100) + (balanceDayOver * rateDayOver / 100)) / 360;
                    if ((date.Month == 2) && (date.Year % 4 != 0))
                    {
                        if (date.Day == 28)
                        {
                            sumDay = sumDay * 3;
                        }
                    }
                    else if (date.Month == 2 && (date.Year % 4 == 0))
                    {
                        if (date.Day == 29)
                        {
                            sumDay = sumDay * 2;
                        }
                    }
                    total += sumDay;
                }
                Calculation = total;
            }
        }
 private void ExecuteCollateralDelete(object obj)
 {
     using (CreditsFirmsContext context = new CreditsFirmsContext())
     {
         Collateral collateralDel = context.Collaterals.FirstOrDefault(c => c.Collateral_agreement == SelectedCollateral.Collateral_agreement);
         if (collateralDel != null)
         {
             context.Collaterals.Remove(collateralDel);
             context.SaveChanges();
         }
     }
 }
Пример #10
0
        private void ExecuteSearchCredit(object obj)
        {
            ObservableCollection <CreditInfo> creditsInfo;
            ObservableCollection <Credit>     creditsLoad = new ObservableCollection <Credit>();

            using (CreditsFirmsContext context = new CreditsFirmsContext())
            {
                if (!string.IsNullOrWhiteSpace(SearchCredit))
                {
                    var credits = from c in context.Credits
                                  where c.Credit_agreement.StartsWith(SearchCredit)
                                  select c;
                    foreach (Credit credit in credits)
                    {
                        creditsLoad.Add(credit);
                    }
                }
                else if ((!string.IsNullOrWhiteSpace(SearchFirm)))
                {
                    var credits = from c in context.Credits
                                  where c.Firm.Name.Contains(SearchFirm)
                                  select c;
                    foreach (Credit credit in credits)
                    {
                        creditsLoad.Add(credit);
                    }
                }
                if (creditsLoad != null)
                {
                    creditsInfo = new ObservableCollection <CreditInfo>();

                    foreach (Credit credit in creditsLoad)
                    {
                        CreditInfo creditInfo = new CreditInfo();
                        creditInfo.Credit_agreement = credit.Credit_agreement;
                        creditInfo.Start_date       = credit.Start_date;
                        creditInfo.End_date         = credit.End_date;
                        creditInfo.Currency         = credit.Currencies_directory;
                        creditInfo.Sum      = credit.Sum;
                        creditInfo.Id_Firm  = credit.Id_Firm;
                        creditInfo.Rate     = credit.Interest_rate.OrderByDescending(d => d.Date).FirstOrDefault().Rate;
                        creditInfo.FirmName = credit.Firm.Name;

                        creditsInfo.Add(creditInfo);
                    }
                    Credits = creditsInfo;
                }
            }
        }
Пример #11
0
 private bool CollateralInfo()
 {
     using (CreditsFirmsContext context = new CreditsFirmsContext())
     {
         Collateral collateralInfo = (Collateral)context.Collaterals.FirstOrDefault(c => c.Collateral_agreement == CollateralAgreement);
         if (collateralInfo != null)
         {
             return(true);
         }
         else
         {
             return(false);
         }
     }
 }
 private bool PropertyValidate()
 {
     using (CreditsFirmsContext context = new CreditsFirmsContext())
     {
         Property propertyInfo = context.Properties.FirstOrDefault(p => p.Id == PropertyId);
         if (propertyInfo != null)
         {
             return(true);
         }
         else
         {
             return(false);
         }
     }
 }
 private bool PersonValidate()
 {
     using (CreditsFirmsContext context = new CreditsFirmsContext())
     {
         Individual indInfo = context.Individuals.FirstOrDefault(i => i.Id_Person == PersonId);
         if (indInfo != null)
         {
             return(true);
         }
         else
         {
             return(false);
         }
     }
 }
 private bool FirmInfo()
 {
     using (CreditsFirmsContext context = new CreditsFirmsContext())
     {
         Firm firmInfo = (Firm)context.Firms.FirstOrDefault(f => f.Id_Firm == FirmId);
         if (firmInfo != null)
         {
             return(true);
         }
         else
         {
             return(false);
         }
     }
 }
Пример #15
0
 private bool CreditInfo()
 {
     using (CreditsFirmsContext context = new CreditsFirmsContext())
     {
         Credit creditInfo = (Credit)context.Credits.FirstOrDefault(c => c.Credit_agreement == Credit_agreement);
         if (creditInfo != null)
         {
             return(true);
         }
         else
         {
             return(false);
         }
     }
 }
Пример #16
0
 private bool FirmValidation(string value)
 {
     using (CreditsFirmsContext context = new CreditsFirmsContext())
     {
         Firm firmInfo = (Firm)context.Firms.FirstOrDefault(f => f.Id_Firm == value);
         if (firmInfo != null)
         {
             FirmName = firmInfo.Name;
             return(false);
         }
         else
         {
             return(true);
         }
     }
 }
Пример #17
0
 private bool PersonValidation(string value)
 {
     using (CreditsFirmsContext context = new CreditsFirmsContext())
     {
         Individual personInfo = (Individual)context.Individuals.FirstOrDefault(p => p.Id_Person == value);
         if (personInfo != null)
         {
             PersonName = personInfo.Name;
             return(false);
         }
         else
         {
             return(true);
         }
     }
 }
Пример #18
0
        private void ExecuteMonitoringEdit(object obj)
        {
            Employee empSupport;
            Employee empMonitoring;

            using (CreditsFirmsContext context = new CreditsFirmsContext())
            {
                empSupport    = context.Employees.FirstOrDefault(e => e.Name == SelectedMonitoring.EmployeeSupport);
                empMonitoring = context.Employees.FirstOrDefault(e => e.Name == SelectedMonitoring.EmployeeMonitoring);
            }
            UpdateMonitoringDialogViewModel viewModel = new UpdateMonitoringDialogViewModel(SelectedMonitoring.Collateral_agreement,
                                                                                            SelectedMonitoring.ClientName, SelectedMonitoring.Description, SelectedMonitoring.Previous_date, SelectedMonitoring.Planned_date,
                                                                                            SelectedMonitoring.Note, empSupport, empMonitoring);

            WindowManager.ProcessMessage(viewModel as object);
        }
        public void ExecuteSaveCredit(object obj)
        {
            if (valDate && valFirm && valSum && valRate && Currency != null && !string.IsNullOrWhiteSpace(FirmId))
            {
                using (CreditsFirmsContext context = new CreditsFirmsContext())
                {
                    Credit creditUpdate = context.Credits.FirstOrDefault(c => c.Credit_agreement == Credit_agreement);
                    creditUpdate.Start_date  = StartDate;
                    creditUpdate.End_date    = EndDate;
                    creditUpdate.Currency_Id = Currency.Currency_Id;
                    if (creditUpdate.Sum != int.Parse(SumText))
                    {
                        Principal_balance balanceAdd = new Principal_balance();
                        balanceAdd.Credit_agreement = Credit_agreement;
                        balanceAdd.Date             = DateTime.Now;
                        balanceAdd.Currency_Id      = Currency.Currency_Id;
                        balanceAdd.Balance          = int.Parse(SumText);
                        context.Principal_balance.Add(balanceAdd);
                        creditUpdate.Sum = int.Parse(SumText);
                    }
                    creditUpdate.Id_Firm = FirmId;

                    if (creditUpdate.Interest_rate.OrderByDescending(d => d.Date).FirstOrDefault().Rate != double.Parse(RateText))
                    {
                        Interest_rate rateAdd = new Interest_rate();
                        rateAdd.Credit_agreement = Credit_agreement;
                        rateAdd.Date             = DateTime.Now;
                        rateAdd.Rate             = double.Parse(RateText);
                        context.Interest_rate.Add(rateAdd);
                    }
                    context.SaveChanges();
                    CloseWnd(this, new EventArgs());
                    MessageBox.Show("Операция проведена успешно", "Редактирование договора обеспечения",
                                    MessageBoxButton.OK, MessageBoxImage.Asterisk);
                }
            }
            else
            {
                MessageBox.Show("Не все поля заполены корректно", "Ошибка при регистрации договора",
                                MessageBoxButton.OK, MessageBoxImage.Error);
            }
        }
Пример #20
0
        public void ExecuteSaveCredit(object obj)
        {
            if (valAgreement && valDate && valFirm && valSum && valRate && Currency != null && !string.IsNullOrWhiteSpace(Credit_agreement) &&
                !string.IsNullOrWhiteSpace(FirmId) && !string.IsNullOrWhiteSpace(SumText) && !string.IsNullOrWhiteSpace(RateText))
            {
                using (CreditsFirmsContext context = new CreditsFirmsContext())
                {
                    Credit creditAdd = new Credit();
                    creditAdd.Credit_agreement = Credit_agreement;
                    creditAdd.Start_date       = StartDate;
                    creditAdd.End_date         = EndDate;
                    creditAdd.Currency_Id      = Currency.Currency_Id;
                    creditAdd.Sum     = int.Parse(SumText);
                    creditAdd.Id_Firm = FirmId;
                    context.Credits.Add(creditAdd);

                    Principal_balance balanceAdd = new Principal_balance();
                    balanceAdd.Credit_agreement = Credit_agreement;
                    balanceAdd.Date             = StartDate;
                    balanceAdd.Currency_Id      = Currency.Currency_Id;
                    balanceAdd.Balance          = int.Parse(SumText);
                    context.Principal_balance.Add(balanceAdd);

                    Interest_rate rateAdd = new Interest_rate();
                    rateAdd.Credit_agreement = Credit_agreement;
                    rateAdd.Date             = StartDate;
                    rateAdd.Rate             = double.Parse(RateText);
                    context.Interest_rate.Add(rateAdd);

                    context.SaveChanges();
                    CloseWnd(this, new EventArgs());
                }
                MessageBox.Show("Операция проведена успешно", "Регистрация кредитного договора",
                                MessageBoxButton.OK, MessageBoxImage.Asterisk);
            }
            else
            {
                MessageBox.Show("Не все поля заполены корректно", "Ошибка при регистрации договора",
                                MessageBoxButton.OK, MessageBoxImage.Error);
            }
        }
Пример #21
0
        public void LoadCollateral()
        {
            ObservableCollection <MonitoringInfo> monitoringCollectionInfo = new ObservableCollection <MonitoringInfo>();

            using (CreditsFirmsContext context = new CreditsFirmsContext())
            {
                var collateralsLoad = context.Collaterals;

                foreach (Collateral collateral in collateralsLoad)
                {
                    if (collateral.TypeId != 99559)
                    {
                        MonitoringInfo monitoringInfo = new MonitoringInfo();
                        monitoringInfo.Collateral_agreement = collateral.Collateral_agreement;
                        monitoringInfo.TypeId             = collateral.TypeId;
                        monitoringInfo.Description        = collateral.Description;
                        monitoringInfo.Previous_date      = collateral.Monitoring_collateral.Previous_date;
                        monitoringInfo.Planned_date       = collateral.Monitoring_collateral.Planned_date;
                        monitoringInfo.Note               = collateral.Monitoring_collateral.Note;
                        monitoringInfo.EmployeeSupport    = collateral.Monitoring_collateral.Employees.FirstOrDefault(e => e.Department_Id == 103)?.Name;
                        monitoringInfo.EmployeeMonitoring = collateral.Monitoring_collateral.Employees.FirstOrDefault(e => e.Department_Id == 104)?.Name;

                        if (collateral.Firm != null)
                        {
                            monitoringInfo.ClientName = collateral.Firm.Name;
                        }
                        else
                        {
                            monitoringInfo.ClientName = collateral.Individual.Name;
                        }

                        monitoringCollectionInfo.Add(monitoringInfo);
                    }
                }

                MonitoringCollection = monitoringCollectionInfo;
            }
        }
        public void LoadCollateral()
        {
            ObservableCollection <CollateralInfo> collateralsInfo = new ObservableCollection <CollateralInfo>();

            using (CreditsFirmsContext context = new CreditsFirmsContext())
            {
                var collateralsLoad = context.Collaterals;

                foreach (Collateral collateral in collateralsLoad)
                {
                    CollateralInfo collateralInfo = new CollateralInfo();
                    collateralInfo.Collateral_agreement = collateral.Collateral_agreement;
                    collateralInfo.Start_date           = collateral.Start_date;
                    collateralInfo.End_date             = collateral.End_date;
                    collateralInfo.Credit_agreement     = collateral.Credit_agreement;
                    collateralInfo.Currency             = collateral.Currencies_directory;
                    collateralInfo.Sum         = collateral.Sum;
                    collateralInfo.FormId      = collateral.FormId;
                    collateralInfo.TypeId      = collateral.TypeId;
                    collateralInfo.Description = collateral.Description;

                    if (collateral.Firm != null)
                    {
                        collateralInfo.ClientId   = collateral.Id_Firm;
                        collateralInfo.ClientName = collateral.Firm.Name;
                    }
                    else
                    {
                        collateralInfo.ClientId   = collateral.Id_Person;
                        collateralInfo.ClientName = collateral.Individual.Name;
                    }
                    collateralsInfo.Add(collateralInfo);
                }

                Collaterals = collateralsInfo;
            }
        }
 public void ExecuteAccrueCommand(object obj)
 {
     using (CreditsFirmsContext context = new CreditsFirmsContext())
     {
         var item = context.Accrued_interest.FirstOrDefault(i => i.Credit_agreement == CreditAgreement);
         if (item == null)
         {
             Accrued_interest accrued = new Accrued_interest();
             accrued.Credit_agreement = CreditAgreement;
             accrued.Sum         = Calculation;
             accrued.Currency_Id = context.Credits.FirstOrDefault(c => c.Credit_agreement == CreditAgreement).Currency_Id;
             context.Accrued_interest.Add(accrued);
         }
         else
         {
             Accrued_interest accrued = (Accrued_interest)item;
             accrued.Sum = Calculation;
         }
         context.SaveChanges();
     }
     MessageBox.Show("Операция проведена успешно", "Начисление процентов",
                     MessageBoxButton.OK, MessageBoxImage.Asterisk);
     CloseWnd(this, new EventArgs());
 }
Пример #24
0
        public void LoadCredits()
        {
            ObservableCollection <CreditInfo> creditsInfo = new ObservableCollection <CreditInfo>();

            using (CreditsFirmsContext context = new CreditsFirmsContext())
            {
                var creditsLoad = context.Credits;

                foreach (Credit credit in creditsLoad)
                {
                    CreditInfo creditInfo = new CreditInfo();
                    creditInfo.Credit_agreement = credit.Credit_agreement;
                    creditInfo.Start_date       = credit.Start_date;
                    creditInfo.End_date         = credit.End_date;
                    creditInfo.Currency         = credit.Currencies_directory;
                    creditInfo.Sum      = credit.Sum;
                    creditInfo.Id_Firm  = credit.Id_Firm;
                    creditInfo.Rate     = credit.Interest_rate.OrderByDescending(d => d.Date).FirstOrDefault().Rate;
                    creditInfo.FirmName = credit.Firm.Name;
                    creditsInfo.Add(creditInfo);
                }
                Credits = creditsInfo;
            }
        }
Пример #25
0
        public void ExecuteSaveCollateral(object obj)
        {
            using (CreditsFirmsContext context = new CreditsFirmsContext())
            {
                if (valAgreement && valClient && valDate && valSum && Currency != null && TypeCollateral != null &&
                    !string.IsNullOrWhiteSpace(CreditAgreement) && FormCollateral != null && (!string.IsNullOrWhiteSpace(FirmId) || !string.IsNullOrWhiteSpace(PersonId)))
                {
                    Collateral colRequest;
                    if (Flag == true)
                    {
                        colRequest = (Collateral)context.Collaterals.FirstOrDefault(c => c.Collateral_agreement == CollateralAgreement);
                    }
                    else
                    {
                        colRequest = new Collateral();
                    }
                    colRequest.Collateral_agreement = CollateralAgreement;
                    colRequest.Start_date           = StartDate;
                    colRequest.End_date             = EndDate;
                    colRequest.Currency_Id          = Currency.Currency_Id;
                    colRequest.Sum              = double.Parse(SumText);
                    colRequest.Description      = Description;
                    colRequest.TypeId           = TypeCollateral.TypeId;
                    colRequest.FormId           = FormCollateral.FormId;
                    colRequest.Credit_agreement = CreditAgreement;
                    if (FirmId != null)
                    {
                        colRequest.Id_Firm = FirmId;
                    }
                    else if (PersonId != null)
                    {
                        colRequest.Id_Person = PersonId;
                    }
                    if (Flag == false)
                    {
                        Monitoring_collateral monitoringAdd = new Monitoring_collateral();
                        monitoringAdd.Collateral_agreement = CollateralAgreement;
                        monitoringAdd.Previous_date        = StartDate;
                        if (TypeCollateral.TypeId == 99551 || TypeCollateral.TypeId == 99552)
                        {
                            monitoringAdd.Planned_date = StartDate.AddYears(1);
                        }
                        if (TypeCollateral.TypeId == 99553)
                        {
                            monitoringAdd.Planned_date = StartDate.AddMonths(3);
                        }

                        context.Monitoring_collateral.Add(monitoringAdd);
                        context.Collaterals.Add(colRequest);
                    }
                    context.SaveChanges();
                    CloseWnd(this, new EventArgs());
                    MessageBox.Show("Операция проведена успешно", "Договор обеспечения",
                                    MessageBoxButton.OK, MessageBoxImage.Asterisk);
                }
                else
                {
                    MessageBox.Show("Не все поля заполены корректно", "Ошибка при регистрации договора",
                                    MessageBoxButton.OK, MessageBoxImage.Error);
                }
            }
        }
Пример #26
0
        private void ExecuteSearchMonitoring(object obj)
        {
            ObservableCollection <MonitoringInfo> monitoringCollectionInfo = new ObservableCollection <MonitoringInfo>();
            ObservableCollection <Collateral>     collateralsLoad          = new ObservableCollection <Collateral>();

            using (CreditsFirmsContext context = new CreditsFirmsContext())
            {
                if (!string.IsNullOrWhiteSpace(SearchMonitoring))
                {
                    var collaterals = from c in context.Collaterals
                                      where c.Collateral_agreement.StartsWith(SearchMonitoring)
                                      select c;
                    foreach (Collateral collateral in collaterals)
                    {
                        collateralsLoad.Add(collateral);
                    }
                }

                else if ((!string.IsNullOrWhiteSpace(SearchClient)))
                {
                    var collaterals = from c in context.Collaterals
                                      where c.Firm.Name.Contains(SearchClient) || c.Individual.Name.Contains(SearchClient)
                                      select c;
                    foreach (Collateral collateral in collaterals)
                    {
                        collateralsLoad.Add(collateral);
                    }
                }

                if (collateralsLoad != null)
                {
                    foreach (Collateral collateral in collateralsLoad)
                    {
                        if (collateral.TypeId != 99559)
                        {
                            MonitoringInfo monitoringInfo = new MonitoringInfo();
                            monitoringInfo.Collateral_agreement = collateral.Collateral_agreement;
                            monitoringInfo.TypeId             = collateral.TypeId;
                            monitoringInfo.Description        = collateral.Description;
                            monitoringInfo.Previous_date      = collateral.Monitoring_collateral.Previous_date;
                            monitoringInfo.Planned_date       = collateral.Monitoring_collateral.Planned_date;
                            monitoringInfo.Note               = collateral.Monitoring_collateral.Note;
                            monitoringInfo.EmployeeSupport    = collateral.Monitoring_collateral.Employees.FirstOrDefault(e => e.Department_Id == 103)?.Name;
                            monitoringInfo.EmployeeMonitoring = collateral.Monitoring_collateral.Employees.FirstOrDefault(e => e.Department_Id == 104)?.Name;

                            if (collateral.Firm != null)
                            {
                                monitoringInfo.ClientName = collateral.Firm.Name;
                            }
                            else
                            {
                                monitoringInfo.ClientName = collateral.Individual.Name;
                            }

                            monitoringCollectionInfo.Add(monitoringInfo);
                        }
                    }
                    MonitoringCollection = monitoringCollectionInfo;
                }
            }
        }
        private void ExecuteCollateralRegister(object obj)
        {
            List <CollateralRegister> colRegList = new List <CollateralRegister>();

            if (SelectedCollateral.TypeId == 99553)
            {
                CollateralRegister colReg = new CollateralRegister();

                using (CreditsFirmsContext context = new CreditsFirmsContext())
                {
                    colReg.Subject = context.TypeCollaterals.FirstOrDefault(c => c.TypeId == SelectedCollateral.TypeId).Type;
                }
                colReg.Collateral_agreement = SelectedCollateral.Collateral_agreement;
                colReg.Start_date           = SelectedCollateral.Start_date;
                colReg.End_date             = SelectedCollateral.End_date;
                colReg.ClientName           = SelectedCollateral.ClientName;
                colReg.ClientId             = SelectedCollateral.ClientId;
                colReg.Currency_Id          = SelectedCollateral.Currency.Currency_Id;
                colReg.Description          = SelectedCollateral.Description;
                colReg.Price = SelectedCollateral.Sum;
                colRegList.Add(colReg);
            }
            else if (SelectedCollateral.TypeId == 99551)
            {
                using (CreditsFirmsContext context = new CreditsFirmsContext())
                {
                    var items = context.Properties.Where(p => p.Collateral_agreement == SelectedCollateral.Collateral_agreement);
                    foreach (Property item in items)
                    {
                        CollateralRegister colReg = new CollateralRegister();
                        colReg.Subject              = item.Name;
                        colReg.Id                   = item.Id;
                        colReg.Description          = item.Description;
                        colReg.Currency_Id          = item.Currency_Id;
                        colReg.Price                = item.Price;
                        colReg.Collateral_agreement = SelectedCollateral.Collateral_agreement;
                        colReg.Start_date           = SelectedCollateral.Start_date;
                        colReg.End_date             = SelectedCollateral.End_date;
                        colReg.ClientName           = SelectedCollateral.ClientName;
                        colReg.ClientId             = SelectedCollateral.ClientId;
                        colRegList.Add(colReg);
                    }
                }
            }

            System.Windows.Forms.SaveFileDialog sfd = new System.Windows.Forms.SaveFileDialog();
            sfd.Filter = "XML files (*.xml)|*.xml|All files (*.*)|*.*";
            var result = sfd.ShowDialog();

            if (result == System.Windows.Forms.DialogResult.OK)
            {
                XDocument doc  = new XDocument();
                XElement  root = new XElement("CollateralX");

                foreach (var collateral in colRegList)
                {
                    XElement collateralElement = new XElement("CollateralX",
                                                              new XAttribute("ClientId", collateral.ClientId),
                                                              new XElement("ClientName", collateral.ClientName),
                                                              new XElement("Collateral_agreement", collateral.Collateral_agreement),
                                                              new XElement("Start_date", collateral.Start_date),
                                                              new XElement("End_date", collateral.End_date),
                                                              new XElement("Subject", collateral.Subject),
                                                              new XElement("Id", collateral.Id),
                                                              new XElement("Description", collateral.Description),
                                                              new XElement("CurrencyId", collateral.Currency_Id),
                                                              new XElement("Price", collateral.Price));
                    root.Add(collateralElement);
                }
                doc.Add(root);
                doc.Save(sfd.FileName);
            }
        }