﻿/// <reference path="../../js/lng.js" />
//var ShopCartCfg = {};
//var GoodsConfig = {};
//var ShowShopConfig = {};
function AddProductToFavorites(pd_id) {
    Web960.Web.index.AddToFavs("" + pd_id, function (ret) {
        AjaxReturn(ret, function () {
            var rc = ret.value;

            if (rc.Status == -2) {
                window.location.href = "/user/login/";
                //ShowLoginDialog({
                //    loginedcallback: function () {
                //        CloseLoginDialog();
                //        AddProductToFavorites(pd_id);
                //    }
                //});
            }
            else {
                alert(rc.ClientMsg);
            }
        });
    });
}
function DelProductOfFavorites(fav_id) {
    Web960.Web.index.DelFavs("" + fav_id, function (ret) {
        AjaxReturn(ret, function () {
            var rc = ret.value;
            if (rc.Status == -2) {
                ShowLoginDialog({
                    loginedcallback: function () {
                        CloseLoginDialog();
                        DelProductOfFavorites(fav_id);
                    }
                });
            }
            else {
                alert(rc.ClientMsg);
                location.reload();
            }
        });
    });
}
function DelProductOfhistory(fav_id) {
    Web960.Web.index.DelFavs("" + fav_id, function (ret) {
        AjaxReturn(ret, function () {
            var rc = ret.value;
            if (rc.Status == -2) {
                ShowLoginDialog({
                    loginedcallback: function () {
                        CloseLoginDialog();
                        DelProductOfhistory(fav_id);
                    }
                });
            }
            else {
                alert(rc.ClientMsg);
                location.reload();
            }
        });
    });
}
function DelProductOfFavoritesByindexid(pdid) {
    Web960.Web.index.DeleteByidexid("" + pdid, function (ret) {
        AjaxReturn(ret, function () {
            var rc = ret.value;
            if (rc.Status == -2) {
                ShowLoginDialog({
                    loginedcallback: function () {
                        CloseLoginDialog();
                        DelProductOfFavoritesByindexid(pdid);
                    }
                });
            }
            else {
                alert(rc.ClientMsg);
                location.reload();
            }
        });
    });
}
function LoadGoodsForProducts() {
    LoadShopCart(false);
    var ids = [];
    var box = {};
    $("input[name='productitem']").each(function () {
        var pid = $(this).val();
        ids.push(pid);
        box["p_" + pid] = "#goodslist_" + pid;
    });
    GoLoadGoods(ids.join(","), box);
}


