/// <summary>
        /// 删除客户成交
        /// </summary>
        /// <param name="user">登陆用户基本信息</param>
        /// <param name="customertransactions">客户成交实体</param>
        /// <param name="cancellationToken">验证</param>
        /// <returns></returns>
        public async Task DeleteAsync(SimpleUser user, CustomerTransactions customertransactions, CancellationToken cancellationToken = default(CancellationToken))
        {
            if (user == null)
            {
                throw new ArgumentNullException(nameof(user));
            }

            if (customertransactions == null)
            {
                throw new ArgumentNullException(nameof(customertransactions));
            }
            //删除基本信息
            customertransactions.DeleteTime = DateTime.Now;
            customertransactions.DeleteUser = user.Id;
            customertransactions.IsDeleted  = true;
            Context.Attach(customertransactions);
            var entry = Context.Entry(customertransactions);

            entry.Property(x => x.IsDeleted).IsModified  = true;
            entry.Property(x => x.DeleteUser).IsModified = true;
            entry.Property(x => x.DeleteTime).IsModified = true;
            try
            {
                await Context.SaveChangesAsync(cancellationToken);
            }
            catch (DbUpdateConcurrencyException)
            {
                throw;
            }
        }
 void SetExtraWorkTotal()
 {
     if (SelectedFlat != null)
     {
         ExtraWorkTotal = CustomerTransactions.Where(ct => ct.Flat.Id == SelectedFlat.Id).Select(ct => ct.ExtraWorkTotal).FirstOrDefault();
     }
 }
Ejemplo n.º 3
0
        public async Task <IActionResult> OnGetAsync(string sortString, string filterString)
        {
            await FetchCustomerData();

            if (!string.IsNullOrEmpty(filterString))
            {
                CustomerTransactions = CustomerTransactions.Where(s => s.Date.ToString().Contains(filterString) ||
                                                                  s.Amount.ToString().Contains(filterString) ||
                                                                  s.Currency.ToString().Contains(filterString) ||
                                                                  (s.Description ?? "").ToString().Contains(filterString)
                                                                  ).ToList();
            }

            DateSort        = string.IsNullOrEmpty(sortString) ? "Date_Dsc_Sort" : "";
            CurrencySort    = sortString == "Currency_Asc_Sort" ? "Currency_Dsc_Sort" : "Currency_Dsc_Sort";
            AmountSort      = sortString == "Amount_Asc_Sort" ? "Amount_Dsc_Sort" : "Amount_Asc_Sort";
            DescriptionSort = sortString == "Description_Asc_Sort" ? "Description_Dsc_Sort" : "Description_Dsc_Sort";


            switch (sortString)
            {
            case "Date_Dsc_Sort":
                CustomerTransactions = CustomerTransactions.OrderByDescending(s => s.Date).ToList();
                break;

            case "Currency_Asc_Sort":
                CustomerTransactions = CustomerTransactions.OrderBy(s => s.Currency).ToList();
                break;

            case "Currency_Dsc_Sort":
                CustomerTransactions = CustomerTransactions.OrderByDescending(s => s.Currency).ToList();
                break;

            case "Amount_Asc_Sort":
                CustomerTransactions = CustomerTransactions.OrderBy(s => s.Amount).ToList();
                break;

            case "Amount_Dsc_Sort":
                CustomerTransactions = CustomerTransactions.OrderByDescending(s => s.Amount).ToList();
                break;

            case "Description_Asc_Sort":
                CustomerTransactions = CustomerTransactions.OrderBy(s => s.Description).ToList();
                break;

            case "Description_Dsc_Sort":
                CustomerTransactions = CustomerTransactions.OrderByDescending(s => s.Description).ToList();
                break;
            }


            return(Page());
        }
