From 668e570bd1db6bd00e4293b6977e6d3d051053ce Mon Sep 17 00:00:00 2001
From: wlzboy <66905212@qq.com>
Date: 星期四, 27 十一月 2025 00:07:46 +0800
Subject: [PATCH] feat: 修改app录入界面及车辆用户同步
---
ruoyi-ui/src/views/system/order/detail.vue | 121 +++++++++++++++++++++++++++-------------
1 files changed, 81 insertions(+), 40 deletions(-)
diff --git a/ruoyi-ui/src/views/system/order/detail.vue b/ruoyi-ui/src/views/system/order/detail.vue
index 2dad341..886735a 100644
--- a/ruoyi-ui/src/views/system/order/detail.vue
+++ b/ruoyi-ui/src/views/system/order/detail.vue
@@ -2,9 +2,8 @@
<div class="app-container">
<el-card class="box-card">
<div slot="header" class="clearfix">
- <span>璁㈠崟缂栧彿锛歿{ orderInfo.orderNo }}</span>
+ <span>璁㈠崟缂栧彿锛歿{ orderInfo.OrderID }}</span>
</div>
-
<el-row :gutter="20">
<!-- 璁㈠崟鍩烘湰淇℃伅 -->
<el-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
@@ -46,10 +45,10 @@
<div slot="header"><b>鏈嶅姟瑕佹眰</b></div>
<el-descriptions :column="1" border>
<el-descriptions-item label="鍑哄彂鍦�">{{ serviceInfo.startAddress }}</el-descriptions-item>
- <el-descriptions-item label="鍑哄彂鍦颁綅缃�">{{ serviceInfo.startLocation }}</el-descriptions-item>
+ <!-- <el-descriptions-item label="鍑哄彂鍦颁綅缃�">{{ serviceInfo.startLocation }}</el-descriptions-item> -->
<el-descriptions-item label="鐩殑鍦�">{{ serviceInfo.endAddress }}</el-descriptions-item>
- <el-descriptions-item label="鐩殑鍦颁綅缃�">{{ serviceInfo.endLocation }}</el-descriptions-item>
- <el-descriptions-item label="杞繍閲岀▼">{{ serviceInfo.distance }}</el-descriptions-item>
+ <!-- <el-descriptions-item label="鐩殑鍦颁綅缃�">{{ serviceInfo.endLocation }}</el-descriptions-item> -->
+ <el-descriptions-item label="杞繍閲岀▼">{{ serviceInfo.distance }} 鍏噷</el-descriptions-item>
<el-descriptions-item label="鎼姮鏈嶅姟">{{ serviceInfo.liftService }}</el-descriptions-item>
<el-descriptions-item label="鎼姮妤煎眰">{{ serviceInfo.liftFloor }}</el-descriptions-item>
<el-descriptions-item label="鍖绘姢瑕佹眰">{{ serviceInfo.medicalStaff }}</el-descriptions-item>
@@ -65,7 +64,7 @@
<el-descriptions-item label="鏄惁鏈夋剰璇�">{{ medicalInfo.hasConsciousness }}</el-descriptions-item>
<el-descriptions-item label="鐥呬汉鎯呭喌">{{ medicalInfo.patientCondition }}</el-descriptions-item>
<el-descriptions-item label="浣跨敤鍛煎惛鏈�">{{ medicalInfo.useVentilator }}</el-descriptions-item>
- <el-descriptions-item label="璇婃柇鐥呮儏">{{ medicalInfo.diagnosis }}</el-descriptions-item>
+ <el-descriptions-item label="璇婃柇鐥呮儏">{{ medicalInfo.complaint }}</el-descriptions-item>
</el-descriptions>
</el-card>
</el-col>
@@ -80,9 +79,9 @@
<el-descriptions-item label="璋冨害鏃堕棿">{{ dispatchInfo.dispatchTime }}</el-descriptions-item>
<el-descriptions-item label="璋冨害鐘舵��">{{ dispatchInfo.dispatchStatus }}</el-descriptions-item>
<el-descriptions-item label="鍙告満">{{ dispatchInfo.driver }}</el-descriptions-item>
- <el-descriptions-item label="杞︾墝">{{ dispatchInfo.carNo }}</el-descriptions-item>
+ <el-descriptions-item label="杞︾墝">{{ dispatchInfo.carLicense }}</el-descriptions-item>
<el-descriptions-item label="鍖荤敓">{{ dispatchInfo.doctor }}</el-descriptions-item>
- <el-descriptions-item label="鑱屼綅">{{ dispatchInfo.doctorPosition }}</el-descriptions-item>
+ <!-- <el-descriptions-item label="鑱屼綅">{{ dispatchInfo.doctorPosition }}</el-descriptions-item> -->
<el-descriptions-item label="鎶ゅ+">{{ dispatchInfo.nurse }}</el-descriptions-item>
</el-descriptions>
</el-card>
@@ -92,50 +91,61 @@
<el-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
<el-card class="inner-card">
<div slot="header"><b>鏀舵淇℃伅</b></div>
- <el-table
- :data="paymentInfo"
- border
+ <el-table
+ :data="paymentInfo"
+ border
style="width: 100%"
:size="isMobile ? 'mini' : 'medium'"
class="responsive-table">
- <el-table-column prop="paymentNo" label="鏀舵娴佹按" min-width="120" />
- <el-table-column prop="paymentTime" label="鏀舵鏃堕棿" min-width="140" />
- <el-table-column prop="amount" label="閲戦" min-width="100" />
- <el-table-column prop="method" label="鏂瑰紡" min-width="100" />
- <el-table-column prop="remark" label="澶囨敞" min-width="120" />
+ <el-table-column prop="id" label="鏀舵娴佹按" min-width="120" />
+ <el-table-column
+ prop="paidMoneyTime"
+ label="鏀舵鏃堕棿"
+ min-width="140"
+ :formatter="(row, column, cellValue) => formatDateTime(cellValue)"
+ />
+ <el-table-column prop="paidMoney" label="閲戦(鍏�)" min-width="100" />
+ <el-table-column prop="vtext" label="鏂瑰紡" min-width="100" />
+ <el-table-column prop="paidMoneyMono" label="澶囨敞" min-width="120" />
</el-table>
</el-card>
</el-col>
</el-row>
- <!-- 杩愯鎯呭喌 -->
- <el-row>
- <el-col :span="24">
+
+ <!-- 璁㈠崟鎯呭喌 -->
+ <el-row :gutter="20">
+ <!-- 璋冨害淇℃伅 -->
+ <el-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
<el-card class="inner-card">
- <div slot="header">
- <b>杩愯鎯呭喌</b>
- <span style="float: right">绮102311</span>
- </div>
- <el-table
- :data="operationInfo"
- border
- style="width: 100%"
- :size="isMobile ? 'mini' : 'medium'"
- class="responsive-table">
- <el-table-column prop="status" label="鍑鸿溅鐘舵��" min-width="100" />
- <el-table-column prop="operator" label="鎿嶄綔浜�" min-width="100" />
- <el-table-column prop="operateTime" label="鎿嶄綔鏃堕棿" min-width="140" />
- <el-table-column prop="location" label="鍧愭爣浣嶇疆" min-width="200" show-overflow-tooltip />
- </el-table>
+ <div slot="header"><b>璇︽儏</b></div>
+ <el-descriptions :column="isMobile ? 1 : 2" border>
+ <el-descriptions-item label="鏈嶅姟璇勪环">{{ otherInfo.serviceOrdVisit }}</el-descriptions-item>
+ <el-descriptions-item label="鍙戠エ鐘舵��">{{ otherInfo.invoiceStatus }}</el-descriptions-item>
+ <el-descriptions-item label="鐭ユ儏鍚屾剰涔�">
+ <div v-if="otherInfo.imageUrls && otherInfo.imageUrls.length > 0" class="image-container">
+ <el-image
+ v-for="image in otherInfo.imageUrls"
+ :key="image"
+ :src="`https://sys.966120.com.cn${image}`"
+ :preview-src-list="otherInfo.imageUrls"
+ class="preview-image"
+ />
+ </div>
+ <span v-else>鏆傛棤鍥剧墖</span>
+ </el-descriptions-item>
+ </el-descriptions>
</el-card>
</el-col>
</el-row>
+
</el-card>
</div>
</template>
<script>
import { getOrderDetail } from '@/api/system/order'
+import { parseTime } from '@/utils/ruoyi'
export default {
name: 'OrderDetail',
@@ -148,7 +158,7 @@
medicalInfo: {},
dispatchInfo: {},
paymentInfo: [],
- operationInfo: [],
+ otherInfo: [],
screenWidth: document.documentElement.clientWidth // 灞忓箷瀹藉害
}
},
@@ -158,8 +168,19 @@
}
},
created() {
+ // 鑾峰彇璺敱鍙傛暟涓殑璁㈠崟ID
const orderId = this.$route.params.id
- this.getDetail(orderId)
+
+ // 鑾峰彇URL鏌ヨ鍙傛暟
+ const urlParams = new URLSearchParams(window.location.search)
+ const params = {
+ appId: urlParams.get('appId'),
+ timestamp: urlParams.get('timestamp'),
+ sign: urlParams.get('sign')
+ }
+
+ // 璋冪敤鑾峰彇璇︽儏鏂规硶锛屼紶鍏ユ墍鏈夊弬鏁�
+ this.getDetail(orderId, params)
// 鐩戝惉绐楀彛澶у皬鍙樺寲
window.addEventListener('resize', this.handleResize)
},
@@ -169,8 +190,8 @@
},
methods: {
/** 鑾峰彇璁㈠崟璇︽儏 */
- getDetail(orderId) {
- getOrderDetail(orderId).then(response => {
+ getDetail(orderId, params) {
+ getOrderDetail(orderId, params).then(response => {
const { data } = response
// 鏍规嵁鍚庣杩斿洖鐨勬暟鎹粨鏋勮缃悇涓璞$殑鍊�
this.orderInfo = data.orderInfo || {}
@@ -179,12 +200,21 @@
this.medicalInfo = data.medicalInfo || {}
this.dispatchInfo = data.dispatchInfo || {}
this.paymentInfo = data.paymentInfo || []
- this.operationInfo = data.operationInfo || []
+ this.otherInfo = data.otherInfo || []
+
+ console.log(this.orderInfo)
+
})
},
// 澶勭悊绐楀彛澶у皬鍙樺寲
handleResize() {
this.screenWidth = document.documentElement.clientWidth
+ },
+ formatDateTime(time) {
+ if (!time) {
+ return '';
+ }
+ return parseTime(time, '{y}-{m}-{d} {h}:{i}:{s}');
}
}
}
@@ -218,4 +248,15 @@
.el-descriptions-item { padding: 8px !important; }
.el-descriptions-item__label { width: 100px !important; }
}
-</style>
\ No newline at end of file
+.image-container {
+ display: flex;
+ flex-wrap: wrap;
+ gap: 10px;
+}
+.preview-image {
+ width: 100px;
+ height: 100px;
+ object-fit: cover;
+ cursor: pointer;
+}
+</style>
--
Gitblit v1.9.1