Beispiel #1
0
        public ActionResult AddVendor(VendorModel objVendorModel)
        {
            if (Session["realmId"] != null)
            {
                string realmId = Session["realmId"].ToString();
                try
                {
                    string AccessToken = Session["access_token"].ToString();
                    var    principal   = User as ClaimsPrincipal;
                    OAuth2RequestValidator oauthValidator = new OAuth2RequestValidator(AccessToken);

                    // Create a ServiceContext with Auth tokens and realmId
                    ServiceContext serviceContext = new ServiceContext(realmId, IntuitServicesType.QBO, oauthValidator);
                    serviceContext.IppConfiguration.MinorVersion.Qbo = "23";
                    DataService commonServiceQBO = new DataService(serviceContext);
                    // Create a QuickBooks QueryService using ServiceContext

                    PhysicalAddress vendorAddr   = new PhysicalAddress();
                    EmailAddress    vendoremail  = new EmailAddress();
                    TelephoneNumber mobileNumber = new TelephoneNumber();
                    WebSiteAddress  websiteaddr  = new WebSiteAddress();
                    Vendor          vendor       = new Vendor();
                    //Mandatory Fields
                    vendor.GivenName  = objVendorModel.FirstName;
                    vendor.Title      = objVendorModel.Title;
                    vendor.MiddleName = objVendorModel.MiddleName;
                    vendor.FamilyName = objVendorModel.LastName;
                    vendor.AcctNum    = objVendorModel.AccountNo;

                    vendor.Balance     = Convert.ToDecimal(objVendorModel.BalanceAmount);
                    vendor.CompanyName = objVendorModel.Company;

                    vendorAddr.City             = objVendorModel.City;
                    vendorAddr.Country          = objVendorModel.Country;
                    vendoremail.Address         = objVendorModel.Email;
                    mobileNumber.FreeFormNumber = objVendorModel.MobileNumber;
                    websiteaddr.URI             = objVendorModel.Website;

                    vendor.BillAddr         = vendorAddr;
                    vendor.PrimaryEmailAddr = vendoremail;
                    vendor.Mobile           = mobileNumber;
                    vendor.WebAddr          = websiteaddr;
                    Vendor resultVendor = commonServiceQBO.Add(vendor) as Vendor;
                    QueryService <Vendor> querySvcVendor = new QueryService <Vendor>(serviceContext);
                    List <Vendor>         vendorListData = querySvcVendor.ExecuteIdsQuery("SELECT * FROM Vendor").OrderByDescending(x => x.Id).ToList();
                    var    tt             = vendorListData.FirstOrDefault();
                    Vendor resultCustomer = commonServiceQBO.FindById(tt) as Vendor;
                    return(RedirectToAction("VendorList", "VendorQuickBook"));
                }
                catch (Exception ex)
                {
                    return(View("ApiCallService", (object)("QBO API call Failed!" + " Error message: " + ex.Message)));
                }
            }
            else
            {
                return(View("ApiCallService", (object)"QBO API call Failed!"));
            }
        }
        /*
         * Create a Vendor
         * The Vendor object represents the seller from whom your company purchases any service or product.
         */
        private Vendor CreateVendor(ServiceContext serviceContext)
        {
            DataService dataService = new DataService(serviceContext);
            Vendor      vendor      = new Vendor();


            //Add additional vendor info

            vendor.GivenName   = "GivenName";
            vendor.MiddleName  = "MiddleName";
            vendor.FamilyName  = "FamilyName";
            vendor.Suffix      = "Suffix";
            vendor.CompanyName = "CompanyName";
            vendor.DisplayName = "DisplayName_" + Guid.NewGuid().ToString("N");

            vendor.Active          = true;
            vendor.ActiveSpecified = true;

            //Add contact details ie phone, fax, email and website details
            TelephoneNumber primaryPhone = new TelephoneNumber();

            primaryPhone.FreeFormNumber = "FreeFormNumber";
            vendor.PrimaryPhone         = primaryPhone;

            TelephoneNumber alternatePhone = new TelephoneNumber();

            alternatePhone.FreeFormNumber = "FreeFormNumber";
            vendor.AlternatePhone         = alternatePhone;

            TelephoneNumber mobile = new TelephoneNumber();

            mobile.FreeFormNumber = "FreeFormNumber";
            vendor.Mobile         = mobile;

            TelephoneNumber fax = new TelephoneNumber();

            fax.FreeFormNumber = "FreeFormNumber";
            vendor.Fax         = fax;

            EmailAddress primaryEmailAddr = new EmailAddress();

            primaryEmailAddr.Address = "*****@*****.**";
            vendor.PrimaryEmailAddr  = primaryEmailAddr;

            WebSiteAddress webAddr = new WebSiteAddress();

            webAddr.URI    = "http://site.com";
            vendor.WebAddr = webAddr;
            Vendor vendorAdded = dataService.Add <Vendor>(vendor);

            return(vendorAdded);
        }
