$(function () { $("#jqGrid").jqGrid({ url: '../mkstoreticketdiscount/list', datatype: "json", colModel: [ {label: 'tickDiscId', name: 'tickDiscId', index: 'tick_disc_id', key: true, hidden: true}, {label: '优惠券名称', name: 'name', index: 'name', width: 80, align: 'center'}, // {label: '优惠券副标题', name: 'tickDiscSubTitle', index: 'tick_disc_sub_title', width: 80}, {label: '优惠类型', name: 'tickDiscType', index: 'tick_disc_type', width: 60, align: 'center', formatter: function (value) { if (value == '00') { return '代金券'; } else if (value == '01') { return '折扣券'; } else if (value == '02') { return '兑换券'; } return ''; }}, // {label: '商户编号', name: 'merchSn', index: 'merch_sn', width: 80}, // {label: '第三方商户id', name: 'thirdMerchSn', index: 'third_merch_sn', width: 80}, {label: '所属门店', name: 'storeName', index: 'storeName', width: 80, align: 'center'}, // {label: '活动id', name: 'storeTopicId', index: 'store_topic_id', width: 80}, // {label: '代金券减免金额(元)', name: 'voucherMoney', index: 'voucher_money', width: 80}, // {label: '代金券使用条件(元)', name: 'voucherCond', index: 'voucher_cond', width: 80}, // {label: '折扣券折扣(折)', name: 'discRatio', index: 'disc_ratio', width: 80}, // {label: '折扣券使用条件(元)', name: 'discCond', index: 'disc_cond', width: 80}, // {label: '兑换券使用条件(元)', name: 'exchCond', index: 'exch_cond', width: 80}, // {label: '生效时间类型', name: 'effectTimeType', index: 'effect_time_type', width: 80, align: 'center', // formatter: function (value) { // if (value == '00') { // return '固定时间'; // } else if (value == '01') { // return '领取后生效'; // } // return ''; // }}, {label: '有效时间', name: 'inValidTime', index: 'inValidTime', width: 120, align: 'center'}, {label: '状态', name: 'isPast', index: 'isPast', width: 60, align: 'center', formatter: function (value) { if (value == '0') { return '进行中'; } else if (value == '1') { return '已结束'; } else if (value == '2') { return '未开始'; } return ''; }}, // {label: '固定开始时间', name: 'fixBegTime', index: 'fix_beg_time', width: 80}, // {label: '固定结束时间', name: 'fixEndTime', index: 'fix_end_time', width: 80}, // {label: '领券延期生效天数(天)', name: 'postponeNum', index: 'postpone_num', width: 80}, // {label: '领券使用有效天数(天)', name: 'validDayNum', index: 'valid_day_num', width: 80}, {label: '库存', name: 'ticketNum', index: 'ticket_num', width: 60, align: 'center'}, // {label: '适用类型', name: 'applyType', index: 'apply_type', width: 80, align: 'center', // formatter: function (value) { // if (value == '00') { // return '全部商品参与'; // } else if (value == '01') { // return '指定商品参与'; // } else if (value == '02') { // return '指定商品不参与'; // } // return ''; // }}, {label: '是否有效', name: 'isValid', index: 'is_valid', width: 60, align: 'center', formatter: function (value) { if (value == '0') { return '有效'; } else if (value == '1') { return '无效'; } return ''; }}, { label: '操作', width: 180, align: 'center', sortable: false, formatter: function (value, col, row) { let htmlStr = ""; // if (hasPermission('order:refund')) {} if(row.isPast != 1 && row.isValid == 0){ htmlStr = "    " + "    "/* + TODO req_hidden_20200610 "    " + ""*/; } if(row.isPast == 1 || row.isValid == 1){ htmlStr = "    "/*+ TODO req_hidden_20200610 ""*/; } return htmlStr; }} // {label: '领取入口,格式:1,2,...,n,【get_enter,1:商品详情页/购物车等商城页面】', name: 'getEnter', index: 'get_enter', width: 80}, // {label: '能否分享领取', name: 'canShareGet', index: 'can_share_get', width: 80, align: 'center', // formatter: function (value) { // if (value == '0') { // return '能'; // } else if (value == '1') { // return '否'; // } // return ''; // }}, // {label: '每人限领数', name: 'limitNum', index: 'limit_num', width: 80}, // {label: '活动图片url(小图)', name: 'advImgUrl', index: 'adv_img_url', width: 80}, // {label: '门店logo图url', name: 'storeLogoUrl', index: 'store_logo_url', width: 80}, // {label: '门店名称', name: 'storeName', index: 'store_name', width: 80}, // {label: '券面颜色,如:#ababab', name: 'ticketColor', index: 'ticket_color', width: 80}, // {label: '操作说明', name: 'optDecl', index: 'opt_decl', width: 80}, // {label: '优惠说明', name: 'discDecl', index: 'disc_decl', width: 80}, // {label: '使用须知', name: 'useNoti', index: 'use_noti', width: 80}, // {label: '客服电话,手机或固话', name: 'svrTel', index: 'svr_tel', width: 80}, // {label: '备注', name: 'note', index: 'note', width: 80}, // {label: '创建人编号', name: 'createrSn', index: 'creater_sn', width: 80}, // {label: '创建时间', name: 'createTime', index: 'create_time', width: 80}, // {label: '修改人编号', name: 'moderSn', index: 'moder_sn', width: 80}, // {label: '修改时间', name: 'modTime', index: 'mod_time', width: 80}, // {label: '时间戳', name: 'tstm', index: 'tstm', width: 80}, // {label: '发放方式 0:按订单发放 1:按用户发放(通用优惠券,用户点击领取) 2:商品转发送券 3:按商品发放 4:新用户注册 5:线下发放 6评价好评红包(固定或随机红包) 7包邮(不入会员优惠券表)', name: 'sendType', index: 'send_type', width: 80} ], viewrecords: true, height: 580, rowNum: 10, rowList: [10, 30, 50], rownumbers: true, rownumWidth: 25, autowidth: true, multiselect: true, pager: "#jqGridPager", jsonReader: { root: "page.list", page: "page.currPage", total: "page.totalPage", records: "page.totalCount" }, prmNames: { page: "page", rows: "limit", order: "order" }, gridComplete: function () { $("#jqGrid").closest(".ui-jqgrid-bdiv").css({"overflow-x": "hidden"}); } }); $("#jqGridOrder").jqGrid({ url: '../usercoupon/getUserCouponByDiscIdList', datatype: "json", colModel: [ {label: '所属门店', name: 'storeName', index: 'storeName', width: 80, align: 'center'}, {label: '优惠券码', name: 'couponNumber', index: 'couponNumber', width: 80, align: 'center'}, {label: '领取人', name: 'nickname', index: 'nickname', width: 60, align: 'center'}, {label: '领取时间', name: 'addTime', index: 'add_time', width: 120, align: 'center', formatter: function (value) { // console.log(value); return transDate(value, 'yyyy-MM-dd hh:mm:ss'); } }, {label: '生效时间', name: 'validTime', index: 'validTime', width: 120, align: 'center', formatter: function (value) { // console.log(value); return transDate(value, 'yyyy-MM-dd hh:mm:ss'); } }, {label: '更新时间', name: 'modTime', index: 'modTime', width: 120, align: 'center', formatter: function (value) { // console.log(value); return transDate(value, 'yyyy-MM-dd hh:mm:ss'); } }, {label: '失效时间', name: 'endTime', index: 'endTime', width: 120, align: 'center', formatter: function (value) { // console.log(value); return transDate(value, 'yyyy-MM-dd hh:mm:ss'); } }, {label: '状态', name: 'isUsed', index: 'isUsed', width: 60, align: 'center', formatter: function (value) { if (value == '0') { return '未使用'; } else if (value == '1') { return '已使用'; } return value; } } ], viewrecords: true, height: 400, width:1600, rowNum: 10, rowList: [10, 30, 50], rownumbers: true, rownumWidth: 25, autowidth: false, multiselect: true, pager: "#jqGridPagerOrder", jsonReader: { root: "page.list", page: "page.currPage", total: "page.totalPage", records: "page.totalCount" }, prmNames: { page: "page", rows: "limit", order: "order" }, gridComplete: function () { $("#jqGridOrder").closest(".ui-jqgrid-bdiv").css({"overflow-x": "hidden"}); } }); }); let vm = new Vue({ el: '#rrapp', data: { title: null, mkStoreTicketDiscount: {advImgUrl: '', storeLogoUrl: ''}, ruleValidate: { name: [ {required: true, message: '名称不能为空', trigger: 'blur'} ] }, q: { name: '' }, g: { goodsName: '' }, thirdMerchantBizList: [], goodsList: [], storeList: [], isVoucher: true,//代金券 isDisc: false,//折扣券 isExch: false,//兑换券 isEffectTimeType00:true,//固定时间 isEffectTimeType01: false,//领取后生效 isApplyType: false,//商品是否显示 storeId: '', value3: false, productStoreRela: {}, currentPage: 1, limit:16, totalPage:'', totalCount:'', checkGoodsByHtmlList:[],//选择商品前端储存的数组 mkStoreTicketDiscountGoods:{checkGoodsList:[]}, applyType:'', checkGoodsDataList:[],//选择完商品后查询的商品列表 checkGoodsTotalCount: 0, checkGoodsLimit: 6, checkGoodsCurrentPage:1, tid:'',//唯一id ticketColor: '', queryColorList:[{color:'00CC00',back:'g'},{color:'009900',back:'g'},{color:'66CCCC',back:'g'},{color:'009999',back:'g'}, {color:'FF9966',back:'r'},{color:'FF0066',back:'r'},{color:'CC00FF',back:'r'},{color:'CC0000',back:'r'}], colorList:[], isOperatorShow: false, showList: true, showViewList: false, showInfoList: true, showOrderList: true, tickDiscId:'', macros: [], goodsBizType:'', c:{ isUsed: '' }, tickDiscType:'' }, methods: { getColor: function (value,isColor) { vm.ticketColor = '#'+value; var classValue = 'tick-color-g'; if(isColor == 'g'){ classValue = 'tick-color-g'; }else { classValue = 'tick-color-r'; } if($("#"+value).attr('name')=='noCheck') { $("#" + value).attr("class", classValue); $("#" + value).attr("name", "check"); vm.colorList.push(value); for (var g = 0; g < vm.queryColorList.length; g++) { if (value != vm.queryColorList[g].color) { $("#" + vm.queryColorList[g].color).attr("class", ""); vm.colorList.remove(vm.queryColorList[g].color); $("#"+ vm.queryColorList[g].color).attr("name","noCheck"); }else{ $("#"+ vm.queryColorList[g].color).attr("name","check"); } } }else{ $("#"+value).attr("class",""); $("#"+value).attr("name","noCheck"); // console.log(vm.colorList); for (var g = 0; g < vm.colorList.length; g++) { if(value == vm.colorList[g]){ vm.colorList.remove(vm.colorList[g]); } } } // console.log(value); // console.log(vm.colorList); if(vm.colorList.length > 0){ vm.ticketColor = "#"+vm.colorList[0]; }else{ vm.ticketColor = ""; } }, query: function () { vm.reload(); }, /** * 生成唯一id * @returns {string} */ guid: function () { return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) { var r = Math.random()*16|0, v = c == 'x' ? r : (r&0x3|0x8); return v.toString(16); }); }, /** * 选择指定商品ok按钮 */ ok : function () { // this.$Message.info('Clicked ok'); vm.checkGoodsDataList =[]; vm.mkStoreTicketDiscountGoods.checkGoodsList = vm.checkGoodsByHtmlList; vm.mkStoreTicketDiscountGoods.guid = vm.tid; vm.mkStoreTicketDiscountGoods.isSubmit = 0;//ok按钮提交的数据则为0 $.ajax({ type: "POST", url: '../mkstoreticketgoodstemp/batchSaveDiscountGoods', contentType: "application/json", data: JSON.stringify(vm.mkStoreTicketDiscountGoods), success: function (r) { if (r.code === 0) { vm.getCheckGoodsList(vm.storeId); } else { alert(r.msg); } } }); }, /** * 选择指定商品cancel按钮 */ cancel: function () { vm.checkGoodsByHtmlList =[]; // console.log(vm.checkGoodsByHtmlList); //点击取消按钮如有分页记录的数据就删除 vm.mkStoreTicketDiscountGoods.checkGoodsList=vm.checkGoodsByHtmlList; vm.mkStoreTicketDiscountGoods.guid=vm.tid; vm.mkStoreTicketDiscountGoods.isSubmit = 1;//cancel按钮提交的数据则为1 $.ajax({ type: "POST", url: '../mkstoreticketgoodstemp/batchSaveDiscountGoods', contentType: "application/json", data: JSON.stringify(vm.mkStoreTicketDiscountGoods), success: function (r) { if (r.code === 0) { } else { alert(r.msg); } } }); }, /** * 指定商品分页 */ loadGoodsDataByPage: function (value) { vm.currentPage = value; vm.mkStoreTicketDiscountGoods.checkGoodsList=vm.checkGoodsByHtmlList; vm.mkStoreTicketDiscountGoods.guid=vm.tid; vm.mkStoreTicketDiscountGoods.isSubmit = 1;//分页记录的数据则为1 $.ajax({ type: "POST", url: '../mkstoreticketgoodstemp/batchSaveDiscountGoods', contentType: "application/json", data: JSON.stringify(vm.mkStoreTicketDiscountGoods), success: function (r) { if (r.code === 0) { } else { alert(r.msg); } } }); vm.getGoodsList(vm.storeId); }, handlePageSize: function (value) { vm.limit = value; vm.currentPage = 1; vm.getGoodsList(vm.storeId); }, /** * 已选中商品分页 * @param value */ loadCheckGoodsDataByPage: function (value) { vm.checkGoodsCurrentPage = value; vm.getCheckGoodsList(vm.storeId); }, /** * 已选中商品分页 * @param value */ handleCheckGoodsPageSize: function (value) { vm.checkGoodsLimit = value; vm.checkGoodsCurrentPage = 1; vm.getCheckGoodsList(vm.storeId); }, /** * 获取已选中商品 * @param storeId */ getCheckGoodsList: function(storeId){ if(storeId){ $.get("../mkstoreticketgoodstemp/queryAllDiscountByStoreId?storeId=" + vm.storeId+"&guid="+vm.tid+"&page="+vm.checkGoodsCurrentPage+"&limit="+vm.checkGoodsLimit, function (r) { if(r.code == 0){ vm.checkGoodsDataList = r.page.list; // vm.totalPage = r.page.totalPage; vm.checkGoodsTotalCount = r.page.totalCount; vm.checkGoodsCurrentPage = r.page.currPage; vm.checkGoodsLimit = r.page.pageSize; } }); } }, /** * 删除已选中商品 * @param discGoodTempId * @param goodsId */ delCheckGoods: function (discGoodTempId,goodsId) { var checkGoodsIds = [discGoodTempId]; $.ajax({ type: "POST", url: "../mkstoreticketgoodstemp/updateIsValidById", contentType: "application/json", data: JSON.stringify(checkGoodsIds), success: function (r) { if (r.code == 0) { vm.getCheckGoodsList(vm.storeId); for (var g = 0; g < vm.checkGoodsByHtmlList.length; g++) { if(goodsId == vm.checkGoodsByHtmlList[g].goodsId){ vm.checkGoodsByHtmlList.remove(vm.checkGoodsByHtmlList[g]); } } } else { alert(r.msg); } } }); }, /** * 生效时间类型联动 * @param value */ changeEffectTimeType: function (value) { if(value == '00'){ vm.isEffectTimeType00 = true; vm.isEffectTimeType01 = false; }else if(value == '01'){ vm.isEffectTimeType00 = false; vm.isEffectTimeType01 = true; } }, /** * 适用商品联动 * @param value */ changeApplyType: function (value) { // vm.storeId = '8'; console.log(vm.goodsBizType) if(value == '00'){ vm.isApplyType = false; }else if(value == '01'){ console.log(vm.storeId=='') if(vm.storeId==''){ alert("请先在基本属性中选择所属门店"); vm.mkStoreTicketDiscount.applyType = '00'; }else if(vm.goodsBizType==''){ alert("请先在基本属性中选择所属商品业务类型"); vm.mkStoreTicketDiscount.applyType = '00'; }else if(vm.storeId && vm.goodsBizType){ vm.isApplyType = true; vm.applyType ='01'; // vm.getCheckGoodsList(vm.storeId); } }else if(value == '02'){ if(vm.storeId == ''){ alert("请先在基本属性中选择所属门店"); vm.mkStoreTicketDiscount.applyType = '00'; } if(vm.goodsBizType == ''){ alert("请先在基本属性中选择所属商品业务类型"); vm.mkStoreTicketDiscount.applyType = '00'; } if(vm.storeId && vm.goodsBizType){ vm.isApplyType = true; vm.applyType ='02'; } } }, /** * 选择商品弹框按钮 */ checkGoods: function () { vm.value3 = true; vm.limit = 16; vm.getGoodsList(vm.storeId,vm.goodsBizType); }, /** * 选择商品参数查询 */ reloadGoodsByStore: function (){ if(vm.storeId){ vm.getGoodsList(vm.storeId,vm.goodsBizType); }else{ alert("请先在基本属性中选择所属门店"); } }, /** * 选择商品重置参数查询 */ reloadGoodsSearch: function (){ if(vm.storeId){ vm.g.goodsName=''; vm.getGoodsList(vm.storeId,vm.goodsBizType); }else{ alert("请先在基本属性中选择所属门店"); } }, /** * 查询选择商品分页 * @param storeId */ getGoodsList: function(storeId,goodsBizType){ if(storeId){ $.get("../productstorerela/queryGoodsRealListByDiscountTid?storeId=" + storeId+"&goodsName="+vm.g.goodsName+"&guid="+vm.tid+"&applyType="+vm.applyType+"&goodsBizType="+goodsBizType +"&promTypeId="+6+"&page="+1+"&limit="+vm.limit, function (r) { // console.log(r) if(r.code == 0){ vm.goodsList = r.page.list; vm.totalPage = r.page.totalPage; vm.totalCount = r.page.totalCount; vm.currentPage = r.page.currPage; vm.limit = r.page.pageSize; } }); } }, /** * 商品选中 * @param item 商品信息 */ selectThisGoods: function (item) { // $.get("../mkstoreticketgoodstemp/queryGoodsTempByGuidAndSubmit?storeId="+vm.storeId+"&guid="+vm.tid+"&applyType="+vm.applyType, function (r) { // for(var j=0;j