Пример #1
0
        // GET: Producciones/Create
        public async Task <IActionResult> Create(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var pedido = await this.pedidoRepository.GetByIdAsync(id.Value);

            if (pedido == null)
            {
                return(NotFound());
            }

            var user = await this.userHelper.GetUserByEmailAsync(this.User.Identity.Name);

            if (user == null)
            {
                return(NotFound());
            }


            var model = new ProduccionViewModel
            {
                PedidoId = pedido.Id,
                UserCi   = user.Ci,
                FaseId   = user.CargoNumero,
            };

            return(View(model));
        }
        public ActionResult NuevaProduccion(ProduccionViewModel model)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    using (proyectofloresEntities db = new proyectofloresEntities())
                    {
                        var oProduccion = new produccion();

                        oProduccion.idfinca      = model.Idfinca;
                        oProduccion.numerobloque = model.Numerobloque;
                        oProduccion.variedadflor = model.Variedadflor;
                        oProduccion.plantas      = model.Plantas;
                        oProduccion.areas        = model.Areas;
                        oProduccion.camas        = model.Camas;
                        oProduccion.nsemana      = model.Nsemana;

                        db.produccion.Add(oProduccion);
                        db.SaveChanges();
                    }
                    return(Redirect("~/Produccion/ListaProduccion"));
                }
                return(View(model));
            }catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
Пример #3
0
        public async Task <Produccion> ToProduccionAsync(ProduccionViewModel model)
        {
            return(new Produccion
            {
                //por algun motivo esto no va aqui
                //Id = model.Id,

                FechaProduccion = model.FechaProduccion,
                //
                EmpleadoProducción = await empleadoProduccionRepository.GetEmpleadoPorCI(model.UserCi),
                Fase = await faseRepository.GetFasePorNumeroAsync(model.FaseId),
                Pedido = pedidoRepository.GetPedidos(model.PedidoId),
            });
        }
Пример #4
0
        public async Task <IActionResult> Create(ProduccionViewModel model)
        {
            if (ModelState.IsValid)
            {
                var produccion = await converterHelper.ToProduccionAsync(model);

                await produccionRepository.CreateAsync(produccion);

                //TODO: Habilitar esto
                //cambio de estados
                var user = await this.userHelper.GetUserByEmailAsync(this.User.Identity.Name);

                await this.userHelper.CambiarEstadoANoDisponible(user);

                await this.pedidoRepository.CambiarEstadoAProceso(produccion.Pedido);

                return(RedirectToAction(nameof(ProduccionUsuario)));
            }
            return(View(model));
        }
        public ActionResult EditarProduccion(int Id)
        {
            List <finca> fincaList = sd.finca.ToList();

            ViewBag.fincaList = new SelectList(fincaList, "idfinca", "nombrefinca");

            ProduccionViewModel mod = new ProduccionViewModel();

            using (proyectofloresEntities db = new proyectofloresEntities())
            {
                var oProduccion = db.produccion.Find(Id);
                mod.Idproduccion = oProduccion.idproduccion;
                mod.Idfinca      = oProduccion.idfinca;
                mod.Numerobloque = oProduccion.numerobloque;
                mod.Variedadflor = oProduccion.variedadflor;
                mod.Plantas      = oProduccion.plantas;
                mod.Areas        = oProduccion.areas;
                mod.Camas        = oProduccion.camas;
                mod.Nsemana      = oProduccion.nsemana;
            }

            return(View(mod));
        }
Пример #6
0
        public async Task Execute(IJobExecutionContext context)
        {
            dynamic result = null;

            // *******************************************************************************************************
            // PASO 1: INTENTAMOS OBTENER UN TOKEN VALIDO PARA ESTABLECER LA CONEXION
            // *******************************************************************************************************

            Log.Information(".........Comienza la ejecución de la consulta sobre los vales de produccion pendientes...........................OK");

            WebApiClient APIConnection = new WebApiClient(Program.CurrentUrl, Program.CurrentToken);

            result = await APIConnection.tryLoginWithToken(Program.CurrentToken);

            // Comprobamos si el token que teníamos almacenado en la variable <<Program.CurrentToken>> sigue siendo válido
            if (APIConnection.status == System.Net.HttpStatusCode.Unauthorized)
            {
                result = await APIConnection.Login(Program.CurrentUser, Program.CurrentPass, Program.CurrentCoop);

                if (APIConnection.status == System.Net.HttpStatusCode.BadRequest)
                {
                    Log.Error("No ha sido posible obtener un token válido con los parámetros especificados {param1}/{param2}/{param3} ", Program.CurrentCoop, Program.CurrentUser, Program.CurrentPass);
                    return;
                }
                else
                {
                    Program.CurrentToken = result.access_token;
                }
            }

            // *******************************************************************************************************
            // PASO 2: INTENTAMOS INSERTAR UN NUEVO VALE DE PRODUCCION EN GOIA
            // *******************************************************************************************************

            APIConnection.setToken(Program.CurrentToken);

            Log.Information(".........Intentamos insertar el número de vale Nº 1.034.089...........................OK");
            ProduccionViewModel nuevoVale = new ProduccionViewModel();

            nuevoVale.cultivo    = 1;
            nuevoVale.numvale    = "1.034.089";
            nuevoVale.fecha      = Convert.ToDateTime("01/01/2000");
            nuevoVale.codfinca   = "38005F13";
            nuevoVale.codparcela = "1";
            nuevoVale.kilos      = 406;
            nuevoVale.unidades   = 10;

            result = await APIConnection.PostAsync("api/produccion/postinserta", JsonConvert.SerializeObject(nuevoVale));

            if (APIConnection.status == System.Net.HttpStatusCode.OK)
            {
                //**********************************************************************************
                //
                //              PROGAMACIÓN INTERNA UNA VEZ INSERTADO EL VALE DE PRODUCCION
                //
                //**********************************************************************************
            }
            else
            {
                Log.Error("No se ha podido insertar el vale de producción Nº: " + nuevoVale.numvale.ToString() + " en la base de datos de GOIA.");
            }
        }