Ejemplo n.º 4
0
        }//Fin del metodo

        /// <summary>
        /// Este metodo consulta las transacciones para el cliente seleccionado
        /// </summary>
        private void ConsultTransactions()
        {
            CustomerTransactions.Clear();
            CustomerTrackings.Clear();
            foreach (CustomerTransaction t in CustomerSelected.Transactions)
            {
                CustomerTransactions.Add(t);
            }

            foreach (CustomerTracking cT in CustomerSelected.CustomerTracking)
            {
                CustomerTrackings.Add(cT);
            }
        }
 /// <summary>
 /// 修改客户成交信息
 /// </summary>
 /// <param name="customertransactions"></param>
 /// <param name="cancellationToken"></param>
 /// <returns></returns>
 public async Task UpdateAsync(CustomerTransactions customertransactions, CancellationToken cancellationToken = default(CancellationToken))
 {
     if (customertransactions == null)
     {
         throw new ArgumentNullException(nameof(customertransactions));
     }
     Context.Attach(customertransactions);
     Context.Update(customertransactions);
     try
     {
         await Context.SaveChangesAsync(cancellationToken);
     }
     catch (DbUpdateConcurrencyException) { }
 }
        /// <summary>
        /// 新增客户成交信息
        /// </summary>
        /// <param name="customertransactions">实体</param>
        /// <param name="cancellationToken">验证</param>
        /// <returns></returns>
        public async Task <CustomerTransactions> CreateAsync(CustomerTransactions customertransactions, CancellationToken cancellationToken = default(CancellationToken))
        {
            if (customertransactions == null)
            {
                throw new ArgumentNullException(nameof(customertransactions));
            }
            Context.Add(customertransactions);

            if (customertransactions.CustomerTransactionsFollowUps != null)
            {
                Context.AddRange(customertransactions.CustomerTransactionsFollowUps);
            }

            await Context.SaveChangesAsync(cancellationToken);

            return(customertransactions);
        }
        public List <CustomerTransactions> GetAccountHistory(int accNo)
        {
            IList <Chilindo.DAL.Models.AccountHistory> lstHistory = _customerAccountInfo.AccountHistory(accNo);
            List <CustomerTransactions> custTran = new List <CustomerTransactions>();
            CustomerTransactions        objCustomerTran;

            foreach (Chilindo.DAL.Models.AccountHistory history in lstHistory)
            {
                objCustomerTran = new CustomerTransactions();
                objCustomerTran.TransactionType = history.TransactionType;
                objCustomerTran.Currency        = history.Currency;
                objCustomerTran.Amount          = history.Amount;
                objCustomerTran.LastUpdateOn    = history.LastUpdateOn;
                objCustomerTran.AccountId       = history.AccountId;
                objCustomerTran.AccountNumber   = history.AccountNumber;
                custTran.Add(objCustomerTran);
            }
            return(custTran);
        }
        public async Task Save()
        {
            try
            {
                var uv = new CustomerTransactions();

                if (CustomerView.CustomerId > 0)
                {
                    CustomerView = await uv.CustomerUpdate(this.GetCustomerUpdate());
                }
                else
                {
                    CustomerView = await uv.CustomerAdd(this.GetCustomerAdd());
                }
            }
            catch (Exception ex)
            {
                MessagingCenter.Send(this, "Save error");
            }
        }
Ejemplo n.º 9
0
        /// <summary>
        /// 再次带看
        /// </summary>
        /// <param name="customertransactions"></param>
        /// <param name="customertransactionstollowup"></param>
        /// <param name="customerFollowUp"></param>
        /// <param name="cancellationToken">验证</param>
        /// <returns></returns>
        public async Task CreateAgainBeltLookAsync(CustomerTransactions customertransactions, CustomerTransactionsFollowUp customertransactionstollowup, CustomerFollowUp customerFollowUp, CancellationToken cancellationToken = default(CancellationToken))
        {
            if (customertransactions == null)
            {
                throw new ArgumentNullException(nameof(customertransactions));
            }
            if (customertransactions != null)
            {
                Context.Add(customertransactions);
            }
            if (customertransactionstollowup != null)
            {
                Context.Add(customertransactionstollowup);
            }
            if (customerFollowUp != null)
            {
                Context.Add(customerFollowUp);
            }

            await Context.SaveChangesAsync(cancellationToken);
        }
