// GET: Administracion/Contratos_Agentes/Delete/5
        public ActionResult Delete_Agente(int?id)
        {
            Contratos_Agentes contratos_Agentes = db.Contratos_Agentes.Where(x => x.activo && !x.eliminado && x.id_contrato_agente == id).Take(1).FirstOrDefault();

            if (contratos_Agentes == null)
            {
                return(HttpNotFound());
            }
            return(View(contratos_Agentes));
        }
Пример #2
0
        private Contratos_Agentes Nuevo_Agente_Contratado()
        {
            Contratos_Agentes nuevo_contrato = new Contratos_Agentes();

            nuevo_contrato.activo    = true;
            nuevo_contrato.eliminado = false;
            UsuarioTO usuarioTO = Cache.DiccionarioUsuariosLogueados[User.Identity.Name];

            nuevo_contrato.id_usuario_creacion = usuarioTO.usuario.id_usuario;
            nuevo_contrato.fecha_creacion      = DateTime.Now;
            return(nuevo_contrato);
        }
        // GET: Administracion/Contratos_Agentes/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Contratos_Agentes contratos_Agentes = db.Contratos_Agentes.Find(id);

            if (contratos_Agentes == null)
            {
                return(HttpNotFound());
            }
            return(View(contratos_Agentes));
        }
        public ActionResult DeleteConfirmed_RS(int id, String Comentario)
        {
            Contratos_Agentes contratos_Agentes = db.Contratos_Agentes.Find(id);
            UsuarioTO         usuarioTO         = Cache.DiccionarioUsuariosLogueados[User.Identity.Name];

            contratos_Agentes.id_usuario_eliminacion  = usuarioTO.usuario.id_usuario;
            contratos_Agentes.descripcion_eliminacion = Comentario;
            contratos_Agentes.eliminado         = true;
            contratos_Agentes.activo            = false;
            contratos_Agentes.fecha_eliminacion = DateTime.Now;
            db.Entry(contratos_Agentes).State   = EntityState.Modified;
            db.SaveChanges();
            return(RedirectToAction("Details_RS", "Clientes", new { id_Razon_Social = contratos_Agentes.id_razon_social }));
        }
        // GET: Administracion/Contratos_Agentes/Edit/5
        public ActionResult Edit(int?id)
        {
            Contratos_Agentes agente = db.Contratos_Agentes.Where(x => x.activo && !x.eliminado && x.id_contrato_agente == id).Take(1).FirstOrDefault();

            if (agente == null)
            {
                return(HttpNotFound());
            }
            ViewBag.id_cat_tipo_agente            = new SelectList(db.Cat_Tipos_Agente.Where(x => x.activo && !x.eliminado), "id_cat_tipo_agente", "nombre", agente.id_cat_tipo_agente);
            ViewBag.id_ubicacion                  = new SelectList(db.Ubicaciones.Where(x => x.activo && !x.eliminado && x.id_razon_social == agente.id_razon_social).Select(s => new { id_ubicacion = s.id_ubicacion, nombre = s.id_ubicacion + ". " + s.nombre }), "id_ubicacion", "nombre", agente.id_ubicacion);
            ViewBag.id_razon_social_grupo_factura = new SelectList(db.Razon_Social_Grupos_Factura.Where(x => x.activo && !x.eliminado && x.id_razon_social == agente.id_razon_social).Select(s => new { id_razon_social_grupo_factura = s.id_razon_social_grupo_factura, nombre = s.correlativo + ". " + s.nombre }), "id_razon_social_grupo_factura", "nombre", agente.id_razon_social_grupo_factura);
            ViewBag.fecha_inicio                  = agente.fecha_inicio;
            ViewBag.fecha_fin          = agente.fecha_fin;
            ViewBag.id_contrato_agente = id;
            return(View(agente));
        }
        public ActionResult Create([Bind(Include = "id_contrato_agente,id_contrato_servicio,id_cat_tipo_agente,cantidad,costo,precio_venta_unitario,fecha_inicio,fecha_fin,activo,eliminado,id_usuario_creacion,id_usuario_modificacion,id_usuario_eliminacion,fecha_creacion,fecha_modificacion,fecha_eliminacion")] Contratos_Agentes contratos_Agentes)
        {
            if (ModelState.IsValid)
            {
                db.Contratos_Agentes.Add(contratos_Agentes);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.id_usuario_creacion     = new SelectList(db.Usuarios, "id_usuario", "email", contratos_Agentes.id_usuario_creacion);
            ViewBag.id_usuario_eliminacion  = new SelectList(db.Usuarios, "id_usuario", "email", contratos_Agentes.id_usuario_eliminacion);
            ViewBag.id_usuario_modificacion = new SelectList(db.Usuarios, "id_usuario", "email", contratos_Agentes.id_usuario_modificacion);
            ViewBag.id_cat_tipo_agente      = new SelectList(db.Cat_Tipos_Agente, "id_cat_tipo_agente", "nombre", contratos_Agentes.id_cat_tipo_agente);
            ViewBag.id_contrato_servicio    = new SelectList(db.Contratos_Servicios, "id_contrato_servicio", "id_contrato_servicio", contratos_Agentes.id_contrato_servicio);
            return(View(contratos_Agentes));
        }
        public ActionResult Contrato_Agente(Contratos_Servicios contrato, Contratos_Agentes agentes, int id_facturacion)
        {
            var Fecha_Proceso_factura = db.Procesos_Facturacion.Find(id_facturacion).fecha_proceso;

            try
            {
                UsuarioTO usuarioTO = Cache.DiccionarioUsuariosLogueados[User.Identity.Name];

                var razon_social = db.Razones_Sociales.Find(contrato.id_razon_social);
                Procesos_Facturacion_Detalle facturacion_detalle = new Procesos_Facturacion_Detalle();
                facturacion_detalle.id_usuario_creacion = usuarioTO.usuario.id_usuario;
                facturacion_detalle.fecha_creacion      = DateTime.Now;
                facturacion_detalle.activo    = true;
                facturacion_detalle.eliminado = false;
                facturacion_detalle.id_cat_tipo_facturacion = contrato.id_cat_tipo_facturacion.Value;
                facturacion_detalle.id_cliente             = db.Razones_Sociales.Find(contrato.id_razon_social).id_cliente;
                facturacion_detalle.id_razon_social        = agentes.id_razon_social;
                facturacion_detalle.id_ubicacion           = agentes.id_ubicacion;
                facturacion_detalle.id_proceso_facturacion = id_facturacion;
                facturacion_detalle.id_cat_estado_proceso_facturacion_detalle = (int)Catalogos.Estado_Proceso_Facturacion_Detalle.Activo;
                facturacion_detalle.id_razon_social_grupo_factura             = agentes.id_razon_social_grupo_factura;
                facturacion_detalle.id_cat_tipo_agente = agentes.id_cat_tipo_agente;
                facturacion_detalle.descripcion        = db.Cat_Tipos_Agente.Find(agentes.id_cat_tipo_agente).nombre;
                facturacion_detalle.cantidad           = agentes.cantidad;
                facturacion_detalle.costo = agentes.costo;
                facturacion_detalle.precio_venta_unitario = agentes.precio_venta_unitario;
                facturacion_detalle.fecha_inicio          = agentes.fecha_inicio;
                facturacion_detalle.fecha_fin             = agentes.fecha_fin;
                db.Procesos_Facturacion_Detalle.Add(facturacion_detalle);
                db.SaveChanges();

                return(RedirectToAction("Facturacion_Detalle", new { id = id_facturacion }));
            }
            catch (Exception)
            {
                ViewBag.Mes                = Fecha_Proceso_factura.ToString("MMMM", cultura_Chapina).ToUpper();
                ViewBag.Anio               = Fecha_Proceso_factura.Year;
                ViewBag.id_cliente         = new SelectList(db.Clientes.Where(x => x.activo && !x.eliminado).OrderBy(x => x.nombre).Select(x => new { id = x.id_cliente, nombre = x.nombre }), "id", "nombre");
                ViewBag.id_cat_tipo_agente = new SelectList(db.Cat_Tipos_Agente.Where(x => x.activo && !x.eliminado).OrderBy(x => x.nombre).Select(x => new { id = x.id_cat_tipo_agente, nombre = x.nombre }), "id", "nombre");
                ViewBag.id = id_facturacion;
                return(RedirectToAction("Contrato_Agente", new { id = id_facturacion }));
            }
        }
        public ActionResult Edit(Contratos_Agentes contratos_Agentes)
        {
            if (ModelState.IsValid)
            {
                UsuarioTO         usuarioTO            = Cache.DiccionarioUsuariosLogueados[User.Identity.Name];
                Contratos_Agentes Temp_contrato_agente = db.Contratos_Agentes.Find(contratos_Agentes.id_contrato_agente);
                Temp_contrato_agente.cantidad = contratos_Agentes.cantidad;
                Temp_contrato_agente.costo    = contratos_Agentes.costo;
                Temp_contrato_agente.precio_venta_unitario         = contratos_Agentes.precio_venta_unitario;
                Temp_contrato_agente.id_cat_tipo_agente            = contratos_Agentes.id_cat_tipo_agente;
                Temp_contrato_agente.fecha_inicio                  = contratos_Agentes.fecha_inicio;
                Temp_contrato_agente.fecha_fin                     = contratos_Agentes.fecha_fin;
                Temp_contrato_agente.id_usuario_modificacion       = usuarioTO.usuario.id_usuario;
                Temp_contrato_agente.id_razon_social_grupo_factura = contratos_Agentes.id_razon_social_grupo_factura;
                Temp_contrato_agente.id_ubicacion                  = contratos_Agentes.id_ubicacion;
                Temp_contrato_agente.fecha_modificacion            = DateTime.Now;
                db.Entry(Temp_contrato_agente).State               = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Details", "Contratos_Servicios", new { id = Temp_contrato_agente.id_contrato_servicio }));
            }

            return(View(contratos_Agentes));
        }
Пример #9
0
        public ActionResult Create(Contratos_Servicios contratos_Servicios, int id_razon_social)
        {
            UsuarioTO usuarioTO = Cache.DiccionarioUsuariosLogueados[User.Identity.Name];

            using (DbContextTransaction tran = db.Database.BeginTransaction())
            {
                try
                {
                    foreach (var item_agente in Request.Form.AllKeys.Where(x => x.Contains("id_agente_")).Select(x => x.Replace("id_agente_", "")))
                    {
                        int temp_agente   = Convert.ToInt32(Request["id_agente_" + item_agente]);
                        int temp_cantidad = Convert.ToInt32(Request["cant_agt_" + item_agente]);
                        if (!String.IsNullOrEmpty(Request["cant_agt_" + item_agente]))
                        {
                            temp_cantidad = Convert.ToInt32(Request["cant_agt_" + item_agente]);
                        }

                        Decimal temp_costo = 0;
                        if (!String.IsNullOrEmpty(Request["costo_unitario_agt_" + item_agente]))
                        {
                            temp_costo = Convert.ToDecimal(Request["costo_unitario_agt_" + item_agente].ToString().Replace(",", "").Replace(".", ","));
                        }

                        Decimal temp_venta = 0;
                        if (!String.IsNullOrEmpty(Request["precio_venta_unitario_agt_" + item_agente]))
                        {
                            temp_venta = Convert.ToDecimal(Request["precio_venta_unitario_agt_" + item_agente].ToString().Replace(",", "").Replace(".", ","));
                        }
                        DateTime temp_inicio = Convert.ToDateTime(Request["fecha_inicio_agt_" + item_agente]);
                        if (!String.IsNullOrEmpty(Request["fecha_inicio_agt_" + item_agente]))
                        {
                            temp_inicio = Convert.ToDateTime(Request["fecha_inicio_agt_" + item_agente]);
                        }
                        DateTime?temp_fin = null;
                        if (!String.IsNullOrEmpty(Request["fecha_fin_agt_" + item_agente]))
                        {
                            temp_fin = Convert.ToDateTime(Request["fecha_fin_agt_" + item_agente]);
                        }
                        int?temp_agrupacion = null;
                        if (!String.IsNullOrEmpty(Request["id_agrupacion_agt_" + item_agente]))
                        {
                            temp_agrupacion = Convert.ToInt32(Request["id_agrupacion_agt_" + item_agente]);
                        }
                        int?temp_ubicacion = null;
                        if (!String.IsNullOrEmpty(Request["id_ubicacion_agt_" + item_agente]))
                        {
                            temp_ubicacion = Convert.ToInt32(Request["id_ubicacion_agt_" + item_agente]);
                        }
                        Contratos_Agentes agente_con = Nuevo_Agente_Contratado();
                        agente_con.id_razon_social    = id_razon_social;
                        agente_con.id_cat_tipo_agente = temp_agente;
                        agente_con.cantidad           = temp_cantidad;
                        agente_con.costo = temp_costo;
                        agente_con.precio_venta_unitario         = temp_venta;
                        agente_con.fecha_inicio                  = temp_inicio;
                        agente_con.fecha_fin                     = temp_fin;
                        agente_con.id_contrato_servicio          = contratos_Servicios.id_contrato_servicio;
                        agente_con.id_razon_social_grupo_factura = temp_agrupacion;
                        agente_con.id_ubicacion                  = temp_ubicacion;
                        db.Contratos_Agentes.Add(agente_con);
                    }
                    foreach (var item_servicio in Request.Form.AllKeys.Where(x => x.Contains("id_cat_otro_servicio_")).Select(x => x.Replace("id_cat_otro_servicio_", "")))
                    {
                        int temp_servicio = Convert.ToInt32(Request["id_cat_otro_servicio_" + item_servicio]);
                        int temp_cantidad = Convert.ToInt32(Request["cant_serv_" + item_servicio]);
                        if (!String.IsNullOrEmpty(Request["cant_serv_" + item_servicio]))
                        {
                            temp_cantidad = Convert.ToInt32(Request["cant_serv_" + item_servicio]);
                        }

                        Decimal temp_costo = 0;
                        if (!String.IsNullOrEmpty(Request["costo_serv_" + item_servicio]))
                        {
                            temp_costo = Convert.ToDecimal(Request["costo_serv_" + item_servicio].ToString().Replace(",", "").Replace(".", ","));
                        }

                        Decimal temp_venta = 0;
                        if (!String.IsNullOrEmpty(Request["venta_serv_" + item_servicio]))
                        {
                            temp_venta = Convert.ToDecimal(Request["venta_serv_" + item_servicio].ToString().Replace(",", "").Replace(".", ","));
                        }
                        DateTime temp_inicio = Convert.ToDateTime(Request["fecha_inicio_serv_" + item_servicio]);
                        if (!String.IsNullOrEmpty(Request["fecha_inicio_serv_" + item_servicio]))
                        {
                            temp_inicio = Convert.ToDateTime(Request["fecha_inicio_serv_" + item_servicio]);
                        }
                        DateTime?temp_fin = null;
                        if (!String.IsNullOrEmpty(Request["fecha_fin_serv_" + item_servicio]))
                        {
                            temp_fin = Convert.ToDateTime(Request["fecha_fin_serv_" + item_servicio]);
                        }
                        int?temp_agrupacion = null;
                        if (!String.IsNullOrEmpty(Request["id_agrupacion_serv_" + item_servicio]))
                        {
                            temp_agrupacion = Convert.ToInt32(Request["id_agrupacion_serv_" + item_servicio]);
                        }
                        int?temp_ubicacion = null;
                        if (!String.IsNullOrEmpty(Request["id_ubicacion_serv_" + item_servicio]))
                        {
                            temp_ubicacion = Convert.ToInt32(Request["id_ubicacion_serv_" + item_servicio]);
                        }
                        Contratos_Otros_Servicios servicio_con = Nuevo_Servicio_Contratado();
                        servicio_con.id_razon_social      = id_razon_social;
                        servicio_con.id_cat_otro_servicio = temp_servicio;
                        servicio_con.cantidad             = temp_cantidad;
                        servicio_con.fecha_inicio         = temp_inicio;
                        servicio_con.fecha_fin            = temp_fin;
                        servicio_con.costo = temp_costo;
                        servicio_con.precio_venta_unitario         = temp_venta;
                        servicio_con.id_contrato_servicio          = contratos_Servicios.id_contrato_servicio;
                        servicio_con.id_razon_social_grupo_factura = temp_agrupacion;
                        servicio_con.id_ubicacion = temp_ubicacion;
                        db.Contratos_Otros_Servicios.Add(servicio_con);
                    }
                    db.SaveChanges();
                    tran.Commit();
                    return(RedirectToAction("Details", new { id = contratos_Servicios.id_contrato_servicio }));
                }
                catch (Exception)
                {
                    ViewBag.servicios = db.Contratos_Servicios.Where(x => x.activo && !x.eliminado).Where(x => x.id_razon_social == id_razon_social && x.Cat_Tipos_Facturacion.ciclica == true &&
                                                                                                          (x.id_cat_estado_servicio_contratado != (int)Catalogos.Estado_Contrato_Servicio.Finalizado ||
                                                                                                           x.id_cat_estado_servicio_contratado != (int)Catalogos.Estado_Contrato_Servicio.Cancelado)).ToList();
                    var temp_razon_social = db.Razones_Sociales.Find(id_razon_social);
                    ViewBag.razon_social = temp_razon_social;
                    ViewBag.cliente      = temp_razon_social.Clientes.nombre;
                    //ContextMessage msg = new ContextMessage(ContextMessage.Warning, "Error con la conexión al servidor. Datos no guardados.");
                    tran.Rollback();
                    //msg.ReturnUrl = Url.Action("Create");
                    //TempData[User.Identity.Name] = msg;
                    return(RedirectToAction("Create", new { id = contratos_Servicios.id_contrato_servicio }));
                }
            }
        }