Beispiel #1
0
        static void Main()
        {
            var spreadsheetManager = new SpreadsheetManager();

            spreadsheetManager.Connect(ConfigurationManager.AppSettings["Google_UserName"], ConfigurationManager.AppSettings["Google_Password"], ConfigurationManager.AppSettings["DatabaseName"], 0);

            var mainProducts = new List <MainProduct>();

            foreach (ListEntry mainProductEntry in spreadsheetManager.GetAllRows().Entries)
            {
                if (mainProductEntry.Elements[0].Value != "Main")
                {
                    continue;
                }

                if (mainProductEntry.Elements[1].Value == null || mainProductEntry.Elements[2].Value == null)
                {
                    continue;
                }

                var mainProduct = new MainProduct
                {
                    ID          = mainProductEntry.Elements[1].Value,
                    Name        = mainProductEntry.Elements[2].Value,
                    Description = mainProductEntry.Elements[3].Value
                };

                var query          = "producttype = \"" + mainProduct.ID + "\"";
                var subProductList = spreadsheetManager.Query(query);

                foreach (ListEntry subproductEntry in subProductList.Entries)
                {
                    mainProduct.SubProducts.Add(new SubProduct(subproductEntry.Elements[1].Value,
                                                               subproductEntry.Elements[2].Value, subproductEntry.Elements[4].Value,
                                                               subproductEntry.Elements[5].Value));
                }

                mainProduct.Initialize();

                mainProducts.Add(mainProduct);
            }

            // Upload

            foreach (var mainproduct in mainProducts)
            {
                Uploader.Upload(mainproduct);
            }
        }
Beispiel #2
0
        public static void Upload(MainProduct mainProduct)
        {
            var httpWebReq     = (HttpWebRequest)WebRequest.Create(ConfigurationManager.AppSettings["UploadURL"]);
            var encoding       = new UTF8Encoding();
            var postDataString = mainProduct.ToString();
            var data           = encoding.GetBytes(postDataString);

            httpWebReq.ContentLength = Encoding.UTF8.GetByteCount(postDataString);
            httpWebReq.Accept        = ConfigurationManager.AppSettings["Http_Accept"];
            httpWebReq.UserAgent     = ConfigurationManager.AppSettings["Http_UserAgent"];
            httpWebReq.ContentType   = ConfigurationManager.AppSettings["Http_ContentType"];
            httpWebReq.Referer       = ConfigurationManager.AppSettings["Http_Referer"];
            httpWebReq.Headers["Accept-Encoding"] = ConfigurationManager.AppSettings["Http_AcceptEncoding"];
            httpWebReq.Headers["Accept-Language"] = ConfigurationManager.AppSettings["Http_AcceptLanguage"];
            httpWebReq.Headers["Cookie"]          = ConfigurationManager.AppSettings["Http_Cookie"];
            httpWebReq.Method = "POST";

            using (var stream = httpWebReq.GetRequestStream())
            {
                stream.Write(data, 0, data.Length);
            }

            var response = (HttpWebResponse)httpWebReq.GetResponse();

            if (response == null)
            {
                throw new Exception("Upload to PAYEAR.COM is failed");
            }

            var responseString = new StreamReader(response.GetResponseStream()).ReadToEnd();

            var jObject         = JObject.Parse(responseString);
            var responseMessage = (bool)jObject["success"];

            if (responseMessage == false)
            {
                throw new Exception("Upload to PAYEAR.COM is failed");
            }

            var mainProductID = (string)jObject["data"];

            // Sub product

            foreach (var subProduct in mainProduct.SubProducts)
            {
                Upload(mainProductID, subProduct);
            }
        }
Beispiel #3
0
        static void Main()
        {
            var spreadsheetManager = new SpreadsheetManager();
            spreadsheetManager.Connect(ConfigurationManager.AppSettings["Google_UserName"], ConfigurationManager.AppSettings["Google_Password"], ConfigurationManager.AppSettings["DatabaseName"], 0);

            var mainProducts = new List<MainProduct>();

            foreach (ListEntry mainProductEntry in spreadsheetManager.GetAllRows().Entries)
            {
                if (mainProductEntry.Elements[0].Value != "Main") continue;

                if (mainProductEntry.Elements[1].Value == null || mainProductEntry.Elements[2].Value == null) continue;

                var mainProduct = new MainProduct
                {
                    ID = mainProductEntry.Elements[1].Value,
                    Name = mainProductEntry.Elements[2].Value,
                    Description = mainProductEntry.Elements[3].Value
                };

                var query = "producttype = \"" + mainProduct.ID + "\"";
                var subProductList = spreadsheetManager.Query(query);

                foreach (ListEntry subproductEntry in subProductList.Entries)
                {
                    mainProduct.SubProducts.Add(new SubProduct(subproductEntry.Elements[1].Value,
                        subproductEntry.Elements[2].Value, subproductEntry.Elements[4].Value,
                        subproductEntry.Elements[5].Value));
                }

                mainProduct.Initialize();

                mainProducts.Add(mainProduct);
            }

            // Upload

            foreach (var mainproduct in mainProducts)
            {
                Uploader.Upload(mainproduct);
            }
        }
Beispiel #4
0
        public static void Upload(MainProduct mainProduct)
        {
            var httpWebReq = (HttpWebRequest)WebRequest.Create(ConfigurationManager.AppSettings["UploadURL"]);
            var encoding = new UTF8Encoding();
            var postDataString = mainProduct.ToString();
            var data = encoding.GetBytes(postDataString);

            httpWebReq.ContentLength = Encoding.UTF8.GetByteCount(postDataString);
            httpWebReq.Accept = ConfigurationManager.AppSettings["Http_Accept"];
            httpWebReq.UserAgent = ConfigurationManager.AppSettings["Http_UserAgent"];
            httpWebReq.ContentType = ConfigurationManager.AppSettings["Http_ContentType"];
            httpWebReq.Referer = ConfigurationManager.AppSettings["Http_Referer"];
            httpWebReq.Headers["Accept-Encoding"] = ConfigurationManager.AppSettings["Http_AcceptEncoding"];
            httpWebReq.Headers["Accept-Language"] = ConfigurationManager.AppSettings["Http_AcceptLanguage"];
            httpWebReq.Headers["Cookie"] = ConfigurationManager.AppSettings["Http_Cookie"];
            httpWebReq.Method = "POST";

            using (var stream = httpWebReq.GetRequestStream())
            {
                stream.Write(data, 0, data.Length);
            }

            var response = (HttpWebResponse)httpWebReq.GetResponse();
            if (response == null)
                throw new Exception("Upload to PAYEAR.COM is failed");

            var responseString = new StreamReader(response.GetResponseStream()).ReadToEnd();

            var jObject = JObject.Parse(responseString);
            var responseMessage = (bool)jObject["success"];
            if (responseMessage == false)
                throw new Exception("Upload to PAYEAR.COM is failed");

            var mainProductID = (string)jObject["data"];

            // Sub product

            foreach (var subProduct in mainProduct.SubProducts)
            {
                Upload(mainProductID, subProduct);
            }
        }