Ejemplo n.º 1
0
        public JsonResult GetList()
        {
            var draw = Request.Form.GetValues("draw").FirstOrDefault();
            //Find paging info
            var start  = Request.Form.GetValues("start").FirstOrDefault();
            var length = Request.Form.GetValues("length").FirstOrDefault();
            //Find order columns info
            var sortColumnIndex = Request.Form.GetValues("order[0][column]").FirstOrDefault();
            var sortColumnName  = Request.Form.GetValues("columns[" + sortColumnIndex + "][data]").FirstOrDefault();
            var sortColumnDir   = Request.Form.GetValues("order[0][dir]").FirstOrDefault();
            //find search columns info
            var search      = Request.Form.GetValues("search[value]").FirstOrDefault().ToLower();
            var sMemoNo     = Request.Form.GetValues("columns[0][search][value]").FirstOrDefault().ToLower();
            var sEmployeeId = Request.Form.GetValues("columns[1][search][value]").FirstOrDefault().ToLower();
            var sBillDate   = Request.Form.GetValues("columns[2][search][value]").FirstOrDefault();

            var pageSize = length != null?Convert.ToInt32(length) : 0;

            var skip = start != null?Convert.ToInt16(start) : 0;

            var billInfo     = billManager.GetAll();
            var employeeInfo = employeeManager.GetAll();
            var advnceInfo   = advanceManager.GetAll();

            var query = (from b in billInfo
                         join a in advnceInfo on b.AdvanceId equals a.Id
                         join e in employeeInfo on a.EmployeeId equals e.Id
                         select new BillVM
            {
                Id = b.Id,
                MemoNo = b.MemoNo,
                BillStatus = b.BillStatus,
                EmployeeId = e.Id,
                EmployeeName = e.Name,
                BillDate = b.BillDate,
                Vendor = b.Vendor,
                GrandTotal = b.GrandTotal
            });
            var total = query.Count();

            //SEARCHING...
            query = query.Where(q => q.MemoNo == sMemoNo || string.IsNullOrEmpty(sMemoNo));
            query = query.Where(q => q.EmployeeId.ToString() == sEmployeeId || string.IsNullOrEmpty(sEmployeeId));

            if (!string.IsNullOrEmpty(sBillDate))
            {
                var sdEffectiveDate = DateTime.Parse(sBillDate);
                query = query.Where(q => q.BillDate == sdEffectiveDate);
            }


            //SORTING...  (For sorting we need to add a reference System.Linq.Dynamic)
            if (!(string.IsNullOrEmpty(sortColumnName) && string.IsNullOrEmpty(sortColumnDir)))
            {
                query = query.OrderBy(sortColumnName + " " + sortColumnDir);
            }
            var filtered = query.Count();

            if (pageSize != -1)
            {
                query = query.Skip(skip).Take(pageSize);
            }

            return(Json(new { draw, recordsFiltered = filtered, recordsTotal = total, data = query.ToList() },
                        JsonRequestBehavior.AllowGet));
        }
        public JsonResult GetList()
        {
            var draw = Request.Form.GetValues("draw").FirstOrDefault();
            //Find paging info
            var start  = Request.Form.GetValues("start").FirstOrDefault();
            var length = Request.Form.GetValues("length").FirstOrDefault();
            //Find order columns info
            var sortColumnIndex = Request.Form.GetValues("order[0][column]").FirstOrDefault();
            var sortColumnName  = Request.Form.GetValues("columns[" + sortColumnIndex + "][data]").FirstOrDefault();
            var sortColumnDir   = Request.Form.GetValues("order[0][dir]").FirstOrDefault();
            //find search columns info
            var search = Request.Form.GetValues("search[value]").FirstOrDefault().ToLower();

            var sEmployeeId = Request.Form.GetValues("columns[0][search][value]").FirstOrDefault().ToLower();

            var pageSize = length != null?Convert.ToInt32(length) : 0;

            var skip = start != null?Convert.ToInt16(start) : 0;


            var billInfo           = billManager.GetAll();
            var billDetailsInfo    = billedDetailsManager.GetAll();
            var employeeInfo       = employeeManager.GetAll();
            var advanceInfo        = advanceManager.GetAll();
            var advanceDetailsInfo = advanceDetailsManager.GetAll();

            var adjustInfo = adjustManager.GetAll();

            var query = (from adj in adjustInfo
                         join b in billInfo on adj.BillingId equals b.Id
                         where b.BillStatus.Equals("Confirmed")
                         join a in advanceInfo on b.AdvanceId equals a.Id
                         where a.AdvanceStatus.Equals("Confirmed")
                         join e in employeeInfo on a.EmployeeId equals e.Id
                         select new AdjustVM
            {
                Id = b.Id,
                AdvanceId = a.Id,
                AdvanceMemo = a.MemoNo,
                BillTotal = adj.BillTotal,
                AdvanceTotal = a.GrandTotal,
                EmployeeId = e.Id,
                EmployeeName = e.Name
            });
            var total = query.Count();

            //SEARCHING...
            query = query.Where(q => q.EmployeeId.ToString() == sEmployeeId || string.IsNullOrEmpty(sEmployeeId));


            //SORTING...  (For sorting we need to add a reference System.Linq.Dynamic)
            if (!(string.IsNullOrEmpty(sortColumnName) && string.IsNullOrEmpty(sortColumnDir)))
            {
                query = query.OrderBy(sortColumnName + " " + sortColumnDir);
            }
            var filtered = query.Count();

            if (pageSize != -1)
            {
                query = query.Skip(skip).Take(pageSize);
            }

            return(Json(new { draw, recordsFiltered = filtered, recordsTotal = total, data = query.ToList() },
                        JsonRequestBehavior.AllowGet));
        }
Ejemplo n.º 3
0
 public IEnumerable <BillViewModel> Get()
 {
     return(_repo.GetAll());
 }