示例#1
0
        private ERPCustomer getCustomerFromForm()
        {
            ERPCustomer customer = new ERPCustomer();

            customer.customer_name  = txtCustomerName.Text;
            customer.customer_group = txtCustomerGroup.Text;
            customer.territory      = txtCustomerTerritory.Text;
            if (txtCustomerType.Text == "Company")
            {
                customer.customer_type = CustomerType.Company;
            }
            else
            {
                customer.customer_type = CustomerType.Individual;
            }
            if (txtCustomerStatus.Text == "Active")
            {
                customer.status = CustomerStatus.Active;
            }
            else if (txtCustomerStatus.Text == "Dormant")
            {
                customer.status = CustomerStatus.Dormant;
            }
            else if (txtCustomerStatus.Text == "Open")
            {
                customer.status = CustomerStatus.Open;
            }
            else
            {
                customer.status = CustomerStatus.None;
            }
            return(customer);
        }
示例#2
0
 private void updateCustomer(string customerName)
 {
     if (client != null)
     {
         ERPCustomer customer = getCustomerFromForm();
         ERPObject   obj      = customer.Object;
         client.UpdateObject(DocType.Customer, customerName, obj);
     }
 }
示例#3
0
        private void insertCustomer()
        {
            if (client != null)
            {
                ERPCustomer customer = getCustomerFromForm();
                ERPObject   obj      = customer.Object;
                client.InsertObject(obj);

                getCustomerList();
            }
        }
示例#4
0
        private void getCustomerInfo(string customerName)
        {
            if (client != null)
            {
                ERPObject   obj      = client.GetObject(DocType.Customer, customerName);
                ERPCustomer customer = new ERPCustomer(obj);

                txtCustomerName.Text      = customer.customer_name;
                txtCustomerGroup.Text     = customer.customer_group;
                txtCustomerStatus.Text    = customer.status.ToString();
                txtCustomerTerritory.Text = customer.territory;
                txtCustomerType.Text      = customer.customer_type.ToString();
            }
        }
示例#5
0
        public void CustomerServiceTest()
        {
            ERPNextServices services         = TestUtils.CreateService();
            CustomerService customer_service = services.CustomerService;

            string test_name             = Guid.NewGuid().ToString();
            string test_customer_website = Guid.NewGuid().ToString();

            ERPCustomer initial_data = ERPCustomer.Create(test_name, Customertype.Individual, "Individual", "Australia");

            initial_data.website = test_customer_website;

            #region Test - Insert

            customer_service.Create(initial_data);

            #endregion

            #region Test - List

            List <ERPFilter> filters = new List <ERPFilter>();
            filters.Add(new ERPFilter(DocType.Customer, "name", OperatorFilter.Equals, test_name));
            var list_result = customer_service.ListNames(filters);

            Assert.IsTrue(list_result.Count == 1, "Customer result is not one");
            Assert.IsTrue(list_result[0] == test_name, "Customer name is invalid");

            #endregion

            #region Test - Get

            ERPCustomer erp_customer = customer_service.Get(test_name);
            Assert.IsTrue(erp_customer.name == test_name, "Customer name is invalid");
            Assert.IsTrue(erp_customer.website == test_customer_website, "Customer website is invalid");

            #endregion

            #region Test - Update

            // create update data
            ERPCustomer updated_customer = new ERPCustomer();
            updated_customer.name    = test_name;
            updated_customer.website = Guid.NewGuid().ToString();

            // update first
            customer_service.Update(updated_customer);

            // get a new instance - after update
            var remote_updated_customer = customer_service.Get(test_name);

            // test
            Assert.IsTrue(remote_updated_customer.website == updated_customer.website, "Customer website is invalid - after update");
            Assert.IsTrue(remote_updated_customer.territory == initial_data.territory, "Customer territory is invalid - after update");

            #endregion

            #region Test - Delete

            customer_service.Delete(test_name);

            List <ERPFilter> filters1 = new List <ERPFilter>();
            filters1.Add(new ERPFilter(DocType.Customer, "name", OperatorFilter.Equals, test_name));
            var after_delete_result_list = customer_service.ListNames(filters1);
            Assert.IsTrue(after_delete_result_list.Count == 0, "Failed to delete customer");

            ERPCustomer customer_after_delete = customer_service.Get(test_name);
            Assert.IsTrue(customer_after_delete == null, "Customer is not null");


            #endregion
        }
示例#6
0
        public void CustomerFull()
        {
            var client = TestUtils.CreateClient();

            string test_customer_name    = Guid.NewGuid().ToString();
            string test_customer_website = Guid.NewGuid().ToString();

            ERPCustomer initial_data = new ERPCustomer();

            initial_data.customer_type  = Customertype.Individual;
            initial_data.customer_name  = test_customer_name;
            initial_data.customer_group = "All Customer Groups";
            initial_data.website        = test_customer_website;
            initial_data.territory      = "All Territories";
            initial_data.mobile_no      = "216-346-2739";
            initial_data.tax_category   = "Ohio Tax";

            #region Test - Insert

            client.InsertObject(initial_data.Object);

            #endregion

            #region Test - List

            FetchListOption listOption = new FetchListOption();
            listOption.Filters.Add(new ERPFilter(DocType.Customer, "name", OperatorFilter.Equals, test_customer_name));
            listOption.IncludedFields.AddRange(new string[] { "name", "website" });
            var documents = client.ListObjects(DocType.Customer, listOption);

            Assert.IsTrue(documents.Count == 1, "Customer result is not one");
            Assert.IsTrue(documents[0].Data.name == test_customer_name, "Customer name is invalid");
            Assert.IsTrue(documents[0].Data.website == test_customer_website, "Customer website is invalid");

            #endregion

            #region Test - Get

            var full_customer_object = client.GetObject(DocType.Customer, test_customer_name);
            Assert.IsTrue(full_customer_object.Data.name == test_customer_name, "Customer name is invalid");
            Assert.IsTrue(full_customer_object.Data.website == test_customer_website, "Customer website is invalid");

            #endregion

            #region Test - Wrapper

            ERPCustomer customer = new ERPCustomer(full_customer_object);
            Assert.IsTrue(customer.customer_name == test_customer_name, "Customer name is invalid");
            Assert.IsTrue(customer.website == test_customer_website, "Customer website is invalid");
//            Assert.IsTrue(customer.status == CustomerStatus.Active, "Customer website is invalid");

            #endregion

            #region Test - Update

            ERPObject updated_obj = new ERPObject(DocType.Customer);
            updated_obj.Data.website = Guid.NewGuid().ToString();

            // update first
            client.UpdateObject(DocType.Customer, test_customer_name, updated_obj);

            // get a new instance - after update
            var remote_updated_customer = client.GetObject(DocType.Customer, test_customer_name);

            // test
            Assert.IsTrue(remote_updated_customer.Data.website == updated_obj.Data.website, "Customer website is invalid - after update");
            Assert.IsTrue(remote_updated_customer.Data.territory == initial_data.territory, "Customer territory is invalid - after update");

            #endregion


            #region Test - Delete

            client.DeleteObject(DocType.Customer, test_customer_name);

            FetchListOption option = new FetchListOption();
            option.Filters.Add(new ERPFilter(DocType.Customer, nameof(ERPCustomer.customer_name), OperatorFilter.Equals,
                                             test_customer_name));
            var after_delete_result = client.ListObjects(DocType.Customer, option);
            Assert.IsTrue(after_delete_result.Count == 0, "Failed to delete customer");

            #endregion
        }