Пример #1
0
        /// <summary>
        /// convert salesperson to view model
        /// </summary>
        /// <param name="salesperson"></param>
        /// <returns></returns>
        public SalespersonViewModel ConvertToView(RM00301_Salesperson salesperson)
        {
            SalespersonViewModel model = new SalespersonViewModel();

            model.SalespersonId             = salesperson.SLPRSNID;
            model.SalespersonName           = (!string.IsNullOrEmpty(salesperson.SLPRSNFN.Replace(" ", string.Empty)) && !string.IsNullOrEmpty(salesperson.SPRSNSLN.Replace(" ", string.Empty))) ? salesperson.SLPRSNFN + " " + salesperson.SPRSNSLN : "N/A";
            model.Phone1                    = FormattingManager.FormatPhone(salesperson.PHONE1);
            model.FaxNumber                 = FormattingManager.FormatPhone(salesperson.FAX);
            model.SalesTerritoryDescription = salesperson.SALSTERR;
            model.IsActive                  = salesperson.INACTIVE != 1 ? true : false;

            return(model);
        }
Пример #2
0
        /// <summary>
        /// get salesperson by id
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public RM00301_Salesperson GetSalesperson(string id)
        {
            var salesperson = new RM00301_Salesperson();

            try
            {
                salesperson = _dynamicsContext.RM00301_Salesperson.FirstOrDefault(x => x.SLPRSNID.Replace(" ", string.Empty).ToLower() == id.Replace(" ", string.Empty).ToLower());
            }
            catch (Exception ex)
            {
                logger.ErrorFormat("Error getting salesperson: {0} ", ex.ToString());
            }

            return(salesperson);
        }
Пример #3
0
        /// <summary>
        /// get salesperson by customer
        /// </summary>
        /// <param name="customerNumber"></param>
        /// <returns></returns>
        public RM00301_Salesperson GetSalespersonByCustomer(string customerNumber)
        {
            var salesperson = new RM00301_Salesperson();

            try
            {
                var customer = _dynamicsContext.RM00101_Customer.FirstOrDefault(x => x.CUSTNMBR.Replace(" ", string.Empty).ToLower() == customerNumber.Replace(" ", string.Empty).ToLower());
                salesperson = _dynamicsContext.RM00301_Salesperson.FirstOrDefault(x => x.SLPRSNID.Replace(" ", string.Empty).ToLower() == customer.SLPRSNID.Replace(" ", string.Empty).ToLower());
            }
            catch (Exception ex)
            {
                logger.ErrorFormat("Error getting salesperson: {0} ", ex.ToString());
            }

            return(salesperson);
        }
