public ActionResult DeleteConfirmed(int id) { t_boxingscan t_boxingscan = db.t_boxingscan.Find(id); db.t_boxingscan.Remove(t_boxingscan); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit([Bind(Include = "folio,lote,wo,pn,cajas_total,cajas_scan,fecha")] t_boxingscan t_boxingscan) { if (ModelState.IsValid) { db.Entry(t_boxingscan).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(t_boxingscan)); }
public ActionResult Create([Bind(Include = "folio,lote,wo,pn,cajas_total,cajas_scan,fecha")] t_boxingscan t_boxingscan) { if (ModelState.IsValid) { db.t_boxingscan.Add(t_boxingscan); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(t_boxingscan)); }
// GET: t_boxingscan/Delete/5 public ActionResult Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } t_boxingscan t_boxingscan = db.t_boxingscan.Find(id); if (t_boxingscan == null) { return(HttpNotFound()); } return(View(t_boxingscan)); }
public ActionResult loteScan(string id, string linea, int treshold) { int ultimo_folio = 0; t_boxingscan queryultimofolio = new t_boxingscan(); var fecha_menos21 = System.DateTime.Now.AddDays(-21); var queryultimofolios = db.t_boxingscan.Where(x => x.linea == linea && x.fecha > fecha_menos21).OrderByDescending(x => x.folio).ToList(); if (queryultimofolios.Any()) { queryultimofolio = queryultimofolios.First <t_boxingscan>(); ultimo_folio = queryultimofolio.folio; if (queryultimofolio.tmuerto_razon == "4") { queryultimofolio = queryultimofolios.ElementAt(1); } } else { queryultimofolio.lote = "0"; } string[] infoScan = new string[9]; t_boxingscan newboxingscan = new t_boxingscan(); //si el ultimo lote es el mismo no ir a la base de datos de as400 if (id != queryultimofolio.lote) { string[] infoLote = new string[5]; infoScan[0] = "1"; // var ddlUsuarios = db.t_usuarios.Where(x => x.usuario == id).ToList(); OdbcConnection myCon = new OdbcConnection(); string sConnection = "Driver=iSeries Access ODBC Driver;System=AS400SYS;uid=inqmex;pwd=inqmex;"; myCon.ConnectionString = sConnection; try { myCon.Open(); Console.WriteLine("Connection successful!"); string sQuery = "SELECT FCSTRHDR.SHWONO WO, FCSTRHDR.SHLOT LOT, FCSTRHDR.SHSPN PN, FCSTRHDR.SHSQTY CASES, FKITMSTR.IMSTCK KPC FROM B20E386T.CSM400MFG.FCSTRHDR FCSTRHDR INNER JOIN B20E386T.KBM400MFG.FKITMSTR FKITMSTR ON FCSTRHDR.SHSPN = FKITMSTR.IMPN AND FCSTRHDR.SHSCO = FKITMSTR.IMCO WHERE(FCSTRHDR.SHLOT = '" + id + "' AND FCSTRHDR.SHSCO = '686')"; OdbcCommand myCom = new OdbcCommand(sQuery, myCon); OdbcDataReader myReader; myReader = myCom.ExecuteReader(); while (myReader.Read()) { infoLote[0] = myReader[0].ToString(); infoLote[1] = myReader[1].ToString(); infoLote[2] = myReader[2].ToString(); infoLote[3] = myReader[3].ToString(); infoLote[4] = myReader[4].ToString(); //Console.WriteLine(myReader[0].ToString() + myReader[1].ToString() + myReader[2].ToString() + " " + myReader[3].ToString()); } } catch (OdbcException ex) { Console.WriteLine(ex.Message); return(View()); } myCon.Close(); newboxingscan.folio = ultimo_folio + 1; newboxingscan.wo = infoLote[0].Replace(" ", String.Empty); newboxingscan.lote = infoLote[1].Replace(" ", String.Empty); newboxingscan.pn = infoLote[2].Replace(" ", String.Empty); newboxingscan.cajas_total = Convert.ToInt16(infoLote[3]); newboxingscan.cajas_scan = Convert.ToDecimal(1.0 / Convert.ToInt16(infoLote[4])); newboxingscan.kits_por_caja = Convert.ToInt16(infoLote[4]); newboxingscan.fecha = System.DateTime.Now; newboxingscan.linea = linea; } else { infoScan[0] = "0"; newboxingscan.folio = ultimo_folio + 1; newboxingscan.wo = queryultimofolio.wo; newboxingscan.lote = queryultimofolio.lote; newboxingscan.pn = queryultimofolio.pn; newboxingscan.cajas_total = queryultimofolio.cajas_total; newboxingscan.cajas_scan = queryultimofolio.cajas_scan; newboxingscan.fecha = System.DateTime.Now; newboxingscan.linea = linea; newboxingscan.kits_por_caja = queryultimofolio.kits_por_caja; } //tiempomuerto int tiempomuerto = 0; var fechacomparar = queryultimofolio.fecha; string tiempomuerto_razon = "0"; //1.- Arranque, 2.- nonprogrammed, 3.- cambiowo, 4.- Cierre if (queryultimofolio.lote == "0") // si no hubo ningun registro de esta linea antes { fechacomparar = new DateTime(System.DateTime.Now.Year, System.DateTime.Now.Month, System.DateTime.Now.Day, 6, 0, 0); tiempomuerto_razon = "1"; } else { if (queryultimofolio.fecha.Value.Date != DateTime.Now.Date) // si el ultimo escaneo no fue hoy { fechacomparar = new DateTime(System.DateTime.Now.Year, System.DateTime.Now.Month, System.DateTime.Now.Day, 6, 0, 0); // hora de inicio de turno tiempomuerto_razon = "1"; } } TimeSpan diff = Convert.ToDateTime(newboxingscan.fecha) - Convert.ToDateTime(fechacomparar); double diffm = diff.TotalMinutes; int diffms = Convert.ToInt32(Math.Floor(diffm)); if (queryultimofolio.lote != id) { tiempomuerto = diffms; } else { if (diffms >= treshold) { tiempomuerto = diffms; } } newboxingscan.tmuerto = tiempomuerto; if (tiempomuerto > 0) { if (tiempomuerto_razon != "1") { if (queryultimofolio.lote == newboxingscan.lote) { newboxingscan.tmuerto_razon = "2"; } else { newboxingscan.tmuerto_razon = "3"; } } else { newboxingscan.tmuerto_razon = "1"; } } else { newboxingscan.tmuerto_razon = "0"; } double totalkits = Math.Round(Convert.ToDouble(newboxingscan.cajas_total * newboxingscan.kits_por_caja)); infoScan[1] = newboxingscan.wo; infoScan[2] = Convert.ToString(newboxingscan.cajas_total); infoScan[3] = Convert.ToString(totalkits); int sumkits = db.t_boxingscan.Where(x => x.wo == newboxingscan.wo && x.linea == linea).Count() + 1; decimal sumcajas = Math.Round(Convert.ToDecimal(sumkits * newboxingscan.cajas_scan), 2); infoScan[6] = Convert.ToString(Math.Round(Convert.ToDouble((sumcajas / newboxingscan.cajas_total) * 100))) + "%"; infoScan[5] = Convert.ToString(sumkits); infoScan[4] = Convert.ToString(sumcajas); if (sumkits > totalkits) { newboxingscan.wo_completa = "1"; infoScan[7] = "1"; infoScan[6] = "100%"; infoScan[4] = infoScan[2]; infoScan[5] = infoScan[3]; } else { newboxingscan.wo_completa = "0"; infoScan[7] = "0"; } if (ModelState.IsValid) { db.t_boxingscan.Add(newboxingscan); db.SaveChanges(); } infoScan[8] = Convert.ToString(newboxingscan.kits_por_caja); return(Json(infoScan, JsonRequestBehavior.AllowGet)); }