Exemple #1
0
        async Task ExecuteLoadItemsCommand()
        {
            if (IsBusy)
            {
                return;
            }

            IsBusy = true;

            try
            {
                Debts.Clear();
                var items = await repository.GetItemsAsync(User.Id);

                foreach (var item in items)
                {
                    Debts.Add(item);
                }
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex);
            }
            finally
            {
                IsBusy = false;
            }
        }
Exemple #2
0
        public virtual Dictionary <string, object> ToDictionary(DynamicsGatewayOptions options, Guid organisationId, IDictionary <string, object> auditOrigin)
        {
            var dictionary = new Dictionary <string, object>
            {
                { "ContactPreference", DebtorContactPreference.ToDictionary() },
                { "DebtorDetails", DebtorDetails.ToDictionary() },
                { "CurrentAddress", CurrentAddress.ToDictionary() },
                { "PreviousAddresses", PreviousAddresses?.Select(x => x.ToDictionary()).ToList() },
                { "Debts", Debts?.Select(x => x.ToDictionary()).ToList() },
                { "AdHocDebts", AdHocDebts?.Select(x => x.ToDictionary()).ToList() },
                { "Businesses", Businesses?.Select(x => x.ToDictionary()).ToList() },
                { "DebtorNominatedContacts", DebtorNominatedContacts?.Select(x => x.ToDictionary(options)).ToList() },
                { "ManagingMoneyAdviserOrganisationId", organisationId },
                { "Origin", auditOrigin }
            };

            var payload = JsonSerializer.Serialize(new Dictionary <string, object>
            {
                { "BreathingSpaceMoratorium", dictionary }
            });

            var dictionaryWrapper = new Dictionary <string, object>
            {
                { "Request", payload }
            };

            return(dictionaryWrapper);
        }
 public void AddDebt(int id, decimal amount)
 {
     Debts.Add(new Debt()
     {
         ID = id, Amount = amount
     });
 }
Exemple #4
0
        // CREA UNA NUEVA DEUDA Y LO AGREGA A LA LISTA DE LAS MISMAS
        public void AddNewDebt(Purchase NewPurchase, float Amount)
        {
            Debt Debt = new Debt();

            Debt.Amount       = Amount;
            Debt.OwedPurchase = NewPurchase;
            Debts.Add(Debt);
        }
Exemple #5
0
        public bool UpdateDebts(Debts debts)
        {
            context.Entry(debts).State = System.Data.Entity.EntityState.Modified;

            var exitingAccomodationPackage = context.Debts.Find(debts.ID);

            context.Entry(exitingAccomodationPackage).CurrentValues.SetValues(debts);

            return(context.SaveChanges() > 0);
        }
Exemple #6
0
        private void AddDebt()
        {
            var debt = new Debt
            {
                Amount = debtAmount,
                Date   = DateTime.Now
            };

            Debts.Add(debt);
            Debter.DebtList.Add(debt);
            Debter.Indebted += debtAmount;
        }
Exemple #7
0
 private void ИзменитьToolStripMenuItem_Click(object sender, EventArgs e)
 {
     if (view.SelectedItems.Count == 1)
     {
         using (EditDebt ed = new EditDebt(Debts.First(t => t.ID.ToString() == view.SelectedItems[0].SubItems[0].Text), dbm, Priorities.ToArray()))
         {
             if (ed.ShowForm(out dbm_lib.UpdateConstructor uc))
             {
                 dbm.EditDebt(uc); UpdateDebts(); PrintAllDebts(); sync_manager.Synchronization.Changes += 1;
             }
         }
     }
 }
