|  |  |  | 
|---|
|  |  |  | {type: 'checkbox'} | 
|---|
|  |  |  | // ,{field: 'id', align: 'center',title: 'ID'} | 
|---|
|  |  |  | // ,{field: 'hostId$', align: 'center',title: '所属商户'} | 
|---|
|  |  |  | ,{field: 'userId$', align: 'center',title: '业务员'} | 
|---|
|  |  |  | ,{field: 'planType$', align: 'center',title: '业务类型'} | 
|---|
|  |  |  | ,{field: 'name', align: 'center',title: '售前规划申请单名称'} | 
|---|
|  |  |  | ,{field: 'planNeed$', align: 'center',title: '所需'} | 
|---|
|  |  |  | ,{field: 'deptId$', align: 'center',title: '所属部门'} | 
|---|
|  |  |  | ,{field: 'orderId$', align: 'center',title: '跟踪项目'} | 
|---|
|  |  |  | ,{field: 'cstmrId$', align: 'center',title: '甲方单位'} | 
|---|
|  |  |  | ,{field: 'uuid', align: 'center',title: '规划单代号'} | 
|---|
|  |  |  | ,{field: 'appleTime$', align: 'center',title: '申请日期'} | 
|---|
|  |  |  | ,{field: 'userId$', align: 'left',title: '业务员'} | 
|---|
|  |  |  | ,{field: 'planType$', align: 'left',title: '业务类型', width: 150} | 
|---|
|  |  |  | ,{field: 'name', align: 'left',title: '售前规划申请单名称', width: 220, style: 'color: #1890ff;cursor:pointer', event: 'more'} | 
|---|
|  |  |  | ,{field: 'uuid', align: 'left',title: '规划单号', width: 100} | 
|---|
|  |  |  | ,{field: 'planNeed$', align: 'left',title: '所需', templet:function(d){return emptyShow(d.planNeed$)}} | 
|---|
|  |  |  | ,{field: 'deptId$', align: 'left',title: '所属部门'} | 
|---|
|  |  |  | ,{field: 'orderId$', align: 'left',title: '跟踪项目', width: 220, style: 'color: #1890ff;cursor:pointer', event: 'orderMore'} | 
|---|
|  |  |  | // ,{field: 'cstmrId$', align: 'left',title: '甲方单位', width: 220, style: 'color: #1890ff;cursor:pointer', event: 'cstmrMore'} | 
|---|
|  |  |  | ,{field: 'appleTime$', align: 'left',title: '申请日期', hide: true} | 
|---|
|  |  |  | // ,{field: 'beItem$', align: 'center',title: '立项'} | 
|---|
|  |  |  | ,{field: 'planner', align: 'center',title: '规划员', templet:function(d){return emptyShow(d.planner)}} | 
|---|
|  |  |  | // ,{field: 'planner', align: 'left',title: '规划员', templet:function(d){return emptyShow(d.planner)}} | 
|---|
|  |  |  | // ,{field: 'finishTime$', align: 'center',title: '完成时间'} | 
|---|
|  |  |  | // ,{field: 'form', align: 'center',title: '表单内容'} | 
|---|
|  |  |  | // ,{field: 'change$', align: 'center',title: '更改方案'} | 
|---|
|  |  |  | 
|---|
|  |  |  | // ,{field: 'settleMsg', align: 'center',title: '审核进度'} | 
|---|
|  |  |  | // ,{field: 'comment', align: 'center',title: '评论'} | 
|---|
|  |  |  | // ,{field: 'status$', align: 'center',title: '状态'} | 
|---|
|  |  |  | ,{field: 'updateBy$', align: 'center',title: '修改人员'} | 
|---|
|  |  |  | ,{field: 'updateTime$', align: 'center',title: '修改时间'} | 
|---|
|  |  |  | ,{field: 'memo', align: 'center',title: '注释', hide: true} | 
|---|
|  |  |  | ,{field: 'createTime$', align: 'left',title: '添加日期', width: 160, hide: false} | 
|---|
|  |  |  | ,{field: 'updateBy$', align: 'left',title: '修改人'} | 
|---|
|  |  |  | ,{field: 'updateTime$', align: 'left',title: '修改时间', hide: true} | 
|---|
|  |  |  | ,{field: 'memo', align: 'left',title: '注释', hide: true} | 
|---|
|  |  |  |  | 
|---|
|  |  |  | ,{fixed: 'right', title:'操作', align: 'center', toolbar: '#operate', width:120} | 
|---|
|  |  |  | ,{fixed: 'right', title:'操作', align: 'center', toolbar: '#operate', width: 180} | 
|---|
|  |  |  | ]], | 
|---|
|  |  |  | request: { | 
|---|
|  |  |  | pageName: 'curr', | 
|---|
|  |  |  | 
|---|
|  |  |  | if (res0.code === 200) { | 
|---|
|  |  |  | admin.open({ | 
|---|
|  |  |  | type: 1, | 
|---|
|  |  |  | area: '1500px', | 
|---|
|  |  |  | area: ["95%", "90%"], | 
|---|
|  |  |  | offset: 'auto', | 
|---|
|  |  |  | title: '添加售前规划申请单' + ' - ' + planType.name, | 
|---|
|  |  |  | content: $('#editDialog').html(), | 
|---|
|  |  |  | success: function (layero0, dIndex0) { | 
|---|
|  |  |  | $('#customizeBox').html(planType.html) | 
|---|
|  |  |  |  | 
|---|
|  |  |  | layer.close(loadIndex0); | 
|---|
|  |  |  | let orderSel = loadOrderSel(); | 
|---|
|  |  |  | let cstmrSel = loadCstmrSel(); | 
|---|
|  |  |  | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | layDateRender(); | 
|---|
|  |  |  | form.on('submit(editSubmit)', function (data) { | 
|---|
|  |  |  | console.log(data.field); | 
|---|
|  |  |  | data.field.planType = planType.id; | 
|---|
|  |  |  | data.field.orderId = orderSel.getValue()[0] ? orderSel.getValue()[0].value : null; | 
|---|
|  |  |  | data.field.cstmrId = cstmrSel.getValue()[0] ? cstmrSel.getValue()[0].value : null; | 
|---|
|  |  |  | data.field.userId = userSel.getValue()[0] ? userSel.getValue()[0].value : null; | 
|---|
|  |  |  | data.field.planNeed = planNeedSel.getValue()[0] ? planNeedSel.getValue()[0].value : null; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | delete data.field.select;delete data.field.planTypeName; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (!data.field.orderId) { | 
|---|
|  |  |  | layer.msg("跟踪项目不能为空", {icon: 2}); | 
|---|
|  |  |  | top.requireTip($('#orderXmlSel')); | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | case 'approval': | 
|---|
|  |  |  | layer.confirm('审批通过?', { | 
|---|
|  |  |  | skin: 'layui-layer-admin', | 
|---|
|  |  |  | shade: .1, | 
|---|
|  |  |  | offset: '200px', | 
|---|
|  |  |  | title: data.name | 
|---|
|  |  |  | }, function (i) { | 
|---|
|  |  |  | layer.close(i); | 
|---|
|  |  |  | // | 
|---|
|  |  |  | if (data.settle === 2) { | 
|---|
|  |  |  | let loadIndex = layer.load(2); | 
|---|
|  |  |  | $.ajax({ | 
|---|
|  |  |  | url: baseUrl+"/plan/planner/list/auth", | 
|---|
|  |  |  | headers: {'token': localStorage.getItem('token')}, | 
|---|
|  |  |  | data: {planId: data.id}, | 
|---|
|  |  |  | method: 'POST', | 
|---|
|  |  |  | success: function (res) { | 
|---|
|  |  |  | layer.close(loadIndex); | 
|---|
|  |  |  | if (res.code === 200){ | 
|---|
|  |  |  | console.log(res.data) | 
|---|
|  |  |  | } else if (res.code === 403){ | 
|---|
|  |  |  | top.location.href = baseUrl+"/"; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | layer.msg(res.msg, {icon: 2}); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | approval(data.id); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | case 'edit': | 
|---|
|  |  |  | showEditModel(data); | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | function approval(planId) { | 
|---|
|  |  |  | let loadIndex = layer.load(2); | 
|---|
|  |  |  | $.ajax({ | 
|---|
|  |  |  | url: baseUrl+"/plan/approval/auth", | 
|---|
|  |  |  | headers: {'token': localStorage.getItem('token')}, | 
|---|
|  |  |  | data: {planId: planId}, | 
|---|
|  |  |  | method: 'POST', | 
|---|
|  |  |  | success: function (res) { | 
|---|
|  |  |  | layer.close(loadIndex); | 
|---|
|  |  |  | if (res.code === 200){ | 
|---|
|  |  |  | layer.msg(res.msg, {icon: 1}); | 
|---|
|  |  |  | tableReload(); | 
|---|
|  |  |  | } else if (res.code === 403){ | 
|---|
|  |  |  | top.location.href = baseUrl+"/"; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | layer.msg(res.msg, {icon: 2}); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /* 弹窗 - 新增、修改 */ | 
|---|
|  |  |  | function showEditModel(mData) { | 
|---|
|  |  |  | admin.open({ | 
|---|
|  |  |  | type: 1, | 
|---|
|  |  |  | area: '600px', | 
|---|
|  |  |  | title: (mData ? '修改' : '添加') + '售前规划申请单', | 
|---|
|  |  |  | content: $('#editDialog').html(), | 
|---|
|  |  |  | success: function (layero, dIndex) { | 
|---|
|  |  |  | layDateRender(mData); | 
|---|
|  |  |  | form.val('detail', mData); | 
|---|
|  |  |  | form.on('submit(editSubmit)', function (data) { | 
|---|
|  |  |  | var loadIndex = layer.load(2); | 
|---|
|  |  |  | $.ajax({ | 
|---|
|  |  |  | url: baseUrl+"/plan/"+(mData?'update':'add')+"/auth", | 
|---|
|  |  |  | headers: {'token': localStorage.getItem('token')}, | 
|---|
|  |  |  | data: data.field, | 
|---|
|  |  |  | method: 'POST', | 
|---|
|  |  |  | success: function (res) { | 
|---|
|  |  |  | layer.close(loadIndex); | 
|---|
|  |  |  | if (res.code === 200){ | 
|---|
|  |  |  | layer.close(dIndex); | 
|---|
|  |  |  | layer.msg(res.msg, {icon: 1}); | 
|---|
|  |  |  | tableReload(); | 
|---|
|  |  |  | } else if (res.code === 403){ | 
|---|
|  |  |  | top.location.href = baseUrl+"/"; | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | layer.msg(res.msg, {icon: 2}); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | let loadIndex = layer.load(2); | 
|---|
|  |  |  | $.ajax({ | 
|---|
|  |  |  | url: baseUrl + "/plan/" + mData.id + "/auth", | 
|---|
|  |  |  | headers: {'token': localStorage.getItem('token')}, | 
|---|
|  |  |  | method: 'GET', | 
|---|
|  |  |  | success: function (res) { | 
|---|
|  |  |  | layer.close(loadIndex); | 
|---|
|  |  |  | if (res.code === 200){ | 
|---|
|  |  |  | let plan = res.data; | 
|---|
|  |  |  | admin.open({ | 
|---|
|  |  |  | type: 1, | 
|---|
|  |  |  | area: ["95%", "90%"], | 
|---|
|  |  |  | offset: 'auto', | 
|---|
|  |  |  | title: '编辑售前规划申请单 - ' + plan.planType$, | 
|---|
|  |  |  | content: $('#editDialog').html(), | 
|---|
|  |  |  | success: function (layero, dIndex) { | 
|---|
|  |  |  | $('#customizeBox').html(plan.formHtml); | 
|---|
|  |  |  | let orderSel = loadOrderSel(); | 
|---|
|  |  |  | let cstmrSel = loadCstmrSel(); | 
|---|
|  |  |  | let userSel = loadUserSel(); | 
|---|
|  |  |  | let planNeedSel = loadPlanNeedSel(); | 
|---|
|  |  |  | if (plan.orderId) { orderSel.setValue([{name: plan.orderId$, value: plan.orderId}]); } | 
|---|
|  |  |  | if (plan.cstmrId) { cstmrSel.setValue([{name: plan.cstmrId$, value: plan.cstmrId}]); } | 
|---|
|  |  |  | if (plan.userId) { userSel.setValue([{name: plan.userId$, value: plan.userId}]); } | 
|---|
|  |  |  | if (plan.planNeed) { planNeedSel.setValue([{name: plan.planNeed$, value: plan.planNeed}]); } | 
|---|
|  |  |  | layDateRender(plan); | 
|---|
|  |  |  | plan['planTypeName'] = plan.planType$; | 
|---|
|  |  |  | form.val('detail', plan); | 
|---|
|  |  |  | form.on('submit(editSubmit)', function (data) { | 
|---|
|  |  |  | data.field.orderId = orderSel.getValue()[0] ? orderSel.getValue()[0].value : null; | 
|---|
|  |  |  | data.field.cstmrId = cstmrSel.getValue()[0] ? cstmrSel.getValue()[0].value : null; | 
|---|
|  |  |  | data.field.userId = userSel.getValue()[0] ? userSel.getValue()[0].value : null; | 
|---|
|  |  |  | data.field.planNeed = planNeedSel.getValue()[0] ? planNeedSel.getValue()[0].value : null; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | delete data.field.select;delete data.field.planTypeName; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (!data.field.orderId) { | 
|---|
|  |  |  | layer.msg("跟踪项目不能为空", {icon: 2}); | 
|---|
|  |  |  | top.requireTip($('#orderXmlSel')); | 
|---|
|  |  |  | return false; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (!data.field.cstmrId) { | 
|---|
|  |  |  | layer.msg("客户名称不能为空", {icon: 2}); | 
|---|
|  |  |  | top.requireTip($('#cstmrXmlSel')); | 
|---|
|  |  |  | return false; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | let loadIndex = layer.load(2); | 
|---|
|  |  |  | $.ajax({ | 
|---|
|  |  |  | url: baseUrl+"/plan/update/auth", | 
|---|
|  |  |  | headers: {'token': localStorage.getItem('token')}, | 
|---|
|  |  |  | data: data.field, | 
|---|
|  |  |  | method: 'POST', | 
|---|
|  |  |  | success: function (res) { | 
|---|
|  |  |  | layer.close(loadIndex); | 
|---|
|  |  |  | if (res.code === 200){ | 
|---|
|  |  |  | layer.close(dIndex); | 
|---|
|  |  |  | layer.msg(res.msg, {icon: 1}); | 
|---|
|  |  |  | tableReload(); | 
|---|
|  |  |  | } else if (res.code === 403){ | 
|---|
|  |  |  | top.location.href = baseUrl+"/"; | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | layer.msg(res.msg, {icon: 2}); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | return false; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | $(layero).children('.layui-layer-content').css('overflow', 'visible'); | 
|---|
|  |  |  | layui.form.render('select'); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | return false; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | $(layero).children('.layui-layer-content').css('overflow', 'visible'); | 
|---|
|  |  |  | layui.form.render('select'); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } else if (res.code === 403){ | 
|---|
|  |  |  | top.location.href = baseUrl+"/"; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | layer.msg(res.msg, {icon: 2}); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | // 搜索 | 
|---|
|  |  |  | form.on('submit(search)', function (data) { | 
|---|
|  |  |  | pageCurr = 1; | 
|---|
|  |  |  | tableReload(); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 重置 | 
|---|
|  |  |  | form.on('submit(reset)', function (data) { | 
|---|
|  |  |  | pageCurr = 1; | 
|---|
|  |  |  | clearFormVal($('#search-box')); | 
|---|
|  |  |  | pageCount = 0; | 
|---|
|  |  |  | tableReload(); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | layDate.render({ | 
|---|
|  |  |  | elem: '#appleTime\\$', | 
|---|
|  |  |  | type: 'date', | 
|---|
|  |  |  | value: data!==undefined?data['appleTime\\$']:null | 
|---|
|  |  |  | value: data!==undefined?data['appleTime$']:null | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | layDate.render({ | 
|---|
|  |  |  | elem: '#finishTime\\$', | 
|---|
|  |  |  | type: 'date', | 
|---|
|  |  |  | value: data!==undefined?data['finishTime\\$']:null | 
|---|
|  |  |  | value: data!==undefined?data['finishTime$']:null | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | layDate.render({ | 
|---|
|  |  |  | elem: '#createTime\\$', | 
|---|
|  |  |  | type: 'datetime', | 
|---|
|  |  |  | value: data!==undefined?data['createTime\\$']:null | 
|---|
|  |  |  | value: data!==undefined?data['createTime$']:null | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | layDate.render({ | 
|---|
|  |  |  | elem: '#updateTime\\$', | 
|---|
|  |  |  | type: 'datetime', | 
|---|
|  |  |  | value: data!==undefined?data['updateTime\\$']:null | 
|---|
|  |  |  | value: data!==undefined?data['updateTime$']:null | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | }, 300); | 
|---|
|  |  |  | 
|---|
|  |  |  | $.each($('#search-box [name]').serializeArray(), function() { | 
|---|
|  |  |  | searchData[this.name] = this.value; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | if (treeCond) { | 
|---|
|  |  |  | searchData[treeCond.key] = treeCond.val; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | tableIns.reload({ | 
|---|
|  |  |  | where: searchData, | 
|---|
|  |  |  | page: {curr: pageCurr} | 
|---|