Exemplo n.º 1
0
        public static User Authenticate(string username, string password, int deptId, out bool authenticated, out string message)
        {
            using (var db = new AltasoftDailyContext())
            {
                var userByName = db.Users.FirstOrDefault(x => x.Username == username);
                //
                //if (userByName == null)
                //{
                //    authenticated = false;
                //    message = "მომხმარებლის სახელი არასწორია!";
                //    return null;
                //}
                //else if (!EncryptionManagement.Validate(userByName.Password, password, userByName.Salt))
                //{
                //    authenticated = false;
                //    message = "მომხმარებლის პაროლი არასწორია!";
                //    return null;
                //}
                //else if (userByName.DeptID != deptId)
                //{
                //    authenticated = false;
                //    message = "მომხმარებელი ფილიალში არ მოიძებნა!";
                //    return null;
                //}

                authenticated = true;
                message = "მომხმარებელი იდენტიფიცირებულია!";
                return userByName;
            }
        }
        private void btnOk_Click(object sender, EventArgs e)
        {
            if (EncryptionManagement.Validate(User.Password, ctrlChangePassword.PasswordOld, User.Salt))
            {
                if (ctrlChangePassword.PasswordNew != ctrlChangePassword.PasswordOld)
                {
                    if (ctrlChangePassword.PasswordNew == ctrlChangePassword.PasswordNewRe)
                    {
                        using (var db = new AltasoftDailyContext())
                        {
                            var dbUser = db.Users.FirstOrDefault(x => x.UserID == User.UserID);
                            var salt = EncryptionManagement.CreateSalt();
                            dbUser.Salt = salt;
                            dbUser.Password = EncryptionManagement.Encrypt(ctrlChangePassword.PasswordNewRe, salt);
                            dbUser.LastPasswordChange = DateTime.Now;
                            dbUser.ForceUserToChangePassword = false;

                            db.SaveChanges();
                        }

                        MessageBox.Show("პაროლი წარმატებით შეიცვალა!");
                        DialogResult = System.Windows.Forms.DialogResult.OK;
                    }
                    else { MessageBox.Show("გთხოვთ სწორად გაიმეოროთ პაროლი!"); }
                }
                else { MessageBox.Show("იგივე პაროლის გამოყენება აკრძალულია!"); }
            }
            else { MessageBox.Show("ძველი პაროლი არასწორია!"); }
        }
Exemplo n.º 3
0
 private void btnAdd_Click(object sender, EventArgs e)
 {
     using (var db = new AltasoftDailyContext())
     {
         db.DailyPayments.FirstOrDefault(x => x.DailyPaymentID == Payment.DailyPaymentID).Payment = Payment.Payment;
         db.SaveChanges();
     }
     DailyManagement.SubmitOrder(Payment.TaxOrderNumber, Payment.LoanCCY, Payment.CalculationDate, Payment.ClientAccountIban, decimal.Parse(tbxAmount.Text), Payment.AgreementNumber, "120", User.AltasoftUserID, User.DeptID);
 }
