コード例 #1
0
ファイル: RolePageController.cs プロジェクト: vumi846/TestPj
        private void GetValidate(AD_ROLE_PAGE item, ref string errMsg)
        {
            if (string.IsNullOrEmpty(item.RoleID))
            {
                errMsg = string.Concat(errMsg, string.Format(VNPTResources.Instance.Get(
                                                                 VNPTResources.ID.MsgErrorRequire), VNPTResources.Instance.Get(VNPTResources.ID.Label_RolePage_RoleID)), ". ");
            }
            else
            {
                if (!CustomValidation.maxLength(50, item.RoleID))
                {
                    errMsg = string.Concat(errMsg, string.Format(VNPTResources.Instance.Get(
                                                                     VNPTResources.ID.MsgErrorMaximumLength), VNPTResources.Instance.Get(VNPTResources.ID.Label_RolePage_RoleID), 50), ". ");
                }
            }

            if (string.IsNullOrEmpty(item.PageID))
            {
                errMsg = string.Concat(errMsg, string.Format(VNPTResources.Instance.Get(
                                                                 VNPTResources.ID.MsgErrorRequire), VNPTResources.Instance.Get(VNPTResources.ID.Label_RolePage_PageID)), ". ");
            }
            else
            {
                if (!CustomValidation.maxLength(50, item.PageID))
                {
                    errMsg = string.Concat(errMsg, string.Format(VNPTResources.Instance.Get(
                                                                     VNPTResources.ID.MsgErrorMaximumLength), VNPTResources.Instance.Get(VNPTResources.ID.Label_RolePage_PageID), 50), ". ");
                }
            }
        }
コード例 #2
0
ファイル: ControlController.cs プロジェクト: vumi846/TestPj
        private void SaveRoleControl(IQueryable<AD_CONTROL> controlSQL, List<string> controls, AD_PAGE page, string roleID)
        {
            var flag = false;
            var pageID = page.ID;
            var rolePageValue = JsonConvert.SerializeObject(controls);
            if (string.IsNullOrEmpty(page.Value) || !page.Value.Equals(rolePageValue))
            {
                flag = true;
                page.Value = rolePageValue;
                this.Repository.Update(page);
            }
            var controlDBs = controlSQL.ToList();
            
            foreach (var item in controls)
            {
                if (!controlDBs.Any(r => r.ID.Equals(item)))
                {
                    flag = true;
                    this.Repository.Add(new AD_CONTROL()
                    {
                        ID = item
                    });
                }
            }

            var rolePage = this.Repository.GetQuery<AD_ROLE_PAGE>().FirstOrDefault(r => r.RoleID.Equals(roleID) && r.PageID.Equals(pageID));
            if (rolePage == null)
            {
                rolePage = new AD_ROLE_PAGE()
                {
                    RoleID = roleID,
                    PageID = pageID,
                    Value = rolePageValue,
                    CreateAt = DateTime.Now,
                    UpdateAt = DateTime.Now,
                    ActiveFlg = true
                };

                flag = true;
                this.Repository.Add(rolePage);
            }

            if (flag)
                this.Repository.UnitOfWork.SaveChanges();
        }
コード例 #3
0
ファイル: RolePageController.cs プロジェクト: vumi846/TestPj
        public IHttpActionResult Saves(IEnumerable <AD_ROLE_PAGE> dataRequest)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    var    model = ModelState;
                    string msg   = VNPTResources.Instance.Get(model);

                    return(Json(new TResult()
                    {
                        Status = (short)EStatus.Fail,
                        Msg = msg
                    }));
                }

                AD_ROLE_PAGE dataItem = null;
                foreach (var item in dataRequest)
                {
                    string errorMsg = null;
                    GetValidate(item, ref errorMsg);
                    if (!string.IsNullOrEmpty(errorMsg))
                    {
                        return(Json(new TResult()
                        {
                            Status = (int)EStatus.Fail,
                            Msg = errorMsg
                        }));
                    }

                    dataItem = this.Repository.GetQuery <AD_ROLE_PAGE>().FirstOrDefault(r => r.RoleID.Equals(item.RoleID) && r.PageID.Equals(item.PageID));
                    if (dataItem is null)
                    {
                        dataItem = item.Clone();

                        this.Repository.Add(dataItem);
                        this.VNPTLogs.Write(this.Repository, EAction.Insert, JsonConvert.SerializeObject(dataItem));
                    }
                    else
                    {
                        dataItem = item.Clone();

                        this.Repository.Update(dataItem);
                        this.VNPTLogs.Write(this.Repository, EAction.Update, JsonConvert.SerializeObject(dataItem));
                    }
                }

                this.Repository.UnitOfWork.SaveChanges();

                return(Json(new TResult()
                {
                    Status = (short)EStatus.Ok,
                    Msg = VNPTResources.Instance.Get(VNPTResources.ID.MsgSaveOk),
                }));
            }
            catch (Exception e)
            {
                this.VNPTLogs.Write(this.Repository, e.Message);
                return(Json(new TResult()
                {
                    Status = (short)EStatus.Fail,
                    Msg = e.Message
                }));
            }
        }