Beispiel #1
0
        public async Task AddGroupAsync()
        {
            const int expectedGroupId = 1;

            const string expectedGroupName = "Employees";

            ;
            var addGroupRequest = new AddGroupRequest()
            {
                Id   = expectedGroupId,
                Name = expectedGroupName
            };

            var getGroupRequest = new GetGroupRequest()
            {
                Id = expectedGroupId
            };

            await _cognitiveAdminService.Handle(addGroupRequest);

            var persistedGroup = await _cognitiveAdminService.Handle(getGroupRequest);

            Assert.That(persistedGroup.Id == expectedGroupId.ToString());

            Assert.That(persistedGroup.Name == expectedGroupName);
        }
Beispiel #2
0
        public Result Add(AddGroupRequest addGroup)
        {
            ValidationResult validationResult = _addGroupValidator.Validate(addGroup);

            if (!validationResult.IsValid)
            {
                _logger.LogWarning($"Invalid AddGroupRequest model");
                return(Result.Fail(validationResult.Errors));
            }

            BaseSpecification <GroupEntity> groupExistSpecification = new BaseSpecification <GroupEntity>();

            groupExistSpecification.AddFilter(x => x.Name.ToUpper() == addGroup.Name.ToUpper());

            bool groupExist = _groupRepository.Exist(groupExistSpecification);

            if (groupExist)
            {
                _logger.LogError($"Group with the same name already exist");
                return(Result.Fail("group_with_name_already_exist", "Group with name already exist"));
            }

            GroupEntity group = new GroupEntity(
                name: addGroup.Name);

            bool addResult = _groupRepository.Add(group);

            if (!addResult)
            {
                _logger.LogError($"Failed to add group");
                return(Result.Fail("failed_to_add_group", "Failed to add group"));
            }

            return(Result.Ok());
        }
Beispiel #3
0
        public IActionResult CreateGroup(AddGroupRequest addGroupRequest)
        {
            if (addGroupRequest.TeacherId == 0 || String.IsNullOrEmpty(addGroupRequest.Name))
            {
                return(BadRequest());
            }

            var teacher = publicDbContext.Teachers.FirstOrDefault(x => x.Id == addGroupRequest.TeacherId);

            if (teacher is null)
            {
                return(NotFound());
            }

            var group = new Group {
                Name = addGroupRequest.Name, Teachers = teacher
            };

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

            var AddedGroup = publicDbContext.Groups.Add(group);

            publicDbContext.SaveChangesAsync();

            return(RedirectToAction("EditStudyGroup", "Group", new { id = AddedGroup.Entity.GroupId }));
        }
Beispiel #4
0
        public Core.Models.Result.Result Add(AddGroupRequest addGroup)
        {
            Task <Result <IdStringModel>[]> taskResult = Task.WhenAll(AddAsync(addGroup));

            Result result = taskResult.Result.First();

            return(result.ToOldResult());
        }
Beispiel #5
0
        public static Group ConvertAddGroupRequestToUser(AddGroupRequest request)
        {
            Group newgroups = new Group();

            newgroups.Name  = request.Name;
            newgroups.Image = request.Image;
            return(newgroups);
        }
Beispiel #6
0
        public async Task <Result> Add(RegisterGroupModel registerGroupModel)
        {
            ValidationResult validationResult = _registerGroupValidator.Validate(registerGroupModel);

            if (!validationResult.IsValid)
            {
                _logger.LogWarning($"Invalid {typeof(RegisterGroupModel).Name} model");
                return(Result.Fail(validationResult.ToResultError()));
            }

            Result userExists = await _addUserService.UserExists(registerGroupModel.BaseUser);

            if (userExists.Success)
            {
                _logger.LogError($"User already exists");
                return(Result.Fail(USER_ALREADY_EXISTS));
            }

            AddGroupRequest addGroupRequest = new AddGroupRequest()
            {
                Name = registerGroupModel.GroupName
            };

            Result <IdStringModel> addGroupResult = await _groupService.AddAsync(addGroupRequest);

            if (addGroupResult.Failure)
            {
                return(Result.Fail(addGroupResult));
            }

            _logger.LogInformation($"Group added. ${addGroupResult.Value.Id}");

            Result <IdStringModel> addUserResult = await _addUserService.RegisterForGroup(registerGroupModel.BaseUser);

            if (addUserResult.Failure)
            {
                _logger.LogError($"Failed to add user. Removing group. GroupId {addGroupResult.Value.Id}");

                //TODO: remove group

                return(Result.Fail(addUserResult));
            }

            Result addGroupAdminRoleResult = await AddAdminRole(addUserResult.Value.Id, addGroupResult.Value.Id);

            if (addGroupAdminRoleResult.Failure)
            {
                _logger.LogError($"Failed to add user to group.");

                //TODO: remove group, user

                return(Result.Fail(addGroupAdminRoleResult));
            }

            return(Result.Ok());
        }
        public async Task AddGroupAsync(AddGroupRequest request)
        {
            var group = new Group
            {
                Id       = Guid.NewGuid(),
                Number   = request.Number,
                Title    = request.Title,
                Students = new List <UserProfile>(),
                Created  = DateTime.UtcNow
            };

            UnitOfWork.GroupRepository.Add(group);
            await UnitOfWork.SaveChangesAsync();
        }
