From 0f63c9e381eeefa2f7aceb7ed8d043ddd165afd5 Mon Sep 17 00:00:00 2001
From: baoshiwei <baoshiwei@shlanbao.cn>
Date: 星期二, 10 六月 2025 15:33:05 +0800
Subject: [PATCH] feat(maint): 添加工单图片上传功能
---
eims-ui-mobile/src/pages/repair/repair-add.vue | 3 +
eims-ui-mobile/src/pages/maint/order-detail.vue | 2
eims-ui-mobile/src/pages/maint/maint-order.vue | 52 +++++++++++++++++++++----
eims-ui-mobile/src/pages/maint/maint-st.vue | 18 +++++----
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/bo/EimsMaintOrderBo.java | 2 +
eims-ui-mobile/src/pages/inspect/insp-add.vue | 1
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/vo/EimsMaintOrderVo.java | 2 +
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/EimsMaintOrder.java | 2 +
8 files changed, 62 insertions(+), 20 deletions(-)
diff --git a/eims-ui-mobile/src/pages/inspect/insp-add.vue b/eims-ui-mobile/src/pages/inspect/insp-add.vue
index 7d513b3..f3ac7f8 100644
--- a/eims-ui-mobile/src/pages/inspect/insp-add.vue
+++ b/eims-ui-mobile/src/pages/inspect/insp-add.vue
@@ -70,7 +70,6 @@
/>
<wd-cell title="鐐规鍥剧墖" title-width="200rpx" prop="fileList">
<wd-upload
- :auto-upload="false"
:file-list="model.fileList"
:action="VITE_UPLOAD_BASEURL"
@change="handleFileChange"
diff --git a/eims-ui-mobile/src/pages/maint/maint-order.vue b/eims-ui-mobile/src/pages/maint/maint-order.vue
index fe14b49..b67e041 100644
--- a/eims-ui-mobile/src/pages/maint/maint-order.vue
+++ b/eims-ui-mobile/src/pages/maint/maint-order.vue
@@ -54,15 +54,17 @@
<view class="text-color-gray text-sm mt-1 flex">
<text class="mr-3">宸ュ崟鎬绘暟: {{ maintSt.orderCount }}</text>
|
- <text class="mx-3">宸插畬鎴�: {{ maintSt.wcCount }}</text>
- </view>
- <view class="text-color-gray text-sm mt-2 flex">
- <text class="mr-3">寰呬繚鍏�: {{ maintSt.dbyCount }}</text>
+ <text class="mx-3">宸插畬鎴�: {{ maintSt.dyzCount }}</text>
|
- <text class="mx-3">淇濆吇涓�: {{ maintSt.byCount }}</text>
-<!-- |-->
-<!-- <text class="ml-3">寰呴獙璇�: {{ maintSt.dyzCount }}</text>-->
+ <text class="mx-3">寰呬繚鍏�: {{ maintSt.dbyCount }}</text>
</view>
+<!-- <view class="text-color-gray text-sm mt-2 flex">-->
+<!-- <text class="mr-3">寰呬繚鍏�: {{ maintSt.dbyCount }}</text>-->
+<!-- |-->
+<!-- <text class="mx-3">淇濆吇涓�: {{ maintSt.byCount }}</text>-->
+<!--<!– |–>-->
+<!--<!– <text class="ml-3">寰呴獙璇�: {{ maintSt.dyzCount }}</text>–>-->
+<!-- </view>-->
<view class="text-color-gray text-sm mt-2 flex">
<text>鐘舵�侊細</text>
<template v-if="maintSt.status === '1'">
@@ -140,6 +142,9 @@
<!-- 姝f枃鍖哄煙 -->
<view v-else class="mt-2">
+ <wd-upload v-model:file-list="item.fileList" :action="VITE_UPLOAD_BASEURL" @success="handleUploadSuccess" >
+ <wd-button>涓婁紶鍥剧墖</wd-button>
+ </wd-upload>
<!-- 淇濆吇璇存槑鍖哄煙 -->
<view v-if="item.maintFun === '1'" class="mt-2">
<wd-input
@@ -259,7 +264,8 @@
import { formatDate } from '@/utils/DateUtils'
import { useUserStore } from "@/store";
import { getSpareList } from '@/service/spare'
-
+import { getEnvBaseUploadUrl } from "@/utils";
+const VITE_UPLOAD_BASEURL = `${getEnvBaseUploadUrl()}`
const message = useMessage()
const toast = useToast()
const userStore = useUserStore()
@@ -300,10 +306,19 @@
}
getMaintStOrderList(params)
.then((res: any) => {
+ // 灏嗘瘡涓�椤圭殑picture杞崲涓篺ileList鏁扮粍
+ res.rows.forEach((item: any) => {
+ item.fileList = item.picture?.split(',').map((url: string) => {
+ return {
+ url: url,
+ }
+ })
+ })
// 璇峰嬁鍦ㄧ綉缁滆姹傚洖璋冧腑缁檇ataList璧嬪�硷紒锛佸彧闇�瑕佽皟鐢╟omplete灏卞彲浠ヤ簡
paging.value.completeByTotal(res.rows, res.total)
})
.catch((res) => {
+ console.error(res)
// 濡傛灉璇锋眰澶辫触鍐檖aging.value.complete(false)锛屼細鑷姩灞曠ず閿欒椤甸潰
// 娉ㄦ剰锛屾瘡娆¢兘闇�瑕佸湪catch涓啓杩欏彞璇濆緢楹荤儲锛寊-paging鎻愪緵浜嗘柟妗堝彲浠ュ叏灞�缁熶竴澶勭悊
// 鍦ㄥ簳灞傜殑缃戠粶璇锋眰鎶涘嚭寮傚父鏃讹紝鍐檜ni.$emit('z-paging-error-emit');鍗冲彲
@@ -381,6 +396,7 @@
function confirmSpareSelection() {
closeSparePopup()
}
+
function addOtherSparePart() {
dataList.value[selectedPartIndex.value].spareParts.push({
@@ -482,6 +498,15 @@
toast.info('璇峰~鍐欑淮淇鏄庯紒')
return false
}
+
+ // 灏唖ubmitList涓瘡涓�椤圭殑fileList杞崲涓轰互閫楀彿鍒嗗壊鐨勫瓧绗︿覆
+ submitList.forEach((item) => {
+
+ console.log('item.fileList', item.fileList)
+ const map = item.fileList?.map((file) => file.url)
+ console.log('map', map)
+ item.picture = map?.join(',')
+ })
const data: any = Object.assign(
@@ -643,7 +668,16 @@
.catch((res) => {
console.error(res)
})
-
+}
+function handleUploadSuccess({ file, fileList }) {
+ console.log('handleUploadSuccess', file)
+ // 鍒ゆ柇 file.response鏄笉鏄� 瀵硅薄锛屼笉鏄璞″皢json瀛楃涓茶浆鎹负瀵硅薄
+ if (typeof file.response === 'string') {
+ file.response = JSON.parse(file.response)
+ console.log('file.response', file.response)
+ file.ossId = file.response.data.ossId
+ file.url = file.response.data.url
+ }
}
// 鏂板鏂规硶锛氳幏鍙栫姸鎬佹枃鏈�
diff --git a/eims-ui-mobile/src/pages/maint/maint-st.vue b/eims-ui-mobile/src/pages/maint/maint-st.vue
index 4db3bdf..c58daa8 100644
--- a/eims-ui-mobile/src/pages/maint/maint-st.vue
+++ b/eims-ui-mobile/src/pages/maint/maint-st.vue
@@ -45,17 +45,19 @@
<image class="slot-img text-center" src="/static/images/camera.png" />
<view class="flex-1">
<view class="text-color-gray text-sm mt-1 flex">
- <text class="mr-3">宸ュ崟鎬绘暟: {{ item.orderCount }}</text>
+ <text class="mr-3">鎬绘暟: {{ item.orderCount }}</text>
|
- <text class="mx-3">宸插畬鎴�: {{ item.wcCount }}</text>
+ <text class="mx-3">宸插畬鎴�: {{ item.dyzCount }}</text>
+ |
+ <text class="mx-3">寰呬繚鍏�: {{ item.dbyCount }}</text>
</view>
- <view class="text-color-gray text-sm mt-2 flex">
- <text class="mr-3">寰呬繚鍏�: {{ item.dbyCount }}</text>
- |
- <text class="mx-3">淇濆吇涓�: {{ item.byCount }}</text>
+<!-- <view class="text-color-gray text-sm mt-2 flex">-->
+<!-- <text class="mr-3">寰呬繚鍏�: {{ item.dbyCount }}</text>-->
<!-- |-->
-<!-- <text class="ml-3">寰呴獙璇�: {{ item.dyzCount }}</text>-->
- </view>
+<!--<!– <text class="mx-3">淇濆吇涓�: {{ item.byCount }}</text>–>-->
+<!--<!– |–>-->
+<!--<!– <text class="ml-3">寰呴獙璇�: {{ item.dyzCount }}</text>–>-->
+<!-- </view>-->
<view class="text-color-gray text-sm mt-2 flex">
<text>鐘舵�侊細</text>
<template v-if="item.status === '1'">
diff --git a/eims-ui-mobile/src/pages/maint/order-detail.vue b/eims-ui-mobile/src/pages/maint/order-detail.vue
index beed4f1..d4755ba 100644
--- a/eims-ui-mobile/src/pages/maint/order-detail.vue
+++ b/eims-ui-mobile/src/pages/maint/order-detail.vue
@@ -61,7 +61,6 @@
/>
<wd-cell title="淇濆吇鍥剧墖" title-width="200rpx" prop="fileList">
<wd-upload
- :auto-upload="false"
:file-list="fileList"
@change="handleFileChange"
></wd-upload>
@@ -133,6 +132,7 @@
endTime?: string
maintDesc: string
remark: string
+ picture: string
}
const order = reactive<MaintOrder>({
diff --git a/eims-ui-mobile/src/pages/repair/repair-add.vue b/eims-ui-mobile/src/pages/repair/repair-add.vue
index 2a2778c..a498a80 100644
--- a/eims-ui-mobile/src/pages/repair/repair-add.vue
+++ b/eims-ui-mobile/src/pages/repair/repair-add.vue
@@ -115,7 +115,6 @@
/>
<wd-cell title="鎶ヤ慨鍥剧墖" title-width="200rpx" prop="fileList">
<wd-upload
- :auto-upload="false"
:file-list="model.fileList"
:action="VITE_UPLOAD_BASEURL"
@change="handleFileChange"
@@ -315,6 +314,7 @@
model.reqTime = formatDate(new Date())
model.reqDept = userStore?.userInfo?.deptId
model.reqUser = userStore?.userInfo?.userId
+ model.faultPicture = model.fileList.join(',')
addRepairReq(model)
.then((res: any) => {
if (res?.code === 200) {
@@ -335,6 +335,7 @@
* @param fileList
*/
function handleFileChange({ fileList }) {
+ console.log('fileList:', fileList)
model.fileList = fileList
}
diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/EimsMaintOrder.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/EimsMaintOrder.java
index 8aae23b..d170fa4 100644
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/EimsMaintOrder.java
+++ b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/EimsMaintOrder.java
@@ -123,4 +123,6 @@
*/
private String repairDesc;
+ private String picture;
+
}
diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/bo/EimsMaintOrderBo.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/bo/EimsMaintOrderBo.java
index 625c6ee..af48846 100644
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/bo/EimsMaintOrderBo.java
+++ b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/bo/EimsMaintOrderBo.java
@@ -134,4 +134,6 @@
private List<EimsSpareBo> spareParts;
+ private String picture;
+
}
diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/vo/EimsMaintOrderVo.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/vo/EimsMaintOrderVo.java
index 1a43656..ad29c5a 100644
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/vo/EimsMaintOrderVo.java
+++ b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/vo/EimsMaintOrderVo.java
@@ -168,5 +168,7 @@
private List<EimsSpareVo> spareParts;
+ private String picture;
+
}
--
Gitblit v1.9.3