From 06a23537f48e1bfd74fab2346798838afd9f30bf Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期二, 17 十月 2023 15:00:08 +0800
Subject: [PATCH] #
---
src/main/webapp/static/js/plan/plan.js | 1119 ++++++++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 844 insertions(+), 275 deletions(-)
diff --git a/src/main/webapp/static/js/plan/plan.js b/src/main/webapp/static/js/plan/plan.js
index 12a46b3..518566f 100644
--- a/src/main/webapp/static/js/plan/plan.js
+++ b/src/main/webapp/static/js/plan/plan.js
@@ -1,61 +1,208 @@
var pageCurr;
var pageCount = 0;
+var treeCond;
+var admin;
+var planNeedXmlSelData;
layui.config({
base: baseUrl + "/static/layui/lay/modules/"
-}).use(['table','laydate', 'form', 'admin', 'xmSelect'], function(){
+}).extend({
+ steps: 'steps/steps',
+ cascader: 'cascader/cascader',
+}).use(['table','laydate','layer','upload', 'form', 'admin', 'xmSelect', 'steps', 'element', 'cascader', 'tree', 'dropdown'], function(){
var table = layui.table;
var $ = layui.jquery;
var layer = layui.layer;
var layDate = layui.laydate;
var form = layui.form;
- var admin = layui.admin;
+ admin = layui.admin;
+ var upload = layui.upload;
var xmSelect = layui.xmSelect;
+ var steps = layui.steps;
+ var cascader = layui.cascader;
+ var tree = layui.tree;
+ var dropdown = layui.dropdown;
+ var element = layui.element;
+
+ $('#organization').html(localStorage.getItem('nickname') + ' <i class="layui-icon"></i>');
+
+ // 閮ㄩ棬浜哄憳 绛涢��
+ dropdown.render({
+ elem: '#organization'
+ ,content: ['<div id="organizationTree" style="height: calc(100vh - 525px);border: none"></div>'].join('')
+ ,style: 'width: 370px; height: 350px; padding: 0 15px; box-shadow: 1px 1px 30px rgb(0 0 0 / 12%);'
+ ,ready: function(){
+ loadTree();
+ }
+ });
+
+ // 鏁版嵁鍚屾
+ dropdown.render({
+ elem: '#data-btn'
+ ,align: 'right'
+ ,style: 'border-radius: 5px;'
+ ,className: 'site-dropdown-demo'
+ ,data: [
+ {
+ title: '妯℃澘涓嬭浇'
+ ,templet: '<i class="layui-icon layui-icon-template-1"></i>{{d.title}}'
+ ,id: 1
+ },
+ {
+ title: '瀵煎叆 Excel'
+ ,templet: '<i class="layui-icon layui-icon-upload"></i>{{d.title}}'
+ ,id: 2
+ },
+ {type: '-'}, //鍒嗗壊绾�
+ {
+ title: '瀵煎嚭 Excel'
+ ,templet: '<i class="layui-icon layui-icon-export"></i>{{d.title}}'
+ ,id: 3
+ }
+ ]
+ ,click: async function(item){
+ switch (item.id) {
+ case 1:
+ // 妯℃澘涓嬭浇
+ layer.load(1, {shade: [0.1,'#fff']});
+ location.href = baseUrl + "/mould/璺熻釜椤圭洰瀵煎叆妯℃澘.xls";
+ layer.closeAll('loading');
+ break
+ case 2:
+ // 瀵煎叆 Excel
+ $("#importExcel").trigger("click");
+ break
+ case 3:
+ // 瀵煎嚭 Excel
+ layer.msg("鏉ヤ笉鍙婂仛锛岀瓑绛�", {icon: 6});
+ break
+ default:
+ break
+ }
+ }
+ });
+
+ // 鏍戝舰鍥�
+ var organizationTree;
+ window.loadTree = function(condition){
+ var loadIndex = layer.load(2);
+ $.ajax({
+ url: baseUrl+"/dept/user/tree/auth",
+ headers: {'token': localStorage.getItem('token')},
+ data: {
+ 'condition': condition
+ },
+ method: 'POST',
+ success: function (res) {
+ layer.close(loadIndex);
+ if (res.code === 200){
+ organizationTree = tree.render({
+ elem: '#organizationTree',
+ id: 'organizationTree',
+ onlyIconControl: true,
+ data: res.data,
+ click: function (obj) {
+ treeCond = {
+ key: obj.data.key,
+ val: obj.data.id
+ }
+ $('#organization').html(obj.data.title + ' <i class="layui-icon"></i>');
+ $('#organizationTree').find('.ew-tree-click').removeClass('ew-tree-click');
+ $(obj.elem).children('.layui-tree-entry').addClass('ew-tree-click');
+ clearFormVal($('#search-box'));
+ tableIns.reload({
+ where: {[obj.data.key]: obj.data.id},
+ page: {curr: 1}
+ });
+ }
+ });
+ treeData = res.data;
+ } else if (res.code === 403){
+ top.location.href = baseUrl+"/";
+ } else {
+ layer.msg(res.msg)
+ }
+ }
+ })
+ }
// 鏁版嵁娓叉煋
tableIns = table.render({
elem: '#plan',
headers: {token: localStorage.getItem('token')},
- url: baseUrl+'/plan/list/auth',
+ url: baseUrl+'/plan/page/auth',
page: true,
limit: 15,
limits: [15, 30, 50, 100, 200, 500],
- toolbar: '#toolbar',
- cellMinWidth: 50,
- height: 'full-120',
+ // cellMinWidth: 100,
+ height: 'full-148',
+ // size: 'sm',
+ skin: 'line',
cols: [[
{type: 'checkbox'}
- ,{field: 'id', align: 'center',title: 'ID'}
- ,{field: 'hostId$', align: 'center',title: '鎵�灞炲晢鎴�'}
- ,{field: 'deptId$', align: 'center',title: '鎵�灞為儴闂�'}
- ,{field: 'planType$', align: 'center',title: '涓氬姟绫诲瀷'}
- ,{field: 'userId$', align: 'center',title: '涓氬姟鍛�'}
- ,{field: 'orderId$', align: 'center',title: '璺熻釜椤圭洰'}
- ,{field: 'cstmrId$', align: 'center',title: '鐢叉柟鍗曚綅'}
- ,{field: 'uuid', align: 'center',title: '瑙勫垝鍗曚唬鍙�'}
- ,{field: 'name', align: 'center',title: '瑙勫垝鍗曞悕绉�'}
- ,{field: 'appleTime$', align: 'center',title: '鐢宠鏃ユ湡'}
- ,{field: 'planNeed$', align: 'center',title: '鏂规鎵�闇�'}
- ,{field: 'beItem$', align: 'center',title: '绔嬮」'}
- ,{field: 'planner', align: 'center',title: '瑙勫垝鍛�'}
- ,{field: 'finishTime$', align: 'center',title: '瀹屾垚鏃堕棿'}
- ,{field: 'form', align: 'center',title: '琛ㄥ崟鍐呭'}
- ,{field: 'change$', align: 'center',title: '鏇存敼鏂规'}
- ,{field: 'changeTime', align: 'center',title: '鏇存敼娆℃暟'}
- ,{field: 'changeReason', align: 'center',title: '鏇存敼鏂规鍘熷洜'}
- ,{field: 'planBonus', align: 'center',title: '瑙勬牸濂栭噾'}
- ,{field: 'planLeaderBonus', align: 'center',title: '瑙勬牸缁勯暱濂栭噾'}
- ,{field: 'files', align: 'center',title: '闄勪欢'}
- ,{field: 'settle$', align: 'center',title: '杩涘害'}
- ,{field: 'settleMsg', align: 'center',title: '瀹℃牳杩涘害'}
- ,{field: 'comment', align: 'center',title: '璇勮'}
+ // ,{field: 'id', align: 'center',title: 'ID'}
+ // ,{field: 'hostId$', align: 'center',title: '鎵�灞炲晢鎴�'}
+ ,{field: 'userId$', align: 'left',title: '涓氬姟鍛�',hide: false, width: 100}
+ ,{field: 'planType$', align: 'left',title: '涓氬姟绫诲瀷', width: 150,hide: false}
+ ,{
+ field: 'name',
+ align: 'left',
+ title: '鍞墠瑙勫垝鐢宠鍗曞悕绉�',
+ width: 220,
+ style: 'color: #1890ff;cursor:pointer',
+ event: 'more',
+ hide: false
+ }
+ ,{field: 'uuid', align: 'left',title: '瑙勫垝鍗曞彿', width: 100,hide: false}
+ ,{
+ field: 'planNeed$',
+ align: 'left',
+ title: '鎵�闇�',
+ templet:function(d){
+ return emptyShow(d.planNeed$)
+ },
+ hide: false
+ }
+ ,{field: 'deptId$', align: 'left',title: '鎵�灞為儴闂�',hide: true}
+ ,{field: 'planner$', align: 'left',title: '瑙勫垝鍛�',hide: false, width: 100}
+ // ,{field: 'nowHeadman$', align: 'left',title: '瑙勫垝缁勯暱',hide: true}
+ ,{
+ field: 'orderId$',
+ align: 'left',
+ title: '璺熻釜椤圭洰',
+ width: 220,
+ style: 'color: #1890ff;cursor:pointer',
+ event: 'orderMore',hide: false
+ }
+ // ,{
+ // field: 'cstmrId$',
+ // align: 'left',
+ // title: '鐢叉柟鍗曚綅',
+ // width: 220,
+ // style: 'color: #1890ff;cursor:pointer',
+ // event: 'cstmrMore',
+ // hide: true
+ // }
+ ,{field: 'appleTime$', align: 'left',title: '鐢宠鏃ユ湡', hide: false}
+ // ,{field: 'beItem$', align: 'center',title: '绔嬮」'}
+ // ,{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: 'changeTime', align: 'center',title: '鏇存敼娆℃暟'}
+ // ,{field: 'changeReason', align: 'center',title: '鏇存敼鏂规鍘熷洜'}
+ // ,{field: 'planBonus', align: 'center',title: '瑙勬牸濂栭噾'}
+ // ,{field: 'planLeaderBonus', align: 'center',title: '瑙勬牸缁勯暱濂栭噾'}
+ // ,{field: 'files', align: 'center',title: '闄勪欢'}
+ ,{field: 'settle$', align: 'center',title: '杩涘害', width: 150}
+ // ,{field: 'settleMsg', align: 'center',title: '瀹℃牳杩涘害'}
+ // ,{field: 'comment', align: 'center',title: '璇勮'}
,{field: 'status$', align: 'center',title: '鐘舵��'}
- ,{field: 'createBy$', align: 'center',title: '娣诲姞浜哄憳'}
- ,{field: 'createTime$', align: 'center',title: '娣诲姞鏃堕棿'}
- ,{field: 'updateBy$', align: 'center',title: '淇敼浜哄憳'}
- ,{field: 'updateTime$', align: 'center',title: '淇敼鏃堕棿'}
- ,{field: 'memo', align: 'center',title: '娉ㄩ噴'}
+ ,{field: 'createTime$', align: 'left',title: '娣诲姞鏃ユ湡', width: 160, hide: true}
+ ,{field: 'updateBy$', align: 'left',title: '淇敼浜�', width: 100}
+ ,{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: 340}
]],
request: {
pageName: 'curr',
@@ -81,6 +228,223 @@
}
});
+ //澶氭枃浠跺垪琛�
+ var uploadListIns = upload.render({
+ elem: '#data-btn-file2'
+ ,elemList: $('#data-btn-file3') //鍒楄〃鍏冪礌瀵硅薄
+ ,url: '/plan/insert/file/auth'
+ ,accept: 'file'
+ ,multiple: true
+ ,number: 10
+ ,auto: false
+ ,bindAction: '#testListAction'
+ ,choose: function(obj){
+ // 璧嬪��
+ this.data.planId=$('.layui-layer-title').text()
+ var that = this;
+ var files = this.files = obj.pushFile(); //灏嗘瘡娆¢�夋嫨鐨勬枃浠惰拷鍔犲埌鏂囦欢闃熷垪
+ //璇诲彇鏈湴鏂囦欢
+ obj.preview(function(index, file, result){
+ var tr = $(['<tr id="upload-'+ index +'">'
+ ,'<td>'+ file.name +'</td>'
+ ,'<td>'+ (file.size/1014).toFixed(1) +'kb</td>'
+ ,'<td><div class="layui-progress" lay-filter="progress-demo-'+ index +'"><div class="layui-progress-bar" lay-percent=""></div></div></td>'
+ ,'<td>'
+ ,'<button class="layui-btn layui-btn-xs demo-reload layui-hide">閲嶄紶</button>'
+ ,'<button class="layui-btn layui-btn-xs layui-btn-danger demo-delete">鍒犻櫎</button>'
+ ,'<button id="file-download" class="layui-btn layui-btn-xs demo-reload layui-hide">涓嬭浇</button>'
+ ,'</td>'
+ ,'</tr>'].join(''));
+
+ //鍗曚釜閲嶄紶
+ tr.find('.demo-reload').on('click', function(){
+ obj.upload(index, file);
+ });
+
+ //鍒犻櫎
+ tr.find('.demo-delete').on('click', function(){
+ delete files[index]; //鍒犻櫎瀵瑰簲鐨勬枃浠�
+ tr.remove();
+ uploadListIns.config.elem.next()[0].value = ''; //娓呯┖ input file 鍊硷紝浠ュ厤鍒犻櫎鍚庡嚭鐜板悓鍚嶆枃浠朵笉鍙��
+ });
+
+ that.elemList.append(tr);
+ element.render('progress'); //娓叉煋鏂板姞鐨勮繘搴︽潯缁勪欢
+ });
+ }
+ ,done: function(res, index, upload){ //鎴愬姛鐨勫洖璋�
+ var that = this;
+ //if(res.code == 0){ //涓婁紶鎴愬姛
+ var tr = that.elemList.find('tr#upload-'+ index)
+ ,tds = tr.children();
+ tds.eq(3).html(''); //娓呯┖鎿嶄綔
+ delete this.files[index]; //鍒犻櫎鏂囦欢闃熷垪宸茬粡涓婁紶鎴愬姛鐨勬枃浠�
+ return;
+ //}
+ this.error(index, upload);
+ }
+ ,allDone: function(obj){ //澶氭枃浠朵笂浼犲畬姣曞悗鐨勭姸鎬佸洖璋�
+ console.log(obj)
+ }
+ ,error: function(index, upload){ //閿欒鍥炶皟
+ var that = this;
+ var tr = that.elemList.find('tr#upload-'+ index)
+ ,tds = tr.children();
+ tds.eq(3).find('.demo-reload').removeClass('layui-hide'); //鏄剧ず閲嶄紶
+ }
+ ,progress: function(n, elem, e, index){
+ element.progress('progress-demo-'+ index, n + '%'); //鎵ц杩涘害鏉°�俷 鍗充负杩斿洖鐨勮繘搴︾櫨鍒嗘瘮
+ }
+ });
+
+ // 娣诲姞
+ $("#planAddBtn").click(function () {
+ let loadIndex = layer.load(2);
+ $.ajax({
+ url: baseUrl+"/planType/list/radio/auth",
+ headers: {'token': localStorage.getItem('token')},
+ method: 'POST',
+ success: function (res) {
+ if (res.code === 200){
+ admin.open({
+ type: 1,
+ area: '300px',
+ title: '鏂板缓鍞墠瑙勫垝鐢宠鍗�',
+ content: $('#addDialogPre').html(),
+ success: function (layero, dIndex) {
+ let template = Handlebars.compile($('#planTypeTpl').html());
+ $('#planTypeBox').html(template({list: res.data.map(function (d) {
+ return {
+ id: d.id,
+ name: d.name,
+ checked: d.checked
+ }
+ })})
+ );
+ element.init();form.render();
+ layer.close(loadIndex);
+ // 纭瑙勫垝鍗曠被鍨�
+ form.on('submit(planTypeSubmit)', function (data) {
+ layer.close(dIndex);
+ let planTypeId = data.field.planType;
+ let loadIndex0 = layer.load(2);
+ $.ajax({
+ url: baseUrl + "/planType/" + planTypeId + "/plan/auth",
+ headers: {'token': localStorage.getItem('token')},
+ method: 'GET',
+ success: function (res0) {
+ let planType = res0.data.planType;
+ console.log(planType.html)
+ if (res0.code === 200) {
+ admin.open({
+ type: 1,
+ 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();
+ let userSel = loadUserSel();
+ userSel.setValue([
+ {name: res0.data.nickName, value: Number(res0.data.userId)},
+ ])
+ let planNeedSel = loadPlanNeedSel();
+ form.val('detail', {
+ planTypeName: planType.name,
+ userXmlSelPhone: res0.data.mobile
+ });
+ layDateRender();
+ form.on('submit(editSubmit)', function (data) {
+ console.log(data)
+ 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;
+ var planNeedValue= planNeedSel.getValue()[0] ? planNeedSel.getValue()[0].value : null;
+ for (var i=1;i<planNeedSel.getValue().length;i++){
+ planNeedValue =planNeedSel.getValue()[i] ? planNeedValue+"-"+planNeedSel.getValue()[i].value : planNeedValue;
+ }
+ data.field.planNeed = planNeedValue;
+
+ 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;
+ }
+ if (!data.field.userId) {
+ layer.msg("涓氬姟鍛樹笉鑳戒负绌�", {icon: 2});
+ top.requireTip($('#userXmlSel'));
+ return false;
+ }
+ var loadIndex = layer.load(2);
+ $.ajax({
+ url: baseUrl+"/plan/add/auth",
+ headers: {'token': localStorage.getItem('token')},
+ data: data.field,
+ method: 'POST',
+ success: function (res) {
+ layer.close(loadIndex);
+ if (res.code === 200){
+ layer.close(dIndex0);
+ 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');
+ }
+ });
+ } else if (res0.code === 403) {
+ top.location.href = baseUrl + "/";
+ } else {
+ layer.msg(res0.msg, {icon: 2});
+ }
+ }
+ })
+ return false;
+ });
+ }
+ })
+ } else if (res.code === 403){
+ top.location.href = baseUrl+"/";
+ } else {
+ layer.msg(res.msg, {icon: 2});
+ }
+ }
+ })
+ });
+
+ // 鍒犻櫎
+ form.on('submit(planDel)', function (data) {
+ let checkStatus = layui.table.checkStatus('plan').data;
+ if (checkStatus.length === 0) {
+ layer.msg('璇烽�夋嫨瑕佸垹闄ょ殑鏁版嵁', {icon: 2});
+ return;
+ }
+ del(checkStatus.map(function (d) {
+ return d.id;
+ }));
+ });
+
// 鐩戝惉鎺掑簭浜嬩欢
table.on('sort(plan)', function (obj) {
var searchData = {};
@@ -95,110 +459,362 @@
});
});
- // 鐩戝惉澶村伐鍏锋爮浜嬩欢
- table.on('toolbar(plan)', function (obj) {
- var checkStatus = table.checkStatus(obj.config.id).data;
- switch(obj.event) {
- case 'addData':
- showEditModel();
- break;
- case 'deleteData':
- if (checkStatus.length === 0) {
- layer.msg('璇烽�夋嫨瑕佸垹闄ょ殑鏁版嵁', {icon: 2});
- return;
- }
- del(checkStatus.map(function (d) {
- return d.id;
- }));
- break;
- case 'exportData':
- admin.confirm('纭畾瀵煎嚭Excel鍚�', {shadeClose: true}, function(){
- var titles=[];
- var fields=[];
- obj.config.cols[0].map(function (col) {
- if (col.type === 'normal' && col.hide === false && col.toolbar == null) {
- titles.push(col.title);
- fields.push(col.field);
- }
- });
- var exportData = {};
- $.each($('#search-box [name]').serializeArray(), function() {
- exportData[this.name] = this.value;
- });
- var param = {
- 'plan': exportData,
- 'fields': fields
- };
- $.ajax({
- url: baseUrl+"/plan/export/auth",
- headers: {'token': localStorage.getItem('token')},
- data: JSON.stringify(param),
- dataType:'json',
- contentType:'application/json;charset=UTF-8',
- method: 'POST',
- success: function (res) {
- layer.closeAll();
- if (res.code === 200) {
- table.exportFile(titles,res.data,'xls');
- } else if (res.code === 403) {
- top.location.href = baseUrl+"/";
- } else {
- layer.msg(res.msg, {icon: 2})
- }
- }
- });
- });
- break;
- }
- });
-
// 鐩戝惉琛屽伐鍏蜂簨浠�
table.on('tool(plan)', function(obj){
var data = obj.data;
switch (obj.event) {
+ case 'more':
+ top.planByMore = data.id;
+ admin.popupRight({
+ type: 1,
+ window: "top",
+ area: "1250px",
+ url: "plan_more.html",
+ end: function () {
+ // $(".layui-laypage-btn")[0].click();
+ }
+ })
+ break;
+ case 'cstmrMore':
+ top.cstmrByMore = data.cstmrId;
+ admin.popupRight({
+ type: 1,
+ window: "top",
+ area: "1250px",
+ url: "../cstmr/cstmr_more.html",
+ end: function () {
+ // $(".layui-laypage-btn")[0].click();
+ }
+ })
+ break;
+ case 'orderMore':
+ top.orderByMore = data.orderId;
+ admin.popupRight({
+ type: 1,
+ window: "top",
+ area: "1250px",
+ url: "../order/order_more.html",
+ end: function () {
+ // $(".layui-laypage-btn")[0].click();
+ }
+ })
+ break;
+ case 'approval':
+ layer.confirm('瀹℃壒閫氳繃锛�', {
+ skin: 'layui-layer-admin',
+ shade: .1,
+ offset: '200px',
+ title: data.name
+ }, function (i) {
+ layer.close(i);
+ // 鎸囧畾瑙勫垝鍛�
+ if (data.settle === 1) {
+ admin.open({
+ type: 1,
+ area: '300px',
+ title: '閫夋嫨瑙勫垝鍛�',
+ content: $('#plannerListDialog').html(),
+ success: function (layero, dIndex) {
+ let plannerSel = xmSelect.render({
+ el: '#plannerXmlSel',
+ autoRow: true,
+ filterable: true,
+ remoteSearch: true,
+ clickClose: true,
+ radio: true,
+ remoteMethod: function (val, cb, show) {
+ 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) {
+ cb(res.data)
+ } else {
+ layer.close(dIndex);
+ layer.msg(res.msg, {icon: 2});
+ }
+ }
+ })
+ }
+ });
+
+ form.on('submit(editSubmit)', function () {
+ let plannerId = plannerSel.getValue()[0] ? plannerSel.getValue()[0].value : null;
+ if (!plannerId) {
+ layer.msg("璇烽�夋嫨瑙勫垝鍛�", {icon: 2});
+ top.requireTip($('#plannerXmlSel'));
+ return false;
+ }
+ approval(data.id, plannerId, dIndex);
+ });
+
+ $(layero).children('.layui-layer-content').css('overflow', 'visible');
+ }
+ })
+ } else {
+ approval(data.id);
+ }
+ });
+ break;
+ case 'approvalEnd':
+ layer.confirm('瀹℃壒鎷掔粷锛�', {
+ skin: 'layui-layer-admin',
+ shade: .1,
+ offset: '200px',
+ title: data.name
+ }, function (i) {
+ layer.close(i);
+ approvalEnd(data.id);
+ });
+ break;
case 'edit':
showEditModel(data);
break;
case "del":
del([data.id]);
break;
+ case "uploadLink":
+ // 鎵撳紑寮圭獥
+ // 鏋勫缓甯﹀弬鏁扮殑鍐呭
+ layer.open({
+ type: 1,
+ title: '涓婁紶鏂囦欢-'+data.id,
+ content: $('#myModal')
+ });
+ // 鑾峰彇璺緞涓嬬殑鏂囦欢鍒楄〃锛屼娇鐢� jQuery 鐨� ajax 鏂规硶
+ $.ajax({
+ url: '/plan/view/file/auth',
+ data:{
+ planId:data.id
+ },
+ success: function(response) {
+ if (response.code==200){
+ var targetTable = document.getElementById("data-btn-file3");
+ // var targetTable1 = document.getElementById("layui-layer2");
+ // // 鑾峰彇鏂囨湰鍐呭
+ // var text = targetTable1.textContent.trim();
+ // console.log(text); // 杈撳嚭 '涓婁紶鏂囦欢-20'
+ targetTable.innerHTML = '';
+ // 灏嗚幏鍙栧埌鐨勬枃浠跺垪琛ㄦ坊鍔犲埌鏂囦欢闃熷垪涓繘琛屾樉绀�
+ response.data.forEach(function(file,index) {
+ // 鍒涘缓tr鍏冪礌
+ var tr = document.createElement("tr");
+ tr.id = "upload-"+index;
+ tr.innerHTML = '<td>' + file.name + '</td>'
+ + '<td>' + (file.size / 1024).toFixed(1) + 'kb</td>'
+ // + '<td><div class="layui-progress" lay-filter="progress-demo-' + index ,100 + '%'+ '"><div class="layui-progress-bar" lay-percent=""></div></div></td>'
+ + '<td>'+'宸插畬鎴�'+'</td>'
+ + '<td>'
+ + '<button class="layui-btn layui-btn-xs demo-reload layui-hide">閲嶄紶</button>'
+ // + '<button class="layui-btn layui-btn-xs layui-btn-danger demo-delete">鍒犻櫎</button>'
+ + '<a href="' + file.path + '" download class="layui-btn layui-btn-xs layui-btn-primary">涓嬭浇</a>'
+ + '</td>';
+ // 灏唗r鍏冪礌娣诲姞鍒扮洰鏍噒able涓�
+ targetTable.appendChild(tr);
+ });
+ }else {
+ console.log('Failed to get file list error.');
+ }
+ },
+ error: function() {
+ console.log('Failed to get file list.');
+ }
+ });
+ break;
}
});
+ // 鐐瑰嚮涓嬭浇鎸夐挳鏃惰Е鍙戞枃浠朵笅杞�
+ $('#data-btn-file3').on('click', 'a', function() {
+ var downloadUrl = $(this).attr('href');
+ // console.log(downloadUrl)
+ // console.log(baseUrl)
+ // window.open("/\//"+downloadUrl);
+ // return false;
+ // var downloadUrl = $(this).attr('href');
+ // console.log(downloadUrl)
+ // // 鍙戣捣 AJAX 璇锋眰锛岃幏鍙栨枃浠�
+ $.ajax({
+ url: '/plan/download/file/auth',
+ type: 'POST',
+ data: { downloadUrl: downloadUrl }, // 浼犻�掍笅杞介摼鎺ヤ綔涓哄弬鏁�
+ success: function(response) {
+ console.log(response)
+ layer.msg(response.msg+',宸蹭笅杞借嚦榛樿璺緞锛佽缁嗕笅杞借矾寰勶細'+response.data, {icon: 1});
+ // // window.open(baseUrl+response.msg)
+ // // 鍒涘缓涓�涓狟lob瀵硅薄
+ // var blob = new Blob([response]);
+ // // 浣跨敤FileSaver淇濆瓨鏂囦欢
+ // var fileName = downloadUrl.substring(downloadUrl.lastIndexOf('\\') + 1);
+ // console.log(fileName)
+ // saveAs(blob, fileName);
+ // return false;
+ },
+ error: function() {
+ layer.msg('璇锋眰鏂囦欢涓嬭浇澶辫触');
+ }
+ });
+ // var downloadUrl = $(this).attr('href');
+ // console.log(downloadUrl)
+ // if (downloadUrl == "" || downloadUrl == null) {
+ // layer.msg('璇峰厛涓婁紶app鏂囦欢',{time:1000},() => {
+ // parent.location.reload()
+ // })
+ // }else{
+ // window.open(downloadUrl);
+ // }
+ return false; // 闃绘榛樿鐨勯摼鎺ヨ烦杞涓�
+ });
+
+ function approval(planId, plannerId, dIdx) {
+ let loadIndex = layer.load(2);
+ $.ajax({
+ url: baseUrl+"/plan/approval/auth",
+ headers: {'token': localStorage.getItem('token')},
+ data: {
+ planId: planId,
+ plannerId: plannerId
+ },
+ method: 'POST',
+ success: function (res) {
+ if (dIdx) {
+ layer.close(dIdx);
+ }
+ 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 approvalEnd(planId, plannerId, dIdx) {
+ let loadIndex = layer.load(2);
+ $.ajax({
+ url: baseUrl+"/plan/approvalEnd/auth",
+ headers: {'token': localStorage.getItem('token')},
+ data: {
+ planId: planId,
+ plannerId: plannerId
+ },
+ method: 'POST',
+ success: function (res) {
+ if (dIdx) {
+ layer.close(dIdx);
+ }
+ 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}]); }
+ let split = plan.planNeed.split("-");
+ if (plan.planNeed) {
+ var data = []
+ split.forEach((item,idx) => {
+ data.push(parseInt(item))
+ })
+ planNeedXmlSelData = data
}
+ 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;
+ var planNeedValue= planNeedSel.getValue()[0] ? planNeedSel.getValue()[0].value : null;
+ for (var i=1;i<planNeedSel.getValue().length;i++){
+ planNeedValue =planNeedSel.getValue()[i] ? planNeedValue+"-"+planNeedSel.getValue()[i].value : planNeedValue;
+ }
+ data.field.planNeed = planNeedValue;
+ 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});
+ }
}
});
}
@@ -234,13 +850,7 @@
// 鎼滅储
form.on('submit(search)', function (data) {
pageCurr = 1;
- tableReload();
- });
-
- // 閲嶇疆
- form.on('submit(reset)', function (data) {
- pageCurr = 1;
- clearFormVal($('#search-box'));
+ pageCount = 0;
tableReload();
});
@@ -254,84 +864,28 @@
});
layDate.render({
elem: '#appleTime\\$',
- type: 'datetime',
- value: data!==undefined?data['appleTime\\$']:null
+ type: 'date',
+ value: data!==undefined?data['appleTime$']:null
});
layDate.render({
elem: '#finishTime\\$',
- type: 'datetime',
- value: data!==undefined?data['finishTime\\$']:null
+ type: 'date',
+ 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);
}
layDateRender();
-
- window.loadHostSel = function () {
- return xmSelect.render({
- el: '#hostXmlSel',
- autoRow: true,
- filterable: true,
- remoteSearch: true,
- radio: true,
- remoteMethod: function (val, cb, show) {
- $.ajax({
- url: baseUrl + "/host/all/get/kv",
- headers: {'token': localStorage.getItem('token')},
- data: {
- condition: val
- },
- method: 'POST',
- success: function (res) {
- if (res.code === 200) {
- cb(res.data)
- } else {
- cb([]);
- layer.msg(res.msg, {icon: 2});
- }
- }
- });
- }
- });
- }
-
- window.loadDeptSel = function () {
- return xmSelect.render({
- el: '#deptXmlSel',
- autoRow: true,
- filterable: true,
- remoteSearch: true,
- radio: true,
- remoteMethod: function (val, cb, show) {
- $.ajax({
- url: baseUrl + "/dept/all/get/kv",
- headers: {'token': localStorage.getItem('token')},
- data: {
- condition: val
- },
- method: 'POST',
- success: function (res) {
- if (res.code === 200) {
- cb(res.data)
- } else {
- cb([]);
- layer.msg(res.msg, {icon: 2});
- }
- }
- });
- }
- });
- }
window.loadPlanTypeSel = function () {
return xmSelect.render({
@@ -339,6 +893,7 @@
autoRow: true,
filterable: true,
remoteSearch: true,
+ clickClose: true,
radio: true,
remoteMethod: function (val, cb, show) {
$.ajax({
@@ -361,16 +916,17 @@
});
}
- window.loadUserSel = function () {
+ window.loadOrderSel = function () {
return xmSelect.render({
- el: '#userXmlSel',
+ el: '#orderXmlSel',
autoRow: true,
filterable: true,
remoteSearch: true,
+ clickClose: true,
radio: true,
remoteMethod: function (val, cb, show) {
$.ajax({
- url: baseUrl + "/user/all/get/kv",
+ url: baseUrl + "/order/all/get/kv",
headers: {'token': localStorage.getItem('token')},
data: {
condition: val
@@ -380,39 +936,30 @@
if (res.code === 200) {
cb(res.data)
} else {
- cb([]);
+ cb([]);Query/auth
layer.msg(res.msg, {icon: 2});
}
}
});
- }
- });
- }
-
- window.loadUserSel = function () {
- return xmSelect.render({
- el: '#userXmlSel',
- autoRow: true,
- filterable: true,
- remoteSearch: true,
- radio: true,
- remoteMethod: function (val, cb, show) {
- $.ajax({
- url: baseUrl + "/user/all/get/kv",
- headers: {'token': localStorage.getItem('token')},
- data: {
- condition: val
- },
- method: 'POST',
- success: function (res) {
- if (res.code === 200) {
- cb(res.data)
- } else {
- cb([]);
- layer.msg(res.msg, {icon: 2});
+ },
+ on: function (data){
+ if (data.change.length > 0) {
+ let orderId = data.change[0].value;
+ $.ajax({
+ url: baseUrl + "/order/" + orderId + "/auth",
+ headers: {'token': localStorage.getItem('token')},
+ data: {},
+ method: 'GET',
+ success: function (res) {
+ if (res.code === 200) {
+ let cstmrSel = loadCstmrSel();
+ cstmrSel.setValue([{name: res.data.cstmrId$, value: res.data.cstmrId}]);
+ } else {
+ layer.msg(res.msg, {icon: 2});
+ }
}
- }
- });
+ });
+ }
}
});
}
@@ -423,6 +970,7 @@
autoRow: true,
filterable: true,
remoteSearch: true,
+ clickClose: true,
radio: true,
remoteMethod: function (val, cb, show) {
$.ajax({
@@ -434,7 +982,8 @@
method: 'POST',
success: function (res) {
if (res.code === 200) {
- cb(res.data)
+ // cb(res.data)
+ cb([]);
} else {
cb([]);
layer.msg(res.msg, {icon: 2});
@@ -446,31 +995,33 @@
}
window.loadPlanNeedSel = function () {
- return xmSelect.render({
+ var planNeedXmlSel = xmSelect.render({
el: '#planNeedXmlSel',
autoRow: true,
- filterable: true,
- remoteSearch: true,
- radio: true,
- remoteMethod: function (val, cb, show) {
- $.ajax({
- url: baseUrl + "/planNeed/all/get/kv",
- headers: {'token': localStorage.getItem('token')},
- data: {
- condition: val
- },
- method: 'POST',
- success: function (res) {
- if (res.code === 200) {
- cb(res.data)
- } else {
- cb([]);
- layer.msg(res.msg, {icon: 2});
- }
- }
- });
+ data: []
+ });
+
+ $.ajax({
+ url: baseUrl + "/planNeed/all/get/kv",
+ headers: {'token': localStorage.getItem('token')},
+ data: {
+ condition: ""
+ },
+ method: 'POST',
+ success: function (res) {
+ if (res.code === 200) {
+ planNeedXmlSel.update({
+ initValue: planNeedXmlSelData,
+ data: res.data
+ })
+ } else {
+ cb([]);
+ layer.msg(res.msg, {icon: 2});
+ }
}
});
+
+ return planNeedXmlSel;
}
window.loadUserSel = function () {
@@ -479,6 +1030,7 @@
autoRow: true,
filterable: true,
remoteSearch: true,
+ clickClose: true,
radio: true,
remoteMethod: function (val, cb, show) {
$.ajax({
@@ -500,40 +1052,11 @@
}
});
}
-
- window.loadUserSel = function () {
- return xmSelect.render({
- el: '#userXmlSel',
- autoRow: true,
- filterable: true,
- remoteSearch: true,
- radio: true,
- remoteMethod: function (val, cb, show) {
- $.ajax({
- url: baseUrl + "/user/all/get/kv",
- headers: {'token': localStorage.getItem('token')},
- data: {
- condition: val
- },
- method: 'POST',
- success: function (res) {
- if (res.code === 200) {
- cb(res.data)
- } else {
- cb([]);
- layer.msg(res.msg, {icon: 2});
- }
- }
- });
- }
- });
- }
-
});
-// 鍏抽棴鍔ㄤ綔
+// 鐐瑰嚮浜嬩欢
$(document).on('click','#data-detail-close', function () {
parent.layer.closeAll();
});
@@ -544,6 +1067,9 @@
$.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}
@@ -552,3 +1078,46 @@
$(".layui-laypage-btn")[0].click();
}
}
+
+function upload(obj){
+ if(!obj.files) {
+ return;
+ }
+ var file = obj.files[0];
+ admin.confirm('纭鍚屾 [' + file.name +'] 鏂囦欢鍚楋紵', function (index) {
+ layer.load(1, {shade: [0.1,'#fff']});
+ var url = baseUrl + "/plan/excel/import/auth";
+ var form = new FormData();
+ form.append("file", file);
+ let xhr = new XMLHttpRequest();
+ xhr.open("post", url, true);
+ xhr.setRequestHeader('token', localStorage.getItem('token'));
+ xhr.onload = uploadComplete;
+ xhr.onerror = uploadFailed;
+ xhr.onloadend = function () {
+ layer.closeAll('loading');
+ };
+ // xhr.upload.onprogress = progressFunction;
+ xhr.upload.onloadstart = function(){
+ ot = new Date().getTime();
+ oloaded = 0;
+ };
+ xhr.send(form);
+ }, function(index){
+ });
+}
+function uploadComplete(evt) {
+ let res = JSON.parse(evt.target.responseText);
+ if(res.code === 200) {
+ layer.msg(res.msg, {icon: 1});
+ tableReload();
+ } else {
+ alert(res.msg);
+ // layer.msg(res.msg, {icon: 2});
+ }
+}
+function uploadFailed(evt) {
+ let res = JSON.parse(evt.target.responseText);
+ alert(res.msg);
+ // layer.msg(res.msg, {icon: 2});
+}
--
Gitblit v1.9.1