Example #1
0
        public ActionResult AprobarRequisicion(FormCollection fc)
        {
            using (var db = new sgopEntities())
            {
                try
                {
                    //Guarda los valores enviados en las variables
                    int    noRequisicion = Convert.ToInt32(fc["noRequisicion"]);
                    int    idLicitacion  = Convert.ToInt32(fc["idLicitacion"]);
                    int    idRequisicion = Convert.ToInt32(fc["idRequisicion"]);
                    int    idConcepto    = Convert.ToInt32(fc["idConcepto"]);
                    int    idMaterial    = Convert.ToInt32(fc["idMaterial"]);
                    Rangos rango         = new Rangos();

                    //Busca la requisición parcial para actualizarla a aprobada
                    var reqParcial = db.requisicionesParciales.Where(rp => rp.idRequisicion == idRequisicion &&
                                                                     rp.noRequisicion == noRequisicion &&
                                                                     rp.idConcepto == idConcepto &&
                                                                     rp.idMaterial == idMaterial &&
                                                                     rp.cantidad > 0 && rp.aprobada.Equals("0")).First();
                    int idRequisicionParcial = reqParcial.idRequisicionParcial;
                    reqParcial.aprobada        = "1";
                    db.Entry(reqParcial).State = System.Data.Entity.EntityState.Modified;
                    db.SaveChanges();

                    int noDcoumento = rango.getSiguienteID("FACTURACLIENTE");//Obtiene el noDocumento siguiente

                    //Agrega la requisicion a la tabla control pagos
                    controlPagos tCP = new controlPagos();
                    tCP.idRequisicionParcial = idRequisicionParcial;
                    tCP.noDocumento          = noDcoumento;
                    tCP.idRequisicion        = idRequisicion;
                    tCP.clDocumento          = "F";
                    tCP.fechaDocumento       = DateTime.Now;
                    tCP.usuarioCreacion      = 1;//Cambiar cuando se agregue la sesión

                    db.controlPagos.Add(tCP);
                    db.SaveChanges();

                    db.Dispose();
                    return(Content(noDcoumento.ToString()));
                }
                catch (Exception e)
                {
                    db.Dispose();
                    return(Content("error"));
                }
            }
        }
        public ActionResult Cambiar_Pass(string user, string pass, string cpass)
        {
            try
            {
                using (sgopEntities db = new sgopEntities())
                {
                    try
                    {
                        if (pass == cpass)
                        {
                            var oUser = db.usuarios.Where(d => d.usuario == user).First();
                            oUser.password = pass;

                            db.Entry(oUser).State = System.Data.Entity.EntityState.Modified;
                            db.SaveChanges();
                            ViewBag.info = 1;
                            return(Json(new { a = true, b = "La Contraseña se actualizo correctamente." }));
                        }


                        return(Json(new { a = false, b = "La Contraseña NO coincide." }));
                    }
                    catch (Exception)
                    {
                        return(Json(new { a = false, b = "Hubo un error, intentelo mas tarde." }));
                    }
                }
            }
            catch (Exception)
            {
                return(Json(new { a = false, b = "Hubo un error, intentelo mas tarde." }));
            }
        } //Ya quedo
        public ActionResult CargaDocs(IEnumerable <HttpPostedFileBase> files, int noEstimacion, int idRequisicion, int idConcepto)
        {
            Models.SubirDocViewModel subir = new Models.SubirDocViewModel();
            foreach (var item in files)
            {
                if (item.ContentLength > 0)
                {
                    string path = Server.MapPath("~/Res/");
                    path += item.FileName;
                    subir.Subir(path, item);
                    bool bande = subir.confirmacion;
                    using (sgopEntities db = new sgopEntities())
                    {
                        var oFoto = new archivosFotograficos();
                        oFoto.noEstimacion  = noEstimacion;
                        oFoto.idRequisicion = idRequisicion;
                        oFoto.idConcepto    = idConcepto;
                        oFoto.foto          = item.FileName;

                        db.archivosFotograficos.Add(oFoto);
                        db.SaveChanges();
                    }
                }
            }
            return(Content(""));
        }
Example #4
0
        public ActionResult Editar(FormCollection fc)
        {
            int    filas    = Convert.ToInt32(fc["Edtotalfi"]);
            string idEst    = "EdidEstimacion";
            string cantidad = "est";
            int    id       = 0;

            try
            {
                using (sgopEntities db = new sgopEntities())
                {
                    for (int i = 0; i < filas; i++)
                    {
                        idEst    = idEst + i.ToString();
                        cantidad = cantidad + i.ToString();
                        id       = Convert.ToInt32(fc[idEst]);
                        var oTabla = db.estimaciones.Find(Convert.ToInt32(fc[idEst]));
                        oTabla.cantidad = Convert.ToDouble(fc[cantidad]);

                        db.Entry(oTabla).State = System.Data.Entity.EntityState.Modified;
                        db.SaveChanges();
                        idEst    = "EdidEstimacion";
                        cantidad = "est";
                    }
                }
                return(Content("1"));
            }
            catch (Exception e)
            {
                throw new Exception(e.Message);
            }
        }
