$(function () { vm.init(); vm.allProductTypelist() // vm.productTypelist() $.ajax({ type: "POST", url: baseURL + "sys/dict/infoList/product_status", contentType: "application/json", async: false, success: function(r){ if(r.code == 0){ vm.goodsState = r.dictList }else{ layer.alert("读取字典项失败"); } } }); $("#jqGrid").jqGrid({ url: baseURL + 'qmjz/goods/page', datatype: "json", colModel: [ { label: 'id', name: 'id', index: 'id', key: true, hidden: true }, { label: '商品名称', name: 'name', index: 'name', width: 100}, { label: '商品分类', name: 'categoryName', index: 'categoryName', width: 120}, { label: '商品图片', name: 'thumbnail', index: 'thumbnail', width: 80, sortable: false, formatter: imageFormat }, { label: '商品状态', name: 'status', index: 'status', width: 80, sortable: false, formatter: function (cellvalue, options, rowdata) { if(cellvalue) { return '上架' }else { return '下架' } }}, { label: '置顶', name: 'top', index: 'top', width: 80, sortable: false, formatter: function (cellvalue, options, rowdata) { if(cellvalue) { return '' }else { return '' } }}, { label: '添加时间', name: 'createTime', index: 'createTime ', width: 90 }, ], viewrecords: true, height: h, rowNum: 10, rowList : [10,30,50], rownumbers: true, rownumWidth: 25, autowidth:true, multiselect: true, pager: "#jqGridPager", jsonReader : { root: "page.list", page: "currPage", total: "totalPage", records: "totalCount" }, prmNames : { page:"pageNum", rows:"pageSize", }, gridComplete:function(){ //隐藏grid底部滚动条 $("#jqGrid").closest(".ui-jqgrid-bdiv").css({ "overflow-x" : "hidden" }); }, loadComplete:function(data){ vm.jpgrid = data.list; } }); // var um = new uploadMuli("muliIMage"); // // function uploadMuli(eleId,arr) { // this.area = $("#"+eleId); // this.arr = arr || []; // // var putImage = function (src){ // this.arr.push(src); // this.loadImgByArr(); // }; // // this.arrJoin = function () { // return this.arr.join(","); // }; // // this.clearImage = function(i) { // this.arr.splice(i,1); // this.loadImgByArr(); // }; // // this.loadImgByArr = function() { // this.area.html(""); // for(var i;i>"); // div.appendTo($("")); // div.appendTo($("X").click(this.clearImage(i))); // this.area.append(div); // } // } // // this.loadImg = function(arrStr) { // this.arr = arrStr.split(","); // loadImgByArr(); // } // } // initdate(); upload(1,'images','images/*'); // upload(2,'images','images/*'); upload(3,'images','images/*'); }); var ue = UE.getEditor('actContent', { initialFrameWidth: null , autoHeightEnabled: false}); var vm = new Vue({ el:'#rrapp', data:{ q: { name: null, status: null }, parent: null, goodsState: [], blank: true, showList: true, title: null, work: { categoryId: '' }, dict: { yesno: null, workCategory: null, workType: null, workUnit: null, workCashMethod: null, workSexLimit: null, workHeightLimit: null, staffIds: null, memberList: null }, jpgrid: {}, clients: {}, memberInfo: {}, cardnoYF: '', goodsType: [], allGoodsType: [], queryParam: { input: null } }, watch: { }, methods: { init: function () { vm.q.name = ''; vm.q.status = ''; }, query: function () { vm.reload(1); }, reset: function () { vm.init(); vm.reload(1); }, // 列表转义商品分类(全部分类) allProductTypelist() { $.ajax({ type: "GET", url: baseURL + "qmjz/goodscategory/select", contentType: "application/json", success: function(r){ if(r.code == 0){ vm.allGoodsType = r.list }else{ layer.alert("读取字典项失败"); } } }); }, // 商品分类(存在分类) productTypelist(source) { $.ajax({ type: "GET", url: baseURL + "qmjz/goodscategory/page", contentType: "application/json", data: { source: source }, success: function(r){ if(r.code == 0){ vm.goodsType = r.data }else{ layer.alert("读取字典项失败"); } } }); }, // 分类管理 type() { var width = ($(window).width() * 0.6); var height = ($(window).height() -50); layui.use([ 'layer', 'form'],function() { var $ = layui.jquery, layer = layui.layer; layer.open({ type: 2, area: [width + 'px', height + 'px'], fix: false, //不固定 maxmin: true, shadeClose: true, resize:false, full:true, shade: 0.4, title: '商品分类管理', anim: 3, content: 'goodstype.html', end : function(){ vm.reload(); vm.allProductTypelist() } }); }) }, // 删除 del() { var ids = getSelectedRows(); if(ids == null){ return ; } var lock = false; layer.confirm('确定要删除选中的记录?', { btn: ['确定','取消'] //按钮 }, function(){ if(!lock) { lock = true; $.ajax({ type: "POST", url: baseURL + "qmjz/goods/delete", contentType: "application/json", data: JSON.stringify(ids), success: function(r){ if(r.code == 0){ layer.msg("操作成功", {icon: 1}); $("#jqGrid").trigger("reloadGrid"); }else{ layer.alert(r.msg); } } }); } }, function(){ }); }, // 置顶 top() { var id = getSelectedRow(); if(id == null){ return ; } $.get(baseURL + "qmjz/goods/info/"+id, function(r){ console.log(r) if(r && r.code == 0) { var text = r.data.top ? '取消置顶' : '置顶' var lock = false; layer.confirm(`确定要${text}该商品?`, { btn: ['确定','取消'] //按钮 }, function(){ $.ajax({ type: "POST", url: baseURL + "qmjz/goods/top/" + id, contentType: "application/json", // data: JSON.stringify(ids), success: function(r){ if(r.code == 0){ layer.msg("操作成功", {icon: 1}); vm.reload(1); }else{ layer.alert(r.msg); } } }); }, function(){ }); } }); }, // 上下架 upDown() { var id = getSelectedRow(); if(id == null){ return ; } $.get(baseURL + "qmjz/goods/info/"+id, function(r){ console.log(r) if(r && r.code == 0) { var text = r.data.status ? '下架' : '上架' var lock = false; layer.confirm(`确定要${text}该商品?`, { btn: ['确定','取消'] //按钮 }, function(){ if(!lock) { lock = true; $.ajax({ type: "POST", url: baseURL + "qmjz/goods/updateStatus/" + id, contentType: "application/json", // data: JSON.stringify(ids), success: function(r){ if(r.code == 0){ layer.msg("操作成功", {icon: 1}); vm.reload(1); }else{ layer.alert(r.msg); } } }); } }, function(){ }); } }); }, // 导出 exc() { window.location.href = baseURL + "qmjz/goods/export?=name" + vm.q.name + '&status=' + vm.q.status; }, add: function(){ vm.showList = false; vm.title = "新增"; vm.work = {}; vm.work.name = ''; vm.work.status = ''; vm.work.categoryId = ''; vm.work.thumbnail = ''; vm.work.bannerImg = ''; vm.work.price = ''; vm.work.quantity = ''; vm.work.details = ''; vm.work.descriptions = ''; vm.work.qrCode = ''; vm.work.qrCodeInfo = ''; vm.work.memberApply = true /*数据初始化*/ moreuploadUtil.clear(); clearImg(); ue.ready(function(){ ue.setContent(''); }); $('.selectpicker#client').selectpicker('val', ''); vm.allProductTypelist('product') }, update: function (event) { var id = getSelectedRow(); if(id == null){ return ; } vm.showList = false; vm.title = "修改"; vm.allProductTypelist() vm.getInfo(id) }, saveOrUpdate: function (event) { }, getInfo: function(id){ $.ajaxSettings.async = false $.get(baseURL + "qmjz/goods/info/"+id, function(r){ vm.work = r.data; /*图片*/ if (vm.work.thumbnail) { $('#demo1').show(); $('#demo1').attr('src',vm.work.thumbnail); } if (vm.work.bannerImg) { //$('#demo2').show(); //$('#demo2').attr('src',vm.work.bannerImg); moreuploadUtil.loadImgUrls(vm.work.bannerImg); } if (vm.work.qrCode) { $('#demo3').show(); $('#demo3').attr('src',vm.work.qrCode); } /*富文本*/ ue.ready(function(){ if (vm.work.details) { ue.setContent(vm.work.details); } }); }); }, reload: function (event) { clearImg(); vm.showList = true; var page; if (event == 1){ page = 1; } else { page = $("#jqGrid").jqGrid('getGridParam','page'); } // if(vm.q.minScore && vm.q.maxScore) { // if(vm.q.minScore > vm.q.maxScore) { // [vm.q.minScore, vm.q.maxScore] = [vm.q.maxScore, vm.q.minScore] // } // } $("#jqGrid").jqGrid('setGridParam',{ postData:{'queryParam': JSON.stringify(vm.queryParam), 'name': vm.q.name, 'status': vm.q.status}, page:page }).trigger("reloadGrid"); }, tag: function (event) { var id = getSelectedRow(); if(id == null){ return ; } var width = ($(window).width() * 0.6); var height = ($(window).height() -50); layui.use([ 'layer', 'form'],function() { var $ = layui.jquery, layer = layui.layer; layer.open({ type: 2, area: [width + 'px', height + 'px'], fix: false, //不固定 maxmin: true, shadeClose: true, resize:false, full:true, shade: 0.4, title: '兼职标签管理', anim: 3, content: 'worktagconnect.html?id='+id, end : function(){ vm.reload(); } }); }) }, comment: function (event) { var id = getSelectedRow(); if(id == null){ return ; } var rowid = getSelectedRowData(); var rowData = vm.jpgrid[rowid-1]; var width = ($(window).width() * 0.6); var height = ($(window).height() * 0.6); layui.use([ 'layer', 'form'],function() { var $ = layui.jquery, layer = layui.layer; layer.open({ type: 2, area: [width + 'px', height + 'px'], fix: false, //不固定 maxmin: true, shadeClose: true, resize:false, full:true, shade: 0.4, title: '客户评价', anim: 3, content: 'comment.html?id='+rowData.id+'&clientId='+rowData.clientId, end : function(){ vm.reload(); } }); }) }, enroll: function (event) { var id = getSelectedRow(); if(id == null){ return ; } vm2.parent = id; vm2.reloadFirst(); }, } }); var moreuploadUtil = new moreupload(2,'images','images/*', 'file/upload'); /*------------------------------------*/ layui.use([ 'layer', 'form'],function() { var $ = layui.jquery, layer = layui.layer, form = layui.form; form.on('submit(go)', function(data){ /*图片*/ if ($('#imgUrl1').val() != ''){ vm.work.thumbnail = $('#imgUrl1').val(); } if ($('#imgUrl2').val() != ''){ vm.work.bannerImg = $('#imgUrl2').val(); } if ($('#imgUrl3').val() != ''){ vm.work.qrCode = $('#imgUrl3').val(); } /*商品名称验证*/ if (!vm.work.name){ layer.msg('[商品名称]不能为空',{icon:5}); return false; } /*商品分类验证*/ if (vm.work.categoryId == '' || vm.work.categoryId == undefined){ layer.msg('[商品分类]不能为空',{icon:5}); return false; } if (vm.work.status == null || vm.work.status == undefined){ layer.msg('[商品状态]不能为空',{icon:5}); return false; } if (vm.work.memberApply == null || vm.work.memberApply == undefined){ layer.msg('[是否报名]不能为空',{icon:5}); return false; } /*富文本数据*/ vm.work.details = ue.getContent(); if ((vm.work.details == ''||vm.work.details == null) && vm.work.isAppletsRelease == 0){ layer.msg('[商品详情]不能为空',{icon:5}); return false; } if (vm.work.thumbnail == '' || vm.work.thumbnail == undefined){ layer.msg('[商品缩略图]不能为空',{icon:5}); return false; } if (vm.work.bannerImg == '' || vm.work.bannerImg == undefined){ layer.msg('[商品banner图]不能为空',{icon:5}); return false; } else { var images = vm.work.bannerImg; var imgArr = images.split(","); if(imgArr>6) { layer.msg('[商品banner图]最多6张',{icon:5}); return false; } } if (vm.work.price == '' || vm.work.price == undefined){ layer.msg('[商品价格]不能为空',{icon:5}); return false; } if (vm.work.quantity == '' || vm.work.quantity == undefined){ layer.msg('[商品数量]不能为空',{icon:5}); return false; } if (vm.work.qrCode == '' || vm.work.qrCode == undefined){ layer.msg('[关联二维码]不能为空',{icon:5}); return false; } if (vm.work.qrCodeInfo == '' || vm.work.qrCodeInfo == undefined){ layer.msg('[二维码描述信息]不能为空',{icon:5}); return false; } var url = vm.work.id == null ? "qmjz/goods/save" : "qmjz/goods/update"; $.ajax({ type: "POST", url: baseURL + url, contentType: "application/json", data: JSON.stringify(vm.work), success: function(r){ if(r.code === 0){ layer.msg("操作成功", {icon: 1}); vm.reload(); }else{ layer.alert(r.msg); } } }); return false; //阻止表单跳转。如果需要表单跳转,去掉这段即可。 }); }) $(function () { $("#jqGrid2").jqGrid({ url: baseURL + 'qmjz/goodsapply/page', postData: {goodsId: vm2.parent}, datatype: "json", colModel: [ { label: 'id', name: 'id', index: 'id', width: 50, key: true, hidden: true }, { label: '姓名', name: 'userName', index: 'user_name', width: 80, sortable:false }, { label: '电话', name: 'phone', width: 80, sortable:false }, { label: '学校', name: 'college', width: 80, sortable:false }, { label: '商品名称', name: 'goodsName', index: 'goods_name', width: 80, sortable:false }, { label: '分类名称', name: 'categoryName', index: 'category_name', width: 80, sortable:false }, // { label: '性别', name: 'sex', width: 80 , sortable:false, formatter: function(value, options, row){return dictFormat(value, vm2.dict.gender, options, row);} }, // { label: '会员卡号', name: 'cardNo', width: 80, sortable:false }, // { label: '联系电话', name: 'tel', width: 80, sortable:false }, // { label: '指导老师', name: 'teacherName', width: 80, sortable:false }, // { label: '报名状态', name: 'status', index: 'status', width: 80 , formatter: function(value, options, row){return dictFormat(value, vm2.dict.workStuEnroll, options, row);} }, // { label: '通知状态', name: 'notifyStatus', index: 'notify_status', width: 80, formatter: function(value, options, row){return dictFormat(value, vm2.dict.workStuNotice, options, row);} }, // { label: '签到状态', name: 'signStatus', index: 'sign_status', width: 80, formatter: function(value, options, row){return dictFormat(value, vm2.dict.workStuSignUp, options, row);} }, //{ label: '结算状态', name: 'cashStatus', index: 'cash_status', width: 80, formatter: function(value, options, row){return dictFormat(value, vm2.dict.workStuPay, options, row);} }, { label: '报名提交时间', name: 'createTime', index: 'create_time', width: 80 }, // { label: '是否停卡', name: 'freeze', sortable:false, width: 80 ,formatter: yesnoFormat}, // { label: '数据来源', name: 'fromTo', width: 80, sortable:false , formatter: function(value, options, row){ // if (value == '1') { // return '小程序'; // } else if (value == '0'){ // return '手动输入'; // } else { // return '来源不明'; // } // } // } ], viewrecords: true, width: w, height: h, rowNum: 10, rowList : [10,30,50], rownumbers: true, rownumWidth: 25, autowidth:false, multiselect: true, pager: "#jqGridPager2", jsonReader : { root: "page.list", page: "page.currPage", total: "page.totalPage", records: "page.totalCount" }, prmNames : { page:"page", rows:"limit", }, gridComplete:function(){ //隐藏grid底部滚动条 $("#jqGrid2").closest(".ui-jqgrid-bdiv").css({ "overflow-x" : "hidden" }); }, loadComplete:function(data){ vm2.jpgrid = data.page.list; } }); $.ajax({ type: "POST", url: baseURL + "sys/bizlibrary/infoList/workStuEnroll", contentType: "application/json", success: function(r){ if(r.code == 0){ vm2.dict.workStuEnroll = r.dictList; }else{ layer.alert("读取字典项失败"); } } }); $.ajax({ type: "POST", url: baseURL + "sys/bizlibrary/infoList/workStuNotice", contentType: "application/json", success: function(r){ if(r.code == 0){ vm2.dict.workStuNotice = r.dictList; }else{ layer.alert("读取字典项失败"); } } }); $.ajax({ type: "POST", url: baseURL + "sys/bizlibrary/infoList/workStuSignUp", contentType: "application/json", success: function(r){ if(r.code == 0){ vm2.dict.workStuSignUp = r.dictList; }else{ layer.alert("读取字典项失败"); } } }); $.ajax({ type: "POST", url: baseURL + "sys/bizlibrary/infoList/workStuPay", contentType: "application/json", success: function(r){ if(r.code == 0){ vm2.dict.workStuPay = r.dictList; }else{ layer.alert("读取字典项失败"); } } }); $.ajax({ type: "POST", url: baseURL + "sys/bizlibrary/infoList/gender", contentType: "application/json", success: function(r){ if(r.code == 0){ vm2.dict.gender = r.dictList; }else{ layer.alert("读取字典项失败"); } } }); }); var vm2 = new Vue({ el:'#rrapp2', data:{ jpgrid: {}, blank: false, showList: true, title: null, workStu: {}, showInfo: false, parent: null, dict:{ workStuEnroll: null, workStuNotice: null, workStuSignUp: null, workStuPay: null, gender: null }, queryParam: { input: null } }, methods: { init: function () { vm2.queryParam.input = null; }, query: function () { vm2.reload(1); }, reset: function () { vm2.init(); vm2.reload(1); }, reload: function (event) { vm2.showInfo = false; // vm2.workStu.sex = ''; // vm2.workStu.status = ''; // vm2.workStu.notifyStatus = ''; // vm2.workStu.signStatus = ''; // vm2.workStu.cashStatus = ''; vm2.showList = true; var page; if (event == 1){ page = 1; } else { page = $("#jqGrid2").jqGrid('getGridParam','page'); } $("#jqGrid2").jqGrid('setGridParam',{ postData: {pid: vm2.parent}, page:page }).trigger("reloadGrid"); }, reloadFirst: function (event) { var page = 1; vm2.init(); $("#jqGrid2").jqGrid('setGridParam',{ postData:{goodsId: vm2.parent}, page:page, gridComplete:function(){ //隐藏grid底部滚动条 $("#jqGrid2").closest(".ui-jqgrid-bdiv").css({ "overflow-x" : "hidden" }); //刷新 vm.blank = false; vm2.blank = true; vm2.showList = true; vm2.showInfo = false; } }).trigger("reloadGrid"); }, back: function (event) { vm.reload(); vm.blank = true; vm.showList = true; vm2.blank = false; }, } })