Exemplo n.º 4
0
        private void SyncUsers()
        {
            #region Initialize Services
            #region OrdersService
            AltasoftAPI.OrdersAPI.OrdersService o = new AltasoftAPI.OrdersAPI.OrdersService();
            o.RequestHeadersValue = new AltasoftAPI.OrdersAPI.RequestHeaders() { ApplicationKey = "BusinessCreditClient", RequestId = Guid.NewGuid().ToString() };
            #endregion

            #region CustomersService
            AltasoftAPI.CustomersAPI.CustomersService c = new AltasoftAPI.CustomersAPI.CustomersService();
            c.RequestHeadersValue = new AltasoftAPI.CustomersAPI.RequestHeaders() { ApplicationKey = "BusinessCreditClient", RequestId = Guid.NewGuid().ToString() };
            #endregion

            #region AccountsService
            AltasoftAPI.AccountsAPI.AccountsService a = new AltasoftAPI.AccountsAPI.AccountsService();
            a.RequestHeadersValue = new AltasoftAPI.AccountsAPI.RequestHeaders() { ApplicationKey = "BusinessCreditClient", RequestId = Guid.NewGuid().ToString() };
            #endregion

            #region LoansService
            AltasoftAPI.LoansAPI.LoansService l = new AltasoftAPI.LoansAPI.LoansService();
            l.RequestHeadersValue = new AltasoftAPI.LoansAPI.RequestHeaders() { ApplicationKey = "BusinessCreditClient", RequestId = Guid.NewGuid().ToString() };
            #endregion
            #endregion

            var apiUsers = l.ListUsers(new AltasoftAPI.LoansAPI.ListUsersQuery());

            using (var db = new AltasoftDailyContext())
            {
                var dbUsers = db.Users.ToList();

                foreach (var user in apiUsers)
                {
                    var dbUser = dbUsers.FirstOrDefault(x => x.AltasoftUserID == user.Id);

                    if (dbUser == null)
                    {
                        var newUser = new User();

                        newUser.Username = user.LoginName.Replace("@businesscredit.ge", "");
                        newUser.AltasoftUserID = user.Id;
                        newUser.DeptID = user.DeptId;
                        newUser.Name = user.DisplayName.Split(' ').FirstOrDefault();
                        newUser.Password = "******";
                        newUser.LastName = user.DisplayName.Split(' ').LastOrDefault();
                        newUser.LastPasswordChange = DateTime.Now;

                        db.Users.Add(newUser);
                    }
                }

                var saved = db.SaveChanges();
            }
        }
        public OrderLogsFilterForm()
        {
            using (var db = new AltasoftDailyContext())
            {
                comboBox1.Items.AddRange((from u in db.Users.ToArray() select new { FullName = u.Name + " " + u.LastName, ID = u.UserID }).ToArray());
            }

            InitializeComponent();

            comboBox1.DisplayMember = "FullName";
            comboBox1.ValueMember = "ID";
        }
Exemplo n.º 6
0
        public static bool LogException(Exception ex, User user)
        {
            if (ex == null)
                return false;

            using (var db = new AltasoftDailyContext())
            {
                db.ExceptionLogs.Add(CreateExceptionLog(ex, user != null ? db.Users.FirstOrDefault(x => x.UserID == user.UserID) : null));
                db.SaveChanges();
            }

            return true;
        }
        public EditAgreementTermsForm(int AgreementAndSummaryJudgementTermsID, AltasoftDailyContext db)
        {
            ID = AgreementAndSummaryJudgementTermsID;
            Terms = db.AgreementAndSummaryJudgementTerms.FirstOrDefault(x => x.ID == AgreementAndSummaryJudgementTermsID);
            this.Text = db.EnforcementLoans.FirstOrDefault(x => x.AgreementAndSummaryJudgementTerms.ID == AgreementAndSummaryJudgementTermsID).BorrowerName;
            _db = db;
            InitializeComponent();

            tbxAdmittedAmount.Text = Terms.AdmittedAmount.ToString();
            tbxPayment.Text = Terms.Payment.ToString();
            tbxPaymentDay.Text = Terms.PaymentDay.ToString();
            dtpStartDate.Value = Terms.Start;
            dtpEndDate.Value = Terms.End;
        }
Exemplo n.º 8
0
        public static bool ChangePassword(User user, string oldPassword, string newPassword)
        {
            using (var db = new AltasoftDailyContext())
            {
                var dbUser = db.Users.FirstOrDefault(x => x.UserID == user.UserID);

                if (dbUser.Password == oldPassword)
                {
                    user.Password = newPassword;
                    db.SaveChanges();
                    return true;
                }

                return false;
            }
        }
Exemplo n.º 9
0
        public static bool LogSign(SignType signType, User user)
        {
            using (var db = new AltasoftDailyContext())
            {
                var sign = db.SignLogs.Create();

                sign.User = user != null ? db.Users.FirstOrDefault(x => x.UserID == user.UserID) : null;
                sign.Date = DateTime.Now;
                sign.InternalUsername = Environment.UserName;
                sign.SignType = signType;

                db.SignLogs.Add(sign);
                db.SaveChanges();
            }

            return true;
        }
Exemplo n.º 10
0
        public static bool LogComment(DailyPayment payment, User user)
        {
            using (var db = new AltasoftDailyContext())
            {
                var comment = db.CommentLogs.Create();

                comment.User = db.Users.FirstOrDefault(x => user.UserID == x.UserID);
                comment.CommentValue = payment.Comment;
                comment.Date = DateTime.Now;
                comment.LocalPayment = db.DailyPayments.FirstOrDefault(x => x.DailyPaymentID == payment.DailyPaymentID);

                db.CommentLogs.Add(comment);
                db.SaveChanges();
            }

            return true;
        }
