public ActionResult LoadGrid(CMS_GroupBoardsModels item) { try { var msg = ""; bool isCheck = true; if (item.Name != null && item.Name.Length > 0) { var temp = ListItem.Where(o => o.Trim() == item.Name.Trim()).FirstOrDefault(); if (temp == null) { var result = _factory.CreateOrUpdate(item, ref msg); if (!result) { isCheck = false; } } else { ViewBag.DuplicateKeyword = "Duplicate Board!"; } } if (isCheck) { var model = _factory.GetList(); return(PartialView("_ListData", model)); } else { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } } catch (Exception e) { //_logger.Error("Keyword_Search: " + e); return(new HttpStatusCodeResult(400, e.Message)); } }
// GET: Admin/CMSListKeywords public ActionResult Index() { CMS_GroupBoardsModels model = new CMS_GroupBoardsModels(); return(View(model)); }
public bool CreateOrUpdate(CMS_GroupBoardsModels model, ref string msg) { var result = true; using (var _db = new CMS_Context()) { using (var trans = _db.Database.BeginTransaction()) { m_Semaphore.WaitOne(); try { if (string.IsNullOrEmpty(model.Id)) { /* check dup old key */ model.Name = model.Name.Trim(); var checkDup = _db.CMS_GroupBoard.Where(o => o.Name.Trim() == model.Name.Trim()).FirstOrDefault(); if (checkDup == null) { /* get current seq */ var curSeq = _db.CMS_GroupBoard.OrderByDescending(o => o.Sequence).Select(o => o.Sequence).FirstOrDefault(); /* add new record */ var newGroup = new CMS_GroupBoard() { ID = Guid.NewGuid().ToString(), Name = model.Name, Status = (byte)Commons.EStatus.Active, CreatedBy = model.CreatedBy, CreatedDate = DateTime.Now, UpdatedBy = model.CreatedBy, UpdatedDate = DateTime.Now, Sequence = ++curSeq, }; _db.CMS_GroupBoard.Add(newGroup); } else if (checkDup.Status != (byte)Commons.EStatus.Active) /* re-active old key */ { checkDup.Status = (byte)Commons.EStatus.Active; checkDup.UpdatedBy = model.CreatedBy; checkDup.UpdatedDate = DateTime.Now; } else /* duplicate group */ { msg = "Duplicate group."; } _db.SaveChanges(); trans.Commit(); } else { msg = "Unable to edit group."; } } catch (Exception ex) { msg = "Check connection, please!"; result = false; trans.Rollback(); } finally { _db.Dispose(); m_Semaphore.Release(); } } } return(result); }