public JsonResult Guardar(OrdenProduccionModel model)
        {
            var response = new JsonResponse();
            try
            {
                var ordenProduccion = new OrdenProduccion
                {
                    CantidadProducto = model.CantidadProducto,
                    TomarStock = model.TomarStock,
                    Estado = "Pendiente",
                    OrdenVenta = new OrdenVenta
                    {
                        Id = model.IdOrdenVenta,
                        Producto = new Producto { Id = model.IdProducto }
                    },
                    Materiales = new List<OrdenProduccionMaterial>(),
                    Secuencia = new List<OrdenProduccionSecuencia>()
                };

                foreach (var material in model.Materiales)
                {
                    ordenProduccion.Materiales.Add(new OrdenProduccionMaterial
                    {
                        Comprar = material.Comprar,
                        Requerido = material.Requerido,
                        Material = new Material {Id = material.IdMaterial}
                    });
                }

                foreach (var secuencia in model.Secuencia)
                {
                    var fechaInicio = Utils.ConvertDate(secuencia.FechaInicioStr, "dd/MM/yyyy HH:mm");
                    var fechaFin = Utils.ConvertDate(secuencia.FechaFinStr, "dd/MM/yyyy HH:mm");

                    ordenProduccion.Secuencia.Add(new OrdenProduccionSecuencia
                    {
                        Secuencia = secuencia.Secuencia,
                        Maquina = new Maquina {Id = secuencia.IdMaquina},
                        FechaInicio = fechaInicio.Value,
                        FechaFin = fechaFin.Value
                    });
                }

                var idOrdenProduccion = 0;
                using (var service = new ProduccionServiceClient())
                {
                    idOrdenProduccion = service.RegistrarOrdenProduccion(ordenProduccion);
                }

                response.Data = idOrdenProduccion;
                response.Success = true;
                response.Message = "Ok";
            }
            catch (Exception ex)
            {
                response.Message = ex.Message;

                LogError(ex);
            }
            return Json(response);
        }
示例#2
0
        public JsonResult GuardarOrdenProduccion(OrdenProduccionModel model)
        {
            var response = new JsonResponse();

            try
            {
                var ordenProduccion = new OrdenProduccion
                {
                    TomarStock               = model.TomarStock,
                    CantidadProducto         = model.CantidadProducto,
                    CantidadProductoDigitado = model.CantidadProductoDigitado,
                    Estado     = Constantes.EstadoOrdenPoduccion.PendienteAprobar,
                    OrdenVenta = new OrdenVenta
                    {
                        Id       = model.IdOrdenVenta,
                        Producto = new Producto
                        {
                            Id          = model.IdProducto,
                            Stock       = model.StockProducto,
                            StockMinimo = model.StockMinimoProducto
                        },
                        Cantidad = model.CantidadOrdenVenta
                    },
                    Materiales = new List <OrdenProduccionMaterial>(),
                    Secuencia  = new List <OrdenProduccionSecuencia>()
                };

                foreach (var material in model.Materiales)
                {
                    ordenProduccion.Materiales.Add(new OrdenProduccionMaterial
                    {
                        Comprar   = material.Comprar,
                        Requerido = material.Requerido,
                        Material  = new Material
                        {
                            Id          = material.IdMaterial,
                            Stock       = material.Stock,
                            StockMinimo = material.StockMinimo
                        }
                    });
                }

                foreach (var secuencia in model.Secuencia)
                {
                    var fechaInicio = Utils.ConvertDate(secuencia.FechaInicioStr, "dd/MM/yyyy HH:mm");
                    var fechaFin    = Utils.ConvertDate(secuencia.FechaFinStr, "dd/MM/yyyy HH:mm");

                    ordenProduccion.Secuencia.Add(new OrdenProduccionSecuencia
                    {
                        Secuencia = secuencia.Secuencia,
                        Maquina   = new Maquina {
                            Id = secuencia.IdMaquina
                        },
                        FechaInicio = fechaInicio.Value,
                        FechaFin    = fechaFin.Value
                    });
                }

                var idOrdenProduccion = 0;
                using (var service = new ProduccionServiceClient())
                {
                    idOrdenProduccion = service.RegistrarOrdenProduccion(ordenProduccion);
                }

                response.Data    = idOrdenProduccion;
                response.Success = true;
                response.Message = "Ok";
            }
            catch (Exception ex)
            {
                response.Message = ex.Message;

                LogError(ex);
            }
            return(Json(response));
        }