Exemple #8
0
        public bool Insert(phieuxuat obj)
        {
            using (CTyPHSachEntities db = new CTyPHSachEntities())
            {
                try
                {
                    int id = db.DeliveryNotes.Max(x => x.DeliveryNoteID) + 10;
                    var ob = new DeliveryNotes();
                    ob.DeliveryNoteID     = id;
                    ob.deliverName        = obj.nguoigia;
                    ob.receiverName       = obj.nguoitao;
                    ob.totalPrice         = obj.giatri;
                    ob.AgencyID           = obj.id_dl;
                    ob.endeliverdate      = obj.hanthanhtoan;
                    ob.deliverDateCreated = obj.ngayxuat;
                    db.DeliveryNotes.Add(ob);

                    List <DeliveryDetails> rd = new List <DeliveryDetails>();
                    foreach (var item in obj.chitiet)
                    {
                        var ct = new DeliveryDetails();
                        var s  = db.Books.Find(item.masach);
                        s.amount          = s.amount - item.sl;
                        ct.BookID         = item.masach;
                        ct.DeliveryNoteID = id;
                        ct.amount         = item.sl;
                        ct.price          = s.receiptPrice;
                        rd.Add(ct);
                    }

                    db.DeliveryDetails.AddRange(rd);

                    if (obj.thanhtoan > 0)
                    {
                        var tt = new Debts();
                        tt.DeliveryNoteID = id;
                        tt.dateCreated    = obj.ngayxuat;
                        tt.thanhtoan      = obj.thanhtoan;
                        tt.id_dl          = obj.id_dl;
                        tt.creatorName    = obj.nguoitao;
                        db.Debts.Add(tt);
                    }
                    db.SaveChanges();
                    return(true);
                }
                catch (Exception ex)
                {
                    return(false);
                }
            }
        }
Exemple #9
0
 private void View_DoubleClick(object sender, EventArgs e)
 {
     if (view.SelectedItems.Count == 1)
     {
         dbm_lib.components.Debt dt = Debts.FirstOrDefault(t => t.ID.ToString() == view.SelectedItems[0].SubItems[0].Text);
         if (dt != null)
         {
             using (InfoDebt inf = new InfoDebt(dt))
             {
                 inf.ShowDialog();
             }
         }
     }
 }
Exemple #10
0
 public void Clean()
 {
     Income.Clear();
     IncomeTotal = 0.0;
     Expenses.Clear();
     ExpensesTotal = 0.0;
     Total         = 0.0;
     Debts.Clear();
     DebtsTotal = 0.0;
     CleanTotal = 0.0;
     Outages.Clear();
     OutagesTotal = 0.0;
     AccountsBalance.Clear();
 }
Exemple #11
0
        public SimulationAccount GetAccount(string id)
        {
            if (Debts.TryGetValue(id, out var debt))
            {
                return(debt);
            }

            if (Accounts.TryGetValue(id, out var account))
            {
                return(account);
            }

            return(null);
        }
Exemple #12
0
        private ISimulationBill GetBill(string id)
        {
            if (Bills.TryGetValue(id, out var bill))
            {
                return(bill);
            }

            if (Debts.TryGetValue(id, out var debt))
            {
                return(debt);
            }

            return(null);
        }
        public JsonResult Action(DebtsActionModel model)
        {
            JsonResult json = new JsonResult();


            var result = false;

            if (model.ID > 0) //we are trying to edit a record
            {
                var debts = debtsServices.GetDebtsByID(model.ID);

                debts.KindOfDebtsID = (int)model.KindOfDebtsID;
                debts.Name          = model.Name;

                debts.DebtPerson = model.DebtPerson;
                debts.Executor   = model.Executor;
                debts.Price      = model.Price;
                debts.Date       = model.Date;

                result = debtsServices.UpdateDebts(debts);
            }
            else //we are trying to create a record
            {
                Debts debts = new Debts();

                debts.KindOfDebtsID = (int)model.KindOfDebtsID;
                debts.Name          = model.Name;

                debts.DebtPerson = model.DebtPerson;
                debts.Executor   = model.Executor;
                debts.Price      = model.Price;
                debts.Date       = model.Date;

                result = debtsServices.SaveDebts(debts);
            }

            if (result)
            {
                json.Data = new { Success = true };
            }
            else
            {
                json.Data = new { Success = false, Message = "Unable to perform action on Debt." };
            }

            return(json);
        }
