public ActionResult signos(int idot, int autorz) { // icb_sysparameter ejecu = db.icb_sysparameter.Where(d => d.syspar_cod == "P79").FirstOrDefault(); int inspeccion = ejecu != null?Convert.ToInt32(ejecu.syspar_value) : 14; //ver ot existente tencabezaorden ot = db.tencabezaorden.Where(d => d.id == idot).FirstOrDefault(); if (ot != null) { if (ot.fecha_inicio_inspeccion == null) { ot.fecha_inicio_inspeccion = DateTime.Now; db.Entry(ot).State = EntityState.Modified; if (ot.idcita != null) { //busco la cita tcitastaller cita = db.tcitastaller.Where(d => d.id == ot.idcita.Value).FirstOrDefault(); cita.estadocita = inspeccion; db.Entry(cita).State = EntityState.Modified; } db.SaveChanges(); } } ViewBag.sistemasV = sistemas(idot); ViewBag.otid = idot; ViewBag.autorz = autorz; return(PartialView("InspeccionSistemas")); }
public void inst_manodeobra(vw_operaciones_vh opr, int idtec) { tdetallemanoobraot oprOt = db.tdetallemanoobraot.FirstOrDefault(x => x.idorden == opr.ot_id && x.idtempario == opr.codigo); if (oprOt == null) { //busco la informacion específica del tempario ttempario operacion = db.ttempario.Where(d => d.codigo == opr.codigo).FirstOrDefault(); tdetallemanoobraot operacionOt = new tdetallemanoobraot { costopromedio = 0, fecha = DateTime.Now, idorden = opr.ot_id, idtempario = opr.codigo, tiempo = Convert.ToDecimal(opr.tiempo), idtecnico = idtec, valorunitario = opr.precio_tempario != null ? opr.precio_tempario.Value : 0, pordescuento = 0, poriva = operacion.iva, estado = "1" }; db.tdetallemanoobraot.Add(operacionOt); if (!string.IsNullOrWhiteSpace(opr.referencia)) { icb_referencia referencia = db.icb_referencia.Where(d => d.ref_codigo == opr.referencia).FirstOrDefault(); tencabezaorden orden = db.tencabezaorden.Where(d => d.id == opr.ot_id).FirstOrDefault(); tdetallerepuestosot referenciaOT = new tdetallerepuestosot { costopromedio = 0, idorden = opr.ot_id, idrepuesto = opr.referencia, valorunitario = opr.precio_repuesto != null ? opr.precio_repuesto.Value : 0, pordescto = referencia != null?Convert.ToDecimal(referencia.por_dscto) : 0, poriva = referencia != null?Convert.ToDecimal(referencia.por_iva) : 0, cantidad = opr.cant_sistema, idtercero = orden.tercero, solicitado = false }; db.tdetallerepuestosot.Add(referenciaOT); } db.SaveChanges(); } }
public ActionResult tablas() { int idot = Convert.ToInt32(Request["ot_id"]); bool autorz = Convert.ToInt32(Request["autorz"]) == 1? true: false; List <listaGeneral> sist = sistemas(idot); List <int> sist_B = new List <int>(); List <int> sist_C = new List <int>(); using (DbContextTransaction dbTrn = db.Database.BeginTransaction()) { try { foreach (listaGeneral item in sist) { icb_tsistemas_ot otsis = new icb_tsistemas_ot { ot_id = idot, tsis_id = item.id, tsis_estadovh = Request["sist_" + item.id] }; db.icb_tsistemas_ot.Add(otsis); db.SaveChanges(); if (Request["sist_" + item.id] == "B") { sist_B.Add(item.id); } else if (Request["sist_" + item.id] == "C") { sist_C.Add(item.id); } } List <vw_operaciones_vh> opr_B = db.vw_operaciones_vh.Where(x => x.ot_id == idot && x.tsis_estadovh == "B").ToList(); List <vw_operaciones_vh> opr_C = db.vw_operaciones_vh.Where(x => x.ot_id == idot && x.tsis_estadovh == "C").ToList(); int idtec = tecnicoOt(idot); if (opr_B != null) { inst_operaciones(opr_B, "B", false, idtec); } if (opr_C != null) { inst_operaciones(opr_C, "C", false, idtec); } dbTrn.Commit(); List <vw_operaciones_vh> ls_opr_B = new List <vw_operaciones_vh>(); List <vw_operaciones_vh> ls_opr_C = new List <vw_operaciones_vh>(); var list_opr_B = (from a in db.vw_operaciones_vh join b in db.icb_tinspeccionsistemasvh on new { v1 = a.ot_id, v2 = a.tsope_id } equals new { v1 = b.ot_id.Value, v2 = b.tsope_id } where a.ot_id == idot && a.tsis_estadovh == "B" select new { a.tiempo, mnobra_id = autorz ? 1 : 0, b.tinsvh_id, a.operacion, a.referencia, a.tsis_sistema, a.precio_repuesto, a.tinsvh_resp_sms, a.tinsvh_fecenviosms, a.precio_total_string }).ToList(); // db.vw_operaciones_vh.Where(x => x.ot_id == idot && x.tsis_estadovh == "B").ToList(); //(autorz == true) ? opr_B.Select(x => { x.mnobra_id = 1; return x; }).ToList(): opr_B; var list_opr_C = (from a in db.vw_operaciones_vh join b in db.icb_tinspeccionsistemasvh on new { v1 = a.ot_id, v2 = a.tsope_id } equals new { v1 = b.ot_id.Value, v2 = b.tsope_id } where a.ot_id == idot && a.tsis_estadovh == "C" select new { a.tiempo, mnobra_id = autorz ? 1 : 0, b.tinsvh_id, a.operacion, a.referencia, a.tsis_sistema, a.precio_repuesto, a.tinsvh_resp_sms, a.tinsvh_fecenviosms, a.precio_total_string }).ToList(); // db.vw_operaciones_vh.Where(x => x.ot_id == idot && x.tsis_estadovh == "C").ToList(); //(autorz == true) ? opr_C.Select(x => { x.mnobra_id = 1; return x; }).ToList(): opr_C; foreach (var item in list_opr_B) { ls_opr_B.Add(new vw_operaciones_vh { tiempo = item.tiempo, mnobra_id = item.mnobra_id, tinsvh_id = item.tinsvh_id, operacion = item.operacion, referencia = item.referencia, tsis_sistema = item.tsis_sistema, precio_repuesto = item.precio_repuesto, tinsvh_resp_sms = item.tinsvh_resp_sms, tinsvh_fecenviosms = item.tinsvh_fecenviosms, precio_repuesto_string = item.precio_repuesto != null ? item.precio_repuesto.Value.ToString("N2", new CultureInfo("is-IS")) : "0", precio_total_string = item.precio_total_string }); } foreach (var item in list_opr_C) { ls_opr_C.Add(new vw_operaciones_vh { tiempo = item.tiempo, mnobra_id = item.mnobra_id, tinsvh_id = item.tinsvh_id, operacion = item.operacion, referencia = item.referencia, tsis_sistema = item.tsis_sistema, precio_repuesto = item.precio_repuesto, tinsvh_resp_sms = item.tinsvh_resp_sms, tinsvh_fecenviosms = item.tinsvh_fecenviosms, precio_repuesto_string = item.precio_repuesto != null ? item.precio_repuesto.Value.ToString("N2", new CultureInfo("is-IS")) : "0", precio_total_string = item.precio_total_string }); } ViewBag.opr_B = ls_opr_B.ToList(); ViewBag.opr_C = ls_opr_C.ToList(); //ver ot existente tencabezaorden ot = db.tencabezaorden.Where(d => d.id == idot).FirstOrDefault(); //veo el estado de inspeccion var idestado = db.tcitasestados.Where(d => d.tipoestado == "I").FirstOrDefault(); if (ot != null) { if (ot.fecha_inspeccion == null) { ot.estadoorden = idestado.id; ot.fecha_inspeccion = DateTime.Now; db.Entry(ot).State = EntityState.Modified; db.SaveChanges(); } } } catch (Exception ex) { Exception exp = ex; dbTrn.Rollback(); } } ViewBag.accion = "tabla"; ViewBag.operaciones = operacionesTemp(idot); return(PartialView("tablasOperacion")); }