///加载购物车显示
function LoadShopCart(autoLoad)
{
   
        CheckUserLogin(function (logined, url, uname) {
            if (logined == -1) {
                if (GoodsGlobalSettings.orderrequiredreg == undefined || GoodsGlobalSettings.orderrequiredreg == "1") {

                    //未登录
                    if (autoLoad) {
                        ShowLoginDialog({
                            loginedcallback: function () {
                                CloseLoginDialog();
                                ShowShopCartWithData();
                            }
                        });
                    }
                    else {
                        ShowShopCart();
                    }
                }
                else {
                    ShowShopCartWithData();
                }
            }
            else {
                ShowShopCartWithData();
            }
        });

}
function ShowShopCartWithData()
{
    Web960.Web.index.LoadShopCart( function (ret) {
        AjaxReturn(ret, function () {
            var rc = ret.value;
            if (rc.Status == 1) {
                ShowShopCart();
                FillShopCart(rc.ObjResult);
            } else if(rc.Status==-2) {
                ShowLoginDialog({
                    loginedcallback: function () {
                        CloseLoginDialog();
                        ShowShopCartWithData();
                    }
                });
            }
        });
    });
}
function FillShopCart(o)
{
    LoadedCart = true;
    $("#shopcartitemcount").html(o.length);
    var opt = "";

    if (o.length > 0) {
        if (ShowShopConfig != undefined && ShowShopConfig.fillshopcart) {
            opt = ShowShopConfig.fillshopcart(o);
        }
        else {
            opt = '<table class="shopcartitemtable" border="0" cellspacing="0" cellpadding="5"  width="100%">'
                + '<tr class="shopcartitemtableheader">'
                + '<td class="itemno">' + rclng.plugin_goodsmanage_itemno + '</td>'
                + '<td class="price">' + rclng.plugin_goodsmanage_price + '</td>'
                + '<td class="subtotal">' + rclng.plugin_goodsmanage_subtotal + '</td>'
                + '<td class="quantity" width="90">' + rclng.plugin_goodsmanage_quantity + '</td>'
                + '<td width="20">&nbsp;</td>'
                + ' </tr>';
            for (var i = 0; i < o.length; i++) {
                var oldprice = o[i].Price;
               // var price = parseFloat(GetRealPriceByPreferent(o[i].Goods, o[i].Inventory.PreferentType, o[i].Inventory.PreferentInfo, o[i].Inventory.MoneyUnit, o[i].Inventory.Price));
                var itemno = o[i].GoodsNo;
                //CustomGoods_no
                if (GoodsConfig != undefined && GoodsConfig.GoodsNoKey != undefined) {
                    itemno = o[i][GoodsConfig.GoodsNoKey];
                }
                opt += '<tr><td class="itemno">' + itemno + '</td>'
                    + '<td class="price">' + GetSimpMoneyUnit(o[i].MoneyUnit) + '<span id="OitemPrice_' + o[i].CartId + '" style="display:none;">' + o[i].Price + '</span>'
                     + parseFloat(o[i].Price).toFixed(2) + ' /<span id="OitemUnit_' + o[i].CartId + '">' + o[i].Unit + '</span></td>'
                    + ' <td id="OitemSum_' + o[i].CartId + '" class="OitemSum subtotal" moneyunit="' + o[i].MoneyUnit + '">' + (o[i].Amount * parseFloat(o[i].Price)).toFixed(2) + '</td>'
                    + ' <td class="quantity">\
<div class="kj-pro-num-box kj-pro-num-box-min">\
                                                    <button onclick="changeOrderAmount(' + o[i].CartId + ',-1,1);" class="kj-pro-num-minus">-</button>\
                                                    <input type="text" class="shopcartchgamount" onBlur="if(this.value==\'\')this.value=1;" onkeyup="value=value.replace(/[^\\d]/g,\'\');RecountPrice(' + o[i].CartId + ',1);" onbeforepaste="clipboardData.setData(\'text\',clipboardData.getData(\'text\').replace(/[^\\d]/g,\'\'))"  id="OitemAmount_' + o[i].CartId + '" value="' + o[i].Amount + '" />\
                                                    <button onclick="changeOrderAmount(' + o[i].CartId + ',1,1);" class="kj-pro-num-plus">+</button>\
                                                </div>'

                    + ' </td>'
                    + ' <td><a href="javascript:void(0);" onclick="removeCartItem(this,' + o[i].CartId + ',1)" title="' + rclng.plugin_goodsmanage_removeitem + '" class="kj-shopcart-item-remove"><i class="fa fa-remove"></i></a></td></tr>';
            }
            opt += "</table>";
        }
    }
    else {
        opt = '<div class="well-lg text-center kj-empty-shopcart"><i class="fa fa-cart-arrow-down fa-5x"></i><p>您的购物车是空的</p></div>';
    }
    $("#shopcartitembox").html(opt);
    GetTotalPriceOfCart(1);
    if (ShowShopConfig!=undefined) {
        if (ShowShopConfig.aftershopcartfill) {
            ShowShopConfig.aftershopcartfill(o);
        }
    }
}
function LoadGoods(pd_id, conbox) {
    if (GoodsGlobalSettings[GoodsOpenOrder] == undefined || GoodsGlobalSettings[GoodsOpenOrder] == "1") {
        LoadShopCart(false);
        GoLoadGoods(pd_id, conbox);
    }
    else {
        if (GoodsGlobalSettings[GoodsPriceNeedReg] == undefined || GoodsGlobalSettings[GoodsPriceNeedReg] == "0") {
            GoLoadGoods(pd_id, conbox);
        }
        else {
            CheckUserLogin(function (logined, url, uname) {
                if (logined == -1) {
                    //未登录
                }
                else {
                    GoLoadGoods(pd_id, conbox);
                }
            });
        }
    }
}
function GoLoadGoods(pd_id, conbox) {
 
    Web960.Web.index.LoadGoods(pd_id + "", function (ret) {
        AjaxReturn(ret, function () {
            var rc = ret.value;
            if (rc.Status == 1) {
                var result = JSON.parse(rc.ObjResult);
                var ids = (pd_id + "").split(",");
                for (var i = 0; i < ids.length; i++) {
                    if (result["p_" + ids[i]] != undefined) {
                        if (typeof (conbox) == "string" || typeof (conbox) == "undefined") {
                            InitGoodsHTML(result["p_" + ids[i]], ids[i], conbox);
                        }
                        else {
                            if (conbox["p_" + ids[i]] != undefined) {
                                InitGoodsHTML(result["p_" + ids[i]], ids[i], conbox["p_" + ids[i]]);
                            }
                        }
                    }
                    else {
                        if (typeof (conbox) == "string" || typeof (conbox) == "undefined") {
                            InitGoodsHTML([], ids[i], conbox);
                        }
                        else {
                            if (conbox["p_" + ids[i]] != undefined) {
                                InitGoodsHTML([], ids[i], conbox["p_" + ids[i]]);
                            }
                        }
                    }
                }
            } else {
                cb(rc.ClientMsg);
            }
        });
    });
}
function InitGoodsHTML(obj, pd_id, conbox) {
    conbox = (conbox == undefined ? "#GoodsListBox" : conbox);
    var html = '';
    if (obj.length > 0) {
        if (typeof(GoodsConfig)!="undefined"&&GoodsConfig.inventoryitemhtml != undefined)
        {
            html = GoodsConfig.inventoryitemhtml(obj, pd_id);
        }
        else {
            html = '<table border="0" width="100%" cellspacing="0" cellpadding="5" class="goodstable">'
                    + '<tr class="goodstableheader">'
                        + '<td class="goods_itemno">' + rclng.plugin_goodsmanage_itemno + '</td>'
                        + GetExtThHeader(obj[0].Goods_info)
                        + '<td class="goods_store">' + rclng.plugin_goodsmanage_store + '</td>'
                        +'<td class="goods_qtyavail">' + rclng.plugin_goodsmanage_qtyavail + '</td>'
                        +'<td class="goods_unit">' + rclng.plugin_goodsmanage_unit + '</td>'
                        +'<td class="goods_pirce">' + rclng.plugin_goodsmanage_price + '</td>';
            if (GoodsGlobalSettings[GoodsOpenOrder] == undefined || GoodsGlobalSettings[GoodsOpenOrder] == "1") {
                 html += '<td class="goods_quantity">' + rclng.plugin_goodsmanage_quantity + '</td>'
                        +'<td width="90" class="goods_addtocart">' + rclng.plugin_goodsmanage_addtocart + '</td>';
            }
            html += '</tr>';
            
            for (var i = 0; i < obj.length; i++) {

                html += '<tr><td' + GetGoodsTDRowspan(obj[i].Inventores.length) + ' class="goods_itemno">' + obj[i].Goods_no + '</td>'
                    + GetExtTdValue(obj[i].Goods_info, obj[i].Inventores.length)
                html += GetGoodsInventoresItemHtml(obj[i].Inventores, obj[i].Goods_no, pd_id);
            }
            html += '</table>';
        }
    }
    if (html == '')
    {
        if (typeof (GoodsConfig) != "undefined" && GoodsConfig.whennogoods != undefined) {
            html= GoodsConfig.whennogoods();
        }
        else {
            html = rclng.plugin_goodsmanage_nogoodsinfo
        }
    }
   
 
    $(conbox).html(html);
    if (typeof (GoodsConfig) != "undefined" && GoodsConfig.callback != undefined) {
        GoodsConfig.callback();
    }
}
function GetGoodsInventorePrice(PreferentType, PreferentInfo, MoneyUnit)
{
    var html = "";

    if (GoodsGlobalSettings.preferentsetting != undefined)
    {
        var setting = eval('(' + GoodsGlobalSettings.preferentsetting + ');');
        var preinfo = eval('('+PreferentInfo+');');
        if (PreferentType == "1" && setting.suspendpromotion == "0")
        {
            //促销
            

            html = '<br /><span>促销</span> ' + preinfo.val + ' ' + (preinfo.premethod == "1" ? "折" : MoneyUnit);
        }
        else if (PreferentType == "2" && setting.SuspendPreferent == "0")
        {
            //优惠

            for (var i = 0; i < preinfo.rolessetting.length; i++) {
                if (preinfo.rolessetting[i].visible == "all") {
                    html += '<br />' + preinfo.rolessetting[i].rolename + ':' + preinfo.rolessetting[i].zk  + (preinfo.premethod == "1" ? "折" : MoneyUnit);
                }
                else if (preinfo.rolessetting[i].visible == "self") {
                    if (typeof (NowUserInfo) != "undefined") {
                        if (NowUserInfo.rolename != undefined) {
                            if (NowUserInfo.rolename == preinfo.rolessetting[i].rolename) {
                                html += '<br />' + preinfo.rolessetting[i].rolename + ':' + preinfo.rolessetting[i].zk  + (preinfo.premethod == "1" ? "折" : MoneyUnit);
                            }
                        }
                    }
                }
            }
        }
        else if (PreferentType == "0" && setting.SuspendPreferent == "0" && setting.enable=="1")
        {
            
            //默认优惠设置
            for (var i = 0; i < setting.rolessetting.length; i++)
            {
                if (setting.rolessetting[i].visible == "all"){
                    html += '<br />' + setting.rolessetting[i].rolename + ':' + setting.rolessetting[i].zk + '折';
                }
                else if (setting.rolessetting[i].visible == "self") 
                {
                    if (typeof(NowUserInfo) != "undefined") {
                        if (NowUserInfo.rolename != undefined) {
                            if (NowUserInfo.rolename == setting.rolessetting[i].rolename) {
                                html += '<br />' + setting.rolessetting[i].rolename + ':' + setting.rolessetting[i].zk + '折';
                            }
                        }
                    }
                }
            }
        }
    }
    return html;
}
function GetGoodsInventoresItemHtml(Inventores, Goods_no, pd_id)
{
    var html = '<td class="goods_store">&nbsp;</td>'
            +'<td  class="goods_qtyavail">&nbsp;</td>'
            +'<td class="goods_unit">&nbsp;</td>'
            +'<td class="goods_pirce">&nbsp;</td>';
    if (GoodsGlobalSettings[GoodsOpenOrder] == undefined || GoodsGlobalSettings[GoodsOpenOrder] == "1") {
    html += '<td class="goods_quantity">&nbsp;</td>'
    +'<td width="90" class="goods_addtocart">&nbsp;</td>';
    }
    html+='</tr>';
    if (Inventores.length >0)
    {
        html = '<td class="goods_store">' + Inventores[0].Placecode.split('|')[1] + '</td>'
              +'<td  class="goods_qtyavail" id="GoodsInvAmount_' + Inventores[0].Inventory_id + '">' + Inventores[0].Amount + '</td>'
              +'<td class="goods_unit" id="GoodsInvUnit_' + Inventores[0].Inventory_id + '">' + Inventores[0].Unit + '</td>'
             + '<td class="goods_pirce">'
                + '<span  id="GoodsInvPrice_' + Inventores[0].Inventory_id + '">' + Inventores[0].Price + '</span> (<span id="GoodsMoneyUnit_' + Inventores[0].Inventory_id + '">' + Inventores[0].MoneyUnit + '</span>)'
                + GetGoodsInventorePrice(Inventores[0].PreferentType, Inventores[0].PreferentInfo, Inventores[0].MoneyUnit)
             + '</td>';
        if (GoodsGlobalSettings[GoodsOpenOrder] == undefined || GoodsGlobalSettings[GoodsOpenOrder] == "1") {
            html += '<td class="goods_quantity">\
<div class="kj-pro-num-box kj-pro-num-box-min">\
                                                    <button onclick="changeGoodsInvcount(\'GoodsInv_' + Inventores[0].Inventory_id + '\',-1);" class="kj-pro-num-minus">-</button>\
                                                    <input type="text"  id="GoodsInv_' + Inventores[0].Inventory_id + '" GoodsNo="' + Goods_no + '" Pdid="' + pd_id + '"  value="1" />\
                                                    <button onclick="changeGoodsInvcount(\'GoodsInv_' + Inventores[0].Inventory_id + '\',1);" class="kj-pro-num-plus">+</button>\
                                                </div>\
</td>'
+ '<td class="goods_addtocart"><input type="button"  class="btn2" onclick="AddToCart(' + Inventores[0].Inventory_id + ');" value="' + rclng.plugin_goodsmanage_addtocart + '" /></td>';
        }
        html+='</tr>';
        for (var j = 1; j < Inventores.length; j++) {
            html += '<tr><td class="goods_store">' + Inventores[j].Placecode.split('|')[1] + '</td>'
                +'<td class="goods_qtyavail" id="GoodsInvAmount_' + Inventores[j].Inventory_id + '">' + Inventores[j].Amount + '</td>'
                +'<td class="goods_unit" id="GoodsInvUnit_' + Inventores[j].Inventory_id + '">' + Inventores[j].Unit + '</td>'
                + '<td class="goods_pirce"><span  id="GoodsInvPrice_' + Inventores[j].Inventory_id + '">' + Inventores[j].Price + '</span> (<span id="GoodsMoneyUnit_' + Inventores[j].Inventory_id + '">' + Inventores[j].MoneyUnit + '</span>)'
                 + GetGoodsInventorePrice(Inventores[j].PreferentType, Inventores[j].PreferentInfo, Inventores[j].MoneyUnit)
               + '</td>';
            if (GoodsGlobalSettings[GoodsOpenOrder] == undefined || GoodsGlobalSettings[GoodsOpenOrder] == "1") {
                html += '<td class="goods_quantity">\
<div class="kj-pro-num-box kj-pro-num-box-min">\
                                                    <button onclick="changeGoodsInvcount(\'GoodsInv_' + Inventores[j].Inventory_id + '\',-1);" class="kj-pro-num-minus">-</button>\
                                                    <input type="text"  id="GoodsInv_' + Inventores[j].Inventory_id + '" GoodsNo="' + Goods_no + '" Pdid="' + pd_id + '"  value="1" />\
                                                    <button onclick="changeGoodsInvcount(\'GoodsInv_' + Inventores[j].Inventory_id + '\',1);" class="kj-pro-num-plus">+</button>\
                                                </div>\
</td>'
                + '<td class="goods_addtocart"><input type="button"  class="btn2" onclick="AddToCart(' + Inventores[j].Inventory_id + ');" value="' + rclng.plugin_goodsmanage_addtocart + '" /></td>';
            }
            html+='</tr>';
        }
    }
    return html;
}
function changeGoodsInvcount(id, t)
{
    var v = $("#" + id).val();
    if (/^\d+$/.test(v))
    {
        v = parseInt(v);
    }
    else {
        v = 1;
    }
    v = v + t;
    if (v < 1)
    {
        v = 1;
    }
    $("#" + id).val(v);
}
function changeOrderNum(o, t) {
    var v = $(".kj-order-num", $(o).parent()).val();
    if (/^\d+$/.test(v)) {
        v = parseInt(v);
    }
    else {
        v = 1;
    }
    v = v + t;
    if (v < 1) {
        v = 1;
    }

    $(".kj-order-num", $(o).parent()).val(v);
}
function GetGoodsTDRowspan(rowspan)
{
    var rowh = "";
    if (rowspan != undefined) {
        if (rowspan > 1) {
            rowh = " rowspan=\"" + rowspan + "\"";
        }
    }
    return rowh;
}
function GetExtThHeader(val, rowspan)
{
    var obj = eval('(' + val + ');');
    var rowh = GetGoodsTDRowspan(rowspan);
    
  var html = "";

    for (var classname in obj) {
        if (GoodsExtConfig.classes[classname] != undefined)
        {
            for (var j = 0; j < GoodsExtConfig.classes[classname].columns.length; j++) {
                html += '<td' + rowh + ' class="' + classname+'_' + GoodsExtConfig.classes[classname].columns[j].key + '">' + GoodsExtConfig.classes[classname].columns[j].srctitle + '</td>';
            }
        }
    }

    return html;
}
function GetExtTdValue(val, rowspan)
{
  
    var obj = eval('('+val+');');
    var html = "";
    var rowh = GetGoodsTDRowspan(rowspan);

    for (var classname in obj) {
        if (GoodsExtConfig.classes[classname] != undefined) {
            for (var j = 0; j < GoodsExtConfig.classes[classname].columns.length; j++) {
                html += '<td' + rowh + '  class="' + classname + '_' + GoodsExtConfig.classes[classname].columns[j].key + '">';
                try {
                    if (obj[classname][GoodsExtConfig.classes[classname].columns[j].key] != undefined) {
                        html += obj[classname][GoodsExtConfig.classes[classname].columns[j].key];
                    }
                } catch (e)
                { }
                html += '</td>';
            }
        }
    }

    return html;
}