Ejemplo n.º 10
0
        /// <summary>
        /// Este metodo actualiza las propiedades relacionadas al area de actualizacion de informacion
        /// de la vista.
        /// </summary>
        /// <param name="customer"></param>
        private void UpdateCustomerProperty(Customer customer)
        {
            CanModify = false;

            if (customer != null)
            {
                CustomerName        = customer.CustomerName;
                CustomerNit         = customer.Nit;
                CustomerAddres      = customer.Address;
                CustomerPhone       = customer.Phone;
                CustomerObservation = customer.Observation;
                ConsultTransactions();
            }
            else
            {
                CustomerName        = null;
                CustomerNit         = null;
                CustomerAddres      = null;
                CustomerPhone       = null;
                CustomerObservation = null;
                CustomerTransactions.Clear();
            }
        }
        /// <summary>
        /// 新增客户成交信息
        /// </summary>
        /// <param name="customerdeal">实体</param>
        /// <param name="customerInfo"></param>
        /// <param name="customerTransactionsFollowUp"></param>
        /// <param name="customerTransactions"></param>
        /// <param name="customerFollowUp"></param>
        /// <param name="cancellationToken">验证</param>
        /// <returns></returns>
        public async Task <CustomerDeal> CreateAsync(CustomerDeal customerdeal, CustomerInfo customerInfo, CustomerTransactionsFollowUp customerTransactionsFollowUp, CustomerTransactions customerTransactions, CustomerFollowUp customerFollowUp, CancellationToken cancellationToken = default(CancellationToken))
        {
            if (customerdeal == null)
            {
                throw new ArgumentNullException(nameof(customerdeal));
            }
            Context.Attach(customerdeal);
            Context.Update(customerdeal);
            if (customerInfo != null)
            {
                Context.Attach(customerInfo);
                Context.Update(customerInfo);
            }
            if (customerTransactions != null)
            {
                Context.Attach(customerTransactions);
                Context.Update(customerTransactions);
                Context.Add(customerTransactionsFollowUp);
            }
            if (customerFollowUp != null)
            {
                Context.Add(customerFollowUp);
            }
            await Context.SaveChangesAsync(cancellationToken);

            return(customerdeal);
        }
        public async Task GetTransactionsByNuban(string nuban, string currencyCode)
        {
            try
            {
                var selectedMonthIndex = DateTime.Now.Month;
                var currentYear        = DateTime.Now.Year;
                var daysInMonth        = DateTime.DaysInMonth(currentYear, selectedMonthIndex);
                var startDate          = new DateTime(currentYear, selectedMonthIndex, 1);
                var endDate            = new DateTime(currentYear, selectedMonthIndex, daysInMonth);

                CheckConnectivity();
                if (string.IsNullOrEmpty(nuban))
                {
                    return;
                }
                IsTransactionLoading        = true;
                TransactionMessage          = string.Empty;
                ShowTransactionErrorMessage = false;
                CustomerTransactions.Clear();
                var apirequest = new ApiRequest();


                string url     = $"Transaction/GetUserTransactionsByRange?userId={GlobalStaticFields.Customer.Email}&StartDate={startDate.ToString("MM-dd-yyyy")}&EndDate={endDate.ToString("MM-dd-yyyy")}";
                var    request = await apirequest.GetWithSwitchId(GlobalStaticFields.Customer.Email, "", URLConstants.SwitchApiLiveBaseUrl, url, "BankAccounts");

                if (request.IsSuccessStatusCode)
                {
                    var jsonString = await request.Content.ReadAsStringAsync();

                    jsonString = jsonString.JsonCleanUp();
                    transactions.Clear();
                    var jobj = JsonConvert.DeserializeObject <APIResponse <List <GetStatements> > >(jsonString);
                    if (jobj.Status)
                    {
                        var filt = jobj.Data.Where(c => c.FromAccount == nuban || c.ToAccount == nuban).OrderByDescending(c => c.ID).ToList().Take(3);

                        foreach (var rec in filt)
                        {
                            var amt          = Convert.ToDouble(rec.Amount).ToString("##, ###.##");
                            var refinedTrans = new RefinedTransactions
                            {
                                CategoryName     = rec.CategoryName,
                                BeneficiaryName  = rec.BeneficiaryName,
                                Amount           = rec.IsBeneficiary == true ? $"{Utilities.GetCurrency(currencyCode)} {amt}" : $"{Utilities.GetCurrency(currencyCode)} {amt}",
                                AmountColor      = rec.IsBeneficiary == true ? Color.Green : Color.Red,
                                ReferenceID      = rec.ReferenceID,
                                TransactionDate  = rec.TransactionDate.ToString("d MMM"),
                                PaymentReference = rec.PaymentReference
                            };
                            transactions.Add(refinedTrans);
                        }

                        CustomerTransactions.ReplaceRange(transactions);
                        if (CustomerTransactions.Count > 0)
                        {
                            TransactionMessage = "";
                        }
                    }
                    else
                    {
                        ShowTransactionErrorMessage = true;
                        TransactionMessage          = "No Transaction Found";
                    }
                }
                else
                {
                    var content = await request.Content.ReadAsStringAsync();
                }
            }
            catch (WebException e)
            {
            }
            catch (Exception ex)
            {
            }
            finally
            {
                IsTransactionLoading = false;
            }
        }
