This commit is contained in:
2025-06-23 13:58:16 +08:00
parent 9abc42de68
commit a608fcb530
2 changed files with 18 additions and 4 deletions

View File

@@ -4,7 +4,7 @@ import {ref} from "vue";
const visible = ref(false); const visible = ref(false);
const emits = defineEmits(['edit']); const emits = defineEmits(['edit']);
const {id, material} = defineProps({ const {id, material, disabled} = defineProps({
id: { id: {
type: Number, type: Number,
default: null, default: null,
@@ -12,6 +12,10 @@ const {id, material} = defineProps({
material: { material: {
type: Object, type: Object,
default: null, default: null,
},
disabled: {
type: Boolean,
default: false,
} }
}); });
@@ -42,7 +46,7 @@ const edit = () => {
</div> </div>
<template #footer> <template #footer>
<div class="flex gap-[12px] justify-end"> <div class="flex gap-[12px] justify-end">
<a-button @click="edit">编辑素材</a-button> <a-button @click="edit" :disabled="disabled">编辑素材</a-button>
<a-button @click="visible=false" type="primary">确定</a-button> <a-button @click="visible=false" type="primary">确定</a-button>
</div> </div>
</template> </template>

View File

@@ -121,6 +121,7 @@ const success = async () => {
<template v-slot:title="{record}"> <template v-slot:title="{record}">
<div class="flex flex-col gap-[12px]"> <div class="flex flex-col gap-[12px]">
<a-input <a-input
:disabled="record.status !== 0 && record.status !== 2"
v-for="v in record.childrenMaterial" v-for="v in record.childrenMaterial"
placeholder="请输入标题" placeholder="请输入标题"
v-model:model-value="v.title"> v-model:model-value="v.title">
@@ -130,6 +131,7 @@ const success = async () => {
<template v-slot:content="{record}"> <template v-slot:content="{record}">
<div class="flex flex-col gap-[12px]"> <div class="flex flex-col gap-[12px]">
<a-input <a-input
:disabled="record.status !== 0 && record.status !== 2"
v-for="v in record.childrenMaterial" v-for="v in record.childrenMaterial"
placeholder="请输入正文" placeholder="请输入正文"
v-model:model-value="v.content"> v-model:model-value="v.content">
@@ -139,7 +141,8 @@ const success = async () => {
<template v-slot:tags="{record}"> <template v-slot:tags="{record}">
<div class="flex flex-col gap-[12px]"> <div class="flex flex-col gap-[12px]">
<div class="flex gap-[12px]" v-for="v in record.childrenMaterial"> <div class="flex gap-[12px]" v-for="v in record.childrenMaterial">
<Talk v-model:model-value="v.tags"></Talk> <Talk v-model:model-value="v.tags"
:disabled="record.status !== 0 && record.status !== 2"></Talk>
</div> </div>
</div> </div>
</template> </template>
@@ -147,6 +150,7 @@ const success = async () => {
<div class="flex flex-col gap-[12px]"> <div class="flex flex-col gap-[12px]">
<div class="flex gap-[12px]" v-for="v in record.childrenMaterial"> <div class="flex gap-[12px]" v-for="v in record.childrenMaterial">
<add-material <add-material
v-if="record.status === 0 || record.status === 2"
ref="AddMaterialRef" ref="AddMaterialRef"
@success="val => v.material = val" @success="val => v.material = val"
:id="po.id" :id="po.id"
@@ -157,6 +161,7 @@ const success = async () => {
</div> </div>
</add-material> </add-material>
<view-material <view-material
:disabled="record.status !== 0 && record.status !== 2"
@edit="editMaterial(rowIndex)" @edit="editMaterial(rowIndex)"
:material="v" :material="v"
:id="po.id"> :id="po.id">
@@ -173,6 +178,7 @@ const success = async () => {
<div class="flex flex-col gap-[12px]"> <div class="flex flex-col gap-[12px]">
<div v-for="(v, index) in record.childrenMaterial" :key="index" class="flex gap-[12px]"> <div v-for="(v, index) in record.childrenMaterial" :key="index" class="flex gap-[12px]">
<add-comment <add-comment
v-if="record.status === 0 || record.status === 2"
@success="updateTable" @success="updateTable"
:material="record" :material="record"
:item="v"> :item="v">
@@ -181,7 +187,11 @@ const success = async () => {
<div>添加</div> <div>添加</div>
</div> </div>
</add-comment> </add-comment>
<comment @success="updateTable" :data="v.comment"></comment> <comment
:hide-delete="record.status !== 0 && record.status !== 2"
@success="updateTable"
:data="v.comment">
</comment>
</div> </div>
</div> </div>
</template> </template>