From 40f52f079fb44bcb0b93bdc6fc41f23275365000 Mon Sep 17 00:00:00 2001
From: whycq <10027870+whycq@user.noreply.gitee.com>
Date: 星期五, 24 十一月 2023 08:23:11 +0800
Subject: [PATCH] #
---
pages/business/goBusiness/businessTripOther.vue | 129 +++++++
pages.json | 18 +
pages/business/goBusiness/addBusinessTripOther.vue | 616 ++++++++++++++++++++++++++++++++++++
pages/business/goBusiness/businessTripOtherDetl.vue | 231 +++++++++++++
4 files changed, 992 insertions(+), 2 deletions(-)
diff --git a/pages.json b/pages.json
index 332e6fb..3d0c9a2 100644
--- a/pages.json
+++ b/pages.json
@@ -349,6 +349,24 @@
"navigationBarTitleText" : "鍏朵粬",
"enablePullDownRefresh" : false
}
+ },
+ {
+ "path" : "pages/business/goBusiness/businessTripOtherDetl",
+ "style" :
+ {
+ "navigationBarTitleText" : "璇︽儏",
+ "enablePullDownRefresh" : false,
+ "navigationStyle": "custom"
+ }
+ },
+ {
+ "path" : "pages/business/goBusiness/addBusinessTripOther",
+ "style" :
+ {
+ "navigationBarTitleText" : "娣诲姞鍑哄樊鐢宠",
+ "enablePullDownRefresh" : false
+ // "navigationStyle": "custom"
+ }
}
],
"globalStyle": {
diff --git a/pages/business/goBusiness/addBusinessTripOther.vue b/pages/business/goBusiness/addBusinessTripOther.vue
new file mode 100644
index 0000000..e6a7095
--- /dev/null
+++ b/pages/business/goBusiness/addBusinessTripOther.vue
@@ -0,0 +1,616 @@
+<template>
+ <view>
+
+ <view class="card" v-for="item in form2">
+ <!-- head -->
+ <view class="card-head flex">
+ <view class="card-head-title">{{item.title}}</view>
+ </view>
+ <!-- body -->
+ <view class="card-body flex-column" v-for="subItem in item.info" v-show="!subItem.unshow">
+ <view class="flex"><text class="card-required" v-show="subItem.required">*</text>{{subItem.subTitle}}
+ </view>
+ <view class="flex">
+ <uni-combox :candidates="orderIds" placeholder="璇烽�夋嫨椤圭洰" v-model="subItem.value"
+ @input="getOrderId(subItem.value)" v-show="subItem.inputType == 'chose'">
+ </uni-combox>
+
+ <view style="flex: 1;" v-show="subItem.inputType != 'chose'">
+
+ <input type="text" :placeholder="subItem.placeholder"
+ :placeholder-style="subItem.placeholderStyle" v-model="subItem.value"
+ :disabled="subItem.disabled" v-show="subItem.inputType != 'data'">
+ <uni-datetime-picker v-model="subItem.value" :border="false"
+ :red-color="subItem.placeholderStyle" v-if="subItem.inputType == 'data'" />
+ </view>
+
+ <view class="flex" style="width: 50rpx;" v-show="subItem.inputType == 'select'"
+ @click="showPicker(subItem.type)"><uni-icons type="right" color="#000"></uni-icons></view>
+ </view>
+
+ </view>
+
+ </view>
+
+
+ <u-picker :show="businessTransportationShow" :columns="businessTransportations"
+ @confirm="businessTransportationConfirm"></u-picker>
+ <u-picker :show="businessReturnShow" :columns="businessReturns" @confirm="businessReturnConfirm"></u-picker>
+ <u-picker :show="pcdShow" ref="uPicker" :columns="columns" @confirm="pcdStartConfirm" @change="changeHandler"
+ :defaultIndex="defaultIndex"></u-picker>
+ <u-picker :show="pcdEndShow" ref="uPicker" :columns="columns" @confirm="pcdEndConfirm" @change="changeHandler"
+ :defaultIndex="defaultIndex"></u-picker>
+ <u-picker :show="businessStartTimeDayShow" :columns="businessStartTimeDays"
+ @confirm="businessStartTimeDayConfirm"></u-picker>
+ <u-picker :show="businessEndTimeDayShow" :columns="businessEndTimeDays"
+ @confirm="businessEndTimeDayConfirm"></u-picker>
+
+ <view style="height: 120rpx;"></view>
+
+ <view class="floor">
+ <view class="default">閲嶇疆</view>
+ <view class="primary" @click="submit()">鎻愪氦</view>
+ </view>
+ </view>
+</template>
+
+<script>
+ import form from '../../../uni_modules/uview-ui/libs/config/props/form';
+ import data from '../../../static/js/citys-data.js'
+ export default {
+ data() {
+ return {
+ id: 0,
+ type: 'add',
+ orderIds: [],
+ orderId: '',
+ orderId$: '',
+ orderIdList: [],
+ year: '2021-5-3',
+ placeholderStyle: 'font-size:20rpx',
+ form: {
+ // businessTripReasons: ''
+ },
+ redColor: '',
+ columns: [],
+ defaultIndex: [],
+ citysData: data.citysData,
+ businessTransportationShow: false,
+ businessTransportations: [
+ ['椋炴満', '楂橀搧', '鐏溅', '姹借溅', '鎽╂墭', '鐢佃溅', '鍏朵粬']
+ ],
+ businessReturnShow: false,
+ businessReturns: [
+ ['鍗曠▼', '寰�杩�']
+ ],
+ pcdShow: false,
+ pcdEndShow: false,
+ pcds: data.citysData,
+ businessStartTimeDayShow: false,
+ businessStartTimeDays: [
+ ['涓婂崍', '涓嬪崍']
+ ],
+ businessEndTimeDayShow: false,
+ businessEndTimeDays: [
+ ['涓婂崍', '涓嬪崍']
+ ],
+ form2: [{
+ title: '鍩烘湰淇℃伅',
+ info: [{
+ subTitle: '椤圭洰鍚嶇О',
+ placeholder: '璇疯緭鍏ラ」鐩悕绉�',
+ placeholderStyle: 'font-size:20rpx',
+ value: '',
+ submitVal: '',
+ type: 'orderId',
+ inputType: 'chose',
+ required: true,
+ unshow: false
+ },
+ {
+ subTitle: '鍑哄樊浜嬬敱',
+ placeholder: '璇疯緭鍏ュ嚭宸簨鐢�',
+ placeholderStyle: 'font-size:20rpx',
+ value: '',
+ submitVal: '鍑哄樊浜嬬敱',
+ type: 'businessTripReasons',
+ inputType: 'input',
+ required: true
+ },
+ {
+ subTitle: '棰勪及閲戦',
+ placeholder: '璇疯緭鍏ラ浼伴噾棰�',
+ placeholderStyle: 'font-size:20rpx',
+ value: '',
+ submitVal: '棰勪及閲戦',
+ type: 'amountOfMoney',
+ inputType: 'input',
+ required: true
+ },
+ ]
+ },
+ {
+ title: '鍏朵粬淇℃伅',
+ info: [{
+ subTitle: '澶囨敞',
+ placeholder: '澶囨敞淇℃伅',
+ placeholderStyle: 'font-size:20rpx',
+ value: '',
+ inputType: 'input',
+ type: 'businessNotes'
+ }]
+ },
+ ],
+
+ }
+ },
+ onLoad(option) {
+ let _this = this
+ const eventChannel = this.getOpenerEventChannel();
+ eventChannel.on('businessTripOtherDetl', function(data) {
+ if (data.data == 'add') {
+ _this.getOrderId('')
+ }
+ })
+ // 椤圭洰璺熻釜浼犺繃鏉ョ殑
+ eventChannel.on('addType', function(data) {
+ if (data.data.comeFrom == 'saleManage') {
+ _this.form2[0].info[0].submitVal = data.data.orderId
+ _this.form2[0].info[0].unshow = true
+ _this.form2[0].info[0].required = false
+ }
+ })
+ // 淇敼椤甸潰鍥炰紶
+
+ eventChannel.on('modiGoBusinessDetl', function(data) {
+ if (data.data == 'modi') {
+ _this.form2[0].info[0].unshow = true
+ _this.form2[0].info[0].required = false
+ _this.form2[0].info[0].submitVal = data.detl.orderId
+ _this.type = 'modi'
+ _this.id = data.detl.id
+ _this.orderId$ = data.detl.orderId$
+ for (let item of _this.form2) {
+ for (let subItem of item.info) {
+ // 杈撳叆妗嗙洿鎺ヨ祴鍊�
+ if (subItem.inputType == 'input') {
+ subItem.value = data.detl[subItem.type]
+ } else if (subItem.inputType == 'select' || subItem.inputType == 'data') {
+ if (subItem.type == 'businessTransportation') {
+ subItem.value = _this.businessTransportations[0][data.detl[subItem.type] - 1]
+ subItem.submitVal = data.detl[subItem.type]
+ } else if (subItem.type == 'businessReturn') {
+ subItem.value = _this.businessReturns[0][data.detl[subItem.type]]
+ subItem.submitVal = data.detl[subItem.type]
+ } else if (subItem.type == 'businessStartTimeDay') {
+ subItem.value = _this.businessStartTimeDays[0][data.detl[subItem.type] - 1]
+ subItem.submitVal = data.detl[subItem.type]
+ } else if (subItem.type == 'businessEndTimeDay') {
+ subItem.value = _this.businessEndTimeDays[0][data.detl[subItem.type] - 1]
+ subItem.submitVal = data.detl[subItem.type]
+ } else if (subItem.type == 'pcdStart') {
+ subItem.value = data.detl.pcdStart$
+ subItem.submitVal = data.detl.pcdStart
+ } else if (subItem.type == 'pcdEnd') {
+ subItem.value = data.detl.pcdEnd$
+ subItem.submitVal = data.detl.pcdEnd
+ } else {
+ subItem.value = data.detl[subItem.type]
+ }
+ } else {
+ subItem.value = data.detl[subItem.type]
+ }
+
+ }
+ }
+ }
+
+ })
+ },
+ mounted() {
+ this.handlePcd();
+ },
+ methods: {
+ getOrderId(condition) {
+ let _this = this
+ uni.request({
+ url: `${_this.baseUrl}/orderQueryName/auth`,
+ sslVerify: false,
+ header: {
+ 'token': uni.getStorageSync('token'),
+ 'content-type': 'application/x-www-form-urlencoded;charset=UTF-8',
+ },
+ method: 'POST',
+ data: {
+ condition: condition
+ },
+ success(res) {
+ res = res.data
+ _this.orderIds = []
+ _this.orderIdList = []
+ if (res.code === 200 && res.data) {
+ _this.orderIds2 = res.data
+ for (let k of res.data) {
+ _this.orderIds.push(k.value)
+ _this.orderIdList.push(k)
+ }
+
+ }
+ }
+
+ })
+ },
+ handlePcd() {
+ let sheng_s = '110000';
+ let shi_s = '110100';
+ let qu_s = '110101';
+
+ let sheng = [];
+ let shi = [];
+ let qu = [];
+ this.pcds.forEach((sheng_item, sheng_index) => {
+ if (sheng_item.value === sheng_s) {
+ this.defaultIndex[0] = sheng_index
+ sheng_item.children.forEach((shi_item, shi_index) => {
+ if (shi_item.value === shi_s) {
+ this.defaultIndex[1] = shi_index
+ shi_item.children.forEach((qu_item, qu_index) => {
+ if (qu_item.value === qu_s) {
+ this.defaultIndex[2] = qu_index
+ }
+ qu.push(qu_item.text);
+ })
+ }
+ shi.push(shi_item.text);
+ })
+ }
+ sheng.push(sheng_item.text);
+ });
+ this.columns.push(
+ JSON.parse(JSON.stringify(sheng)),
+ JSON.parse(JSON.stringify(shi)),
+ JSON.parse(JSON.stringify(qu))
+ );
+ },
+ changeHandler(e) {
+ const {
+ columnIndex,
+ value,
+ values, // values涓哄綋鍓嶅彉鍖栧垪鐨勬暟缁勫唴瀹�
+ index,
+ // 寰俊灏忕▼搴忔棤娉曞皢picker瀹炰緥浼犲嚭鏉ワ紝鍙兘閫氳繃ref鎿嶄綔
+ picker = this.$refs.uPicker
+ } = e;
+ // console.log('娴嬭瘯鏁版嵁', e);
+ // 褰撶涓�鍒楀�煎彂鐢熷彉鍖栨椂锛屽彉鍖栫浜屽垪(鍚庝竴鍒�)瀵瑰簲鐨勯�夐」
+ if (columnIndex === 0) {
+ // console.log(value)
+ // picker涓洪�夋嫨鍣╰his瀹炰緥锛屽彉鍖栫浜屽垪瀵瑰簲鐨勯�夐」
+ this.pcds.forEach(item => {
+ if (value[0] == item.text) {
+ let shi = [];
+ let flag = item.children[0].text;
+ item.children.forEach((val, ol) => {
+ shi.push(val.text);
+ if (shi[0] == flag) { //璁剧疆榛樿寮�鍏筹紙閫夋嫨鐪佷唤鍚庤缃粯璁ゅ煄甯傦級
+ flag = '';
+ let qu = [];
+ val.children.forEach(vol => {
+ qu.push(vol.text);
+ });
+ picker.setColumnValues(2, qu);
+ }
+ });
+ picker.setColumnValues(1, shi);
+ }
+ });
+ }
+ //褰撶浜屽垪鍙樺寲鏃讹紝绗笁鍒楀搴斿彉鍖�
+ if (columnIndex === 1) {
+ this.pcds.forEach(item => {
+ if (value[0] == item.text) {
+ let shi = [];
+ item.children.forEach((val, ol) => {
+ shi.push(val.text);
+ if (value[1] == val.text) {
+ let qu = [];
+ val.children.forEach(vol => {
+ qu.push(vol.text);
+ });
+ picker.setColumnValues(2, qu);
+ }
+ });
+ }
+ });
+ }
+ },
+ submit() {
+ let subPass = true
+ for (let k of this.form2) {
+ for (let sub of k.info) {
+ console.log(sub);
+ if (sub.inputType == 'select') {
+ this.form[sub.type] = sub.submitVal
+ } else if (sub.inputType == 'chose') {
+ if (!sub.unshow) {
+ for (let odd of this.orderIdList) {
+ if (sub.value == odd.value) {
+ this.form[sub.type] = odd.id
+ }
+ }
+ } else {
+ this.form[sub.type] = sub.submitVal
+ }
+ } else {
+ this.form[sub.type] = sub.value
+ }
+
+ if (sub.required) {
+ sub.placeholderStyle = 'font-size:20rpx;'
+ if (sub.value == '' || (sub.submitVal == '' && sub.submitVal < 0)) {
+ sub.placeholderStyle = 'font-size:20rpx;color:red'
+ subPass = false
+ }
+ }
+
+ }
+ }
+ console.log(this.form);
+ // subPass 琛ㄥ崟鏄惁濉啓瀹屾垚
+ if (subPass) {
+ if (this.type == 'add') {
+ this.formAdd(this.form)
+ } else {
+ this.form['id'] = this.id
+ this.form['orderId$'] = this.orderId$
+ this.formModi(this.form)
+ }
+ }
+ },
+ formAdd(form) {
+ let _this = this
+ uni.request({
+ url: `${_this.baseUrl}/businessTripOther/add/auth`,
+ header: {
+ 'token': uni.getStorageSync('token'),
+ 'content-type': 'application/x-www-form-urlencoded;charset=UTF-8'
+ },
+ sslVerify: false,
+ data: form,
+ method: 'POST',
+ success(res) {
+ res = res.data
+ if (res.code === 200) {
+ uni.showToast({
+ title: '娣诲姞鎴愬姛',
+ icon: "none",
+ position: 'top'
+ })
+ setTimeout(() => {
+ uni.navigateBack({})
+ }, 1000)
+ } else if (res.code === 500) {
+ uni.showToast({
+ title: res.msg,
+ icon: "none",
+ position: 'top'
+ })
+ } else {
+
+ }
+ }
+
+
+ })
+ },
+ formModi(form) {
+ let _this = this
+ uni.request({
+ url: `${_this.baseUrl}/businessTripOther/update/auth`,
+ header: {
+ 'token': uni.getStorageSync('token'),
+ 'content-type': 'application/x-www-form-urlencoded;charset=UTF-8'
+ },
+ sslVerify: false,
+ data: form,
+ method: 'POST',
+ success(res) {
+ res = res.data
+ if (res.code === 200) {
+ uni.showToast({
+ title: '淇敼鎴愬姛',
+ icon: "none",
+ position: 'top'
+ })
+ setTimeout(() => {
+ uni.navigateBack({
+ delta: 2
+ })
+ }, 1000)
+ } else if (res.code === 500) {
+ uni.showToast({
+ title: res.msg,
+ icon: "none",
+ position: 'top'
+ })
+ } else {
+
+ }
+ }
+
+
+ })
+ },
+ showPicker(e) {
+ switch (e) {
+ case 'businessTransportation':
+ this.businessTransportationShow = true
+ break;
+ case 'businessReturn':
+ this.businessReturnShow = true
+ break
+ case 'pcdStart':
+ this.pcdShow = true
+ break
+ case 'pcdEnd':
+ this.pcdEndShow = true
+ break
+ case 'businessStartTimeDay':
+ this.businessStartTimeDayShow = true
+ break
+ case 'businessEndTimeDay':
+ this.businessEndTimeDayShow = true
+ break
+ }
+ },
+ businessTransportationConfirm(e) {
+ // console.log('confirm', e)
+ this.form2[1].info[0].value = e.value[0]
+ this.form2[1].info[0].submitVal = e.indexs[0] + 1
+ this.businessTransportationShow = false
+ },
+ businessReturnConfirm(e) {
+ // console.log('confirm', e)
+ this.form2[1].info[1].value = e.value[0]
+ this.form2[1].info[1].submitVal = e.indexs[0]
+ this.businessReturnShow = false
+ },
+ businessStartTimeDayConfirm(e) {
+ // console.log('confirm', e)
+ this.form2[2].info[1].value = e.value[0]
+ this.form2[2].info[1].submitVal = e.indexs[0] + 1
+ this.businessStartTimeDayShow = false
+ },
+ businessEndTimeDayConfirm(e) {
+ // console.log('confirm', e)
+ this.form2[2].info[3].value = e.value[0]
+ this.form2[2].info[3].submitVal = e.indexs[0] + 1
+ this.businessEndTimeDayShow = false
+ },
+ pcdChangeHandler(e) {
+ const {
+ columnIndex,
+ value,
+ values, // values涓哄綋鍓嶅彉鍖栧垪鐨勬暟缁勫唴瀹�
+ index,
+ // 寰俊灏忕▼搴忔棤娉曞皢picker瀹炰緥浼犲嚭鏉ワ紝鍙兘閫氳繃ref鎿嶄綔
+ picker = this.$refs.uPicker
+ } = e
+ // 褰撶涓�鍒楀�煎彂鐢熷彉鍖栨椂锛屽彉鍖栫浜屽垪(鍚庝竴鍒�)瀵瑰簲鐨勯�夐」
+ if (columnIndex === 0) {
+ // picker涓洪�夋嫨鍣╰his瀹炰緥锛屽彉鍖栫浜屽垪瀵瑰簲鐨勯�夐」
+ picker.setColumnValues(1, this.columnData[index])
+ }
+ },
+ pcdStartConfirm(e) {
+ // console.log('confirm', e)
+ let pcd = data.citysData
+ pcd[e.indexs[0]]
+ // console.log(pcd[e.indexs[0]]);
+ this.pcdShow = false
+
+ // console.log(e.indexs)
+ let shen = data.citysData[e.indexs[0]]
+ // console.log(shen.value, shen.text)
+ let shi = shen.children[e.indexs[1]]
+ // console.log(shi.value, shi.code)
+ let qu = shi.children[e.indexs[2]]
+ // console.log(qu.value, qu.code)
+ // console.log(shen.value , shi.value, qu.value);
+ this.form2[1].info[4].value = e.value[0] + '/' + e.value[1] + '/' + e.value[2]
+ this.form2[1].info[4].submitVal = shen.value + ',' + shi.value + ',' + qu.value
+ // console.log(this.form2[1].info[4].value, this.form2[1].info[4].submitVal);
+ },
+ pcdEndConfirm(e) {
+ // console.log('confirm', e)
+ let pcd = data.citysData
+ pcd[e.indexs[0]]
+ // console.log(pcd[e.indexs[0]]);
+ this.pcdEndShow = false
+
+ // console.log(e.indexs)
+ let shen = data.citysData[e.indexs[0]]
+ // console.log(shen.value, shen.text)
+ let shi = shen.children[e.indexs[1]]
+ // console.log(shi.value, shi.code)
+ let qu = shi.children[e.indexs[2]]
+ // console.log(qu.value, qu.code)
+ // console.log(shen.value , shi.value, qu.value);
+ this.form2[1].info[6].value = e.value[0] + '/' + e.value[1] + '/' + e.value[2]
+ this.form2[1].info[6].submitVal = shen.value + ',' + shi.value + ',' + qu.value
+ // console.log(this.form2[1].info[6].value, this.form2[1].info[6].submitVal);
+ }
+ }
+ }
+</script>
+
+<style scoped>
+ .card {
+ min-height: 100rpx;
+ margin: 16rpx 20rpx 0 20rpx;
+ background-color: #fff;
+ }
+
+ .card-head {
+ min-height: 60rpx;
+ width: calc(100%-5px);
+ margin-left: 4px;
+ box-shadow: -4px 0 0px #2d8cf0;
+ }
+
+ .card-head-title {
+ /* background-color: #556655; */
+ padding-left: 6px;
+ }
+
+ .card-body {
+ margin: 8rpx 8rpx 0 8rpx;
+ }
+
+ .card-required {
+ color: red;
+ padding-right: 4rpx;
+ }
+
+ .flex {
+ display: flex;
+ align-items: center;
+ }
+
+ .flex-column {
+ display: flex;
+ flex-direction: column;
+ }
+
+ .floor {
+ height: 100rpx;
+ line-height: 100rpx;
+ width: 100%;
+ background-color: #fff;
+ position: fixed;
+ bottom: 0;
+ left: 0;
+ display: flex;
+ align-items: center;
+ text-align: center;
+ letter-spacing: 10rpx;
+ }
+
+ .default {
+ flex: 2;
+ }
+
+ .default:active {
+ background-color: #eff0f1;
+ }
+
+ .primary {
+ flex: 3;
+ background-color: #2d8cf0;
+ color: #fff;
+ }
+
+ .primary:active {
+ background-color: #007dea;
+ }
+</style>
\ No newline at end of file
diff --git a/pages/business/goBusiness/businessTripOther.vue b/pages/business/goBusiness/businessTripOther.vue
index 6408114..1fce0ca 100644
--- a/pages/business/goBusiness/businessTripOther.vue
+++ b/pages/business/goBusiness/businessTripOther.vue
@@ -20,7 +20,26 @@
<u-search placeholder="杈撳叆" v-model="keyword" :clearabled="true" @custom="search()" @search="search()"></u-search>
</view>
+ <view class="main-box">
+ <view class="box" v-for="item in list" @click="goDetl(item)">
+ <view style="display: flex;">
+ <view class="box-title" style="flex: 1;">{{item.userId$}}鎻愪氦鐨勫嚭宸敵璇�</view>
+ <view class="box-time">{{item.createTime$.substring(0,10)}}</view>
+ </view>
+ <view class="box-item">鍑哄樊浜嬬敱:{{item.businessTripReasons}}</view>
+ <view class="box-item">璺熻釜椤圭洰:{{item.orderId$}}</view>
+ <view style="display: flex;">
+ <view class="box-item" style="flex: 1;">鐘舵��:{{item.status$}}</view>
+ <view class="box-settle" :style="item.bgcolor">{{item.settle$}}</view>
+ </view>
+ </view>
+ </view>
+
<u-empty v-if="true" icon="../../../static/image/emptyList.png" v-show="list.length <= 0" />
+
+ <view class="fxbtn">
+ <uni-icons type="plusempty" color="#fff" @click="add()" ></uni-icons>
+ </view>
</view>
</template>
@@ -49,7 +68,7 @@
that.falg = false
})
setTimeout(()=> {
- // this.getCsmtr1()
+ this.getBusinessTripOther()
},50)
if (this.falg) {
this.getDetail()
@@ -73,6 +92,59 @@
});
}, 1000);
},
+ getBusinessTripOther() {
+ let _this = this
+ let param = {curr:1,limit:16,dept_id: 0,user_id: 67}
+ if (_this.user.type == 'user_id') {
+ param = {curr:1,limit:16,user_id: _this.user.id}
+ } else if(_this.user.type == 'dept_id') {
+ param = {curr:1,limit:16,dept_id: _this.user.id}
+ } else {
+ param = {curr:1,limit:16}
+ }
+ uni.request({
+ url: `${_this.baseUrl}/businessTripOther/list/auth`,
+ header: {
+ 'token': uni.getStorageSync('token')
+ },
+ data: param,
+ success(res) {
+ res = res.data
+ if (res.code === 200) {
+ for (let k of res.data.records) {
+ if (k.settle == 2) {
+ k['bgcolor'] = 'color: #12d489'
+ } else if (k.settle == 1) {
+ k['bgcolor'] = 'color: #ffbd67'
+ }
+ }
+ _this.list = res.data.records
+ }
+ // _this.list =
+ }
+ })
+ },
+ goDetl(e) {
+ uni.navigateTo({
+ url: '/pages/business/goBusiness/businessTripOtherDetl',
+ success: function(res) {
+ res.eventChannel.emit('businessTripOtherDetl', {
+ data: e
+ })
+ }
+ })
+ },
+ // 鍑哄樊鐢宠
+ add() {
+ uni.navigateTo({
+ url: '/pages/business/goBusiness/addBusinessTripOther',
+ success: function(res) {
+ res.eventChannel.emit('businessTripOtherDetl', {
+ data: 'add'
+ })
+ }
+ })
+ },
back() {
uni.navigateBack({
})
@@ -87,5 +159,58 @@
</script>
<style>
-
+ .flex-row {
+ display: flex;
+ }
+
+ .flex-col {
+ display: flex;
+ flex-direction: column;
+ }
+
+ .main-box {
+ /* margin: 16rpx; */
+ /* background-color: #FFF; */
+ border-radius: 20rpx;
+ padding: 8rpx;
+ }
+
+ .box {
+ margin: 16rpx 8rpx;
+ /* height: 200px; */
+ box-shadow: 0 0 5px #dddddd;
+ background-color: #FFF;
+ padding: 16rpx 32rpx;
+ position: relative;
+ border-radius: 20rpx;
+ font-size: 24rpx;
+ color: #bdbdbd;
+ }
+
+ .box-flag {
+ position: absolute;
+ right: 0;
+ top: 10rpx;
+ background-color: #74B9E9;
+ padding: 6rpx;
+ font-size: 10rpx;
+ color: #FFF;
+ }
+
+ .box-time {
+ color: #bdbdbd;
+ }
+
+ .box-settle {
+ font-size: 26rpx;
+ /* font-weight: bold; */
+ }
+
+ .box-title {
+ font-size: 28rpx;
+ font-weight: bold;
+ color: #000;
+ }
+
+ .box-single-row {}
</style>
diff --git a/pages/business/goBusiness/businessTripOtherDetl.vue b/pages/business/goBusiness/businessTripOtherDetl.vue
new file mode 100644
index 0000000..776ba9d
--- /dev/null
+++ b/pages/business/goBusiness/businessTripOtherDetl.vue
@@ -0,0 +1,231 @@
+<template>
+ <view>
+ <view class="status_bar">
+ <!-- 杩欓噷鏄姸鎬佹爮 -->
+ </view>
+ <uni-nav-bar left-icon="left" title="璇︽儏" @clickLeft="back" @clickRight="scan" :fixed="true" :border="false"
+ rightWidth="160rpx" leftWidth="160rpx">
+ </uni-nav-bar>
+ <view class="main-box">
+ <view class="box" v-for="item in list">
+ <view class="box-single-row flex-row" v-for="rule in listRule">
+ <view style="flex: 1;">{{rule.label}}</view>
+ <view style="flex: 4;">{{item[rule.attribute]}}</view>
+ </view>
+ </view>
+ </view>
+
+ <view class="floor">
+ <view class="wran">鍒犻櫎</view>
+ <view class="default" v-show="settle == 1" @click="edit()">淇敼</view>
+ <view class="primary" @click="submit()">{{subTitle}}</view>
+ </view>
+ </view>
+</template>
+
+<script>
+ export default {
+ data() {
+ return {
+ settle: 1,
+ subTitle: '鐢宠鎶ラ攢',
+ list: [{
+ businessTripReasons: '娌熼�氱珛搴撲簨瀹�',
+ businessTransportation$: '浜ら�氬伐鍏�',
+ businessStartAddr$: '鍑哄彂鍦�',
+ businessEndAddr$: '鐩殑鍦�',
+ businessStartTimeDay$: '鍑哄彂鏃ユ湡',
+ businessEndTimeDay$: '缁撴潫鏃ユ湡',
+ businessDuration$: '鍑哄樊鏃堕暱',
+ businessTripDays$: '鍑哄樊澶╂暟',
+ businessPeers: '鍚岃浜�',
+ userId$: '鐢宠浜�',
+ orderId: '璺熻釜椤圭洰',
+ updateTime$: '鏇存柊鏃堕棿',
+ updateId$: '鏇存柊浜哄憳',
+ settle: 1,
+ settle$: '鐢宠閫氳繃',
+ businessNotes: '鍑哄樊澶囨敞',
+ createTime$: '2023-11-06 08:51:24',
+ bgcolor: 'color:#24ab59'
+ }, ],
+ listRule: [
+ {
+ label: "鍑哄樊浜嬬敱",
+ attribute: "businessTripReasons",
+ },
+ {
+ label: "閲戦",
+ attribute: "amountOfMoney$",
+ },
+ {
+ label: "鐢宠浜�",
+ attribute: "userId$",
+ },
+ {
+ label: "鎵�灞為儴闂�",
+ attribute: "deptId$",
+ },
+ {
+ label: "璺熻釜椤圭洰",
+ attribute: "orderId$",
+ },
+ {
+ label: "杩涘害",
+ attribute: "settle$",
+ },
+
+ {
+ label: "鐘舵��",
+ attribute: "status$",
+ },
+ {
+ label: "鍑哄樊澶囨敞",
+ attribute: "businessNotes",
+ },
+ {
+ label: "鏇存柊鏃堕棿",
+ attribute: "updateTime$",
+ },
+ {
+ label: "鏇存柊浜哄憳",
+ attribute: "updateId$",
+ },
+ ],
+ }
+ },
+ onLoad(option) {
+ let _this = this
+ _this.list = []
+ const eventChannel = this.getOpenerEventChannel();
+ eventChannel.on('businessTripOtherDetl', function(data) {
+ _this.list.push(data.data)
+ _this.settle = data.data.settle
+ if (data.data.settle == 1) {
+ _this.subTitle = '瀹℃壒'
+ }
+ })
+ },
+ methods: {
+ submit() {
+ if (this.settle == 1) {
+ this.approval()
+ } else {
+ this.reimburse()
+ }
+ },
+ // 瀹℃壒
+ approval() {
+ let _this = this
+ uni.request({
+ url: `${_this.baseUrl}/businessTripOther/approval/auth`,
+ header: {
+ 'token': uni.getStorageSync('token'),
+ 'content-type': 'application/x-www-form-urlencoded;charset=UTF-8'
+ },
+ method: 'POST',
+ sslVerify: false,
+ data: {planId: _this.list[0].id},
+ success(res) {
+ res = res.data
+ // console.log(res);
+ if (res.code === 200) {
+ uni.showToast({title: res.msg, icon: "none", position: 'top'})
+ setTimeout(()=>{
+ uni.navigateBack({})
+ },1000)
+ } else if (res.code === 500) {
+ uni.showToast({title: res.msg, icon: "none", position: 'top'})
+ }
+ }
+ })
+ },
+ // 鐢宠鎶ラ攢
+ reimburse() {
+ let _this = this
+ uni.navigateTo({
+ url: '/pages/business/goBusiness/modiReimburseOnlineDetl',
+ success: function(res) {
+ res.eventChannel.emit('reimburseOnlineDetl', {
+ data: 'add2',
+ detl: _this.list[0]
+ })
+ }
+ })
+ },
+ edit() {
+ let _this = this
+ uni.navigateTo({
+ url: '/pages/business/goBusiness/addBusinessTripOther',
+ success: function(res) {
+ res.eventChannel.emit('modiGoBusinessDetl', {
+ data: 'modi',
+ detl: _this.list[0]
+ })
+ }
+ })
+ },
+ back() {
+ uni.navigateBack({})
+ },
+ scan() {
+
+ }
+ }
+ }
+</script>
+
+<style>
+ .main-box {
+ border-radius: 20rpx;
+ padding: 8rpx;
+ }
+
+ .box {
+ margin: 16rpx 8rpx;
+ /* height: 200px; */
+ box-shadow: 0 0 5px #dddddd;
+ background-color: #FFF;
+ padding: 16rpx 32rpx;
+ position: relative;
+ border-radius: 20rpx;
+ font-size: 24rpx;
+ /* color: #bdbdbd; */
+ }
+ .box-single-row {
+ display: flex;
+ }
+
+ .floor {
+ height: 100rpx;
+ line-height: 100rpx;
+ width: 100%;
+ background-color: #fff;
+ position: fixed;
+ bottom: 0;
+ left: 0;
+ display: flex;
+ align-items: center;
+ text-align: center;
+ letter-spacing: 10rpx;
+ }
+ .default {
+ flex: 2;
+ }
+ .default:active {
+ background-color: #eff0f1;
+ }
+ .wran {
+ flex: 1;
+ background-color: #ff5722;
+ color: #fff;
+ }
+ .primary {
+ flex: 2;
+ background-color: #2d8cf0;
+ color: #fff;
+ }
+ .primary:active {
+ background-color: #007dea;
+ }
+</style>
\ No newline at end of file
--
Gitblit v1.9.1