예제 #1
0
        public IErpOrderModel LoadOrder(string orderNumber)
        {
            EnsureSession();

            var dlToken = ((long)((DateTime.Now - new DateTime(1970, 1, 1)).TotalMilliseconds)).ToString();

            var fields = new Dictionary <string, string> {
                ["downloadToken"] = dlToken, ["order_num"] = orderNumber
            };

            var post =
                m_client.Post(ActionUrl("/erp/impexp/export/index/orders_with_items/xml"))
                .Field("dataSubset", "a:0:{}")
                .Field("data", string.Empty);

            CreateMassFilter(fields, post);

            var stringData = post.Call();

            var ordersModel = ExportDocument.Parse(stringData);

            var result = ordersModel.Orders.Orders;

            foreach (var om in result)
            {
                om.ErpSystemId = Erp.Id;
            }

            return(ordersModel.Orders.Orders.FirstOrDefault(o => o.OrderNumber == orderNumber));
        }
예제 #2
0
        private IEnumerable <IErpOrderModel> LoadOrders(DateTime from, DateTime?to, string status)
        {
            m_log.Info($"Zacinam stahovani objednavek od={from}, do={to}, status={status}");
            EnsureSession();

            var xDateFrom = from.ToString("d.+M.+yyyy");
            var nDateFrom = from.ToString("yyyy-MM-dd");
            var dlToken   = ((long)((DateTime.Now - new DateTime(1970, 1, 1)).TotalMilliseconds)).ToString();

            var fields = new Dictionary <string, string>
            {
                ["pur_date_from_xdate"] = xDateFrom,
                ["pur_date_from"]       = nDateFrom
            };

            if (to != null)
            {
                fields["pur_date_to_xdate"] = to.Value.ToString("d.+M.+yyyy");
                fields["pur_date_to"]       = to.Value.ToString("yyyy-MM-dd");
            }

            if (status != null)
            {
                fields["status"] = status;
            }

            fields["downloadToken"] = dlToken;

            var post = m_client.Post(ActionUrl("/erp/impexp/export/index/orders_with_items/xml"))
                       .Field("dataSubset", "a:0:{}")
                       .Field("data", string.Empty);

            CreateMassFilter(fields, post);

            var stringData = post.Call();

            var ordersModel = ExportDocument.Parse(stringData);

            var result = ordersModel.Orders.Orders;

            foreach (var om in result)
            {
                om.ErpSystemId = Erp.Id;
            }

            return(ordersModel.Orders.Orders);
        }