function AddToCart(invid, o, invobj, isintegral)
{
   
    if (GoodsGlobalSettings.orderrequiredreg == undefined || GoodsGlobalSettings.orderrequiredreg == "1") {
        CheckUserLogin(function (logined, url, uname) {
            if (logined == -1) {
                //未登录
                CloseShopCart();
                ShowLoginDialog({
                    loginedcallback: function () {
                        CloseLoginDialog();
                        ShowShopCart();
                        DoAddToCart(invid, o, invobj, isintegral);
                    }
                });
            }
            else {
                DoAddToCart(invid, o, invobj, isintegral);
            }
        });
    }
    else {
        DoAddToCart(invid, o, invobj, isintegral);
    }
}
function DoAddToCart(invid, o, invobj, isintegral)
{
    var oldAmount = $("#GoodsInvAmount_" + invid).html();
    var orgprice = $("#GoodsInvPrice_" + invid).html();
    var price = $("#price_final_" + invid).html();
    var unit = $("#GoodsInvUnit_" + invid).html();
    var moneyunit = $("#GoodsMoneyUnit_" + invid).html();
    var oj=$("#GoodsInv_" + invid);
    var orderAmount = oj.val();
    var GoodsNo = oj.attr("GoodsNo");
    var Pdid = oj.attr("Pdid");
    var _isintegral = 0;
    if (isintegral != undefined && isintegral != null) {
        _isintegral = isintegral;
    }
    if (invobj != null) {
        orgprice = parseFloat(invobj.price.orgprice).toFixed(2);
        price = parseFloat(invobj.price.finalprice).toFixed(2);
        unit = invobj.inv.Unit;
        moneyunit = invobj.inv.MoneyUnit;
        orderAmount = invobj.ordernum + "";
        GoodsNo = invobj.goodsno;
        Pdid = invobj.pd_id + "";
    }
    Web960.Web.index.AddToCart(Pdid, orderAmount, '' + invid + '', unit, price, GoodsNo, moneyunit, orgprice + "", "", (_isintegral ? "1" : "0"),function (ret) {
        AjaxReturn(ret, function () {
            var rc = ret.value;
          
            if (rc.Status == 1) {
                if (ShowShopConfig != undefined) {
                    if (ShowShopConfig.afteraddtocart != undefined)
                    {
                        ShowShopConfig.afteraddtocart(o);
                    }
                    else
                    {
                        alert(rc.ClientMsg);
                    }
                }
                else {
                    alert(rc.ClientMsg);
                }
               
                ShowShopCartWithData();
            } else if (rc.Status == -2) {
                AddToCart(invid);
            }
            else if (rc.Status == -1)
            {
                alert(rc.ClientMsg);
            }
           
        });
    });
}
var LoadedCart = false;
var CartHTMLStyle = '<style type="text/css">.shopcartchgamounthref{padding:3px 5px 3px 5px;}'
    + '.ShopCartBox{position:fixed;bottom:0;right:10px;padding:3px;width:450px;background-color:#cf4202;border:1px solid #b01010}'
    + '* html,* html body{background-image:url(about:blank);background-attachment:fixed}* html .ShopCartBox{position:absolute;'
    + 'bottom:auto;top:expression(eval(document.documentElement.scrollTop+document.documentElement.clientHeight-this.offsetHeight'
    + '-(parseInt(this.currentStyle.marginTop,10)||0)-(parseInt(this.currentStyle.marginBottom,10)||0)))}.shopcartitembox{display:none;'
    + 'height:200px;overflow:auto;border:1px solid #b01010;background-color:#ffffff;padding:2px;background-image:url("data:image/png;base64,'
    + 'iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAMAAAC6sdbXAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAlQTFRF7u7u5ubm6urqYPTI0gAAAB9JREFU'
    + 'eNoUiLERAAAMRLD/0Pk0HGSChSOLP/HqBBgAAfcAItOjOxwAAAAASUVORK5CYII=")}.shopcartctrlbox{padding:5px;font-size:14px;color:#ffffff;'
    + 'background-repeat:no-repeat;line-height:25px;background-position:10px 10px;padding-left:30px;background-image:'
    + 'url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAA'
    + 'AAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEg'
    + 'eG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAg'
    + 'ICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlv'
    + 'biByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAv'
    + 'MS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUg'
    + 'UGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6OEEyQjkwRkEzNTJGMTFFMjkyNzk5MjZDMjYxMzRERUIiIHhtcE1NOkRv'
    + 'Y3VtZW50SUQ9InhtcC5kaWQ6OEEyQjkwRkIzNTJGMTFFMjkyNzk5MjZDMjYxMzRERUIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1w'
    + 'LmlpZDo4QTJCOTBGODM1MkYxMUUyOTI3OTkyNkMyNjEzNERFQiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo4QTJCOTBGOTM1MkYxMUUyOTI3OTkyNkMyNjEzNE'
    + 'RFQiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PiQvthAAAACISURBVHjanFGJDYAgDCzGjWAVd'
    + '3GE7uQMjgArOEKFpJhaqTVeckAo1+cIRLTBHWvlDh6akJ4Aj6EtMg/vwSs4W414wgl+wqr41ip5FXMlDs6Xq5LSVRT3qN9o4cL3aHwDcnzRgUjfEEdZPXGLm+YkdlYz'
    + 'Web04bMxY+7ejCoelcXopHAcTgEGAHOtLt9FRk3CAAAAAElFTkSuQmCC")}.shopcartctrlbox .shopcartjiesau{line-height:20px;float:right;'
    + 'background-color:#ffffff;color:#b01010;font-weight:bold;padding:5px 10px 5px 10px}.shopcartctrlbox .shopcarttogglebtn{color:#ffffff}'
    + '.shopcartitemtable td{border-bottom:1px solid #dddddd;background-color:#ffffff;padding:8px}.shopcartitemtableheader td{'
    + 'background-color:#f8f8f8;font-weight:bold}</style>';
var ShopItemAddImage = 'data:image/gif;base64,R0lGODlhEgANAJEDAJaTk66uru7u7v///yH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wT'
    +'XBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS4zLWMwMTEgNjYuMTQ1NjYxLC'
    + 'AyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cm'
    + 'RmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY'
    + '29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9i'
    + 'ZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoxNzlGREVDQjVCNUUxMUU0QTNBM0JBRjJDQTRDRUNCRiIgeG1wTU06RG9jdW'
    + '1lbnRJRD0ieG1wLmRpZDoxNzlGREVDQzVCNUUxMUU0QTNBM0JBRjJDQTRDRUNCRiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjE3'
    + 'OUZERUM5NUI1RTExRTRBM0EzQkFGMkNBNENFQ0JGIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjE3OUZERUNBNUI1RTExRTRBM0EzQkFGMkNBNENFQ0JGIi8+IDwvcm'
    + 'RmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+Af/+/fz7+vn49/b19PPy8fDv7u3s6+rp6Ofm5eTj4uHg397d3Nva'
    + '2djX1tXU09LR0M/OzczLysnIx8bFxMPCwcC/vr28u7q5uLe2tbSzsrGwr66trKuqqainpqWko6KhoJ+enZybmpmYl5aVlJOSkZCPjo2Mi4qJiIeGhYSDgoGAf359fHt6eXh'
    + '3dnV0c3JxcG9ubWxramloZ2ZlZGNiYWBfXl1cW1pZWFdWVVRTUlFQT05NTEtKSUhHRkVEQ0JBQD8+PTw7Ojk4NzY1NDMyMTAvLi0sKyopKCcmJSQjIiEgHx4dHBsaGRgXFh'
    + 'UUExIREA8ODQwLCgkIBwYFBAMCAQAAIfkEAQAAAwAsAAAAABIADQAAAiyMjze7IQ/jC2w4iQVtOe8bAR0FQuJYAqrqlc/ZYrBEdthnR5uVT1UCNFQGBQA7';
