public async Task CreateGroup_ReturnsCreatedGroup()
        {
            var group = new GroupInputViewModel
            {
                Name = "Group"
            };
            var service = new Mock <IGroupService>();

            service.Setup(x => x.AddGroup(It.Is <Group>(g => g.Name == group.Name)))
            .Returns(Task.FromResult(new Group
            {
                Id   = 2,
                Name = group.Name
            }))
            .Verifiable();

            var controller = new GroupsController(service.Object, Mapper.Instance);

            var result = await controller.Post(group) as CreatedAtActionResult;

            var resultValue = result.Value as GroupViewModel;

            Assert.IsNotNull(resultValue);
            Assert.AreEqual(2, resultValue.Id);
            Assert.AreEqual("Group", resultValue.Name);
            service.VerifyAll();
        }
Example #2
0
        public IActionResult Put(int id, [FromBody] GroupInputViewModel obj)
        {
            //try
            //{
            //    var group = context.Query<Group>().Where(o => o.GroupId == id).FirstOrDefault();

            //    if (context.Query<Group>().Where(o => o.GroupName == obj.GroupName && o.ApplicationId == obj.ApplicationId && o.GroupId != id).Any())
            //    {
            //        return StatusCode(406, excep.Throw(406, "Tạo nhóm thất bại", "Tên nhóm đã có !"));
            //    }

            //    context.Session.BeginTransaction();

            //    if (group.ApplicationId != obj.ApplicationId)
            //    {
            //        context.Delete<GroupPermission>(g => g.GroupId == id && g.ApplicationId == group.ApplicationId);

            //        var listMenu = context.Query<Route>().Where(o => o.ApplicationId == obj.ApplicationId && !o.IsDelete).Select(o => new { o.RouteId }).ToList();

            //        if (listMenu.Count > 0)
            //        {
            //            // Add GroupPermission
            //            const string lvlOneQuery      = "INSERT INTO `mdm`.`sys_groups_permissions` (`GroupId`, `ApplicationId`, `RouteId`) VALUES ";
            //            var          lvlOneParamQuery = new List<string>();
            //            var          lvlOneParam      = new List<DbParam>();
            //            var          i                = 1;

            //            foreach (var b in listMenu)
            //            {
            //                lvlOneParamQuery.Add($"(@{"GroupId" + i},@{"ApplicationId" + i},@{"RouteId" + i})");
            //                lvlOneParam.Add(DbParam.Create("@GroupId" + i, id));
            //                lvlOneParam.Add(DbParam.Create("@ApplicationId" + i, obj.ApplicationId));
            //                lvlOneParam.Add(DbParam.Create("@RouteId" + i, b.RouteId));
            //                i++;
            //            }

            //            context.Session.ExecuteNonQuery($"{lvlOneQuery} {string.Join(",", lvlOneParamQuery)}", lvlOneParam);
            //        }
            //    }

            //    context.Update<Group>(g => g.GroupId == id, a => new Group { GroupName = obj.GroupName, ApplicationId = obj.ApplicationId, Description = obj.Description, UpdateDate = DateTime.Now });

            //    context.Session.CommitTransaction();

            //    return Json(new ActionResultDto());
            //}
            //catch (Exception e)
            //{
            //    if (context.Session.IsInTransaction)
            //    {
            //        context.Session.RollbackTransaction();
            //    }

            //    return StatusCode(500, excep.Throw(e.Message));
            //}
            return(Json(new ActionResultDto()));
        }
Example #3
0
        public async Task <IActionResult> Post(GroupInputViewModel viewModel)
        {
            if (viewModel == null)
            {
                return(BadRequest());
            }
            var createdGroup = await GroupService.AddGroup(Mapper.Map <Group>(viewModel));

            return(CreatedAtAction(nameof(Get), new { id = createdGroup.Id }, Mapper.Map <GroupViewModel>(createdGroup)));
        }
Example #4
0
        public async Task <IActionResult> Put(int id, GroupInputViewModel viewModel)
        {
            if (viewModel == null)
            {
                return(BadRequest());
            }
            var group = await GroupService.GetById(id);

            if (group == null)
            {
                return(NotFound());
            }

            Mapper.Map(viewModel, group);
            await GroupService.UpdateGroup(group);

            return(NoContent());
        }
        public async Task UpdateGroup_ReturnsUpdatedGroup()
        {
            var group = new GroupInputViewModel
            {
                Name = "Group"
            };
            var service = new Mock <IGroupService>();

            service.Setup(x => x.GetById(2))
            .Returns(Task.FromResult(new Group
            {
                Id   = 2,
                Name = group.Name
            }))
            .Verifiable();

            var controller = new GroupsController(service.Object, Mapper.Instance);

            var result = await controller.Put(2, group) as NoContentResult;

            Assert.IsNotNull(result);
            service.VerifyAll();
        }
Example #6
0
        public IActionResult Post([FromBody] GroupInputViewModel obj)
        {
            //if (context.Query<Group>().Where(o => o.GroupName == obj.GroupName && o.ApplicationId == obj.ApplicationId).Any())
            //{
            //    return StatusCode(406, excep.Throw(406, "Tạo nhóm không thành công", "Tên nhóm đã tồn tại !"));
            //}

            //obj.CreateDate = DateTime.Now;

            //try
            //{
            //    context.Session.BeginTransaction();

            //    var id = (int)context.Insert(() => new Group
            //    {
            //            ApplicationId = obj.ApplicationId,
            //            GroupName     = obj.GroupName,
            //            Description   = obj.Description,
            //            CreateDate    = DateTime.Now,
            //            CreateUserId  = obj.CreateUserId
            //    });

            //    var listMenu = context.Query<Route>().Where(o => o.ApplicationId == obj.ApplicationId && !o.IsDelete).Select(o => new { o.RouteId }).ToList();

            //    if (listMenu.Count > 0)
            //    {
            //        // Add GroupPermission
            //        const string lvlOneQuery      = "INSERT INTO `mdm`.`sys_groups_permissions` (`GroupId`, `ApplicationId`, `RouteId`) VALUES ";
            //        var          lvlOneParamQuery = new List<string>();
            //        var          lvlOneParam      = new List<DbParam>();
            //        var          i                = 1;

            //        foreach (var b in listMenu)
            //        {
            //            lvlOneParamQuery.Add($"(@{"GroupId" + i},@{"ApplicationId" + i},@{"RouteId" + i})");
            //            lvlOneParam.Add(DbParam.Create("@GroupId" + i, id));
            //            lvlOneParam.Add(DbParam.Create("@ApplicationId" + i, obj.ApplicationId));
            //            lvlOneParam.Add(DbParam.Create("@RouteId" + i, b.RouteId));
            //            i++;
            //        }

            //        context.Session.ExecuteNonQuery($"{lvlOneQuery} {string.Join(",", lvlOneParamQuery)}", lvlOneParam);
            //    }


            //    context.Session.CommitTransaction();

            //    return Json(new ActionResultDto { Result = id });

            //}
            //catch (Exception e)
            //{
            //    if (context.Session.IsInTransaction)
            //    {
            //        context.Session.RollbackTransaction();
            //    }

            //    return StatusCode(500, excep.Throw(500, "Đã có lỗi xảy ra !", e.Message));
            //}
            return(Json(new ActionResultDto()));
        }
Example #7
0
 public Group(GroupInputViewModel group)
 {
     GroupName   = group.GroupName;
     Description = group.Description;
 }