From 779be6c8e18bb3ac34ea7fa7b7fafc854570cffe Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期六, 07 十月 2023 15:11:14 +0800
Subject: [PATCH] #出差相关
---
src/main/java/com/zy/crm/manager/controller/BusinessTripController.java | 1
src/main/webapp/static/js/order/order.js | 204 +++++++++++++++++++++++++
src/main/java/com/zy/crm/manager/controller/OrderController.java | 9 +
src/main/webapp/views/order/order.html | 249 +++++++++++++++++++++++++++++++
4 files changed, 462 insertions(+), 1 deletions(-)
diff --git a/src/main/java/com/zy/crm/manager/controller/BusinessTripController.java b/src/main/java/com/zy/crm/manager/controller/BusinessTripController.java
index 697d224..9454b40 100644
--- a/src/main/java/com/zy/crm/manager/controller/BusinessTripController.java
+++ b/src/main/java/com/zy/crm/manager/controller/BusinessTripController.java
@@ -278,6 +278,7 @@
// 淇敼瑙勫垝鍗曠姸鎬�
businessTrip.setSettle(2); // 鐢宠閫氳繃
+ businessTrip.setStatus(1);
businessTrip.setUpdateId(getUserId());
businessTrip.setUpdateTime(now);
if (!businessTripService.updateById(businessTrip)) {
diff --git a/src/main/java/com/zy/crm/manager/controller/OrderController.java b/src/main/java/com/zy/crm/manager/controller/OrderController.java
index 05433c2..006bf7f 100644
--- a/src/main/java/com/zy/crm/manager/controller/OrderController.java
+++ b/src/main/java/com/zy/crm/manager/controller/OrderController.java
@@ -221,6 +221,15 @@
return R.ok();
}
+ @PostMapping(value = "/order/business/list/auth")
+ @ManagerAuth
+ public R orderBusiness(@RequestParam Long orderId){
+ List<KeyValueVo> vos = new ArrayList<>();
+ vos.add(new KeyValueVo("鍑哄樊鐢宠", 1L));
+ vos.add(new KeyValueVo("鍏跺畠鍑哄樊", 2L));
+ return R.ok().add(vos);
+ }
+
@RequestMapping(value = "/orderQuery/auth")
@ManagerAuth
public R query(String condition) {
diff --git a/src/main/webapp/static/js/order/order.js b/src/main/webapp/static/js/order/order.js
index 45c75c3..0a44d44 100644
--- a/src/main/webapp/static/js/order/order.js
+++ b/src/main/webapp/static/js/order/order.js
@@ -164,7 +164,7 @@
,{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',
@@ -257,8 +257,174 @@
case "del":
del([data.id]);
break;
+ case "business":
+ // 閫夋嫨鍑哄樊绫诲瀷
+ admin.open({
+ type: 1,
+ area: '300px',
+ title: '閫夋嫨鍑哄樊绫诲瀷',
+ content: $('#businessListDialog').html(),
+ success: function (layero, dIndex) {
+ let businessSel = xmSelect.render({
+ el: '#businessXmlSel',
+ autoRow: true,
+ filterable: true,
+ remoteSearch: true,
+ clickClose: true,
+ radio: true,
+ remoteMethod: function (val, cb, show) {
+ let loadIndex = layer.load(2);
+ $.ajax({
+ url: baseUrl+"/order/business/list/auth",
+ headers: {'token': localStorage.getItem('token')},
+ data: {
+ orderId: 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 businessSN = businessSel.getValue()[0] ? businessSel.getValue()[0].value : null;
+ if (!businessSN) {
+ layer.msg("璇烽�夋嫨鍑哄樊鍗曠被鍨�", {icon: 2});
+ top.requireTip($('#orderStaXmlSel'));
+ return false;
+ }
+ if (businessSN===1){
+ business(data.id);
+ }else {
+ businessOther(data.id);
+ }
+
+ });
+
+ $(layero).children('.layui-layer-content').css('overflow', 'visible');
+ }
+ });
+ break;
}
});
+
+ /* 寮圭獥 - 鍑哄樊鐢宠 */
+ function business(orderId) {
+ admin.open({
+ type: 1,
+ area: '1500px',
+ title: '鍑哄樊鐢宠',
+ content: $('#editDialog2').html(),
+ success: function (layero, dIndex) {
+ layDateRender("娣诲姞");
+ cascaderRenderStart();
+ cascaderRenderEnd();
+ form.val('detail2');
+ form.on('submit(editSubmit2)', function (data) {
+ var loadIndex = layer.load(2);
+ console.log(data)
+ data.field.orderId=orderId;
+ console.log(orderId)
+ console.log(data)
+
+ $.ajax({
+ url: baseUrl+"/businessTrip/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});
+ }
+ }
+ })
+ return false;
+ });
+ $(layero).children('.layui-layer-content').css('overflow', 'visible');
+ layui.form.render('select');
+ }
+ });
+ // layer.open({
+ // type: 2,
+ // title: '鍑哄樊鐢宠',
+ // maxmin: true,
+ // area: [top.detailWidth, top.detailHeight],
+ // shadeClose: true,
+ // content: '../../views/businessTrip/businessTrip.html',
+ // success:function(){
+ //
+ // }
+ // ,yes:function(){
+ //
+ // }
+ //
+ // });
+ }
+
+ /* 寮圭獥 - 鍏跺畠鍑哄樊 */
+ function businessOther(mData) {
+ admin.open({
+ type: 1,
+ area: '1500px',
+ title: '鍑哄樊鐢宠',
+ content: $('#editDialog3').html(),
+ success: function (layero, dIndex) {
+ form.val('detail3');
+ form.on('submit(editSubmit3)', function (data) {
+ var loadIndex = layer.load(2);
+ console.log(data)
+ data.field.orderId=orderId
+ console.log(orderId)
+ $.ajax({
+ url: baseUrl+"/businessTripOther/order/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});
+ }
+ }
+ })
+ return false;
+ });
+ $(layero).children('.layui-layer-content').css('overflow', 'visible');
+ layui.form.render('select');
+ }
+ });
+ // layer.open({
+ // type: 2,
+ // title: '鍏跺畠鍑哄樊',
+ // maxmin: true,
+ // area: [top.detailWidth, top.detailHeight],
+ // shadeClose: true,
+ // content: '../../views/businessTrip/businessTripOther.html',
+ // success: function(layero, index){
+ //
+ // }
+ // });
+ }
/* 寮圭獥 - 鏂板銆佷慨鏀� */
function showEditModel(mData) {
@@ -393,6 +559,16 @@
function layDateRender(data) {
setTimeout(function () {
layDate.render({
+ elem: '#businessStartTime\\$',
+ type: 'datetime',
+ value: data!==undefined?data['businessStartTime\\$']:null
+ });
+ layDate.render({
+ elem: '#businessEndTime\\$',
+ type: 'datetime',
+ value: data!==undefined?data['businessEndTime\\$']:null
+ });
+ layDate.render({
elem: '.layui-laydate-range'
,type: 'datetime'
,range: true
@@ -413,6 +589,32 @@
layDateRender();
// 鐪佸競鍖洪�夋嫨
+ function cascaderRenderStart() {
+ cascader.render({
+ elem: '#cascaderValStart',
+ data: citysData,
+ itemHeight: '250px',
+ filterable: true,
+ onChange: function (values, data) {
+ // console.log(values);console.log(data);
+ }
+ });
+ }
+
+ // 鐪佸競鍖洪�夋嫨
+ function cascaderRenderEnd() {
+ cascader.render({
+ elem: '#cascaderValEnd',
+ data: citysData,
+ itemHeight: '250px',
+ filterable: true,
+ onChange: function (values, data) {
+ // console.log(values);console.log(data);
+ }
+ });
+ }
+
+ // 鐪佸競鍖洪�夋嫨
function cascaderRender() {
cascader.render({
elem: '#cascaderVal',
diff --git a/src/main/webapp/views/order/order.html b/src/main/webapp/views/order/order.html
index 2817f56..1d2d858 100644
--- a/src/main/webapp/views/order/order.html
+++ b/src/main/webapp/views/order/order.html
@@ -106,6 +106,20 @@
<script type="text/html" id="operate">
<a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="edit">淇敼</a>
<a class="layui-btn layui-btn-danger layui-btn-xs btn-edit" lay-event="del">鍒犻櫎</a>
+ <a class="layui-btn icon-btn layui-btn-sm" lay-event="business">鍑哄樊</a>
+</script>
+
+<script type="text/html" id="businessListDialog">
+ <div class="layui-form admin-form">
+ <div class="model-form" style="padding: 30px">
+ <div id="businessXmlSel"></div>
+ </div>
+ <hr class="layui-bg-gray">
+ <div class="layui-form-item text-right" style="padding-right: 30px">
+ <button class="layui-btn" lay-filter="editSubmit" lay-submit="">缁х画</button>
+ <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">鍏抽棴</button>
+ </div>
+ </div>
</script>
<script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script>
@@ -224,5 +238,240 @@
</div>
</div>
</script>
+
+<!-- 琛ㄥ崟寮圭獥 -->
+<script type="text/html" id="editDialog2">
+ <form id="detail2" lay-filter="detail2" class="layui-form admin-form" style="height: 100%;overflow-y: hidden;">
+ <div class="model-form" style="height: 87%;overflow-x: hidden;overflow-y: scroll">
+ <input name="id" type="hidden">
+ <!--鍩烘湰淇℃伅-->
+ <blockquote class="layui-elem-quote" style="margin-left: 30px;padding: 8px 15px;">鍩烘湰淇℃伅</blockquote>
+ <div class="layui layui-row">
+ <div class="layui-col-md12">
+ <div class="layui-form-item">
+ <label class="layui-form-label layui-form-required">鍑哄樊浜嬬敱: </label>
+ <div class="layui-input-block">
+ <textarea class="layui-textarea" name="businessTripReasons" placeholder="璇疯緭鍏ュ娉�" maxlength="1024" autocomplete="off" lay-verify="required"></textarea>
+ </div>
+ </div>
+ </div>
+ </div>
+ <!--琛岀▼-->
+ <blockquote class="layui-elem-quote" style="margin-left: 30px;padding: 8px 15px;">琛岀▼淇℃伅</blockquote>
+ <div class="layui layui-row">
+ <div class="layui-col-md6">
+ <div class="layui-form-item">
+ <label class="layui-form-label layui-form-required">浜ら�氬伐鍏�: </label>
+ <div class="layui-input-block">
+ <select name="businessTransportation" lay-vertype="tips" lay-verify="required">
+ <option value="">璇烽�夋嫨鍖哄垎</option>
+ <option value="1">椋炴満</option>
+ <option value="2">楂橀搧</option>
+ <option value="3">鐏溅</option>
+ <option value="4">姹借溅</option>
+ <option value="5">鎽╂墭</option>
+ <option value="6">鐢佃溅</option>
+ <option value="7">鍏跺畠</option>
+ </select>
+ </div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label layui-form-required">鍗曠▼寰�杩�: </label>
+ <div class="layui-input-block">
+ <select name="businessReturn" lay-vertype="tips" lay-verify="required">
+ <option value="">璇烽�夋嫨鍖哄垎</option>
+ <option value="1">鍗曠▼</option>
+ <option value="2">寰�杩�</option>
+ </select>
+ </div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label layui-form-required">杞︾墝鍙�: </label>
+ <div class="layui-input-block">
+ <input class="layui-input" name="carNumber" placeholder="璇疯緭鍏ヨ嚜椹剧瀹惰溅杞︾墝鍙�(鑻ヤ笉鐢ㄥ垯濉啓鈥樻棤鈥�)" lay-vertype="tips" lay-verify="required">
+ </div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label layui-form-required">琛岀▼鏄庣粏鍙婂叕閲屾暟: </label>
+ <div class="layui-input-block">
+ <input class="layui-input" name="kilometers" placeholder="璇疯緭鍏ヨ嚜椹剧瀹惰溅琛岀▼鏄庣粏鍙婂叕閲屾暟(鑻ヤ笉鐢ㄥ垯濉啓鈥樻棤鈥�)" lay-vertype="tips" lay-verify="required">
+ </div>
+ </div>
+
+ </div>
+ <div class="layui-col-md6">
+ <div class="layui-form-item">
+ <label class="layui-form-label layui-form-required">鍑哄彂鍦�: </label>
+ <div class="layui-input-block">
+ <input id="cascaderValStart" class="layui-input" name="pcdStart" placeholder="璇烽�夋嫨鍑哄彂鍦�" lay-verify="required">
+ </div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label layui-form-required">鍑哄彂鍦拌缁嗗湴鍧�: </label>
+ <div class="layui-input-block">
+ <input class="layui-input" name="businessStartAddr" placeholder="璇疯緭鍏ュ嚭鍙戝湴璇︾粏鍦板潃" autocomplete="off" lay-verify="required">
+ </div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label layui-form-required">鐩殑鍦�: </label>
+ <div class="layui-input-block">
+ <input id="cascaderValEnd" class="layui-input" name="pcdEnd" placeholder="璇烽�夋嫨鍑哄彂鍦�" lay-verify="required">
+ </div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label layui-form-required">鐩殑鍦拌缁嗗湴鍧�: </label>
+ <div class="layui-input-block">
+ <input class="layui-input" name="businessEndAddr" placeholder="璇疯緭鍏ョ洰鐨勫湴璇︾粏鍦板潃" autocomplete="off" lay-verify="required">
+ </div>
+ </div>
+ <!-- <div class="layui-form-item">-->
+ <!-- <label class="layui-form-label">鍑哄樊鏃堕暱: </label>-->
+ <!-- <div class="layui-input-block">-->
+ <!-- <input class="layui-input" name="businessDuration" placeholder="璇疯緭鍏ュ嚭宸椂闀�">-->
+ <!-- </div>-->
+ <!-- </div>-->
+ <!-- <div class="layui-form-item">-->
+ <!-- <label class="layui-form-label">鍑哄樊澶╂暟: </label>-->
+ <!-- <div class="layui-input-block">-->
+ <!-- <input class="layui-input" name="businessTripDays" placeholder="璇疯緭鍏ュ嚭宸ぉ鏁�">-->
+ <!-- </div>-->
+ <!-- </div>-->
+ </div>
+ </div>
+ <!--鑷┚-->
+ <blockquote class="layui-elem-quote" style="margin-left: 30px;padding: 8px 15px;">鏃ユ湡淇℃伅</blockquote>
+ <div class="layui layui-row">
+ <div class="layui-col-md6">
+ <div class="layui-form-item">
+ <label class="layui-form-label layui-form-required">鍑哄彂鏃ユ湡: </label>
+ <div class="layui-input-block">
+ <input class="layui-input" name="businessStartTime" id="businessStartTime$" placeholder="璇疯緭鍏ュ嚭鍙戞棩鏈�" lay-vertype="tips" lay-verify="required" readonly="readonly">
+ </div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label layui-form-required">鍑哄彂鏃惰景: </label>
+ <div class="layui-input-block">
+ <select name="businessStartTimeDay" lay-vertype="tips" lay-verify="required">
+ <option value="">璇烽�夋嫨鍖哄垎</option>
+ <option value="1">涓婂崍</option>
+ <option value="2">涓嬪崍</option>
+ </select>
+ </div>
+ </div>
+ </div>
+ <div class="layui-col-md6">
+ <div class="layui-form-item">
+ <label class="layui-form-label layui-form-required">缁撴潫鏃ユ湡: </label>
+ <div class="layui-input-block">
+ <input class="layui-input" name="businessEndTime" id="businessEndTime$" placeholder="璇疯緭鍏ョ粨鏉熸棩鏈�" lay-vertype="tips" lay-verify="required" readonly="readonly">
+ </div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label layui-form-required">缁撴潫鏃惰景: </label>
+ <div class="layui-input-block">
+ <select name="businessEndTimeDay" lay-vertype="tips" lay-verify="required">
+ <option value="">璇烽�夋嫨鍖哄垎</option>
+ <option value="1">涓婂崍</option>
+ <option value="2">涓嬪崍</option>
+ </select>
+ </div>
+ </div>
+ </div>
+ </div>
+
+ <!--鍏跺畠-->
+ <blockquote class="layui-elem-quote" style="margin-left: 30px;padding: 8px 15px;">鍏跺畠淇℃伅</blockquote>
+ <div class="layui layui-row">
+ <div class="layui-col-md6">
+ <div class="layui-form-item">
+ <label class="layui-form-label layui-form-required">鍚岃浜�: </label>
+ <div class="layui-input-block">
+ <input class="layui-input" name="businessPeers" placeholder="璇疯緭鍏ュ悓琛屼汉" lay-vertype="tips" lay-verify="required">
+ </div>
+ </div>
+ </div>
+ <div class="layui-col-md6">
+ </div>
+ <div class="layui-col-md12">
+ <!-- <div class="layui-form-item">-->
+ <!-- <label class="layui-form-label">鍑哄樊澶囨敞: </label>-->
+ <!-- <div class="layui-input-block">-->
+ <!-- <input class="layui-input" name="businessNotes" placeholder="璇疯緭鍏ュ嚭宸娉�">-->
+ <!-- </div>-->
+ <!-- </div>-->
+ <div class="layui-form-item">
+ <label class="layui-form-label">澶囨敞: </label>
+ <div class="layui-input-block">
+ <textarea class="layui-textarea" name="businessNotes" placeholder="璇疯緭鍏ュ娉�" maxlength="1024" autocomplete="off"></textarea>
+ </div>
+ </div>
+ <!-- <div class="layui-form-item">-->
+ <!-- <label class="layui-form-label">绫诲瀷: </label>-->
+ <!-- <div class="layui-input-block">-->
+ <!-- <input class="layui-input" name="businessTripType" placeholder="璇疯緭鍏ョ被鍨�">-->
+ <!-- </div>-->
+ <!-- </div>-->
+
+ </div>
+ </div>
+ </div>
+ <div style="height: 10%">
+ <hr class="layui-bg-gray">
+ <div class="layui-form-item text-right" style="padding-right: 30px">
+ <button class="layui-btn" lay-filter="editSubmit2" lay-submit="">鎻愪氦</button>
+ <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">鍙栨秷</button>
+ </div>
+ </div>
+ </form>
+</script>
+
+<!-- 琛ㄥ崟寮圭獥 -->
+<script type="text/html" id="editDialog3">
+ <form id="detail3" lay-filter="detail3" class="layui-form admin-form" style="height: 100%;overflow-y: hidden;">
+ <div class="model-form" style="height: 87%;overflow-x: hidden;overflow-y: scroll">
+ <input name="id" type="hidden">
+ <!--鍩烘湰淇℃伅-->
+ <blockquote class="layui-elem-quote" style="margin-left: 30px;padding: 8px 15px;">鍩烘湰淇℃伅</blockquote>
+ <div class="layui layui-row">
+ <div class="layui-col-md12">
+ <div class="layui-form-item">
+ <label class="layui-form-label layui-form-required">鍑哄樊浜嬬敱: </label>
+ <div class="layui-input-block">
+ <textarea class="layui-textarea" name="businessTripReasons" placeholder="璇疯緭鍏ュ娉�" maxlength="1024" autocomplete="off" lay-verify="required"></textarea>
+ </div>
+ </div>
+ </div>
+ <div class="layui-col-md12">
+ <div class="layui-form-item">
+ <label class="layui-form-label layui-form-required">棰勪及閲戦: </label>
+ <div class="layui-input-block">
+ <input class="layui-input" name="amountOfMoney" placeholder="璇疯緭鍏ラ噾棰濓紙鍏冿級" lay-vertype="tips" lay-verify="required">
+ </div>
+ </div>
+ </div>
+ </div>
+ <!--鍏跺畠-->
+ <blockquote class="layui-elem-quote" style="margin-left: 30px;padding: 8px 15px;">鍏跺畠淇℃伅</blockquote>
+ <div class="layui layui-row">
+ <div class="layui-col-md12">
+ <div class="layui-form-item">
+ <label class="layui-form-label">澶囨敞: </label>
+ <div class="layui-input-block">
+ <textarea class="layui-textarea" name="businessNotes" placeholder="璇疯緭鍏ュ娉�" maxlength="1024" autocomplete="off"></textarea>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <div style="height: 10%">
+ <hr class="layui-bg-gray">
+ <div class="layui-form-item text-right" style="padding-right: 30px">
+ <button class="layui-btn" lay-filter="editSubmit3" lay-submit="">鎻愪氦</button>
+ <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">鍙栨秷</button>
+ </div>
+ </div>
+ </form>
+</script>
+
</html>
--
Gitblit v1.9.1