Exemplo n.º 11
0
        public static bool DeleteOrder(DailyPayment payment)
        {
            #region OrdersService
            AltasoftAPI.OrdersAPI.OrdersService o = new AltasoftAPI.OrdersAPI.OrdersService();
            o.RequestHeadersValue = new AltasoftAPI.OrdersAPI.RequestHeaders() { ApplicationKey = "BusinessCreditClient", RequestId = Guid.NewGuid().ToString() };
            #endregion

            if (!payment.OrderID.HasValue)
                return false;

            using (var db = new AltasoftDailyContext())
            {
                var user = db.Users.FirstOrDefault(x => x.UserID == payment.LocalUserID);
                o.DeleteOrder(new AltasoftAPI.OrdersAPI.UserAndDeptId() { DeptId = user.DeptID, DeptIdSpecified = true, UserIdentification = new AltasoftAPI.OrdersAPI.UserIdentification() { Id = user.AltasoftUserID, IdSpecified = true } }, payment.OrderID, payment.OrderID.HasValue, Guid.NewGuid().ToString(), true, true);
                db.DailyPayments.FirstOrDefault(x => x.DailyPaymentID == payment.DailyPaymentID).OrderID = null;
                db.SaveChanges();
            }

            return true;
        }
Exemplo n.º 12
0
        public static bool LogOrder(DailyPayment payment, User user)
        {
            if (!payment.OrderID.HasValue)
                return false;

            using (var db = new AltasoftDailyContext())
            {
                var order = db.OrderLogs.Create();

                order.Amount = payment.Payment;
                order.Date = DateTime.Now;
                order.LocalPayment = db.DailyPayments.FirstOrDefault(x => x.DailyPaymentID == payment.DailyPaymentID);
                order.OrderID = payment.OrderID.Value;
                order.User = db.Users.FirstOrDefault(x => x.UserID == user.UserID);

                db.OrderLogs.Add(order);
                db.SaveChanges();
            }

            return true;
        }
Exemplo n.º 13
0
        static void Main()
        {
            #region Initialize Services
            #region OrdersService
            AltasoftAPI.OrdersAPI.OrdersService o = new AltasoftAPI.OrdersAPI.OrdersService();
            o.RequestHeadersValue = new AltasoftAPI.OrdersAPI.RequestHeaders() { ApplicationKey = "BusinessCreditClient", RequestId = Guid.NewGuid().ToString() };
            #endregion

            #region CustomersService
            AltasoftAPI.CustomersAPI.CustomersService c = new AltasoftAPI.CustomersAPI.CustomersService();
            c.RequestHeadersValue = new AltasoftAPI.CustomersAPI.RequestHeaders() { ApplicationKey = "BusinessCreditClient", RequestId = Guid.NewGuid().ToString() };
            #endregion

            #region AccountsService
            AltasoftAPI.AccountsAPI.AccountsService a = new AltasoftAPI.AccountsAPI.AccountsService();
            a.RequestHeadersValue = new AltasoftAPI.AccountsAPI.RequestHeaders() { ApplicationKey = "BusinessCreditClient", RequestId = Guid.NewGuid().ToString() };
            #endregion

            #region LoansService
            AltasoftAPI.LoansAPI.LoansService l = new AltasoftAPI.LoansAPI.LoansService();
            l.RequestHeadersValue = new AltasoftAPI.LoansAPI.RequestHeaders() { ApplicationKey = "BusinessCreditClient", RequestId = Guid.NewGuid().ToString() };
            #endregion
            #endregion

            List<DailyPaymentAndLoan> data = new List<DailyPaymentAndLoan>();

            var loans = new HashSet<Loan>(l.ListLoans(new ListLoansQuery()
            {
                ControlFlags = LoanControlFlags.Basic | LoanControlFlags.Authorities | LoanControlFlags.Debts,
                Status = new LoanStatus[]
                {
                    LoanStatus.Overdue,
                    LoanStatus.Current,
                    LoanStatus.Late
                }
            }));

            foreach (var loan in loans)
            {
                var customer = c.GetCustomer( CustomerControlFlags.Basic,
                                              true,
                                              loan.BorrowerId.Value,
                                              true );

            }

            return;

            (from x in l.ListLoans(new AltasoftAPI.LoansAPI.ListLoansQuery() { ControlFlags = AltasoftAPI.LoansAPI.LoanControlFlags.Basic, Status = new AltasoftAPI.LoansAPI.LoanStatus[] { AltasoftAPI.LoansAPI.LoanStatus.Overdue, AltasoftAPI.LoansAPI.LoanStatus.Current, AltasoftAPI.LoansAPI.LoanStatus.Late } })
             select x.Id.Value).ToList().OrderBy(x => x).Where(x => x != 2331 /*&& x != 6*/).ToList().ForEach(x =>

             data.Add(DailyManagement.GetLoanAndDailyModel(x)));

            using (var db = new AltasoftDailyContext())
            {
                foreach (var p in data)
                {

                }
            }
        }
