public ActionResult Delete(string data)
 {
     using (var dbConn = Helpers.OrmliteConnection.openConn())
         using (var dbTrans = dbConn.OpenTransaction(IsolationLevel.ReadCommitted))
             if (asset.Delete)
             {
                 try
                 {
                     string[] separators = { "@@" };
                     var      listRowID  = data.Split(separators, StringSplitOptions.RemoveEmptyEntries);
                     var      delete     = new CRM_PageCategory();
                     foreach (var item in listRowID)
                     {
                         delete.CategoryID = Int32.Parse(item);
                         dbConn.Delete(delete);
                     }
                     dbTrans.Commit();
                 }
                 catch (Exception ex)
                 {
                     return(Json(new { success = false, alert = ex.Message }));
                 }
                 return(Json(new { success = true }));
             }
             else
             {
                 return(Json(new { success = false, alert = "You don't have permission to delete record" }));
             }
 }
        public ActionResult UpdateDetail([DataSourceRequest] DataSourceRequest request, [Bind(Prefix = "models")] IEnumerable <CRM_PageCategory> list)
        {
            var dbConn = Helpers.OrmliteConnection.openConn();

            if (asset.Update || asset.Create)
            {
                if (list != null)
                {
                    try
                    {
                        foreach (var item in list)
                        {
                            var exits = dbConn.SingleOrDefault <CRM_PageCategory>("CategoryID= {0}", item.CategoryID);
                            if (exits == null)
                            {
                                var row = new CRM_PageCategory();
                                row.CategoryName = !string.IsNullOrEmpty(item.CategoryName) ? item.CategoryName.Trim() : "";
                                row.WebsiteID    = !(item.WebsiteID == 0) ? item.WebsiteID : 0;
                                row.RefID        = !string.IsNullOrEmpty(item.RefID) ? item.RefID.Trim() : "";
                                row.Status       = item.Status;
                                row.Type         = item.Type;
                                row.CreatedBy    = currentUser.UserName;
                                row.UpdatedBy    = "";
                                row.CreatedAt    = DateTime.Now;
                                row.UpdatedAt    = DateTime.Parse("1900-01-01");
                                dbConn.Insert(row);
                            }
                            else
                            {
                                exits.CategoryName = !string.IsNullOrEmpty(item.CategoryName) ? item.CategoryName.Trim() : "";
                                exits.WebsiteID    = !(item.WebsiteID == 0) ? item.WebsiteID : 0;
                                exits.RefID        = !string.IsNullOrEmpty(item.RefID) ? item.RefID.Trim() : "";
                                exits.Status       = item.Status;
                                exits.Type         = item.Type;
                                exits.UpdatedBy    = currentUser.UserName;
                                exits.UpdatedAt    = DateTime.Now;
                                dbConn.Update(exits);
                            }
                        }
                        ModelState.AddModelError("Thành công!", "Lưu thành công.");
                        return(Json(new { sussess = true }));
                    }
                    catch (Exception ex)
                    {
                        ModelState.AddModelError("error", ex.Message);
                        return(Json(list.ToDataSourceResult(request, ModelState)));
                    }
                }
                return(Json(new { sussess = true }));
            }

            else
            {
                ModelState.AddModelError("error", "Bạn không có quyền cập nhật.");
                return(Json(list.ToDataSourceResult(request, ModelState)));
            }
        }