$(function () { let sendType = getQueryString("sendType"); let menuName = getQueryString("menuName"); let url = '../coupon/list'; if (sendType) { url += '?sendType=' + sendType; vm.sendType = sendType; vm.menuName = menuName; } $("#jqGrid").Grid({ url: url, colModel: [ {label: 'id', name: 'id', index: 'id', key: true, hidden: true}, {label: '优惠券名称', name: 'name', index: 'name', width: 120}, /*{ label: '优惠券类型', name: 'couponType', index: 'couponType', width: 80, formatter: function (value) { if (value == 0) { return '通用优惠券'; } else if (value == 1) { return '门店优惠券'; } else if (value == 2) { return '产品优惠券'; } return '-'; } },*/ /*{ label: '状态', name: 'status', index: 'status', width: 50, formatter: function (value) { if (value == 0) { return '失效'; } else if (value == 1) { return '正常'; } return '-'; } },*/ {label: '订单最小金额', name: 'minAmount', index: 'minAmount', width: 80}, {label: '订单最大金额', name: 'maxAmount', index: 'maxAmount', width: 80}, {label: '金额', name: 'typeMoney', index: 'type_money', width: 80}, // {label: '最小商品金额', name: 'minGoodsAmount', index: 'min_goods_amount', width: 80}, {label: '有效天数', name: 'invalidDays', index: 'invalidDays', width: 80} /*{ label: '操作', width: 70, align: 'center', sortable: false, formatter: function (value, col, row) { if (row.couponType == 1) { return ' '; } else if (row.couponType == 2) { return ' '; } return ''; } }*/ ], multiselect: true }); }); var vm = new Vue({ el: '#rrapp', data: { showDiv: 1,// 1List 2edit 3publish 4store 5product title: null, menuName: null, sendType: 0, coupon: {sendType: 0, status: 1, couponType: 0, name: '', minAmount: 0, maxAmount: 0, minGoodsAmount: 0}, ruleValidate: { name: [ {required: true, message: '优惠券名称不能为空', trigger: 'blur'} ] }, q: { name: '' }, storeList: [], merchList: [] }, methods: { query: function () { vm.reload(); }, add: function () { vm.showDiv = 2; vm.title = "新增"; vm.coupon = { sendType: vm.sendType, status: 1, couponType: 0, name: '', minAmount: 0, maxAmount: 0, minGoodsAmount: 0 }; vm.storeList = []; vm.merchList = []; vm.getMerchList(); }, update: function (event) { var id = getSelectedRow(); if (id == null) { return; } vm.showDiv = 2; vm.title = "修改"; vm.getInfo(id); vm.getMerchList(); vm.getStoresByMerch(); }, saveOrUpdate: function (event) { var url = vm.coupon.id == null ? "../coupon/save" : "../coupon/update"; Ajax.request({ url: url, params: JSON.stringify(vm.coupon), contentType: "application/json", type: 'POST', successCallback: function () { alert('操作成功', function (index) { vm.reload(); }); } }); }, del: function (event) { var ids = getSelectedRows(); if (ids == null) { return; } confirm('确定要删除选中的记录?', function () { Ajax.request({ url: "../coupon/delete", params: JSON.stringify(ids), contentType: "application/json", type: 'POST', successCallback: function () { alert('操作成功', function (index) { vm.reload(); }); } }); }); }, getInfo: function (id) { Ajax.request({ url: "../coupon/info/" + id, async: true, successCallback: function (r) { vm.coupon = r.coupon; } }); }, getStoresByMerch: function (opt) { var value = opt.value; $.get("../store/getStoresByMerch?merchSn=" + value, function (r) { vm.storeList = r.list; }); }, getMerchList: function() { $.get("../merch/queryAll", function (r) { vm.merchList = r.list; }); }, reload: function (event) { vm.showDiv = 1; var page = $("#jqGrid").jqGrid('getGridParam', 'page'); $("#jqGrid").jqGrid('setGridParam', { postData: {'name': vm.q.name}, page: page }).trigger("reloadGrid"); vm.handleReset('formValidate'); }, handleSubmit: function (name) { handleSubmitValidate(this, name, function () { vm.saveOrUpdate() }); }, handleReset: function (name) { handleResetForm(this, name); }, } });