public ActionResult Create(TerminalConfigurationViewModel model, string submit) { if (ModelState.IsValid) { //taruh logic Insert disini, TerminalConfiguration entSave = new TerminalConfiguration(); entSave.TerminalId = model.TerminalId; entSave.TerminalCategory = model.TerminalCategory; entSave.TerminalGroup = model.TerminalGroup; entSave.TerminalDescription = model.TerminalDescription; entSave.TerminalLocation = model.TerminalLocation; entSave.IsAllergen = model.IsAllergen; entSave.IsActive = model.IsActive; ent.Resolve <TerminalConfiguration>().Add(entSave); ent.Save(); return(RedirectToAction("Index")); } ViewBag.FormName = "Terminal Configuration"; return(View(model)); }
public ViewResult Index(int?page, string filter, string cFilter, string sortKey, string sortDir, string cSortDir) { //DEFAULT if (sortKey == null && sortDir == null) { sortKey = ViewBag.SortKey = "TerminalId"; //yang harus diisi sortDir = "ASC"; } //Page page = filter == null ? page : 1; int pageNumber = page ?? 1; int pageSize = 5; //yang harus diisi //NEW OR CURRENT --> FILTER & SORT filter = filter == null ? cFilter : filter; sortDir = sortDir == null ? cSortDir : sortDir; //QUERY var query = from a in ent.Resolve <TerminalConfiguration>().AsQueryable() //yang harus dibikin select new { TerminalId = a.TerminalId, TerminalCategory = a.TerminalCategory, TerminalGroup = a.TerminalGroup, TerminalDescription = a.TerminalDescription, TerminalLocation = a.TerminalLocation, IsAllergen = a.IsAllergen, IsActive = a.IsActive }; //CUSTOM FILTER if (!string.IsNullOrEmpty(filter)) { query = query.Where(x => x.TerminalCategory.Contains(filter) || x.TerminalLocation.Contains(filter)); //yang harus ditentukan } //ORDER BY & TOOGLE SORT DIRECTION query = query.OrderByField(sortKey, sortDir == "ASC" ? true : false); //GET PAGING var pagingResult = query.ToPaging(pageNumber, pageSize); //Map to VIEW MODEL TerminalConfigurationViewPaging pagingList = new TerminalConfigurationViewPaging(); pagingList.Paging = pagingResult; pagingList.Data = new List <TerminalConfigurationViewModel>(); foreach (var item in pagingResult) { TerminalConfigurationViewModel data = new TerminalConfigurationViewModel(); data.TerminalId = item.TerminalId; data.TerminalCategory = item.TerminalCategory; data.TerminalDescription = item.TerminalDescription; data.TerminalGroup = item.TerminalGroup; data.TerminalLocation = item.TerminalLocation; data.IsAllergen = item.IsAllergen; data.IsActive = item.IsActive; pagingList.Data.Add(data); } //Ga usah dirubah ViewBag.cSortDir = sortDir; //buat jaga kondisi sort ViewBag.SortDir = sortDir == "ASC" ? "DESC" : "ASC"; //buat bolak balikin (Toogle) ViewBag.SortKey = sortKey; ViewBag.cFilter = filter; ViewBag.FormName = "Terminal Configuration"; return(View(pagingList)); }