var ShopItemSubImage = 'data:image/gif;base64,R0lGODlhEgANAJEDAJaTk66uru7u7v///yH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0w'
    + 'TXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS4zLWMwMTEgNjYuMTQ'
    + '1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucy'
    + 'MiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuY'
    + 'WRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29s'
    + 'PSJBZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozMDU4QTk5NjVCNUUxMUU0OEY1MkU1MkQ5OERDMUIzRiIgeG1wTU0'
    + '6RG9jdW1lbnRJRD0ieG1wLmRpZDozMDU4QTk5NzVCNUUxMUU0OEY1MkU1MkQ5OERDMUIzRiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaW'
    + 'lkOjMwNThBOTk0NUI1RTExRTQ4RjUyRTUyRDk4REMxQjNGIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjMwNThBOTk1NUI1RTExRTQ4RjUyRTUyRDk4REMxQjNGIi8+I'
    + 'DwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+Af/+/fz7+vn49/b19PPy8fDv7u3s6+rp6Ofm5eTj4uHg397'
    + 'd3Nva2djX1tXU09LR0M/OzczLysnIx8bFxMPCwcC/vr28u7q5uLe2tbSzsrGwr66trKuqqainpqWko6KhoJ+enZybmpmYl5aVlJOSkZCPjo2Mi4qJiIeGhYSDgoGAf359fH'
    + 't6eXh3dnV0c3JxcG9ubWxramloZ2ZlZGNiYWBfXl1cW1pZWFdWVVRTUlFQT05NTEtKSUhHRkVEQ0JBQD8+PTw7Ojk4NzY1NDMyMTAvLi0sKyopKCcmJSQjIiEgHx4dHBsaG'
    + 'RgXFhUUExIREA8ODQwLCgkIBwYFBAMCAQAAIfkEAQAAAwAsAAAAABIADQAAAimcHamrNyGinDEcSLOwT2uLeVQifuEEpOlElmPnStxZcrBr32L+MH5QAAA7';


var CartHTML = '<div class="ShopCartBox" id="ShopCartBox"><a href="javascript:void(0)" onclick="ToggleCart()" id="cartclosebtn" style="display:none; position:absolute;right:5px; top:5px; background-color:#ffffff; padding:5px;">' + rclng.plugin_goodsmanage_close + '</a><div class="shopcartitembox" id="shopcartitembox"></div>'
    + '<div class="shopcartctrlbox"><a href="' + webhttp + 'order/shopcart/" class="shopcartjiesau btn btn-warning btn-lg"><font class="shoptotalmoney"></font>' + rclng.plugin_goodsmanage_checkout + '</a><a href="javascript:void(0);" class="shopcarttogglebtn" onclick="ToggleCart();">' + rclng.plugin_goodsmanage_cart + ' (<span id="shopcartitemcount" class="shopcartitemcount">0</span>)' + rclng.plugin_goodsmanage_item + '</a></div></div>';
