From 46d143d1d6fe8f286399f4d027c9a86adf7cd7fc Mon Sep 17 00:00:00 2001 From: baoshiwei <baoshiwei@shlanbao.cn> Date: 星期三, 09 七月 2025 08:50:01 +0800 Subject: [PATCH] feat(inspection,maintenance): - 实现保养工单批量确认功能 - 在点检记录确认时增加时间限制,距离上次更新时间两小时内不允许确认 --- eims-ui-mobile/src/pages/maint/order-detail.vue | 139 +++++++++++++++++++++++----------------------- 1 files changed, 69 insertions(+), 70 deletions(-) diff --git a/eims-ui-mobile/src/pages/maint/order-detail.vue b/eims-ui-mobile/src/pages/maint/order-detail.vue index 9823cd4..6672463 100644 --- a/eims-ui-mobile/src/pages/maint/order-detail.vue +++ b/eims-ui-mobile/src/pages/maint/order-detail.vue @@ -2,29 +2,25 @@ { layout: 'default', needLogin: true, - style: { - navigationBarTitleText: '宸ュ崟鏄庣粏', - 'app-plus': { - titleNView: { - buttons: [ - { - text: '鎻愪氦', - fontSize: '14px', - color: '#FFFFFF', - }, - { - text: '', - fontSize: '24px', - color: '#FFFFFF', - }, - ], - }, - }, - }, + style: { navigationBarTitleText: '宸ュ崟鏄庣粏', navigationStyle: 'custom' }, } </route> <template> <view class="bg-base container" safeAreaInsetTopBottom> + <wd-navbar + title="淇濆吇宸ュ崟" + left-arrow + @click-left="goBack" + right-text="鎻愪氦" + @click-right="handleClickRight" + custom-style="background: #4D80F0;" + safeAreaInsetTop + > + <template #right> + <text v-if="isLineOrRepair()" class="text-white">鎻愪氦</text> + <text v-else-if="isLeader()" class="text-white">楠岃瘉</text> + </template> + </wd-navbar> <wd-form ref="form" :model="order" :rules="rules"> <wd-cell-group custom-class="group" title="璁惧淇℃伅" border> <wd-cell title="璁惧鍚嶇О" title-width="200rpx" is-link> @@ -65,7 +61,6 @@ /> <wd-cell title="淇濆吇鍥剧墖" title-width="200rpx" prop="fileList"> <wd-upload - :auto-upload="false" :file-list="fileList" @change="handleFileChange" ></wd-upload> @@ -98,7 +93,7 @@ <wd-cell title="淇濆吇瀹屾垚(鎿嶄綔宸�)" title-width="200px" - v-if="order.status === '1' && isOperatorOrRepair()" + v-if="order.status === '1' && isLineOrRepair()" > <view style="text-align: right"> <wd-switch v-model="isFinish" /> @@ -114,7 +109,7 @@ import { reactive, onMounted } from 'vue' import { FormRules } from 'wot-design-uni/components/wd-form/types' import { useToast, useMessage } from 'wot-design-uni' -import { isLeader, isOperatorOrRepair } from '@/utils/RoleUtils' +import { isLeader, isLineOrRepair } from '@/utils/RoleUtils' const toast = useToast() const message = useMessage() @@ -137,6 +132,7 @@ endTime?: string maintDesc: string remark: string + picture: string } const order = reactive<MaintOrder>({ @@ -199,7 +195,7 @@ toast.success('鎿嶄綔鎴愬姛') } -function handleClickRight(data: any) { +function handleSubmit(data: any) { message .confirm({ msg: '纭畾鎻愪氦锛�', @@ -208,61 +204,64 @@ updateOrder(data, resolve) }, }) - .then(() => {}) + .then(() => { + goBack() + }) .catch((error) => { console.log(error) }) } -onNavigationBarButtonTap((e) => { - if (e.index === 0) { - // 绠$悊鍛樿鑹� 涓斿緟楠岃瘉鐘舵�� - if (isLeader()) { - switch (order.status) { - case '0': - case '1': - toast.warning('褰撳墠宸ュ崟绛夊緟鎿嶄綔宸ヤ繚鍏荤姸鎬侊紝涓嶅彲鎿嶄綔') - break - case '2': - // 鍕鹃�夐獙璇侊紝鍙彁浜� - if (isVerify.value) { - // 淇敼宸ュ崟鐘舵�佷负宸插畬鎴� - const data: any = Object.assign({}, { id: order.id, status: order.status }) - data.status = '3' - handleClickRight(data) - } else { - toast.warning('璇烽�夋嫨鏄惁楠岃瘉閫氳繃') +const goBack = () => { + uni.navigateBack() +} +function handleClickRight() { + // 绠$悊鍛樿鑹� 涓斿緟楠岃瘉鐘舵�� + if (isLeader()) { + switch (order.status) { + case '0': + case '1': + toast.warning('褰撳墠宸ュ崟绛夊緟鎿嶄綔宸ヤ繚鍏荤姸鎬侊紝涓嶅彲鎿嶄綔') + break + case '2': + // 鍕鹃�夐獙璇侊紝鍙彁浜� + if (isVerify.value) { + // 淇敼宸ュ崟鐘舵�佷负宸插畬鎴� + const data: any = Object.assign({}, { id: order.id, status: order.status }) + data.status = '3' + handleSubmit(data) + } else { + toast.warning('璇烽�夋嫨鏄惁楠岃瘉閫氳繃') + } + break + case '3': + toast.warning('褰撳墠宸ュ崟瀹屾垚鐘舵�侊紝涓嶅彲鎿嶄綔') + break + } + } else if (isLineOrRepair()) { + switch (order.status) { + case '0': + break + case '1': + { + const data = Object.assign({}, order) + // 鍕鹃�夊伐鍗曞畬鎴愶紝鏀瑰彉鐘舵�� + if (isFinish.value) { + // 淇敼宸ュ崟鐘舵�佷负寰呴獙璇� + data.status = '2' } - break - case '3': - toast.warning('褰撳墠宸ュ崟瀹屾垚鐘舵�侊紝涓嶅彲鎿嶄綔') - break - } - } else if (isOperatorOrRepair()) { - switch (order.status) { - case '0': - break - case '1': - { - const data = Object.assign({}, order) - // 鍕鹃�夊伐鍗曞畬鎴愶紝鏀瑰彉鐘舵�� - if (isFinish.value) { - // 淇敼宸ュ崟鐘舵�佷负寰呴獙璇� - data.status = '2' - } - handleClickRight(data) - } - break - case '2': - toast.warning('褰撳墠宸ュ崟绛夊緟绠$悊楠岃瘉鐘舵�侊紝涓嶅彲鎿嶄綔') - break - case '3': - toast.warning('褰撳墠宸ュ崟瀹屾垚鐘舵�侊紝涓嶅彲鎿嶄綔') - break - } + handleSubmit(data) + } + break + case '2': + toast.warning('褰撳墠宸ュ崟绛夊緟绠$悊楠岃瘉鐘舵�侊紝涓嶅彲鎿嶄綔') + break + case '3': + toast.warning('褰撳墠宸ュ崟瀹屾垚鐘舵�侊紝涓嶅彲鎿嶄綔') + break } } -}) +} onMounted(() => {}) onLoad((options) => { -- Gitblit v1.9.3