From c80bc467a41daa6cbae4e5515a300a8ca98cfeaa Mon Sep 17 00:00:00 2001
From: WXL <wl_5969728@163.com>
Date: 星期二, 21 七月 2026 15:44:01 +0800
Subject: [PATCH] 维护
---
pagesSub/case/index.vue | 104 +++++++++++++++++++++++++++-------------------------
1 files changed, 54 insertions(+), 50 deletions(-)
diff --git a/pagesSub/case/index.vue b/pagesSub/case/index.vue
index b924cb0..c4250e4 100644
--- a/pagesSub/case/index.vue
+++ b/pagesSub/case/index.vue
@@ -75,18 +75,16 @@
<text class="type">{{ caseItem.caseType }}</text>
</view>
</view>
- <text
- class="status"
- :class="getStatusClass(caseItem.reportStatus)"
- >{{ caseItem.statusText }}</text
- >
+ <text class="status" :class="getStatusClass(caseItem.reportStatus)">{{
+ caseItem.statusText
+ }}</text>
</view>
<view class="detail-info">
<!-- 鍩虹淇℃伅淇濇寔涓嶅彉 -->
<view class="info-item">
<text class="label">鎹愮尞缂栧彿</text>
- <text class="value">{{ caseItem.donorNo }}</text>
+ <text class="value">{{ caseItem.caseNo }}</text>
</view>
<view class="info-item">
<text class="label">鎹愮尞鑰呭鍚�</text>
@@ -234,7 +232,9 @@
</button>
<button
class="action-btn secondary"
- v-if="caseItem.reportStatus == '1' || caseItem.reportStatus == '2'"
+ v-if="
+ caseItem.reportStatus == '1' || caseItem.reportStatus == '2'
+ "
@tap.stop="editCase(caseItem)"
>
缂栬緫
@@ -277,12 +277,12 @@
</view>
</view>
</view>
-
+
<!-- 鍔犺浇鐘舵�� -->
<u-loading-page v-if="initLoading" :loading="true" text="鏁版嵁鍔犺浇涓�..." />
</view>
- <view class="float-button" @tap="createNewCase">
- <u-icon name="plus" color="#fff" size="24"></u-icon>
+ <view class="float-button" @tap="createNewCase">
+ <up-icon name="plus" color="#fff" size="24"></up-icon>
</view>
</template>
@@ -327,6 +327,7 @@
return {
id: apiData.id || apiData.donatebaseinfoReportId,
donorNo: apiData.caseNo,
+ caseNo:apiData.caseNo,
reportStatus: apiData.reportStatus,
hospitalName: apiData.treatmenthospitalname,
hospitalLogo: "/static/hospital/default.jpg",
@@ -334,14 +335,13 @@
donorName: apiData.name,
idCardNo: apiData.idcardno,
gender:
- dict.value.sys_user_sex?.find((item) => item.dictValue == apiData.sex)
- ?.dictLabel || apiData.sex,
+ dict.value.sys_user_sex?.find((item) => item.value == apiData.sex)
+ ?.label || apiData.sex,
age: apiData.age,
ageunit: apiData.ageunit,
bloodType:
- dict.value.sys_BloodType?.find(
- (item) => item.dictValue == apiData.bloodType,
- )?.dictLabel || apiData.bloodType,
+ dict.value.sys_BloodType?.find((item) => item.value == apiData.bloodType)
+ ?.label || apiData.bloodType,
diagnosis: apiData.diagnosisname,
illnessoverview: apiData.illnessoverview,
patientstate: apiData.patientstate,
@@ -381,7 +381,7 @@
};
const createNewCase = () => {
uni.navigateTo({
- url: '/pagesSub/case/CaseDetails'
+ url: "/pagesSub/case/CaseDetails",
});
};
const canCreateTransport = (caseData) => {
@@ -479,13 +479,13 @@
};
const getStatusClass = (status) => {
const map = {
- '1': 'reported', // 宸蹭笂鎶�
- '2': 'read', // 宸查槄璇�
- '3': 'agreed', // 宸插悓鎰�
- '4': 'rejected' // 宸查┏鍥�
+ 1: "reported", // 宸蹭笂鎶�
+ 2: "read", // 宸查槄璇�
+ 3: "agreed", // 宸插悓鎰�
+ 4: "rejected", // 宸查┏鍥�
};
- return map[status] || 'reported';
-}
+ return map[status] || "reported";
+};
const viewTransportDetail = (caseItem) => {
if (hasTransport(caseItem)) {
const transport = caseItem.serviceTransport[0];
@@ -527,8 +527,9 @@
}
});
-onShow(() => {
+onShow(async () => {
const transportUpdate = uni.getStorageSync("transportStatusUpdate");
+ await loadInitialData();
if (transportUpdate) {
updateTransportStatus(transportUpdate.orderNo, transportUpdate.status);
uni.removeStorageSync("transportStatusUpdate");
@@ -553,58 +554,58 @@
pageNum.value = 1;
hasMore.value = true;
}
-
+
if (loading.value || loadingMore.value || !hasMore.value) return;
-
+
if (reset) {
loading.value = true;
} else {
loadingMore.value = true;
}
-
+
try {
const params = {
pageNum: pageNum.value,
pageSize: pageSize.value,
};
-
+
// 绛涢�夋潯浠� - 濡傛灉閫夋嫨浜�"鍏ㄩ儴"锛屼笉浼爎eportStatus鍙傛暟
if (currentType.value !== "all") {
params.reportStatus = currentType.value;
}
-
+
// 鏃堕棿绛涢�夋潯浠�
if (startDate.value && endDate.value) {
// 灏嗘椂闂存牸寮忚浆鎹负鎺ュ彛闇�瑕佺殑鏍煎紡
params.startDate = startDate.value;
params.endDate = endDate.value;
}
-
+
console.log("璇锋眰鍙傛暟:", params);
-
+
const res = await uni.$uapi.post(
"/project/donatebaseinforeport/list",
params,
);
-
+
console.log("鎺ュ彛杩斿洖鏁版嵁:", res);
-
+
if (res.code == 200) {
- const data =res.data || [];
+ const data = res.data || [];
const mappedData = data.map((item) => mapApiDataToCaseItem(item));
-
+
if (reset || pageNum.value == 1) {
- console.log(mappedData,'mappedData');
-
+ console.log(mappedData, "mappedData");
+
cases.value = mappedData;
} else {
cases.value = [...cases.value, ...mappedData];
}
-
+
// 鍒ゆ柇鏄惁杩樻湁鏇村鏁版嵁
hasMore.value = data.length >= pageSize.value;
total.value = res.total || 0;
-
+
// 濡傛灉鏈夋暟鎹姞杞芥垚鍔燂紝澧炲姞椤电爜
if (data.length > 0) {
pageNum.value++;
@@ -645,15 +646,15 @@
// 璁$畻灞炴�э細绛涢�夎褰� - 鐜板湪鍙仛鍓嶇鐘舵�佺瓫閫�
const filteredCases = computed(() => {
let result = cases.value;
- console.log(result,'result');
-
+ console.log(result, "result");
+
// 鍙仛鍓嶇鐘舵�佺瓫閫夛紝鏃堕棿绛涢�夊凡缁忛�氳繃鎺ュ彛瀹炵幇
// if (currentType.value !== "all") {
// result = result.filter(
// (caseItem) => caseItem.reportStatus == currentType.value,
// );
// }
-
+
return result;
});
@@ -725,18 +726,20 @@
const confirmWithdraw = async () => {
try {
- const res = await uni.$uapi.delete(`/project/donatebaseinforeport/${currentCase.value.id}`);
-
+ const res = await uni.$uapi.delete(
+ `/project/donatebaseinforeport/${currentCase.value.id}`,
+ );
+
if (res.code === 200) {
// 浠庡垪琛ㄤ腑绉婚櫎
const index = cases.value.findIndex(
- (item) => item.id == currentCase.value.id
+ (item) => item.id == currentCase.value.id,
);
if (index !== -1) {
cases.value.splice(index, 1);
stats.value.totalCases -= 1;
}
-
+
uni.showToast({
title: "鎾ゅ洖鎴愬姛",
icon: "success",
@@ -1133,14 +1136,15 @@
}
}
}
-
- .load-more, .no-more {
+
+ .load-more,
+ .no-more {
text-align: center;
padding: 40rpx 0;
color: $text-secondary;
font-size: 28rpx;
}
-
+
.empty-state {
padding: 120rpx 0;
text-align: center;
@@ -1240,10 +1244,10 @@
box-shadow: 0 8rpx 20rpx rgba($primary-color, 0.3);
z-index: 100;
transition: all 0.3s ease;
-
+
&:active {
opacity: 0.8;
transform: scale(0.95);
}
}
-</style>
\ No newline at end of file
+</style>
--
Gitblit v1.9.3