From 011e7b1906597b41a4143afb268ae059e97df60c Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期三, 13 九月 2023 17:20:40 +0800
Subject: [PATCH] #
---
src/main/webapp/static/js/contract/contract.js | 236 +++++++++++++++++++++++++++++++++++++++++++---------------
1 files changed, 173 insertions(+), 63 deletions(-)
diff --git a/src/main/webapp/static/js/contract/contract.js b/src/main/webapp/static/js/contract/contract.js
index 017b027..6b25d76 100644
--- a/src/main/webapp/static/js/contract/contract.js
+++ b/src/main/webapp/static/js/contract/contract.js
@@ -1,19 +1,77 @@
var pageCurr;
layui.config({
base: baseUrl + "/static/layui/lay/modules/"
-}).use(['table','laydate', 'form', 'admin'], function(){
+}).use(['table', 'laydate', 'form', 'admin', '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;
+ var dropdown = layui.dropdown;
+ var tree = layui.tree;
+
+ $('#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%);overflow: scroll;'
+ , ready: function () {
+ loadTree();
+ }
+ });
+
+ // 鏍戝舰鍥�
+ 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: '#contract',
headers: {token: localStorage.getItem('token')},
- url: baseUrl+'/contract/list/auth',
+ url: baseUrl + '/contract/list/auth',
page: true,
limit: 15,
limits: [15, 30, 50, 100, 200, 500],
@@ -23,18 +81,19 @@
cols: [[
{type: 'checkbox'}
// ,{field: 'id', align: 'center',title: '#ID'}
- ,{field: 'serial', align: 'center',title: '鍚堝悓缂栧彿'}
- ,{field: 'name', align: 'center',title: '鍚堝悓鍚嶇О'}
- ,{field: 'customer', align: 'center',title: '鐢叉柟'}
- ,{field: 'company', 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: 'serial', align: 'center', title: '鍚堝悓缂栧彿'}
+ , {field: 'name', align: 'center', title: '鍚堝悓鍚嶇О'}
+ , {field: 'customer', align: 'center', title: '鐢叉柟'}
+ , {field: 'company', align: 'center', title: '鍏徃鍚嶇О'}
+ , {field: 'status$', align: 'center', title: '鐘舵��'}
+ , {field: 'userId$', align: 'center', title: '娣诲姞浜哄憳'}
+ , {field: 'createTime$', align: 'center', title: '娣诲姞鏃堕棿'}
+ , {field: 'settle$', align: 'center',title: '杩涘害', style: 'color: #1890ff;cursor:pointer', event: 'more',hide: false}
+ , {field: 'updateBy$', align: 'center', title: '淇敼浜哄憳'}
+ , {field: 'updateTime$', align: 'center', title: '淇敼鏃堕棿'}
+ , {field: 'memo', align: 'center', title: '澶囨敞'}
- ,{fixed: 'right', title:'鎿嶄綔', align: 'center', toolbar: '#operate', width:400}
+ , {fixed: 'right', title: '鎿嶄綔', align: 'center', toolbar: '#operate', width: 500}
]],
request: {
pageName: 'curr',
@@ -51,11 +110,11 @@
response: {
statusCode: 200
},
- done: function(res, curr, count) {
+ done: function (res, curr, count) {
if (res.code === 403) {
- top.location.href = baseUrl+"/";
+ top.location.href = baseUrl + "/";
}
- pageCurr=curr;
+ pageCurr = curr;
limit();
}
});
@@ -63,7 +122,7 @@
// 鐩戝惉鎺掑簭浜嬩欢
table.on('sort(contract)', function (obj) {
var searchData = {};
- $.each($('#search-box [name]').serializeArray(), function() {
+ $.each($('#search-box [name]').serializeArray(), function () {
searchData[this.name] = this.value;
});
searchData['orderByField'] = obj.field;
@@ -77,23 +136,23 @@
// 鐩戝惉澶村伐鍏锋爮浜嬩欢
table.on('toolbar(contract)', function (obj) {
var checkStatus = table.checkStatus(obj.config.id).data;
- switch(obj.event) {
+ 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;
+ 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=[];
+ 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);
@@ -101,7 +160,7 @@
}
});
var exportData = {};
- $.each($('#search-box [name]').serializeArray(), function() {
+ $.each($('#search-box [name]').serializeArray(), function () {
exportData[this.name] = this.value;
});
var param = {
@@ -109,18 +168,18 @@
'fields': fields
};
$.ajax({
- url: baseUrl+"/contract/export/auth",
+ url: baseUrl + "/contract/export/auth",
headers: {'token': localStorage.getItem('token')},
data: JSON.stringify(param),
- dataType:'json',
- contentType:'application/json;charset=UTF-8',
+ 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');
+ table.exportFile(titles, res.data, 'xls');
} else if (res.code === 403) {
- top.location.href = baseUrl+"/";
+ top.location.href = baseUrl + "/";
} else {
layer.msg(res.msg, {icon: 2})
}
@@ -132,9 +191,32 @@
});
// 鐩戝惉琛屽伐鍏蜂簨浠�
- table.on('tool(contract)', function(obj){
+ table.on('tool(contract)', function (obj) {
var data = obj.data;
switch (obj.event) {
+ case 'approval':
+ layer.confirm('瀹℃壒閫氳繃锛�', {
+ skin: 'layui-layer-admin',
+ shade: .1,
+ offset: '200px',
+ title: data.name
+ }, function (i) {
+ layer.close(i);
+ approval(data.id);
+ });
+ break;
+ case 'more':
+ top.contractByMore = data.id;
+ admin.popupRight({
+ type: 1,
+ window: "top",
+ area: "1250px",
+ url: "contract_more.html",
+ end: function () {
+ // $(".layui-laypage-btn")[0].click();
+ }
+ })
+ break;
case 'edit':
showEditModel(data);
break;
@@ -173,19 +255,19 @@
form.on('submit(editSubmit)', function (data) {
var loadIndex = layer.load(2);
$.ajax({
- url: baseUrl+"/contract/"+(mData?'update':'add')+"/auth",
+ url: baseUrl + "/contract/" + (mData ? 'update' : 'add') + "/auth",
headers: {'token': localStorage.getItem('token')},
data: data.field,
method: 'POST',
success: function (res) {
layer.close(loadIndex);
- if (res.code === 200){
+ if (res.code === 200) {
layer.close(dIndex);
layer.msg(res.msg, {icon: 1});
tableReload();
- } else if (res.code === 403){
- top.location.href = baseUrl+"/";
- }else {
+ } else if (res.code === 403) {
+ top.location.href = baseUrl + "/";
+ } else {
layer.msg(res.msg, {icon: 2});
}
}
@@ -232,7 +314,7 @@
a.click();
// 娓呯悊涓存椂璧勬簮
- setTimeout(function() {
+ setTimeout(function () {
window.URL.revokeObjectURL(url);
document.body.removeChild(a);
}, 100);
@@ -255,10 +337,10 @@
type: 2,
title: '鍚堝悓鏄庣粏',
maxmin: true,
- area: [top.detailWidth,top.detailHeight],
+ area: [top.detailWidth, top.detailHeight],
shadeClose: false,
content: '../contractSales/contractSales.html?contractId=' + mData.id,
- success: function(layero, index){
+ success: function (layero, index) {
}
});
}
@@ -266,24 +348,24 @@
//涓婁紶鍚堝悓
function upload(data) {
if (data.filepath == '' || data.filepath == null) {
- layer.confirm('鏄惁涓婁紶鍚堝悓?', function(){
+ layer.confirm('鏄惁涓婁紶鍚堝悓?', function () {
$("#uploadQuote").click()
});
- }else {
- layer.confirm('宸蹭笂浼犲悎鍚岋紝鏄惁缁х画瑕嗙洊涓婁紶?', function(){
+ } else {
+ layer.confirm('宸蹭笂浼犲悎鍚岋紝鏄惁缁х画瑕嗙洊涓婁紶?', function () {
$("#uploadQuote").click()
});
}
- $("#uploadQuote").on("change",(evt) => {
+ $("#uploadQuote").on("change", (evt) => {
var files = evt.target.files;
- if(files==null || files.length==0){
+ if (files == null || files.length == 0) {
alert("No files wait for import");
return;
}
let name = files[0].name;
- let suffixArr = name.split("."), suffix = suffixArr[suffixArr.length-1];
+ let suffixArr = name.split("."), suffix = suffixArr[suffixArr.length - 1];
// if(suffix!="xlsx"){
// alert("Currently only supports the import of xlsx files");
// return;
@@ -301,11 +383,11 @@
contentType: false,
success: function (res) {
if (res.code == 200) {
- layer.msg('涓婁紶鎴愬姛',{time:1000},() => {
+ layer.msg('涓婁紶鎴愬姛', {time: 1000}, () => {
parent.location.reload()
})
- }else{
- layer.msg(res.msg,{time:1000},() => {
+ } else {
+ layer.msg(res.msg, {time: 1000}, () => {
parent.location.reload()
})
}
@@ -317,7 +399,7 @@
//涓嬭浇鍚堝悓
function download(data) {
$.ajax({
- url: baseUrl+"/contract/download/auth",
+ url: baseUrl + "/contract/download/auth",
headers: {'token': localStorage.getItem('token')},
data: data,
method: 'GET',
@@ -341,7 +423,7 @@
a.click();
// 娓呯悊涓存椂璧勬簮
- setTimeout(function() {
+ setTimeout(function () {
window.URL.revokeObjectURL(url);
document.body.removeChild(a);
}, 100);
@@ -358,17 +440,17 @@
layer.close(i);
var loadIndex = layer.load(2);
$.ajax({
- url: baseUrl+"/contract/delete/auth",
+ url: baseUrl + "/contract/delete/auth",
headers: {'token': localStorage.getItem('token')},
data: {ids: ids},
method: 'POST',
success: function (res) {
layer.close(loadIndex);
- if (res.code === 200){
+ if (res.code === 200) {
layer.msg(res.msg, {icon: 1});
tableReload();
- } else if (res.code === 403){
- top.location.href = baseUrl+"/";
+ } else if (res.code === 403) {
+ top.location.href = baseUrl + "/";
} else {
layer.msg(res.msg, {icon: 2});
}
@@ -395,24 +477,52 @@
setTimeout(function () {
layDate.render({
elem: '.layui-laydate-range'
- ,type: 'datetime'
- ,range: true
+ , type: 'datetime'
+ , range: true
});
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();
+ function approval(contractId, plannerId, dIdx) {
+ let loadIndex = layer.load(2);
+ $.ajax({
+ url: baseUrl+"/contract/approval/auth",
+ headers: {'token': localStorage.getItem('token')},
+ data: {
+ contractId: contractId,
+ 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});
+ }
+ }
+ })
+ }
+
});
// 鍏抽棴鍔ㄤ綔
--
Gitblit v1.9.1