コード例 #1
0
        /// <summary>
        /// Initiate a Product to be synced
        /// </summary>
        /// <param name="stock"></param>
        /// <param name="qteStock"></param>
        /// <param name="categories"></param>
        /// <param name="specopts"></param>
        /// <param name="context"></param>
        /// <param name="productId"></param>
        /// <returns>A Json object corresponding to a NopCommerce Product</returns>
        private JObject GetProduct(STOCK stock, IDictionary <string, int> categories, SqlConnection connection, IDictionary <String, int> specopts, int productId = 0)
        {
            JObject p       = new JObject();
            Product product = new Product(stock.S_MODELE.TrimEnd(),
                                          stock.S_MEMO.TrimEnd(),
                                          stock.S_CLE2.TrimEnd(),
                                          stock.S_CLE1.TrimEnd(),
                                          stock.S_DISPO, stock.S_PRIX_HT, condit: stock.S_CONDIT_V,
                                          mercatorId: stock.S_ID.TrimEnd(),
                                          modiftag: stock.S_MODIFTAG);


            p = ParserJSon.ParseStockToNopProduct(product, productId);
            //p = ParserJSon.ParseStockToNopProduct(stock, additionalShippingCharge, false, qteStock, productId);
            if (!AddTVA(p, stock))
            {
                return(null);
            }
            p.Add(WebApiEntities.PRODUCT_CATEGORIES, MapCategory(stock, categories, productId));
            p.Add(WebApiEntities.PRODUCT_PICTURES, pic.Sync(stock, OptionsMercator, productId));
            try {
                p.Add(WebApiEntities.PRODUCT_SPEC_ATTS, MapSpecs(stock, specopts, productId));
            }catch (KeyNotFoundException knfe)
            {
                Program.log(knfe.Message);
                Program.log(knfe.StackTrace);
            }
            //p.Add(WebServiceUrls.TIER_PRICES, MapTierPrices(stock, connection, productId));
            //p.Add(WebServiceUrls.PRODUCT_FILES, MapFiles(stock, connection, productId));
            //p.Add(WebServiceUrls.PRODUCT_ATTRIBUTE_MAPPINGS, syncTaxAndCondit(stock, productId));

            return(p);
        }