Пример #4
0
        /// <summary>
        /// update salesperson
        /// </summary>
        /// <param name="salesperson"></param>
        /// <returns></returns>
        public OperationResult UpdateSalesperson(RM00301_Salesperson salesperson)
        {
            var operationResult = new OperationResult();

            var existingSalesperson = _dynamicsContext.RM00301_Salesperson.FirstOrDefault(x => x.SLPRSNID.Replace(" ", string.Empty) == salesperson.SLPRSNID);

            if (existingSalesperson != null)
            {
                logger.Debug("Salesperson is being updated.");

                try
                {
                    existingSalesperson.SLPRSNID   = salesperson.SLPRSNID;
                    existingSalesperson.EMPLOYID   = salesperson.EMPLOYID;
                    existingSalesperson.VENDORID   = salesperson.VENDORID;
                    existingSalesperson.SLPRSNFN   = salesperson.SLPRSNFN;
                    existingSalesperson.SPRSNSMN   = salesperson.SPRSNSMN;
                    existingSalesperson.SPRSNSLN   = salesperson.SPRSNSLN;
                    existingSalesperson.ADDRESS1   = salesperson.ADDRESS1;
                    existingSalesperson.ADDRESS2   = salesperson.ADDRESS2;
                    existingSalesperson.ADDRESS3   = salesperson.ADDRESS3;
                    existingSalesperson.CITY       = salesperson.CITY;
                    existingSalesperson.STATE      = salesperson.STATE;
                    existingSalesperson.ZIP        = salesperson.ZIP;
                    existingSalesperson.COUNTRY    = salesperson.COUNTRY;
                    existingSalesperson.PHONE1     = salesperson.PHONE1;
                    existingSalesperson.PHONE2     = salesperson.PHONE2;
                    existingSalesperson.PHONE3     = salesperson.PHONE3;
                    existingSalesperson.FAX        = salesperson.FAX;
                    existingSalesperson.INACTIVE   = salesperson.INACTIVE;
                    existingSalesperson.SALSTERR   = salesperson.SALSTERR;
                    existingSalesperson.COMMCODE   = salesperson.COMMCODE;
                    existingSalesperson.COMPRCNT   = salesperson.COMPRCNT;
                    existingSalesperson.STDCPRCT   = salesperson.STDCPRCT;
                    existingSalesperson.COMAPPTO   = salesperson.COMAPPTO;
                    existingSalesperson.COSTTODT   = salesperson.COSTTODT;
                    existingSalesperson.CSTLSTYR   = salesperson.CSTLSTYR;
                    existingSalesperson.TTLCOMTD   = salesperson.TTLCOMTD;
                    existingSalesperson.TTLCOMLY   = salesperson.TTLCOMLY;
                    existingSalesperson.COMSLTDT   = salesperson.COMSLTDT;
                    existingSalesperson.COMSLLYR   = salesperson.COMSLLYR;
                    existingSalesperson.NCOMSLTD   = salesperson.NCOMSLTD;
                    existingSalesperson.NCOMSLYR   = salesperson.NCOMSLYR;
                    existingSalesperson.KPCALHST   = salesperson.KPCALHST;
                    existingSalesperson.KPERHIST   = salesperson.KPERHIST;
                    existingSalesperson.NOTEINDX   = salesperson.NOTEINDX;
                    existingSalesperson.MODIFDT    = salesperson.MODIFDT;
                    existingSalesperson.CREATDDT   = salesperson.CREATDDT;
                    existingSalesperson.COMMDEST   = salesperson.COMMDEST;
                    existingSalesperson.DEX_ROW_TS = salesperson.DEX_ROW_TS;
                    existingSalesperson.DEX_ROW_ID = salesperson.DEX_ROW_ID;

                    _dynamicsContext.SubmitChanges();

                    operationResult.Success = true;
                    operationResult.Message = "Success";
                }
                catch (Exception ex)
                {
                    operationResult.Success = false;
                    operationResult.Message = "Error";
                    logger.ErrorFormat("Error while updating salesperson: { 0} ", ex.ToString());
                }
            }
            else
            {
                operationResult.Success = false;
                operationResult.Message = "Unable to find selected salesperson.";
            }

            return(operationResult);
        }
