From c4599aa279fd2f90b741608392e056fbae2282d5 Mon Sep 17 00:00:00 2001
From: WXL <wl_5969728@163.com>
Date: 星期四, 20 八月 2026 17:16:54 +0800
Subject: [PATCH] 各表单布局调整
---
src/views/business/transfer/TransportEdit.vue | 628 ++++++++++++++++++++++++++++++++++----------------------
1 files changed, 377 insertions(+), 251 deletions(-)
diff --git a/src/views/business/transfer/TransportEdit.vue b/src/views/business/transfer/TransportEdit.vue
index 996f8cd..b334b74 100644
--- a/src/views/business/transfer/TransportEdit.vue
+++ b/src/views/business/transfer/TransportEdit.vue
@@ -17,17 +17,27 @@
/>
<el-card shadow="never" class="case-info-card">
<el-descriptions :column="2" border>
- <el-descriptions-item label="妗堜緥缂栧彿">{{ selectedCase.caseNo }}</el-descriptions-item>
- <el-descriptions-item label="鎮h�呭鍚�">{{ selectedCase.name }}</el-descriptions-item>
+ <el-descriptions-item label="妗堜緥缂栧彿">{{
+ selectedCase.caseNo
+ }}</el-descriptions-item>
+ <el-descriptions-item label="鎮h�呭鍚�">{{
+ selectedCase.name
+ }}</el-descriptions-item>
<el-descriptions-item label="鎬у埆">
<dict-tag
:options="dict.type.sys_user_sex"
:value="selectedCase.sex"
/>
</el-descriptions-item>
- <el-descriptions-item label="骞撮緞">{{ selectedCase.age }}</el-descriptions-item>
- <el-descriptions-item label="鐤剧梾璇婃柇">{{ selectedCase.diagnosisname }}</el-descriptions-item>
- <el-descriptions-item label="娌荤枟鍖婚櫌">{{ selectedCase.treatmenthospitalname }}</el-descriptions-item>
+ <el-descriptions-item label="骞撮緞">{{
+ selectedCase.age
+ }}</el-descriptions-item>
+ <el-descriptions-item label="鐤剧梾璇婃柇">{{
+ selectedCase.diagnosisname
+ }}</el-descriptions-item>
+ <el-descriptions-item label="娌荤枟鍖婚櫌">{{
+ selectedCase.treatmenthospitalname
+ }}</el-descriptions-item>
</el-descriptions>
</el-card>
</div>
@@ -37,144 +47,141 @@
:model="formData"
:rules="formRules"
label-width="120px"
+ class="paper-form"
>
<!-- 鍩虹淇℃伅 -->
- <el-card class="form-section" shadow="never">
+ <el-card class="form-section paper-card" shadow="never">
<div slot="header" class="section-header">
- <i class="el-icon-document" style="color: #409EFF; margin-right: 8px;"></i>
+ <i
+ class="el-icon-document"
+ style="color: #409EFF; margin-right: 8px;"
+ ></i>
<span>鍩虹淇℃伅</span>
</div>
- <el-row :gutter="20">
- <el-col :span="12">
- <el-form-item label="杞繍鍗曞彿" prop="reportId">
- <el-input
- v-model="formData.reportId"
- :disabled="isEdit"
- placeholder="绯荤粺鑷姩鐢熸垚"
- />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="妗堜緥缂栧彿" prop="caseNo">
- <el-input
- v-model="formData.caseNo"
- :disabled="true"
- placeholder="鑷姩浠庢渚嬭幏鍙�"
- />
- </el-form-item>
- </el-col>
- </el-row>
+ <div class="form-row">
+ <el-form-item label="妗堜緥缂栧彿" prop="caseNo" class="col-half">
+ <el-input
+ v-model="formData.caseNo"
+ :disabled="true"
+ placeholder="鑷姩浠庢渚嬭幏鍙�"
+ />
+ </el-form-item>
+ </div>
- <el-row :gutter="20">
- <el-col :span="12">
- <el-form-item label="鎮h�呭鍚�" prop="patName">
- <el-input
- v-model="formData.patName"
- :disabled="true"
- placeholder="鑷姩浠庢渚嬭幏鍙�"
- />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鎬у埆" prop="sex">
- <el-select
- v-model="formData.sex"
- :disabled="true"
- placeholder="璇烽�夋嫨鎬у埆"
- style="width: 100%"
- >
- <el-option label="鐢�" value="1" />
- <el-option label="濂�" value="2" />
- </el-select>
- </el-form-item>
- </el-col>
- </el-row>
+ <div class="form-row">
+ <el-form-item label="鎮h�呭鍚�" prop="patName" class="col-half">
+ <el-input
+ v-model="formData.patName"
+ :disabled="true"
+ placeholder="鑷姩浠庢渚嬭幏鍙�"
+ />
+ </el-form-item>
+ <el-form-item label="鎬у埆" prop="sex" class="col-half">
+ <el-select
+ v-model="formData.sex"
+ :disabled="true"
+ placeholder="璇烽�夋嫨鎬у埆"
+ style="width: 100%"
+ >
+ <el-option label="鐢�" value="1" />
+ <el-option label="濂�" value="2" />
+ </el-select>
+ </el-form-item>
+ </div>
- <el-row :gutter="20">
- <el-col :span="12">
- <el-form-item label="骞撮緞" prop="age">
- <el-input-number
- v-model="formData.age"
- :min="0"
- :max="120"
- :disabled="true"
- placeholder="鑷姩浠庢渚嬭幏鍙�"
- style="width: 100%"
- />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鐤剧梾璇婃柇" prop="diagnosisname">
- <el-input
- v-model="formData.diagnosisname"
- :disabled="true"
- placeholder="鑷姩浠庢渚嬭幏鍙�"
- />
- </el-form-item>
- </el-col>
- </el-row>
+ <div class="form-row">
+ <el-form-item label="骞撮緞" prop="age" class="col-half">
+ <el-input-number
+ v-model="formData.age"
+ :min="0"
+ :max="120"
+ :disabled="true"
+ placeholder="鑷姩浠庢渚嬭幏鍙�"
+ style="width: 100%"
+ />
+ </el-form-item>
+ <el-form-item label="鐤剧梾璇婃柇" prop="diagnosisname" class="col-half">
+ <el-input
+ v-model="formData.diagnosisname"
+ :disabled="true"
+ placeholder="鑷姩浠庢渚嬭幏鍙�"
+ />
+ </el-form-item>
+ </div>
</el-card>
<!-- 鍖婚櫌淇℃伅 -->
- <el-card class="form-section" shadow="never">
+ <el-card class="form-section paper-card" shadow="never">
<div slot="header" class="section-header">
- <i class="el-icon-office-building" style="color: #67C23A; margin-right: 8px;"></i>
+ <i
+ class="el-icon-office-building"
+ style="color: #67C23A; margin-right: 8px;"
+ ></i>
<span>鍖婚櫌淇℃伅</span>
</div>
- <el-row :gutter="20">
- <el-col :span="12">
- <el-form-item label="娌荤枟鍖婚櫌" prop="treatmentHospitalName">
- <el-input
- v-model="formData.treatmentHospitalName"
- :disabled="true"
- placeholder="鑷姩浠庢渚嬭幏鍙�"
- />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="娌荤枟绉戝" prop="treatmentDeptName">
- <el-input
- v-model="formData.treatmentDeptName"
- placeholder="璇疯緭鍏ユ不鐤楃瀹ゅ悕绉�"
- />
- </el-form-item>
- </el-col>
- </el-row>
+ <div class="form-row">
+ <el-form-item label="娌荤枟鍖婚櫌" prop="treatmentHospitalName" class="col-half">
+ <el-input
+ v-model="formData.treatmentHospitalName"
+ :disabled="true"
+ placeholder="鑷姩浠庢渚嬭幏鍙�"
+ />
+ </el-form-item>
+ <el-form-item label="娌荤枟绉戝" prop="treatmentDeptName" class="col-half">
+ <el-input
+ v-model="formData.treatmentDeptName"
+ placeholder="璇疯緭鍏ユ不鐤楃瀹ゅ悕绉�"
+ />
+ </el-form-item>
+ </div>
+ <div class="form-row">
+ <el-form-item label="ICU璇勪及鍖荤敓" prop="icuDoctor" class="col-half">
+ <el-input
+ v-model="formData.icuDoctor"
+ placeholder="璇疯緭鍏CU璇勪及鍖荤敓"
+ />
+ </el-form-item>
+ <el-form-item label="ICU鍖荤敓鐢佃瘽" prop="icuDoctorPhone" class="col-half">
+ <el-input
+ v-model="formData.icuDoctorPhone"
+ placeholder="璇疯緭鍏CU鍖荤敓鎵嬫満鍙�"
+ />
+ </el-form-item>
+ </div>
</el-card>
<!-- 杞繍淇℃伅 -->
- <el-card class="form-section" shadow="never">
+ <el-card class="form-section paper-card" shadow="never">
<div slot="header" class="section-header">
- <i class="el-icon-location-information" style="color: #E6A23C; margin-right: 8px;"></i>
+ <i
+ class="el-icon-location-information"
+ style="color: #E6A23C; margin-right: 8px;"
+ ></i>
<span>杞繍淇℃伅</span>
</div>
- <el-row :gutter="20">
- <el-col :span="12">
- <el-form-item label="鍑哄彂鍦扮偣" prop="transportStartPlace">
- <el-input
- v-model="formData.transportStartPlace"
- placeholder="璇疯緭鍏ュ嚭鍙戝湴鐐�"
- />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鍑哄彂鏃堕棿" prop="transportStartTime">
- <el-date-picker
- v-model="formData.transportStartTime"
- type="datetime"
- placeholder="閫夋嫨鍑哄彂鏃堕棿"
- value-format="yyyy-MM-dd HH:mm:ss"
- style="width: 100%"
- />
- </el-form-item>
- </el-col>
- </el-row>
+ <div class="form-row">
+ <el-form-item label="鍑哄彂鍦扮偣" prop="transportStartPlace" class="col-half">
+ <el-input
+ v-model="formData.transportStartPlace"
+ placeholder="璇疯緭鍏ュ嚭鍙戝湴鐐�"
+ />
+ </el-form-item>
+ <el-form-item label="鍑哄彂鏃堕棿" prop="transportStartTime" class="col-half">
+ <el-date-picker
+ v-model="formData.transportStartTime"
+ type="datetime"
+ placeholder="閫夋嫨鍑哄彂鏃堕棿"
+ value-format="yyyy-MM-dd HH:mm:ss"
+ style="width: 100%"
+ />
+ </el-form-item>
+ </div>
- <el-row :gutter="20">
- <el-col :span="12">
+ <div class="form-row">
+ <!-- <el-col :span="12">
<el-form-item label="杞繍鐘舵��" prop="transitStatus">
<el-select
v-model="formData.transitStatus"
@@ -188,50 +195,48 @@
<el-option label="鏆傚瓨" :value="5" />
</el-select>
</el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="璐熻矗鍗忚皟鍛�" prop="contactPerson">
- <el-input
- v-model="formData.contactPerson"
- placeholder="璇疯緭鍏ュ崗璋冨憳濮撳悕"
- />
- </el-form-item>
- </el-col>
- </el-row>
+ </el-col> -->
+ <el-form-item label="璐熻矗鍗忚皟鍛�" prop="contactPerson" class="col-half">
+ <el-input
+ v-model="formData.contactPerson"
+ placeholder="璇疯緭鍏ュ崗璋冨憳濮撳悕"
+ />
+ </el-form-item>
+ </div>
</el-card>
<!-- 鍖绘姢浜哄憳淇℃伅 -->
- <el-card class="form-section" shadow="never">
+ <el-card class="form-section paper-card" shadow="never">
<div slot="header" class="section-header">
- <i class="el-icon-user" style="color: #F56C6C; margin-right: 8px;"></i>
+ <i
+ class="el-icon-user"
+ style="color: #F56C6C; margin-right: 8px;"
+ ></i>
<span>鍖绘姢浜哄憳淇℃伅</span>
</div>
- <el-row :gutter="20">
- <el-col :span="12">
- <el-form-item label="鎬ヨ瘖绉戝尰鐢�" prop="doctor">
- <el-input
- v-model="formData.doctor"
- placeholder="璇疯緭鍏ユ�ヨ瘖绉戝尰鐢�"
- />
- </el-form-item>
- </el-col>
- <el-col :span="12">
+ <div class="form-row">
+ <el-form-item label="杞繍鍖荤敓" prop="doctor" class="col-half">
+ <el-input
+ v-model="formData.doctor"
+ placeholder="璇疯緭鍏ヨ浆杩愬尰鐢�"
+ />
+ </el-form-item>
+ <!-- <el-col :span="12">
<el-form-item label="鍖荤敓鐢佃瘽" prop="doctorPhone">
<el-input
v-model="formData.doctorPhone"
placeholder="璇疯緭鍏ュ尰鐢熸墜鏈哄彿"
/>
</el-form-item>
- </el-col>
- </el-row>
+ </el-col> -->
+ <el-form-item label="杞繍鎶ゅ+" prop="nurse" class="col-half">
+ <el-input v-model="formData.nurse" placeholder="璇疯緭鍏ユ姢澹鍚�" />
+ </el-form-item>
+ </div>
- <el-row :gutter="20">
- <el-col :span="12">
- <el-form-item label="鎶ゅ+" prop="nurse">
- <el-input v-model="formData.nurse" placeholder="璇疯緭鍏ユ姢澹鍚�" />
- </el-form-item>
- </el-col>
+ <!-- <el-row :gutter="20">
+
<el-col :span="12">
<el-form-item label="鎶ゅ+鐢佃瘽" prop="nursePhone">
<el-input
@@ -240,51 +245,33 @@
/>
</el-form-item>
</el-col>
- </el-row>
+ </el-row> -->
- <el-row :gutter="20">
- <el-col :span="12">
- <el-form-item label="椹鹃┒鍛�" prop="driver">
- <el-input
- v-model="formData.driver"
- placeholder="璇疯緭鍏ラ┚椹跺憳濮撳悕"
- />
- </el-form-item>
- </el-col>
- <el-col :span="12">
+ <div class="form-row">
+ <el-form-item label="杞繍椹鹃┒鍛�" prop="driver" class="col-half">
+ <el-input
+ v-model="formData.driver"
+ placeholder="璇疯緭鍏ラ┚椹跺憳濮撳悕"
+ />
+ </el-form-item>
+ <!-- <el-col :span="12">
<el-form-item label="椹鹃┒鍛樼數璇�" prop="driverPhone">
<el-input
v-model="formData.driverPhone"
placeholder="璇疯緭鍏ラ┚椹跺憳鎵嬫満鍙�"
/>
</el-form-item>
- </el-col>
- </el-row>
-
- <el-row :gutter="20">
- <el-col :span="12">
- <el-form-item label="ICU璇勪及鍖荤敓" prop="icuDoctor">
- <el-input
- v-model="formData.icuDoctor"
- placeholder="璇疯緭鍏CU璇勪及鍖荤敓"
- />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="ICU鍖荤敓鐢佃瘽" prop="icuDoctorPhone">
- <el-input
- v-model="formData.icuDoctorPhone"
- placeholder="璇疯緭鍏CU鍖荤敓鎵嬫満鍙�"
- />
- </el-form-item>
- </el-col>
- </el-row>
+ </el-col> -->
+ </div>
</el-card>
<!-- 闄勪欢淇℃伅 -->
<el-card class="form-section" shadow="never">
<div slot="header" class="section-header">
- <i class="el-icon-folder" style="color: #909399; margin-right: 8px;"></i>
+ <i
+ class="el-icon-folder"
+ style="color: #909399; margin-right: 8px;"
+ ></i>
<span>闄勪欢淇℃伅</span>
</div>
@@ -292,7 +279,9 @@
<div class="attachment-header">
<i class="el-icon-paperclip"></i>
<span class="attachment-title">闄勪欢涓婁紶</span>
- <span class="attachment-tip">鏀寔涓婁紶妫�楠屾姤鍛婂崟绛夋枃浠� (鏈�澶歿{ attachmentLimit }}涓�)</span>
+ <span class="attachment-tip"
+ >鏀寔涓婁紶妫�楠屾姤鍛婂崟绛夋枃浠� (鏈�澶歿{ attachmentLimit }}涓�)</span
+ >
</div>
<!-- 浣跨敤 UploadAttachment 缁勪欢 -->
@@ -309,18 +298,32 @@
</div>
<!-- 闄勪欢鍒楄〃 -->
- <div class="attachment-list" v-if="formData.annexfilesList && formData.annexfilesList.length > 0">
- <div class="list-title">宸蹭笂浼犻檮浠� ({{ formData.annexfilesList.length }})</div>
- <el-table :data="formData.annexfilesList" style="width: 100%" size="small">
+ <div
+ class="attachment-list"
+ v-if="formData.annexfilesList && formData.annexfilesList.length > 0"
+ >
+ <div class="list-title">
+ 宸蹭笂浼犻檮浠� ({{ formData.annexfilesList.length }})
+ </div>
+ <el-table
+ :data="formData.annexfilesList"
+ style="width: 100%"
+ size="small"
+ >
<el-table-column label="鏂囦欢鍚�" min-width="200">
<template slot-scope="scope">
- <i class="el-icon-document" style="margin-right: 8px; color: #409EFF;"></i>
+ <i
+ class="el-icon-document"
+ style="margin-right: 8px; color: #409EFF;"
+ ></i>
<span class="file-name">{{ scope.row.fileName }}</span>
</template>
</el-table-column>
<el-table-column label="鏂囦欢绫诲瀷" width="100">
<template slot-scope="scope">
- <el-tag size="small">{{ getFileType(scope.row.fileName) }}</el-tag>
+ <el-tag size="small">{{
+ getFileType(scope.row.fileName)
+ }}</el-tag>
</template>
</el-table-column>
<el-table-column label="鍒涘缓鏃堕棿" width="160">
@@ -358,27 +361,34 @@
</el-card>
<!-- 澶囨敞淇℃伅 -->
- <el-card class="form-section" shadow="never">
+ <el-card class="form-section paper-card" shadow="never">
<div slot="header" class="section-header">
- <i class="el-icon-edit" style="color: #409EFF; margin-right: 8px;"></i>
+ <i
+ class="el-icon-edit"
+ style="color: #409EFF; margin-right: 8px;"
+ ></i>
<span>澶囨敞淇℃伅</span>
</div>
- <el-form-item prop="remark">
- <el-input
- v-model="formData.remark"
- type="textarea"
- :rows="4"
- placeholder="璇疯緭鍏ュ娉ㄤ俊鎭�"
- maxlength="500"
- show-word-limit
- />
- </el-form-item>
+ <div class="form-row">
+ <el-form-item prop="remark" class="col-full">
+ <el-input
+ v-model="formData.remark"
+ type="textarea"
+ :rows="4"
+ placeholder="璇疯緭鍏ュ娉ㄤ俊鎭�"
+ maxlength="500"
+ show-word-limit
+ />
+ </el-form-item>
+ </div>
</el-card>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="handleClose">鍙栨秷</el-button>
- <el-button type="primary" :loading="saveLoading" @click="handleSave">淇濆瓨</el-button>
+ <el-button type="primary" :loading="saveLoading" @click="handleSave"
+ >淇濆瓨</el-button
+ >
</div>
<!-- 鏂囦欢棰勮寮圭獥 -->
@@ -392,7 +402,13 @@
</template>
<script>
-import { transportAdd, transportEdit } from "@/api/businessApi/index";
+import {
+ transportAdd,
+ transportEdit,
+ donateInfo,
+ donateList,
+ donateEdit
+} from "@/api/businessApi/index";
import UploadAttachment from "@/components/UploadAttachment";
import FilePreviewDialog from "@/components/FilePreviewDialog";
import dayjs from "dayjs";
@@ -466,7 +482,11 @@
if (val) {
if (this.isEdit) {
// 缂栬緫妯″紡锛屼娇鐢ㄤ紶鍏ョ殑杞繍鍗曟暟鎹�
- this.formData = { ...this.getDefaultFormData(), ...this.transportData };
+
+ this.formData = {
+ ...this.getDefaultFormData(),
+ ...this.transportData
+ };
} else {
// 鏂板妯″紡
this.formData = this.getDefaultFormData();
@@ -499,7 +519,6 @@
getDefaultFormData() {
return {
id: undefined,
- reportId: undefined,
caseNo: undefined,
patName: undefined,
sex: undefined,
@@ -510,7 +529,7 @@
transportStartPlace: undefined,
transportStartTime: undefined,
contactPerson: undefined,
- transitStatus: 1,
+ transitStatus: 2,
doctor: undefined,
doctorPhone: undefined,
nurse: undefined,
@@ -533,16 +552,17 @@
fillFormWithCaseData(caseData) {
this.formData = {
...this.formData,
- caseNo: caseData.caseNo || '',
- patName: caseData.name || '',
- sex: caseData.sex || '',
- age: caseData.age || '',
- diagnosisname: caseData.diagnosisname || '',
- treatmentHospitalName: caseData.treatmenthospitalname || '',
- treatmentDeptName: caseData.treatmentdeptname || '',
+ caseNo: caseData.caseNo || "",
+ patName: caseData.name || "",
+ sex: caseData.sex || "",
+ age: caseData.age || "",
+ reportId: caseData.id || null,
+ diagnosisname: caseData.diagnosisname || "",
+ treatmentHospitalName: caseData.treatmenthospitalname || "",
+ treatmentDeptName: caseData.treatmentdeptname || "",
// 鍙互璁剧疆涓�浜涢粯璁ゅ��
- transportStartPlace: caseData.treatmenthospitalname || '',
- contactPerson: caseData.coordinatorName || ''
+ transportStartPlace: caseData.treatmenthospitalname || "",
+ contactPerson: caseData.coordinatorName || ""
};
},
@@ -550,12 +570,14 @@
initAttachmentList() {
if (this.isEdit && this.transportData.annexfilesList) {
this.formData.annexfilesList = [...this.transportData.annexfilesList];
- this.attachmentFileList = this.transportData.annexfilesList.map(item => ({
- uid: item.id || Math.random(),
- name: item.fileName,
- url: item.path || item.fileUrl,
- status: 'success'
- }));
+ this.attachmentFileList = this.transportData.annexfilesList.map(
+ item => ({
+ uid: item.id || Math.random(),
+ name: item.fileName,
+ url: item.path || item.fileUrl,
+ status: "success"
+ })
+ );
} else {
this.formData.annexfilesList = [];
this.attachmentFileList = [];
@@ -570,8 +592,8 @@
/** 闄勪欢绉婚櫎澶勭悊 */
handleAttachmentRemove(file) {
if (file.url) {
- const index = this.formData.annexfilesList.findIndex(item =>
- item.path === file.url || item.fileUrl === file.url
+ const index = this.formData.annexfilesList.findIndex(
+ item => item.path === file.url || item.fileUrl === file.url
);
if (index > -1) {
this.formData.annexfilesList.splice(index, 1);
@@ -583,7 +605,7 @@
handleRemoveAttachment(index) {
this.formData.annexfilesList.splice(index, 1);
this.attachmentFileList.splice(index, 1);
- this.$message.success('闄勪欢鍒犻櫎鎴愬姛');
+ this.$message.success("闄勪欢鍒犻櫎鎴愬姛");
},
/** 涓婁紶鎴愬姛澶勭悊 */
@@ -594,21 +616,21 @@
path: response.data || file.url,
fileUrl: response.data || file.url,
type: this.getFileExtension(file.name),
- createTime: dayjs().format('YYYY-MM-DD HH:mm:ss'),
+ createTime: dayjs().format("YYYY-MM-DD HH:mm:ss"),
transportId: this.formData.id,
delFlag: 0,
caseNo: this.formData.caseNo
};
this.formData.annexfilesList.push(attachmentObj);
- this.$message.success('鏂囦欢涓婁紶鎴愬姛');
+ this.$message.success("鏂囦欢涓婁紶鎴愬姛");
}
},
/** 涓婁紶閿欒澶勭悊 */
handleUploadError({ file, fileList, error }) {
- console.error('闄勪欢涓婁紶澶辫触:', error);
- this.$message.error('鏂囦欢涓婁紶澶辫触锛岃閲嶈瘯');
+ console.error("闄勪欢涓婁紶澶辫触:", error);
+ this.$message.error("鏂囦欢涓婁紶澶辫触锛岃閲嶈瘯");
},
/** 鏂囦欢棰勮 */
@@ -627,53 +649,59 @@
const fileName = file.fileName;
if (fileUrl) {
- const link = document.createElement('a');
+ const link = document.createElement("a");
link.href = fileUrl;
link.download = fileName;
- link.style.display = 'none';
+ link.style.display = "none";
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
- this.$message.success('寮�濮嬩笅杞芥枃浠�');
+ this.$message.success("寮�濮嬩笅杞芥枃浠�");
} else {
- this.$message.warning('鏂囦欢璺緞涓嶅瓨鍦紝鏃犳硶涓嬭浇');
+ this.$message.warning("鏂囦欢璺緞涓嶅瓨鍦紝鏃犳硶涓嬭浇");
}
},
/** 鑾峰彇鏂囦欢绫诲瀷 */
getFileType(fileName) {
- if (!fileName) return 'other';
+ if (!fileName) return "other";
- const extension = fileName.split('.').pop().toLowerCase();
- const imageTypes = ['jpg', 'jpeg', 'png', 'gif', 'bmp', 'webp'];
- const pdfTypes = ['pdf'];
- const officeTypes = ['doc', 'docx', 'xls', 'xlsx', 'ppt', 'pptx'];
+ const extension = fileName
+ .split(".")
+ .pop()
+ .toLowerCase();
+ const imageTypes = ["jpg", "jpeg", "png", "gif", "bmp", "webp"];
+ const pdfTypes = ["pdf"];
+ const officeTypes = ["doc", "docx", "xls", "xlsx", "ppt", "pptx"];
- if (imageTypes.includes(extension)) return 'image';
- if (pdfTypes.includes(extension)) return 'pdf';
- if (officeTypes.includes(extension)) return 'office';
- return 'other';
+ if (imageTypes.includes(extension)) return "image";
+ if (pdfTypes.includes(extension)) return "pdf";
+ if (officeTypes.includes(extension)) return "office";
+ return "other";
},
/** 鑾峰彇鏂囦欢鎵╁睍鍚� */
getFileExtension(filename) {
- return filename.split('.').pop().toLowerCase();
+ return filename
+ .split(".")
+ .pop()
+ .toLowerCase();
},
/** 鏃ユ湡鏃堕棿鏍煎紡鍖� */
formatDateTime(dateTime) {
- if (!dateTime) return '';
+ if (!dateTime) return "";
try {
const date = new Date(dateTime);
if (isNaN(date.getTime())) return dateTime;
const year = date.getFullYear();
- const month = String(date.getMonth() + 1).padStart(2, '0');
- const day = String(date.getDate()).padStart(2, '0');
- const hours = String(date.getHours()).padStart(2, '0');
- const minutes = String(date.getMinutes()).padStart(2, '0');
- const seconds = String(date.getSeconds()).padStart(2, '0');
+ const month = String(date.getMonth() + 1).padStart(2, "0");
+ const day = String(date.getDate()).padStart(2, "0");
+ const hours = String(date.getHours()).padStart(2, "0");
+ const minutes = String(date.getMinutes()).padStart(2, "0");
+ const seconds = String(date.getSeconds()).padStart(2, "0");
return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
} catch (error) {
@@ -692,17 +720,21 @@
const valid = await this.$refs.editForm.validate();
if (!valid) return;
- const pendingFiles = this.attachmentFileList.filter(item => item.status !== 'success');
+ const pendingFiles = this.attachmentFileList.filter(
+ item => item.status !== "success"
+ );
if (pendingFiles.length > 0) {
- this.$message.warning('杩樻湁鏂囦欢鏈笂浼犲畬鎴愶紝璇峰厛涓婁紶鎵�鏈夋枃浠舵垨绉婚櫎鏈笂浼犵殑鏂囦欢');
+ this.$message.warning(
+ "杩樻湁鏂囦欢鏈笂浼犲畬鎴愶紝璇峰厛涓婁紶鎵�鏈夋枃浠舵垨绉婚櫎鏈笂浼犵殑鏂囦欢"
+ );
return;
}
this.saveLoading = true;
const requestData = { ...this.formData };
- let response;
+ let response;
if (this.isEdit) {
response = await transportEdit(requestData);
} else {
@@ -713,6 +745,16 @@
this.$message.success(this.isEdit ? "淇敼鎴愬姛" : "鏂板缓鎴愬姛");
this.handleClose();
this.$emit("save-success");
+
+ if (requestData.transitStatus == 3) {
+ const resappear = await donateInfo(requestData.reportId);
+ if (resappear.code) {
+ let obj = resappear.data;
+ obj.isDonate = 1;
+ await donateEdit(obj);
+ this.$modal.msgSuccess(`瀵瑰簲涓婃姤妗堜緥宸茶繘鍏ユ寮忔渚嬫祦绋媊);
+ }
+ }
} else {
this.$message.error(response.msg || "鎿嶄綔澶辫触");
}
@@ -788,4 +830,88 @@
.case-info-card {
border-left: 4px solid #67c23a;
}
+
+/* ===== 绾歌川琛ㄦ牸缃戞牸鏍峰紡 ===== */
+.paper-card >>> .el-card__body {
+ padding: 16px;
+}
+
+.paper-form {
+ border-left: 1px solid #d0d3db;
+ background: #fff;
+}
+
+.paper-form >>> .form-row {
+ display: flex;
+ width: 100%;
+ border-top: 1px solid #d0d3db;
+}
+
+.paper-form >>> .el-form-item {
+ flex: 0 0 33.3333%;
+ display: flex;
+ margin: 0;
+ background: #fff;
+ border-right: 1px solid #d0d3db;
+ border-bottom: 1px solid #d0d3db;
+}
+.paper-form >>> .el-form-item::after,
+.paper-form >>> .el-form-item::before {
+ display: none;
+}
+
+.paper-form >>> .col-1-3 { flex: 0 0 33.3333%; }
+.paper-form >>> .col-half { flex: 0 0 50%; }
+.paper-form >>> .col-2-3 { flex: 0 0 66.6666%; }
+.paper-form >>> .col-full { flex: 0 0 100%; }
+
+.paper-form >>> .el-form-item__label {
+ flex: 0 0 120px;
+ width: 120px !important;
+ float: none;
+ padding: 0 8px !important;
+ background: #ecf5ff;
+ border-right: 1px solid #d0d3db;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ text-align: center;
+ font-size: 13px;
+ font-weight: 600;
+ color: #2c3038;
+ line-height: 1.3;
+ white-space: normal;
+ word-break: break-all;
+}
+.paper-form >>> .el-form-item.is-required:not(.is-no-asterisk) > .el-form-item__label:before {
+ color: #f56c6c;
+ margin-right: 2px;
+}
+
+.paper-form >>> .el-form-item__content {
+ flex: 1;
+ margin-left: 0 !important;
+ display: flex;
+ align-items: center;
+ flex-wrap: wrap;
+ padding: 6px 10px;
+ background: #fff;
+ min-height: 42px;
+ line-height: 1.4;
+}
+
+/* ===== TransportEdit 鐗规畩閫傞厤锛氳〃鍗曞唴鏈夊涓垎鍖� el-card锛屾瘡涓垎鍖哄悇鑷嫭绔嬫垚瀹屾暣缃戞牸 ===== */
+.paper-form {
+ border: none;
+ background: transparent;
+}
+.paper-form >>> .paper-card {
+ border: none;
+ box-shadow: none;
+}
+.paper-form >>> .paper-card >>> .el-card__body {
+ border-top: 1px solid #d0d3db;
+ border-left: 1px solid #d0d3db;
+ background: #fff;
+}
</style>
--
Gitblit v1.9.3