private bool ServicesEmployeesExists(int id)
        {
            string             responseBodyServicesEmployeeList = this._clientService.GetResponse(this._configuration["AppSettings:ApiRest"] + "api/ServiceEmployeeApi/" + id).GetAwaiter().GetResult();
            ServiceEmployeeDto serviceEmployee = JsonConvert.DeserializeObject <ServiceEmployeeDto>(responseBodyServicesEmployeeList);

            return(serviceEmployee != null);
        }
        public async Task <ServiceEmployeeDto> DeleteServiceEmployee()
        {
            int    id = 1320; //idEmployee
            string responseBodyServicesEmployeeList = await this._clientService.DeleteResponse(localhostApi + "api/ServiceEmployeeApi/" + id, "", validJwt);

            ServiceEmployeeDto serviceEmployee = JsonConvert.DeserializeObject <ServiceEmployeeDto>(responseBodyServicesEmployeeList);

            return(serviceEmployee);
        }
        public async Task <IActionResult> DeleteConfirmed(int id)
        {
            string responseBodyServicesEmployeeList = await this._clientService.DeleteResponse(this._configuration["AppSettings:ApiRest"] + "api/ServiceEmployeeApi/" + id);

            ServiceEmployeeDto serviceEmployee = JsonConvert.DeserializeObject <ServiceEmployeeDto>(responseBodyServicesEmployeeList);

            return(RedirectToAction(nameof(Index), new
            {
                idEmployee = serviceEmployee.IdEmployee
            }));
        }
        public IActionResult RemoveServiceEmployee(
            [HttpTrigger(AuthorizationLevel.Function, "delete", Route = "ServiceEmployeeFunctionApi/{id:int}")] HttpRequestMessage req, int id, ExecutionContext context)
        {
            /*Validate JWT*/
            if ((SecurityJwt.ValidateTokenWithRoleAsync(req.Headers.Authorization, context.FunctionAppDirectory, "Admin")) == null)
            {
                return(new UnauthorizedResult());
            }
            /*Code*/
            var result = db.DeleteServiceemployee(id);
            ServiceEmployeeDto responseMessage = _mapper.Map <ServicesEmployees, ServiceEmployeeDto>(result);

            return(new OkObjectResult(responseMessage));
        }
        public async Task <ServiceEmployeeDto> CreateServiceEmployee()
        {
            ServiceEmployeeDto serviceEmployee = new ServiceEmployeeDto();

            serviceEmployee.IdEmployee = 23;
            serviceEmployee.IdService  = 84;

            string responseBodyServicesEmployeeList          = this._clientService.GetResponse(localhostApi + "api/ServiceEmployeeApi", "", validJwt).GetAwaiter().GetResult();
            List <ServiceEmployeeDto> serviceEmployeeListDto = JsonConvert.DeserializeObject <List <ServiceEmployeeDto> >(responseBodyServicesEmployeeList);

            string responseBodyServicesEmployee = await this._clientService.PostResponse(localhostApi + "api/ServiceEmployeeApi", JsonConvert.SerializeObject(serviceEmployee), validJwt);

            ServiceEmployeeDto employeeDto = JsonConvert.DeserializeObject <ServiceEmployeeDto>(responseBodyServicesEmployee);

            return(employeeDto);
        }
        // GET: ServicesEmployees/Delete/5
        public async Task <IActionResult> Delete(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            string responseBodyServicesEmployeeList = await this._clientService.GetResponse(this._configuration["AppSettings:ApiRest"] + "api/ServiceEmployeeApi/" + id);

            ServiceEmployeeDto serviceEmployee = JsonConvert.DeserializeObject <ServiceEmployeeDto>(responseBodyServicesEmployeeList);

            if (serviceEmployee == null)
            {
                return(NotFound());
            }

            return(View(serviceEmployee));
        }
        public async Task <IActionResult> UpdateServiceEmployee(
            [HttpTrigger(AuthorizationLevel.Function, "put", Route = "ServiceEmployeeFunctionApi/{id:int}")] HttpRequestMessage req, int id, ExecutionContext context)
        {
            /*Validate JWT*/
            if ((SecurityJwt.ValidateTokenWithRoleAsync(req.Headers.Authorization, context.FunctionAppDirectory, "Admin")) == null)
            {
                return(new UnauthorizedResult());
            }
            /*Code*/
            var content = await req.Content.ReadAsStringAsync();

            ServiceEmployeeDto serviceEmployeeDto = JsonSerializer.Deserialize <ServiceEmployeeDto>(content);
            ServicesEmployees  serviceEmployeeDb  = _mapper.Map <ServiceEmployeeDto, ServicesEmployees>(serviceEmployeeDto);
            var result = db.UpdateServiceemployee(serviceEmployeeDb);
            ServiceEmployeeDto responseMessage = _mapper.Map <ServicesEmployees, ServiceEmployeeDto>(result);

            return(new OkObjectResult(responseMessage));
        }
        public async Task <IActionResult> Create(ServiceEmployeeModel serviceEmployeeModel)
        {
            ServiceEmployeeDto serviceEmployee = new ServiceEmployeeDto();

            serviceEmployee.IdEmployee = serviceEmployeeModel.ServiceEmployee.IdEmployee;
            serviceEmployee.IdService  = serviceEmployeeModel.ServiceEmployee.IdService;

            string responseBodyServicesEmployeeList          = this._clientService.GetResponse(this._configuration["AppSettings:ApiRest"] + "api/ServiceEmployeeApi").GetAwaiter().GetResult();
            List <ServiceEmployeeDto> serviceEmployeeListDto = JsonConvert.DeserializeObject <List <ServiceEmployeeDto> >(responseBodyServicesEmployeeList);


            if (serviceEmployeeListDto.FirstOrDefault(elem => elem.IdEmployee == serviceEmployee.IdEmployee && elem.IdService == serviceEmployee.IdService) != null)
            {
                TempData["Error"] = "This services is assigned";
                return(RedirectToAction(nameof(Index), new
                {
                    idEmployee = serviceEmployee.IdEmployee
                }));
            }
            if (serviceEmployeeModel.ServiceEmployee.IdService != 0)
            {
                string responseBodyServicesEmployee = await this._clientService.PostResponse(this._configuration["AppSettings:ApiRest"] + "api/ServiceEmployeeApi", JsonConvert.SerializeObject(serviceEmployee));

                ServiceEmployeeDto employeeDto = JsonConvert.DeserializeObject <ServiceEmployeeDto>(responseBodyServicesEmployee);
                return(RedirectToAction(nameof(Index), new
                {
                    idEmployee = serviceEmployee.IdEmployee
                }));
            }

            string            responseBodyServicesList = this._clientService.GetResponse(this._configuration["AppSettings:ApiRest"] + "api/ServiceApi").GetAwaiter().GetResult();
            List <ServiceDto> serviceDto = JsonConvert.DeserializeObject <List <ServiceDto> >(responseBodyServicesList);

            ViewData["IdService"] = new SelectList(serviceDto, "Id", "Name", serviceEmployee.IdService);
            return(RedirectToAction(nameof(Index), new
            {
                idEmployee = serviceEmployee.IdEmployee
            }));
        }