Beispiel #8
0
        public void Test_AddGroup_Success()
        {
            var request = new AddGroupRequest(FakeToken, "new group");

            var message = new HttpResponseMessage(HttpStatusCode.OK)
            {
                Content = new StringContent(@"{""group_id"": 3, ""success"": true}")
            };

            Assert.IsTrue(request.WasSuccessful(message));
            var result = ExecuteSync(() => request.ParseResponseAsync(message));

            Assert.AreEqual(3, result);
        }
        public IHttpActionResult AddGroup(AddGroupRequest request)
        {
            GroupsDto group = GroupService.AddGroup(request);

            if (group == null)
            {
                return(BadRequest());
            }
            if (group != null)
            {
                return(Ok(group));
            }
            return(BadRequest());
        }
Beispiel #10
0
        public GeneralResponse AddGroup(AddGroupRequest request)
        {
            GeneralResponse response = new GeneralResponse();

            try
            {
                Group group = new Group();
                group.ID             = Guid.NewGuid();
                group.CreateDate     = PersianDateTime.Now;
                group.CreateEmployee = _employeeRepository.FindBy(request.CreateEmployeeID);
                group.GroupStaff     = _employeeRepository.FindBy(request.GroupStaffID);
                group.GroupName      = request.GroupName;
                group.ParentGroup    = _groupRepository.FindBy(request.ParentGroupID);
                group.RowVersion     = 1;

                IEnumerable <Permission> permissions = _permissionRepository.FindAll();
                IList <Permit>           permits     = new List <Permit>();
                foreach (var permission in permissions)
                {
                    permits.Add(new Permit(permission)
                    {
                        Guaranteed = false
                    });
                }

                group.Permissions = permits;

                // Validation
                if (group.GetBrokenRules().Count() > 0)
                {
                    foreach (BusinessRule businessRule in group.GetBrokenRules())
                    {
                        response.ErrorMessages.Add(businessRule.Rule);
                    }

                    return(response);
                }

                _groupRepository.Add(group);
                _uow.Commit();
            }
            catch (Exception ex)
            {
                response.ErrorMessages.Add(ex.Message);
            }

            return(response);
        }
 public static GroupsDto AddGroup(AddGroupRequest request)
 {
     using (familydbEntities1 db = new familydbEntities1())
     {
         Groups group = db.Groups.Add(Convertion.GroupsConvertion.ConvertAddGroupRequestToUser(request));
         db.SaveChanges();
         if (group == null)
         {
             return(null);
         }
         User user = db.User.FirstOrDefault(x => x.Id == request.UserId);
         group.User.Add(user);
         db.SaveChanges();
         return(Convertion.GroupsConvertion.ConvertToDto(group));
     }
 }
Beispiel #12
0
        public object Post(AddGroupRequest request)
        {
            var existingGroups  = Db.Select <Group>(x => x.FinalDayCompetitionId == request.FinalDayCompetitionId);
            int nextGroupNumber = 1;

            if (existingGroups.Any())
            {
                nextGroupNumber = existingGroups.Max(x => x.Number) + 1;
            }

            var groupToAdd = new Group {
                Number = nextGroupNumber, FinalDayCompetitionId = request.FinalDayCompetitionId
            };
            var groupId = Db.Insert(groupToAdd, true);

            return(Db.SingleById <Group>(groupId).ConvertTo <GroupDto>());
        }
        public IActionResult Add([FromBody] AddGroupRequest addGroup)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            Result result = _groupService.Add(addGroup);

            if (result.Failure)
            {
                ModelState.AddErrors(result.Errors);
                return(BadRequest(ModelState));
            }

            return(Ok(new EmptyResult()));
        }