Пример #5
0
        /// <summary>
        /// save new salesperson
        /// </summary>
        /// <param name="salesperson"></param>
        /// <returns></returns>
        public OperationResult SaveSalesperson(RM00301_Salesperson salesperson)
        {
            var operationResult = new OperationResult();

            var existingSalesperson = _dynamicsContext.RM00301_Salesperson.FirstOrDefault(x => x.SLPRSNID.Replace(" ", string.Empty) == salesperson.SLPRSNID);

            if (existingSalesperson == null)
            {
                logger.Debug("Salesperson is being created...");

                string sCustomerDocument;
                string sXsdSchema;
                string sConnectionString;

                using (eConnectMethods e = new eConnectMethods())
                {
                    try
                    {
                        // Create the customer data file
                        SerializeSalespersonObject("Customer.xml");

                        // Use an XML document to create a string representation of the customer
                        XmlDocument xmldoc = new XmlDocument();
                        xmldoc.Load("Customer.xml");
                        sCustomerDocument = xmldoc.OuterXml;

                        // Specify the Microsoft Dynamics GP server and database in the connection string
                        sConnectionString = @"data source=localhost;initial catalog=TWO;integrated security=SSPI;persist security info=False;packet size=4096";

                        // Create an XML Document object for the schema
                        XmlDocument XsdDoc = new XmlDocument();

                        // Create a string representing the eConnect schema
                        sXsdSchema = XsdDoc.OuterXml;

                        // Pass in xsdSchema to validate against.
                        e.CreateEntity(sConnectionString, sCustomerDocument);

                        operationResult.Success = true;
                        operationResult.Message = "Success";
                    }
                    // The eConnectException class will catch eConnect business logic errors.
                    // display the error message on the console
                    catch (eConnectException exc)
                    {
                        Console.Write(exc.ToString());
                        operationResult.Success = false;
                        operationResult.Message = "Error";
                        logger.ErrorFormat("Error saving new salesperson: {0} ", exc.ToString());
                    }
                    // Catch any system error that might occurr.
                    // display the error message on the console
                    catch (System.Exception ex)
                    {
                        Console.Write(ex.ToString());
                        operationResult.Success = false;
                        operationResult.Message = "Error";
                        logger.ErrorFormat("Error saving new salesperson: {0} ", ex.ToString());
                    }
                    finally
                    {
                        // Call the Dispose method to release the resources
                        // of the eConnectMethds object
                        e.Dispose();
                    }
                } // end of using statement

                //try
                //{
                //    var newSalesperson = new RM00301_Salesperson()
                //    {
                //        SLPRSNID = salesperson.SLPRSNID,
                //        EMPLOYID = salesperson.EMPLOYID,
                //        VENDORID = salesperson.VENDORID,
                //        SLPRSNFN = salesperson.SLPRSNFN,
                //        SPRSNSMN = salesperson.SPRSNSMN,
                //        SPRSNSLN = salesperson.SPRSNSLN,
                //        ADDRESS1 = salesperson.ADDRESS1,
                //        ADDRESS2 = salesperson.ADDRESS2,
                //        ADDRESS3 = salesperson.ADDRESS3,
                //        CITY = salesperson.CITY,
                //        STATE = salesperson.STATE,
                //        ZIP = salesperson.ZIP,
                //        COUNTRY = salesperson.COUNTRY,
                //        PHONE1 = salesperson.PHONE1,
                //        PHONE2 = salesperson.PHONE2,
                //        PHONE3 = salesperson.PHONE3,
                //        FAX = salesperson.FAX,
                //        INACTIVE = salesperson.INACTIVE,
                //        SALSTERR = salesperson.SALSTERR,
                //        COMMCODE = salesperson.COMMCODE,
                //        COMPRCNT = salesperson.COMPRCNT,
                //        STDCPRCT = salesperson.STDCPRCT,
                //        COMAPPTO = salesperson.COMAPPTO,
                //        COSTTODT = salesperson.COSTTODT,
                //        CSTLSTYR = salesperson.CSTLSTYR,
                //        TTLCOMTD = salesperson.TTLCOMTD,
                //        TTLCOMLY = salesperson.TTLCOMLY,
                //        COMSLTDT = salesperson.COMSLTDT,
                //        COMSLLYR = salesperson.COMSLLYR,
                //        NCOMSLTD = salesperson.NCOMSLTD,
                //        NCOMSLYR = salesperson.NCOMSLYR,
                //        KPCALHST = salesperson.KPCALHST,
                //        KPERHIST = salesperson.KPERHIST,
                //        NOTEINDX = salesperson.NOTEINDX,
                //        MODIFDT = salesperson.MODIFDT,
                //        CREATDDT = salesperson.CREATDDT,
                //        COMMDEST = salesperson.COMMDEST,
                //        DEX_ROW_TS = salesperson.DEX_ROW_TS,
                //        DEX_ROW_ID = salesperson.DEX_ROW_ID
                //    };

                //    _dynamicsContext.RM00301_Salesperson.InsertOnSubmit(newSalesperson);

                //    _dynamicsContext.SubmitChanges();

                //    operationResult.Success = true;
                //    operationResult.Message = "Success";
                //}
                //catch (Exception ex)
                //{
                //    operationResult.Success = false;
                //    operationResult.Message = "Error";
                //    logger.ErrorFormat("Error saving new salesperson: {0} ", ex.ToString());
                //}
            }
            else
            {
                operationResult.Success = false;
                operationResult.Message = "Duplicate Entry";
            }

            return(operationResult);
        }