Example #5
0
        public ActionResult Agregar(FormCollection fc)
        {
            int    filas      = Convert.ToInt32(fc["totalfi"]);
            string clave      = "opt";
            string estimacion = "est";

            try
            {
                using (sgopEntities db = new sgopEntities())
                {
                    for (int i = 0; i < filas; i++)
                    {
                        clave      = clave + i.ToString();
                        estimacion = estimacion + i.ToString();
                        var oEstimacion = new estimaciones();
                        oEstimacion.idConcepto    = Convert.ToInt32(fc[clave]);
                        oEstimacion.idRequisicion = Convert.ToInt32(fc["idReq"]);
                        oEstimacion.noEstimacion  = Convert.ToInt32(fc["estMax"]) + 1;
                        oEstimacion.cantidad      = Convert.ToInt32(fc[estimacion]);

                        db.estimaciones.Add(oEstimacion);
                        db.SaveChanges();
                        clave      = "opt";
                        estimacion = "est";
                    }
                }

                return(Content("1"));
            }
            catch (Exception e)
            {
                throw new Exception(e.Message);
            }
        }
        public ActionResult crearLicitacion(FormCollection fc)
        {
            Rangos rangos            = new Rangos();
            int    idLicitacion      = rangos.getSiguienteID("LICITACIONES");
            string noLicitacion      = fc["noLicitacion"];
            int    idMunicipio       = Convert.ToInt32(fc["idMunicipio"]);
            string localidad         = fc["localidad"];
            string nombreObra        = fc["nombreObra"];
            string fechaVisita       = fc["fechaVisita"].ToString();
            string fechaAclaraciones = fc["fechaAclaraciones"];
            string fechaPropuesta    = fc["fechaPropuesta"];
            string fechaFallo        = fc["fechaFallo"];
            int    idEmpresa         = Convert.ToInt32(fc["idEmpresa"]);

            //Conectamos  BD para Llenar Table "Licitaciones"
            using (sgopEntities bd = new sgopEntities())
            {  //Formulario
                licitaciones tlicitaciones = new licitaciones();
                tlicitaciones.idLicitacion = idLicitacion;
                tlicitaciones.noLicitacion = noLicitacion;
                tlicitaciones.idMunicipio  = idMunicipio;
                tlicitaciones.localidad    = localidad;
                tlicitaciones.nombreObra   = nombreObra;
                tlicitaciones.idEmpresa    = idEmpresa;

                //Convertir Stringo TO date
                string   iDate  = fechaVisita;
                DateTime oDate  = Convert.ToDateTime(iDate);
                string   iDate1 = fechaAclaraciones;
                DateTime oDate1 = Convert.ToDateTime(iDate1);
                string   iDate2 = fechaPropuesta;
                DateTime oDate2 = Convert.ToDateTime(iDate2);
                string   iDate3 = fechaFallo;
                DateTime oDate3 = Convert.ToDateTime(iDate3);
                // Sustituimos la conversion
                tlicitaciones.fechaVisita       = oDate;
                tlicitaciones.fechaAclaraciones = oDate1;
                tlicitaciones.fechaPropuesta    = oDate2;
                tlicitaciones.fechaFallo        = oDate3;
                //Las opciones que no estan en formulario
                tlicitaciones.fechaModificacion = DateTime.Now;

                tlicitaciones.idEstatus           = 1;
                tlicitaciones.actaVisita          = "";
                tlicitaciones.actaAclaraciones    = "";
                tlicitaciones.actaPropuesta       = "";
                tlicitaciones.actaFallo           = "";
                tlicitaciones.idRequisicion       = 0;
                tlicitaciones.fechaCreacion       = DateTime.Now;
                tlicitaciones.usuarioCreacion     = 1;
                tlicitaciones.usuarioModificacion = 1;

                bd.licitaciones.Add(tlicitaciones);
                bd.SaveChanges();
                bd.Dispose();
                return(Json(new { a = true, b = "Guardado Con Exito" }));
            }
        } //Mandar ah llenar tabla licitaciones
        public ActionResult Guarda_Licitacion(FormCollection fc)
        {
            int idLicitacion = Convert.ToInt32(fc["idLicitacion"]);

            string noLicitacion = fc["noLicitacion"];
            int    idMunicipio  = Convert.ToInt32(fc["idMunicipio"]);
            string localidad    = fc["localidad"];
            //string nombreObra        = fc["nombreObra"];
            string fechaVisita       = fc["fechaVisita"];
            string fechaAclaraciones = fc["fechaAclaraciones"];
            int    idEmpresa         = Convert.ToInt32(fc["idEmpresa"]);
            int    idEstatus         = Convert.ToInt32(fc["idEstatus"]);
            string fechaPropuesta    = fc["fechaPropuesta"];
            string fechaFallo        = fc["fechaFallo"];

            //Conectamos  BD para Llenar Table "Licitaciones"
            using (sgopEntities bd = new sgopEntities())
            {  //Formulario
                var tlicitaciones = bd.licitaciones.Find(idLicitacion);
                tlicitaciones.noLicitacion = noLicitacion;
                tlicitaciones.idMunicipio  = idMunicipio;
                tlicitaciones.localidad    = localidad;
                //tlicitaciones.nombreObra   = nombreObra;
                tlicitaciones.idEmpresa = idEmpresa;
                tlicitaciones.idEstatus = idEstatus;

                //Convertir Stringo TO date
                string   iDate  = fechaVisita;
                DateTime oDate  = Convert.ToDateTime(iDate);
                string   iDate1 = fechaAclaraciones;
                DateTime oDate1 = Convert.ToDateTime(iDate1);
                string   iDate2 = fechaPropuesta;
                DateTime oDate2 = Convert.ToDateTime(iDate2);
                string   iDate3 = fechaFallo;
                DateTime oDate3 = Convert.ToDateTime(iDate3);

                // Sustituimos la conversion de fechas de formulario
                tlicitaciones.fechaVisita       = oDate;
                tlicitaciones.fechaAclaraciones = oDate1;
                tlicitaciones.fechaPropuesta    = oDate2;
                tlicitaciones.fechaFallo        = oDate3;

                //Las opciones que no estan en formulario
                tlicitaciones.fechaModificacion = DateTime.Now;
                //* tlicitaciones.fechaPropuesta = DateTime.Now;
                //tlicitaciones.fechaFallo = DateTime.Now;

                ///bd.licitaciones.Add(tlicitaciones);
                bd.Entry(tlicitaciones).State = System.Data.Entity.EntityState.Modified;
                bd.SaveChanges();
                bd.Dispose();

                return(Json(new { a = true, b = "Guardado Con Exito" }));
            }
            //-------------------------------------------------------
        }//recibe el FORMULARIO y confirma la modificacion
        public ActionResult Cambiar_Status(string user)
        {
            try
            {
                using (sgopEntities db = new sgopEntities())
                {
                    try
                    {
                        var oUser = db.usuarios.Where(d => d.usuario == user).First();
                        if (oUser.bloqueado == "1")
                        {
                            oUser.bloqueado       = "0";
                            db.Entry(oUser).State = System.Data.Entity.EntityState.Modified;
                            db.SaveChanges();

                            return(Json(new { a = true, b = "El Usuario ha sido desbloqueado." }));
                        }
                        else
                        {
                            oUser.bloqueado       = "1";
                            db.Entry(oUser).State = System.Data.Entity.EntityState.Modified;
                            db.SaveChanges();
                            return(Json(new { a = false, b = "Se ha bloqueado al usuario " + user.ToUpper() + "." }));
                        }
                    }
                    catch (Exception)
                    {
                        return(Json(new { a = false, b = "Hubo un error, intentelo mas tarde." }));
                    }
                }
            }
            catch (Exception)
            {
                return(Json(new { a = false, b = "Hubo un error, intentelo mas tarde." }));
            }
        } //Ya quedo
Example #9
0
 public ActionResult BorrarDocumentos(int idProyecto, string[] array)
 {
     try
     {
         using (var db = new sgopEntities())
         {
             BorrarArchivo oBorrar   = new BorrarArchivo();
             var           oProyecto = db.proyectos.Find(idProyecto);
             foreach (var i in array)
             {
                 if (i == oProyecto.polizaVicios)
                 {
                     int    x    = i.IndexOf(".");
                     string temp = i.Substring(x);
                     string path = @"~\Res\Documentos\"; //Cambiar Ruta
                     path += oProyecto.idLicitacion + "-02" + temp;
                     oBorrar.borrar(path);
                     oProyecto.polizaVicios = null;
                 }
                 if (i == oProyecto.polizaAnticipo)
                 {
                     int    x    = i.IndexOf(".");
                     string temp = i.Substring(x);
                     string path = @"~\Res\Documentos\";
                     path += oProyecto.idLicitacion + "-01" + temp;
                     oBorrar.borrar(path);
                     oProyecto.polizaAnticipo = null;
                 }
                 if (i == oProyecto.policaCumplimiento)
                 {
                     int    x    = i.IndexOf(".");
                     string temp = i.Substring(x);
                     string path = @"~\Res\Documentos\";
                     path += oProyecto.idLicitacion + "-03" + temp;
                     oBorrar.borrar(path);
                     oProyecto.policaCumplimiento = null;
                 }
             }
             db.Entry(oProyecto).State = System.Data.Entity.EntityState.Modified;
             db.SaveChanges();
         }
         return(Json(new { a = true, b = "Se eliminaron los documentos exitosamente!." }));
     }
     catch (Exception)
     {
         return(Json(new { a = false, b = "Ocurrio un error, al borrar." }));
     }
 }
        public ActionResult EliminarArch(FormCollection fc)
        {
            var nombre = Request.MapPath("~/Res/" + fc["name"]);

            try
            {
                using (sgopEntities db = new sgopEntities())
                {
                    archivosFotograficos arch = db.archivosFotograficos.Find(Convert.ToInt32(fc["num"]));
                    db.archivosFotograficos.Remove(arch);
                    db.SaveChanges();
                }
                System.IO.File.Delete(nombre);
                return(Content("1"));
            }
            catch (Exception e)
            {
                throw new Exception(e.Message);
            }
        }