Ejemplo n.º 13
0
        public CustomerTransactions Get(string dtTo, string dtFrom, string LocationID)
        {
            EarthSkyTimeEntities1 estEnt = new EarthSkyTimeEntities1();

            CustomerTransactions transactions = new CustomerTransactions();

            transactions.CustomerTransactionList = new List <CustomerTransaction>();


            // get all transactions
            var oTrans = from t in estEnt.Transactions
                         join c in estEnt.Customers on t.CustomerID equals c.CustomerID
                         join l in estEnt.Locations on t.LocationID equals l.LocationID into joinedT
                         from l in joinedT.DefaultIfEmpty()
                         orderby t.TransactionDate descending
                         select new { t.Amount, t.TransactionDate, c.FirstName, c.LastName, l.LocationName, l.City, l.State, LocationID = l.LocationID == null ? 0 : l.LocationID };



            if (dtFrom != "undefined" && dtFrom != "null")
            {
                DateTime dFrom = Convert.ToDateTime(dtFrom);
                oTrans = oTrans.Where(m => m.TransactionDate >= dFrom);
            }

            if (dtTo != "undefined" && dtTo != "null")
            {
                DateTime dTo = Convert.ToDateTime(dtTo).AddDays(1);

                oTrans = oTrans.Where(m => m.TransactionDate <= dTo);
            }

            if (LocationID != "undefined")
            {
                int iLocation = Convert.ToInt32(LocationID);
                if (iLocation > 0)
                {
                    oTrans = oTrans.Where(m => m.LocationID == iLocation);
                }
            }



            foreach (var t1 in oTrans)
            {
                string sLoc = t1.LocationName + " - " + t1.City + ", " + t1.State;
                if (t1.LocationName != null)
                {
                    sLoc = t1.LocationName;

                    if (t1.City != "")
                    {
                        sLoc += " - " + t1.City;
                    }

                    if (t1.State != "")
                    {
                        sLoc += ", " + t1.State;
                    }
                }
                else
                {
                    sLoc = "None";
                }


                transactions.CustomerTransactionList.Add(new CustomerTransaction {
                    Name = t1.LastName + ", " + t1.FirstName, Amount = Convert.ToDecimal(t1.Amount), Location = sLoc, DateUpdated = Convert.ToDateTime(t1.TransactionDate).ToShortDateString()
                });
            }


            return(transactions);
        }