Exemplo n.º 14
0
        public static List<DailyPayment> UpdateCommentsInDaily(List<DailyPayment> list)
        {
            var result = new List<DailyPayment>();
            using (var db = new AltasoftDailyContext())
            {
                //Collection was modified; enumeration operation may not execute.
                foreach (var comment in list)
                {
                    var payment = db.DailyPayments.FirstOrDefault(x => x.DailyPaymentID == comment.DailyPaymentID);

                    if (payment.Comment != comment.Comment)
                    {
                        payment.Comment = comment.Comment;
                        result.Add(comment);
                    }

                }
                db.SaveChanges();
            }
            return result;
        }
Exemplo n.º 15
0
        public static List<DailyPaymentIDOrderID> SubmitOrdersFromDatabase(User user)
        {
            List<DailyPaymentIDOrderID> result = new List<DailyPaymentIDOrderID>();
            var calcDate = GetCalculationDate();

            using (var db = new AltasoftDailyContext())
            {
                var localPayments = db.DailyPayments.Where(x => x.CalculationDate == calcDate && x.LocalUserID == user.UserID && x.Payment > 0 && x.OrderID == null).ToList();

                foreach (var item in localPayments)
                {
                    DeleteOrder(item);
                    result.Add(new DailyPaymentIDOrderID() { OrderID = SubmitOrder(item.TaxOrderNumber, "GEL", item.CalculationDate.Date, item.ClientAccountIban, item.Payment, item.AgreementNumber, "09", user.AltasoftUserID, user.DeptID), PaymentID = item.DailyPaymentID, CoverLoanID = !item.IsOld ? CoverLoan(item.LoanID, item.Payment) : "Not Covered" });
                }
            }

            return result;
        }
Exemplo n.º 16
0
 public static bool UpdatePaymentsInDaily(List<DailyPayment> payments)
 {
     using (var db = new AltasoftDailyContext())
     {
         foreach (var payment in payments)
         {
             db.DailyPayments.FirstOrDefault(x => x.DailyPaymentID == payment.DailyPaymentID).Payment = payment.Payment;
         }
         db.SaveChanges();
     }
     return true;
 }
Exemplo n.º 17
0
        public static int GetUpdatesByAltasoftUser(User user)
        {
            var calcDate = GetCalculationDate();

            List<DailyPayment> result = new List<DailyPayment>();

            using (var db = new AltasoftDailyContext())
            {
                var localPayments = db.DailyPayments.Where(x => x.CalculationDate == calcDate && x.LocalUserID == user.UserID && !x.IsOld).ToList();
                var localPaymentsIds = from x in localPayments
                                       select x.LoanID;

                var lmsPayments = GetDailyByUser(user.AltasoftUserID).Where(x => x.CalculationDate == calcDate && x.LoanID != 2331);
                var lmsPaymentsIds = from x in lmsPayments
                                     select x.LoanID;

                var newPaymentsIds = lmsPaymentsIds.Except(localPaymentsIds).ToList();
                var oldPaymentsIds = localPaymentsIds.Except(lmsPaymentsIds).ToList();

                var newPayments = lmsPayments.Where(x => newPaymentsIds.Contains(x.LoanID));
                var oldPayments = localPayments.Where(x => oldPaymentsIds.Contains(x.LoanID));

                int count = 0;
                if (localPayments.Count > 0)
                    count = localPayments.Max(x => x.TaxOrderNumber);

                foreach (var item in newPayments)
                {
                    count++;
                    item.LocalUserID = user.UserID;
                    item.TaxOrderNumber = int.Parse(user.DeptID + user.AltasoftUserID.ToString() + count);
                }

                if (newPaymentsIds.Count > 0)
                    db.DailyPayments.AddRange(newPayments);

                if (oldPaymentsIds.Count > 0)
                    db.DailyPayments.RemoveRange(oldPayments);

                db.SaveChanges();
                return newPaymentsIds.Count;
            }
        }