Exemple #14
0
        public CommandResult AddDebit(ExpensePayment expensePayment)
        {
            if (expensePayment.Status == Paid)
            {
                var balance = Balance -= expensePayment.Value;

                if (balance < 0)
                {
                    return(new Exception("Insufficient balance!"));
                }

                Balance = balance;
            }

            Debts.Add(expensePayment);
            return(CommandResult.Success());
        }
 public bool insert(phieuthu pt)
 {
     using (CTyPHSachEntities db = new CTyPHSachEntities())
     {
         try
         {
             var entity = new Debts();
             entity.DeliveryNoteID = pt.id_phieuxuat;
             entity.creatorName    = pt.nguoithu;
             entity.dateCreated    = pt.ngaylap;
             entity.id_dl          = pt.id_daily;
             entity.thanhtoan      = pt.thanhtoan;
             db.Debts.Add(entity);
             db.SaveChanges();
             return(true);
         }catch (Exception ex)
         {
             return(false);
         }
     }
 }
Exemple #16
0
        private void УплатаДолгаToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (view.SelectedItems.Count == 1)
            {
                UpdateDebts();
                dbm_lib.components.Debt debt = Debts.FirstOrDefault(t => t.ID.ToString() == view.SelectedItems[0].SubItems[0].Text);
                if (debt != null)
                {
                    using (ResDebt rd = new ResDebt(debt.Amount))
                    {
                        if (rd.ShowForm())
                        {
                            debt.Amount -= rd.AmountSum;

                            dbm_lib.UpdateConstructor uc = new dbm_lib.UpdateConstructor();
                            uc.TableName = "Debts";
                            uc.Wheres    = $"`id`={debt.ID}";

                            if (rd.HistoryEnabled)
                            {
                                debt.History.Add($"{rd.AmountSum}^{rd.CreateDate}^{rd.Description}");
                                uc.Values.Add(new dbm_lib.DBKV("history", debt.GetHistory()));
                            }
                            uc.Values.Add(new dbm_lib.DBKV("debt", debt.Amount.ToString()));

                            dbm.EditDebt(uc);

                            UpdateDebts();
                            UpdateCounters();
                            PrintAllDebts();
                            sync_manager.Synchronization.Changes += 1;
                        }
                    }
                }
            }
        }
Exemple #17
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            SetContentView(Resource.Layout.MainActivityLayout);

            var toolbar = FindViewById <Toolbar>(Resource.Id.toolbar);

            SetActionBar(toolbar);
            toolbar.MenuItemClick += (sender, args) => OnOptionsItemSelected(args.Item);
            ActionBar.Title        = GetString(Resource.String.app_name);

            tabLayout = FindViewById <TabLayout>(Resource.Id.sliding_tabs);

            if (!initialized)
            {
                Storage = new SharedPrefDebts(GetPreferences(FileCreationMode.Private));
                Debts   = Debts.LoadFrom(Storage);
                InitTabLayout();
            }


            VKSdk.Initialize(this);
            //VKSdk.Login(this);
        }
