public async Task <ActionResult> CrearConsultaAsync(NodeInfo nodeInfo) { using (var client = new HttpClient()) { var ck = ControllerContext.HttpContext.Request.Cookies["Token"]; client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", ck); client.BaseAddress = new Uri("https://localhost:44349"); var response = await client.GetAsync($"api/HospitalConsultas/GetTransactions/{nodeInfo.GenNode}"); if (response.IsSuccessStatusCode) { var mongo = JsonConvert.DeserializeObject <List <TransactionBlock> >(await response.Content.ReadAsStringAsync()).ToList(); var consulaViewInfo = new ConsultaViewInfo { GenNode = nodeInfo.GenNode, PacientId = nodeInfo.PacientId, TransactionBlock = mongo }; ViewData["transactions"] = consulaViewInfo; var handler = new JwtSecurityTokenHandler(); var jsonToken = handler.ReadJwtToken(ck); var tokens = jsonToken as JwtSecurityToken; string hospitalId = tokens.Claims.First(claim => claim.Type == "HospitalId").Value; var responseMedicamentos = await client.GetAsync($"api/HospitalMedicamentos/{hospitalId}"); if (responseMedicamentos.IsSuccessStatusCode) { List <SelectListItem> lst = new List <SelectListItem>(); foreach (var medicamentosDTO in JsonConvert.DeserializeObject <List <HospitalMedicamentosDTO> >(await responseMedicamentos.Content.ReadAsStringAsync()).ToList()) { lst.Add(new SelectListItem() { Text = $"{medicamentosDTO.nombreMedicamento}", Value = $"{medicamentosDTO.nombreMedicamento}" }); } var consultaInfo = new CreateConsultaDTO { PacienteId = nodeInfo.PacientId, GenNodeId = nodeInfo.GenNode, HospitalId = hospitalId, DoctorId = tokens.Claims.First(claim => claim.Type == "UserId").Value }; ViewBag.Medicamentos = lst; return(View(consultaInfo)); } return(NotFound()); } return(NotFound()); } }
public async Task <ActionResult> CrearConsulta(CreateConsultaDTO createConsultaDTO) { using (var client = new HttpClient()) { client.BaseAddress = new Uri("https://localhost:44349"); var ck = ControllerContext.HttpContext.Request.Cookies["Token"]; client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", ck); var postTask = await client.PostAsJsonAsync <CreateConsultaDTO>("api/HospitalConsultas", createConsultaDTO); if (postTask.IsSuccessStatusCode) { return(RedirectToAction("CrearConsulta", "HospitalConsulta", new NodeInfo { GenNode = createConsultaDTO.GenNodeId, PacientId = createConsultaDTO.PacienteId })); } else { return(RedirectToAction("Index", "Panel")); } } }
public async Task <ActionResult <CreateConsultaDTO> > InsertConsulta(CreateConsultaDTO createConsultaDTO) { DateTime timeStamp = DateTime.Now; var hospitalConsulta = new HospitalConsulta { HospitalId = createConsultaDTO.HospitalId, PacienteId = createConsultaDTO.PacienteId, DoctorId = createConsultaDTO.DoctorId, DateStamp = timeStamp }; await context.HospitalConsulta.AddAsync(hospitalConsulta); await context.SaveChangesAsync(); var transactionBlock = new TransactionBlock { TimeStamp = timeStamp, Type = "Registro consulta", ConsultaMedica = createConsultaDTO.ConsultaMedica }; await repository.InsertTransaction(transactionBlock, createConsultaDTO.GenNodeId); return(Ok()); }