Exemplo n.º 18
0
        /////////////////////////////////////////////////
        public static List<DailyPayment> GetDailyByUserTest(int altasoftUserId)
        {
            #region Initialize Services
            #region OrdersService
            AltasoftAPI.OrdersAPI.OrdersService o = new AltasoftAPI.OrdersAPI.OrdersService();
            o.RequestHeadersValue = new AltasoftAPI.OrdersAPI.RequestHeaders() { ApplicationKey = "BusinessCreditClient", RequestId = Guid.NewGuid().ToString() };
            #endregion

            #region CustomersService
            AltasoftAPI.CustomersAPI.CustomersService c = new AltasoftAPI.CustomersAPI.CustomersService();
            c.RequestHeadersValue = new AltasoftAPI.CustomersAPI.RequestHeaders() { ApplicationKey = "BusinessCreditClient", RequestId = Guid.NewGuid().ToString() };
            #endregion

            #region AccountsService
            AltasoftAPI.AccountsAPI.AccountsService a = new AltasoftAPI.AccountsAPI.AccountsService();
            a.RequestHeadersValue = new AltasoftAPI.AccountsAPI.RequestHeaders() { ApplicationKey = "BusinessCreditClient", RequestId = Guid.NewGuid().ToString() };
            #endregion

            #region LoansService
            AltasoftAPI.LoansAPI.LoansService l = new AltasoftAPI.LoansAPI.LoansService();
            l.RequestHeadersValue = new AltasoftAPI.LoansAPI.RequestHeaders() { ApplicationKey = "BusinessCreditClient", RequestId = Guid.NewGuid().ToString() };
            #endregion
            #endregion

            List<DailyPayment> list = new List<DailyPayment>();
            List<DailyPaymentAndLoan> data = new List<DailyPaymentAndLoan>();

            var loanss = l.ListLoans(new AltasoftAPI.LoansAPI.ListLoansQuery() { ControlFlags = AltasoftAPI.LoansAPI.LoanControlFlags.Authorities | AltasoftAPI.LoansAPI.LoanControlFlags.Debts | AltasoftAPI.LoansAPI.LoanControlFlags.Basic, Status = new AltasoftAPI.LoansAPI.LoanStatus[] { AltasoftAPI.LoansAPI.LoanStatus.Overdue, AltasoftAPI.LoansAPI.LoanStatus.Current, AltasoftAPI.LoansAPI.LoanStatus.Late } });

            foreach (var loan in loanss)
            {
                var result = new DailyPaymentAndLoan();

                #region Create Item
                var item = new DailyPayment()
                {
                    LoanID = loan.Id.Value,
                    CurrentDebtInGel = loan.Debts.Where(x => !x.Name.Contains("undue_principal")).Sum(x => x.Amount),
                    TotalDebtInGel = loan.Debts.Sum(x => x.Amount),
                    InterestPenaltyInGel = loan.Debts.Where(x => x.Name.Contains("overdue_interest_penalty")).Sum(x => x.Amount),
                    PrincipalPenaltyInGel = loan.Debts.Where(x => x.Name.Contains("overdue_principal_penalty")).Sum(x => x.Amount),
                    OverdueInterestInGel = loan.Debts.Where(x => x.Name.Contains("overdue_interest#") || x.Name.Contains("overdue_principal_interest")).Sum(x => x.Amount),
                    AccruedInterestInGel = loan.Debts.Where(x => x.Name == ("interest")).Sum(x => x.Amount),
                    OverduePrincipalInGel = loan.Debts.Where(x => x.Name.Contains("overdue_principal#")).Sum(x => x.Amount),
                    PrincipalInGel = loan.Debts.Where(x => x.Name == ("undue_principal")).Sum(x => x.Amount),
                    CurrentPrincipalInGel = loan.Debts.Where(x => x.Name == ("principal")).Sum(x => x.Amount)
                };

                result.OperatorID = loan.Authorities.FirstOrDefault(x => x.Role == AltasoftAPI.LoansAPI.AuthorityRole.Operator).UserId.Value;
                item.ResponsibleUser = loan.Authorities.FirstOrDefault(x => x.Role == AltasoftAPI.LoansAPI.AuthorityRole.PrimaryResponsible).Name;

                item.DeptID = loan.BranchId.Value;
                item.CalculationDate = loan.CalcDate.Value.Date;
                item.LoanAmountInGel = loan.Amount.Amount;
                item.LoanCCY = loan.Amount.Ccy;
                item.ClientNo = loan.BorrowerId.Value;
                item.AgreementNumber = loan.AgreementNo;
                item.StartDate = loan.Term.Start.ToShortDateString();
                item.EndDate = loan.Term.End.ToShortDateString();

                result.ClientID = loan.BorrowerId.Value;
                result.DeptID = loan.BranchId.Value;

                var customer = c.GetCustomer(AltasoftAPI.CustomersAPI.CustomerControlFlags.Basic, true, loan.BorrowerId.Value, true);
                AltasoftAPI.CustomersAPI.Customer customer2;
                var account = a.GetAccount(AltasoftAPI.AccountsAPI.AccountControlFlags.Basic, true, new AltasoftAPI.AccountsAPI.InternalAccountIdentification() { Id = loan.AccountIdentifier, IdSpecified = true }, item.LoanCCY);

                customer2 = c.GetCustomer(AltasoftAPI.CustomersAPI.CustomerControlFlags.Extensions, true, loan.BorrowerId.Value, true);
                item.Phone = customer2.ContactInfo.MobilePhone;
                item.ClientAccountDescrip = account.DisplayName.ValueGeo;
                item.ClientName = customer.Name.ValueGeo;
                item.FirstName = (customer.Entity as AltasoftAPI.CustomersAPI.IndividualEntity).Name.FirstName.ValueGeo;
                item.LastName = (customer.Entity as AltasoftAPI.CustomersAPI.IndividualEntity).Name.LastName.ValueGeo;
                item.PersonalID = (customer.Entity as AltasoftAPI.CustomersAPI.IndividualEntity).PIN;
                item.ClientAccountBranchCode = customer.BranchId.Value.ToString();
                item.ClientAccountIban = account.IBAN;

                AltasoftAPI.CustomersAPI.Customer customer3;

                customer3 = c.GetCustomer(AltasoftAPI.CustomersAPI.CustomerControlFlags.Addresses, true, loan.BorrowerId.Value, true);
                if (customer3.AddressActual != null)
                {
                    item.ClientAddressFact = customer3.AddressActual.Value.ValueGeo;
                }

                item.NextScheduledPaymentInGel = l.GetLoanSchedule(AltasoftAPI.LoansAPI.DebtComponentDetalization.Detailed, true, AltasoftAPI.LoansAPI.GetLoanScheduleControlFlags.Full, true, item.LoanID, true).FirstOrDefault(x => x.Date == DateTime.Today) != null ?
                    l.GetLoanSchedule(AltasoftAPI.LoansAPI.DebtComponentDetalization.Detailed, true, AltasoftAPI.LoansAPI.GetLoanScheduleControlFlags.Full, true, item.LoanID, true).FirstOrDefault(x => x.Date == DateTime.Today).Elements.Where(x => x.Name != "balance").Sum(x => x.Amount) : 0;

                AltasoftAPI.LoansAPI.Application app;
                bool? notm;
                bool notms;
                l.GetApplication(AltasoftAPI.LoansAPI.ApplicationControlFlags.ExtraFields, true, loan.Id.Value, true, out notm, out notms, out app);

                item.BusinessAddress = app.Businesses.FirstOrDefault().Address;

                result.DailyPayment = item;
                data.Add(result);
                #endregion
            }

            using (var db = new AltasoftDailyContext())
            {
                var user = db.Users.FirstOrDefault(x => x.AltasoftUserID == altasoftUserId);

                try
                {
                    if (user.Filter.IsDeptFilterEnabled && data != null)
                        data = data.Where(x => x != null && user.Filter.FilterData.Any(y => y.DeptID == x.DeptID)).ToList();

                    if (user.Filter.IsCustomerFilterEnabled && data != null)
                        data = data.Where(x => x != null && user.Filter.FilterData.Any(y => y.ClientID == x.ClientID)).ToList();

                    if (user.Filter.IsOperatorFilterEnabled && data != null)
                        data = data.Where(x => x != null && user.Filter.FilterData.Any(y => y.OperatorID == x.OperatorID)).ToList();
                }
                catch (NullReferenceException)
                {
                    return new List<DailyPayment>();
                }

                if (data != null)
                    data.ForEach(x => { if (x != null) list.Add(x.DailyPayment); });
            }
            return list.OrderBy(x => x.LoanID).ToList();
        }
