|  | @@ -3,25 +3,36 @@
 | 
	
		
			
				|  |  |      <el-form
 | 
	
		
			
				|  |  |        ref="formRef"
 | 
	
		
			
				|  |  |        :model="formData"
 | 
	
		
			
				|  |  | -      label-width="100px"
 | 
	
		
			
				|  |  | +      label-width="170px"
 | 
	
		
			
				|  |  |        v-loading="formLoading"
 | 
	
		
			
				|  |  |      >
 | 
	
		
			
				|  |  | -			<el-form-item label="企业ID" prop="enterpriseId" :rules="[{ required: true, message: '请输入企业ID', trigger: 'blur'}]">
 | 
	
		
			
				|  |  | +			<!-- <el-form-item label="企业ID" prop="enterpriseId" :rules="[{ required: true, message: '请输入企业ID', trigger: 'blur'}]">
 | 
	
		
			
				|  |  |          <el-input v-model="formData.enterpriseId" />
 | 
	
		
			
				|  |  |        </el-form-item>
 | 
	
		
			
				|  |  |        <el-form-item label="企业名称" prop="title" :rules="[{ required: true, message: '请输入企业名称', trigger: 'blur'}]">
 | 
	
		
			
				|  |  |          <el-input v-model="formData.title" />
 | 
	
		
			
				|  |  | +      </el-form-item> -->
 | 
	
		
			
				|  |  | +      <el-form-item label="企业名称" prop="enterpriseId" :rules="[{ required: true, message: '请选择企业', trigger: 'blur'}]">
 | 
	
		
			
				|  |  | +        <el-select-v2
 | 
	
		
			
				|  |  | +          ref="selectRef"
 | 
	
		
			
				|  |  | +          v-model="formData.enterpriseId"
 | 
	
		
			
				|  |  | +          :options="enterpriseList"
 | 
	
		
			
				|  |  | +          placeholder="请输入企业名称进行查找"
 | 
	
		
			
				|  |  | +          filterable
 | 
	
		
			
				|  |  | +          :props="{ label: 'name', value: 'id' }"
 | 
	
		
			
				|  |  | +          @blur="handleChange"
 | 
	
		
			
				|  |  | +        />
 | 
	
		
			
				|  |  |        </el-form-item>
 | 
	
		
			
				|  |  | -      <el-form-item label="企业LOGO" prop="logo">
 | 
	
		
			
				|  |  | +      <el-form-item label="顶部轮播图左上角LOGO" prop="logo">
 | 
	
		
			
				|  |  |          <UploadImg v-model="formData.logo" height="150px" width="150px" />
 | 
	
		
			
				|  |  |        </el-form-item>
 | 
	
		
			
				|  |  | -      <el-form-item label="轮播图" prop="carousel" :rules="[{ required: true, message: '请上传企业轮播图', trigger: 'change'}]">
 | 
	
		
			
				|  |  | +      <el-form-item label="顶部轮播图" prop="carousel" :rules="[{ required: true, message: '请上传企业轮播图', trigger: 'change'}]">
 | 
	
		
			
				|  |  |          <UploadImgs v-model="formData.carousel" />
 | 
	
		
			
				|  |  |        </el-form-item>
 | 
	
		
			
				|  |  |  			<el-form-item label="简介标题" prop="introduce.title" :rules="[{ required: true, message: '请输入简介标题', trigger: 'blur'}]">
 | 
	
		
			
				|  |  |          <el-input v-model="formData.introduce.title" />
 | 
	
		
			
				|  |  |        </el-form-item>
 | 
	
		
			
				|  |  | -			<el-form-item label="简介内容" prop="introduce.describe" :rules="[{ required: true, message: '请输入简介内容', trigger: 'blur'}]">
 | 
	
		
			
				|  |  | +			<el-form-item label="集团简介" prop="introduce.describe" :rules="[{ required: true, message: '请输入简介内容', trigger: 'blur'}]">
 | 
	
		
			
				|  |  |          <Editor v-model:modelValue="formData.introduce.describe" />
 | 
	
		
			
				|  |  |        </el-form-item>
 | 
	
		
			
				|  |  |  			<el-form-item label="简介小图" prop="introduce.thumbnail">
 | 
	
	
		
			
				|  | @@ -33,11 +44,9 @@
 | 
	
		
			
				|  |  |  			<el-form-item label="简介大图高度" prop="introduce.bigPicture.height">
 | 
	
		
			
				|  |  |          <el-input v-model="formData.introduce.bigPicture.height" />
 | 
	
		
			
				|  |  |        </el-form-item>
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |        <el-form-item label="品牌介绍" prop="">
 | 
	
		
			
				|  |  |          <el-button @click="showBrandDialog = true" type="primary">编 辑</el-button>
 | 
	
		
			
				|  |  |        </el-form-item>
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |      </el-form>
 | 
	
		
			
				|  |  |      <template #footer>
 | 
	
		
			
				|  |  |        <el-button @click="submitForm" type="primary" :disabled="formLoading">确 定</el-button>
 | 
	
	
		
			
				|  | @@ -46,13 +55,16 @@
 | 
	
		
			
				|  |  |    </Dialog>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |    <Dialog title="品牌介绍" v-model="showBrandDialog" style="width: 70%;">
 | 
	
		
			
				|  |  | +    <div class="text-right">
 | 
	
		
			
				|  |  | +      <el-button type="primary" @click="handleAdd"><Icon icon="ep:plus" class="mr-5px" />新 增</el-button>
 | 
	
		
			
				|  |  | +    </div>
 | 
	
		
			
				|  |  |      <el-table :data="formData.brandIntroduce" :stripe="true">
 | 
	
		
			
				|  |  |        <el-table-column label="品牌名称" align="center" prop="content">
 | 
	
		
			
				|  |  |          <template #default="scope">
 | 
	
		
			
				|  |  |            <el-input type="textarea" :rows="2" v-model="scope.row.content" />
 | 
	
		
			
				|  |  |          </template>
 | 
	
		
			
				|  |  |        </el-table-column>
 | 
	
		
			
				|  |  | -      <el-table-column label="品牌图片" align="center" prop="title" width="300">
 | 
	
		
			
				|  |  | +      <el-table-column label="品牌图片" align="center" prop="url" width="300">
 | 
	
		
			
				|  |  |          <template #default="scope">
 | 
	
		
			
				|  |  |            <UploadImg v-model="scope.row.url" height="150px" width="280px" />
 | 
	
		
			
				|  |  |          </template>
 | 
	
	
		
			
				|  | @@ -80,6 +92,7 @@ import { WebContentApi } from '@/api/menduner/system/web'
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  /** 页面内容 表单 */
 | 
	
		
			
				|  |  |  defineOptions({ name: 'WebContentForm' })
 | 
	
		
			
				|  |  | +defineProps({ enterpriseList: Array })
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  const { t } = useI18n() // 国际化
 | 
	
		
			
				|  |  |  const message = useMessage() // 消息弹窗
 | 
	
	
		
			
				|  | @@ -108,6 +121,11 @@ const formData = ref({
 | 
	
		
			
				|  |  |  const showBrandDialog = ref(false)
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  const formRef = ref() // 表单 Ref
 | 
	
		
			
				|  |  | +const selectRef = ref()
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +const handleChange = () => {
 | 
	
		
			
				|  |  | +  formData.value.title = selectRef.value.currentPlaceholder
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  /** 打开弹窗 */
 | 
	
		
			
				|  |  |  const result = ref({})
 | 
	
	
		
			
				|  | @@ -139,20 +157,25 @@ const handleDeleteBrand = (index) => {
 | 
	
		
			
				|  |  |    delete formData.value.brandIntroduce[index]
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  const handleBrandSubmit = () => {
 | 
	
		
			
				|  |  | +  const checkValue = formData.value.brandIntroduce.every(item => item.content.trim() && item.url && item.desc.trim())
 | 
	
		
			
				|  |  | +  if (!checkValue) return message.warning('请将列表中的项填写完整')
 | 
	
		
			
				|  |  |    showBrandDialog.value = false
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +// 提交表单
 | 
	
		
			
				|  |  | +const handleAdd = () => {
 | 
	
		
			
				|  |  | +  formData.value.brandIntroduce.push({ content: '', url: '', desc: '' })
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  /** 提交表单 */
 | 
	
		
			
				|  |  |  const emit = defineEmits(['success']) // 定义 success 事件,用于操作成功后的回调
 | 
	
		
			
				|  |  |  const submitForm = async () => {
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |    // 校验表单
 | 
	
		
			
				|  |  |    await formRef.value.validate()
 | 
	
		
			
				|  |  |  	
 | 
	
		
			
				|  |  | -	if (!editId.value) {
 | 
	
		
			
				|  |  | -		result.value[currentKey.value][formData.value.enterpriseId] = formData.value
 | 
	
		
			
				|  |  | -		delete result.value[currentKey.value][formData.value.enterpriseId].enterpriseId
 | 
	
		
			
				|  |  | -	}
 | 
	
		
			
				|  |  | +	result.value[currentKey.value][formData.value.enterpriseId] = formData.value
 | 
	
		
			
				|  |  | +  if (editId.value !== formData.value.enterpriseId) delete result.value[currentKey.value][editId.value]
 | 
	
		
			
				|  |  | +  else delete result.value[currentKey.value][formData.value.enterpriseId].enterpriseId
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |    // 提交请求
 | 
	
		
			
				|  |  |    formLoading.value = true
 |