Exemple #1
0
        private XDocument buildInfomediaRequest(string ticket)
        {
            var rep = new Repository();
            var docMaker = new CustomerAdd();
            var user = rep.GetUser(WebSecurity.CurrentUserId);
            bool requiresInventoryUpdate = user.Client.RequiresInventoryUpdate ?? false;
            bool requiresTaxCodeUpdate = user.Client.RequiresTaxCodeUpdate ?? false;
            var customer = rep.GetUnprocessedCustomersByTransaction(ticket).FirstOrDefault();
            var order = rep.GetUnprocessedOrdersByTransaction(ticket).FirstOrDefault();
            var transaction = rep.GetTransaction(ticket);
            if(requiresTaxCodeUpdate && transaction.ProcessedItemSalesTaxQueryRs != true)
            {
                var doc =  SalesTax.ItemSalesTaxQueryRq;
                transaction.ProcessedItemSalesTaxQueryRs = true;
                rep.Save();
                return doc;
            }
            else if(requiresTaxCodeUpdate)
            {
                var doc =  SalesTax.ItemSalesTaxGroupQueryRq;
                user.Client.RequiresTaxCodeUpdate = false;
                rep.Save();
                return doc;
            }
            else if(requiresInventoryUpdate && transaction.ProcessedItemInventoryQuery != true)
            {
                var doc = Inventory.ItemInventoryFullQueryRq();
                transaction.ProcessedItemInventoryQuery = true;
                rep.Save();
                return doc;
            }
            else if(requiresInventoryUpdate)
            {
                if(user.Client.IsContentEditsShop ?? false)
                {
                    UpdateShopInventory();
                }
                var doc =  Inventory.ItemNonInventoryFullQueryRq();
                user.Client.RequiresInventoryUpdate = false;
                rep.Save();
                return doc;
            }
            else if(customer != null)
            {
                var doc = docMaker.GetCustomer(customer.CustomerID,customer.Orders.FirstOrDefault().OrderNumber);
                customer.CurrentRequest = true;
                customer.Reported = true;
                rep.Save();
                return doc;
            }
            if (order.AmountDiscount != null && order.AmountDiscount > 0 )
            {
                Error.ProcessFailedOrder(order);
                order.Reported = true;
                rep.Save();
                order = rep.GetUnprocessedOrdersByTransaction(ticket).FirstOrDefault();
            }
            else if ( order != null)
            {
                var fullinvoice = new FullInvoice();
                //var invoice = new Invoice();

                var doc =	fullinvoice.GetInvoice(order.Customer.CustomerID, order.OrderID);
                order.Reported = true;
                rep.Save();
                return doc;
            }
            return null;
        }
Exemple #2
0
 public string Test(int orderID)
 {
     var order = rep.GetQuickBooksOrder(false,orderID);
     var invoice = new FullInvoice();
     return	invoice.GetInvoice(order.CustomerID, orderID).ToString();
 }