Exemplo n.º 19
0
        public static List<DailyPayment> GetDailyByUser(int altasoftUserId)
        {
            #region Initialize Services
            #region OrdersService
            AltasoftAPI.OrdersAPI.OrdersService o = new AltasoftAPI.OrdersAPI.OrdersService();
            o.RequestHeadersValue = new AltasoftAPI.OrdersAPI.RequestHeaders() { ApplicationKey = "BusinessCreditClient", RequestId = Guid.NewGuid().ToString() };
            #endregion

            #region CustomersService
            AltasoftAPI.CustomersAPI.CustomersService c = new AltasoftAPI.CustomersAPI.CustomersService();
            c.RequestHeadersValue = new AltasoftAPI.CustomersAPI.RequestHeaders() { ApplicationKey = "BusinessCreditClient", RequestId = Guid.NewGuid().ToString() };
            #endregion

            #region AccountsService
            AltasoftAPI.AccountsAPI.AccountsService a = new AltasoftAPI.AccountsAPI.AccountsService();
            a.RequestHeadersValue = new AltasoftAPI.AccountsAPI.RequestHeaders() { ApplicationKey = "BusinessCreditClient", RequestId = Guid.NewGuid().ToString() };
            #endregion

            #region LoansService
            AltasoftAPI.LoansAPI.LoansService l = new AltasoftAPI.LoansAPI.LoansService();
            l.RequestHeadersValue = new AltasoftAPI.LoansAPI.RequestHeaders() { ApplicationKey = "BusinessCreditClient", RequestId = Guid.NewGuid().ToString() };
            #endregion
            #endregion

            List<DailyPayment> list = new List<DailyPayment>();
            List<DailyPaymentAndLoan> data = new List<DailyPaymentAndLoan>();

            var loansIds = (from x in l.ListLoans(new AltasoftAPI.LoansAPI.ListLoansQuery() { ControlFlags = AltasoftAPI.LoansAPI.LoanControlFlags.Basic, Status = new AltasoftAPI.LoansAPI.LoanStatus[] { AltasoftAPI.LoansAPI.LoanStatus.Overdue, AltasoftAPI.LoansAPI.LoanStatus.Current, AltasoftAPI.LoansAPI.LoanStatus.Late } })
                            select x.Id.Value).ToList().OrderBy(x => x);

            using (var db = new AltasoftDailyContext())
            {
                var user = db.Users.FirstOrDefault(x => x.AltasoftUserID == altasoftUserId);

                loansIds.Where(x => x != 2331 /*&& x != 6*/).ToList().ForEach(x => data.Add(GetLoanAndDailyModel(x)));

                try
                {
                    if (user.Filter.IsDeptFilterEnabled && data != null)
                        data = data.Where(x => x != null && user.Filter.FilterData.Any(y => y.DeptID == x.DeptID)).ToList();

                    if (user.Filter.IsCustomerFilterEnabled && data != null)
                        data = data.Where(x => x != null && user.Filter.FilterData.Any(y => y.ClientID == x.ClientID)).ToList();

                    if (user.Filter.IsOperatorFilterEnabled && data != null)
                        data = data.Where(x => x != null && user.Filter.FilterData.Any(y => y.OperatorID == x.OperatorID)).ToList();
                }
                catch (NullReferenceException)
                {
                    return new List<DailyPayment>();
                }

                if (data != null)
                    data.ForEach(x => { if (x != null) list.Add(x.DailyPayment); });
            }
            return list.OrderBy(x => x.LoanID).ToList();
        }