private void SaveCustomer()
 {
     try
     {
         service.AddCustomerWithDependencies(newCustomer);
         Done(newCustomer.Id);
         Close();
     }
     catch (Exception ex)
     {
         EmailSender.EmailError(ex);
         MessageBox.Show("An error has occured while saving new customer. An email has been sent to the development team. Please restart application.");
     }
 }
Beispiel #2
0
        public void AddCustomerWithDependencies()
        {
            var custId        = "VMLOP91900-2";
            var custService   = new CustomerService();
            var lookupService = new LookUpService();


            var custclasses     = lookupService.GetCustClasses();
            var dealerCustClass = custclasses.Where(c => c.Key == 40).First();

            var primaryAddress     = GetHydratedAddress("877 Monterey Pass Road");
            var primaryCustAddress = GetHydratedCustAddress(dealerCustClass, API.Enums.CustAddrType.Primary);

            var billtoAddress     = GetHydratedAddress("875 Monterey Pass Road");
            var billtoCustAddress = GetHydratedCustAddress(dealerCustClass, API.Enums.CustAddrType.BillTo);

            var shiptoAddress     = GetHydratedAddress("876 Monterey Pass Road");
            var shiptoCustAddress = GetHydratedCustAddress(dealerCustClass, API.Enums.CustAddrType.ShipTo);

            var primaryContact = new Contact()
            {
                Name            = "Victor Lopez",
                FirstName       = "Victor",
                LastName        = "Lopez",
                Title           = "Accounting",
                Email           = "*****@*****.**",
                MobilePhone     = "6262325365",
                Phone           = "6262325365",
                PhoneExt        = "",
                Fax             = "",
                FaxExt          = "",
                CCCreditMemo    = 0,
                CCCustStmnt     = 0,
                CCDebitMemo     = 0,
                CCEFTRemittance = 0,
                CCFinanceCharge = 0,
                CCInvoice       = 0,
                CCPurchaseOrder = 0,
                CCRMA           = 0,
                CCSalesOrder    = 0,
                Deleted         = 0,
                EMailFormat     = 3,
                EntityType      = 501,
                UpdateCounter   = 1
            };

            var newCustomer = new Customer();

            newCustomer.PrimaryAddress       = primaryAddress;
            newCustomer.DefaultBillToAddress = billtoAddress;
            newCustomer.DefaultShipToAddress = shiptoAddress;
            newCustomer.PrimaryContact       = primaryContact;
            //newCustomer.Contacts = new List<Contact>();
            //newCustomer.Contacts.Add(primaryContact);


            newCustomer.Id = custId;
            newCustomer.AllowCustRefund          = dealerCustClass.AllowCustRefund;
            newCustomer.AllowWriteOff            = dealerCustClass.AllowWriteOff;
            newCustomer.BillingType              = dealerCustClass.BillingType;
            newCustomer.BillToNationalAcctParent = 0;
            newCustomer.CompanyId             = "CPC";
            newCustomer.ConsolidatedStatement = 0;
            newCustomer.CreateDate            = DateTime.Now;
            newCustomer.CreateUserID          = Environment.UserName;
            newCustomer.CreateType            = 1;
            newCustomer.CreditLimit           = dealerCustClass.CreditLimit;
            newCustomer.CreditLimitAgeCat     = dealerCustClass.CreditLimitAgeCat;
            newCustomer.CreditLimitUsed       = 1;
            newCustomer.CustClassKey          = dealerCustClass.Key;
            newCustomer.DateEstab             = DateTime.Now;
            newCustomer.DfltSalesAcctKey      = dealerCustClass.DfltSalesAcctKey;
            newCustomer.DfltMaxUpCharge       = 0;
            newCustomer.DfltMaxUpChargeType   = 0;
            newCustomer.Name                    = "Victor Refrig";
            newCustomer.FinChgFlatAmt           = dealerCustClass.FinChgFlatAmt;
            newCustomer.FinChgPct               = dealerCustClass.FinChgPct;
            newCustomer.Hold                    = 0;
            newCustomer.PmtByNationalAcctParent = 0;
            newCustomer.PrintDunnMsg            = dealerCustClass.PrintDunnMsg;
            newCustomer.ReqCreditLimit          = 0;
            newCustomer.ReqPO                   = dealerCustClass.ReqPO;
            newCustomer.RetntPct                = dealerCustClass.RetntPct;
            newCustomer.StmtCycleKey            = dealerCustClass.StmtCycleKey;
            newCustomer.StmtFormKey             = dealerCustClass.StmtFormKey;
            newCustomer.ShipPriority            = 3;
            newCustomer.Status                  = 1;
            newCustomer.StmtFormKey             = dealerCustClass.StmtFormKey;
            newCustomer.TradeDiscPct            = dealerCustClass.TradeDiscPct;
            newCustomer.UpdateCounter           = 1;
            //newCustomer.UserFld2 = accountSettings.PricePackSlip;
            //newCustomer.SalesSourceKey = accountSettings.SalesSourceKey;


            newCustomer.CustAddresses = new List <CustAddress>();
            newCustomer.CustAddresses.Add(primaryCustAddress);
            newCustomer.CustAddresses.Add(billtoCustAddress);
            newCustomer.CustAddresses.Add(shiptoCustAddress);


            var transmittals = new List <DocTransmittal>
            {
                new DocTransmittal {
                    EMail = 0, EMailFormat = 3, Fax = 0, HardCopy = 0, IncludeCC = 0, TranType = 501
                },
                new DocTransmittal {
                    EMail = 0, EMailFormat = 3, Fax = 0, HardCopy = 0, IncludeCC = 0, TranType = 502
                },
                new DocTransmittal {
                    EMail = 0, EMailFormat = 3, Fax = 0, HardCopy = 0, IncludeCC = 0, TranType = 503
                },
                new DocTransmittal {
                    EMail = 0, EMailFormat = 3, Fax = 0, HardCopy = 0, IncludeCC = 0, TranType = 505
                },
                new DocTransmittal {
                    EMail = 0, EMailFormat = 3, Fax = 0, HardCopy = 0, IncludeCC = 0, TranType = 522
                },
                new DocTransmittal {
                    EMail = 0, EMailFormat = 3, Fax = 0, HardCopy = 0, IncludeCC = 0, TranType = 801
                },
                new DocTransmittal {
                    EMail = 0, EMailFormat = 3, Fax = 0, HardCopy = 0, IncludeCC = 0, TranType = 835
                }
            };

            newCustomer.DocTransmittals = new List <DocTransmittal>();
            newCustomer.DocTransmittals.AddRange(transmittals);

            custService.AddCustomerWithDependencies(newCustomer);
        }