function ShowShopCart()
{
    if ($("#ShopCartBox").length == 0) {
        var el = $("body");
        if ($("#kj-minshopcart-box").length > 0)
        {
            el = $("#kj-minshopcart-box");
            el.empty();
        }
        if (ShowShopConfig != undefined)
        {
            if (ShowShopConfig.defaultcss) {
                el.append(CartHTMLStyle + CartHTML);
            }
            else {
                el.append(CartHTML);
            }
        }
        else
        {
            el.append(CartHTMLStyle + CartHTML);
        }
        if ($("#kj-minshopcart-box").length > 0) {
            $("#kj-minshopcart-box #cartclosebtn").remove();
            var chtml = $("#kj-minshopcart-box .shopcarttogglebtn").html();
            $("#kj-minshopcart-box .shopcarttogglebtn").replaceWith('<span class="minshopcartboxnum">' + chtml + '</span>');
        }
        ShowShopCart();
    }
    else {
        $("#ShopCartBox").show();
       
    }
}
function CloseShopCart()
{
    $("#ShopCartBox").hide();
}
function ToggleCart()
{
    if (!LoadedCart) {
        LoadShopCart(true)
    }
    else {
        if ($('#shopcartitembox').is(":hidden")) {
            $('#shopcartitembox').show();
            $("#cartclosebtn").show();
        }
        else {
            $('#shopcartitembox').hide();
            $("#cartclosebtn").hide();
        }
       
        
    }
}
function removeCartItem(o, cid)
{
    
    Web960.Web.index.RemoveShopCartItem(cid,function (ret) {
        AjaxReturn(ret, function () {
            var rc = ret.value;
            if (rc.Status == 1) {
                ShowShopCartWithData();
            } else if (rc.Status == -2) {
                ShowLoginDialog({
                    loginedcallback: function () {
                        CloseLoginDialog();
                        removeCartItem(o, cid);
                    }
                });
            }
        });
    });
}
function GetRealPriceByPreferent(goods,PreferentType, PreferentInfo, MoneyUnit, price)
{
    var brandprice = price;
    if (GoodsGlobalSettings.preferentsetting != undefined ) {

        if (GoodsGlobalSettings.app_preferent_on == "1" ) {
          
            var setting = eval('(' + GoodsGlobalSettings.preferentsetting + ');');
            var preinfo = eval('(' + PreferentInfo + ');');
            var brand = "";
            if (goods != undefined) {
                brand= $.trim(web960.utils.tools.getvalfromjson(goods.Goods_info, "{goodsinfo.brand}"));
            }
            var brandset = setting["preferentsettingbybrand"];//品牌设置优惠
           
            if (brandset != undefined && brand != "") {
                for (var x = 0; x < brandset.length; x++) {
                    var tbrandset = brandset[x];
                    if (brand == tbrandset.brandname) {
                        //默认品牌优惠设置
                        for (var i = 0; i < tbrandset.rolessetting.length; i++) {
                            if (typeof (NowUserInfo) != "undefined") {
                                if (NowUserInfo.rolename != undefined && 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;
                    }
                }
            }

            if (PreferentType == "1" && setting.suspendpromotion == "0") {
                //促销
                if (preinfo.premethod == "1") {

                    price = price * parseFloat(preinfo.val);
                }
                else {
                    price = parseFloat(preinfo.val);
                }
                //html = '<br /><span>促销</span> ' + preinfo.val + ' ' + (preinfo.premethod == "1" ? "折" : MoneyUnit);
            }
            else if (PreferentType == "2" && setting.SuspendPreferent == "0") {
                //优惠
                if (typeof (NowUserInfo) != "undefined") {
                    if (NowUserInfo.rolename == "") {
                        //有可能游客也促销，游客默认为角色名：普通会员
                        if (typeof (GoodsConfig) != "undefined" && GoodsConfig.GuestPrice != undefined) {
                            price = GoodsConfig.GuestPrice(setting.rolessetting,2, preinfo, price);
                        }
                    }
                    else {
                        for (var j = 0; j < preinfo.rolessetting.length; j++) {

                            if (NowUserInfo.rolename != undefined) {
                                if (NowUserInfo.rolename == preinfo.rolessetting[j].rolename) {
                                    if (preinfo.premethod == "1") {

                                        price = price * parseFloat(preinfo.rolessetting[j].zk);
                                    }
                                    else {
                                        price = parseFloat(preinfo.rolessetting[j].zk);
                                    }
                                }
                            }
                        }
                    }
                }
            }
            else if (PreferentType == "0" && setting.SuspendPreferent == "0" && setting.enable == "1") {


                //默认优惠设置
                if (typeof (NowUserInfo) != "undefined") {
                    if (NowUserInfo.rolename == "") {
                        //有可能游客也促销，游客默认为角色名：普通会员
                        if (typeof (GoodsConfig) != "undefined" && GoodsConfig.GuestPrice != undefined) {
                            price = GoodsConfig.GuestPrice(setting.rolessetting,0, preinfo, price);
                        }
                    }
                    else {
                        for (var j = 0; j < setting.rolessetting.length; j++) {

                            if (NowUserInfo.rolename != undefined) {
                                if (NowUserInfo.rolename == setting.rolessetting[j].rolename) {

                                    if (preinfo.premethod == "2") {
                                        price = parseFloat(setting.rolessetting[j].zk);
                                    }
                                    else {
                                        price = price * parseFloat(setting.rolessetting[j].zk);
                                    }
                                }
                            }
                        }
                    }
                }
                else {
                    //有可能游客也促销，游客默认为角色名：普通会员
                    if (typeof (GoodsConfig) != "undefined" && GoodsConfig.GuestPrice != undefined) {
                        price = GoodsConfig.GuestPrice(setting.rolessetting,0, preinfo, price);
                    }

                }
            }
        }
    }
    if (brandprice > price) {
        return price;
    }
    else {
        return brandprice;
    }
}
function GetRealPriceByPre(price, id)
{
    if (typeof (ShopCartCfg) != "undefined") {
        if (ShopCartCfg["invos"] != null) {
            var invs = $.grep(ShopCartCfg.invos, function (v) {
                return v.id == id;
            });
            if (invs.length > 0) {
                var inv = invs[0];
                var g = ShopCartCfg.goods["inv" + id];
                if (GoodsConfig.GetGoodsInventorePrice != undefined) {
                    var price = GoodsConfig.GetGoodsInventorePrice(g, inv.pretype, inv.preinfo, inv.newmoneyunit, inv.newprice);
                    return parseFloat(price.finalprice);
                }
            }
        }
    }
    return price;
}
///------------------
function BatchChangeOrderAmount(data) {
    if (data.length > 0) {
        var postdata = [];
        for (var i = 0; i < data.length; i++) {
            var item = data[i];
            var itemtest = "";

            var od = parseInt($("#OitemAmount_" + item.id).val());
            var newv = od + item.num;
            newv = newv < 1 ? 1 : newv;

            var price = parseFloat($("#OitemPrice_" + item.id).html());

            price = GetRealPriceByPre(price, item.id);
            var unit = $("#OitemUnit_" + item.id).html();
            var moneyunit = $("#OitemMoneyUnit_" + item.id).html();
            var idata = { id: item.id, num: newv.toString(), unit: unit, price: price.toString(), moneyunit: moneyunit };

            postdata.push(idata);
        }
        var datastr = JSON.stringify(postdata);

        Web960.Web.index.BatchEditShopCart(datastr, function (ret) {
            AjaxReturn(ret, function () {
                var rc = ret.value;
                if (rc.Status == 1) {
                    for (var i = 0; i < postdata.length; i++) {
                        var sid = parseFloat(postdata[i].price) * parseFloat(postdata[i].num);
                        $("#OitemAmount_" + postdata[i].id).val(postdata[i].num);
                        $("#OitemSum_" + postdata[i].id).html(sid.toFixed(2));
                    }
                    GetTotalPriceOfCart(null);

                } else if (rc.Status == -2) {
                    ShowLoginDialog({
                        loginedcallback: function () {
                            CloseLoginDialog();
                            BatchChangeOrderAmount(data)
                        }
                    });
                }
            });
        });

    }
}
function changeOrderAmount(id, p, typeid, callback)
{
  
    var od = parseInt($("#OitemAmount_" + id).val());
    var newv = od + p;
    newv = newv < 1 ? 1 : newv;
   
    var price = parseFloat($("#OitemPrice_" + id).html());

    var integral = 0;
    var isintegral = 0;
    if ($("input[name='item'][value='" + id + "']").attr("isintegral") == "1") {
        integral = parseFloat($("#IntegralPrice_" + id).html());
        isintegral = 1;
        price = 0;
    }
    else {
        price = GetRealPriceByPre(price, id);;
    }
    var unit = $("#OitemUnit_" + id).html();
    var moneyunit = $("#OitemMoneyUnit_" + id).html();

    Web960.Web.index.EditShopCart(id, newv.toString(),unit,price.toString(),moneyunit,isintegral+"",integral+"", function (ret) {
        AjaxReturn(ret, function () {
            var rc = ret.value;
            if (rc.Status == 1) {
                var sid = price * newv;
                $("#OitemAmount_" + id).val(newv);
                $("#OitemSum_" + id).html(sid.toFixed(2));
                if (isintegral == "1") {
                    $("#OitemSumIntegral_" + id).html((integral * newv).toFixed(2));
                }

                ShopCartCfg.checkproducttype();
                //GetTotalPriceOfCart(typeid);
                if (callback != undefined) {
                    callback();
                }
            } else if (rc.Status == -2) {
                ShowLoginDialog({
                    loginedcallback: function () {
                        CloseLoginDialog();
                        removeCartItem(o, cid);
                    }
                });
            }
        });
    });

   
  
}
function RecountPrice(id,typeid)
{
    changeOrderAmount(id, 0, typeid);
}
function InitExchangeRate(cfg)
{

    var select = rclng.plugin_goodsmanage_moneyselttment+"：<select id=\"ExchangeRateSelect\" onchange=\"ExchangeRateSelectChange();\">";
    var uints = GoodsGlobalSettings[GoodsMoneyUnits];
    var nl=0;
    if (uints != undefined) {
        var us = eval(uints);
        nl=us.length;
        if (us.length > 0) {
            for (var i = 0; i < us.length; i++) {
                var sel = "";
               
                select += '<option value="' + us[i].key + '"' + sel + '>' + us[i].title + '(' + us[i].key + ')' + '</option>';
            }
        }
        else {
            select += '<option value="CNY">人民币(CNY)</option>';
        }
    }
    else {
        select += '<option value="CNY">人民币(CNY)</option>';
    }
    select += '</select>';
    $(cfg.conel).html(select);
    if (nl > 1) {
        $(cfg.conel).show();
    }
    else {
        $(cfg.conel).hide();
    }
    cfg.callback();
}
function ExchangeRateSelectChange()
{
    GetTotalPriceOfCart();
}
function MoneyExchange(sum, unit, aimunit)
{
    if (unit == aimunit) {
        return sum;
    }
    else {
        var jsonk = unit + '_' + aimunit;
        if (unit > aimunit) {
            jsonk = aimunit + '_' + unit;
        }
       
        var rate = eval('(' + GoodsGlobalSettings[GoodsExchangeRate] + ');');
    
        sum = sum * parseFloat(rate[jsonk][aimunit]) / parseFloat(rate[jsonk][unit]);
      
        return sum;
    }
}


function GetTotalPriceOfCart(t)
{
   
    if (t==undefined) {
        var totalsum = 0;
        if ($(".OitemSum").length == 0) {
             $("#shopcartNeedInfo,#shopcartRemarkinfo,#shopcartKPinfo,#shopcartCtrlbox,#shopcartpaymethod").hide();
            $(".cahrhjmoney").html(totalsum.toFixed(2));
            if (typeof (ShopCartCfg) != "undefined" && ShopCartCfg.oncartempty != undefined) {
                ShopCartCfg.oncartempty();
            }
            else {
                $("#shopCarttable").html('<div style="padding:20px; text-align:center; font-size:16px; font-weight:bold; color:red;">' + rclng.plugin_goodsmanage_shoppingcartisempty + '</div>');
            }
        }
        else {
            $("#shopcartNeedInfo,#shopcartRemarkinfo,#shopcartKPinfo,#shopcartCtrlbox,#shopcartpaymethod").show();
            if ($("#exchageratebox").html() == "") {
                InitExchangeRate({
                    conel: "#exchageratebox", fel: ".oitemmoneyunit", callback: function () {
                        GetTotalPriceOfCart(t);
                    }
                });
            }
            else {
                var exchange = $("#ExchangeRateSelect").val();
                $(".OitemSum", $("input[name='item']:checked").parent().parent()).each(function () {
                    var sum = parseFloat($(this).html());
                    var moneyunit = $(this).attr("moneyunit");
                
                    sum = MoneyExchange(sum, moneyunit, exchange);
                    totalsum += sum;
                });
                if ($(".OitemSum", $("input[name='item']:checked").parent().parent()).length == 0) {
                    $(".cahrhjmoney").html(totalsum.toFixed(2));
                    $(".ordertotalmoney,.yunfeimoney").html(totalsum.toFixed(2));
                }
                else {
                    //如果有税率
                    if (GoodsGlobalSettings.app_taxrate_on == "1" && typeof (ShopCartCfg) != "undefined" && ShopCartCfg.taxrate != undefined) {
                        ShopCartCfg.taxrate(totalsum);
                    }

                    var rateel = $(".salestaxmoney");
                    var ratemoney = 0;
                    if (rateel.length != 0) {
                        if (rateel.html() != "") {
                            ratemoney = parseFloat(rateel.html());
                        }
                    }

                    if (GoodsGlobalSettings.app_yunfei_on == "1" && typeof (ShopCartCfg) != "undefined" && ShopCartCfg.yunfei != undefined) {

                        ShopCartCfg.yunfei(totalsum, function (totalyunfei) {
                            $(".cahrhjmoney").html(totalsum.toFixed(2));
                            totalsum = parseFloat(totalsum) + parseFloat(totalyunfei) + parseFloat(ratemoney);
                            $(".ordertotalmoney").html(totalsum.toFixed(2));
                        });
                    }
                    else {
                        totalsum = totalsum + ratemoney;
                        $(".cahrhjmoney").html(totalsum.toFixed(2));
                        $(".ordertotalmoney").html(totalsum.toFixed(2));
                    }
                }
                $(".simpmoneyunit").html(GetSimpMoneyUnit(exchange));
            }
           
        }
       
    }
    else {
        var totalsum = 0;
        if ($(".OitemSum").length == 0) {
            $(".shoptotalmoney").html("");
        }
        else {
            
            $(".OitemSum").each(function () {
                var sum = parseFloat($(this).html());
                totalsum += sum;
            });
            $(".shoptotalmoney").html(rclng.plugin_goodsmanage_total+":"+totalsum.toFixed(2)+" ");
        }
       
    }
}
function DelCartItem(id)
{
    if (confirm(rclng.plugin_goodsmanage_suretodel)) {
        doDelCartItem(id);
    }
}
function doBlukDelCartItem(ids, callback) {

    Web960.Web.index.BlukRemoveShopCartItem(ids, function (ret) {
        AjaxReturn(ret, function () {
            var rc = ret.value;
            if (rc.Status == 1) {
                if (callback != null) {
                    callback();
                }
            } else if (rc.Status == -2) {
                ShowLoginDialog({
                    loginedcallback: function () {
                        CloseLoginDialog();
                        DelCartItem(id);
                    }
                });
            }
        });
    });
}

function doDelCartItem(id,typeid)
{
    Web960.Web.index.RemoveShopCartItem(id, function (ret) {
        AjaxReturn(ret, function () {
            var rc = ret.value;
            if (rc.Status == 1) {
                if ($("#trosci_" + id).length == 1)
                {
                    $("#trosci_" + id).remove();
                }
                else
                {
                    $("#OitemAmount_" + id).parent().parent().remove();
                }
                GetTotalPriceOfCart(typeid);
            } else if (rc.Status == -2) {
                ShowLoginDialog({
                    loginedcallback: function () {
                        CloseLoginDialog();
                        DelCartItem(id);
                    }
                });
            }
        });
    });
    window.location.reload();
}
function deleteCartItem(name, callback) {
    if (confirm(rclng.plugin_goodsmanage_suretodelselecteditems)) {
        var ids = getSelectedArrayVal(name);
        var a = []
        for (var i = 0; i < ids.length; i++) {
            a.push(parseInt(ids[i]));
        }
        doBlukDelCartItem(a, callback);
    }
}

function InitShopCartForm()
{
    InitFormVerify({ el: '.usercenterright' });
}
function VerifyOrderAccountInfoChoose(callback) {
    var re = {};
    var r = GetAccountInfoArray();
    for (var i = 0; i < r.length; i++) {
        if (GoodsGlobalSettings[r[i].savekey] != "") {
            if ($("input[name='acntckd" + r[i].savekey + "']:checked").length == 0) {
                alert(GetLangTxt(rclng.alertrequired, [{ title: "title", text: r[i].title }]));
                callback(false);
                return;
            }
            else {
                var idx = parseInt($("input[name='acntckd" + r[i].savekey + "']:checked").eq(0).attr("idx"));

                re[r[i].jsonparm] = JSON2.stringify(r[i].val[idx]);

            }
        }
    }
    callback(re);
}
function saveOrder(callback, o, whenerror) {
    VerifyOrderAccountInfoChoose(function (returndata) {
        if (typeof (returndata) == "boolean") {
            whenerror(false);
            return;
        }

        VerifyFormData({ el: '.goodchatinfobox' }, function (postdata, extdata) {
            // alert(JSON.stringify(postdata) + "\n" + JSON.stringify(extdata));
            var idstr = getSelectedValue("item");
            if (idstr == "") {
                callback(false);
            }
            else {
                var totalMoney = $(".cahrhjmoney").html();
                var moneyUnit = $("#ExchangeRateSelect").val();
                var ordererinfo = returndata.ordererinfo;
                var billinfo = returndata.billinfo;
                var consigneeinfo = returndata.consigneeinfo;
                var invoiceinfo = returndata.invoiceinfo;
                var yunfei = $(".yunfeimoney").html();
                var tax = $(".salestaxmoney").html();
                var paymethod = $("input[name='paymethod']:checked").val();
                $(o).prop("disabled", true);
                if (IsDataSaveing) {
                    return false;
                }

                ShowSaveingDialog();
                Web960.Web.index.SaveOrder(idstr, totalMoney, moneyUnit, JSON2.stringify(postdata), ordererinfo, billinfo, consigneeinfo, invoiceinfo, yunfei, tax, paymethod, function (res) {
                    $(o).prop("disabled", false);
                    HideSaveingDialog();
                    AjaxReturn(res, function () {
                        var rc = res.value;
                        if (rc.Status == 1) {
                            if (callback != undefined) {
                                callback(true, rc, paymethod);
                            }
                            else {
                                $(".usercenterright").hide().after('<div class="cartsubmitsuccessed">' + rclng.plugin_goodsmanage_ordersubmitsuccess + '</div>');
                            }
                        } else if (rc.Status == -2) {
                            ShowLoginDialog({
                                loginedcallback: function () {
                                    CloseLoginDialog();
                                    saveOrder(callback);
                                }
                            });
                        } else {
                            alert(rc.ClientMsg);
                        }
                    });

                });
            }
        });
    });
}
function InitShopCartOrderAccountInfo()
{
    var r = GetAccountInfoArray();
    for (var i = 0; i < r.length; i++)
    {
        if (GoodsGlobalSettings[r[i].savekey] != "") {
            eval('var cfg=' + r[i].savekey + '_Cfg;');
            InitOrderAccountInfoHTML(r[i], cfg);
        }
    }
}

function FormatAccountUlItem(savekey, vobj, cfg, nodefdeflast, selectedidx) {
    var r = '<ul class="shopchataccountinfoli">';
    var havedefopt = false;
    var havemore = false;
    for (var i = 0; i < vobj.length; i++) {

        var defopt = "";
        var defckd = "";
        var selcls = "";

        var deflireplace = "";
        var defckreplace = "";

        var viewclass = "";

        //defckd = " checked=\"checked\" ";
        //      selcls = " class=\"selon\" ";
        var isdef = "";
        if (vobj[i].defaultoption != undefined && vobj[i].defaultoption == "1" && !havedefopt) {
            defopt = "<font color=red>[" + rclng.defaultoption + "]</font>";
            havedefopt = true;
            isdef = ' def="1" ';
        }

        var editidx = i;
        if (vobj[i]["editidx"] != undefined) {
            editidx = vobj[i]["editidx"];
        }
        r += '<li liidx="' + editidx + '" ' + isdef + ' hideitem="true"><a href="javascript:void(0);" onclick="EditOrderAccountInfo(' + editidx + ',\'' + savekey + '\');" class="kj-accountitem-edithref btn btn-primary btn-xs" >' + rclng.edit + '</a><label><input type="checkbox"  onclick="OrderAccountInfoSelected(this,\'' + savekey + '\');" idx="' + editidx + '"  name="acntckd' + savekey + '" /> ' + (i + 1) + '、' + defopt;
        var detl = '';
        for (ix in cfg.classes) {

            if (vobj[i][ix] != undefined) {
                for (im in vobj[i][ix]) {

                    if (vobj[i][ix][im] != undefined && vobj[i][ix][im] != "") {
                        detl += vobj[i][ix][im] + ",";
                    }
                }
            }
        }
        detl = detl == "" ? "" : detl.substr(detl, detl.length - 1);
        r += '<span>' + detl + '</span></label>';
        r += '</li>';

    }

    r += '</ul>';

    var ul = $(r);
    $("li:lt(4)", ul).removeAttr("hideitem");
    $("li:gt(3)", ul).hide();

    if (nodefdeflast != null && nodefdeflast == 1 && selectedidx != null && selectedidx > -1) {
        $("li[liidx='" + selectedidx + "']", ul).removeAttr("hideitem").addClass("selon").show();
        $("li[liidx='" + selectedidx + "'] input", ul).attr("checked", true);
    }
    else if (nodefdeflast != null && nodefdeflast == 1) {
        $("li:last", ul).removeAttr("hideitem").addClass("selon").show();
        $("li:last input", ul).attr("checked", true);
    }
    else if ($("li[def='1']", ul).length > 0) {
        $("li[def='1']:first", ul).removeAttr("hideitem").addClass("selon").show();
        $("li[def='1']:first input", ul).attr("checked", true);
    }
    else {
        $("li:first", ul).removeAttr("hideitem").addClass("selon").show();
        $("li:first input", ul).attr("checked", true);
    }

    if ($("li[hideitem]", ul).length > 0) {
        havemore = true;
    }

    var data = {
        html: ul.prop("outerHTML"),
        havemore: havemore,
        havedefopt: havedefopt
    }

    return data;
}
function InitOrderAccountInfoHTML(ro, cfg, nodefdeflast, selectedidx) {
    var vobj = ro.val;
    var savekey = ro.savekey;

    var r = "";
    if (savekey == "plugin_goodsmanage_consigneeform") {
        r += '<div style="padding:8px;border-bottom:1px solid #dddddd; background-color:#f8f8f8;">Search：<input type="text" placeholder="Name / Phone / Address" onkeyup="SearchAccountInfo(\'' + savekey + '\',this.value)" /> </div>';
    }
    if (vobj.length > 0) {
        var indata = FormatAccountUlItem(savekey, vobj, cfg, nodefdeflast, selectedidx);
        r += indata.html;

        var morehref = "";
        if (indata.havemore) {
            morehref += '<a href="javascript:void(0);" viewallbtn="true"  style="color:#36c; padding:10px; display:block"  onclick="ViewMoreAccountInfo(\'' + savekey + '\',this)"> <i class="fa fa-angle-double-down"></i> 显示全部</a>';
        }


        r += '<div><a href="javascript:void(0);" style="color:#36c;display:none;" onclick="AddNewOrderAccontInfo(\'' + savekey + '\')">' + rclng.addnew + '</a> ' + morehref + ' </div>';
    }
    else {
        r = '<div style="padding:20px;"><font color="red">' + GetLangTxt(rclng.plugin_goodsmanage_notfillorderaccountinfo, [{ title: "title", text: ro.title }, { title: "button", text: rclng.addnew }]) + '</font></div>';
        //   r += '<div><a href="javascript:void(0);" onclick="AddNewOrderAccontInfo(\'' + savekey + '\')">' + rclng.addnew + '</a></div>';
    }

    $(".InfoHTMLBox[reftype='" + savekey + "']").html(r);
}
function SearchAccountInfo(savekey, kwd) {

    var r = GetAccountInfoArray();
    for (var i = 0; i < r.length; i++) {
        if (GoodsGlobalSettings[r[i].savekey] != "") {
            if (r[i].savekey == savekey) {
                eval('var cfg=' + r[i].savekey + '_Cfg;');
                var vobj = r[i].val;
                var array = vobj;
                var idxs = [];
                if (kwd != "") {
                    array = $.grep(vobj, function (value, idx) {
                        var av = value.deliveryinfo;
                        var matched = false;
                        for (var key in av) {
                            if (av[key].indexOf(kwd) != -1) {
                                matched = true;
                                idxs.push(idx);
                                return matched;
                            }
                        }
                        return matched;
                    });
                }
                for (var j = 0; j < array.length; j++) {
                    array[j]["editidx"] = idxs[j];
                }
                var indata = FormatAccountUlItem(savekey, array, cfg);
                var r = indata.html;
                $(".InfoHTMLBox[reftype='" + savekey + "'] ul.shopchataccountinfoli").replaceWith(r);
                if (indata.havemore) {
                    $(".InfoHTMLBox[reftype='" + savekey + "'] a[viewallbtn='true'").show();
                }
                else {
                    $(".InfoHTMLBox[reftype='" + savekey + "'] a[viewallbtn='true'").hide();
                }
            }
        }
    }
}
function ViewMoreAccountInfo(savekey, o) {

    if ($(o).text().indexOf("隐藏") == -1) {
        $(".InfoHTMLBox[reftype='" + savekey + "'] li[hideitem='true']").show();
        $(o).html(' <i class="fa fa-angle-double-up"></i> 隐藏显示');
    }
    else {
        $(".InfoHTMLBox[reftype='" + savekey + "'] li[hideitem='true']").hide();
        $(o).html(' <i class="fa fa-angle-double-down"></i> 显示全部');
    }
}
function OrderAccountInfoSelected(o, savekey) {

    var name = $(o).attr("name");
    $(".InfoHTMLBox[reftype='" + savekey + "'] input[name='" + name + "']").prop("checked", false);
    $(o).prop("checked", true);
    $(".selon", $(o).parent().parent().parent()).removeClass("selon");
    $(o).parent().parent().addClass("selon");

    if (name == 'acntckdplugin_goodsmanage_consigneeform' || savekey == "plugin_goodsmanage_consigneeform") {
        if ((GoodsGlobalSettings.app_yunfei_on == "1" && typeof (ShopCartCfg) != 'undefined' && ShopCartCfg.yunfei != undefined) || (GoodsGlobalSettings.app_taxrate_on == "1" && typeof (ShopCartCfg) != "undefined" && ShopCartCfg.taxrate != undefined)) {
            GetTotalPriceOfCart();
        }
    }
    if (name == 'acntckdplugin_goodsmanage_invoiceform' || savekey == 'plugin_goodsmanage_invoiceform') {
        var idx = parseInt($(o).attr("idx"));
        if (typeof (plugin_goodsmanage_invoiceform_ValCfg) != 'undefined') {
            if (plugin_goodsmanage_invoiceform_ValCfg["val"] != null) {
                if (plugin_goodsmanage_invoiceform_ValCfg["val"][idx] != null) {
                    var info = plugin_goodsmanage_invoiceform_ValCfg["val"][idx];
                    if (info["invoiceinfo"] != null) {
                        if (info["invoiceinfo"]["company"] != null) {
                            var rtext = info["invoiceinfo"]["company"];
                            if (UserGroupsDataArray.indexOf(rtext) != -1) {
                                if (typeof (NowUserInfo) != "undefined") {
                                    NowUserInfo["temprolename"] = rtext;
                                }
                            }
                            else {
                                if (typeof (NowUserInfo) != "undefined") {
                                    NowUserInfo["temprolename"] = "";
                                }
                            }
                            GetTotalPriceOfCart();
                        }
                    }
                }
            }
            //
        }
    }
}
function CloseAccountInfoDlg(savekey) {
    if ($("#" + savekey + "_modal").length == 0) {
        $('.forminfo[reftype=' + savekey + ']').toggle();
    }
    else {

        $("#" + savekey + "_modal").modal("hide");
    }

}
var _orderaccountinfoclickfrom = "";
function AddNewOrderAccontInfo(savekey, cfg) {
    var gofunc = function () {
        _orderaccountinfoclickfrom = "";
        if (cfg != null && cfg["from"] != null) {
            _orderaccountinfoclickfrom = cfg["from"];
        }
        var containerel = savekey.split('|')[1];
        savekey = savekey.split('|')[0];
        $(".forminfo[reftype='" + savekey + "']").show();

        if (cfg != null && cfg["modal"]) {
            var dlgtitle = "新增/编辑";
            if (cfg["dlgtitle"] != null) {
                dlgtitle = cfg["dlgtitle"];
            }
            var html = $('<div class="modal fade" id="' + savekey + '_modal" tabindex="-1" role="dialog" aria-labelledby="' + savekey + '_ModalLabel" data-backdrop="static">\
                          <div class="modal-dialog" role="document">\
                            <div class="modal-content">\
                              <div class="modal-header">\
                                <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>\
                                <h4 class="modal-title" id="' + savekey + '_ModalLabel">' + dlgtitle + '</h4>\
                              </div>\
                              <div class="modal-body">\
                              </div>\
                            </div>\
                          </div>\
                        </div>');
            if ($("#" + savekey + "_modal").length == 0) {
                $("body").append(html);

                $(".forminfo[reftype='" + savekey + "']").appendTo($("#" + savekey + "_modal .modal-body"));

            }

            $("#" + savekey + "_modal").modal();
        }
        else {
            $("html,body").animate({ scrollTop: $("div.forminfo[reftype='" + savekey + "']").offset().top - 80 }, 500);
        }
    };

    if (cfg != null && cfg["clearform"] != undefined && cfg["clearform"] == false) {
        gofunc();
    }
    else {
        ClearFormData({ el: ".forminfo[reftype='" + savekey + "']" }, function () {
            gofunc();
        });
    }


}
function EditOrderAccountInfo(i, savekey) {

    _orderaccountinfoclickfrom = "";
    $("input[type='button'][savekey='" + savekey + "']").val(rclng.edit).attr("editkey", i);

    eval('var ovl =' + savekey + '_ValCfg;');
    var ov = ovl.val;
    for (ix in ov[i]) {
        var classname = ix;

        for (im in ov[i][ix]) {
            $("input[classname='" + classname + "'][relkey='" + im + "'],textarea[classname='" + classname + "'][relkey='" + im + "'],select[classname='" + classname + "'][relkey='" + im + "']", $(".forminfo[reftype='" + savekey + "']")).val(ov[i][ix][im]);

            $("span[classname = '" + classname + "'][relkey = '" + im + "'][addresstype]", $(".forminfo[reftype='" + savekey + "']")).each(function () {
                var v = ov[i][ix][im];
                var areacode = "";
                var areastr = "";
                if (v.indexOf('|') != -1) {
                    var pl = v.split('|');
                    areacode = pl[0];
                    areastr = pl[1];
                }
                else {
                    areastr = v;
                }
                $(this).attr("areacode", areacode).attr("areatitle", areastr);
                $(this).empty();
                InitExtAddress();
            });

            $("span[classname = '" + classname + "'][relkey = '" + im + "'][countrytype]", $(".forminfo[reftype='" + savekey + "']")).each(function () {
                var v = ov[i][ix][im];
                var areacode = "";
                var areastr = "";
                if (v.indexOf('|') != -1) {
                    var pl = v.split('|');
                    areacode = pl[0];
                    areastr = pl[1];
                }
                else {
                    areastr = v;
                }
                $(this).attr("countrytitle", areacode).attr("countrycode", areastr);
                $(this).empty();
                InitExtCountry();
            });

        }
    }
    if (ov[i].defaultoption != undefined && ov[i].defaultoption == "1") {
        $(".forminfo[reftype='" + savekey + "'] input[data-ref='defaultoption']").attr("checked", true);
    }
    else {
        $(".forminfo[reftype='" + savekey + "'] input[data-ref='defaultoption']").attr("checked", false);

    }

    $(".forminfo[reftype='" + savekey + "'] select[onchange]").change();
    AddNewOrderAccontInfo(savekey, { modal: true, clearform: false });

  /*
    $(".forminfo[reftype='" + savekey + "']").show();
    $("html,body").animate({ scrollTop: $("div.forminfo[reftype='" + savekey + "']").offset().top - 80 }, 500);
    */
}


function InitInventoryDisplay(set, cb, goods) {
    var dset = eval('(' + set.PreferentInfo + ');');
    var r = set.Amount;
    var brandname = "";
    var huoqi = "";
    if (goods != undefined) {
        huoqi = $.trim(web960.utils.tools.getvalfromjson(goods.Goods_info, "{goodsinfo.goodshuoqi}"));
        brandname = $.trim(web960.utils.tools.getvalfromjson(goods.Goods_info, "{goodsinfo.brand}"));
        var lockinventorysum = $.trim(web960.utils.tools.getvalfromjson(goods.Goods_info, "{goodsinfo.lockinventorysum}"));
        if (lockinventorysum != null && lockinventorysum != "") {
            r = parseFloat(lockinventorysum);
        }
        else {
            var totalr = 0;
            for (var m = 0; m < goods.Inventores.length; m++) {
                totalr += parseFloat(goods.Inventores[m].Amount);
            }
            r = totalr;
        }
    }
    var _globalset = {};
    if (GoodsGlobalSettings["stockseting"] != undefined) {
        _globalset = eval('(' + GoodsGlobalSettings["stockseting"] + ');');
    }
    var useglobal = false;
    if (_globalset["useglobalset"] != undefined && _globalset["useglobalset"] == "1") {
        useglobal = true;
    }
    var globalset = function () {
        if (GoodsGlobalSettings["stockseting"] != undefined) {
            var glset = eval('(' + GoodsGlobalSettings["stockseting"] + ');');

            var bybrandsetrule = false;
            var brandsetrules = [];
            if (brandname != "") {
                var brandset = [];
                if (glset["brandset"] != null) {
                    brandset = glset["brandset"];
                }
                var bset = $.grep(brandset, function (v) {
                    return v.brand == brandname;
                });
                if (bset.length > 0) {
                    brandsetrules = bset[0].rules;
                }
            }
            var items = [];
            var floatAmount = parseFloat(set.Amount);
            if (brandsetrules.length > 0) {

                bybrandsetrule = true;
                items = brandsetrules;
            }

            
            if (bybrandsetrule || glset["stockdisplay"] == "02") {
                if (!bybrandsetrule) {
                    items = glset["stockcontent"];
                }
                for (var i = 0; i < items.length; i++) {
                    var floatValue = parseFloat(items[i]["value"]);
                    var sque = '(' + floatAmount + ' ' + (items[i].symbol == "=" ? "==" : items[i].symbol) + ' ' + floatValue + ');';
                    var able = eval(sque);
                    if (able) {
                        if (items[i].type == "02") {
                            r = items[i].content;
                        }
                        else if (items[i].type == "03") {
                            //向上取整
                            r = Math.ceil(floatValue);

                        } else if (items[i].type == "04") {
                            //向下取整
                            r = Math.floor(floatValue);
                        } else if (items[i].type == "05") {
                            //四舍五入
                            r = Math.round(floatValue);
                        } else if (items[i].type == "06") {
                            //货期
                            r = huoqi;
                        }
                        break;
                    }
                }
            }
            else if (glset["stockdisplay"] == "01") {
                r = glset["stockcontent"];
            }
            else if (glset["stockdisplay"] == "04") {
                if (dset["zAmount"] != undefined) {
                    if (!isNaN(dset["zAmount"])) {
                        r = parseInt(dset["zAmount"]);
                    }
                }

            }
        }
    };
    if (useglobal) {
        globalset();
    }
    else {

        if (dset["stockseting"] != undefined) {
            var sset;
            if (typeof (dset["stockseting"]) == "string") {
                sset = eval('(' + dset["stockseting"] + ');');
            }
            else {
                sset = dset["stockseting"];
            }
            var stockdisplay = sset["stockdisplay"];
            if (stockdisplay == "00") {
                //使用系统全局设置
                globalset();
            } else if (stockdisplay == "04") {
                if (dset["zAmount"] != undefined) {
                    if (!isNaN(dset["zAmount"])) {
                        r = parseInt(dset["zAmount"]);
                        if (eval(r) > 10) {
                            r = 10;
                        }
                    }
                }
            }
            else {
                var items = sset["stockcontent"];
                var floatAmount = parseFloat(set.Amount);
                for (var i = 0; i < items.length; i++) {
                    var floatValue = parseFloat(items[i]["value"]);
                    var sque = '(' + floatAmount + ' ' + (items[i].symbol == "=" ? "==" : items[i].symbol) + ' ' + floatValue + ');';
                    var able = eval(sque);
                    if (able) {
                        if (items[i].type == "02") {
                            r = items[i].content;
                        }
                        break;
                    }
                }
            }
        }
        else {
            globalset();
        }

    }
    if (cb != undefined) {
        cb(r);
    }
    r = '<span id="stockinventory_' + set.Inventory_id + '">' + r + '</span>';

    return r;
}
function InitInventoryDisplay1(set, q, cb, goods) {
    var dset = eval('(' + set.PreferentInfo + ');');
    var r = set.Amount;
    var brandname = "";
    var huoqi = "";
    if (goods != undefined) {
          brandname = $.trim(web960.utils.tools.getvalfromjson(goods.Goods_info, "{goodsinfo.brand}"));
          huoqi = $.trim(web960.utils.tools.getvalfromjson(goods.Goods_info, "{goodsinfo.goodshuoqi}"));
        var lockinventorysum = $.trim(web960.utils.tools.getvalfromjson(goods.Goods_info, "{goodsinfo.lockinventorysum}"));
        if (lockinventorysum != null && lockinventorysum != "") {
            r = parseFloat(lockinventorysum);
        }
        else {
            var totalr = 0;
            var totalr1 = [];
            for (var m = 0; m < goods.Inventores.length; m++) {
                totalr = parseFloat(goods.Inventores[m].Amount);
                totalr1.push(totalr);
            }
            r = totalr1[q];
        }
    }
    var _globalset = {};
    if (GoodsGlobalSettings["stockseting"] != undefined) {
        _globalset = eval('(' + GoodsGlobalSettings["stockseting"] + ');');
    }
    var useglobal = false;
    if (_globalset["useglobalset"] != undefined && _globalset["useglobalset"] == "1") {
        useglobal = true;
    }
    var globalset = function () {
        if (GoodsGlobalSettings["stockseting"] != undefined) {
            var glset = eval('(' + GoodsGlobalSettings["stockseting"] + ');');
            var bybrandsetrule = false;
            var brandsetrules = [];
            if (brandname != "") {
                var brandset = [];
                if (glset["brandset"] != null) {
                    brandset = glset["brandset"];
                }
                var bset = $.grep(brandset, function (v) {
                    return v.brand == brandname;
                });
                if (bset.length > 0) {
                    brandsetrules = bset[0].rules;
                }
            }
            var items = [];
            var floatAmount = parseFloat(set.Amount);
            if (brandsetrules.length > 0) {

                bybrandsetrule = true;
                items = brandsetrules;
            }
            if (bybrandsetrule || glset["stockdisplay"] == "02") {
                if (!bybrandsetrule) {
                    items = glset["stockcontent"];
                }

                for (var i = 0; i < items.length; i++) {
                    var floatValue = parseFloat(items[i]["value"]);
                    var sque = '(' + floatAmount + ' ' + (items[i].symbol == "=" ? "==" : items[i].symbol) + ' ' + floatValue + ');';
                    var able = eval(sque);
                    if (able) {
                        if (items[i].type == "02") {
                            r = items[i].content;
                        }
                        else if (items[i].type == "03") {
                            //向上取整
                            r = Math.ceil(floatValue);

                        } else if (items[i].type == "04") {
                            //向下取整
                            r = Math.floor(floatValue);
                        } else if (items[i].type == "05") {
                            //四舍五入
                            r = Math.round(floatValue);
                        } else if (items[i].type == "06") {
                            //货期
                            r = huoqi;
                        }
                        break;
                    }
                }
            }
            else if (glset["stockdisplay"] == "01") {
                r = glset["stockcontent"];
            }
            else if (glset["stockdisplay"] == "04") {
                if (dset["zAmount"] != undefined) {
                    if (!isNaN(dset["zAmount"])) {
                        r = parseInt(dset["zAmount"]);
                    }
                }
            }
        }
    };
    if (useglobal) {
        globalset();
    }
    else {

        if (dset["stockseting"] != undefined) {
            var sset;
            if (typeof (dset["stockseting"]) == "string") {
                sset = eval('(' + dset["stockseting"] + ');');
            }
            else {
                sset = dset["stockseting"];
            }
            var stockdisplay = sset["stockdisplay"];
            if (stockdisplay == "00") {
                //使用系统全局设置
                globalset();
            } else if (stockdisplay == "04") {
                if (dset["zAmount"] != undefined) {
                    if (!isNaN(dset["zAmount"])) {
                        r = parseInt(dset["zAmount"]);
                        if (eval(r) > 10) {
                            r = 10;
                        }
                    }
                }
            }
            else {
                var items = sset["stockcontent"];
                var floatAmount = parseFloat(set.Amount);
                for (var i = 0; i < items.length; i++) {
                    var floatValue = parseFloat(items[i]["value"]);
                    var sque = '(' + floatAmount + ' ' + (items[i].symbol == "=" ? "==" : items[i].symbol) + ' ' + floatValue + ');';
                    var able = eval(sque);
                    if (able) {
                        if (items[i].type == "02") {
                            r = items[i].content;
                        }
                        break;
                    }
                }
            }
        }
        else {
            globalset();
        }

    }
    if (cb != undefined) {
        cb(r);
    }
    r = '<span id="stockinventory_' + set.Inventory_id + '">' + r + '</span>';

    return r;
}
var IsDataSaveing = false;
function ShowSaveingDialog() {
    IsDataSaveing = true;
    var mask = $('<div id="showsaveingdialog" style="background-color: #999999;position: fixed; z-index: 9999;left: 0px;top: 0px; bottom: 0px;right: 0px;"></div>').css("opacity", "0.3");
    $("body").append(mask);
}
function HideSaveingDialog() {
    IsDataSaveing = false;
    $("#showsaveingdialog").remove();
}
function SaveInfo(o, savekey) {

    if (IsDataSaveing) {

        return false;
    }

    VerifyFormData({ el: ".forminfo[reftype='" + savekey + "']" }, function (postdata, extstr, extjson) {
        eval('var ovl =' + savekey + '_ValCfg;');
        var ov = ovl.val;
        extjson = $.extend(postdata, extjson);
        if (extjson.defaultoption != undefined && extjson.defaultoption == "1") {
            for (var k = 0; k < ov.length; k++) {
                ov[k]["defaultoption"] = "0";
            }
        }
        else {
            extjson.defaultoption = "0";
        }
        var selectedidx = -1;
        if ($("input[type='button'][savekey='" + savekey + "']").val() == rclng.edit) {
            var idx = $("input[type='button'][savekey='" + savekey + "']").attr("editkey");
            if (idx != "-1" && idx != "") {
                var i = parseInt(idx);
                selectedidx = i;
                // ov[i] = extjson;
                $.extend(ov[i], extjson);
            }
        }
        else {
            ov.push(extjson);
        }
        var save = function () {
            ShowSaveingDialog();
            extdata = JSON2.stringify(ov);
            var saveplu = $(o).attr("refplu");
            Web960.Web.index.UpdateUserComment("", saveplu, savekey, extdata, function (res) {
                HideSaveingDialog();
                AjaxReturn(res, function () {
                    var rv = res.value;
                    if (rv.Status == "1") {
                        ClearFormData({ el: ".forminfo[reftype='" + savekey + "']" }, function () {

                            eval(savekey + '_ValCfg.val=ov;');
                            eval('var tv=' + savekey + '_ValCfg;');
                            eval('var cfg=' + savekey + '_Cfg;');
                            $("input[type='button'][savekey='" + savekey + "']").val(rclng.addnew).attr("editkey", "");

                            InitOrderAccountInfoHTML(tv, cfg, 1, selectedidx);
                            //if (_orderaccountinfoclickfrom == "consigneeinfo") {
                            //    InitOrderAccountInfoHTML(tv, cfg, 1, selectedidx);

                            //    if (typeof (userbilladdress) != "undefined") {
                            //        var selindex = userbilladdress.GetSelectedIndex();
                            //        if (selindex != -1) {
                            //            userbilladdress.Reload(selindex);
                            //        }
                            //        else {
                            //            userbilladdress.Reload(selectedidx);
                            //        }

                            //    }

                            //}
                            //else if (_orderaccountinfoclickfrom == "billinfo") {
                            //    if ($("input[name='acntckdplugin_goodsmanage_consigneeform']:checked").length > 0) {
                            //        var selectedidx = parseInt($("input[name='acntckdplugin_goodsmanage_consigneeform']:checked").attr("idx"));
                            //        InitOrderAccountInfoHTML(tv, cfg, 1, selectedidx);
                            //    }
                            //    if (typeof (userbilladdress) != "undefined") {

                            //        selectedidx = ov.length - 1;

                            //        userbilladdress.Reload(selectedidx);

                            //    }
                            //}

                            // InitOrderAccountInfoHTML(tv, cfg, 1);
                            CloseAccountInfoDlg(savekey);
                            //  $(".forminfo[reftype='" + savekey + "']").hide();
                            GetTotalPriceOfCart();
                           // $("html,body").animate({ scrollTop: $("div.InfoHTMLBox[reftype='" + savekey + "']").offset().top }, 500);



                        });
                    }
                    alert(rv.ClientMsg);

                });

            });
        };
        var FGuid = function (i) {
            if (i < ov.length) {
                if (ov[i].id == undefined) {
                    //需要获取一个guid
                    Guid(function (guid) {
                        ov[i]["id"] = guid;
                        FGuid(i + 1);
                    });
                }
                else {
                    FGuid(i + 1);
                }
            }
            else {
                save();
            }

        }
        FGuid(0);
    });
}

function GetYunFeiProInfo(ov)
{
    
    var v = "";
    if (GoodsGlobalSettings.yunfeisetting != undefined) {
        var set = eval('(' + GoodsGlobalSettings.yunfeisetting + ');');
        if (set.yunfeicity_extkey != undefined)
        {
            if (set.yunfeicity_extkey != "")
            {
                var params = set.yunfeicity_extkey.split('.');
                var mmx;
                for (var i = 0; i < params.length; i++)
                {
                  
                    ov = ov[params[i]];
                  
                }
                if (ov != undefined && ov != null && ov != "")
                {
                    v = ov;
                }
                
            }
        }
    }

    return v;
}