Example #11
0
        public ActionResult compensarPagos(FormCollection formularioBusqueda)
        {
            int          noDocumento        = Convert.ToInt32(formularioBusqueda["noDocumento"].ToString());
            controlPagos documentoCompensar = new controlPagos();

            using (var conexion = new sgopEntities())
            {
                try
                {
                    documentoCompensar = conexion.controlPagos.Where(
                        auxControlPagos => auxControlPagos.noDocumento == noDocumento).First();
                    Rangos       rango = new Rangos();
                    controlPagos documentoCompensador = new controlPagos();
                    documentoCompensador.idRequisicionParcial = documentoCompensar.idRequisicionParcial;
                    documentoCompensador.noDocumento          = rango.getSiguienteID("EGRESOS");
                    documentoCompensador.idRequisicion        = documentoCompensar.idRequisicion;
                    documentoCompensador.clDocumento          = "E";
                    documentoCompensador.importe             = Convert.ToDouble(formularioBusqueda["importe"].ToString());
                    documentoCompensador.fechaDocumento      = DateTime.Now;
                    documentoCompensador.docCompensacion     = documentoCompensador.noDocumento;
                    documentoCompensador.fechaCompensacion   = documentoCompensador.fechaDocumento;
                    documentoCompensador.usuarioCreacion     = 1;
                    documentoCompensador.usuarioCompensacion = 1;

                    documentoCompensar.importe             = documentoCompensador.importe * -1;
                    documentoCompensar.docCompensacion     = documentoCompensador.noDocumento;
                    documentoCompensar.fechaCompensacion   = documentoCompensador.fechaDocumento;
                    documentoCompensar.usuarioCompensacion = 1;

                    conexion.controlPagos.Add(documentoCompensador);
                    conexion.Entry(documentoCompensar).State = System.Data.Entity.EntityState.Modified;
                    conexion.SaveChanges();

                    return(RedirectToAction("index"));
                }
                catch (Exception ex)
                {
                    return(Content("Error al consultar la base de datos 123"));
                }
            }
        }
Example #12
0
        public ActionResult ModificarProyecto(EditarProyectoViewModel model, HttpPostedFileBase PolizaAnticipo, HttpPostedFileBase PolizaVicios, HttpPostedFileBase PolizaCumplimiento)
        {
            try
            {
                bool      flag   = false;
                SubirDocs oSubir = new SubirDocs();
                using (var db = new sgopEntities())
                {
                    var oProyecto = db.proyectos.Find(model.idProyecto);

                    if (oProyecto.idEstatus == Int32.Parse(model.Status) && oProyecto.fechaContrato == model.fechaContrato && oProyecto.fechaInicioContrato == model.fechaInicioContrato &&
                        oProyecto.fechaFinalContrato == model.fechaFinalContrato && oProyecto.fechaInicioReal == model.fechaInicioReal && oProyecto.fechaFinalReal == model.fechaFinalReal &&
                        PolizaVicios == null && PolizaCumplimiento == null && PolizaAnticipo == null)
                    {
                        ViewBag.message = "No hay nada que actualizar!";
                        ViewBag.status  = "Info!";
                        flag            = true;
                    }


                    if (PolizaAnticipo != null)
                    {
                        int    i    = PolizaAnticipo.FileName.IndexOf(".");
                        string temp = PolizaAnticipo.FileName.Substring(i);
                        string path = Server.MapPath("~/Res/Documentos/");
                        path += model.idLicitacion + "-01" + temp;
                        oSubir.Subir(path, PolizaAnticipo);
                        oProyecto.polizaAnticipo = PolizaAnticipo.FileName;
                    }

                    if (PolizaVicios != null)
                    {
                        int    i    = PolizaVicios.FileName.IndexOf(".");
                        string temp = PolizaVicios.FileName.Substring(i);
                        string path = Server.MapPath("~/Res/Documentos/");
                        path += model.idLicitacion + "-02" + temp;
                        oSubir.Subir(path, PolizaVicios);
                        oProyecto.polizaVicios = PolizaVicios.FileName;
                    }

                    if (PolizaCumplimiento != null)
                    {
                        int    i    = PolizaCumplimiento.FileName.IndexOf(".");
                        string temp = PolizaCumplimiento.FileName.Substring(i);
                        string path = Server.MapPath("~/Res/Documentos/");
                        path += model.idLicitacion + "-03" + temp;
                        oSubir.Subir(path, PolizaCumplimiento);
                        oProyecto.policaCumplimiento = PolizaCumplimiento.FileName;
                    }

                    BorrarArchivo oBorrar = new BorrarArchivo();

                    oProyecto.idEstatus           = Int32.Parse(model.Status);
                    oProyecto.fechaContrato       = model.fechaContrato;
                    oProyecto.fechaInicioContrato = model.fechaInicioContrato;
                    oProyecto.fechaFinalContrato  = model.fechaFinalContrato;
                    oProyecto.fechaInicioReal     = model.fechaInicioReal;
                    oProyecto.fechaFinalReal      = model.fechaFinalReal;



                    oProyecto.usuarioModificacion = 1; //Session["User"].ToString();
                    oProyecto.fechaModificacion   = DateTime.Today;


                    if (flag == false)
                    {
                        db.Entry(oProyecto).State = System.Data.Entity.EntityState.Modified;
                        db.SaveChanges();
                    }



                    if (oProyecto.polizaAnticipo != null)
                    {
                        model.polizaAnticipo = true;
                    }
                    else
                    {
                        model.polizaAnticipo = false;
                    }
                    if (oProyecto.polizaVicios != null)
                    {
                        model.polizaVicios = true;
                    }
                    else
                    {
                        model.polizaVicios = false;
                    }
                    if (oProyecto.policaCumplimiento != null)
                    {
                        model.polizaCumplimiento = true;
                    }
                    else
                    {
                        model.polizaCumplimiento = false;
                    }

                    if (oProyecto.polizaAnticipo != null)
                    {
                        model.NpolizaAnticipo = oProyecto.polizaAnticipo;
                    }
                    else
                    {
                        model.NpolizaAnticipo = null;
                    }
                    if (oProyecto.polizaVicios != null)
                    {
                        model.NpolizaVicios = oProyecto.polizaVicios;
                    }
                    else
                    {
                        model.NpolizaVicios = null;
                    }
                    if (oProyecto.policaCumplimiento != null)
                    {
                        model.NpolizaCumplimiento = oProyecto.policaCumplimiento;
                    }
                    else
                    {
                        model.NpolizaCumplimiento = null;
                    }

                    var oEstatus = db.catalogoEstatus.ToArray();

                    List <SelectListItem> opciones = new List <SelectListItem>();

                    foreach (var i in oEstatus)
                    {
                        SelectListItem selListItem = new SelectListItem()
                        {
                            Text = i.descripcion, Value = i.idEstatus.ToString()
                        };
                        opciones.Add(selListItem);
                    }

                    foreach (var opcion in opciones)
                    {
                        if (opcion.Value.Contains(oProyecto.idEstatus.ToString()))
                        {
                            opcion.Selected = true;
                        }
                    }
                    ViewBag.opciones = opciones;
                }

                if (flag == true)
                {
                    return(View(model));
                }

                ViewBag.message = "Se actualizaron los datos exitosamente!";
                ViewBag.status  = "Exito!";


                return(View(model));
            }
            catch (Exception)
            {
                ViewBag.message = "Ocurrio un error al actualizar los datos!.";
                ViewBag.status  = "Error!";
                return(View(model));
            }
        }
