Exemple #1
0
        public ActionResult Invitacion(string sortOrder, string currentFilter, string searchString, int?page)
        {
            var u          = User.Identity.Name;
            var idU        = DB.Usuarios.Where(s => s.nombreUsuario.ToUpper().Equals(u.ToString().ToUpper())).FirstOrDefault().idUsuario;
            var idP        = DBC.Usuario.Where(s => s.idUsuarios == idU).FirstOrDefault().Proveedor;
            var p          = DBC.Proveedores.Where(s => s.consecutivos == idP).FirstOrDefault();
            int pageSize   = 10;
            int pageNumber = (page ?? 1);
            List <Solicitud_Requisiciones> listaSolicitudes = new List <Solicitud_Requisiciones>();

            foreach (var r in DBC.invitacionReq.Where(s => s.idProveedores == p.consecutivos))
            {
                Solicitud_Requisiciones solicitud = new Solicitud_Requisiciones();
                solicitud = DB.Solicitud_Requisiciones.Where(s => s.preRequisicion == r.preRequisicion && s.ejercicio == r.ejercicio && s.departamento == r.departamento).FirstOrDefault();

                listaSolicitudes.Add(solicitud);
            }
            return(View(listaSolicitudes.OrderBy(i => i.fechaNecesitar).ToPagedList(page ?? 1, pageSize)));
            //return View(DB.Solicitud_Requisiciones.ToList());
        }
        public JsonResult setRequisicion(Solicitud solicitud, List <Partidas> partidas, Checks checks, string username) //Gets the todo Lists.
        {
            try
            {
                AlmacenEntities db         = new AlmacenEntities();
                var             context    = new AlmacenEntities();
                var             connection = context.Database.Connection;
                int             preReq     = db.Solicitud_Requisiciones.Where(s2 => s2.departamento == solicitud.departamento).Count();

                var usuario = db.Usuarios.Where(s => s.nombreUsuario.ToUpper().Equals(username.ToUpper())).FirstOrDefault();

                Solicitud_Requisiciones soli = new Solicitud_Requisiciones();
                soli.preRequisicion    = preReq + 1;
                soli.preRequisicionAnt = 0;
                soli.requisicion       = solicitud.idRequisicion;
                soli.fechaNecesitar    = Convert.ToDateTime(solicitud.fechaNecesitar);
                soli.fechaRequisicion  = Convert.ToDateTime(solicitud.fechaRequisicion);
                soli.uso                 = solicitud.uso;
                soli.departamento        = (Int16)solicitud.departamento;
                soli.ciclo               = solicitud.ciclo.ToString();
                soli.area                = solicitud.area.ToString();
                soli.fechaRecepcion      = Convert.ToDateTime(solicitud.fechaRecepcion);
                soli.ejercicio           = solicitud.ejercicio;
                soli.solicitante         = Int32.Parse(usuario.idEmpleado);
                soli.observaciones       = (solicitud.observaciones == null) ? "---" :solicitud.observaciones;
                soli.liberaElectrico     = (checks.electrico == false) ? "A" : "P";
                soli.liberaCapitalHumano = (checks.trabajoSindicato == false && checks.retencionImpuesto == false) ? "A" : "P";
                soli.liberaSeguridad     = (checks.soldadura == false && checks.altura == false &&
                                            checks.espaciosConfinados == false && checks.izajes == false && checks.montacarga == false) ? "A" : "P";
                soli.liberaLocal             = "P";
                soli.liberaAlmacen           = "P";
                soli.departamentoSolicitante = (Int16)usuario.departamento;
                soli.estatus             = "P";
                soli.partidaPresupuestal = solicitud.partidaPresupuestal;
                db.Solicitud_Requisiciones.Add(soli);

                int cont = 0;
                foreach (var value in partidas)
                {
                    DetalleRequisicion detR = new DetalleRequisicion();
                    detR.preRequisicion     = preReq + 1;
                    detR.requisicion        = solicitud.idRequisicion;
                    detR.partida            = (Int16)cont++;
                    detR.material           = Int32.Parse(value.Clave);
                    detR.cantidad           = Decimal.Parse(value.Cantidad);
                    detR.detalle            = value.Descripcion;
                    detR.descripcion        = value.Detalle;
                    detR.ejercicio          = solicitud.ejercicio;
                    detR.costoU             = Decimal.Parse(value.PrecioU);
                    detR.costoTotal         = Decimal.Parse(value.PrecioU) * Decimal.Parse(value.Cantidad);
                    detR.existencia         = Decimal.Parse(value.Existencia);
                    detR.FechaUltimaEntrada = Convert.ToDateTime("01/01/2017");
                    detR.departamento       = Int16.Parse(solicitud.departamento.ToString());
                    detR.uMedida            = value.Unidad;
                    db.DetalleRequisicion.Add(detR);
                }
                DetalleRequisicion2 detR2 = new DetalleRequisicion2();
                detR2.preRequisicion     = preReq + 1;
                detR2.departamento       = (Int16)solicitud.departamento;
                detR2.ejercicio          = (Int16)solicitud.ejercicio;
                detR2.trabajoSindicato   = checks.trabajoSindicato;
                detR2.retencionImpuesto  = checks.retencionImpuesto;
                detR2.altura             = checks.altura;
                detR2.espaciosConfinados = checks.espaciosConfinados;
                detR2.electrico          = checks.electrico;
                detR2.corte                = checks.corte;
                detR2.corte                = checks.corte;
                detR2.soldadura            = checks.soldadura;
                detR2.operacionMontacargas = checks.montacarga;
                detR2.izajesCarga          = checks.izajes;
                db.DetalleRequisicion2.Add(detR2);
                db.SaveChanges();

                var jsonData = new { code      = "OK", preRequisicion = preReq + 1, departamento = (Int16)solicitud.departamento,
                                     ejercicio = solicitud.ejercicio };
                return(Json(jsonData, JsonRequestBehavior.AllowGet));
            }
            catch (SqlException odbcEx)
            {
                var jsonData = new { code = odbcEx };
                return(Json(jsonData, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex) {
                Response.StatusCode = (int)HttpStatusCode.BadRequest;
                List <string> errors = new List <string>();
                errors.Add(ex.Message);
                return(Json(errors));
                //var jsonData = new{code = ex};
                //return Json(jsonData, JsonRequestBehavior.AllowGet);
            }
        }