From 14681dfe7052cb76eefcc0c17d0a0d708e1ac9dd Mon Sep 17 00:00:00 2001 From: zhuguifei <zhuguifei@zhuguifeideiMac.local> Date: 星期二, 13 五月 2025 16:31:14 +0800 Subject: [PATCH] 完成移动端基本功能 --- eims-ui-mobile/src/pages/repair/repair-fb.vue | 72 +++++++++++++++++++++++++++++++---- 1 files changed, 63 insertions(+), 9 deletions(-) diff --git a/eims-ui-mobile/src/pages/repair/feedback.vue b/eims-ui-mobile/src/pages/repair/repair-fb.vue similarity index 75% rename from eims-ui-mobile/src/pages/repair/feedback.vue rename to eims-ui-mobile/src/pages/repair/repair-fb.vue index 497247c..ae8aaea 100644 --- a/eims-ui-mobile/src/pages/repair/feedback.vue +++ b/eims-ui-mobile/src/pages/repair/repair-fb.vue @@ -33,7 +33,7 @@ </view> </template> <wd-steps :active="repairRecordList.length" vertical class="px-4"> - <wd-step v-for="(item,index) in repairRecordList" > + <wd-step v-for="(item, index) in repairRecordList"> <template #title> <view class="flex items-center menu-title-box"> <view class="ml-1 text-xs">{{ item?.operaResult }}</view> @@ -46,7 +46,6 @@ </view> </template> </wd-step> - </wd-steps> </wd-card> @@ -96,10 +95,18 @@ </view> </template> <script setup lang="ts"> -import { getRepairRes, getRepairFb, getRepairRecordList } from '@/service/repair' +import { + getRepairRes, + getRepairFb, + getRepairRecordList, + addRepairFb, + updateRepairFb, +} from '@/service/repair' import { reactive } from 'vue' +import { isLeader, isOperatorOrRepair } from '@/utils/RoleUtils' import { RepairResVO, RepairFbVO, RepairRecordVO } from '@/service/repair.d' +const isUpdate = ref(false) const repairRes = reactive<RepairResVO>({ id: '', resCode: '', @@ -118,6 +125,7 @@ const repairFb = reactive<RepairFbVO>({ id: '', + resId: '', resCode: '', fbResult: '', suggestions: '', @@ -134,8 +142,8 @@ } function getRepairRecord() { - if(!repairRes.id){ - return false + if (!repairRes.id) { + return false } const params = { resId: repairRes.id, @@ -143,7 +151,7 @@ getRepairRecordList(params) .then((res: any) => { console.error(res) - if(res?.code === 200){ + if (res?.code === 200) { repairRecordList.value = res?.rows?.sort((a, b) => { if (a.handleTime < b.handleTime) { return -1 @@ -157,7 +165,6 @@ }) .catch((res) => {}) } - function initRepairRes(id: any) { getRepairRes(id) @@ -174,15 +181,62 @@ function getFeedBack(id: any) { getRepairFb(id) .then((res: any) => { + // 鍦ㄨ繖閲岃繘琛屾暟鎹被鍨嬭浆鎹� + res.repairSatisfaction = Number(res?.repairSatisfaction) + res.repairTimeliness = Number(res?.repairTimeliness) + res.serviceAttitude = Number(res?.serviceAttitude) + res.repairSs = Number(res?.repairSs) Object.assign(repairFb, res) }) .catch((res) => {}) } -async function initData(options: any) { - initRepairRes(options.id) +function handleRepairFb() { + if(isOperatorOrRepair()){ + uni.showToast({ + title: '鏃犳潈闄�,璇风櫥褰曠鐞嗗憳璐﹀彿鎿嶄綔', + icon: 'none', + }) + return false + } + const id = repairFb.id + isUpdate.value = !!id + if (isUpdate.value) { + updateRepairFb(repairFb) + .then((res: any) => { + if (res?.code === 200) { + uni.showToast({ + title: '淇敼鎴愬姛', + icon: 'none', + }) + } + }) + .catch((res) => {}) + } else { + addRepairFb(repairFb) + .then((res: any) => { + if (res?.code === 200) { + uni.showToast({ + title: '璇勪环鎴愬姛', + icon: 'none', + }) + } + }) + .catch((res) => {}) + } } +async function initData(options: any) { + repairFb.resId = options.id + initRepairRes(options.id) +} + +onNavigationBarButtonTap((e) => { + if (e.index === 0) { + handleRepairFb() + } +}) + onLoad((options) => { initData(options) }) -- Gitblit v1.9.3