Exemple #18
0
 public Debtor(Debt initialDebt, string dname)
 {
     name = dname;
     Debts.Add(initialDebt);
     totaldebt = initialDebt.Debtvalue;
 }
        public List <DebtPayment> ProcessPlan(bool Snowball, SnowballApproaches approach, double initialSnowballPayment, DateTime?initialSnowballStart = null)
        {
            DateTime startProcess = DateTime.Now;

            DateTime           cur          = DateTime.Now;
            List <DebtPayment> DebtPayments = new List <DebtPayment>();

            if (initialSnowballStart == null)
            {
                initialSnowballStart = DateTime.Now;
            }
            double TotalIntrest = 0;

            foreach (Debt d in Debts)
            {
                d.Balance = d.OriginalBalance;

                if (d.FirstPaymentDate < cur)
                {
                    cur = d.FirstPaymentDate;
                }
            }

            while (GetTotalBalance() > 0)
            {
                double curExtra = cur >= initialSnowballStart && Snowball ? initialSnowballPayment : 0;

                if (Snowball)
                {
                    foreach (ExtraPayment ep in ExtraPayments.Where(x => x.Enabled == true))
                    {
                        curExtra = curExtra + ep.IsItTimeToApply(cur.Month, cur.Year);
                    }
                }

                List <Debt> debtOrder = new List <Debt>();
                switch (approach)
                {
                case SnowballApproaches.MyOrder:
                    debtOrder = Debts.ToList();
                    break;

                case SnowballApproaches.LowestBalanceFirst:
                    debtOrder = Debts.OrderBy(x => x.OriginalBalance).ToList();
                    break;

                case SnowballApproaches.HighestInterestFirst:
                    debtOrder = Debts.OrderByDescending(x => x.IntrestRate).ToList();
                    break;
                }


                foreach (Debt d in debtOrder)
                {
                    if (d.Balance > 0 && d.Enabled && cur >= d.FirstPaymentDate)
                    {
                        double extra = 0;

                        if (d.Balance >= curExtra)
                        {
                            extra    = curExtra;
                            curExtra = 0;
                        }
                        else
                        {
                            extra    = d.Balance;
                            curExtra = curExtra - d.Balance;
                        }

                        PaymentResult pr = Debt.CalculateBalanceWithPayment(d.IntrestRate, d.Payment + extra, d.Balance, cur.Year, cur.Month);
                        d.Balance     = pr.NewBalance;
                        TotalIntrest += pr.Interest;

                        DebtPayment dp = new DebtPayment();
                        dp.Intrest           = Math.Round(pr.Interest, 2);
                        dp.Balance           = Math.Round(pr.NewBalance, 2);
                        dp.Name              = d.Name;
                        dp.Payment           = Math.Round(d.Payment + extra, 2);
                        dp.ExtraPaid         = extra;
                        dp.Principal         = Math.Round(pr.Principal, 2);
                        dp.TotalBalance      = Math.Round(GetTotalBalance(), 2);
                        dp.TotalInterestPaid = Math.Round(TotalIntrest, 2);
                        dp.Date              = cur.Month.ToString() + "/" + cur.Year.ToString();

                        DebtPayments.Add(dp);

                        if (Snowball)
                        {
                            if (d.Balance == 0)
                            {
                                Debt snowballTo = new Debt();
                                snowballTo.Balance = 9999999999;

                                foreach (Debt dm in Debts)
                                {
                                    if (dm.Enabled && dm.Balance < snowballTo.Balance && dm.Balance > 0)
                                    {
                                        snowballTo = dm;
                                    }
                                }

                                initialSnowballPayment += d.Payment;
                                //snowballTo.Payment += d.Payment;
                            }
                        }
                    }
                }

                cur = cur.AddMonths(1);

                if (cur.Year > 2050)
                {
                    break;
                }
            }

            AccumulatorCollection acPrincipal = new AccumulatorCollection();
            AccumulatorCollection acInterest  = new AccumulatorCollection();

            for (int x = 0; x < DebtPayments.Count; x++)
            {
                acInterest.AddTo(DebtPayments[x].Date, DebtPayments[x].Intrest);
                acPrincipal.AddTo(DebtPayments[x].Date, DebtPayments[x].Principal);
            }

            for (int x = 0; x < DebtPayments.Count; x++)
            {
                DebtPayments[x].TotalMonthlyInterest  = acInterest.GetMonthAccumulation(DebtPayments[x].Date);
                DebtPayments[x].TotalMonthlyPrincipal = acPrincipal.GetMonthAccumulation(DebtPayments[x].Date);
            }


            TimeSpan finishedProcess = DateTime.Now - startProcess;

            Debug.WriteLine($"Process Took: {finishedProcess.TotalSeconds} seconds");

            return(DebtPayments);
        }
Exemple #20
0
 public void AddDebt(Debt debt)
 {
     Debts.Add(debt);
 }
Exemple #21
0
        public bool DeleteDebts(Debts debts)
        {
            context.Entry(debts).State = System.Data.Entity.EntityState.Deleted;

            return(context.SaveChanges() > 0);
        }
Exemple #22
0
        public bool SaveDebts(Debts debts)
        {
            context.Debts.Add(debts);

            return(context.SaveChanges() > 0);
        }