Esempio n. 1
0
        public async Task <IEnumerable <ThreeGBSlotData> > GetAvailableProjectsAsync(AvailableThreeGBProjectsRequestArgs requestArgs)
        {
            var(UserName, Password) = Credentials.GetCredentials();
            using (var svc = new ThreeGBSoapClient
            {
                Url = BASE_SVC_URL,
                Credentials = new NetworkCredential(UserName, Password)
            })
            {
                svc.Model = new
                {
                    requestArgs.CropCode,
                    requestArgs.BrStationCode,
                    ThreeGBType = requestArgs.TestTypeCode
                };
                var response = await svc.GetAvailable3GBProjectAsync();

                //apply data filter if required.
                return(response);
            }
        }
Esempio n. 2
0
        public async Task <IHttpActionResult> GetAvailableProjects([FromUri] AvailableThreeGBProjectsRequestArgs args)
        {
            if (args == null)
            {
                return(InvalidRequest("Please provide required parameters."));
            }
            if (string.IsNullOrWhiteSpace(args.CropCode))
            {
                return(InvalidRequest("Please provide Crop Code."));
            }
            if (string.IsNullOrWhiteSpace(args.BrStationCode))
            {
                return(InvalidRequest("Please provide Breeding Station code."));
            }
            if (string.IsNullOrWhiteSpace(args.TestTypeCode))
            {
                return(InvalidRequest("Please provide Test Type Code."));
            }

            var projects = await _threeGBService.GetAvailableProjectsAsync(args);

            return(Ok(projects));
        }