From e8e0e31be5f27e657de6f07f57a20fdf70e9bb9b Mon Sep 17 00:00:00 2001
From: liukangdong <898885815@qq.com>
Date: 星期一, 17 六月 2024 18:12:20 +0800
Subject: [PATCH] ''
---
admin/src/components/operation/OperCarUseBookParamWindow.vue | 433 +++++++++++++++++++++++++++++++++++++++++++-----
admin/src/api/business/carUseBook.js | 8
admin/src/components/common/GlobalWindow.vue | 2
h5/pages/staff/index.vue | 9
h5/pages/staff/vehicle/shinei.vue | 2
h5/manifest.json | 5
admin/.env.development | 2
admin/src/views/operation/serviceCar/apprRecord.vue | 2
admin/src/store/index.js | 49 ++--
9 files changed, 433 insertions(+), 79 deletions(-)
diff --git a/admin/.env.development b/admin/.env.development
index b685bb8..19f2ddf 100644
--- a/admin/.env.development
+++ b/admin/.env.development
@@ -1,4 +1,4 @@
# 寮�鍙戠幆澧冮厤缃�
NODE_ENV = 'development'
-VUE_APP_API_URL = 'http://localhost:10010'
+VUE_APP_API_URL = 'http://192.168.0.173/admin_interface'
diff --git a/admin/src/api/business/carUseBook.js b/admin/src/api/business/carUseBook.js
index 93bedd0..5fea156 100644
--- a/admin/src/api/business/carUseBook.js
+++ b/admin/src/api/business/carUseBook.js
@@ -51,3 +51,11 @@
params
})
}
+// 鐢ㄨ溅鐢宠鎻愪氦
+export const carUseBookCraete = (data) => {
+ return request.post('/visitsAdmin/cloudService/business/carUseBook/create', data)
+}
+// 鏌ヨ杞﹁締 棰勭害璁板綍
+export const carUseBookList = (data) => {
+ return request.post('/visitsAdmin/cloudService/business/carUseBook/carUseBookList', data)
+}
diff --git a/admin/src/components/common/GlobalWindow.vue b/admin/src/components/common/GlobalWindow.vue
index b3c01bd..64bcabe 100644
--- a/admin/src/components/common/GlobalWindow.vue
+++ b/admin/src/components/common/GlobalWindow.vue
@@ -8,7 +8,7 @@
:close-on-press-escape="false"
:wrapper-closable="false"
:append-to-body="true"
- :modal="false"
+ :modal="true"
@close="close"
>
<div slot="title" class="window__header">
diff --git a/admin/src/components/operation/OperCarUseBookParamWindow.vue b/admin/src/components/operation/OperCarUseBookParamWindow.vue
index ea7dd6a..4aeb788 100644
--- a/admin/src/components/operation/OperCarUseBookParamWindow.vue
+++ b/admin/src/components/operation/OperCarUseBookParamWindow.vue
@@ -7,39 +7,65 @@
@confirm="confirm"
>
<div class="modal_wrap">
- <el-form :model="form" ref="form" class="el_form" :rules="rules">
+ <el-form :model="form" ref="formRef" class="el_form" :rules="rules">
<el-form-item label="鐢ㄨ溅鑼冨洿" prop="type">
- <el-radio v-model="form.type" :label="0">瀹ゅ唴鐢ㄨ溅</el-radio>
- <el-radio v-model="form.type" :label="1">瀹ゅ鐢ㄨ溅</el-radio>
+ <el-radio v-model="form.type" style="width: 80px;" :label="0">甯傚唴鐢ㄨ溅</el-radio>
+ <el-radio v-model="form.type" style="width: 80px;" :label="1">甯傚鐢ㄨ溅</el-radio>
</el-form-item>
<el-form-item label="閫夋嫨杞﹁締" prop="carId">
<el-select v-model="form.carId" placeholder="閫夋嫨杞﹁締">
<el-option
v-for="item in carsList"
- :key="item.carId"
- :label="item.carCode"
- :value="item.carId"
+ :key="item.id"
+ :label="item.code"
+ :value="item.id"
>
</el-option>
</el-select>
</el-form-item>
- <el-form-item label="鐢ㄨ溅鏃堕棿" prop="sortnum">
- <div></div>
- <div class="sel_btn" @click="openTime">閫夋嫨鏃堕棿</div>
+ <el-form-item label="鐢ㄨ溅鏃堕棿" prop="startTime">
+ <div
+ v-if="form.startTime && form.endTime"
+ class="sel_btn text"
+ @click="openTime"
+ >
+ {{ form.startTime }}-{{ form.endTime }}
+ </div>
+ <div v-else class="sel_btn" @click="openTime">閫夋嫨鏃堕棿</div>
</el-form-item>
- <el-form-item label="棰勮鍑哄彂鏃堕棿" prop="sortnum">
+ <el-form-item label="棰勮鍑哄彂鏃堕棿" prop="planUseDate">
<el-date-picker
- v-model="form.a"
+ :disabled="!form.startTime"
+ v-model="form.planUseDate"
+ format="yyyy-MM-dd HH:mm:ss"
+ value-format="yyyy-MM-dd HH:mm:ss"
+ :picker-options="pickerOptions"
+ default-time="08:00:00"
type="datetime"
placeholder="閫夋嫨鏃ユ湡鏃堕棿"
>
</el-date-picker>
</el-form-item>
- <el-form-item label="鐩殑鍦�" prop="sortnum">
+ <el-form-item label="鐩殑鍦�" prop="addr">
<el-input v-model="form.addr" placeholder="璇疯緭鍏ュ唴瀹�"></el-input>
</el-form-item>
- <el-form-item label="涔樿溅浜哄憳" prop="sortnum"> </el-form-item>
- <el-form-item label="鐢ㄨ溅浜嬬敱" prop="sortnum">
+ <el-form-item label="涔樿溅浜哄憳" prop="memberIds">
+ <el-select
+ v-model="form.memberIds"
+ multiple
+ filterable
+ placeholder="璇烽�夋嫨"
+ >
+ <el-option
+ v-for="item in memberList"
+ :key="item.id"
+ :label="item.name"
+ :value="item.id"
+ >
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="鐢ㄨ溅浜嬬敱" prop="content">
<el-input
v-model="form.content"
type="textarea"
@@ -48,16 +74,23 @@
></el-input>
</el-form-item>
</el-form>
- <div class="tip_wrap">111</div>
+ <div class="tip_wrap">
+ <h1>娉ㄦ剰浜嬮」锛�</h1>
+ <div>1銆佸叕鍙歌溅杈嗗鍑洪渶鍔炵悊鐢ㄨ溅鐢宠琛紝缁忔壒鍑嗗悗鏂瑰彲澶栧嚭锛堝�熷嚭锛夈��</div>
+ <div>2銆佸競澶栫敤杞﹂渶棰嗗瀹℃牳銆�</div>
+ <div>3銆佸�熷嚭杞﹁締蹇呴』閬靛畧浜ら�氳鍒欙紝瀹夊叏琛岄┒銆傚浜庤溅杈嗗彂鐢熶氦閫氭剰澶栵紝瀵瑰綋浜嬩汉鍙婄涓夋柟閫犳垚浜鸿韩浼ゅ鍙婃崯澶憋紝鍏徃鍙互鍗忓姪澶勭悊淇濋櫓鍏徃璧斿伩鐩稿叧浜嬪疁锛屼絾涓嶆壙鎷呬换浣曡矗浠诲拰璐圭敤銆�</div>
+ <div>4銆佸叕鍙稿�熺粰鐢宠浜虹敤杞︼紝鐢宠鍊熻溅浜轰负绗竴璐d换浜猴紝涓嶅厑璁歌浆鍊熺粰鍏朵粬浜轰娇鐢紝鑻ヨ鍊熺粰浠栦汉浣跨敤銆傝矗浠讳汉瑕佹壙鎷呭叏閮ㄨ矗浠汇��</div>
+ </div>
</div>
+ <!-- 甯傚唴 -->
<el-dialog
title="閫夋嫨鐢ㄨ溅鏃堕棿"
:visible.sync="isShowTime"
append-to-body
width="600px"
>
- <el-form :model="form" ref="form" class="el_form" :rules="rules">
+ <el-form :model="form" ref="modalRef" class="el_form" :rules="rules">
<el-form-item label="鐢ㄨ溅鏃ユ湡" prop="dateDay">
<el-date-picker
v-model="form.dateDay"
@@ -80,12 +113,92 @@
@click="datetimeClick(item, i)"
v-for="(item, i) in timeList"
:key="i"
- >{{ item.startHours }}-{{ item.endHours }}</div
>
+ {{ item.startHours }}-{{ item.endHours }}
+ </div>
</div>
</div>
</el-form-item>
</el-form>
+ <div class="color_op">
+ <div class="item" v-for="item in colorOptions" :key="item.name">
+ <div class="box" :style="{ background: item.color }"></div>
+ <div class="">{{ item.name }}</div>
+ </div>
+ </div>
+ <span slot="footer" class="dialog-footer">
+ <div>宸查�夋嫨锛歿{ selDatetime }}</div>
+ <div class="btn" @click="subTime">纭鏃堕棿</div>
+ </span>
+ </el-dialog>
+ <!-- 甯傚 -->
+ <el-dialog
+ title="閫夋嫨鐢ㄨ溅鏃堕棿"
+ :visible.sync="isShowShiwai"
+ append-to-body
+ width="600px"
+ >
+ <el-form :model="form" ref="modalRef" class="el_form" :rules="rules">
+ <el-form-item label="鐢ㄨ溅寮�濮嬫椂闂�" prop="startTime">
+ <el-date-picker
+ v-model="form.startTime"
+ format="yyyy-MM-dd HH:mm"
+ value-format="yyyy-MM-dd HH:mm:ss"
+ type="datetime"
+ :picker-options="pickerOptions"
+ default-time="08:00:00"
+ @change="seletedShiwaiDate"
+ >
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item label="鐢ㄨ溅缁撴潫鏃堕棿" prop="endTime">
+ <el-date-picker
+ v-model="form.endTime"
+ format="yyyy-MM-dd HH:mm"
+ value-format="yyyy-MM-dd HH:mm:ss"
+ type="datetime"
+ :picker-options="pickerOptions"
+ default-time="08:00:00"
+ @change="seletedShiwaiDate"
+ >
+ </el-date-picker>
+ </el-form-item>
+ </el-form>
+ <div class="have_info" v-if="info && info.length > 0">
+ <div class="tit">鎮ㄧ敵璇风殑鐢ㄨ溅鏃舵宸叉湁杞﹁締棰勭害</div>
+ <div class="content" v-for="(item, i) in info" :key="i">
+ <div class="card">{{ item.carCode }}</div>
+ <div class="line">
+ <span>鐢ㄨ溅鏃舵</span>
+ <span>
+ {{ item.startTime.slice(5, 16) }}鑷硔{
+ item.endTime.slice(5, 16)
+ }}</span
+ >
+ </div>
+ <div class="line">
+ <span>鐩殑鍦�</span>
+ <span>{{ item.addr }}</span>
+ </div>
+ <div class="line">
+ <span>涔樿溅浜烘暟</span>
+ <span>{{ item.memberIds.split(",").length }}浜�</span>
+ </div>
+ <div class="line">
+ <text>鐢ㄨ溅浜嬬敱</text>
+ <text>{{ item.content }}</text>
+ </div>
+ <div class="line">
+ <span>鐢宠浜�</span>
+ <span>{{ item.memberName }} {{ item.memberMobile }}</span>
+ </div>
+ </div>
+ </div>
+
+ <span slot="footer" class="dialog-footer">
+ <div>宸查�夋嫨锛歿{ selDatetime }}</div>
+ <div class="btn" @click="subTime">纭鏃堕棿</div>
+ </span>
</el-dialog>
</GlobalWindow>
</template>
@@ -95,7 +208,8 @@
import GlobalWindow from '@/components/common/GlobalWindow'
import { allList } from '@/api/business/member'
import { allList as getCarList } from '@/api/business/cars'
-import { carCanReservationDate } from '@/api/business/carUseBook'
+import { carCanReservationDate, carUseBookCraete, carUseBookList } from '@/api/business/carUseBook'
+import { findTypeMemberInfo } from '@/api/business/memberCard'
export default {
name: 'OperCarUseBookParamWindow',
extends: BaseOpera,
@@ -104,18 +218,45 @@
return {
// 琛ㄥ崟鏁版嵁
isShowTime: false,
+ isShowShiwai: false,
memberList: [],
timeList: [],
+ selDatetime: '',
+ colorOptions: [
+ { color: this.$store.state.primaryColor, name: '宸查�夋嫨' },
+ { color: '#F7F7F7', name: '鍙绾�' },
+ { color: '#cccccc', name: '涓嶅彲棰勭害' }
+ ],
+ info: [],
+
carsList: [],
form: {
- type: 0
+ type: 0,
+ memberIds: []
+ },
+ pickerOptions: {
+ disabledDate: (time) => {
+ if (this.form.startTime && this.form.endTime) {
+ const minTime = new Date(this.form.startTime).getTime() - 8.64e7
+ return (
+ time.getTime() < minTime
+ )
+ } else {
+ return time.getTime() < Date.now() - 8.64e7
+ }
+ }
},
// 楠岃瘉瑙勫垯
rules: {
- name: [
- { required: true, message: '璇疯緭鍏ュ悕绉�' }
- ]
+ type: [{ required: true, message: '璇烽�夋嫨', trigger: 'change' }],
+ carId: [{ required: true, message: '璇烽�夋嫨', trigger: 'change' }],
+ startTime: [{ required: true, message: '璇烽�夋嫨', trigger: 'change' }],
+ endTime: [{ required: true, message: '璇烽�夋嫨', trigger: 'change' }],
+ planUseDate: [{ required: true, message: '璇烽�夋嫨', trigger: 'change' }],
+ addr: [{ required: true, message: '璇疯緭鍏�', trigger: 'blur' }],
+ memberIds: [{ type: 'array', required: true, message: '璇烽�夋嫨', trigger: 'change' }],
+ content: [{ required: true, message: '璇疯緭鍏�', trigger: 'blur' }]
}
}
},
@@ -125,54 +266,161 @@
methods: {
open () {
this.title = '鏂板缓鍏姟杞︾敤杞︾敵璇�'
+ this.form = {
+ type: 0,
+ memberIds: []
+ }
+ this.$nextTick(() => {
+ this.$refs.formRef.clearValidate()
+ })
this.visible = true
+ },
+ confirm () {
+ const form = JSON.parse(JSON.stringify(this.form))
+ this.$refs.formRef.validate((valid) => {
+ const memberList = []
+ form.memberIds.forEach(i => {
+ this.memberList.forEach(item => {
+ if (i === item.id) {
+ memberList.push(item)
+ }
+ })
+ })
+ form.memberNames = memberList.map(i => i.name).join(',')
+ form.memberList = memberList
+ form.memberIds = form.memberIds.join(',')
+ if (valid) {
+ carUseBookCraete({
+ ...form
+ }).then(res => {
+ this.visible = false
+ this.$emit('success')
+ })
+ }
+ })
},
openTime () {
const { form } = this
- if(!form.carId){
- this.$tip.warning('璇峰厛閫夋嫨杞﹁締')
+ if (!form.carId) {
+ return this.$tip.error('璇峰厛閫夋嫨杞﹁締')
}
- this.isShowTime = true
+ if (this.form.type === 0) {
+ this.isShowTime = true
+ } else {
+ this.isShowShiwai = true
+ }
+ },
+ subTime () {
+ if (this.form.type === 0) {
+ const selTimeList = this.timeList.filter(i => i.checked == '1')
+ if (selTimeList.length === 0) {
+ return this.$tip.error('璇峰厛閫夋嫨鐢ㄨ溅鏃堕棿娈�')
+ }
+ this.$set(this.form, 'startTime', selTimeList[0].startTime)
+ this.$set(this.form, 'endTime', selTimeList[selTimeList.length - 1].endTime)
+ this.isShowTime = false
+ this.$set(this.form, 'planUseDate', null)
+ this.$forceUpdate()
+ } else {
+ this.$refs.modalRef.validate((valid) => {
+ this.isShowShiwai = false
+ })
+ }
+ },
+ datetimeClick (item, index) {
+ if (item.isUse == '1') return
+ const { timeList } = this
+ const selTimeList = timeList.filter(i => i.checked == '1')
+ if (selTimeList.length === 0) {
+ this.timeList.forEach((ite, i) => {
+ if (i === index) {
+ ite.checked = '1'
+ this.$forceUpdate()
+ }
+ })
+ } else {
+ const findIndex = selTimeList.findIndex(i => i.index === index)
+ console.log('findIndex', findIndex)
+ if (findIndex === -1) {
+ const startNum = index - selTimeList[0].index
+ const endNum = index - selTimeList[selTimeList.length - 1].index
+ if (startNum == 1 || startNum == -1 || endNum == 1 || endNum == -1) {
+ console.log('鐩搁偦')
+ item.checked = true
+ this.$forceUpdate()
+ } else {
+ return this.$tip.error('璇烽�夋嫨鐩搁偦鐨勬椂闂存')
+ }
+ } else {
+ if (index === selTimeList[0].index || index === selTimeList[selTimeList.length - 1].index) {
+ item.checked = false
+ this.$forceUpdate()
+ } else {
+ return this.$tip.error('璇峰厛鍙栨秷鏈�澶栧眰鐨勬椂闂存')
+ }
+ }
+ }
+ const selTimeLists = this.timeList.filter(i => i.checked == '1')
+ // console.log('selTimeList', selTimeList);
+ if (selTimeLists.length === 0) {
+ this.selDatetime = ''
+ } else {
+ this.selDatetime = this.form.dateDay.slice(5) + ' ' + selTimeLists[0].startHours + '-' + selTimeLists[selTimeLists.length - 1].endHours
+ }
},
seletedDate (e) {
- console.log(e)
- const item = e.value[0]
- this.$set(this.param, 'carCode', item.code)
- this.$set(this.param, 'carId', item.id)
- if (this.param.carId && this.param.queryDate) {
- this.gettimes()
+ this.gettimes()
+ },
+ seletedShiwaiDate () {
+ const { form } = this
+ if (form.startTime && form.endTime) {
+ this.selDatetime = form.startTime + '-' + form.endTime
+ carUseBookList({
+ carId: form.carId,
+ startTime: form.startTime,
+ endTime: form.endTime
+ }).then(res => {
+ this.info = res || []
+ })
}
- this.isShowCar = false
},
gettimes () {
- const { param } = this
+ const { form } = this
carCanReservationDate({
- dateDay: param.queryDate,
- carId: param.carId
+ dateDay: form.dateDay,
+ carId: form.carId
}).then(res => {
- if (res.code === 200) {
- this.timeList = res.data || []
- this.timeList.forEach((i, j) => {
- i.checked = '0',
- i.index = j
- })
- }
+ this.timeList = res || []
+ this.timeList.forEach((i, j) => {
+ i.checked = '0',
+ i.index = j
+ })
})
},
initData () {
getCarList({
type: 1
}).then(res => {
- this.carsList = res.data || []
+ this.carsList = res
+ })
+ findTypeMemberInfo({
+ type: '2'
+ }).then(res => {
+ this.memberList = res || []
})
}
}
}
</script>
-<style lang="scss" scoped>
+<style scoped lang="scss">
+@import "@/assets/style/variables.scss";
+div{
+ box-sizing: border-box;
+}
.modal_wrap {
display: flex;
+ padding: 20px 0;
.el_form {
flex: 1;
.sel_btn {
@@ -181,16 +429,109 @@
border-radius: 4px;
border: 1px solid #dcdfe6;
margin-top: 32px;
- text-align: right;
+ text-align: left;
+ padding-left: 12px;
color: #999999;
padding-right: 12px;
box-sizing: border-box;
cursor: pointer;
}
+ .text {
+ color: #606266;
+ }
}
.tip_wrap {
- width: 460px;
+ flex: 1;
margin-left: 30px;
+ padding: 0 30px;
+ h1{
+ margin-bottom: 20px;
+ }
+ div{
+ line-height: 28px;
+ }
+ }
+}
+.time_list {
+ display: flex;
+ justify-content: space-between;
+ flex-wrap: wrap;
+ .item {
+ width: 154px;
+ height: 32px;
+ line-height: 32px;
+ text-align: center;
+ background: #f7f7f7;
+ border-radius: 4px;
+ margin-bottom: 10px;
+ }
+ .active {
+ background-color: $primary-color;
+ color: #fff;
+ }
+ .disable {
+ background-color: #cccccc;
+ color: #999999;
+ }
+}
+.color_op {
+ display: flex;
+ .item {
+ display: flex;
+ align-items: center;
+ margin-right: 10px;
+ .box {
+ margin-right: 4px;
+ width: 16px;
+ height: 16px;
+ }
+ }
+}
+.dialog-footer {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ .btn {
+ height: 42px;
+ line-height: 42px;
+ background-color: $primary-color;
+ color: #fff;
+ width: 120px;
+ text-align: center;
+ }
+}
+.have_info {
+ padding: 0 0 120px;
+ .tit {
+ color: #ed4545;
+ margin: 20px 0 12px;
+ }
+ .content {
+ background: #f7f7f7;
+ border-radius: 8px;
+ padding: 15px 15px 5px;
+ margin-bottom: 10px;
+ .card {
+ margin-bottom: 15px;
+ font-weight: 500;
+ font-size: 16px;
+ color: #222222;
+ background: #f7f7f7;
+ padding: 0;
+ }
+ .line {
+ display: flex;
+ margin-bottom: 10px;
+ text {
+ &:nth-of-type(1) {
+ width: 80px;
+ color: #888888;
+ }
+ &:nth-of-type(2) {
+ flex: 1;
+ }
+ }
+ }
}
}
</style>
diff --git a/admin/src/store/index.js b/admin/src/store/index.js
index c97ca53..c66e8e3 100644
--- a/admin/src/store/index.js
+++ b/admin/src/store/index.js
@@ -5,6 +5,7 @@
const state = {
// 鐧诲綍鐢ㄦ埛淇℃伅
userInfo: null,
+ primaryColor: '#2080f7',
// 棣栭〉
homePage: null,
// 鑿滃崟
@@ -14,10 +15,10 @@
// 鏄惁鏀惰捣
collapse: false
},
- //tags鏁扮粍
- tags:[],
- //tagsview鏍囩鏄剧ず闅愯棌
- isCollapse:false
+ // tags鏁扮粍
+ tags: [],
+ // tagsview鏍囩鏄剧ず闅愯棌
+ isCollapse: false
}
const mutations = {
@@ -51,35 +52,35 @@
state.menuData.list = []
},
// tags
- pushtags(state,val){
- //濡傛灉绛変簬-1璇存槑tabs涓嶅瓨鍦ㄩ偅涔堟彃鍏ワ紝鍚﹀垯浠�涔堥兘涓嶅仛
- //findindex鎵捐鏍囷紝寰幆鍒ゆ柇涓�涓嬶紝濡傛灉绛変簬閭d箞灏变唬琛ㄦ湁鐩稿悓鐨勶紝灏变笉蹇呮坊鍔狅紝濡傛灉鎵句笉鍒伴偅灏辨槸-1.灏辨坊鍔�
- let result = state.tags.findIndex(item => item.index === val.index)
+ pushtags (state, val) {
+ // 濡傛灉绛変簬-1璇存槑tabs涓嶅瓨鍦ㄩ偅涔堟彃鍏ワ紝鍚﹀垯浠�涔堥兘涓嶅仛
+ // findindex鎵捐鏍囷紝寰幆鍒ゆ柇涓�涓嬶紝濡傛灉绛変簬閭d箞灏变唬琛ㄦ湁鐩稿悓鐨勶紝灏变笉蹇呮坊鍔狅紝濡傛灉鎵句笉鍒伴偅灏辨槸-1.灏辨坊鍔�
+ const result = state.tags.findIndex(item => item.index === val.index)
if (result === -1) {
- state.tags.push({...val, keepAlive: false})
+ state.tags.push({ ...val, keepAlive: false })
} else {
- state.tags[result]= {...val, keepAlive: true}
+ state.tags[result] = { ...val, keepAlive: true }
}
// result === -1 ? state.tags.push(val) : (state.tags[result]==val)
},
- //鍏抽棴鏍囩
- closeTab(state, val) {
- //鍚屼笂锛屾壘瑙掓爣锛岀劧鍚庣敤瑙掓爣鐨勪綅缃搴斿垹闄や竴浣嶃�俿plice锛氳繖鏄暟缁勭殑鍒犻櫎鏂规硶
- let result = state.tags.findIndex(item => item.index === val.index)
+ // 鍏抽棴鏍囩
+ closeTab (state, val) {
+ // 鍚屼笂锛屾壘瑙掓爣锛岀劧鍚庣敤瑙掓爣鐨勪綅缃搴斿垹闄や竴浣嶃�俿plice锛氳繖鏄暟缁勭殑鍒犻櫎鏂规硶
+ const result = state.tags.findIndex(item => item.index === val.index)
state.tags.splice(result, 1)
},
- //鍏抽棴鎵�鏈塼agsview鏍囩
- cleartagsview(state,val){
- //娓呯┖鏁扮粍
- state.tags=[]
- //璺宠浆鍒伴椤�,val鎺ュ彈浼犺繃鏉ョ殑褰撳墠璺敱
- if(val !== "/index"){
- router.push({path:"/index"})
+ // 鍏抽棴鎵�鏈塼agsview鏍囩
+ cleartagsview (state, val) {
+ // 娓呯┖鏁扮粍
+ state.tags = []
+ // 璺宠浆鍒伴椤�,val鎺ュ彈浼犺繃鏉ョ殑褰撳墠璺敱
+ if (val !== '/index') {
+ router.push({ path: '/index' })
}
},
- //鏀瑰彉tagsview鏄剧ず闅愯棌
- changeisshow(state){
- state.isCollapse=!state.isCollapse
+ // 鏀瑰彉tagsview鏄剧ず闅愯棌
+ changeisshow (state) {
+ state.isCollapse = !state.isCollapse
}
}
const actions = {}
diff --git a/admin/src/views/operation/serviceCar/apprRecord.vue b/admin/src/views/operation/serviceCar/apprRecord.vue
index 7667005..c204187 100644
--- a/admin/src/views/operation/serviceCar/apprRecord.vue
+++ b/admin/src/views/operation/serviceCar/apprRecord.vue
@@ -110,7 +110,7 @@
</pagination>
</template>
<OperaCarUseBookWindow ref="OperaDetailsWindow" @success="handlePageChange"/>
- <OperaCarUseBookParamWindow ref="OperaParamWindow" @success="handlePageChange"/>
+ <OperaCarUseBookParamWindow ref="OperaParamWindow" @success="search"/>
</TableLayout>
</template>
diff --git a/h5/manifest.json b/h5/manifest.json
index 1d56a23..f9d991e 100644
--- a/h5/manifest.json
+++ b/h5/manifest.json
@@ -81,7 +81,7 @@
"h5" : {
"router" : {
"mode" : "hash",
- "base" : "/"
+ "base" : "./"
},
// "base" : "/h5/"
"devServer" : {
@@ -97,7 +97,8 @@
"^/api" : "" // 閲嶅啓鍦板潃锛屽鏋滃疄闄呮帴鍙d腑鏄笉甯�/dev-api锛岄渶瑕佸皢杩欎釜鍓嶇紑缃┖锛屽洜涓鸿繖涓墠缂�鍙槸涓轰簡璇嗗埆鐢紝璇嗗埆瀹屼箣鍚庡氨娌$敤浜�
}
}
- }
+ },
+ "https" : false
}
}
}
diff --git a/h5/pages/staff/index.vue b/h5/pages/staff/index.vue
index aa3b76f..c1748bf 100644
--- a/h5/pages/staff/index.vue
+++ b/h5/pages/staff/index.vue
@@ -1,8 +1,9 @@
<template>
<view class="main_app">
<view class="title_wrap">
- <view class="name">{{ userInfo.realname || '' }}锛屾杩庣櫥褰曪綖</view>
- <view class="btn" @click="loginOut">閫�鍑虹櫥褰�</view>
+ <view class="name" v-if="userInfo.realname">{{ userInfo.realname || '' }}锛屾杩庣櫥褰曪綖</view>
+ <view class="name" v-else>璇峰厛鐧诲綍</view>
+ <view class="btn" @click="loginOut">{{ userInfo.realname ? '閫�鍑虹櫥褰�' : '鍘荤櫥褰�' }}</view>
</view>
<view class="banner_wrap">
<view class="h1">瀹夋嘲鐗╂祦</view>
@@ -87,7 +88,9 @@
},
onShow() {
- this.getTaskInfo()
+ if(this.userInfo && this.userInfo.name){
+ this.getTaskInfo()
+ }
},
methods: {
jump(path){
diff --git a/h5/pages/staff/vehicle/shinei.vue b/h5/pages/staff/vehicle/shinei.vue
index a4df2c9..9acf2f2 100644
--- a/h5/pages/staff/vehicle/shinei.vue
+++ b/h5/pages/staff/vehicle/shinei.vue
@@ -89,7 +89,7 @@
onSubmit() {
const { param } = this
const selTimeList = this.timeList.filter(i => i.checked == '1')
- if (selTimeList.length == -1) {
+ if (selTimeList.length == 0) {
return uni.showToast({
title: '璇峰厛閫夋嫨鐢ㄨ溅鏃堕棿娈�',
icon: 'none'
--
Gitblit v1.9.3