Beispiel #3
0
        private static Customer GetCustomer()
        {
            var guid     = GetGuid();
            var customer = new Customer {
                Taxable = false, TaxableSpecified = true
            };

            var billAddress = new PhysicalAddress
            {
                Line1   = "Line1",
                Line2   = "Line2",
                Line3   = "Line3",
                Line4   = "Line4",
                Line5   = "Line5",
                City    = "City",
                Country = "India",
                CountrySubDivisionCode = "CountrySubDivisionCode",
                PostalCode             = "PostalCode"
            };

            customer.BillAddr = billAddress;

            var shipAddress = new PhysicalAddress
            {
                Line1   = "Line1",
                Line2   = "Line2",
                Line3   = "Line3",
                Line4   = "Line4",
                Line5   = "Line5",
                City    = "City",
                Country = "USA",
                CountrySubDivisionCode = "CountrySubDivisionCode",
                PostalCode             = "PostalCode"
            };

            customer.ShipAddr = shipAddress;

            var otherAddressList = new List <PhysicalAddress>();
            var otherAddress     = new PhysicalAddress
            {
                Line1   = "Line1",
                Line2   = "Line2",
                Line3   = "Line3",
                Line4   = "Line4",
                Line5   = "Line5",
                City    = "City",
                Country = "UK",
                CountrySubDivisionCode = "CountrySubDivisionCode",
                PostalCode             = "PostalCode"
            };

            otherAddressList.Add(otherAddress);
            customer.OtherAddr = otherAddressList.ToArray();

            customer.Notes                   = "Notes";
            customer.Job                     = false;
            customer.JobSpecified            = true;
            customer.BillWithParent          = false;
            customer.BillWithParentSpecified = true;

            customer.Balance          = new decimal(100.00);
            customer.BalanceSpecified = true;

            customer.BalanceWithJobs          = new decimal(100.00);
            customer.BalanceWithJobsSpecified = true;

            customer.PreferredDeliveryMethod = "Print";
            customer.ResaleNum = "ResaleNum";

            customer.Title              = "Title";
            customer.GivenName          = "GivenName";
            customer.MiddleName         = "MiddleName";
            customer.FamilyName         = "FamilyName";
            customer.Suffix             = "Suffix";
            customer.FullyQualifiedName = "Name_" + guid;
            customer.CompanyName        = "CompanyName";
            customer.DisplayName        = "Name_" + guid;
            customer.PrintOnCheckName   = "PrintOnCheckName";

            customer.Active          = true;
            customer.ActiveSpecified = true;

            var primaryPhone = new TelephoneNumber {
                FreeFormNumber = "8290487145"
            };

            customer.PrimaryPhone = primaryPhone;

            var alternatePhone = new TelephoneNumber {
                FreeFormNumber = "9166622789"
            };

            customer.AlternatePhone = alternatePhone;

            var mobile = new TelephoneNumber {
                FreeFormNumber = "9829478685"
            };

            customer.Mobile = mobile;

            var fax = new TelephoneNumber {
                FreeFormNumber = "0141-556677"
            };

            customer.Fax = fax;

            var primaryEmailAddress = new EmailAddress {
                Address = "*****@*****.**"
            };

            customer.PrimaryEmailAddr = primaryEmailAddress;

            var websiteAddress = new WebSiteAddress {
                URI = "http://www.google.com"
            };

            customer.WebAddr = websiteAddress;

            return(customer);
        }
