Example #1
0
        public async Task PerformPost()
        {
            uploadStatusLabel.TextColor = UIColor.White;
            uploadStatusLabel.Text      = "Uploading...";
            uploadStatusLabel.Hidden    = false;

            var jacket = new JacketUploadRequest
            {
                IndexId = 0,
                Owner   = jacketOwnerTextField.Text,
                ID      = jacketIdTextField.Text.ToUpper(),
                Secret  = secretKeyTextField.Text,
                Country = country
            };

            uploadJacketViewModel.payload = jacket;
            var response = await uploadJacketViewModel.UploadJacket();

            if (response.Error == true)
            {
                uploadStatusLabel.TextColor = UIColor.FromRGB(143, 0, 0).ColorWithAlpha((nfloat)0.5);
                uploadStatusLabel.Text      = response.Message;
            }
            else if (response.Error == false)
            {
                uploadStatusLabel.TextColor = UIColor.FromRGB(0, 143, 0).ColorWithAlpha((nfloat)0.5);
                uploadStatusLabel.Text      = response.Message;
                await Task.Delay(4000);

                DismissViewController(true, () =>
                {
                    LaunchViewController.ReloadDetails();
                });
            }
        }
Example #2
0
        public static async Task <JacketUploadResponse> PostJacket(JacketUploadRequest jacketRequest)
        {
            await Task.Delay(3000);

            var response = new JacketUploadResponse
            {
                Error   = false,
                Message = "Jacket Upload Successful"
            };

            return(response);
        }
Example #3
0
        public async Task <IActionResult> Upload([FromBody] JacketUploadRequest jacketUploadRequest)
        {
            var response = new JacketUploadResponse();
            var count    = await _jacketService.GetCountAsync();

            if (count == 5000)
            {
                response = new JacketUploadResponse {
                    Error = true, Message = "All 5000 Jackets Assigned"
                };
                return(Ok(response));
            }

            var jacket = new Jacket();
            var secret = "";

            if (jacketUploadRequest != null)
            {
                jacket = new Jacket
                {
                    //Id = jacketUploadRequest.IndexId,
                    JacketOwner = jacketUploadRequest.Owner,
                    JacketID    = jacketUploadRequest.ID,
                    Location    = jacketUploadRequest.Country
                };
                secret = jacketUploadRequest.Secret;
            }
            else
            {
                response = new JacketUploadResponse {
                    Error = true, Message = "Something went wrong"
                };
                return(Ok(response));
            }

            var exists = await _jacketService.GetJacketByIdAsync(jacket.JacketID);

            if (exists != null)
            {
                response = new JacketUploadResponse {
                    Error = true, Message = "Jacket Already Assigned"
                };
                return(Ok(response));
            }

            //if(jacket.Id == 0)
            //{
            //  jacket.Id = (await _jacketService.GetCountAsync()) + 1;
            //}

            var secretPass  = SecretCheck.IsValid(jacket.JacketID, secret);
            var locationUri = "";

            if (secretPass)
            {
                var uploaded = await _jacketService.UploadAsync(jacket);

                if (uploaded)
                {
                    var baseUrl = $"{HttpContext.Request.Scheme}://{HttpContext.Request.Host.ToUriComponent()}";
                    locationUri = baseUrl + "/" + ApiRoutes.Jackets.GetById.Replace("{jacketId}", jacket.Id.ToString());
                    response    = new JacketUploadResponse {
                        Error = false, Message = "Jacket Upload Successful"
                    };
                }
                else
                {
                    response = new JacketUploadResponse {
                        Error = true, Message = "Something went wrong"
                    };
                }
            }
            else
            {
                response = new JacketUploadResponse {
                    Error = true, Message = "Secret Key is not Valid"
                };
            }

            return(Created(locationUri, response));
        }