{"version":3,"file":"goods.js","sources":["goods.js"],"sourcesContent":["// tab切换\r\nconst tabs = [{\r\n id: 1,\r\n title: '现货',\r\n sale_type: 0,\r\n },\r\n {\r\n id: 1,\r\n title: '预售',\r\n sale_type: 1\r\n },\r\n {\r\n id: 2,\r\n title: '现货',\r\n sale_type: 0\r\n },\r\n {\r\n id: 2,\r\n title: '分销',\r\n sale_type: 2\r\n },\r\n {\r\n id: 3,\r\n title: '现货',\r\n sale_type: 0\r\n },\r\n {\r\n id: 3,\r\n title: '预售',\r\n sale_type: 1\r\n },\r\n {\r\n id: 3,\r\n title: '分销',\r\n sale_type: 2\r\n },\r\n {\r\n id: 4,\r\n title: '预售',\r\n sale_type: 1\r\n },\r\n {\r\n id: 4,\r\n title: '分销',\r\n sale_type: 2\r\n },\r\n {\r\n id: 5,\r\n title: '现货',\r\n sale_type: 0\r\n },\r\n {\r\n id: 6,\r\n title: '预售',\r\n sale_type: 1\r\n },\r\n {\r\n id: 7,\r\n title: '分销',\r\n sale_type: 2\r\n }\r\n]\r\n\r\n$(function () {\r\n var DATA = {\r\n // shop_id: $('input[name=shop_id]').val(), //商铺id\r\n shop_id: $('input[name=shop_id]').val(), //商铺id\r\n goods_id: $('input[name=goods_id]').val(), //商品id\r\n agent_id: $('input[name=agent_id]').val() || getUrlSearch('agent_id'), //代理商id\r\n goodsSku: null, //商品规格对比数据\r\n sku_attr: [], //用户选择的商品熟属性\r\n sku_id: null, //提交购物车id\r\n imgfile: [], //举报商家图片\r\n range: [], //范围\r\n };\r\n const column_type = $('input[name=column_type]').val();\r\n var isLogin = $('#isLogin').attr('islogin'); // warning: String\r\n let sale_type = 0; //0现货1预售\r\n loadJs('/themes/mall/default/js/min/apply-util.js');\r\n getRattings({\r\n pageIndex: '1'\r\n }); // 获取商品评论\r\n getComGrade(); // 获取商品星级\r\n personalCollection(); //收藏商品\r\n attentionsAttshops(); //关注店铺\r\n mycommentStar(); //评价详细星星\r\n shopPhoto(); //查看商家资质图片\r\n getTabs(saleType => {\r\n sale_type = saleType\r\n getGoodsSku(sale_type)\r\n }); // 商品详情页tab动态显示接口 2021/12/7\r\n goodsDetail();\r\n // if ($('.tab-hearder').children().data('type') == 1) { // 获取商品规格 sku\r\n // sale_type = 1;\r\n // getGoodsSku(1)\r\n // } else {\r\n // sale_type = 0;\r\n // getGoodsSku(0)\r\n\r\n // }\r\n //搜索栏\r\n $(window).scroll(function () {\r\n if ($(document).scrollTop() > 200) {\r\n $('#shortcut,#index_header').css('position', 'fixed')\r\n $('#index_header').css('box-shadow', '0px 2px 4px 0px rgba(208,208,208,0.5)')\r\n } else {\r\n $('#shortcut,#index_header').css('position', 'inherit')\r\n $('#index_header').css('box-shadow', 'none')\r\n }\r\n // $(document).scrollTop()>350?$('.aside').css('position','fixed'):$('.aside').css('position','inherit');\r\n })\r\n $('#keywords').attr('placeholder', '请输入关键字')\r\n $('.search_r').text('全站搜')\r\n $('.search_box').after('搜本店')\r\n $('#index_header').on('click', '.search-shop', function () {\r\n location.href = jkas.url('/shop/index/cat_id/-1/shop_id/' + $('input[name=shop_id]').val()) + '?keywords=' + $('#keywords').val() + '&tc=0'\r\n })\r\n /*\r\n DOM交互操作 \r\n */\r\n // 放大镜\r\n $(\"#fangdajing\").magnifying();\r\n // suk缩略图\r\n var skuThumb = new myClickScroll({\r\n ulWrapper: $(\"#fangdajing .con-FangDa-ImgList\"),\r\n viewlength: 4,\r\n ltBtn: $(\"#product-intro .spec-list .prev\"),\r\n rtBtn: $(\"#product-intro .spec-list .next\"),\r\n })\r\n $.fn.tabControl = function () {\r\n $(this).click(function () {\r\n $(this).parent().addClass(\"act\").siblings().removeClass(\"act\");\r\n })\r\n }\r\n //现货预售价格切换\r\n $('.tab-hearder').on('click', '.tab-item', function () {\r\n getGoodsSku($(this).data('type'))\r\n if ($(this).data('type') == 1) {\r\n sale_type = 1;\r\n $('.ladder2').hide()\r\n $('.ladder').show()\r\n $('.ladder3').show()\r\n $('#pre_sales').show()\r\n // $('.controller .lable').text('数量:').siblings().children().show();\r\n $('#goods_type5').show().siblings('#goods_type1').hide().siblings('#goods_type2').hide()\r\n $('.specification').css('margin-top', '0').css('border', 'none').children('i').remove()\r\n } else {\r\n sale_type = 0;\r\n $('.ladder2').show()\r\n $('.ladder3').hide()\r\n $('#pre_sales').hide()\r\n if ($('#delivery')) {\r\n $('#delivery').addClass('act').siblings().removeClass('act');\r\n $('#address').hide()\r\n }\r\n $('.ladder').hide()\r\n $('.goods_unit').hide().prev().hide();\r\n $('.specification-inventory').hide();\r\n // $('.controller .lable').text('')\r\n $('#goods_type1').show().siblings('#goods_type5').hide().siblings('#goods_type2').show()\r\n $('.specification').css('padding-top', '20px').css('border-top', '1px solid #eee').css('border-bottom', '1px solid #eee')\r\n }\r\n $(this).addClass('actived').siblings().removeClass('actived')\r\n })\r\n //物流自提切换\r\n $('#delivery').on('click', function () {\r\n $(this).addClass('act').siblings().removeClass('act')\r\n $('#coverage').show().prev().hide()\r\n $('#ps').show()\r\n })\r\n $('#self').on('click', function () {\r\n $(this).addClass('act').siblings().removeClass('act')\r\n $('#address').show().next().hide()\r\n $('#ps').hide()\r\n })\r\n // 规格切换 口味,规格\r\n $(\".specification .select\").on('click', 'input[type=radio]', function () {\r\n $(this).parent().addClass(\"act\").siblings().removeClass(\"act\");\r\n pushsku_attr($('.tab-hearder p.actived').data('type'));\r\n });\r\n //阶梯价格\r\n var swiper = new Swiper('#ladder', {\r\n slidesPerView: 4,\r\n onTouchEnd: function () {\r\n swiperbtn()\r\n }\r\n });\r\n $('#ladder-prev').click(function () {\r\n swiper.swipePrev();\r\n swiperbtn()\r\n });\r\n $('#ladder-next').click(function () {\r\n swiper.swipeNext();\r\n swiperbtn()\r\n });\r\n $(\"#btn-reduce\").click(function () {\r\n var num = $(\"#suk-num\").val() - 0;\r\n var view = $('.view input').val();\r\n if (view == 0) {\r\n $(this).css('backgrouund-color', '#eee')\r\n return\r\n }\r\n num--;\r\n $(\"#suk-num\").val(num);\r\n changeNum(num)\r\n swiperbtn()\r\n })\r\n $(\"#btn-add\").click(function () {\r\n var num = $(\"#suk-num\").val() - 0;\r\n var view = $('.view input').val();\r\n num++;\r\n $(\"#suk-num\").val(num);\r\n $('#btn-reduce').css('background-color', '#E75D5D')\r\n changeNum(num)\r\n swiperbtn()\r\n })\r\n //多规格加减\r\n $(\".select\").on('click', '.btnReduce', function () {\r\n var num = $(this).siblings('.view').children().val() - 0;\r\n if (num <= 0) {\r\n num = 0;\r\n return\r\n }\r\n num--;\r\n num == 0 ? $(this).css('background-color', '#eee') : '';\r\n $(this).siblings('.view').children().val(num)\r\n })\r\n $(\".select\").on('click', '.btnAdd', function () {\r\n var num = $(this).siblings('.view').children().val() - 0;\r\n $(this).siblings('.btnReduce').css('background-color', '#E75D5D')\r\n // num<$(this).siblings('.view').children().data('val')?num=$(this).siblings('.view').children().data('val'):num++;\r\n num++;\r\n $(this).siblings('.view').children().val(num)\r\n })\r\n $(\".itemInfo-wrap\").on('keyup', '.view input', function () {\r\n var num = $(this).val();\r\n $(this).val(num.replace(/[^\\d]/g, ''))\r\n if (sale_type == 1) {\r\n changeNum(num)\r\n swiperbtn()\r\n }\r\n })\r\n $(\".itemInfo-wrap\").on('blur', '.view input', function () {\r\n var num = $(this).val();\r\n if (num == '') {\r\n $(this).val('0')\r\n num = 0;\r\n }\r\n if (num > 1) {\r\n $(this).parent().siblings('.btnReduce').css('background-color', '#E75D5D')\r\n } else {\r\n $(this).parent().siblings('.btnReduce').css('background-color', '#eee')\r\n }\r\n // if(num<$(this).data('val')){\r\n // $(this).val($(this).data('val'))\r\n // num = $(this).data('val');\r\n // }\r\n if (sale_type == 1) {\r\n changeNum(num)\r\n swiperbtn()\r\n }\r\n })\r\n //多余收缩展示\r\n $('.itemInfo-wrap').on('click', '.more', function () {\r\n $(this).siblings().css('white-space', 'normal').css('display', 'inline');\r\n $(this).css('bottom', '12px').html('收起').removeClass('more').addClass('pack');\r\n })\r\n $('.itemInfo-wrap').on('click', '.pack', function () {\r\n $(this).siblings().css('white-space', 'nowrap').css('display', 'inline-block');\r\n $(this).css('bottom', '20px').html('查看更多').removeClass('pack').addClass('more');\r\n })\r\n $('.itemInfo-wrap').on('click', '.pull', function () {\r\n $(this).siblings().children().show();\r\n $(this).removeClass('pull').removeClass('icon-unfold').addClass('up').addClass('icon-fold');\r\n })\r\n $('.itemInfo-wrap').on('click', '.up', function () {\r\n $(this).siblings().children('.hiden').hide();\r\n $(this).removeClass('up').removeClass('icon-fold').addClass('pull').addClass('icon-unfold');\r\n })\r\n //账期按钮\r\n $('.reason').on('click', function () {\r\n var htm = '' + $(this).data('reason') + '';\r\n layer.open({\r\n type: 4,\r\n shade: [0.01, '#fff'],\r\n fixed: false,\r\n shadeClose: true,\r\n content: [htm, '.reason'],\r\n tips: [2, '#fff'],\r\n closeBtn: 0\r\n })\r\n })\r\n $('.account').on('click', function () {\r\n var that = $(this);\r\n var dayArr = that.data('day');\r\n var baiArr = that.data('bai');\r\n if ($(this).data('open') == 2) {\r\n var title = '已开通' + $(this).data('sh_day') + '天账期';\r\n } else {\r\n var title = '未开通账期';\r\n }\r\n var htm = '
支付尾款时间:${wk_time_start}至${wk_time_end}
\r\n `\r\n $('#pre_sales').append(preSaleTips)\r\n }\r\n DATA.shop_id = res.data.shop_id;\r\n let price = res.data.is_inquiry == 1 ? '询价' : '¥' + res.data.shop_price_range;\r\n $('#price').html(price);\r\n $('#price_sale').html(price);\r\n // let tab = '', date = new Date();\r\n // res.data.goods_type == 4 ? $('.tab-hearder').hide() : '';\r\n // res.data.goods_type == 5 ? tab = '预售
' : '';\r\n // res.data.goods_type == 1 ? res.data.is_adsale == 1 && res.data.wk_time_end - date.getTime() > 0 ? tab = '现货
预售
'\r\n // : tab = '现货
' : '';\r\n // $('.tab-hearder').empty().append(tab)\r\n if (res.data.delivery_open_type == 0 && res.data.raising_open_type == 0) {\r\n $('#logistics').hide()\r\n $('#coverage').hide()\r\n } else {\r\n if (res.data.delivery_open_type == 0) {\r\n $('#delivery').hide().siblings('#self').addClass('act');\r\n $('#coverage').hide()\r\n } else {\r\n $('#ps').text('付款后' + res.data.delivery_time + '天内发货');\r\n }\r\n if (res.data.raising_open_type == 0) {\r\n $('#self').hide()\r\n }\r\n }\r\n if (res.data.delivery_area != '') {\r\n let that = $('#region span');\r\n that.html(res.data.delivery_area);\r\n that.width() > $('#region').width() ? $('#region').append('查看更多') : '';\r\n } else {\r\n $('#coverage').hide();\r\n }\r\n let htm = '';\r\n for (var i in res.data.raising_address) {\r\n let show = i < 3 ? '' : 'class=\"hiden\" style=\"display:none;\"';\r\n htm += '${item.title}
`\r\n }\r\n $('.tab-hearder').empty().append(doms)\r\n } else {\r\n $('.tab-hearder').hide()\r\n }\r\n }\r\n })\r\n }\r\n\r\n //获取规格数据并初始渲染\r\n function getGoodsSku(sale_type) {\r\n var goods_id = DATA.goods_id;\r\n // var sales = $('.summary-price-wrap .sales i');//销量\r\n var inventory = $('.specification-inventory'); //库存\r\n _ajax('/wxxcx/goodsSku', {\r\n goods_id: goods_id,\r\n shop_id: DATA.shop_id,\r\n sale_type: sale_type,\r\n agent_id: DATA.agent_id,\r\n column_type\r\n }, function (res) {\r\n if (res.code == 10) {\r\n DATA.goodsSku = res.data;\r\n $('.specification .select').empty().next().empty();\r\n let htm = '',\r\n more = res.data.length > 3 ? '' : '';\r\n for (var i in res.data) {\r\n if (sale_type == 0) {\r\n let ladder = '',\r\n bg = res.data[i].origin_number_sku > 1 ? 'style=\"background-color: #E75D5D;\"' : '',\r\n show = i < 3 ? '' : 'class=\"hiden\" style=\"display:none;\"',\r\n is_fx = res.data[i].is_fx == 1 ? ' ' : '';\r\n if (res.data[i].is_tiered == 1) {\r\n let arr = $.parseJSON(res.data[i].tiered_pri);\r\n for (var j in arr) {\r\n ladder += '¥' + arr[j].price + ' ≥' + arr[j].num + res.data[i].unit + ' '\r\n }\r\n }\r\n htm += `` + is_fx + res.data[i].spec_str + `¥` + res.data[i].price + `
\r\n库存:` + res.data[i].inventory + `起订量:` + res.data[i].origin_number_sku + `
\r\n` + ladder + `
\r\n` + res.data[i].spec_str + `¥` + res.data[i].price + `
\r\n库存:` + res.data[i].adsale_inventory + `起订量:` + res.data[i].origin_number_sku + `
\r\n` + ladder + `
\r\n询价
≥' + origin_number + '');\r\n $('#ladder-next').removeClass(\"point\");\r\n } else {\r\n if (tiered != '' && is_tiered == 1 && is_inquiry == 0) { //判断是否有阶梯价格然后添加阶梯价\r\n var arr = $.parseJSON(tiered);\r\n var length2 = arr.length;\r\n //第一个阶梯价模板\r\n // var hml = '¥'\r\n // + arr[length2-1].price\r\n // + '
≥ '\r\n // +arr[length2-1].num\r\n // +'';\r\n // swiper.prependSlide(hml);\r\n // DATA.range[length2-1]=arr[length2-1].num;\r\n //第二个开始循环模板\r\n\r\n for (var j = length2 - 1; j >= 0; j--) {\r\n DATA.range[j - 1] = arr[j].num;\r\n var hml2 = '¥' +\r\n arr[j].price +\r\n '
≥' +\r\n arr[j].num +\r\n '';\r\n swiper.prependSlide(hml2);\r\n }\r\n } else {\r\n //没有阶梯价判断单价是否为0\r\n if (sale_type == 1) {\r\n var pri = DATA.goodsSku[i].adsale_pri;\r\n } else {\r\n var pri = DATA.goodsSku[i].price;\r\n }\r\n var hml3 = ' ';\r\n swiper.prependSlide(hml3);\r\n $('#ladder-next').removeClass(\"point\");\r\n }\r\n }\r\n changeNum(origin_number); //购买数量\r\n //根据阶梯价长度显示滑动切换按钮\r\n var length3 = $(\"#ladder\").find(\".swiper-slide\").length;\r\n var ku = sale_type == 1 ? DATA.goodsSku[i].adsale_inventory : DATA.goodsSku[i].inventory;\r\n if (length3 > 4) {\r\n $('#ladder-next').addClass(\"point\");\r\n $('#ladder-next,#ladder-prev').show();\r\n $('#ladder').css('border', '1px solid #F19E9E').css('margin-left', '40px')\r\n swiper.swipeTo(length3, 500, false);\r\n } else {\r\n $('#ladder-next,#ladder-prev').removeClass(\"point\").hide();\r\n $('#ladder').css('border', 'none').css('margin-left', '0')\r\n swiper.swipeTo(0, 500, false);\r\n }\r\n // if (ku == 0) {\r\n // if($(\".add-cart\").data('type')!=1){\r\n // $(\".add-cart\").hide().siblings(\".sell-out\").show();\r\n // }\r\n // $(\".add-cart2\").hide()\r\n // } else {\r\n if ($('.tab-hearder .actived').data('type') == 1) {\r\n countdown()\r\n $(\"#goods_type5\").show();\r\n } else {\r\n $(\".add-cart\").show();\r\n }\r\n // }\r\n inventory.text('【库存:' + ku + '】');\r\n // if(Number(DATA.goodsSku[i].price)!=0){\r\n // price.text(priceFilter(DATA.goodsSku[i].price));\r\n // }\r\n // sales.text(DATA.goodsSku[i].sales);\r\n DATA.sku_id = DATA.goodsSku[i].sku_id;\r\n $(\".view input\").val(origin_number);\r\n $('.r_detail_b1 .tiaojian').html('储存:' + DATA.goodsSku[i].refrigerate);\r\n // wg.html('重量:' + JSON.parse(DATA.goodsSku[i].pack_attr).wg + 'kg')\r\n return;\r\n } else {\r\n inventory.text('【库存:0】');\r\n $(\".view input\").val(\"0\");\r\n // if($(\".add-cart\").data('type')!=1){\r\n // $(\".add-cart\").hide().siblings(\".sell-out\").show();\r\n // }\r\n\r\n }\r\n }\r\n }\r\n\r\n function shopPhoto() {\r\n layer.ready(function () {\r\n layer.photos({\r\n photos: $('.aside .food_container ul'),\r\n shift: 5 //0-6动画类型\r\n });\r\n });\r\n }\r\n\r\n function mycommentStar() {\r\n $('#pro_detail .raty').raty({\r\n path: '/themes/mall/default/images/raty',\r\n readOnly: true,\r\n score: function () {\r\n return $(this).attr('data-score');\r\n }\r\n });\r\n }\r\n\r\n function personalCollection() {\r\n var collect = $('.collect-wrapper');\r\n var goods_id = DATA.goods_id;\r\n collect.click(function () {\r\n _ajax('/personal/collection', {\r\n goods_id: goods_id\r\n }, function (res) {\r\n if (res.code == 100) {\r\n if (res.up_is_col == 1) {\r\n layer.msg('收藏成功')\r\n } else if (res.up_is_col == 2) {\r\n layer.msg('取消收藏成功')\r\n }\r\n } else {\r\n layer.msg(res.message)\r\n }\r\n setTimeout(function () {\r\n location.reload()\r\n }, 600)\r\n })\r\n })\r\n }\r\n\r\n function attentionsAttshops() {\r\n var btn = $('.bt_line_a.bt_line_a2');\r\n var shop_id = DATA.shop_id;\r\n btn.click(function () {\r\n _ajax('/attentions/attshops', {\r\n shop_id: shop_id\r\n }, function (res) {\r\n if (res.code == 100) {\r\n if (res.up_is_att == 1) {\r\n layer.msg('关注成功')\r\n } else if (res.up_is_att == 2) {\r\n layer.msg('取消关注成功')\r\n }\r\n setTimeout(function () {\r\n location.reload()\r\n }, 600)\r\n } else {\r\n layer.msg(res.message)\r\n }\r\n })\r\n })\r\n }\r\n\r\n function getRattings(formData) {\r\n var rattingContent = $('#comment .c-content');\r\n var html = '';\r\n var shop_id = DATA.shop_id;\r\n var goods_id = DATA.goods_id;\r\n var page = formData.pageIndex || '1';\r\n var com_grade = formData.com_grade || '';\r\n var PostData = {\r\n goods_id: goods_id,\r\n shop_id: shop_id,\r\n page: page,\r\n com_grade: com_grade\r\n }\r\n _ajax('/comment/comments', PostData, function (data) {\r\n if (data.data != null && data.data.length > 0) {\r\n for (var i = 0; i < data.data.length; i++) { //循环商品评论内容\r\n // 用户评星1-5 组件\r\n var starHtml = '';\r\n for (var star = 0; star < data.data[i].com_grade; star++) {\r\n starHtml += \"\";\r\n }\r\n //用户晒图 组件\r\n var photoHtml = '';\r\n for (var photo = 0; photo < data.data[i].com_photo.length; photo++) {\r\n photoHtml += \"' + data.data[i].nickname + '