/// <summary>
        /// 新增
        /// </summary>
        /// <param name="organizationRequestDto"></param>
        /// <returns></returns>
        public async Task <bool> CreateAsync(OrganizationRequestDto organizationRequestDto)
        {
            var organization = _mapper.Map <OrganizationRequestDto, Organization>(organizationRequestDto);
            await OrganizationValidatorsFilter.DoValidationAsync(_organizationRespository, organization, ValidatorTypeConstants.Create);

            return(await _organizationRespository.InsertAsync(organization));
        }
        /// <summary>
        /// 修改
        /// </summary>
        /// <param name="organizationRequestDto"></param>
        /// <returns></returns>
        public async Task <bool> ModifyAsync(OrganizationRequestDto organizationRequestDto)
        {
            var organization = await _organizationRespository.FirstOrDefaultAsync(e => e.Id == organizationRequestDto.Id);

            var entity = organizationRequestDto.MapToModifyEntity <OrganizationRequestDto, Organization>(organization);
            await OrganizationValidatorsFilter.DoValidationAsync(_organizationRespository, entity, ValidatorTypeConstants.Modify);

            return(await _organizationRespository.UpdateAsync(entity));
        }
        /// <summary>
        /// 修改
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task <JsonResponse> Modify(OrganizationRequestDto input)
        {
            input.InitModifyRequest();
            var resJson = await _applicationEnginee.TryTransactionAsync(async() =>
            {
                await _organizationAppService.ModifyAsync(input);
            });

            return(resJson);
        }
 /// <summary>
 /// Updates the organization.
 /// </summary>
 /// <param name="customerId">The customer identifier.</param>
 /// <param name="organizationId">The organization identifier.</param>
 /// <param name="organization">The organization.</param>
 /// <param name="bearerToken">The bearer token.</param>
 /// <returns></returns>
 public Task UpdateOrganization(int customerId, Guid organizationId, OrganizationRequestDto organization, string bearerToken)
 {
     return(customersDataProvider.UpdateOrganization(customerId, organizationId, organization, bearerToken));
 }
 /// <summary>
 /// Creates the organization.
 /// </summary>
 /// <param name="customerId">The customer identifier.</param>
 /// <param name="organization">The organization.</param>
 /// <param name="bearerToken">The bearer token.</param>
 /// <returns></returns>
 public Task <PostResponseDto <Guid> > CreateOrganization(int customerId, OrganizationRequestDto organization, string bearerToken)
 {
     return(customersDataProvider.CreateOrganization(customerId, organization, bearerToken));
 }
        /// <summary>
        /// Updates the organization.
        /// </summary>
        /// <param name="customerId">The customer identifier.</param>
        /// <param name="organizationId">The organization identifier.</param>
        /// <param name="organization">The organization.</param>
        /// <param name="bearerToken">The bearer token.</param>
        /// <returns></returns>
        public Task UpdateOrganization(int customerId, Guid organizationId, OrganizationRequestDto organization, string bearerToken)
        {
            var requestUrl = string.Format("api/{0}/organizations/{1}", customerId, organizationId);

            return(_apiClient.SendRequestAsync(requestUrl, organization, Method.PUT, null, bearerToken));
        }
        /// <summary>
        /// Creates the organization.
        /// </summary>
        /// <param name="customerId">The customer identifier.</param>
        /// <param name="organization">The organization.</param>
        /// <param name="bearerToken">The bearer token.</param>
        /// <returns></returns>
        public Task <PostResponseDto <Guid> > CreateOrganization(int customerId, OrganizationRequestDto organization, string bearerToken)
        {
            var requestUrl = string.Format("api/{0}/organizations", customerId);

            return(_apiClient.SendRequestAsync <PostResponseDto <Guid> >(requestUrl, organization, Method.POST, null, bearerToken));
        }