Beispiel #4
0
        public ActionResult Index(VendorSetupManagementModel Obj)
        {
            eTracLoginModel objLoginSession = new eTracLoginModel();

            ViewBag.AccountSection = true;
            objLoginSession        = (eTracLoginModel)Session["eTrac"];
            var _workorderems = new workorderEMSEntities();

            try
            {
                Obj.UserId = objLoginSession.UserId;
                //Obj.CompanyType = 2;
                if (Obj.VendorId == null)
                {
                    Obj.VendorId = 0;
                    if (Obj.CompanyDocumentsFile != null)
                    {
                        string FileName = objLoginSession.UserId + "_" + DateTime.Now.Ticks.ToString() + "_" + Convert.ToString(Obj.CompanyDocumentsFile.FileName);
                        CommonHelper.StaticUploadImage(Obj.CompanyDocumentsFile, Server.MapPath(ConfigurationManager.AppSettings["CompanyDocument"]), FileName);
                        Obj.CompanyDocuments = FileName;
                    }
                    if (Obj.VendorInsuranceModel.InsuranceDocumentFile != null)
                    {
                        string FileName = objLoginSession.UserId + "_" + DateTime.Now.Ticks.ToString() + "_" + Convert.ToString(Obj.VendorInsuranceModel.InsuranceDocumentFile.FileName);
                        CommonHelper.StaticUploadImage(Obj.VendorInsuranceModel.InsuranceDocumentFile, Server.MapPath(ConfigurationManager.AppSettings["LicenseAndInsuranceDocument"]), FileName);
                        Obj.VendorInsuranceModel.InsuranceDocument = FileName;
                    }
                    if (Obj.VendorInsuranceModel.LicenseDocumentFile != null)
                    {
                        string FileName = objLoginSession.UserId + "_" + DateTime.Now.Ticks.ToString() + "_" + Convert.ToString(Obj.VendorInsuranceModel.LicenseDocumentFile.FileName);
                        CommonHelper.StaticUploadImage(Obj.VendorInsuranceModel.LicenseDocumentFile, Server.MapPath(ConfigurationManager.AppSettings["LicenseAndInsuranceDocument"]), FileName);
                        Obj.VendorInsuranceModel.LicenseDocument = FileName;
                    }
                    if (Obj.VendorAccountDetailsModel.AccountDocumentsFile != null)
                    {
                        string FileName = objLoginSession.UserId + "_" + DateTime.Now.Ticks.ToString() + "_" + Convert.ToString(Obj.VendorAccountDetailsModel.AccountDocumentsFile.FileName);
                        CommonHelper.StaticUploadImage(Obj.VendorAccountDetailsModel.AccountDocumentsFile, Server.MapPath(ConfigurationManager.AppSettings["BankAccountDocsDocument"]), FileName);
                        Obj.VendorAccountDetailsModel.AccountDocuments = FileName;
                    }


                    //if (Session["realmId"] != null)
                    //{
                    string realmId = CallbackController.RealMId.ToString();// Session["realmId"].ToString();
                    try
                    {
                        string AccessToken = CallbackController.AccessToken.ToString();// Session["access_token"].ToString();
                        var    principal   = User as ClaimsPrincipal;
                        var    cmp_Data    = new CompanyInfo();
                        OAuth2RequestValidator oauthValidator = new OAuth2RequestValidator(AccessToken);

                        // Create a ServiceContext with Auth tokens and realmId
                        ServiceContext serviceContext = new ServiceContext(realmId, IntuitServicesType.QBO, oauthValidator);
                        serviceContext.IppConfiguration.MinorVersion.Qbo = "23";
                        DataService commonServiceQBO = new DataService(serviceContext);
                        // Create a QuickBooks QueryService using ServiceContext
                        QueryService <CompanyInfo> querySvc = new QueryService <CompanyInfo>(serviceContext);
                        CompanyInfo company = querySvc.ExecuteIdsQuery("SELECT * FROM CompanyInfo").FirstOrDefault();

                        QueryService <Account> querySvcAccount = new QueryService <Account>(serviceContext);
                        List <Account>         accountData     = querySvcAccount.ExecuteIdsQuery("SELECT * FROM Account MaxResults 1000").ToList();

                        var address       = new PhysicalAddress();
                        var emailaddr     = new EmailAddress();
                        var websiteAddr   = new WebSiteAddress();
                        var telephoneAddr = new TelephoneNumber();

                        var account = new Account();


                        var getCompanyInfo = _IVendorManagement.GetCompanyInfo(Convert.ToInt64(company.Id));
                        if (Obj.CompanyType == 2)
                        {
                            if (getCompanyInfo > 0)
                            {
                                ViewBag.Message           = CommonMessage.CompanyAlreadySaved();
                                ViewBag.AlertMessageClass = ObjAlertMessageClass.Success;
                            }
                            else
                            {
                                address.City                 = Obj.Address1City;
                                address.Country              = "USA";
                                address.Line1                = Obj.Address1;
                                address.PostalCode           = company.CompanyAddr.PostalCode;
                                company.CompanyAddr          = address;
                                emailaddr.Address            = Obj.VendorEmail;
                                company.CompanyEmailAddr     = emailaddr;
                                websiteAddr.URI              = Obj.Website;
                                company.CompanyURL           = websiteAddr;
                                telephoneAddr.FreeFormNumber = Obj.Phone1;
                                company.PrimaryPhone         = telephoneAddr;
                                company.LegalAddr            = address;
                                company.LegalName            = Obj.CompanyNameLegal;
                                company.CompanyName          = Obj.CompanyNameLegal;
                                CompanyInfo update          = commonServiceQBO.Update(company) as CompanyInfo;
                                var         resultQuickBook = _IVendorManagement.SaveQuickBookId(company.Id, Obj.VendorId);

                                if (Obj.VendorAccountDetailsModel != null)
                                {
                                    account.Active = true;
                                    if (Obj.VendorAccountDetailsModel.PaymentMode == 1)
                                    {
                                        var str = Obj.VendorAccountDetailsModel.CardNumber.Substring(Obj.VendorAccountDetailsModel.CardNumber.Length - 4);
                                        account.AccountAlias       = "CreditCard_" + str;
                                        account.Description        = "Credit Card";
                                        account.FullyQualifiedName = "CreditCard_" + str;
                                        account.Name        = "CreditCard_" + str;
                                        account.AccountType = AccountTypeEnum.CreditCard;
                                        account.BankNum     = Obj.VendorAccountDetailsModel.CardNumber;
                                    }
                                    else
                                    {
                                        var str = Obj.VendorAccountDetailsModel.AccountNumber.Substring(Obj.VendorAccountDetailsModel.AccountNumber.Length - 4);
                                        account.AccountAlias       = Obj.VendorAccountDetailsModel.BankName + str;
                                        account.Description        = "Bank";
                                        account.FullyQualifiedName = Obj.VendorAccountDetailsModel.BankName + str;
                                        account.Name        = Obj.VendorAccountDetailsModel.BankName + str;
                                        account.AccountType = AccountTypeEnum.Bank;

                                        account.AcctNum = Obj.VendorAccountDetailsModel.AccountNumber;
                                        account.BankNum = Obj.VendorAccountDetailsModel.AccountNumber;
                                    }

                                    account.Classification       = AccountClassificationEnum.Liability;
                                    account.SubAccount           = false;
                                    account.AccountTypeSpecified = true;
                                    account.sparse = false;
                                    Account accountSaved = commonServiceQBO.Add(account) as Account;
                                    Obj.VendorAccountDetailsModel.QuickbookAcountId = Convert.ToInt64(accountSaved.Id);
                                }

                                //This one added on 21 Feb
                                var result = _IVendorManagement.ProcessVendorSetup(Obj);
                                if (result.Result == Result.Completed)
                                {
                                    ViewBag.Message           = CommonMessage.SaveSuccessMessage();
                                    ViewBag.AlertMessageClass = ObjAlertMessageClass.Success;
                                    return(View("~/Areas/AdminSection/Views/AdminCompany/CompanyListAdmin.cshtml"));
                                }
                                else
                                {
                                    ViewBag.Message           = CommonMessage.VendorFailure();
                                    ViewBag.AlertMessageClass = ObjAlertMessageClass.Danger;
                                    return(View("~/Areas/AdminSection/Views/AdminCompany/CompanyListAdmin.cshtml"));
                                }
                                //ViewBag.Message = CommonMessage.VendorSave();
                                //ViewBag.AlertMessageClass = ObjAlertMessageClass.Success;
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                        ViewBag.Message           = ex.Message;
                        ViewBag.AlertMessageClass = ObjAlertMessageClass.Danger;
                    }
                    //}

                    if (Obj.CompanyType == 3)
                    {
                        var result = _IVendorManagement.ProcessVendorSetup(Obj);
                        if (result.Result == Result.Completed)
                        {
                            ViewBag.Message           = CommonMessage.SaveSuccessMessage();
                            ViewBag.AlertMessageClass = ObjAlertMessageClass.Success;
                            return(View("~/Areas/AdminSection/Views/AdminCompany/CompanyListAdmin.cshtml"));
                        }
                        else
                        {
                            ViewBag.Message           = CommonMessage.VendorFailure();
                            ViewBag.AlertMessageClass = ObjAlertMessageClass.Danger;
                            return(View("~/Areas/AdminSection/Views/AdminCompany/CompanyListAdmin.cshtml"));
                        }
                    }
                    else
                    {
                        ViewBag.Message           = CommonMessage.CompanyAlreadySaved();
                        ViewBag.AlertMessageClass = ObjAlertMessageClass.Success;
                    }
                }
            }
            catch (Exception ex)
            {
                ViewBag.Message = ex.Message; ViewBag.AlertMessageClass = ObjAlertMessageClass.Danger;
            }
            return(View("~/Areas/AdminSection/Views/AdminCompany/CompanyListAdmin.cshtml"));
        }
Beispiel #5
0
        public ActionResult AddAccountDetailsAdmin(VendorSetupManagementModel Obj)
        {
            eTracLoginModel objLoginSession = new eTracLoginModel();

            objLoginSession = (eTracLoginModel)Session["eTrac"];
            var accountSaved = new Account();

            try
            {
                Obj.UserId = objLoginSession.UserId;
                if (Obj.VendorId > 0)
                {
                    if (Obj.VendorAccountDetailsModel.AccountDocumentsFile != null)
                    {
                        string FileName = objLoginSession.UserId + "_" + DateTime.Now.Ticks.ToString() + "_" + Convert.ToString(Obj.VendorAccountDetailsModel.AccountDocumentsFile.FileName);
                        CommonHelper.StaticUploadImage(Obj.VendorAccountDetailsModel.AccountDocumentsFile, Server.MapPath(ConfigurationManager.AppSettings["BankAccountDocsDocument"]), FileName);
                        Obj.VendorAccountDetailsModel.AccountDocuments = FileName;
                    }
                    //Obj.VendorId = Obj.CompanyId;
                    //if (Session["realmId"] != null)
                    //{
                    string realmId = CallbackController.RealMId.ToString(); //Session["realmId"].ToString();
                    try
                    {
                        string AccessToken = CallbackController.AccessToken.ToString();// Session["access_token"].ToString();
                        var    principal   = User as ClaimsPrincipal;
                        var    cmp_Data    = new CompanyInfo();
                        OAuth2RequestValidator oauthValidator = new OAuth2RequestValidator(AccessToken);

                        // Create a ServiceContext with Auth tokens and realmId
                        ServiceContext serviceContext = new ServiceContext(realmId, IntuitServicesType.QBO, oauthValidator);
                        serviceContext.IppConfiguration.MinorVersion.Qbo = "23";
                        DataService commonServiceQBO = new DataService(serviceContext);
                        // Create a QuickBooks QueryService using ServiceContext
                        QueryService <CompanyInfo> querySvc = new QueryService <CompanyInfo>(serviceContext);
                        CompanyInfo company = querySvc.ExecuteIdsQuery("SELECT * FROM CompanyInfo").FirstOrDefault();

                        QueryService <Account> querySvcAccount = new QueryService <Account>(serviceContext);
                        List <Account>         accountData     = querySvcAccount.ExecuteIdsQuery("SELECT * FROM Account MaxResults 1000").ToList();

                        var address       = new PhysicalAddress();
                        var emailaddr     = new EmailAddress();
                        var websiteAddr   = new WebSiteAddress();
                        var telephoneAddr = new TelephoneNumber();

                        var account = new Account();

                        var getCompanyInfo = _IVendorManagement.GetCompanyInfo(Convert.ToInt64(company.Id));
                        if (getCompanyInfo > 0 && getCompanyInfo == Convert.ToInt64(company.Id))
                        {
                            ViewBag.Message           = CommonMessage.CompanyAlreadySaved();
                            ViewBag.AlertMessageClass = ObjAlertMessageClass.Success;

                            if (Obj.VendorAccountDetailsModel != null)
                            {
                                account.Active = true;
                                if (Obj.VendorAccountDetailsModel.PaymentMode == 1)
                                {
                                    var str = Obj.VendorAccountDetailsModel.CardNumber.Substring(Obj.VendorAccountDetailsModel.CardNumber.Length - 4);
                                    account.AccountAlias       = "CreditCard_" + str;
                                    account.Description        = "Credit Card";
                                    account.FullyQualifiedName = "CreditCard_" + str;
                                    account.Name        = "CreditCard_" + str;
                                    account.AccountType = AccountTypeEnum.CreditCard;
                                    account.BankNum     = Obj.VendorAccountDetailsModel.CardNumber;
                                }
                                else
                                {
                                    var str = Obj.VendorAccountDetailsModel.AccountNumber.Substring(Obj.VendorAccountDetailsModel.AccountNumber.Length - 4);
                                    account.AccountAlias       = Obj.VendorAccountDetailsModel.BankName + str;
                                    account.Description        = "Bank";
                                    account.FullyQualifiedName = Obj.VendorAccountDetailsModel.BankName + str;
                                    account.Name        = Obj.VendorAccountDetailsModel.BankName + str;
                                    account.AccountType = AccountTypeEnum.Bank;
                                    //account.SubAccount = "Saving";
                                    account.AcctNum = Obj.VendorAccountDetailsModel.AccountNumber;
                                    account.BankNum = Obj.VendorAccountDetailsModel.AccountNumber;
                                }

                                //account.Classification = AccountClassificationEnum.Liability;
                                account.SubAccount           = false;
                                account.AccountTypeSpecified = true;
                                account.sparse                      = false;
                                account.CurrentBalance              = Obj.VendorAccountDetailsModel.BalanceAmount;
                                account.CurrentBalanceSpecified     = true;
                                account.OpeningBalance              = Obj.VendorAccountDetailsModel.BalanceAmount;
                                account.OpeningBalanceSpecified     = true;
                                account.OpeningBalanceDate          = DateTime.UtcNow;
                                account.OpeningBalanceDateSpecified = true;

                                accountSaved = commonServiceQBO.Add(account) as Account;
                                Obj.VendorAccountDetailsModel.QuickbookAcountId = Convert.ToInt64(accountSaved.Id);
                            }

                            ViewBag.Message           = CommonMessage.VendorSave();
                            ViewBag.AlertMessageClass = ObjAlertMessageClass.Success;
                        }
                    }
                    catch (Exception ex)
                    {
                        ViewBag.Message           = ex.Message;
                        ViewBag.AlertMessageClass = ObjAlertMessageClass.Danger;
                    }
                    //}
                    ViewBag.AccountSection = true;
                    var result = _IVendorManagement.SaveVendorAccount(Obj);
                    if (result.Result == Result.Completed)
                    {
                        ViewBag.Message           = CommonMessage.SaveSuccessMessage();
                        ViewBag.AlertMessageClass = ObjAlertMessageClass.Success;
                        return(View("~/Areas/AdminSection/Views/AdminCompany/CompanyListAdmin.cshtml"));
                    }
                    else
                    {
                        ViewBag.Message           = CommonMessage.FailureMessage();
                        ViewBag.AlertMessageClass = ObjAlertMessageClass.Danger;
                        return(View("~/Areas/AdminSection/Views/AdminCompany/AddAccount.cshtml"));
                    }
                }
                else
                {
                    return(View("~/Areas/AdminSection/Views/AdminCompany/AddAccount.cshtml"));
                }
            }
            catch (Exception ex)
            {
                ViewBag.Message = ex.Message; ViewBag.AlertMessageClass = ObjAlertMessageClass.Danger;
            }
            return(View("~/Areas/AdminSection/Views/AdminCompany/CompanyListAdmin.cshtml"));
        }