Ejemplo n.º 1
0
 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)); }
 }
Ejemplo n.º 2
0
 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)); }
 }