From 86586ac59fef9b677deaf15136e1f44d3d2204be Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期五, 29 三月 2024 10:40:30 +0800
Subject: [PATCH] #周计划
---
src/main/webapp/static/js/cstmr/cstmr.js | 435 +++++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 392 insertions(+), 43 deletions(-)
diff --git a/src/main/webapp/static/js/cstmr/cstmr.js b/src/main/webapp/static/js/cstmr/cstmr.js
index 603e30f..0dece2a 100644
--- a/src/main/webapp/static/js/cstmr/cstmr.js
+++ b/src/main/webapp/static/js/cstmr/cstmr.js
@@ -1,58 +1,173 @@
var pageCurr;
-var pageCount;
+var pageCount = 0;
+var treeCond;
+var admin;
layui.config({
base: baseUrl + "/static/layui/lay/modules/"
}).extend({
- dropdown: 'dropdown/dropdown',
-}).use(['table','laydate', 'form', 'admin', 'xmSelect', 'dropdown', 'element'], function(){
+ cascader: 'cascader/cascader',
+}).use(['table','laydate', 'form', 'admin', 'xmSelect', '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 xmSelect = layui.xmSelect;
+ var cascader = layui.cascader;
+ var tree = layui.tree;
+ var dropdown = layui.dropdown;
+
+ $('#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");
+ // let arrFileHandle = await window.showOpenFilePicker()
+ // let file = await arrFileHandle[0].getFile();
+ // upload(file);
+ break
+ case 3:
+ // 瀵煎嚭 Excel
+ layer.msg("鏉ヤ笉鍙婂仛锛岀瓑绛�", {icon: 6});
+ break
+ default:
+ break
+ }
+ }
+ });
+
+ // 鏍戝舰鍥�
+ var organizationTree;
+ window.loadTree = function(followerName,conditionName,condition){
+ var loadIndex = layer.load(2);
+ $.ajax({
+ url: baseUrl+"/dept/user/tree/auth",
+ headers: {'token': localStorage.getItem('token')},
+ data: {
+ 'followerName' : followerName,
+ 'conditionName' : conditionName,
+ '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: '#cstmr',
headers: {token: localStorage.getItem('token')},
- url: baseUrl+'/cstmr/list/auth',
+ url: baseUrl+'/cstmr/page/auth',
page: true,
limit: 15,
limits: [15, 30, 50, 100, 200, 500],
- cellMinWidth: 100,
- height: 'full-145',
+ // cellMinWidth: 100,
+ height: 'full-148',
// size: 'sm',
skin: 'line',
cols: [[
- {type: 'checkbox'}
+ // {type: 'checkbox'}
// ,{field: 'id', align: 'center',title: 'ID'}
- // ,{field: 'hostId$', align: 'center',title: '鎵�灞炲晢鎴�'}
- ,{field: 'name', align: 'center',title: '瀹㈡埛鍚嶇О'}
- ,{field: 'uuid', align: 'center',title: '瀹㈡埛浠e彿'}
- ,{field: 'addr', align: 'center',title: '璇︾粏鍦板潃'}
- ,{field: 'tel', align: 'center',title: '鐢佃瘽'}
- ,{field: 'remarks', align: 'center',title: '澶囨敞'}
- ,{field: 'createTime$', align: 'center',title: '娣诲姞鏃堕棿'}
- ,{field: 'userId$', align: 'center',title: '娣诲姞浜哄憳'}
- ,{field: 'cstmrType$', align: 'center',title: '瀹㈡埛绫诲埆'}
- ,{field: 'deptId$', align: 'center',title: '鎵�灞為儴闂�', hide: true}
- ,{field: 'simple', align: 'center',title: '瀹㈡埛绠�绉�', hide: true}
- ,{field: 'rela', align: 'center',title: '瀹㈡埛鍏崇郴', hide: true}
- ,{field: 'contacts', align: 'center',title: '瀹㈡埛鑱旂郴浜�', hide: true}
- ,{field: 'director$', align: 'center',title: '璐熻矗浜�', hide: true}
- ,{field: 'province', align: 'center',title: '鐪�', hide: true}
- ,{field: 'city', align: 'center',title: '甯�', hide: true}
- ,{field: 'district', align: 'center',title: '鍘�', hide: true}
- ,{field: 'town', align: 'center',title: '闀�', hide: true}
- ,{field: 'type$', align: 'center',title: '鍖哄垎', hide: true}
- ,{field: 'files', align: 'center',title: '闄勪欢', hide: true}
- ,{field: 'status$', align: 'center',title: '鐘舵��', hide: true}
+ // ,{field: 'hostId$', align: 'center',title: '鎵�灞炲晢鎴�'},
+ {field: 'name', align: 'left',title: '瀹㈡埛鍚嶇О', style: 'color: #1890ff;cursor:pointer', event: 'more', width: 350}
+ ,{field: 'simple', align: 'left',title: '瀹㈡埛绠�绉�', hide: true}
+ ,{field: 'uuid', align: 'left',title: '瀹㈡埛浠e彿', hide: false}
+ ,{field: 'addr', align: 'left',title: '璇︾粏鍦板潃', hide: false, templet:function(d){return emptyShow(d.addr)}}
+ ,{field: 'tel', align: 'left',title: '鐢佃瘽', hide: false, templet:function(d){return emptyShow(d.tel)}}
+ ,{field: 'weeklyDailyReality', align: 'center',title: '鏃ヨ绋�',hide : false, toolbar: '#tbLookReality'}
+ ,{field: 'remarks', align: 'left',title: '澶囨敞', hide: false, templet:function(d){return emptyShow(d.remarks)}}
+ ,{field: 'cstmrType$', align: 'left',title: '瀹㈡埛绫诲埆', hide: false}
+ ,{field: 'industry', align: 'left',title: '瀹㈡埛琛屼笟', hide: false}
+ ,{field: 'productCategory', align: 'left',title: '浜у搧绫诲瀷', hide: false}
+ ,{field: 'userId$', align: 'left',title: '娣诲姞浜哄憳', hide: true}
+ ,{field: 'deptId$', align: 'left',title: '鎵�灞為儴闂�', hide: true}
+ ,{field: 'rela', align: 'left',title: '瀹㈡埛鍏崇郴', hide: true}
+ ,{field: 'contacts', align: 'left',title: '瀹㈡埛鑱旂郴浜�', hide: true}
+ ,{field: 'director$', align: 'left',title: '璐熻矗浜�', hide: false}
+ ,{field: 'province', align: 'left',title: '鐪�', hide: true}
+ ,{field: 'city', align: 'left',title: '甯�', hide: true}
+ ,{field: 'district', align: 'left',title: '鍘�', hide: true}
+ ,{field: 'town', align: 'left',title: '闀�', hide: true}
+ ,{field: 'type$', align: 'left',title: '鍖哄垎', hide: true}
+ ,{field: 'files', align: 'left',title: '闄勪欢', hide: true}
+ ,{field: 'status$', align: 'left',title: '鐘舵��', hide: true}
// ,{field: 'createBy$', align: 'center',title: '娣诲姞浜哄憳', hide: true}
- ,{field: 'updateBy$', align: 'center',title: '淇敼浜哄憳', hide: true}
- ,{field: 'updateTime$', align: 'center',title: '淇敼鏃堕棿', hide: true}
- ,{field: 'memo', align: 'center',title: '娉ㄩ噴', hide: true}
+ ,{field: 'updateBy$', align: 'left',title: '娣诲姞浜哄憳', hide: false}
+ ,{field: 'updateTime$', align: 'left',title: '淇敼鏃堕棿', hide: true}
+ ,{field: 'createTime$', align: 'left',title: '娣诲姞鏃堕棿', hide: false}
+ ,{field: 'memo', align: 'left',title: '娉ㄩ噴', hide: true}
,{fixed: 'right', title:'鎿嶄綔', align: 'center', toolbar: '#operate', width:120}
]],
@@ -83,6 +198,14 @@
// 娣诲姞
$("#cstmrAddBtn").click(function () {
+ form.verify({
+ account: function(value, item){
+ var min = item.getAttribute('lay-min');
+ if(value.length < min){
+ return '瀹㈡埛鍚嶇О涓嶈兘灏忎簬'+min+'涓瓧绗︾殑闀垮害';
+ }
+ }
+ });
showEditModel();
});
@@ -98,7 +221,6 @@
}));
});
-
// 鐩戝惉鎺掑簭浜嬩欢
table.on('sort(cstmr)', function (obj) {
var searchData = {};
@@ -113,16 +235,90 @@
});
});
-
// 鐩戝惉琛屽伐鍏蜂簨浠�
table.on('tool(cstmr)', function(obj){
var data = obj.data;
switch (obj.event) {
+ case 'more':
+ top.cstmrByMore = data.id;
+ admin.popupRight({
+ type: 1,
+ window: "top",
+ area: "1250px",
+ url: "cstmr_more.html",
+ end: function () {
+ // $(".layui-laypage-btn")[0].click();
+ }
+ })
+ break;
case 'edit':
showEditModel(data);
break;
case "del":
del([data.id]);
+ break;
+ case "lookReality":
+ var $a = $(obj.tr).find('a[lay-event="lookReality"]');
+ var offset = $a.offset();
+ var top2 = offset.top;
+ var left = offset.left;
+ layer.open({
+ type: 1,
+ title: false,
+ area: '1100px',
+ offset: [top2 + 'px', (left - 830 + $a.outerWidth()) + 'px'],
+ shade: .01,
+ shadeClose: true,
+ fixed: false,
+ content: '<table id="lookSSXMTable" lay-filter="lookSSXMTable"></table>',
+ success: function (layero) {
+ table.render({
+ elem: '#lookSSXMTable',
+ headers: {token: localStorage.getItem('token')},
+ url: baseUrl+'/weeklyDailyReality/list/auth',
+ where: {
+ cstmr_id: data.id
+ },
+ page: true,
+ cellMinWidth: 100,
+ cols: [[
+ {type: 'numbers'}
+ // ,{field: 'weeklyDay$', align: 'center',title: '鏄熸湡'}
+ ,{field: 'dailyTime$', align: 'center',title: '鏃ユ湡'}
+ ,{field: 'workContent', align: 'center', title: '宸ヤ綔鍐呭', edit:false}
+ ,{field: 'workPurpose', title: '宸ヤ綔鐩殑', edit:false}
+ ,{field: 'comment', title: '璇勮', edit:false}
+ ,{field: 'weeklyMatter', title: '闇�鍗忓姪浜嬮」', edit:false}
+ // ,{field: 'dailyTime$', align: 'center',title: '鏃ユ姤鏃ユ湡'}
+ // ,{field: 'settleMsg', align: 'center',title: '瀹℃牳杩涘害'}
+ ,{field: 'director', align: 'center',title: '璐熻矗浜�'}
+ // ,{field: 'settleSize', align: 'center',title: '娴佺▼闀垮害'}
+ // ,{field: 'settleCurrent', align: 'center',title: '褰撳墠杩涘害'}
+ // ,{field: 'cstmrId', align: 'center',title: '鐢叉柟鍗曚綅ID'}//, templet: function () { return htmlCstme;}
+ ,{field: 'memo', align: 'center',title: '澶囨敞', edit:false}
+ ]],
+ request: {
+ pageName: 'curr',
+ pageSize: 'limit'
+ },
+ parseData: function (res) {
+ return {
+ 'code': res.code,
+ 'msg': res.msg,
+ 'count': res.data.total,
+ 'data': res.data.records
+ }
+ },
+ response: {
+ statusCode: 200
+ },
+ done: function () {
+ $(layero).find('.layui-table-view').css('margin', '0');
+ },
+ size: ''
+ });
+ }
+ });
break;
}
});
@@ -132,12 +328,50 @@
admin.open({
type: 1,
area: '1500px',
- title: (mData ? '淇敼' : '娣诲姞') + '鐢叉柟鍗曚綅',
+ title: (mData ? '淇敼' : '娣诲姞') + '瀹㈡埛淇℃伅',
content: $('#editDialog').html(),
success: function (layero, dIndex) {
+ let loadNameXml = loadNameXmlSel()
+ let method = mData?'update':'add';
+ if (mData) {
+ $('#cascaderVal').val(mData.pcd);
+ if (mData.name) { loadNameXml.setValue([{name: mData.name, value: mData.name}]); }
+ }
+ if (method === 'update'){
+ var directorNone = document.getElementById("directorNone");
+ directorNone.style.display = "block";
+ }
+ form.verify({
+ name: function(value, item){
+ var min = item.getAttribute('lay-min');
+ if(value.length < min){
+ return '瀹㈡埛鍚嶇О涓嶈兘灏忎簬'+min+'涓瓧绗︾殑闀垮害';
+ }
+ }
+ });
+ if (mData) {
+ $('#cascaderVal').val(mData.pcd);
+ }
layDateRender(mData);
+ cascaderRender();
form.val('detail', mData);
form.on('submit(editSubmit)', function (data) {
+ data.field.name = loadNameXml.getValue()[0] ? loadNameXml.getValue()[0].name : null;
+ //灏嗗叕鍙告暟鎹叏閮ㄨ繑鍥�
+ companyData = loadNameXml.getValue()[0] ? loadNameXml.getValue()[0].value : null;//灏嗗叕鍙告暟鎹叏閮ㄨ繑鍥�
+ if (companyData != null) {
+ data.field.creditCode = companyData.creditCode
+ data.field.issueTime = companyData.issueTime
+ data.field.companyType = companyData.companyType
+ data.field.companyPerson = companyData.companyPerson
+ data.field.companyStatus = companyData.companyStatus
+ data.field.regMoney = companyData.regMoney
+ }
+
+ if (!data.field.name) {
+ layer.msg("瀹㈡埛鍚嶇О涓嶈兘涓虹┖", {icon: 2});
+ return false;
+ }
var loadIndex = layer.load(2);
$.ajax({
url: baseUrl+"/cstmr/"+(mData?'update':'add')+"/auth",
@@ -149,7 +383,7 @@
if (res.code === 200){
layer.close(dIndex);
layer.msg(res.msg, {icon: 1});
- tableReload();
+ tableReload()
} else if (res.code === 403){
top.location.href = baseUrl+"/";
}else {
@@ -196,6 +430,7 @@
// 鎼滅储
form.on('submit(search)', function (data) {
pageCurr = 1;
+ pageCount = 0;
tableReload();
});
@@ -222,6 +457,70 @@
}
layDateRender();
+ // 鐪佸競鍖洪�夋嫨
+ function cascaderRender() {
+ cascader.render({
+ elem: '#cascaderVal',
+ data: citysData,
+ itemHeight: '250px',
+ filterable: true,
+ onChange: function (values, data) {
+ // console.log(values);console.log(data);
+ }
+ });
+ }
+
+ window.loadNameXmlSel = function () {
+ return xmSelect.render({
+ el: '#nameXmlSel',
+ autoRow: true,
+ filterable: true,
+ remoteSearch: true,
+ clickClose: true,
+ radio: true,
+ remoteMethod: function (val, cb, show) {
+ $.ajax({
+ url: baseUrl + "/cstmrSearch/auth",
+ 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) {
+ console.log(data)
+ let arr = data.arr
+ let change = data.change;
+ if (arr.length > 0 && change.length>0) {
+ let name = arr[0].name;
+ $.ajax({
+ url: baseUrl + "/cstmr/name/check/auth",
+ headers: {'token': localStorage.getItem('token')},
+ data: {
+ name: name
+ },
+ method: 'POST',
+ success: function (res) {
+ if (res.code === 200) {
+ } else {
+ layer.msg(res.msg, {icon: 2});
+ }
+ }
+ });
+ }
+ }
+ });
+ }
+
});
// 鍏抽棴鍔ㄤ綔
@@ -230,12 +529,62 @@
});
function tableReload() {
- var searchData = {};
- $.each($('#search-box [name]').serializeArray(), function() {
- searchData[this.name] = this.value;
+ if (pageCount === 0) {
+ let searchData = {};
+ $.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}
+ });
+ } else {
+ $(".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 + "/cstmr/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){
});
- tableIns.reload({
- where: searchData,
- page: {curr: pageCurr}
- });
+}
+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