예제 #1
0
        public static BE.EntradaAlmacen EntradaAlmacen(JS.EntradaAlmacen jsEntradaAlmacen)
        {
            BE.EntradaAlmacen beEntradaAlmacen = null;
            try
            {
                if (jsEntradaAlmacen != null)
                {
                    beEntradaAlmacen = new BE.EntradaAlmacen();

                    beEntradaAlmacen.Serie         = 0;
                    beEntradaAlmacen.Usuario       = jsEntradaAlmacen.usuario;
                    beEntradaAlmacen.Comentario    = jsEntradaAlmacen.comentario;
                    beEntradaAlmacen.FechaContable = ParseStringToDatetime(jsEntradaAlmacen.FechaContable);
                    beEntradaAlmacen.FechaCreacion = ParseStringToDatetime(jsEntradaAlmacen.FechaCreacion);
                    beEntradaAlmacen.DocEntry      = 0;
                    beEntradaAlmacen.refSap        = jsEntradaAlmacen.docEntryOrden;

                    beEntradaAlmacen.Detalle = new List <BE.EntradaAlmacenDetalle>();

                    int nroLinea = 1;
                    foreach (var jsDetalle in jsEntradaAlmacen.detalle)
                    {
                        var beDetalle = new BE.EntradaAlmacenDetalle();

                        beDetalle.NroLinea          = nroLinea;
                        beDetalle.Codigo            = jsDetalle.codArticulo;
                        beDetalle.Descripcion       = jsDetalle.descripcion;
                        beDetalle.Cantidad          = ParseStringToDouble(jsDetalle.cantidad);
                        beDetalle.Precio            = 0.0;
                        beDetalle.CodAlmacen        = jsDetalle.codAlmacen;
                        beDetalle.CodImpuesto       = jsDetalle.codImpuesto;
                        beDetalle.CodMoneda         = "";
                        beDetalle.CodCuentaContable = "";
                        beDetalle.CodProyecto       = "";
                        beDetalle.CodCentroCosto    = jsDetalle.codCentroCosto;
                        beDetalle.refLineaSap       = int.Parse(jsDetalle.lineNumSap);

                        beEntradaAlmacen.Detalle.Add(beDetalle);

                        nroLinea++;
                    }
                }

                return(beEntradaAlmacen);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
예제 #2
0
        public List <JS.EntradaAlmacen> Obtener(DateTime fechaHora, int idEmpresa)
        {
            var lstEntradaAlmacen = new List <JS.EntradaAlmacen>();

            try
            {
                var client = new RestClient(this.endPoint);

                var request = new RestRequest(Method.POST);
                request.AddParameter("datetime", fechaHora.ToString("yyyy-MM-ddTHH:mm:ss"));
                request.AddParameter("sociedad", idEmpresa.ToString());

                var task = client.ExecuteTaskAsync(request);
                task.Wait();

                string  jsonCabecera = task.Result.Content;
                JObject joCab        = JObject.Parse(jsonCabecera);
                foreach (JToken jtCab in joCab.Children())
                {
                    if (jtCab is JProperty)
                    {
                        var propCab = jtCab as JProperty;

                        var objEntradaAlmacen = new JS.EntradaAlmacen();

                        objEntradaAlmacen.docEntryOrden = propCab.Value["docEntryOrden"].ToString();
                        objEntradaAlmacen.comentario    = propCab.Value["comentario"].ToString();
                        objEntradaAlmacen.usuario       = propCab.Value["usuario"].ToString();
                        objEntradaAlmacen.total         = propCab.Value["total"].ToString();
                        objEntradaAlmacen.FechaContable = propCab.Value["FechaContable"].ToString();
                        objEntradaAlmacen.FechaCreacion = propCab.Value["FechaCreacion"].ToString();

                        var     jsonDetalle = propCab.Value["detalle"].ToString();
                        JObject joDet       = JObject.Parse(jsonDetalle);
                        foreach (JToken jtDet in joDet.Children())
                        {
                            var propDet = jtDet as JProperty;

                            var objEntradaAlmacenDetalle = new JS.EntradaAlmacenDetalle();

                            objEntradaAlmacenDetalle.codArticulo    = propDet.Value["codArticulo"].ToString();
                            objEntradaAlmacenDetalle.descripcion    = propDet.Value["descripcion"].ToString();
                            objEntradaAlmacenDetalle.cantidad       = propDet.Value["cantidad"].ToString();
                            objEntradaAlmacenDetalle.codAlmacen     = propDet.Value["codAlmacen"].ToString();
                            objEntradaAlmacenDetalle.codImpuesto    = propDet.Value["codImpuesto"].ToString();
                            objEntradaAlmacenDetalle.codCentroCosto = propDet.Value["codCentroCosto"].ToString();
                            objEntradaAlmacenDetalle.lineNumSap     = propDet.Value["lineNumSap"].ToString();

                            objEntradaAlmacen.detalle.Add(objEntradaAlmacenDetalle);
                        }

                        lstEntradaAlmacen.Add(objEntradaAlmacen);
                    }
                }

                return(lstEntradaAlmacen);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }