예제 #1
0
        public SingleApiResponse RoleSet(RolePurviewcodeSetRequest req)
        {
            var role = RepoBase.Instance.GetWhere <SS_ROLE>(x => x.R_ID == req.R_ID).FirstOrDefault();

            if (role == null)
            {
                return new SingleApiResponse()
                       {
                           BizErrorMsg = "没有此角色", ErrCode = 1001
                       }
            }
            ;
            var roleMenuPurviewcodes = RepoBase.Instance.GetWhere <SS_ROLE_MENU_PURVIEWCODE>(x => x.R_ID == req.R_ID).Select(x => x.MPC_CODE);
            var deleteList           = roleMenuPurviewcodes.Except(req.MPC_CODEs);
            var addList = req.MPC_CODEs.Except(roleMenuPurviewcodes).Select(x => new SS_ROLE_MENU_PURVIEWCODE()
            {
                R_ID = req.R_ID, MPC_CODE = x
            });

            foreach (var purvieCode in deleteList)
            {
                MenuPurviewcodeRepo.Delete(req.R_ID, purvieCode);
            }

            if (addList.Any())
            {
                RepoBase.Instance.BulkInsert(addList, "");
            }
            return(new SingleApiResponse());
        }
예제 #2
0
 public SingleApiResponse RoleSet([FromBody] RolePurviewcodeSetRequest req)
 {
     return(MenuPurviewcodeBiz.RoleSet(req));
 }