Beispiel #14
0
        //9.2.2	增加群组
        public string AddGroup(QChat_Group qchat)
        {
            QchatQEDService qqs = new QchatQEDService();

            qqs = getQchatQEDService(qchat.username, qchat.password, qchat.deviceID, qchat.urlIp);

            //增加参数
            AddGroupRequest queryRequest_add = new AddGroupRequest();
            GroupInfo       gi = new GroupInfo();

            gi.name        = qchat.name;                        //"test";
            gi.title       = qchat.title;                       //"title";
            gi.memberCount = qchat.memberCount;                 //20;
            gi.type        = qchat.type;                        //2;
            gi.policy      = "2";                               //固定
            gi.domain      = (gi.type == 2 ? "2" : "3");;
            gi.codec       = 2;                                 //固定
            gi.code        = string.Empty;                      //固定

            queryRequest_add.adminAccount = qchat.adminAccount; //"admin057100622"; //集团管理员名称
            queryRequest_add.groupInfo    = gi;

            QedRequest qedr_add = new QedRequest();

            qedr_add.addGroupRequest = queryRequest_add;

            QedResponse   response        = qqs.addGroup(qedr_add);
            GroupResponse companyResponse = response.groupResponse;
            StringBuilder sb = new StringBuilder();

            if (companyResponse != null && companyResponse.response != null)
            {
                sb.AppendLine("Response:" + companyResponse.response.description.ToString());
                sb.AppendLine("reserve:" + companyResponse.response.reserve);
                sb.AppendLine("returnCode:" + companyResponse.response.returnCode);
            }
            else
            {
                sb.AppendLine("返回信息为null");
            }
            Console.WriteLine(sb);

            //Console.ReadKey();
            return(sb.ToString());
        }
Beispiel #15
0
        public DataLayerResult AddGroup(GroupInfo _groupInfo)
        {
            AddGroupRequest req = new AddGroupRequest();

            req.groupInf = _groupInfo;
            AddGroupResponse res = null;

            try
            {
                res = m_WsSysguard.AddGroup(req);
                connStateManager.Connection();
                return(stateProcessor.MakeDataLayerResult <AddGroupResponse>(this, res));
            }
            catch (Exception ex)
            {
                return(HandleException(ex));
            }
        }
Beispiel #16
0
        public override Task <AddGroupResponse> AddGroup(AddGroupRequest request, ServerCallContext context)
        {
            this.Logger.LogInformation($"Operation:{Utils.GetActualAsyncMethodName()} Payload:{Utils.ProtoToJson(request)}");
            var response = new AddGroupResponse()
            {
                Status = 0
            };

            try
            {
                UserManager.Instance.AddGroup(request.CurrentUser.Name, request.Group.Name);
            }
            catch (Exception e)
            {
                response.Status  = 1;
                response.Message = e.Message;
            }
            return(Task.FromResult(response));
        }
Beispiel #17
0
        public async Task <Result <IdStringModel> > AddAsync(AddGroupRequest addGroup)
        {
            ValidationResult validationResult = _addGroupValidator.Validate(addGroup);

            if (!validationResult.IsValid)
            {
                _logger.LogWarning($"Invalid AddGroupRequest model");
                return(Result.Fail <IdStringModel>(validationResult.ToResultError()));
            }

            addGroup.Name = addGroup.Name.Trim();

            IBaseSpecification <GroupEntity, GroupEntity> groupExistSpecification = SpecificationBuilder
                                                                                    .Create <GroupEntity>()
                                                                                    .WithName(addGroup.Name)
                                                                                    .Build();

            bool groupExist = await _groupDAO.Exist(groupExistSpecification);

            if (groupExist)
            {
                _logger.LogError($"Group with the same name already exist. GroupName {addGroup.Name}");
                return(Result.Fail <IdStringModel>(GROUP_WITH_NAME_ALREADY_EXIST));
            }

            GroupEntity group = new GroupEntity(
                name: addGroup.Name);

            bool addResult = await _groupDAO.Add(group);

            if (!addResult)
            {
                _logger.LogError($"Failed to add group");
                return(Result.Fail <IdStringModel>(FAILED_TO_ADD_GROUP));
            }

            IdStringModel idStringModel = new IdStringModel(
                id: group.Id);

            return(Result.Ok(idStringModel));
        }
Beispiel #18
0
        public JsonResult Group_Insert(string GroupName, Guid?ParentGroupID, Guid?GroupStaffID)
        {
            // تست شده؟ اگر شده در فایل اکسل هم جواب دریافتی از سرور نوشته شود
            GeneralResponse response = new GeneralResponse();
            AddGroupRequest request  = new AddGroupRequest();

            #region Check Access
            bool hasPermission = GetEmployee().IsGuaranteed("Group_Insert");
            if (!hasPermission)
            {
                ModelState.AddModelError("", "AccessDenied");
                return(Json(response, JsonRequestBehavior.AllowGet));
            }
            #endregion

            request.CreateEmployeeID = GetEmployee().ID;
            request.GroupName        = GroupName;
            request.GroupStaffID     = GroupStaffID == null ? Guid.Empty : (Guid)GroupStaffID;
            request.ParentGroupID    = ParentGroupID == null ? Guid.Empty : (Guid)ParentGroupID;

            response = _groupService.AddGroup(request);

            return(Json(response, JsonRequestBehavior.AllowGet));
        }