Example #1
0
 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));
     }
 }
Example #2
0
        // 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);
        }