Exemplo n.º 1
0
        public JsonResult GuardarFacturas(int IdFacturas, int frIdEmpresa, int Cliente, string NombreProyecto, string fecha_inicio, string fecha_fin, decimal Costo, int Moneda, int CantidadFacturas, int TipoCambio, int IVA, int estado, string Comentarios)
        {
            var proyecto = new ProyectosDTO();

            //if (IdFacturas != 0) proyecto.Id_Proyectos = IdFacturas;
            //proyecto.Id_Empresa = frIdEmpresa;
            //proyecto.Id_Clientes_Proyectos = Cliente;
            //proyecto.Nombre_Proyectos = NombreProyecto;
            //proyecto.Numero_Facturas_Proyectos = CantidadFacturas;
            //proyecto.Fecha_Ini_Proyectos = Convert.ToDateTime(fecha_inicio);
            //if (fecha_fin != string.Empty) proyecto.Fecha_Fin_Proyectos = Convert.ToDateTime(fecha_fin);
            //proyecto.Costo_Proyectos = Costo;
            //proyecto.Id_Tipo_Cambio_Proyectos = TipoCambio;
            //proyecto.Id_Moneda_Proyectos = Moneda;
            //proyecto.Id_IVA_Proyectos = IVA;
            //proyecto.Comentarios_Proyecto = Comentarios;
            //proyecto.Estado = estado == 1;

            var gdProyecto = new ProyectosData().GuardarProyecto(proyecto);

            if (gdProyecto.Code != 0)
            {
                return(Json(new { success = false, message = gdProyecto.Message }, JsonRequestBehavior.AllowGet));
            }

            return(Json(new { success = true }, JsonRequestBehavior.AllowGet));
        }
Exemplo n.º 2
0
        public JsonResult GuardarProyecto(int idProyecto, int frIdEmpresa, int Cliente, string NombreProyecto, string fecha_inicio, string fecha_fin, decimal Costo, int Moneda, int CantidadFacturas, int TipoCambio, int IVA, int estado, string Comentarios, string tablaJSON)
        {
            var proyecto = new ProyectosDTO();

            if (idProyecto != 0)
            {
                proyecto.Id_Proyectos = idProyecto;
            }
            proyecto.Id_Empresa                = frIdEmpresa;
            proyecto.Id_Clientes_Proyectos     = Cliente;
            proyecto.Nombre_Proyectos          = NombreProyecto;
            proyecto.Numero_Facturas_Proyectos = CantidadFacturas;
            proyecto.Fecha_Ini_Proyectos       = Convert.ToDateTime(fecha_inicio);
            if (fecha_fin != string.Empty)
            {
                proyecto.Fecha_Fin_Proyectos = Convert.ToDateTime(fecha_fin);
            }
            proyecto.Costo_Proyectos          = Costo;
            proyecto.Id_Tipo_Cambio_Proyectos = TipoCambio;
            proyecto.Id_Moneda_Proyectos      = Moneda;
            proyecto.Id_IVA_Proyectos         = IVA;
            proyecto.Comentarios_Proyecto     = Comentarios;
            proyecto.Estado = estado == 1;

            var factLts = new List <FacturasDTO>();

            #region JSN Facturas

            var     jArray = JArray.Parse(tablaJSON);
            JObject a      = JObject.Parse(jArray.First().ToString());

            foreach (var prod in ((JArray)a.SelectToken("ltsFacturas")))
            {
                var facturaJ = new FacturasDTO();
                facturaJ.IdFactura         = Convert.ToInt16(((JValue)prod.SelectToken("IdFactura")).Value);
                facturaJ.Monto_Factura     = Convert.ToDecimal(((JValue)prod.SelectToken("Monto")).Value);
                facturaJ.Fecha_fin_Factura = Convert.ToDateTime(((JValue)prod.SelectToken("Fecha")).Value);
                facturaJ.IdCliente         = Cliente;
                facturaJ.IdEmpresa         = frIdEmpresa;
                if (idProyecto != 0)
                {
                    facturaJ.IdProyecto = idProyecto;
                }
                facturaJ.C_Id_IVA         = IVA;
                facturaJ.C_Id_Moneda      = Moneda;
                facturaJ.C_Id_Tipo_Cambio = TipoCambio;
                facturaJ.Tipo_Factura     = "PR";
                var EstadoFact = ((JValue)prod.SelectToken("Estado")).Value.ToString();
                facturaJ.Id_Estado_Factura = Convert.ToInt16(EstadoFact.Equals("SI") ? 2 :(EstadoFact.Equals("NO") ? 1 : 3));
                if (((JValue)prod.SelectToken("NoFactura")).Value.ToString() != "0")
                {
                    facturaJ.No_Factura = Convert.ToInt16(((JValue)prod.SelectToken("NoFactura")).Value);
                }

                factLts.Add(facturaJ);
            }

            #endregion

            proyecto.facturas = factLts;

            var gdProyecto = new ProyectosData().GuardarProyecto(proyecto);

            if (gdProyecto.Code != 0)
            {
                return(Json(new { success = false, message = gdProyecto.Message }, JsonRequestBehavior.AllowGet));
            }

            return(Json(new { success = true }, JsonRequestBehavior.AllowGet));
        }
