コード例 #1
0
        public async Task <IActionResult> DepartmentAndOrDivisionId([FromQuery] int?deptId = null, int?divId = null, int pageSize = 20, int pageNum = 0)
        {
            if (deptId == null && divId == null)
            {
                return(BadRequest("No input given."));
            }
            var services = new List <Service>();

            if (deptId == null && divId != null)
            {
                services = await _contextManager.GetServicesFromDivisionId(divId, pageSize, pageNum);
            }

            else if (deptId != null && divId == null)
            {
                services = await _contextManager.GetServicesFromDepartmentId(deptId, pageSize, pageNum);
            }

            else if (deptId != null && divId != null)
            {
                services = await _contextManager.GetServicesFromDivisionAndDepartmentId(divId, deptId, pageSize, pageNum);
            }

            if (services.Count() == 0)
            {
                return(NotFound("No services found with valid arguments given."));
            }

            var serviceDTOs = new List <ServiceV1DTO>();

            foreach (var service in services)
            {
                serviceDTOs.Add(await populateService(service));
            }

            return(Ok(serviceDTOs));
        }