From 56d21bd34dd3cbb50aec4f19afd437599a04ce2d Mon Sep 17 00:00:00 2001
From: zhangwencui <1064582902@qq.com>
Date: 星期三, 11 二月 2026 14:44:51 +0800
Subject: [PATCH] 知识库新增时,适用场景无法输入,创建人不是下拉选择框
---
src/pages/managementMeetings/knowledgeBase/detail.vue | 93 ++++++++++++++++++++++++++++++++--------------
1 files changed, 65 insertions(+), 28 deletions(-)
diff --git a/src/pages/managementMeetings/knowledgeBase/detail.vue b/src/pages/managementMeetings/knowledgeBase/detail.vue
index 0cde8ee..a79e4bc 100644
--- a/src/pages/managementMeetings/knowledgeBase/detail.vue
+++ b/src/pages/managementMeetings/knowledgeBase/detail.vue
@@ -32,7 +32,7 @@
prop="scenario"
border-bottom>
<u-input v-model="form.scenario"
- readonly="readonly"
+ :readonly="readonly"
placeholder="璇疯緭鍏ラ�傜敤鍦烘櫙" />
</u-form-item>
<u-form-item label="瑙e喅鏁堢巼"
@@ -81,8 +81,17 @@
prop="creator"
border-bottom>
<u-input v-model="form.creator"
+ readonly
+ placeholder="璇烽�夋嫨鍒涘缓浜�"
+ @click="openCreatorSheet" />
+ <template v-if="!readonly"
+ #right>
+ <up-icon name="arrow-right"
+ @click="openCreatorSheet"></up-icon>
+ </template>
+ <!-- <u-input v-model="form.creator"
:readonly="readonly"
- placeholder="璇疯緭鍏ュ垱寤轰汉" />
+ placeholder="璇疯緭鍏ュ垱寤轰汉" /> -->
</u-form-item>
<u-form-item label="浣跨敤娆℃暟"
prop="usageCount"
@@ -109,6 +118,10 @@
:actions="equipmentOptions"
@select="handleEquipmentChange"
@close="showEquipmentSheet = false" />
+ <up-action-sheet :show="showCreatorSheet"
+ :actions="creatorOptions"
+ @select="handleCreatorChange"
+ @close="showCreatorSheet = false" />
<!-- <u-popup :show="showEquipmentSheet"
mode="bottom"
@close="showEquipmentSheet = false"
@@ -156,8 +169,8 @@
import {
addKnowledgeBase,
updateKnowledgeBase,
- getKnowledgeBaseDetail,
} from "@/api/managementMeetings/knowledgeBase";
+ import { userListNoPageByTenantId } from "@/api/system/user";
const userStore = useUserStore();
@@ -199,6 +212,32 @@
form.value.efficiency = action.value;
statusname.value = action.name;
showStatusSheet.value = false;
+ };
+ const showCreatorSheet = ref(false);
+ const creatorOptions = ref([]);
+ const openCreatorSheet = () => {
+ showCreatorSheet.value = true;
+ };
+ const getCreatorOptions = async () => {
+ try {
+ const res = await userListNoPageByTenantId();
+ if (res.code === 200) {
+ creatorOptions.value = res.data || [];
+ creatorOptions.value.forEach(item => {
+ item.name = item.nickName;
+ item.value = item.userId;
+ });
+ } else {
+ showToast("鑾峰彇鍒涘缓浜哄垪琛ㄥけ璐�");
+ }
+ } catch (e) {
+ console.error("鑾峰彇鍒涘缓浜哄垪琛ㄥけ璐�:", e);
+ showToast("鑾峰彇鍒涘缓浜哄垪琛ㄥけ璐�");
+ }
+ };
+ // 鍒涘缓浜洪�夋嫨
+ const handleCreatorChange = val => {
+ form.value.creator = val.name;
};
const equipmentname = ref("");
// 璁惧閰嶇疆閫夋嫨
@@ -284,37 +323,19 @@
const detailType = ref(1);
const knowledgeId = ref("");
- // 鑾峰彇鐭ヨ瘑璇︽儏
- const getKnowledgeDetail = id => {
- loading.value = true;
- getKnowledgeBaseDetail(id)
- .then(res => {
- loading.value = false;
- if (res.code === 200) {
- form.value = res.data;
- equipmentname.value =
- equipmentOptions.value.find(item => item.value === form.value.type)
- ?.name || "";
- statusname.value =
- statusOptions.value.find(item => item.value === form.value.efficiency)
- ?.name || "";
- } else {
- showToast("鑾峰彇鐭ヨ瘑璇︽儏澶辫触");
- }
- })
- .catch(err => {
- loading.value = false;
- showToast("鑾峰彇鐭ヨ瘑璇︽儏澶辫触");
- });
- };
-
onLoad(options => {
detailType.value = Number(options.detailType);
knowledgeId.value = options.id || "";
// 濡傛灉鏄紪杈戞垨鏌ョ湅妯″紡锛岃幏鍙栫煡璇嗚鎯�
if (knowledgeId.value && (detailType.value === 2 || detailType.value === 3)) {
- getKnowledgeDetail(knowledgeId.value);
+ // getKnowledgeDetail(knowledgeId.value);
+ equipmentname.value =
+ equipmentOptions.value.find(item => item.value === form.value.type)
+ ?.name || "";
+ statusname.value =
+ statusOptions.value.find(item => item.value === form.value.efficiency)
+ ?.name || "";
}
// 鏌ョ湅妯″紡璁剧疆鍙
@@ -324,6 +345,7 @@
});
onMounted(() => {
+ getCreatorOptions();
// 浠庢湰鍦板瓨鍌ㄤ腑鑾峰彇鐭ヨ瘑鏁版嵁
const knowledgeBase = uni.getStorageSync("knowledgeBase");
if (knowledgeBase) {
@@ -335,6 +357,21 @@
value: item.value,
name: item.label,
}));
+ if (detailType.value === 1) {
+ form.value = {
+ title: "",
+ type: "",
+ scenario: "",
+ efficiency: "",
+ problem: "",
+ solution: "",
+ keyPoints: "",
+ creator: "",
+ usageCount: 0,
+ };
+ equipmentname.value = "";
+ statusname.value = "";
+ }
if (detailType.value != 1) {
equipmentname.value =
--
Gitblit v1.9.3