// GET: Citas/Edit/5 public async Task <ActionResult> Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } citas citas = await db.citas.FindAsync(id); if (citas == null) { return(HttpNotFound()); } clientes cl = db.clientes.Where(m => m.id_alt == citas.cliente_id).FirstOrDefault(); ViewBag.clientId = cl.id_alt; ViewBag.clientCode = cl.codigo; ViewBag.clientName = cl.nombres + " " + cl.apellidos; DateTime today = CurrentDate.getNow(); programa_clientes prgCl = db.programa_clientes.Where(m => m.cliente_id == cl.id_alt && m.fecha_inicio <= today && m.fecha_fin >= today).FirstOrDefault(); ViewBag.programId = prgCl.programa.id; ViewBag.programName = prgCl.programa.nombre; ViewBag.programInit = prgCl.fecha_inicio.ToShortDateString(); ViewBag.programEnd = prgCl.fecha_fin.ToShortDateString(); ViewBag.nutricionista_id = new SelectList(db.nutricionistas, "usuario_id", "usuario_id", citas.nutricionista_id); return(View(citas)); }
public ActionResult Create([Bind(Include = "id,programa_id,cliente_id,horario_id,fecha_inicio,fecha_fin,created_at,updated_at,deleted_at")] programa_clientes programa_clientes, int clientId) { programa_clientes prg_cl = new programa_clientes(); prg_cl.cliente_id = clientId; prg_cl.horario_id = programa_clientes.horario_id; prg_cl.programa_id = programa_clientes.programa_id; prg_cl.fecha_inicio = programa_clientes.fecha_inicio; prg_cl.fecha_fin = programa_clientes.fecha_fin; prg_cl.created_at = DateTimeOffset.Now.DateTime; prg_cl.updated_at = DateTimeOffset.Now.DateTime; db.programa_clientes.Add(prg_cl); try { db.SaveChanges(); return(RedirectToAction("Create", "VentaUsuarios", new { clientId = clientId, feInit = prg_cl.fecha_inicio })); } catch (Exception ex) { ErrorMessage = ex.Message; return(View(clientId)); } }
public ActionResult M_GetClientDiets(string c) { clientes cl = db.clientes.Where(m => m.codigo == c).FirstOrDefault(); Mobile oMobile = new Mobile(); int today = (int)CurrentDate.getNow().DayOfWeek; if (today == 0) { today = 7; } if (cl != null) { programa_clientes clientPrg = db.programa_clientes .Where(m => m.cliente_id == cl.id_alt && m.fecha_fin >= DateTimeOffset.Now) .OrderBy(m => m.fecha_fin) .FirstOrDefault(); List <DailyDiet> clientDiets = db.clientes_dietas .Where(m => m.programa_clientes_id == clientPrg.id) .Include(m => m.dieta_diaria) .Select(m => m.dieta_diaria) .FirstOrDefault(); if (clientDiets != null && clientDiets.Count > 0) { Dictionary <string, object> oDict = new Dictionary <string, object>(); int dietCount = 0; foreach (DailyDiet d in clientDiets) { if (d.dia == today) { Dictionary <string, object> dict = new Dictionary <string, object>(); dict.Add("day", d.dia); dict.Add("food_type", d.tipo_comida); dict.Add("text", d.texto); dict.Add("option", d.opcion); oDict.Add("E_" + dietCount.ToString(), dict); dietCount++; } } return(Json( oMobile.GetDictForJSON( message: "", data: oDict, code: MobileResponse.Success), JsonRequestBehavior.AllowGet)); } } return(Json( oMobile.GetDictForJSON( message: "Error en la solicitud", data: null, code: MobileResponse.Error), JsonRequestBehavior.AllowGet)); }
public async Task <ActionResult> DeleteConfirmed(int id) { programa_clientes programa_clientes = await db.programa_clientes.FindAsync(id); db.programa_clientes.Remove(programa_clientes); await db.SaveChangesAsync(); return(RedirectToAction("Index")); }
public async Task <ActionResult> M_GetWeeklyEvaluations(string c) { Mobile oMobile = new Mobile(); int clId = await db.clientes.Where(m => m.codigo == c).Select(m => m.id_alt).FirstOrDefaultAsync(); DateTime today = CurrentDate.getNow(); if (clId > 0) { programa_clientes currClientProgram = db.programa_clientes.Where(m => m.cliente_id == clId && m.fecha_fin >= today).OrderBy(m => m.fecha_fin).FirstOrDefault(); if (currClientProgram != null) { List <pesos_medidas> pymLst = await db.pesos_medidas.Where(m => m.clienteId == clId && m.created_at >= currClientProgram.fecha_inicio).OrderBy(m => m.created_at).ToListAsync(); if (pymLst.Count > 0) { Dictionary <string, object> oDict = new Dictionary <string, object>(); for (int i = 0; i < pymLst.Count; i++) { pesos_medidas pym = new pesos_medidas(); Medidas measurements = new Medidas(); pym.medidas = measurements; pym.medidas.cuello = pymLst[i].medidas.cuello; pym.medidas.biceps = pymLst[i].medidas.biceps; pym.medidas.gluteos = pymLst[i].medidas.gluteos; pym.medidas.hombros = pymLst[i].medidas.hombros; pym.medidas.muneca = pymLst[i].medidas.muneca; pym.medidas.muslo = pymLst[i].medidas.muslo; pym.medidas.torax = pymLst[i].medidas.torax; pym.medidas.cintura = pymLst[i].medidas.cintura; pym.medidas.pantorrilla = pymLst[i].medidas.pantorrilla; pym.peso_1 = pymLst[i].peso_1; pym.peso_2 = pymLst[i].peso_2; pym.peso_3 = pymLst[i].peso_3; oDict.Add("E_" + i.ToString(), pym); } return(Json( oMobile.GetDictForJSON( message: oDict.Count.ToString() + " registrados para cliente.", data: oDict, code: MobileResponse.Success), JsonRequestBehavior.AllowGet)); } } } return(Json( oMobile.GetDictForJSON( message: "Error de validación de cliente.", data: null, code: MobileResponse.Error), JsonRequestBehavior.AllowGet)); }
public ActionResult M_LogInClient(string c, int k) { Mobile oMobile = new Mobile(); clientes cl = db.clientes.Where(m => m.codigo == c).Include(m => m.nutricionistas.usuarios).FirstOrDefault(); int daysInMonth = DateTime.DaysInMonth(CurrentDate.getNow().Year, CurrentDate.getNow().Month); DateTime firstDay = new DateTime(CurrentDate.getNow().Year, CurrentDate.getNow().Month, 1); DateTime lastDay = new DateTime(CurrentDate.getNow().Year, CurrentDate.getNow().Month, daysInMonth); if (cl != null && k == cl.password) { DateTime today = CurrentDate.getNow(); programa_clientes clientPrg = db.programa_clientes.Where(m => m.cliente_id == cl.id_alt && m.fecha_fin >= today).Include(m => m.programa).OrderBy(m => m.fecha_fin).FirstOrDefault(); venta_usuarios clientSls = db.venta_usuarios.Where(m => m.cliente_id == cl.id_alt && m.fecha_fin >= today).OrderBy(m => m.fecha_fin).FirstOrDefault(); if (clientPrg == null || clientSls == null) { return(Json( oMobile.GetDictForJSON( message: "Cliente no cuenta con programa asignado o boleta vigente en el sistema.", data: null, code: MobileResponse.Success), JsonRequestBehavior.AllowGet)); } citas clientAppointments = db.citas.Where(m => m.cliente_id == cl.id_alt && m.fecha > today).OrderBy(m => m.fecha).FirstOrDefault(); Dictionary <string, object> oDict = new Dictionary <string, object>(); oDict.Add(key: "name", value: cl.nombres); oDict.Add(key: "last_name", value: cl.apellidos); oDict.Add(key: "code", value: cl.id_alt); oDict.Add(key: "img", value: Convert.ToBase64String(cl.foto)); oDict.Add(key: "curr_program", value: clientPrg.programa.nombre); oDict.Add(key: "curr_nutritionist", value: cl.nutricionistas.usuarios.nombres ?? null); oDict.Add(key: "curr_ticket", value: clientSls.numero_boleta); oDict.Add(key: "upcoming_nut_appointment_date", value: clientAppointments != null ? clientAppointments.fecha.ToShortDateString() : null); oDict.Add(key: "upcoming_membership_renewal_date", value: clientSls != null ? clientSls.fecha_fin.ToShortDateString() : null); return(Json( oMobile.GetDictForJSON( message: "Inicio de sesión correcto.", data: oDict, code: MobileResponse.Success), JsonRequestBehavior.AllowGet)); } return(Json( oMobile.GetDictForJSON( message: "Error de inicio de sesión.", data: null, code: MobileResponse.Error), JsonRequestBehavior.AllowGet)); }
public async Task <ActionResult> Edit([Bind(Include = "id,cliente_id,nutricionista_id,programa_id,fecha,hora,tipo,created_at,updated_at,deleted_at")] citas citas) { if (Request.Files[0].ContentLength > 0) { HttpPostedFileBase file = Request.Files[0] as HttpPostedFileBase; Image img = Image.FromStream(file.InputStream, true, true); ImageCodecInfo jpgInfo = ImageCodecInfo.GetImageEncoders().Where(codecInfo => codecInfo.MimeType == "image/jpeg").First(); using (Stream s = new MemoryStream()) { using (EncoderParameters encParams = new EncoderParameters(1)) { encParams.Param[0] = new EncoderParameter(Encoder.Compression, (long)EncoderValue.CompressionLZW); //quality should be in the range [0..100] img.Save(s, jpgInfo, encParams); } byte[] b = new byte[s.Length]; s.Position = 0; s.Read(b, 0, b.Length); citas.foto_avance = Convert.ToBase64String(b); } } if (ModelState.IsValid) { citas.updated_at = CurrentDate.getNow(); db.Entry(citas).State = EntityState.Modified; await db.SaveChangesAsync(); return(RedirectToAction("Index")); } clientes cl = db.clientes.Where(m => m.id_alt == citas.cliente_id).FirstOrDefault(); ViewBag.clientId = cl.id_alt; ViewBag.clientCode = cl.codigo; ViewBag.clientName = cl.nombres + " " + cl.apellidos; DateTime today = CurrentDate.getNow(); programa_clientes prgCl = db.programa_clientes.Where(m => m.cliente_id == cl.id_alt && m.fecha_inicio <= today && m.fecha_fin >= today).FirstOrDefault(); ViewBag.programId = prgCl.programa.id; ViewBag.programName = prgCl.programa.nombre; ViewBag.programInit = prgCl.fecha_inicio.ToShortDateString(); ViewBag.programEnd = prgCl.fecha_fin.ToShortDateString(); return(View(citas)); }
// GET: ProgramaClientes/Details/5 public async Task <ActionResult> Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } programa_clientes programa_clientes = await db.programa_clientes.FindAsync(id); if (programa_clientes == null) { return(HttpNotFound()); } return(View(programa_clientes)); }
public async Task <ActionResult> Edit([Bind(Include = "id,programa_id,cliente_id,horario_id,fecha_inicio,fecha_fin,created_at,updated_at,deleted_at")] programa_clientes programa_clientes) { if (ModelState.IsValid) { db.Entry(programa_clientes).State = EntityState.Modified; await db.SaveChangesAsync(); return(RedirectToAction("Index")); } ViewBag.cliente_id = new SelectList(db.clientes, "id_alt", "codigo", programa_clientes.cliente_id); ViewBag.horario_id = new SelectList(db.horarios, "id", "id", programa_clientes.horario_id); ViewBag.programa_id = new SelectList(db.programas, "id", "nombre", programa_clientes.programa_id); return(View(programa_clientes)); }
// GET: ProgramaClientes/Edit/5 public async Task <ActionResult> Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } programa_clientes programa_clientes = await db.programa_clientes.FindAsync(id); if (programa_clientes == null) { return(HttpNotFound()); } ViewBag.cliente_id = new SelectList(db.clientes, "id_alt", "codigo", programa_clientes.cliente_id); ViewBag.horario_id = new SelectList(db.horarios, "id", "id", programa_clientes.horario_id); ViewBag.programa_id = new SelectList(db.programas, "id", "nombre", programa_clientes.programa_id); return(View(programa_clientes)); }
// GET: Citas/Create public ActionResult Create(int clienteId) { clientes cl = db.clientes.Where(m => m.id_alt == clienteId).FirstOrDefault(); DateTime today = CurrentDate.getNow(); programa_clientes prgCl = db.programa_clientes.Where(m => m.cliente_id == cl.id_alt && m.fecha_inicio <= today && m.fecha_fin >= today).FirstOrDefault(); ViewBag.clientId = cl.id_alt; ViewBag.clientCode = cl.codigo; ViewBag.clientName = cl.nombres + " " + cl.apellidos; ViewBag.programId = prgCl.programa.id; ViewBag.programName = prgCl.programa.nombre; ViewBag.programInit = prgCl.fecha_inicio.ToShortDateString(); ViewBag.programEnd = prgCl.fecha_fin.ToShortDateString(); ViewBag.nutricionista_id = new SelectList(db.nutricionistas, "usuario_id", "usuarios.nombres"); return(View()); }
public async Task <ActionResult> Global(int id) { int daysInMonth = DateTime.DaysInMonth(CurrentDate.getNow().Year, CurrentDate.getNow().Month); DateTime today = CurrentDate.getNow(); DateTime firstDay = new DateTime(today.Year, today.Month, 1); DateTime lastDay = new DateTime(today.Year, today.Month, daysInMonth); // Info General clientes client = await db.clientes .Where(m => m.id_alt == id) .Include(m => m.nutricionistas.usuarios) .FirstOrDefaultAsync(); // Info Programa programa_clientes program = await db.programa_clientes .Where(m => m.cliente_id == client.id_alt && m.fecha_inicio <= today && m.fecha_fin >= today) .Include(m => m.programa) .Include(m => m.horario.sala.local) .OrderBy(m => m.fecha_fin) .FirstOrDefaultAsync(); ViewBag.ProgramId = program != null?program.id.ToString() : ""; ViewBag.ProgramName = program != null ? program.programa.nombre : ""; ViewBag.ProgramInitDate = program != null?program.fecha_inicio.ToShortDateString() : ""; ViewBag.ProgramEndDate = program != null?program.fecha_fin.ToShortDateString() : ""; ViewBag.ProgramSchedule = program != null?program.horario.hora.ToString() : ""; ViewBag.Gym = program != null ? program.horario.sala.local.nombre : ""; // Info Notas del cliente List <clientes_notas> notes = await db.clientes_notas.Where(n => n.idCliente == id).OrderByDescending(n => n.created_at).Take(15).ToListAsync(); ViewBag.ClientNotes = notes; //// Info Calendario. //List<pesos_medidas> clientPyM = await db.pesos_medidas.Where(m => m.clienteId == id && m.created_at >= firstDay && m.created_at <= lastDay).ToListAsync(); //List<clientes_asistencia> clientAssistance = await db.clientes_asistencia.Where(m => m.clienteId == id && m.fecha >= firstDay && m.fecha <= lastDay).ToListAsync(); //List<clientes_congelamientos> clientFreezing = await db.clientes_congelamientos.Where(m => m.clienteId == id && m.fecha_desde >= firstDay).ToListAsync(); //List<citas> clientConsults = await db.citas.Where(m => m.cliente_id == id && m.fecha >= firstDay && m.fecha <= lastDay).ToListAsync(); // Info Nutricion. ViewBag.AssignedNutritionist = client.nutricionistas.usuarios.nombres + " " + client.nutricionistas.usuarios.apellidos; if (program != null) { // Info Ficha Medica fichas_medicas medicalHistory = await db.fichas_medicas.Where(m => m.programa_id == program.id).Include(m => m.cardio).FirstOrDefaultAsync(); ViewBag.MedicalId = "No ha sido creada."; ViewBag.Cardio = "No se han ingresado datos."; if (medicalHistory != null) { int clientCurrMedicalHistoryIdCode = 10000000 + medicalHistory.id; ViewBag.MedicalId = clientCurrMedicalHistoryIdCode.ToString("FS#"); if (medicalHistory.cardio != null) { CardioInfo lastCardioResults = medicalHistory.cardio.OrderByDescending(m => m.fecha).FirstOrDefault(); if (lastCardioResults.cardiologia_aprobacion == CardioSuittable.Apto) { ViewBag.Cardio = CardioSuittable.Apto.ToString(); } else { ViewBag.Cardio = CardioSuittable.NoApto.ToString(); } } } // Info Dieta clientes_dietas clientDiet = await db.clientes_dietas.Where(m => m.programa_clientes_id == program.id).OrderByDescending(m => m.created_at).FirstOrDefaultAsync(); if (clientDiet != null) { int dietCode = 10000000 + clientDiet.id; ViewBag.DietCode = dietCode.ToString("D#"); } } // Info Ventas venta_usuarios usrSales = await db.venta_usuarios .Where(m => m.cliente_id == client.id_alt) .OrderByDescending(m => m.created_at) .FirstOrDefaultAsync(); if (usrSales != null) { usuarios usr = await db.vendedores.Where(v => v.usuario_id == usrSales.vendedor_id).Include(v => v.usuarios).Select(v => v.usuarios).FirstOrDefaultAsync(); ViewBag.Seller = usr.nombres + " " + usr.apellidos; ViewBag.LastTicket = usrSales.numero_boleta; ViewBag.LastRenewal = usrSales.fecha_inicio.ToShortDateString(); semanas_precios weeks = db.semanas_precios.Where(s => s.id == usrSales.semanas_precio_id).FirstOrDefault(); int boughtWeeks = weeks.cantidad_semanas; ViewBag.BoughtWeeks = boughtWeeks.ToString(); int usedWeeks = await GetUsedWeeks(ClientId : client.id_alt, LastSaleId : usrSales.id); ViewBag.UsedWeeks = usedWeeks; ViewBag.PendingWeeks = boughtWeeks - usedWeeks; } //ViewBag.venta_usuario = db.venta_usuarios.Where(vu => vu.cliente_id == id).FirstOrDefault(); //ViewBag.programa_cliente = db.programa_clientes.Where(pc => pc.cliente_id == id).FirstOrDefault(); //ViewBag.calPyM = clientPyM; //ViewBag.calAsist = clientAssistance; //ViewBag.calFrz = clientFreezing; //ViewBag.calCitas = clientConsults; // //ViewBag.cardioApt = cardioApt; //ViewBag.foto = Convert.ToBase64String(cliente.foto); return(View(client)); }
// GET: FichasMedicas/Create public ActionResult Create(int clienteId) { clientes cl = db.clientes.Where(c => c.id_alt == clienteId).FirstOrDefault(); DateTime today = CurrentDate.getNow(); programa_clientes prgCl = db.programa_clientes.Where(m => m.cliente_id == cl.id_alt && m.fecha_inicio <= today && m.fecha_fin >= today).FirstOrDefault(); fichas_medicas fm = db.fichas_medicas.Where(m => m.cliente_id == cl.id_alt).Include(m => m.controles).Include(m => m.regimen_alimentacion).Include(m => m.cardio).Include(m => m.laboratorio).OrderByDescending(m => m.created_at).FirstOrDefault(); ViewBag.currentCardioControl = null; if (fm != null && fm.cardio.Count > 0) { CardioInfo lastCardioInfoInserted = fm.cardio.OrderByDescending(m => m.fecha).First(); TimeSpan dateDif = CurrentDate.getNow().Subtract(lastCardioInfoInserted.fecha); if (dateDif <= new TimeSpan(180, 0, 0, 0)) { ViewBag.currentCardioControl = lastCardioInfoInserted; } } ViewBag.currentLabControl = null; if (fm != null && fm.laboratorio.Count > 0) { LabResults lastLabInfoInserted = fm.laboratorio.OrderByDescending(m => m.fecha).First(); TimeSpan dateDif = CurrentDate.getNow().Subtract(lastLabInfoInserted.fecha); if (dateDif <= new TimeSpan(180, 0, 0, 0)) { ViewBag.currentLabControl = lastLabInfoInserted; } } if (fm != null && fm.controles.Count > 0) { List <ControlesNutricionales> cn = fm.controles; List <string> cnRows = new List <string>(); foreach (ControlesNutricionales c in cn) { string row = GetNutritionalControlString(c: c); cnRows.Add(row); controlsCount++; } controlsCount = 0; ViewBag.controlsLst = cnRows; } if (fm != null && fm.regimen_alimentacion.Count > 0) { List <FeedingRegime> fr = fm.regimen_alimentacion; List <string> frList = new List <string>(); foreach (FeedingRegime f in fr) { string row = GetFoodRegimeString(f: f); frList.Add(row); foodRegimesCount++; } foodRegimesCount = 0; ViewBag.regimenLst = frList; } ViewBag.clientId = cl.id_alt; ViewBag.programId = prgCl.programa_id; return(View()); }