Example #13
0
        public ActionResult Subir_Proyecto(int Estatus, ProyectoViewModel model, HttpPostedFileBase PolizaAnticipo, HttpPostedFileBase PolizaVicios, HttpPostedFileBase PolizaCumplimiento)
        {
            model.fechaContrato.ToString("dd-MMM-yyyy");

            SubirDocs oSubir = new SubirDocs();

            if (!ModelState.IsValid)
            {
                return(View("Crear_Proyecto", model));
            }
            else
            {
                string polizaAnticipo = null;
                if (PolizaAnticipo != null)
                {
                    string path = Server.MapPath("~/Res/Documentos/");
                    path += model.idLicitacion + "-01-" + PolizaAnticipo.FileName;
                    oSubir.Subir(path, PolizaAnticipo);
                    polizaAnticipo = PolizaAnticipo.FileName;
                }
                string polizaVicios = null;
                if (PolizaVicios != null)
                {
                    string path = Server.MapPath("~/Res/Documentos/");
                    path += model.idLicitacion + "-02-" + PolizaVicios.FileName;
                    oSubir.Subir(path, PolizaVicios);
                    polizaVicios = PolizaVicios.FileName;
                }
                string polizaCumplimiento = null;
                if (PolizaCumplimiento != null)
                {
                    string path = Server.MapPath("~/Res/Documentos/");
                    path += model.idLicitacion + "-03-" + PolizaCumplimiento.FileName;
                    oSubir.Subir(path, PolizaCumplimiento);
                    polizaCumplimiento = PolizaCumplimiento.FileName;
                }


                using (var db = new sgopEntities())
                {
                    proyectos oProyecto = new proyectos();

                    oProyecto.idLicitacion       = model.idLicitacion;
                    oProyecto.fechaContrato      = Convert.ToDateTime(model.fechaContrato.ToString("dd-MMM-yyyy"));
                    oProyecto.polizaAnticipo     = polizaAnticipo;
                    oProyecto.polizaVicios       = polizaVicios;
                    oProyecto.policaCumplimiento = polizaCumplimiento;
                    oProyecto.idEstatus          = Estatus;
                    //Falta plazo dias.
                    oProyecto.fechaInicioContrato = Convert.ToDateTime(model.fechaInicioContrato.ToString("dd-MMM-yyyy"));
                    oProyecto.fechaFinalContrato  = Convert.ToDateTime(model.fechaFinalContrato.ToString("dd-MMM-yyyy"));
                    oProyecto.fechaInicioReal     = Convert.ToDateTime(model.fechaInicioReal.ToString("dd-MMM-yyyy"));
                    oProyecto.fechaFinalReal      = Convert.ToDateTime(model.fechaFinalReal.ToString("dd-MMM-yyyy"));
                    //Falta Acta entrega y Jefe de Obra.
                    oProyecto.fechaCreacion   = DateTime.Today;
                    oProyecto.usuarioCreacion = 1;   //Session["Id"].ToString();

                    db.proyectos.Add(oProyecto);
                    db.SaveChanges();
                }
                if (oSubir.confirmacion != true)
                {
                    ViewBag.message = "Ocurrio un error al cargar algun documento.";
                    ViewBag.status  = "Error!";
                }
                else
                {
                    ViewBag.message = "Se agrego el usuario exitosamente!";
                    ViewBag.status  = "Exito!";
                }

                return(View("Crear_Proyecto"));
            }
        }
