public async Task <EvoToolApiResponse> PutPopup(long opsNoticeId, PutPopupRequest request)
        {
            var response = await PutAsync($"/api/gmtool/opsnotice/popup/{opsNoticeId}", request);

            return(await BuildResponse(response));
        }
예제 #2
0
        public async Task <ActionResult <PutPopupResponse> > PutPopup(long opsNoticeId, PutPopupRequest request)
        {
            // todo: CBT後 validation text
            // todo: validation enabledなtext/titleは空文字列不可

            var PopupDesc = _mapper.Map <PutPopupRequest, PopupDesc>(request);

            var result = await _opsNoticeService.UpdatePopup(opsNoticeId, PopupDesc);

            var response = _mapper.Map <OpsNotice, PutPopupResponse>(result);

            return(Ok(response));
        }
예제 #3
0
        public async Task <ActionResult <PutPopupResponse> > PutPopup(long opsNoticeId, PutPopupRequest request)
        {
            var authorizationResult = await _authorizationService.AuthorizeAsync(User, request.target, Policy.DomainRegionTarget);

            if (!authorizationResult.Succeeded)
            {
                return(Forbid());
            }

            var registered = await _opsNoticeService.GetPopup(opsNoticeId);

            if (registered.StatusCode != StatusCodes.Status200OK)
            {
                return(BuildResponse(registered));
            }

            var registeredTarget = Newtonsoft.Json.JsonConvert.DeserializeObject <GetPopupResponse>(registered.Content.ToString()).Target;

            authorizationResult = await _authorizationService.AuthorizeAsync(User, registeredTarget, Policy.DomainRegionTarget);

            if (!authorizationResult.Succeeded)
            {
                return(Forbid());
            }

            var result = await _opsNoticeService.PutPopup(opsNoticeId, request);

            return(BuildResponse(result));
        }
예제 #4
0
 public async Task <EvoToolApiResponse> PutPopup(long opsNoticeId, PutPopupRequest request)
 {
     return(await _opsNoticeRepository.PutPopup(opsNoticeId, request));
 }