public JsonResult Crear(string codigo, string cantidad, string conventa) { try { var rol = Session["Loged_usrfile_rol"]; if ("C".Equals(rol) || "M".Equals(rol)) { if (!String.IsNullOrWhiteSpace(codigo)) { string codcia = Session["Loged_usrfile_ciafile"].ToString(); string sucursal = Session["Loged_usrfile_sucursal"].ToString(); conc conc = db.conc.Where(a => a.CODCIA.Equals(codcia) && a.SUCURSAL.Equals(sucursal) && a.CODIGO.Equals(codigo)).FirstOrDefault(); if (conc == null) { return(Json(new { respuesta = Msg.AttrNoExiste(Msg.CODCONSUMO) }, JsonRequestBehavior.AllowGet)); } if (conc.FACTURANDO.Equals("N")) { string coditem = GenCod.CodItem(db, codcia, conc.CODIGO); cond cond = new cond(); cond.ITEM = coditem; cond.CODCIA = codcia; cond.CODIGO = codigo; cond.CONVENTA = conventa; cond.CANTIDAD = Convert.ToDecimal(cantidad); preconven preconven = db.preconven.Where(a => a.conventa.Equals(cond.CONVENTA) && a.codcia.Equals(codcia) && a.sucursal.Equals(sucursal) && a.state.Equals("V")).FirstOrDefault(); if (preconven == null) { return(Json(new { respuesta = "ERROR: No existe un precio asignado" }, JsonRequestBehavior.AllowGet)); } cond.PREUNI = preconven.precio; cond.TOTAL = cond.PREUNI * cond.CANTIDAD; db.cond.Add(cond); db.SaveChanges(); return(Json(new { respuesta = Msg.OpExitosa, item = cond.ITEM }, JsonRequestBehavior.AllowGet)); } else { return(Json(new { respuesta = Msg.ADCPF }, JsonRequestBehavior.AllowGet)); } } else { return(Json(new { respuesta = Msg.AttrNoNuloVacio(Msg.CODUND) }, JsonRequestBehavior.AllowGet)); } } else { return(Json(new { respuesta = Msg.PermisoDenegado }, JsonRequestBehavior.AllowGet)); } } catch (System.Data.EntityException ex) { return(Json(new { respuesta = "ERROR: " + ex }, JsonRequestBehavior.AllowGet)); } catch (Exception e) { return(Json(new { respuesta = "ERROR: " + e }, JsonRequestBehavior.AllowGet)); } }
public JsonResult Guardar(string codigo, string items) { try { var rol = Session["Loged_usrfile_rol"]; if ("C".Equals(rol) || "M".Equals(rol)) { if (!String.IsNullOrWhiteSpace(codigo)) { if (!String.IsNullOrWhiteSpace(items)) { string codcia = Session["Loged_usrfile_ciafile"].ToString(); string sucursal = Session["Loged_usrfile_sucursal"].ToString(); List <cond> listaItems; try { listaItems = JsonConvert.DeserializeObject <List <cond> >(items); } catch (JsonException ex) { return(Json(new { respuesta = "ERROR: El detalle de consumo no tinene un formato json v\u00E1lido\nDetalle de error:" + ex.Message }, JsonRequestBehavior.AllowGet)); } codigo = codigo.Trim(); conc conc = db.conc.Where(a => a.CODCIA.Equals(codcia) && a.SUCURSAL.Equals(sucursal) && a.CODIGO.Equals(codigo)).FirstOrDefault(); if (conc == null) { return(Json(new { respuesta = Msg.AttrNoExiste(Msg.CODCONSUMO) }, JsonRequestBehavior.AllowGet)); } else { var lista = db.cond.Where(a => a.CODCIA.Equals(codcia) && a.CODIGO.Equals(conc.CODIGO)).ToList(); foreach (var cond in lista) { db.cond.Remove(cond); } foreach (var item in listaItems) { if (item != null) { item.ITEM = item.ITEM.PadLeft(4, '0'); item.CODCIA = codcia; item.CODIGO = codigo; preconven preconven = db.preconven.Where(a => a.conventa.Equals(item.CONVENTA) && a.codcia.Equals(codcia) && a.sucursal.Equals(sucursal) && a.state.Equals("V")).FirstOrDefault(); if (preconven == null) { return(Json(new { respuesta = "ERROR: No existe un precio asignado" }, JsonRequestBehavior.AllowGet)); } item.PREUNI = preconven.precio; item.TOTAL = item.PREUNI * item.CANTIDAD; db.cond.Add(item); } else { return(Json(new { respuesta = "ERROR: Detalle de consumo nulo, operaci\u00F3n cancelada" }, JsonRequestBehavior.AllowGet)); } } db.SaveChanges(); return(Json(new { respuesta = Msg.OpExitosa }, JsonRequestBehavior.AllowGet)); } } else { return(Json(new { respuesta = Msg.AttrNoNuloVacio("El detalle del consumo") }, JsonRequestBehavior.AllowGet)); } } else { return(Json(new { respuesta = Msg.AttrNoNuloVacio(Msg.CODCONSUMO) }, JsonRequestBehavior.AllowGet)); } } else { return(Json(new { respuesta = Msg.PermisoDenegado }, JsonRequestBehavior.AllowGet)); } } catch (System.Data.EntityException ex) { return(Json(new { respuesta = "ERROR: " + ex }, JsonRequestBehavior.AllowGet)); } catch (Exception e) { return(Json(new { respuesta = "ERROR: " + e }, JsonRequestBehavior.AllowGet)); } }