Example #14
0
        public ActionResult GuardaRequisicion(FormCollection fc)
        {
            MethodEncrypt me = new MethodEncrypt();
            List <RequisicionesParcialesViewModel> lstReqParciales = new List <RequisicionesParcialesViewModel>();
            int    idLicitacion      = 0;
            int    idRequisicion     = 0;
            int    hayRequisiciones  = 0;
            int    noReqInt          = 1;
            JArray jsonRequisiciones = null;

            //VERIFICA QUE EXISTA LA LICITACION Y LA REQUISICION
            using (var db = new sgopEntities())
            {
                try
                {
                    idLicitacion = Convert.ToInt32(fc["idLicitacion"]);
                    db.licitaciones.Where(lic => lic.idLicitacion == idLicitacion).First();

                    idRequisicion = Convert.ToInt32(fc["idRequisicion"]);
                    db.licitaciones.Where(lic => lic.idLicitacion == idLicitacion && lic.idRequisicion == idRequisicion).First();
                    db.Dispose();
                }
                catch (Exception)
                {
                    db.Dispose();
                    return(Content("noExisteLicitacionReq"));
                }
            }

            //VERIFICA SI ES REQUISICION NUEVA O YA EXISTENTE
            if (fc["noRequisicion"] != null && fc["noRequisicion"].Equals("nueva"))
            {
                jsonRequisiciones = JArray.Parse(fc["requisicionesAgregadas"].ToString());

                if (jsonRequisiciones.Count == 0)
                {
                    return(Content("nadaParaGuardar"));
                }

                using (var db = new sgopEntities())
                {
                    //Verifica que haya al menos un material por agregar
                    for (int i = 0; i < jsonRequisiciones.Count; i++)
                    {
                        if (jsonRequisiciones[i]["agregado"].ToString().Equals("1"))
                        {
                            hayRequisiciones = 1;
                        }
                    }
                    if (hayRequisiciones == 0)
                    {
                        return(Content("nadaParaGuardar"));
                    }

                    lstReqParciales = (from reqp in db.requisicionesParciales
                                       orderby reqp.noRequisicion descending
                                       where reqp.idRequisicion == idRequisicion
                                       select new RequisicionesParcialesViewModel
                    {
                        noRequisicion = reqp.noRequisicion
                    }).Distinct().ToList();
                    foreach (var item in lstReqParciales)
                    {
                        noReqInt += 1;
                    }

                    for (int i = 0; i < jsonRequisiciones.Count; i++)
                    {
                        //Si no se eliminó de la tabla, agrega la requisicion
                        if (jsonRequisiciones[i]["agregado"].ToString().Equals("1"))
                        {
                            int    idConcepto = Convert.ToInt32(jsonRequisiciones[i]["idConcepto"]);
                            int    idMaterial = Convert.ToInt32(jsonRequisiciones[i]["idMaterial"]);
                            double cantidad   = Convert.ToDouble(jsonRequisiciones[i]["cantidad"]);

                            requisicionesParciales tReqParc = new requisicionesParciales();

                            tReqParc.idRequisicion = idRequisicion;
                            tReqParc.noRequisicion = noReqInt;
                            tReqParc.idConcepto    = idConcepto;
                            tReqParc.idMaterial    = idMaterial;
                            tReqParc.cantidad      = cantidad;
                            tReqParc.aprobada      = "0";

                            db.requisicionesParciales.Add(tReqParc);
                            db.SaveChanges();
                        }
                    }
                }
            }
            else
            {
                jsonRequisiciones = JArray.Parse(fc["requisicionesAgregadas"].ToString());

                if (jsonRequisiciones.Count == 0)
                {
                    return(Content("nadaParaGuardar"));
                }

                try
                {
                    noReqInt = Convert.ToInt32(fc["noRequisicion"]);
                }
                catch (Exception)
                {
                    return(Content("noExisteLicitacionReq"));
                }

                using (var db = new sgopEntities())
                {
                    for (int i = 0; i < jsonRequisiciones.Count; i++)
                    {
                        int    idConcepto = Convert.ToInt32(jsonRequisiciones[i]["idConcepto"]);
                        int    idMaterial = Convert.ToInt32(jsonRequisiciones[i]["idMaterial"]);
                        double cantidad   = Convert.ToDouble(jsonRequisiciones[i]["cantidad"]);

                        //Si existe la requisicion parcial con el idRequisicion, noRequisicion, idConcepto y idMaterial enviados
                        //Actualiza la requisicion
                        try
                        {
                            //Si no se eliminó de la tabla, actualiza la cantidad de la requisicion
                            if (jsonRequisiciones[i]["agregado"].ToString().Equals("1"))
                            {
                                var reqParc = db.requisicionesParciales.Where(rp => rp.idRequisicion == idRequisicion && rp.noRequisicion == noReqInt && rp.idConcepto == idConcepto && rp.idMaterial == idMaterial).First();

                                if (reqParc.aprobada.Equals("0"))
                                {
                                    reqParc.cantidad        = cantidad;
                                    db.Entry(reqParc).State = System.Data.Entity.EntityState.Modified;
                                    db.SaveChanges();
                                }
                            }
                            //Si se eliminó de la tabla, pone la requisicion en 0
                            else
                            {
                                try
                                {
                                    var reqParc = db.requisicionesParciales.Where(rp => rp.idRequisicion == idRequisicion && rp.noRequisicion == noReqInt && rp.idConcepto == idConcepto && rp.idMaterial == idMaterial).First();
                                    if (reqParc.aprobada.Equals("0"))
                                    {
                                        reqParc.cantidad        = 0;
                                        db.Entry(reqParc).State = System.Data.Entity.EntityState.Modified;
                                        db.SaveChanges();
                                    }
                                }
                                catch (Exception)
                                {
                                }
                            }
                        }
                        //Si no existe, agrega una nueva requisicion
                        catch (Exception)
                        {
                            requisicionesParciales tReqParc = new requisicionesParciales();

                            tReqParc.idRequisicion = idRequisicion;
                            tReqParc.noRequisicion = noReqInt;
                            tReqParc.idConcepto    = idConcepto;
                            tReqParc.idMaterial    = idMaterial;
                            tReqParc.cantidad      = cantidad;
                            tReqParc.aprobada      = "0";

                            db.requisicionesParciales.Add(tReqParc);
                            db.SaveChanges();
                        }
                    }
                }
            }
            return(Content("requisicionGuardada"));
        }
        public ActionResult Borrar_Doc(FormCollection fc)
        {
            JArray json = JArray.Parse(fc[0].ToString());
            //int idLicitacion = Convert.ToInt32(fc["idLicitacion"]);
            //string id_licitacion = json[0]["id_licitacion"].ToString();
            int    id_licitacion = Convert.ToInt32(json[0]["id_licitacion"].ToString());
            string visita        = json[0]["visita"].ToString();
            string aclaracion    = json[0]["aclaracion"].ToString();
            string propuesta     = json[0]["propuesta"].ToString();
            string fallo         = json[0]["fallo"].ToString();
            //****MSJ
            int bande = 0;
            //***
            string visitaBorra     = "";
            string aclaracionBorra = "";
            string propuestaBorra  = "";
            string falloBorra      = "";
            //  SubirDoc subir = new SubirDoc();
            // subir.Subir(path, doc1);
            BorrarArchivoJ borrar = new BorrarArchivoJ();

            using (var db = new sgopEntities())
            {
                var olicitacion = db.licitaciones.Find(id_licitacion);

                if (visita.Equals("1"))
                {
                    visitaBorra = olicitacion.actaVisita;
                    borrar.borrar(visitaBorra);
                    olicitacion.actaVisita = "";
                    bande = 1;
                }
                if (aclaracion.Equals("1"))
                {
                    aclaracionBorra = olicitacion.actaAclaraciones;
                    borrar.borrar(aclaracionBorra);
                    olicitacion.actaAclaraciones = "";
                    bande = 1;
                }
                if (propuesta.Equals("1"))
                {
                    propuestaBorra = olicitacion.actaPropuesta;
                    borrar.borrar(propuestaBorra);
                    olicitacion.actaPropuesta = "";
                    bande = 1;
                }
                if (fallo.Equals("1"))
                {
                    falloBorra = olicitacion.actaFallo;
                    borrar.borrar(falloBorra);
                    olicitacion.actaFallo = "";
                    bande = 1;
                }

                db.Entry(olicitacion).State = System.Data.Entity.EntityState.Modified;
                db.SaveChanges();
                db.Dispose();
            }

            if (bande == 0)
            {
                return(Json(new { a = false, b = "Gu" }));
            }
            else
            {
                return(Json(new { a = true, b = "Gu" }));
            }

            //return RedirectToAction("Index");
            // return Content("");
        }
        public ActionResult AltaUser(UserViewModel model, HttpPostedFileBase imagen)
        {
            SubirImagen oSubir = new SubirImagen();

            if (!ModelState.IsValid)
            {
                return(View(model));
            }
            else
            {
                var nameImg = "";
                if (imagen != null)
                {
                    int    i    = imagen.FileName.IndexOf(".");
                    string temp = imagen.FileName.Substring(i);
                    string path = Server.MapPath("~/Res/img/fotos/");
                    path += Session["User"].ToString() + temp;
                    oSubir.Subir(path, imagen);
                    nameImg = imagen.FileName;
                }
                else
                {
                    nameImg = "default.png";
                }

                using (var db = new sgopEntities())
                {
                    usuarios oUser = new usuarios();
                    oUser.usuario         = model.usuario;
                    oUser.password        = model.password;
                    oUser.nombre          = model.nombre;
                    oUser.apellidoMaterno = model.apellidoMaterno;
                    oUser.apellidoPaterno = model.apellidoPaterno;
                    oUser.correo          = model.correo;
                    oUser.imagenPerfil    = nameImg;
                    oUser.bloqueado       = "0";
                    oUser.fechaCreacion   = DateTime.Today;
                    oUser.usuarioCreacion = Session["User"].ToString();
                    db.usuarios.Add(oUser);
                    db.SaveChanges();

                    var con = db.usuarios.Where(aux => aux.usuario == model.usuario).First();
                    relacionSistemasRoles oRol = new relacionSistemasRoles();
                    if (model.Constructora != 0)
                    {
                        oRol.idUsuario = con.idUsuario;
                        oRol.idSistema = 1;
                        oRol.idRol     = model.Constructora;
                        db.relacionSistemasRoles.Add(oRol);
                        db.SaveChanges();
                    }
                    if (model.Comercializadora != 0)
                    {
                        oRol.idUsuario = con.idUsuario;
                        oRol.idSistema = 2;
                        oRol.idRol     = model.Comercializadora;
                        db.relacionSistemasRoles.Add(oRol);
                        db.SaveChanges();
                    }
                    if (model.Inmobiliaria != 0)
                    {
                        oRol.idUsuario = con.idUsuario;
                        oRol.idSistema = 3;
                        oRol.idRol     = model.Inmobiliaria;
                        db.relacionSistemasRoles.Add(oRol);
                        db.SaveChanges();
                    }
                }
                if (oSubir.confirmacion != true)
                {
                    ViewBag.message = "Ocurrio un error al cargar la imagen.";
                    ViewBag.status  = "Error!";
                }
                else
                {
                    ViewBag.message = "Se agrego el usuario exitosamente!";
                    ViewBag.status  = "Exito!";
                }

                return(View());
            }
        }
        public ActionResult Subir_Proyecto(int Estatus, ProyectoViewModel model, HttpPostedFileBase PolizaAnticipo, HttpPostedFileBase PolizaVicios, HttpPostedFileBase PolizaCumplimiento)
        {
            model.fechaContrato.ToString("dd-MMM-yyyy");

            SubirDocs oSubir = new SubirDocs();

            if (!ModelState.IsValid)
            {
                return(View("Crear_Proyecto", model));
            }
            else
            {
                string polizaAnticipo = null;
                if (PolizaAnticipo != null)
                {
                    int    i    = PolizaAnticipo.FileName.IndexOf(".");
                    string temp = PolizaAnticipo.FileName.Substring(i);
                    string path = Server.MapPath("~/Res/Documentos/");
                    path += model.idLicitacion + "-01-" + temp;
                    oSubir.Subir(path, PolizaAnticipo);
                    polizaAnticipo = PolizaAnticipo.FileName;
                }
                string polizaVicios = null;
                if (PolizaVicios != null)
                {
                    int    i    = PolizaVicios.FileName.IndexOf(".");
                    string temp = PolizaVicios.FileName.Substring(i);
                    string path = Server.MapPath("~/Res/Documentos/");
                    path += model.idLicitacion + "-02-" + temp;
                    oSubir.Subir(path, PolizaVicios);
                    polizaVicios = PolizaVicios.FileName;
                }
                string polizaCumplimiento = null;
                if (PolizaCumplimiento != null)
                {
                    int    i    = PolizaCumplimiento.FileName.IndexOf(".");
                    string temp = PolizaCumplimiento.FileName.Substring(i);
                    string path = Server.MapPath("~/Res/Documentos/");
                    path += model.idLicitacion + "-03-" + temp;
                    oSubir.Subir(path, PolizaCumplimiento);
                    polizaCumplimiento = PolizaCumplimiento.FileName;
                }

                int IdProyecto = -1;
                using (var db = new sgopEntities())
                {
                    proyectos oProyecto = new proyectos();

                    if (oProyecto.idLicitacion == model.idLicitacion)
                    {
                        TempData["messag"] = "Ya existe un Proyecto para esa Licitacion!";
                        TempData["stat"]   = "Error!!";
                        return(RedirectToAction("MenuProyectos"));
                    }

                    Rangos oRango     = new Rangos();
                    int    idProyecto = oRango.getSiguienteID("PROYECTOS");
                    IdProyecto                   = idProyecto;
                    oProyecto.idProyecto         = idProyecto;
                    oProyecto.idLicitacion       = model.idLicitacion;
                    oProyecto.fechaContrato      = Convert.ToDateTime(model.fechaContrato.ToString("dd-MMM-yyyy"));
                    oProyecto.polizaAnticipo     = polizaAnticipo;
                    oProyecto.polizaVicios       = polizaVicios;
                    oProyecto.policaCumplimiento = polizaCumplimiento;
                    oProyecto.idEstatus          = Estatus;
                    //Falta plazo dias.
                    oProyecto.fechaInicioContrato = Convert.ToDateTime(model.fechaInicioContrato.ToString("dd-MMM-yyyy"));
                    oProyecto.fechaFinalContrato  = Convert.ToDateTime(model.fechaFinalContrato.ToString("dd-MMM-yyyy"));
                    oProyecto.fechaInicioReal     = Convert.ToDateTime(model.fechaInicioReal.ToString("dd-MMM-yyyy"));
                    oProyecto.fechaFinalReal      = Convert.ToDateTime(model.fechaFinalReal.ToString("dd-MMM-yyyy"));
                    //Falta Acta entrega y Jefe de Obra.
                    oProyecto.fechaCreacion   = DateTime.Today;
                    oProyecto.usuarioCreacion = 1;   //Session["Id"].ToString();

                    db.proyectos.Add(oProyecto);
                    db.SaveChanges();
                }
                if (PolizaAnticipo != null && PolizaVicios != null && PolizaCumplimiento != null)
                {
                    if (oSubir.confirmacion != true)
                    {
                        TempData["messag"] = "Ocurrio un error al cargar algun documento.";
                        TempData["stat"]   = "Error!";
                        return(RedirectToAction("MenuProyectos"));
                    }
                    else
                    {
                        TempData["messag"] = "Se agrego el proyecto exitosamente!";
                        TempData["stat"]   = "Exito!";
                        return(RedirectToAction("MenuProyectos"));
                    }
                }
                else
                {
                    TempData["messag"] = "Se agrego el proyecto exitosamente!";
                    TempData["stat"]   = "Exito!";
                    return(RedirectToAction("MenuProyectos"));
                }
            }
        }
        public ActionResult ModificarUser(EditUserViewModel model, HttpPostedFileBase imagen)
        {
            if (!ModelState.IsValid)
            {
                return(View("Modificar_User", model));
            }

            using (var db = new sgopEntities())
            {
                var oUser = db.usuarios.Find(model.idUser);
                oUser.usuario             = model.usuario;
                oUser.nombre              = model.nombre;
                oUser.apellidoPaterno     = model.apellidoPaterno;
                oUser.apellidoMaterno     = model.apellidoMaterno;
                oUser.correo              = model.correo;
                oUser.usuarioModificacion = Session["User"].ToString();
                oUser.fechaModificacion   = DateTime.Today;

                if (model.password != null && model.password.Trim() != "")
                {
                    oUser.password = model.password;
                }

                if (imagen != null)
                {
                    int i; string temp;
                    if (oUser.imagenPerfil != "default.png")
                    {
                        BorrarArchivo oBorrar = new BorrarArchivo();
                        i    = oUser.imagenPerfil.IndexOf(".");
                        temp = oUser.imagenPerfil.Substring(i);
                        string path0 = @"~\Res\img\fotos";
                        path0 += Session["User"].ToString() + temp;
                        oBorrar.borrar(path0);
                    }

                    i    = imagen.FileName.IndexOf(".");
                    temp = imagen.FileName.Substring(i);
                    SubirImagen oSubir = new SubirImagen();
                    string      path   = Server.MapPath("~/Res/img/fotos/");
                    path += Session["User"].ToString() + temp;
                    oSubir.Subir(path, imagen);
                    oUser.imagenPerfil = imagen.FileName;
                }
                else
                {
                    oUser.imagenPerfil = model.imagenPerfil;
                }

                db.Entry(oUser).State = System.Data.Entity.EntityState.Modified;
                db.SaveChanges();

                relacionSistemasRoles oRol = new relacionSistemasRoles();
                if (model.Constructora != 0)
                {
                    var temp = db.relacionSistemasRoles.AsNoTracking().Where(d => d.idUsuario == model.idUser && d.idSistema == 1).FirstOrDefault();
                    oRol.idRelacion      = temp.idRelacion;
                    oRol.idUsuario       = model.idUser;
                    oRol.idSistema       = 1;
                    oRol.idRol           = model.Constructora;
                    db.Entry(oRol).State = System.Data.Entity.EntityState.Modified;
                    db.SaveChanges();
                }
                relacionSistemasRoles oRol1 = new relacionSistemasRoles();
                if (model.Comercializadora != 0)
                {
                    var temp = db.relacionSistemasRoles.AsNoTracking().Where(d => d.idUsuario == model.idUser && d.idSistema == 2).FirstOrDefault();
                    oRol1.idRelacion      = temp.idRelacion;
                    oRol1.idUsuario       = model.idUser;
                    oRol1.idSistema       = 2;
                    oRol1.idRol           = model.Comercializadora;
                    db.Entry(oRol1).State = System.Data.Entity.EntityState.Modified;
                    db.SaveChanges();
                }
                relacionSistemasRoles oRol2 = new relacionSistemasRoles();
                if (model.Inmobiliaria != 0)
                {
                    var temp = db.relacionSistemasRoles.AsNoTracking().Where(d => d.idUsuario == model.idUser && d.idSistema == 3).FirstOrDefault();
                    oRol2.idRelacion      = temp.idRelacion;
                    oRol2.idUsuario       = model.idUser;
                    oRol2.idSistema       = 3;
                    oRol2.idRol           = model.Inmobiliaria;
                    db.Entry(oRol2).State = System.Data.Entity.EntityState.Modified;
                    db.SaveChanges();
                }
            }
            ViewBag.success = "Se actualizaron los datos exitosamente.";
            return(View("Modificar_User", model));
        }
        public ActionResult GuardaRequisicion(FormCollection fc)
        {
            using (var db = new sgopEntities())
            {
                try
                {
                    MethodEncrypt me                     = new MethodEncrypt();
                    Rangos        rango                  = new Rangos();
                    int           idLicitacion           = Convert.ToInt32(me.getDecrypt(fc["idLicitacionEncrypt"]));
                    JArray        jsonConceptosAgregados = JArray.Parse(fc["conceptosAgregar"].ToString());
                    var           licitacion             = db.licitaciones.Where(lic => lic.idLicitacion == idLicitacion).First();
                    List <RequisicionesMaterialesViewModel> lstMateriales = new List <RequisicionesMaterialesViewModel>();

                    int idRequisicionRango = (int)licitacion.idRequisicion;

                    //Si la licitacion no tiene agregada la requisicion obtiene una nueva
                    if (idRequisicionRango == 0)
                    {
                        idRequisicionRango = rango.getSiguienteID("REQUISICIONES");
                        //Actualiza la requisicion de la licitacion
                        licitacion.idRequisicion   = idRequisicionRango;
                        db.Entry(licitacion).State = System.Data.Entity.EntityState.Modified;
                        db.SaveChanges();
                    }
                    else
                    {
                        var requisicionesList = (db.requisiciones.Where(req => req.idRequisicionRango == idRequisicionRango)).ToList();
                        var reqMatList        = db.requisicionesMateriales.Where(reqMat => reqMat.idRequisicion == idRequisicionRango).ToList();

                        //Si la cantidad de la lista enviada es diferente a la cantidad de las requisiciones que hay en la base de datos
                        //Entonces elimina todas las requisiciones totales y materiales
                        if (requisicionesList.Count != jsonConceptosAgregados.Count)
                        {
                            //Requisiciones totales
                            foreach (var item in requisicionesList)
                            {
                                int?          idConcepto  = item.idConcepto;
                                requisiciones requisicion = db.requisiciones.Where(req => req.idConcepto == idConcepto && req.idRequisicionRango == idRequisicionRango).First();
                                db.requisiciones.Remove(requisicion);
                                db.SaveChanges();
                            }

                            //Requisiciones Materiales
                            foreach (var item in reqMatList)
                            {
                                requisicionesMateriales requisicionMat = db.requisicionesMateriales.Where(reqMat => reqMat.idRequisicion == idRequisicionRango).First();
                                db.requisicionesMateriales.Remove(requisicionMat);
                                db.SaveChanges();
                            }
                        }
                    }

                    for (int i = 0; i < jsonConceptosAgregados.Count; i++)
                    {
                        int    idConcepto = Convert.ToInt32(jsonConceptosAgregados[i]["idConcepto"]);
                        double cantidad   = Convert.ToDouble(jsonConceptosAgregados[i]["cantidad"]);

                        //Trae la requisicion donde haya ese idConcepto y ese idRequisicion
                        try
                        {
                            //Si la encuentra, actualiza la cantidad de la requisicion con ese idConcepto y ese idRequisicion
                            var requisicion = db.requisiciones.Where(r => r.idConcepto == idConcepto && r.idRequisicionRango == idRequisicionRango).First();
                            requisicion.cantidad        = cantidad;
                            db.Entry(requisicion).State = System.Data.Entity.EntityState.Modified;
                            db.SaveChanges();

                            //Trae la lista de las requisiciones materiales para ese idConcepto y idRequisicion
                            var requisicionMatLista = db.requisicionesMateriales.Where(rm => rm.idConcepto == idConcepto && rm.idRequisicion == idRequisicionRango).ToList();

                            //Recorre la lista
                            foreach (var reqm in requisicionMatLista)
                            {
                                //Busca en la tabla relacionConceptosMateriales el idConcepto y idMaterial para obtener la cantidad necesaria
                                var relConcMat = db.relacionConceptosMateriales.Where(rcm => rcm.idConcepto == idConcepto && rcm.idMaterial == reqm.idMaterial).First();
                                //Busca la requisicionMaterial que se va a actualizar
                                var requisicionMat = db.requisicionesMateriales.Find(reqm.idRequisicionMaterial);

                                requisicionMat.total           = cantidad * relConcMat.cantidad;//Actualiza el total
                                db.Entry(requisicionMat).State = System.Data.Entity.EntityState.Modified;
                                db.SaveChanges();
                            }
                        }
                        catch (Exception)
                        {
                            //Si no la encuentra, guarda una nueva requisicion con ese idConcepto y ese idRequisicion
                            var           concepto       = db.catalogoConceptos.Find(idConcepto);
                            requisiciones tRequisiciones = new requisiciones();

                            tRequisiciones.idRequisicionRango = idRequisicionRango;
                            tRequisiciones.idConcepto         = idConcepto;
                            tRequisiciones.cantidad           = cantidad;
                            tRequisiciones.total = concepto.precioUnitario * cantidad;

                            db.requisiciones.Add(tRequisiciones);
                            db.SaveChanges();

                            //Obtiene todos los materiales que se necesitan para ese idConcepto

                            lstMateriales = (from mat in db.relacionConceptosMateriales
                                             where mat.idConcepto == idConcepto
                                             select new RequisicionesMaterialesViewModel
                            {
                                idRelacion = mat.idRelacion,
                                idConcepto = mat.idConcepto,
                                idMaterial = mat.idMaterial,
                                cantidadMaterial = mat.cantidad
                            }).ToList();

                            foreach (var relacion in lstMateriales)
                            {
                                requisicionesMateriales tReqMat = new requisicionesMateriales();

                                tReqMat.idRequisicion = idRequisicionRango;
                                tReqMat.idConcepto    = idConcepto;
                                tReqMat.idMaterial    = relacion.idMaterial;
                                tReqMat.total         = cantidad * relacion.cantidadMaterial;

                                db.requisicionesMateriales.Add(tReqMat);
                                db.SaveChanges();
                            }
                        }
                    }
                    db.Dispose();
                    return(Content("requisicionGuardada"));
                }
                catch (Exception)
                {
                    db.Dispose();
                    return(Content("noExisteLicitacion"));
                }
            }
        }
        }//recibe el FORMULARIO y confirma la modificacion

        public ActionResult Carga_Doc(HttpPostedFileBase doc1, HttpPostedFileBase doc2, HttpPostedFileBase doc3, HttpPostedFileBase doc4, FormCollection fc)
        {
            int idLicitacion = Convert.ToInt32(fc["idLicitacion"]);
            var link1 = ""; var link3 = "";
            var link2 = ""; var link4 = "";

            SubirDoc subir = new SubirDoc();
            //Path para crear la direccion con el numero de la licitacion//
            string        path1 = this.Server.MapPath("~/Res/docLicitacion/") + idLicitacion;
            DirectoryInfo dir   = new DirectoryInfo(path1);


            if (dir.Exists)
            {
                // var a = 1 + 1;
                string        path3 = this.Server.MapPath("~/Res/docLicitacion/") + idLicitacion + ("/ActaVisita");
                DirectoryInfo dir3  = new DirectoryInfo(path3);
                string        path4 = this.Server.MapPath("~/Res/docLicitacion/") + idLicitacion + ("/ActaAclaraciones");
                DirectoryInfo dir4  = new DirectoryInfo(path4);
                string        path5 = this.Server.MapPath("~/Res/docLicitacion/") + idLicitacion + ("/ActaPropuesta");
                DirectoryInfo dir5  = new DirectoryInfo(path5);
                string        path6 = this.Server.MapPath("~/Res/docLicitacion/") + idLicitacion + ("/ActaFallo");
                DirectoryInfo dir6  = new DirectoryInfo(path6);

                if (dir3.Exists)
                {
                    if (doc1 != null)
                    {
                        //METE DOCUMENTO EN LA LICITACION//
                        string path = Server.MapPath("~/Res/docLicitacion/") + idLicitacion + ("/ActaVisita/");
                        path += doc1.FileName;
                        subir.Subir(path, doc1);
                        link1 = path;
                        bool bande = subir.confirmacion;
                        //******************************//
                    }
                }
                else
                {
                    dir3.Create();
                    if (doc1 != null)
                    {
                        //METE DOCUMENTO EN LA LICITACION//
                        string path = Server.MapPath("~/Res/docLicitacion/") + idLicitacion + ("/ActaVisita/");
                        path += doc1.FileName;
                        subir.Subir(path, doc1);
                        link1 = path;
                        bool bande = subir.confirmacion;
                        //******************************//
                    }
                }

                if (dir4.Exists)
                {
                    if (doc2 != null)
                    {
                        //METE DOCUMENTO EN LA LICITACION//
                        string path = Server.MapPath("~/Res/docLicitacion/") + idLicitacion + ("/ActaAclaraciones/");
                        path += doc2.FileName;
                        subir.Subir(path, doc2);
                        link2 = path;
                        bool bande = subir.confirmacion;
                        //******************************//
                    }
                }
                else
                {
                    dir4.Create();
                    if (doc2 != null)
                    {
                        //METE DOCUMENTO EN LA LICITACION//
                        string path = Server.MapPath("~/Res/docLicitacion/") + idLicitacion + ("/ActaAclaraciones/");
                        path += doc2.FileName;
                        subir.Subir(path, doc2);
                        link2 = path;
                        bool bande = subir.confirmacion;
                        //******************************//
                    }
                }

                if (dir5.Exists)
                {
                    if (doc3 != null)
                    {
                        //METE DOCUMENTO EN LA LICITACION//
                        string path = Server.MapPath("~/Res/docLicitacion/") + idLicitacion + ("/ActaPropuesta/");
                        path += doc3.FileName;
                        subir.Subir(path, doc3);
                        link3 = path;
                        bool bande = subir.confirmacion;
                        //******************************//
                    }
                }
                else
                {
                    dir5.Create();
                    if (doc3 != null)
                    {
                        //METE DOCUMENTO EN LA LICITACION//
                        string path = Server.MapPath("~/Res/docLicitacion/") + idLicitacion + ("/ActaPropuesta/");
                        path += doc3.FileName;
                        subir.Subir(path, doc3);
                        link3 = path;
                        bool bande = subir.confirmacion;
                        //******************************//
                    }
                }
                if (dir6.Exists)
                {
                    if (doc4 != null)
                    {
                        //METE DOCUMENTO EN LA LICITACION//
                        string path = Server.MapPath("~/Res/docLicitacion/") + idLicitacion + ("/ActaFallo/");
                        path += doc4.FileName;
                        subir.Subir(path, doc4);
                        link4 = path;
                        bool bande = subir.confirmacion;
                        //******************************//
                    }
                }
                else
                {
                    dir6.Create();
                    if (doc4 != null)
                    {
                        //METE DOCUMENTO EN LA LICITACION//
                        string path = Server.MapPath("~/Res/docLicitacion/") + idLicitacion + ("/ActaFallo/");
                        path += doc4.FileName;
                        subir.Subir(path, doc4);
                        link4 = path;
                        bool bande = subir.confirmacion;
                        //******************************//
                    }
                }
            }
            else
            {
                // var n = 2 + 2;
                dir.Create();
                string        path3 = this.Server.MapPath("~/Res/docLicitacion/") + idLicitacion + ("/ActaVisita");
                DirectoryInfo dir3  = new DirectoryInfo(path3);
                string        path4 = this.Server.MapPath("~/Res/docLicitacion/") + idLicitacion + ("/ActaAclaraciones");
                DirectoryInfo dir4  = new DirectoryInfo(path4);
                string        path5 = this.Server.MapPath("~/Res/docLicitacion/") + idLicitacion + ("/ActaPropuesta");
                DirectoryInfo dir5  = new DirectoryInfo(path5);
                string        path6 = this.Server.MapPath("~/Res/docLicitacion/") + idLicitacion + ("/ActaFallo");
                DirectoryInfo dir6  = new DirectoryInfo(path6);
                if (dir3.Exists)
                {
                    if (doc1 != null)
                    {
                        //METE DOCUMENTO EN LA LICITACION//
                        string path = Server.MapPath("~/Res/docLicitacion/") + idLicitacion + ("/ActaVisita/");
                        path += doc1.FileName;
                        subir.Subir(path, doc1);
                        link1 = path;
                        bool bande = subir.confirmacion;
                        //******************************//
                    }
                }
                else
                {
                    dir3.Create();
                    if (doc1 != null)
                    {
                        //METE DOCUMENTO EN LA LICITACION//
                        string path = Server.MapPath("~/Res/docLicitacion/") + idLicitacion + ("/ActaVisita/");
                        path += doc1.FileName;
                        subir.Subir(path, doc1);
                        link1 = path;
                        bool bande = subir.confirmacion;
                        //******************************//
                    }
                }

                if (dir4.Exists)
                {
                    if (doc2 != null)
                    {
                        //METE DOCUMENTO EN LA LICITACION//
                        string path = Server.MapPath("~/Res/docLicitacion/") + idLicitacion + ("/ActaAclaraciones/");
                        path += doc2.FileName;
                        subir.Subir(path, doc2);
                        link2 = path;
                        bool bande = subir.confirmacion;
                        //******************************//
                    }
                }
                else
                {
                    dir4.Create();
                    if (doc2 != null)
                    {
                        //METE DOCUMENTO EN LA LICITACION//
                        string path = Server.MapPath("~/Res/docLicitacion/") + idLicitacion + ("/ActaAclaraciones/");
                        path += doc2.FileName;
                        subir.Subir(path, doc2);
                        link2 = path;
                        bool bande = subir.confirmacion;
                        //******************************//
                    }
                }

                if (dir5.Exists)
                {
                    if (doc3 != null)
                    {
                        //METE DOCUMENTO EN LA LICITACION//
                        string path = Server.MapPath("~/Res/docLicitacion/") + idLicitacion + ("/ActaPropuesta/");
                        path += doc3.FileName;
                        subir.Subir(path, doc3);
                        link3 = path;
                        bool bande = subir.confirmacion;
                        //******************************//
                    }
                }
                else
                {
                    dir5.Create();
                    if (doc3 != null)
                    {
                        //METE DOCUMENTO EN LA LICITACION//
                        string path = Server.MapPath("~/Res/docLicitacion/") + idLicitacion + ("/ActaPropuesta/");
                        path += doc3.FileName;
                        subir.Subir(path, doc3);
                        link3 = path;
                        bool bande = subir.confirmacion;
                        //******************************//
                    }
                }
                if (dir6.Exists)
                {
                    if (doc4 != null)
                    {
                        //METE DOCUMENTO EN LA LICITACION//
                        string path = Server.MapPath("~/Res/docLicitacion/") + idLicitacion + ("/ActaFallo/");
                        path += doc4.FileName;
                        subir.Subir(path, doc4);
                        link4 = path;
                        bool bande = subir.confirmacion;

                        //******************************//
                    }
                }
                else
                {
                    dir6.Create();
                    if (doc4 != null)
                    {
                        //METE DOCUMENTO EN LA LICITACION//
                        string path = Server.MapPath("~/Res/docLicitacion/") + idLicitacion + ("/ActaFallo/");
                        path += doc4.FileName;
                        subir.Subir(path, doc4);
                        link4 = path;
                        bool bande = subir.confirmacion;
                        //******************************//
                    }
                }
            }

            //**********************************************************************//
            using (var db = new sgopEntities())
            {
                var olicitacion = db.licitaciones.Find(idLicitacion);
                if (doc1 != null)
                {
                    olicitacion.actaVisita = link1;
                }
                if (doc2 != null)
                {
                    olicitacion.actaAclaraciones = link2;
                }
                if (doc3 != null)
                {
                    olicitacion.actaPropuesta = link3;
                }
                if (doc3 != null)
                {
                    olicitacion.actaFallo = link4;
                }

                db.Entry(olicitacion).State = System.Data.Entity.EntityState.Modified;
                db.SaveChanges();
                db.Dispose();
            }



            //****************************BASE**************************************//
            return(RedirectToAction("Index"));
        }