<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">function ArrangeGoods(gds) {
    if (typeof (brandsdata) == "undefined") {
        alert("无效的brandsdata");
        return false;
    }

    var brands = brandsdata;
    var brandsorts = brandsortsdata;
    brandsorts.sort(web960.utils.tools.sort('asc', 'sort'));

    for (var i = 0; i &lt; gds.length; i++) {
        gds[i]["sort_purity"] = i;
        gds[i]["sort_brand"] = i;
        gds[i]["sort_standard"] = i;
        var ExtendAttrs = {};
        if (gds[i].ExtendAttrs != null) {
            var ExtendAttrsList = gds[i].ExtendAttrs;
            $.each(gds[i].ExtendAttrs, function () {
                if (this.Field != "purity" &amp;&amp; this.Field != "brand" &amp;&amp; this.Field != "packaging") {
                    ExtendAttrs[this.Field] = {
                        title: this.SrcTitle,
                        value: this.Keyword
                    }
                }
            });
        }
        gds[i]["extendattrs"] = ExtendAttrs;
        var purity = $.trim(web960.utils.tools.getvalfromjson(gds[i].Goods_info, "{goodsinfo.purity}"));
        var brand = $.trim(web960.utils.tools.getvalfromjson(gds[i].Goods_info, "{goodsinfo.brand}"));

        var packaging = $.trim(web960.utils.tools.getvalfromjson(gds[i].Goods_info, "{goodsinfo.packaging}"));
        var msd = $.trim(packaging.toLowerCase());
        var xmsd = "";
        var intpackaging = 0;
        if (msd.indexOf("ml") != -1) {
            xmsd = msd.replace("ml", "");
            intpackaging = 1;

        }
        else if (msd.indexOf("μl") != -1) {
            xmsd = msd.replace("μl", "");
            intpackaging = 0.001;
        }
        else if (msd.indexOf("ul") != -1) {
            xmsd = msd.replace("ul", "");
            intpackaging = 0.001;
        }
        else if (msd.indexOf("l") != -1) {
            xmsd = msd.replace("l", "");
            intpackaging = 1000;
        }

        else if (msd.indexOf("kg") != -1) {
            xmsd = msd.replace("kg", "");
            intpackaging = 1000;
        }
        else if (msd.indexOf("mg") != -1) {
            xmsd = msd.replace("mg", "");
            intpackaging = 0.001;
        }
        else if (msd.indexOf("ug") != -1) {
            xmsd = msd.replace("ug", "");
            intpackaging = 0.000001;
        }
        else if (msd.indexOf("μg") != -1) {
            xmsd = msd.replace("μg", "");
            intpackaging = 0.000001;
        }
        else if (msd.indexOf("g") != -1) {
            xmsd = msd.replace("g", "");
            intpackaging = 1;
        }
        var resultsortpack = 0;
        try {
            resultsortpack = parseFloat(xmsd) * intpackaging;
        }
        catch (e) { }

        if (isNaN(resultsortpack)) {
            resultsortpack = 0;
        }

        var bsd = $.grep(brandsortsdata, function (v) {
            return v.title == brand;
        })

        if (brands[brand] != undefined) {
            gds[i]["brandsort"] = brands[brand];
        }
        else {
            gds[i]["brandsort"] = 1000;
        }

        gds[i]["brand"] = brand;

        if (bsd.length &gt; 0) {
            if (bsd[0]["brandtype"] != null) {
                gds[i]["brandtype"] = parseInt(bsd[0]["brandtype"]);
            }
            else {
                gds[i]["brandtype"] = 0;
            }
        }
        else {
            gds[i]["brandtype"] = 0;
        }

        gds[i]["purity"] = purity;

        gds[i]["packaging"] = resultsortpack;
        gds[i]["intpackaging"] = intpackaging;
        var suminventory = 0;
        if (gds[i]["Inventores"] != null) {
            for (var ni = 0; ni &lt; gds[i]["Inventores"].length; ni++) {
                suminventory += gds[i]["Inventores"][ni].Amount;
            }
        }
        gds[i]["suminventory"] = suminventory;
        if (gds[i].Sort != "" || gds[i].Sort != "0") {
            var sort = eval('(' + gds[i].Sort + ');');
            if (sort.sort_purity != undefined) {
                gds[i]["sort_purity"] = sort.sort_purity;
            }
            if (sort.sort_brand != undefined) {
                gds[i]["sort_brand"] = sort.sort_brand;
            }
            if (sort.sort_standard != undefined) {
                gds[i]["sort_standard"] = sort.sort_standard;
            }
        }
    }

    gds.sort(web960.utils.tools.sort('asc', 'brandsort'));


    var cdarr = [];
    var fangds = [];

    for (var i = 0; i &lt; gds.length; i++) {
        var cdstr = gds[i].purity + "|" + gds[i].brand;
        var dataar = [];

        var idx = jQuery.inArray(cdstr, cdarr);
        if (idx == -1) {
            var item = {};
            item["title"] = cdstr;
            item["purity"] = gds[i].purity;
            item["packaging"] = gds[i].packaging;
            item["intpackaging"] = gds[i].intpackaging;
            item["brand"] = gds[i].brand;
            item["brandtype"] = gds[i].brandtype;
            item["pd_id"] = gds[i].Pd_id;
            item["items"] = [];
            item.items.push(gds[i]);
            fangds.push(item);
            cdarr.push(cdstr);
        }
        else {
            fangds[idx].items.push(gds[i]);
        }
    }
    return fangds;
}
var GoodsConfig = {
    whennogoods: function () {
        return "";
    },
    callback: function () {
        if (this.nowviewmode == "newlist") {
            //如果有默认显示的规格需要显示
            //否则选择最小价格

            this.initProductItemClick("#progoodslist");
            this.initProductItemClick("#kj-buy-select-content");
            this.displaygoodsinfo("#progoodslist", {
                ableaddactive: true
            });

        }

        $(".kj-product-prep-item").each(function () {
            $(this).parents(".kj-product-item").addClass("kj-product-item-viewbyprepent");
        });
    },

    inventoryitemhtml_productlist: function (goodss, pd_id) {

        var html = '';
        if ($("#viewbyintegralproduct").length == 0) {
            goodss = ArrangeGoods(goodss);//整理goods

            //产品

            var stdcode = $("input[name='productstandardcatalog'][productid='" + pd_id + "']").val();
            var issebei = false;
            if (stdcode.length &gt; 0 &amp;&amp; stdcode.substr(0, 2) == "12") {
                issebei = true;
            }
            //issebei = false;//都用统一样式

            var isproinfopage = false;
            isproinfopage = $("#nowproductid").length &gt; 0;
            if (goodss.length &gt; 0) {

                //  html += '  &lt;div class="table-responsive"&gt;\
                html += '&lt;div class="table-responsive"&gt;&lt;table class="table"&gt;\
                                        &lt;tr&gt;\
                                            '+ (isproinfopage ? "&lt;th&gt;品牌&lt;/th&gt;" : "") + '\
                                            &lt;th&gt;货号&lt;/th&gt;\
                                            &lt;th&gt;'+ (issebei ? "产品描述" : "规格/纯度") + '&lt;/th&gt;\
                                            &lt;th class="text-center"&gt;包装&lt;/th&gt;\
                                            &lt;th class="text-center hidden-xs" &gt;市场价(CNY)&lt;/th&gt;\
                                            &lt;th class="text-center"&gt;会员价(CNY)&lt;/th&gt;\
                                            &lt;th class="text-center"&gt;库存&lt;/th&gt;\
                                            &lt;th width="110" class="text-center"&gt;数量&lt;/th&gt;\
                                            &lt;th width="90" class="text-center"&gt;购物车&lt;/th&gt;\
                                        &lt;/tr&gt;';


                var packages = [];
                var minprice = -1;
                var minpricestr = "";
                var firstpdidx = 0;
                for (var m = 0; m &lt; goodss.length; m++) {
                    pd_id = goodss[m].pd_id;
                    var goods = goodss[m].items;
                    goods.sort(web960.utils.tools.sort("asc", "packaging"));

                    var catacode = $("input[name='productitem_catalogno'][productid='" + goodss[m]["pd_id"] + "']").val();

                    var producturl = $("#productitem_href_" + goodss[m]["pd_id"]).attr("href");

                    var productcustomno = $("input[name='productcustomno'][productid='" + goodss[m]["pd_id"] + "']").val();



                    var packagesds = [];
                    for (var j = 0; j &lt; goods.length; j++) {

                        var packagingds = $.trim(web960.utils.tools.getvalfromjson(goods[j].Goods_info, "{goodsinfo.packaging}"));
                        if (packagesds.indexOf(packagingds) == -1) {
                            packagesds.push(packagingds);
                        }
                    }


                    var brand = goodss[m].brand;

                    $(".productbrand_" + goodss[m]["pd_id"]).html(brand);
                    goods.sort(web960.utils.tools.sort("asc", "packaging"));
                    var puritys = [];
                    for (var i = 0; i &lt; goods.length; i++) {
                        firstpdidx++;
                        var packaging = $.trim(web960.utils.tools.getvalfromjson(goods[i].Goods_info, "{goodsinfo.packaging}"));
                        var purity = $.trim(web960.utils.tools.getvalfromjson(goods[i].Goods_info, "{goodsinfo.purity}"));
                        if (purity != "" &amp;&amp; puritys.indexOf(purity) == -1) {
                            puritys.push(purity);
                        }
                        if (packages.indexOf(packaging) == -1) {
                            packages.push(packaging);
                        }
                        var price = this.GetGoodsInventorePrice(goods[i], goods[i].Inventores[0].PreferentType, goods[i].Inventores[0].PreferentInfo, goods[i].Inventores[0].MoneyUnit, goods[i].Inventores[0].Price);
                        if ($("#pro_ispromotion_" + pd_id).length &gt; 0) {
                            if (price.isPromotion == 1) {
                                $("#pro_ispromotion_" + pd_id).replaceWith('&lt;div class="kj-product-prep-item"&gt;促销&lt;/div&gt;');
                            }
                        }
                        if (minprice == -1 || price.finalprice &lt; minprice) {
                            minprice = price.finalprice;
                            minpricestr = price.moneyunit + price.finalprice;
                        }


                        if (typeof (fliterjson) != "undefined") {
                            var ismatched = true;
                            for (var fliterkey in fliterjson) {
                                var thisvkey = (fliterkey == "brandname" ? "brand" : fliterkey);
                                if (fliterjson[fliterkey] != null &amp;&amp; fliterjson[fliterkey] != "") {

                                    var thisval = $.trim(web960.utils.tools.getvalfromjson(goods[i].Goods_info, "{goodsinfo." + thisvkey + "}"));

                                    if (thisval == null || thisval == "") {
                                        thisval = $.trim(web960.utils.tools.getvalfromjson(goods[i].Goods_info, "{extendattrs." + thisvkey + "}"));
                                    }
                                    if (thisval != fliterjson[fliterkey]) {
                                        firstpdidx = 0;
                                        ismatched = false;
                                        break;
                                    }
                                }
                            }

                            if (!ismatched) {
                                continue;
                            }
                        }
                        firstpdidx = 0;//都用统一的样式
                        if (firstpdidx == 1 &amp;&amp; isproinfopage &amp;&amp; issebei) {
                            // 详情页 设备类产品
                            $("#firstgoodsno").html(goods[i].Goods_no);
                            $("#firstgoodsbrand").html(brand);

                            var firsthtml = '&lt;div class="table-responsive"&gt;&lt;table class="table"&gt;\
                                        &lt;tr&gt;\
                                            &lt;th class="text-center"&gt;包装&lt;/th&gt;\
                                            &lt;th class="text-center hidden-xs" &gt;市场价(CNY)&lt;/th&gt;\
                                            &lt;th class="text-center"&gt;会员价(CNY)&lt;/th&gt;\
                                            &lt;th width="110" class="text-center"&gt;数量&lt;/th&gt;\
                                            &lt;th width="90" class="text-center"&gt;购物车&lt;/th&gt;\
                                        &lt;/tr&gt;';
                            firsthtml += '&lt;tr&gt;\
                                            &lt;td  class="text-center"&gt;'+ packaging + '\
                                                    &lt;span id="price_final_' + goods[i].Inventores[0].Inventory_id + '" style="display:none;"&gt;' + price.finalprice + '&lt;/span&gt;\
                                                    &lt;span style="display:none;"&gt;' + GetSimpMoneyUnit(goods[i].Inventores[0].MoneyUnit) + '&lt;/span&gt;\
                                                    &lt;span style="text-decoration:line-through; color:#888888; display:none;" id="GoodsInvPrice_' + goods[i].Inventores[0].Inventory_id + '"&gt;' + parseFloat(goods[i].Inventores[0].Price).toFixed(2) + '&lt;/span&gt;\
                                                    &lt;span id="GoodsMoneyUnit_' + goods[i].Inventores[0].Inventory_id + '" style="display:none;"&gt;' + goods[i].Inventores[0].MoneyUnit + '&lt;/span&gt;\
                                                    &lt;span id="GoodsInvUnit_' + goods[i].Inventores[0].Inventory_id + '" style="display:none;"&gt;' + goods[i].Inventores[0].Unit + '&lt;/span&gt;\
                                            &lt;/td&gt;\
                                            &lt;td  class="text-center  hidden-xs" style="color:gray;"&gt;' + price.moneyunit + price.orgprice + '&lt;/td&gt;\
                                            &lt;td class="text-center" style="color:red;"&gt;' + price.moneyunit + price.finalprice + '&lt;/td&gt;\
                                            &lt;td  class="text-center"&gt;\
                                                &lt;div class="kj-pro-num-box kj-pro-num-box-min" style="display:inline-block;"&gt;\
                                                    &lt;button onclick="changeGoodsInvcount(\'GoodsInv_' + goods[i].Inventores[0].Inventory_id + '\',-1);" class="kj-pro-num-minus pull-left"&gt;-&lt;/button&gt;\
                                                    &lt;input type="text" id="GoodsInv_' + goods[i].Inventores[0].Inventory_id + '" GoodsNo="' + goods[i].Goods_no + '" Pdid="' + pd_id + '"  value="1"  class="pull-left" /&gt;\
                                                    &lt;button onclick="changeGoodsInvcount(\'GoodsInv_' + goods[i].Inventores[0].Inventory_id + '\',1);" class="kj-pro-num-plus pull-left"&gt;+&lt;/button&gt;\
                                                &lt;/div&gt;&lt;/td&gt;\
                                            &lt;td class="text-center" &gt;\
                                                &lt;button class="kj_product_shopcart" onclick="AddToCart(' + goods[i].Inventores[0].Inventory_id + ',this);"&gt;&lt;i class="fa fa-cart-plus fa-lg "&gt;&lt;/i&gt;&lt;/button&gt;\
                                            &lt;/td&gt;\
                                        &lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;';
                            $("#progoodsfirst").html(firsthtml);
                        }
                        else {

                            var inventorydisplay = "";
                            if (brand == "Dieckmann") {
                                inventorydisplay = "有";
                            }
                            else {
                                inventorydisplay = "以（" + brand + "）官网为准";
                            }

                            // InitInventoryDisplay(goods[i].Inventores[0], null, goods[i])

                            var _thisproducturl = goods[i].Goods_no;
                            if (producturl != undefined) {
                                _thisproducturl = '&lt;a href="' + producturl + '?goodsno=' + goods[i].Goods_no + '" target="_blank"&gt;' + goods[i].Goods_no + '&lt;/a&gt;';
                            }
                            html += '&lt;tr&gt;\
                            '+ (isproinfopage ? "&lt;td&gt;" + brand + "&lt;/td&gt;" : "") + '\
                                            &lt;td&gt;'+ _thisproducturl + '&lt;/td&gt;\
                                            &lt;td&gt;'+ purity + '&lt;/td&gt;\
                                            &lt;td  class="text-center"&gt;'+ packaging + '\
                                                    &lt;span id="price_final_' + goods[i].Inventores[0].Inventory_id + '" style="display:none;"&gt;' + price.finalprice + '&lt;/span&gt;\
                                                    &lt;span style="display:none;"&gt;' + GetSimpMoneyUnit(goods[i].Inventores[0].MoneyUnit) + '&lt;/span&gt;\
                                                    &lt;span style="text-decoration:line-through; color:#888888; display:none;" id="GoodsInvPrice_' + goods[i].Inventores[0].Inventory_id + '"&gt;' + parseFloat(goods[i].Inventores[0].Price).toFixed(2) + '&lt;/span&gt;\
                                                    &lt;span id="GoodsMoneyUnit_' + goods[i].Inventores[0].Inventory_id + '" style="display:none;"&gt;' + goods[i].Inventores[0].MoneyUnit + '&lt;/span&gt;\
                                                    &lt;span id="GoodsInvUnit_' + goods[i].Inventores[0].Inventory_id + '" style="display:none;"&gt;' + goods[i].Inventores[0].Unit + '&lt;/span&gt;\
                                            &lt;/td&gt;\
                                            &lt;td  class="text-center  hidden-xs" style="color:gray;"&gt;' + price.moneyunit + price.orgprice + '&lt;/td&gt;\
                                            &lt;td class="text-center" style="color:red;"&gt;' + price.moneyunit + price.finalprice + '&lt;/td&gt;\
                                            &lt;td  class="text-center"&gt;' + inventorydisplay + '&lt;/td&gt;\
                                            &lt;td  class="text-center"&gt;\
                                                &lt;div class="kj-pro-num-box kj-pro-num-box-min" style="display:inline-block;"&gt;\
                                                    &lt;button onclick="changeGoodsInvcount(\'GoodsInv_' + goods[i].Inventores[0].Inventory_id + '\',-1);" class="kj-pro-num-minus pull-left"&gt;-&lt;/button&gt;\
                                                    &lt;input type="text" id="GoodsInv_' + goods[i].Inventores[0].Inventory_id + '" GoodsNo="' + goods[i].Goods_no + '" Pdid="' + pd_id + '"  value="1"  class="pull-left" /&gt;\
                                                    &lt;button onclick="changeGoodsInvcount(\'GoodsInv_' + goods[i].Inventores[0].Inventory_id + '\',1);" class="kj-pro-num-plus pull-left"&gt;+&lt;/button&gt;\
                                                &lt;/div&gt;&lt;/td&gt;\
                                            &lt;td class="text-center" &gt;\
                                                &lt;button class="kj_product_shopcart" onclick="AddToCart(' + goods[i].Inventores[0].Inventory_id + ',this);"&gt;&lt;i class="fa fa-cart-plus fa-lg "&gt;&lt;/i&gt;&lt;/button&gt;\
                                            &lt;/td&gt;\
                                        &lt;/tr&gt;';
                        }




                    }

                    if ($("#product_pur_package_" + pd_id).length &gt; 0) {
                        if (puritys.length &gt; 0) {
                            $("#product_pur_package_" + pd_id).html('&lt;div style="word-break: break-all;"&gt;' + puritys.join("&lt;br /&gt;") + "&lt;/div&gt;");//&lt;div&gt;" + packages.join(",") + "&lt;/div&gt;
                        }
                        else {
                            // $("#product_pur_package_" + pd_id).html('&lt;div style="word-break: break-all;"&gt;' + packages.join(",") + "&lt;/div&gt;");
                        }
                    }
                }
                html += '&lt;/table&gt;&lt;/div&gt;\
                ';

                if ($("#kj-item-caption_" + pd_id).length &gt; 0) {
                    for (var key in proinfoview) {
                        $("#kj-item-caption_" + pd_id).append('&lt;div style="word-break: break-all;"&gt;' + proinfoview[key]["title"] + "：" + proinfoview[key]["data"].join(",") + '&lt;/div&gt;');
                    }
                }
                $("#product_small_price_" + pd_id).html(minpricestr);

            }

        }
        else {
            //积分商品
            var minintegral = -1;
            var maxintegral = -1;
            if (goodss.length &gt; 0) {
                for (var i = 0; i &lt; goodss.length; i++) {
                    if (goodss[i].Inventores.length &gt; 0) {
                        var Integral = parseFloat(goodss[i].Inventores[0].Integral);
                        if (!isNaN(Integral)) {
                            if (minintegral == -1 || Integral &lt; minintegral) {
                                minintegral = Integral;
                            }
                            if (maxintegral == -1 || Integral &gt; maxintegral) {
                                maxintegral = Integral;
                            }
                        }
                    }
                }
                if (minintegral &gt; 0 &amp;&amp; maxintegral &gt; 0) {
                    var integ = minintegral;
                    if (minintegral != maxintegral) {
                        //integ = minintegral + "-" + maxintegral;
                        integ = minintegral;
                    }
                    html = '&lt;p&gt;&lt;span class="span-integral"&gt;' + integ + '&lt;/span&gt;&lt;span class="span-jifen"&gt;积分&lt;/span&gt;&lt;/p&gt;';
                }

            }
        }


        return html;
    },
    nowselectegoods: null,
    nowproductgoods: {
        inventorys: [],
        invsofpackage: {},
        invsoflengthss: {},
        invsofnjs: {},
        invsofkjs: {},
        invsofljs: {},
        invsofjhxs: {},
        invsofsccjs: {},
        invsofpurity: {},
        invsofbrand: {},
        minpriceinv: null
    },
    initProductItemClick: function (el) {

        var _this = this;

        $("dl[propkey] dd a", el).click(function () {
            var _s = this;
            var propkey = $(_s).attr("propkey");
            var thisval = $(_s).attr("propvalue");

            if ($(_s).hasClass("sel_disabled")) {
                return false;
            }

            if ($(_s).hasClass("sel_active")) {
                $(_s).removeClass("sel_active");

            }
            else {
                $("dl[propkey='" + propkey + "'] dd a", el).removeClass("sel_active");
                $(_s).addClass("sel_active");
            }
            var whereobj = {};

            $("dl[propkey]", el).each(function () {
                var _thisdl = this;
                var pkey = $(_thisdl).attr("propkey");

                if ($("dd a.sel_active", _thisdl).length &gt; 0) {
                    var _tvalue = $("dd a.sel_active", _thisdl).attr("propvalue");

                    whereobj[pkey] = _this.goodsdata[pkey][_tvalue].value;

                }


            });

            _this.selectedgoods = $.grep(_this.goodsofnowproduct, function (obj, i) {
                var r = true;
                for (var key in whereobj) {
                    r = r &amp;&amp; obj["extdetails"][key] == whereobj[key];
                }
                return r;
            });
            //console.log("查询条件");
            //console.log(whereobj);

            _this.displaygoodsinfo(el, {
                clickrow: propkey,
                ableaddactive: false
            });


            //console.log(propkey + "-" + thisval);
            //console.log(_this.goodsdata[propkey][thisval]);
            //console.log("可供选择的数组");
            //console.log(_this.selectedgoods);

        });
    },
    goodsdata: {

    },

    selectedgoods: [],
    displaygoodsinfo: function (el, cfg) {
        cfg = $.extend({}, cfg);

        var _this = this;
        _this.nowselectegoods = null;
        // console.log(_this.selectedgoods);
        if (_this.selectedgoods.length == 0) {
            $("dl[propkey] dd a", el).removeClass("sel_disabled");

        }
        else {

            $("dl[propkey]", el).each(function () {
                var _thisdl = this;
                var pkey = $(_thisdl).attr("propkey");
                if (cfg["clickrow"] == null || cfg.clickrow != pkey) {
                    $("dd a", _thisdl).addClass("sel_disabled");
                }

                for (var i = 0; i &lt; _this.selectedgoods.length; i++) {
                    var titem = _this.selectedgoods[i];
                    var rpvalue = md5(titem.extdetails[pkey]);

                    $("dd a[propvalue='" + rpvalue + "']", _thisdl).removeClass("sel_disabled");

                }
                if (cfg.ableaddactive) {
                    var totala = $("dd a", _thisdl).length;
                    var disc = $("dd a.sel_disabled", _thisdl).length;
                    var activec = $("dd a.sel_active", _thisdl).length;
                    if (activec == 0 &amp;&amp; (totala - disc == 1)) {
                        $("dd a[class!='sel_disabled']", _thisdl).addClass("sel_active");
                    }
                }
            });
        }
        var cleargoodcontent = true;
        if (_this.selectedgoods.length == 1) {
            //定位到唯一了
            var ngoodsinfo = _this.selectedgoods[0];
            if (ngoodsinfo["invprice"] != null) {
                cleargoodcontent = false;
                _this.nowselectegoods = ngoodsinfo;
                $("#kj-addtocart-btn", el).removeClass("disabled").attr("disabled", false);
                $("#kj-buy-selected-ok").removeClass("disabled").attr("disabled", false);
                $(".kj-nowproduct-price").html(ngoodsinfo.invprice.moneyunit + ngoodsinfo.invprice.finalprice);
                $(".kj-nowproduct-orgprice").html(ngoodsinfo.invprice.moneyunit + ngoodsinfo.invprice.orgprice);
                $(".kj-nowgoods-no").html(ngoodsinfo.goodsno);

                var laohuohao = "&amp;nbsp;";
                if (ngoodsinfo["extdetails"] != null &amp;&amp; ngoodsinfo["extdetails"]["laohuohao"] != null) {
                    laohuohao = ngoodsinfo["extdetails"]["laohuohao"];
                }
                $(".laohuohao").html(laohuohao);
                $(".kj-nowgoods-name").html((ngoodsinfo["extdetails"]["goodsname"] != null ? ngoodsinfo["extdetails"]["goodsname"] : ""));
                $(".nowgoodsinventory").html(InitInventoryDisplay(ngoodsinfo.inv, null, ngoodsinfo));
            }

        }
        if (cleargoodcontent) {
            $("#kj-addtocart-btn", el).addClass("disabled").attr("disabled", true);
            $("#kj-buy-selected-ok").removeClass("disabled").attr("disabled", true);
            $(".kj-nowproduct-price").html("&amp;nbsp;");
            $(".kj-nowproduct-orgprice").html("&amp;nbsp;");
            $(".kj-nowgoods-no").html("&amp;nbsp;");
            $(".laohuohao").html("&amp;nbsp;");
            $(".nowgoodsinventory").html("&amp;nbsp;");
            $(".kj-nowgoods-name").html("&amp;nbsp;");
        }
    },
    goodsofnowproduct: [],
    inventoryitemhtml_productinfo: function (goodss, pd_id) {
        var _this = this;
        var GET = $.urlGet(); //获取URL的Get参数
        var def_goodsno = GET['goodsno']; //取得id的值

        var defviewinv = null; //默认显示哪一个规格

        var minpriceinv = null;//价格最小的规格
        var minprice = -1;
        var minpricestr = "";

        //参数配置部分------开始
        var isviewdefinv = false;//是否默认显示一个规格 如果是defviewinv 讲可以赋值

        var isviewinventory = true;//是否显示库存量
        var proptitles = {
            //   goodsname: "商品名称",
            brand: "品牌",
            jianhexing: "键合相",
            packaging: "包装",
            changdu: "长度",
            lijing: "粒径",
            sizeinside: "内径",
            kongjing: "孔径",
            //changjia: "生产厂家",
            purity: "纯度"

        };
        //按钮控制
        var btnconfig = {
            buynow: true,//显示立即购买
            addtocart: true,//显示加入购物车
            addtofav: false//显示加入收藏
        };

        //参数配置部分------结束

        var extinfogoodslist = {};

        //解析商品的扩展属性
        for (var i = 0; i &lt; goodss.length; i++) {
            var item = goodss[i];

            var extobj = JSON.parse(item.Goods_info);

            var extdetails = {};

            for (var key in extobj["extendattrs"]) {
                extdetails["" + key] = extobj["extendattrs"][key];
            }

            for (var key in extobj["goodsinfo"]) {
                extdetails["" + key] = extobj["goodsinfo"][key];
            }
            goodss[i]["extdetails"] = extdetails;
            goodss[i]["extobj"] = extobj;

        }

        var emptyvaluekeys = {};
        for (var i = 0; i &lt; goodss.length; i++) {
            var item = goodss[i];
            var goodsno = item["Goods_no"];
            item["goodsno"] = goodsno;

            item["goodsid"] = item.Id;

            item["pd_id"] = item.Pd_id;

            if (item.Inventores.length &gt; 0) {
                var stock = item.Inventores[0];
                var price = _this.GetGoodsInventorePrice(item, stock.PreferentType, stock.PreferentInfo, stock.MoneyUnit, stock.Price);
                //  console.log(price);
                item["invprice"] = price;
                item["price"] = price;
                item["id"] = stock.Inventory_id;
                item["inv"] = stock;
                if (minprice == -1 || parseFloat(price.finalprice) &lt; minprice) {

                    minprice = parseFloat(price.finalprice);
                    minpricestr = price.moneyunit + price.finalprice;
                    minpriceinv = item;
                }

                if (def_goodsno != null &amp;&amp; def_goodsno.length &gt; 0 &amp;&amp; def_goodsno == goodsno) {
                    defviewinv = item;
                }
            }

            for (var key in item.extdetails) {

                if (extinfogoodslist[key] == null) {
                    extinfogoodslist[key] = {};
                }

                var thisval = item.extdetails[key];
                if (thisval == null || thisval == "") {
                    thisval = "N/A";
                    if (emptyvaluekeys[key] == undefined) {
                        emptyvaluekeys[key] = 1;
                    }

                }
                else {
                    emptyvaluekeys[key] = 0;
                }
                var encodevalkey = md5(thisval);
                if (extinfogoodslist[key][encodevalkey] == undefined) {
                    extinfogoodslist[key][encodevalkey] = { value: thisval, items: [] };
                }

                extinfogoodslist[key][encodevalkey].items.push(item);

            }
            _this.goodsofnowproduct.push(item);

        }
        for (var key in emptyvaluekeys) {
            if (emptyvaluekeys[key] == 1) {
                delete extinfogoodslist[key];
            }
        }

        if (defviewinv == null &amp;&amp; minpriceinv != null &amp;&amp; isviewdefinv) {
            defviewinv = minpriceinv;
        }
        if (defviewinv != null) {
            _this.selectedgoods = [defviewinv];
        }

        var html = "";

        for (var key in proptitles) {
            if (extinfogoodslist[key] != undefined) {
                html += '&lt;dl propkey="' + key + '" class="kj-productinfo-fliter dl-horizontal kj_proinfolist goods_sel_dl"&gt;\
                &lt;dt&gt;'+ (proptitles[key] == null ? key : proptitles[key]) + '&lt;/dt&gt;\
                &lt;dd class="kj-productinfo-fliter-dd"&gt;';

                for (var ik in extinfogoodslist[key]) {
                    html += '&lt;a href="javascript:void(0);" propvalue="' + ik + '" propkey="' + key + '" &gt;' + extinfogoodslist[key][ik].value + '&lt;/a&gt;';
                }
                html += '&lt;/dd&gt;\
            &lt;/dl&gt;';
            }
        }
        if (isviewinventory) {
            html += '&lt;dl class="kj-productinfo-fliter dl-horizontal kj_proinfolist goods_sel_dl"&gt;&lt;dt &gt;库存&lt;/dt&gt;&lt;dd class="nowgoodsinventory"&gt;&lt;/dd&gt;&lt;/dl&gt;';
        }

        html += '&lt;dl class="kj-productinfo-fliter dl-horizontal kj_proinfolist goods_sel_dl"&gt;&lt;dt class="kj-pc-buynum-view"&gt;数量&lt;/dt&gt;\
                    &lt;dd class="kj-pc-buynum-view"&gt;\
                        &lt;div class="kj-pro-num-box"&gt;\
                            &lt;button class="kj-pro-num-minus"  onclick="changeOrderNum(this,-1);"&gt;-&lt;/button&gt;\
                            &lt;input type="text" value="1"  class="kj-order-num" readonly="readonly" /&gt;\
                            &lt;button class="kj-pro-num-plus"  onclick="changeOrderNum(this,1);"&gt;+&lt;/button&gt;\
                        &lt;/div&gt;\
                    &lt;/dd&gt;\
                    &lt;dt&gt;&lt;/dt&gt;\
                    &lt;dd&gt;&lt;div &gt;';
        if (btnconfig.buynow) {
            html += '&lt;a href="javascript:void(0);" class="kj_ljgm" onclick="GoodsConfig.addtocarttg(this)"&gt;立即购买&lt;/a&gt;';
        }
        if (btnconfig.addtofav) {
            html += '&lt;button class="btn btn-info kj_jrscj" onclick="AddProductToFavorites(' + pd_id + ')" &gt;&lt;i class="fa fa-cart-plus"&gt;&lt;/i&gt; 加入收藏&lt;/button&gt;';
        }
        if (btnconfig.addtocart) {
            html += ' &lt;button class="btn btn-danger kj_jrgwci" onclick="GoodsConfig.addtocart(this)" id="kj-addtocart-btn"&gt;&lt;i class="fa fa-cart-plus"&gt;&lt;/i&gt; 加入购物车&lt;/button&gt;';
        }



        html += '   &lt;/div&gt;&lt;/dd&gt;\
                &lt;/dl&gt;';

        this.goodsdata = extinfogoodslist;
        //console.log(extinfogoodslist);
        //console.log(goodss);
        //  console.log(_this.goodsofnowproduct);
        return html;
    },
    buynowv3: function (invid, o, isintegral) {
        if (typeof (inventorydatacfg) != "undefined" &amp;&amp; inventorydatacfg["inv_" + invid] != null) {
            inventorydatacfg["inv_" + invid]["ordernum"] = parseInt($("#GoodsInv_" + invid).val());
            AddToCart(invid, o, inventorydatacfg["inv_" + invid], isintegral);
            setTimeout(function () {
                location.href = "/order/shopcart/";
            }, 1000);
        }
    },
    addtocartv3: function (invid, o, isintegral) {
        console.log(invid);
        console.log(o);
        console.log(isintegral);
        try {
            if (typeof (inventorydatacfg) != "undefined" &amp;&amp; inventorydatacfg["inv_" + invid] != null) {
                inventorydatacfg["inv_" + invid]["ordernum"] = parseInt($("#GoodsInv_" + invid).val());


                AddToCart(invid, o, inventorydatacfg["inv_" + invid], isintegral);


            }
        }
        catch (e) {
            alert(e.toString());
        }

    },
    blukaddtocart: function (o) {
        var table = $(o).closest(".gdtable");
        $(".addtocart_input", table).each(function () {
            var v = $.trim($(this).val());
            var Inventory_id = parseInt($(this).attr("invid"));

            if (/^\d+$/.test(v)) {
                v = parseInt(v);
            }
            if (v &gt; 0) {
                GoodsConfig.addtocartv3(Inventory_id, $(this), 0);
            }


        });
    },
    productpagecar: function () {
        var table = $(".gdtable");
        $(".addtocart_input", table).each(function () {
            var v = $.trim($(this).val());
            var Inventory_id = parseInt($(this).attr("invid"));

            if (/^\d+$/.test(v)) {
                v = parseInt(v);
            }
            if (v &gt; 0) {
                GoodsConfig.addtocartv3(Inventory_id, $(this), 0);
            }


        });
    },
    addtocart: function (o, isintegral) {
        if (this.nowselectegoods != null) {
            var ordernum = parseInt($(".kj-order-num", $(o).parents(".kj-productinfo-fliter")).val());
            this.nowselectegoods["ordernum"] = ordernum;
            AddToCart(this.nowselectegoods.id, o, this.nowselectegoods, isintegral);

        }
    },
    addtocarttg: function (o, isintegral) {
        if (this.nowselectegoods != null) {
            var ordernum = parseInt($(".kj-order-num", $(o).parents(".kj-productinfo-fliter")).val());
            this.nowselectegoods["ordernum"] = ordernum;
            AddToCart(this.nowselectegoods.id, o, this.nowselectegoods, isintegral);
            setTimeout(function () {
                location.href = "/order/shopcart/";
            }, 1000);
        }
    },
    addtocart_mobile: function (o, isintegral) {
        if (this.nowselectegoods != null) {
            var ordernum = parseInt($(".kj-buy-select-content .kj-order-num").val());
            this.nowselectegoods["ordernum"] = ordernum;
            AddToCart(this.nowselectegoods.id, null, this.nowselectegoods, isintegral);
        }
    },
    nowproductviewinfo: {},
    inventoryitemhtml: function (goodss, pd_id) {
        this.nowproductviewinfo["goodss"] = goodss;
        this.nowproductviewinfo["pd_id"] = pd_id;
        //if ($("#nowproductid").length &gt; 0) {
        //    this.nowviewmode = "list";
        //    return GoodsConfig.inventoryitemhtml_productlist(goodss, pd_id);
        //}
        //else {
        //    this.nowviewmode = "newlist";
        //    return GoodsConfig.inventoryitemhtml_productlist(goodss, pd_id);
        //}
        var viewWidth = window.innerWidth;

        if ($("#nowintegralproductid").length == 0) {
            this.nowviewmode = "list";
        }

        if (viewWidth &lt; 768 || $("#nowproinfo").length == 1) {
            this.nowviewmode = "newlist";
        }
        this.nowviewmode = "list";
        if ($("#nowproductid").length &gt; 0) {
            $("#goods_viewmode_ctrlbox button").removeClass("active");
            if (this.nowviewmode == "list") {
                $("#goods_viewmode_list").addClass("active");
                return GoodsConfig.inventoryitemhtml_productlist(goodss, pd_id);
            }
            else if (this.nowviewmode == "newlist") {
                $("#goods_viewmode_newlist").addClass("active");
                return GoodsConfig.inventoryitemhtml_productinfo(goodss, pd_id);
            }
        }
        else {
            this.nowviewmode = "list";
            return GoodsConfig.inventoryitemhtml_productlist(goodss, pd_id);
        }

    },
    nowviewmode: "list",
    toggleviewmode: function (o, el, type) {
        this.nowviewmode = type;
        $("button", $(o).parent()).removeClass("active");
        $(o).addClass("active");
        var goodss = this.nowproductviewinfo["goodss"];
        var pd_id = this.nowproductviewinfo["pd_id"];
        if (type == "list") {
            $(el).html(GoodsConfig.inventoryitemhtml_productlist(goodss, pd_id));
        }
        else if (type == "newlist") {
            $(el).html(GoodsConfig.inventoryitemhtml_productinfo(goodss, pd_id));
        }
        this.callback();
    },
    viewmore: function (o) {

        $("tr[hidenitem='hideitem']", $(o).parent().parent().parent()).toggle();
    },
    GetGoodsInventorePrice: function (goods, PreferentType, PreferentInfo, MoneyUnit, Price) {
        var brand = $.trim(web960.utils.tools.getvalfromjson(goods.Goods_info, "{goodsinfo.brand}"));
        return this._GetGoodsInventorePrice(brand, PreferentType, PreferentInfo, MoneyUnit, Price);
    },
    _GetGoodsInventorePrice: function (brand, PreferentType, PreferentInfo, MoneyUnit, Price) {
        
        var returnv = { html: "", orgprice: Price, finalprice: Price, moneyunit: GetSimpMoneyUnit(MoneyUnit) };
        var brandpricefirst = true;//如果为true，就以品牌折扣优先，否则 比较一个最低值
        var brandsetfound = false;
        var html = "";
        if (PreferentType == "-1") {
            returnv.finalprice = Price;
        }
        else {
            var selfzkprice = -1;
            if (typeof (brandDiscountSetJO) != 'undefined' &amp;&amp; brandDiscountSetJO["brandDiscount"] != null) {
                var selfset = $.grep(brandDiscountSetJO["brandDiscount"], function (v) {
                    return v.brandName == brand;
                });
                if (selfset.length &gt; 0) {
                    selfzkprice = (parseFloat(selfset[0].discount) / 10) * Price;
                }
            }

            if (GoodsGlobalSettings.preferentsetting != undefined) {
                var setting = eval('(' + GoodsGlobalSettings.preferentsetting + ');');
                var preinfo = eval('(' + PreferentInfo + ');');
                var brandset = setting["preferentsettingbybrand"];//品牌设置优惠
                var brandprice = Price;
                if (brandset != undefined &amp;&amp; brand != "") {
                    for (var x = 0; x &lt; brandset.length; x++) {
                        var tbrandset = brandset[x];
                        if (brand == tbrandset.brandname) {
                            //默认品牌优惠设置
                            for (var i = 0; i &lt; tbrandset.rolessetting.length; i++) {
                                if (typeof (NowUserInfo) != "undefined") {
                                    if (NowUserInfo.rolename != undefined &amp;&amp; NowUserInfo.rolename != "") {
                                        if (NowUserInfo.rolename == tbrandset.rolessetting[i].rolename) {
                                            brandprice = parseFloat(tbrandset.rolessetting[i].zk) * Price;
                                            //    html += GetSimpMoneyUnit(MoneyUnit) + (parseFloat(tbrandset.rolessetting[i].zk) * Price).toFixed(2);
                                        }
                                    } else {
                                        if (tbrandset.rolessetting[i].visible == "all") {
                                            brandprice = parseFloat(tbrandset.rolessetting[i].zk) * Price;
                                            // html += GetSimpMoneyUnit(MoneyUnit) + (parseFloat(tbrandset.rolessetting[i].zk) * Price).toFixed(2);
                                        }
                                    }
                                }
                                else {
                                    if (tbrandset.rolessetting[i].visible == "all") {
                                        brandprice = parseFloat(tbrandset.rolessetting[i].zk) * Price;
                                        // html += GetSimpMoneyUnit(MoneyUnit) + (parseFloat(tbrandset.rolessetting[i].zk) * Price).toFixed(2);
                                    }
                                }
                            }
                            break;
                        }
                    }
                }
                var norprice = Price;
                var exhtml = '';
                if (PreferentType == "1" &amp;&amp; setting.suspendpromotion == "0") {
                    //促销
                    returnv.isPromotion = 1;
                    if (preinfo.premethod == "1") {
                        var val = preinfo.val;
                        if (val == null || val == "") {
                            val = 10;
                        }
                        val = parseFloat(val);
                        if (isNaN(val)) {
                            val = 10;
                        }

                        norprice = (val / 10) * parseFloat(Price);
                        exhtml = '&lt;span class="label label-info"&gt;促销&lt;/span&gt;';
                        html = GetSimpMoneyUnit(MoneyUnit) + ((val / 10) * parseFloat(Price)).toFixed(2) + '&lt;span class="label label-info"&gt;促销&lt;/span&gt;';
                        //  html = GetSimpMoneyUnit(MoneyUnit) + (parseFloat(preinfo.val) * parseFloat(Price)).toFixed(2) + '&lt;sup style="background-color:#ff6600; color:#ffffff;"&gt;促&lt;/sup&gt; ';
                    }
                    else {
                        norprice = parseFloat(preinfo.val);
                        exhtml = '&lt;span class="label label-info"&gt;促销&lt;/span&gt;';
                        html = GetSimpMoneyUnit(MoneyUnit) + parseFloat(preinfo.val).toFixed(2) + '&lt;span class="label label-info"&gt;促销&lt;/span&gt;';
                        //html = GetSimpMoneyUnit(MoneyUnit) + parseFloat(preinfo.val).toFixed(2) + '&lt;sup style="background-color:#ff6600; color:#ffffff;"&gt;促&lt;/sup&gt;';
                    }
                    // html =  preinfo.val + ' ' + (preinfo.premethod == "1" ? "折" : MoneyUnit)+'&lt;sup style="color:red;"&gt;促销&lt;/sup&gt; ';
                }
                else if (PreferentType == "2" &amp;&amp; setting.SuspendPreferent == "0") {
                    //优惠

                    for (var i = 0; i &lt; preinfo.rolessetting.length; i++) {
                        if (typeof (NowUserInfo) != "undefined") {
                            if (NowUserInfo.rolename != undefined &amp;&amp; NowUserInfo.rolename != "") {
                                if (NowUserInfo.rolename == preinfo.rolessetting[i].rolename) {
                                    if (preinfo.premethod == "1") {
                                        norprice = parseFloat(preinfo.rolessetting[i].zk) * parseFloat(Price);
                                        html += GetSimpMoneyUnit(MoneyUnit) + (parseFloat(preinfo.rolessetting[i].zk) * parseFloat(Price)).toFixed(2);
                                    }
                                    else {
                                        norprice = parseFloat(preinfo.rolessetting[i].zk);
                                        html += GetSimpMoneyUnit(MoneyUnit) + parseFloat(preinfo.rolessetting[i].zk).toFixed(2);
                                    }

                                }
                            } else {
                                if (preinfo.rolessetting[i].visible == "all") {
                                    if (preinfo.premethod == "1") {
                                        norprice = parseFloat(preinfo.rolessetting[i].zk) * parseFloat(Price);
                                        html += GetSimpMoneyUnit(MoneyUnit) + (parseFloat(preinfo.rolessetting[i].zk) * parseFloat(Price)).toFixed(2);
                                    }
                                    else {
                                        norprice = parseFloat(preinfo.rolessetting[i].zk);
                                        html += GetSimpMoneyUnit(MoneyUnit) + parseFloat(preinfo.rolessetting[i].zk).toFixed(2);
                                    }
                                }
                            }
                        }
                        else {
                            if (preinfo.rolessetting[i].visible == "all") {
                                if (preinfo.premethod == "1") {
                                    norprice = parseFloat(preinfo.rolessetting[i].zk) * parseFloat(Price);
                                    html += GetSimpMoneyUnit(MoneyUnit) + (parseFloat(preinfo.rolessetting[i].zk) * parseFloat(Price)).toFixed(2);
                                }
                                else {
                                    norprice = parseFloat(preinfo.rolessetting[i].zk);
                                    html += GetSimpMoneyUnit(MoneyUnit) + parseFloat(preinfo.rolessetting[i].zk).toFixed(2);
                                }
                            }
                        }
                    }
                }
                else if (PreferentType == "0" &amp;&amp; setting.SuspendPreferent == "0" &amp;&amp; setting.enable == "1") {

                    //默认优惠设置
                    for (var i = 0; i &lt; setting.rolessetting.length; i++) {
                        if (typeof (NowUserInfo) != "undefined") {
                            if (NowUserInfo.rolename != undefined &amp;&amp; NowUserInfo.rolename != "") {
                                if (NowUserInfo.rolename == setting.rolessetting[i].rolename) {
                                    norprice = parseFloat(setting.rolessetting[i].zk) * Price;
                                    html += GetSimpMoneyUnit(MoneyUnit) + (parseFloat(setting.rolessetting[i].zk) * Price).toFixed(2);
                                }
                            } else {
                                if (setting.rolessetting[i].visible == "all") {
                                    norprice = parseFloat(setting.rolessetting[i].zk) * Price;
                                    html += GetSimpMoneyUnit(MoneyUnit) + (parseFloat(setting.rolessetting[i].zk) * Price).toFixed(2);
                                }
                            }
                        }
                        else {
                            if (setting.rolessetting[i].visible == "all") {
                                norprice = parseFloat(setting.rolessetting[i].zk) * Price;
                                html += GetSimpMoneyUnit(MoneyUnit) + (parseFloat(setting.rolessetting[i].zk) * Price).toFixed(2);
                            }
                        }
                    }
                }
            }

            if (selfzkprice &gt; -1 &amp;&amp; html == '') {
                //产品未单个设置，且有自己的折扣
                returnv.finalprice = selfzkprice.toFixed(2);
            } else {
                if (norprice &gt; brandprice) {
                    returnv.finalprice = parseFloat(brandprice).toFixed(2);
                    html = GetSimpMoneyUnit(MoneyUnit) + '&lt;span class="price_final"&gt;' + parseFloat(brandprice).toFixed(2) + "&lt;/span&gt;" + exhtml;
                }
                else {
                    returnv.finalprice = parseFloat(norprice).toFixed(2);
                }
            }
        }
        returnv.finalprice = parseFloat(returnv.finalprice).toFixed(2);
        html = '&lt;span class="price_moneyunit"&gt;' + GetSimpMoneyUnit(MoneyUnit) + '&lt;/span&gt;&lt;span class="price_final" moneyunit="' + MoneyUnit + '"&gt;' + returnv.finalprice + "&lt;/span&gt;";


        returnv.html = html;
        return returnv;
    },

    InitInventoryPrice: function () {
        var _s = this;
        if (typeof (inventorydatacfg) != "undefined") {
            for (var key in inventorydatacfg) {
                var inv = inventorydatacfg[key];
                inv["moneyunit"] = inv.MoneyUnit;
                inv["orgprice"] = inv.Price;
                var price = _s._GetGoodsInventorePrice(inv.brandname, inv.PreferentType, inv.PreferentInfo, inv.MoneyUnit, inv.Price);
                $(".kj-pre-price[invid='" + inv.Inventory_id + "']").html('' + price.moneyunit + price.finalprice + '');

                $(".kj-get-integral[invid='" + inv.Inventory_id + "']").html(parseFloat(price.finalprice).toFixed(0));
                inv["price"] = price;
                inv["inv"] = { Unit: inv.Unit, MoneyUnit: inv.MoneyUnit };
                var invdisplay = InitInventoryDisplay(inv);
                $(".kj-inventory-display[invid='" + inv.Inventory_id + "']").html(invdisplay);
            }
        }

    },

    GuestPrice: function (rolessetting, premethod, preinfo, price) {
        for (var j = 0; j &lt; rolessetting.length; j++) {

            if (rolessetting[j].rolename == "普通会员") {

                //if (preinfo.premethod == "2") {
                //    price = parseFloat(rolessetting[j].zk);
                //}
                //else {
                //    price = price * parseFloat(rolessetting[j].zk);
                //}
                price = price * parseFloat(rolessetting[j].zk);
            }
        }
        return price;
    }
};</pre></body></html>