Exemple #1
0
        public JsonResult GetCostDashboard()
        {
            List <dashboardcost> dashboardcosts = new List <dashboardcost>();
            var shopcatdt = db.mg_shoplist.ToList();
            var yearstr   = Request.QueryString["year"];
            var monthstr  = Request.QueryString["month"];
            var totaldata = Request.QueryString["total"];
            int totals    = 5;

            if (!string.IsNullOrEmpty(totaldata))
            {
                totals = Convert.ToInt32(totaldata);
            }
            foreach (var dt in shopcatdt)
            {
                var datetimenow = DateTime.Now;
                if (!string.IsNullOrEmpty(yearstr) && !string.IsNullOrEmpty(monthstr))
                {
                    int year  = Convert.ToInt32(yearstr);
                    int month = Convert.ToInt32(monthstr);
                    datetimenow = new DateTime(year, month, 1);
                }
                //else
                //{
                //    if (dt.TRANS_DATE > datetimenow.AddMonths(-4))
                //    {
                //        dashboardcost fld = new dashboardcost();
                //        var month = dt.TRANS_DATE.ToString("MM-yyyy");
                //        fld.Monthyear = month;
                //        double countpurchase = 0;
                //        countpurchase = countpurchase + dt.AMOUNT;

                //        fld.totalcost = countpurchase;
                //        dashboardcosts.Add(fld);
                //    }
                //}
                if (dt.TRANS_DATE.Month <= datetimenow.Month)
                {
                    dashboardcost fld    = new dashboardcost();
                    var           months = dt.TRANS_DATE.ToString("MM-yyyy");
                    fld.Monthyear = months;
                    double countpurchase = 0;
                    countpurchase = countpurchase + dt.AMOUNT;

                    fld.totalcost = countpurchase;
                    dashboardcosts.Add(fld);
                }
            }
            List <dashboardcost> result = dashboardcosts.GroupBy(l => l.Monthyear)
                                          .Select(cl => new dashboardcost
            {
                Monthyear = cl.First().Monthyear,
                totalcost = cl.Sum(c => c.totalcost),
            }).OrderByDescending(y => y.Monthyear).Take(totals).ToList();

            //dashboardcosts = dashboardcosts.OrderBy(y => y.Monthyear).ToList();
            return(Json(result, JsonRequestBehavior.AllowGet));
        }
Exemple #2
0
        public JsonResult GetProfitLoss()
        {
            List <dashboardcost> dashboardcosts = new List <dashboardcost>();
            var shopcatdt = db.mg_shoplist.ToList();
            var yearstr   = Request.QueryString["year"];
            var monthstr  = Request.QueryString["month"];
            var totaldata = Request.QueryString["total"];
            int totals    = 5;

            if (!string.IsNullOrEmpty(totaldata))
            {
                totals = Convert.ToInt32(totaldata);
            }
            foreach (var dt in shopcatdt)
            {
                var datetimenow = DateTime.Now;
                if (!string.IsNullOrEmpty(yearstr) && !string.IsNullOrEmpty(monthstr))
                {
                    int year  = Convert.ToInt32(yearstr);
                    int month = Convert.ToInt32(monthstr);
                    datetimenow = new DateTime(year, month, 1);
                }
                if (dt.TRANS_DATE.Month <= datetimenow.Month)
                {
                    dashboardcost fld   = new dashboardcost();
                    var           month = dt.TRANS_DATE.ToString("MM-yyyy");
                    fld.Monthyear = month;
                    double countpurchase = 0;
                    countpurchase = countpurchase + dt.AMOUNT;
                    fld.totalcost = countpurchase;
                    dashboardcosts.Add(fld);
                }
            }
            List <dashboardcost> result = dashboardcosts.GroupBy(l => l.Monthyear)
                                          .Select(cl => new dashboardcost
            {
                Monthyear = cl.First().Monthyear,
                totalcost = cl.Sum(c => c.totalcost),
            }).OrderBy(y => y.Monthyear).ToList();
            List <dashboardincome> dashboardincomes = new List <dashboardincome>();
            var incomedt = db.mt_trans_dtl.ToList();

            foreach (var dt in incomedt)
            {
                var datetimenow = DateTime.Now;
                if (!string.IsNullOrEmpty(yearstr) && !string.IsNullOrEmpty(monthstr))
                {
                    int year  = Convert.ToInt32(yearstr);
                    int month = Convert.ToInt32(monthstr);
                    datetimenow = new DateTime(year, month, 1);
                }
                if (dt.mt_trans_hdr.TRANS_DATE.Month <= datetimenow.Month)
                {
                    dashboardincome fld   = new dashboardincome();
                    var             month = dt.mt_trans_hdr.TRANS_DATE.ToString("MM-yyyy");
                    fld.Monthyear = month;
                    double countpurchase = 0;
                    countpurchase   = countpurchase + dt.PRICE;
                    fld.totalincome = countpurchase;
                    dashboardincomes.Add(fld);
                }
            }
            List <dashboardincome> resultincome = dashboardincomes.GroupBy(l => l.Monthyear)
                                                  .Select(cl => new dashboardincome
            {
                Monthyear   = cl.First().Monthyear,
                totalincome = cl.Sum(c => c.totalincome),
            }).OrderByDescending(y => y.Monthyear).ToList();

            foreach (var dt in resultincome)
            {
                var dtcost = result.Where(y => y.Monthyear == dt.Monthyear).FirstOrDefault();
                if (dtcost != null)
                {
                    dt.totalincome = dt.totalincome - dtcost.totalcost;
                }
            }
            //dashboardcosts = dashboardcosts.OrderBy(y => y.Monthyear).ToList();
            return(Json(resultincome.Take(totals).ToList(), JsonRequestBehavior.AllowGet));
        }