Exemplo n.º 3
0
        /// <summary>
        /// Guardar Proyecto
        /// </summary>
        /// <returns>Lista de tipo asignacion</returns>
        public MethodResponseDTO <int> GuardarProyecto(ProyectosDTO proyecto)
        {
            using (var context = new DB_9F97CF_CatarsysSGCEntities())
            {
                try
                {
                    var response = new MethodResponseDTO <int>()
                    {
                        Code = 0, Result = 1
                    };


                    if (proyecto.Id_Proyectos == 0)
                    {
                        var proyectoDB = Mapper.Map <Proyectos>(proyecto);
                        context.Proyectos.Add(proyectoDB);
                    }
                    else
                    {
                        var asig = context.Proyectos.SingleOrDefault(x => x.Id_Proyectos == proyecto.Id_Proyectos);

                        asig.Id_Proyectos              = proyecto.Id_Proyectos;
                        asig.Id_Clientes_Proyectos     = proyecto.Id_Clientes_Proyectos;
                        asig.Id_Empresa                = proyecto.Id_Empresa;
                        asig.Nombre_Proyectos          = proyecto.Nombre_Proyectos;
                        asig.Fecha_Ini_Proyectos       = proyecto.Fecha_Ini_Proyectos;
                        asig.Fecha_Fin_Proyectos       = proyecto.Fecha_Fin_Proyectos;
                        asig.Costo_Proyectos           = proyecto.Costo_Proyectos;
                        asig.Id_Moneda_Proyectos       = proyecto.Id_Moneda_Proyectos;
                        asig.Numero_Facturas_Proyectos = proyecto.Numero_Facturas_Proyectos;
                        asig.Id_Tipo_Cambio_Proyectos  = proyecto.Id_Tipo_Cambio_Proyectos;
                        asig.Id_IVA_Proyectos          = proyecto.Id_IVA_Proyectos;
                        asig.Estado = proyecto.Estado;
                    }
                    context.SaveChanges();


                    var _FacturasData = new FacturasData();

                    var BrFacturas = _FacturasData.BorrarFacturas(proyecto.Id_Proyectos, 1);

                    if (BrFacturas.Code != 0)
                    {
                        return(new MethodResponseDTO <int> {
                            Code = -100, Result = 0, Message = "Borrar Facturas: " + BrFacturas.Message
                        });
                    }

                    var Facturas = _FacturasData.GuardarFacturas(proyecto.facturas);

                    if (Facturas.Code != 0)
                    {
                        return(new MethodResponseDTO <int> {
                            Code = -100, Result = 0, Message = "Guardar Facturas: " + Facturas.Message
                        });
                    }


                    return(response);
                }
                catch (DbEntityValidationException e)
                {
                    string Result = string.Empty;
                    foreach (var eve in e.EntityValidationErrors)
                    {
                        Result += string.Format("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:", eve.Entry.Entity.GetType().Name, eve.Entry.State);
                        foreach (var ve in eve.ValidationErrors)
                        {
                            Result += string.Format("- Property: \"{0}\", Error: \"{1}\"", ve.PropertyName, ve.ErrorMessage);
                        }
                    }
                    Result += ("Code: -100, Mensaje: " + e.Message + ", InnerException: " + (e.InnerException != null ? e.InnerException.Message : ""));
                    return(new MethodResponseDTO <int> {
                        Code = -100, Result = 0, Message = e.Message
                    });
                }
                catch (Exception ex)
                {
                    return(new MethodResponseDTO <int> {
                        Code = -100, Result = 0, Message = "Guardar Proyecto: " + ex.Message
                    });
                }
            }
        }