Example #1
0
        /// <summary>
        /// 创建或者更新权限
        /// </summary>
        /// <param name="dto"></param>
        /// <returns></returns>
        public async Task <DataResult <string> > CreateOrUpdatePermissonAsync(Permisson permisson)
        {
            if (permisson is null)
            {
                throw new ArgumentNullException(nameof(permisson));
            }

            if (!string.IsNullOrEmpty(permisson.Id))
            {
                applicationDbContext.Permissons.Update(permisson);
            }
            else
            {
                permisson.Id = GuidEx.NewGuid().ToString();
                await applicationDbContext.Permissons.AddAsync(permisson).ConfigureAwait(false);
            }

            try
            {
                await applicationDbContext.SaveChangesAsync().ConfigureAwait(false);

                return(OkDataResult(permisson.Id));
            }
            catch (DbUpdateException ex)
            {
                return(FailedDataResult <string>(ex));
            }
        }
Example #2
0
        public ActionResult SyncBusiness()
        {
            ReflectionController rc = new ReflectionController();
            List <Type>          listControllerType    = rc.GetControllers("ShoesProject.Areas.Admin.Controllers");
            List <string>        listCurrentController = db.Businesses.Select(c => c.BusinessId).ToList();
            List <string>        listCurrentPermisson  = db.Permissons.Select(p => p.PermissonName).ToList();

            foreach (var c in listControllerType)
            {
                if (!listCurrentController.Contains(c.Name))
                {
                    Debug.WriteLine(c.Name);
                    Business b = new Business
                    {
                        BusinessId   = c.Name,
                        BusinessName = "No Description"
                    };
                    db.Businesses.Add(b);
                }
                List <String> listPermisson = rc.GetActions(c);
                foreach (var p in listPermisson)
                {
                    if (!listCurrentPermisson.Contains(c.Name + "-" + p))
                    {
                        Permisson permisson = new Permisson();
                        permisson.PermissonName = c.Name + "-" + p;
                        permisson.BusinessId    = c.Name;
                        db.Permissons.Add(permisson);
                    }
                }
            }
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Example #3
0
        public ActionResult DeleteConfirmed(int id)
        {
            Permisson permisson = db.Permissons.Find(id);

            db.Permissons.Remove(permisson);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Example #4
0
 public ActionResult Edit([Bind(Include = "PermissonId,PermissonName,PermissonDescription,BusinessId")] Permisson permisson)
 {
     if (ModelState.IsValid)
     {
         db.Entry(permisson).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.BusinessId = new SelectList(db.Businesses, "BusinessId", "BusinessName", permisson.BusinessId);
     return(View(permisson));
 }
Example #5
0
        public async Task <IActionResult> CreateOrUpdatePermissonAsync(Permisson permisson)
        {
            var result = await permissonService.CreateOrUpdatePermissonAsync(permisson).ConfigureAwait(false);

            if (result.Succeeded)
            {
                return(Ok());
            }

            ModelState.AddModelError(string.Empty, result.ErrorMessage);
            return(BadRequest(ModelState));
        }
Example #6
0
        public ActionResult Create([Bind(Include = "PermissonId,PermissonName,PermissonDescription,BusinessId")] Permisson permisson)
        {
            if (ModelState.IsValid)
            {
                db.Permissons.Add(permisson);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.BusinessId = new SelectList(db.Businesses, "BusinessId", "BusinessName", permisson.BusinessId);
            return(View(permisson));
        }
Example #7
0
        // GET: Admin/Permissons/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Permisson permisson = db.Permissons.Find(id);

            if (permisson == null)
            {
                return(HttpNotFound());
            }
            return(View(permisson));
        }
Example #8
0
        // GET: Admin/Permissons/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Permisson permisson = db.Permissons.Find(id);

            if (permisson == null)
            {
                return(HttpNotFound());
            }
            ViewBag.BusinessId = new SelectList(db.Businesses, "BusinessId", "BusinessName", permisson.BusinessId);
            return(View(permisson));
        }
        // To protect from overposting attacks, please enable the specific properties you want to bind to, for
        // more details see https://aka.ms/RazorPagesCRUD.
        public async Task <IActionResult> OnPostAsync(Permisson permisson)
        {
            if (permisson is null)
            {
                throw new ArgumentNullException(nameof(permisson));
            }

            if (!TryValidateModel(permisson))
            {
                return(BadRequest(ModelState));
            }

            if (string.IsNullOrEmpty(permisson.Id))
            {
                var exist = await _context.Permissons.AnyAsync(e => e.Name == permisson.Name).ConfigureAwait(false);

                if (exist)
                {
                    ModelState.AddModelError(string.Empty, "权限名称已存在");
                    return(BadRequest(ModelState));
                }
                //新建
                permisson.Id = GuidEx.NewGuid().ToString();
                _context.Permissons.Add(permisson);
            }
            else
            {
                _context.Attach(permisson).State = EntityState.Modified;
            }

            try
            {
                await _context.SaveChangesAsync().ConfigureAwait(false);
            }
            catch (DbUpdateException ex)
            {
                ModelState.AddModelError(string.Empty, ex.InnerException?.Message ?? ex.Message);
                return(BadRequest(ModelState));
            }

            return(Content(permisson.Id));
        }
        public async Task <IActionResult> OnGetAsync()
        {
            if (!string.IsNullOrEmpty(Id))
            {
                AddOrUpdatePermissonViewModel = await _context.Permissons.FirstOrDefaultAsync(m => m.Id == Id).ConfigureAwait(false);

                if (AddOrUpdatePermissonViewModel == null)
                {
                    return(NotFound());
                }
            }
            else
            {
                AddOrUpdatePermissonViewModel = new Permisson()
                {
                    Enabled = true
                };
            }

            return(Page());
        }
Example #11
0
 public Guest(Permisson.Permission permission) : this() {
     base.addPermission(permission);
 }
Example #12
0
 public Admin(Permisson.Permission perm) : this() {
     addPermission(perm);
 }
Example #13
0
 public WebUser(Permisson.Permission permission) : this() {
     addPermission(permission);
 }