Ejemplo n.º 1
0
        public ActionResult Index(string sortOrder, string CurrentSort, int?page)
        {
            int pageSize  = 10;
            int pageIndex = 1;

            pageIndex           = page.HasValue ? Convert.ToInt32(page) : 1;
            ViewBag.CurrentSort = sortOrder;
            //sortOrder = String.IsNullOrEmpty(sortOrder) ? "USER_NO" : sortOrder;
            IPagedList <SET_SPECIMEN> pagedIns  = null;
            IQueryable <SET_SPECIMEN> specs     = db.SET_SPECIMEN.AsQueryable();
            SpecimenSearch            dcrSearch = (Session["SPECSearch"] == null) ? new SpecimenSearch()
                : (SpecimenSearch)Session["SPECSearch"];

            if (Request.QueryString.HasKeys() && !page.HasValue)
            {
                Tuple <SpecimenSearch, IQueryable <SET_SPECIMEN> > tmp = setSearch(specs, dcrSearch, false);
                specs     = tmp.Item2;
                dcrSearch = tmp.Item1;
            }
            else if (page.HasValue && dcrSearch.dirty)
            {
                dcrSearch = (SpecimenSearch)Session["SPECSearch"];
                Tuple <SpecimenSearch, IQueryable <SET_SPECIMEN> > tmp = setSearch(specs, dcrSearch, true);
                specs     = tmp.Item2;
                dcrSearch = tmp.Item1;
            }
            else if (page.HasValue && Session["SPECSearch"] == null)
            {
                dcrSearch = new SpecimenSearch();
            }
            Session["SPECSearch"] = dcrSearch;
            pagedIns          = specs.OrderByDescending(m => m.SPECIMEN_NO).ToPagedList(pageIndex, pageSize);
            ViewBag.insSearch = dcrSearch;

            return(View(pagedIns));
        }
Ejemplo n.º 2
0
 //
 // GET: /Specimen/
 public Tuple <SpecimenSearch, IQueryable <SET_SPECIMEN> > setSearch(IQueryable <SET_SPECIMEN> dcrs, SpecimenSearch specSearch, bool search)
 {
     specSearch = (specSearch.dirty) ? specSearch : new SpecimenSearch();
     if (!string.IsNullOrEmpty(Request.QueryString["sno"]) || search)
     {
         specSearch.sno = (!search) ? decimal.Parse(Request.QueryString["sno"]) : specSearch.sno;
         if (specSearch.sno.HasValue)
         {
             dcrs = dcrs.Where(s => s.SPECIMEN_NO == specSearch.sno);
         }
     }
     else
     {
         specSearch.sno = null;
     }
     if (!string.IsNullOrEmpty(Request.QueryString["sname"]) || search)
     {
         specSearch.sname = (!search) ? Request.QueryString["sname"] : specSearch.sname;
         if (!string.IsNullOrEmpty(specSearch.sname))
         {
             dcrs = dcrs.Where(s => s.SPECIMEN_NAME.Contains(specSearch.sname));
         }
     }
     else
     {
         specSearch.sname = "";
     }
     if (!string.IsNullOrEmpty(Request.QueryString["scode"]) || search)
     {
         specSearch.scode = (!search) ? Request.QueryString["scode"] : specSearch.scode;
         if (!string.IsNullOrEmpty(specSearch.scode))
         {
             dcrs = dcrs.Where(s => s.SPECIMEN_CODE.Contains(specSearch.scode));
         }
     }
     else
     {
         specSearch.scode = "";
     }
     if (!string.IsNullOrEmpty(Request.QueryString["activeTo"]) || search)
     {
         specSearch.activeTo = (!search) ? DateTime.Parse(Request.QueryString["activeTo"]) : specSearch.activeTo;
         if (specSearch.activeTo != null)
         {
             dcrs = dcrs.Where(s => s.INSERT_TIME >= specSearch.activeTo);
         }
     }
     else
     {
         specSearch.activeTo = null;
     }
     if (!string.IsNullOrEmpty(Request.QueryString["activeFrom"]) || search)
     {
         specSearch.activeFrom = (!search) ? DateTime.Parse(Request.QueryString["activeFrom"]) : specSearch.activeFrom;
         if (specSearch.activeFrom != null)
         {
             dcrs = dcrs.Where(s => s.INSERT_TIME <= specSearch.activeFrom);
         }
     }
     else
     {
         specSearch.activeFrom = null;
     }
     specSearch.dirty = true;
     return(new Tuple <SpecimenSearch, IQueryable <SET_SPECIMEN> >(specSearch, dcrs));
 }