示例#1
0
        public void Add(MonthlyMoneyTransaction p)
        {
            SqlItemList sqlItems = GetFrom(p);

            SetInsertIntoSql(SynnDataProvider.TableNames.MoneyTransactionItems, sqlItems);
            ExecuteSql();
        }
示例#2
0
        private static SqlItemList GetFrom(MonthlyMoneyTransaction p)
        {
            var sqlItems = new SqlItemList();

            sqlItems.Add(new SqlItem("Amount", p.Amount));
            sqlItems.Add(new SqlItem("Closed", p.Closed));
            sqlItems.Add(new SqlItem("Month", p.Month));
            sqlItems.Add(new SqlItem("TemplateId", p.TemplateId));
            return(sqlItems);
        }
示例#3
0
        public void Update(MonthlyMoneyTransaction i)
        {
            SqlItemList sqlItems = GetFrom(i);

            SetUpdateSql(SynnDataProvider.TableNames.MoneyTransactionItems, sqlItems, new SqlItemList {
                new SqlItem {
                    FieldName = "Id", FieldValue = i.Id
                }
            });
            ExecuteSql();
        }
示例#4
0
        protected void btnCloseAction_Command(object sender, CommandEventArgs e)
        {
            MonthlyMoneyTransaction i = GetItem(e.CommandArgument);
            var row            = (sender as ImageButton).NamingContainer as GridViewRow;
            var txCurrentTotal = (TextBox)row.FindControl("txCurrentTotal");

            if (txCurrentTotal.Text.NotNull())
            {
                i.Amount = txCurrentTotal.Text.ToInteger();
                i.Closed = true;
                DBController.DbMoney.Update(i);
                RefreshView();
            }
        }
        internal static void RefreshUserData(LoggedUser u)
        {
            var mp = new MonthlyMoneyTransactionSearchParameters();

            mp.Closed = true;
            List <MoneyTransactionTemplate> tmpls = DBController.DbMoney.GetMoneyTransactionTemplates(mp);

            foreach (var tmpl in tmpls)
            {
                DateTime startdate = tmpl.FromDate.StartOfMonth();
                if (tmpl.ToDate.HasValue && tmpl.ToDate < DateTime.Now)
                {
                    tmpl.Active = false;
                    DBController.DbMoney.Update(tmpl);
                }
                else
                {
                    while (startdate < DateTime.Now.StartOfMonth())
                    {
                        var tp = new MonthlyMoneyTransactionSearchParameters();
                        tp.TemplateId = tmpl.Id;
                        tp.Month      = startdate;
                        MonthlyMoneyTransaction trnForMonth = DBController.DbMoney.GetTransaction(tp);
                        if (trnForMonth == null)
                        {
                            trnForMonth = new MonthlyMoneyTransaction
                            {
                                Amount     = tmpl.Amount,
                                Month      = startdate,
                                TemplateId = tmpl.Id,
                                Closed     = tmpl.Auto
                            };
                            DBController.DbMoney.Add(trnForMonth);
                        }
                        startdate = startdate.AddMonths(1);
                    }
                }
            }
        }