|
|
@@ -14,12 +14,12 @@
|
|
|
<el-row :gutter="20">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="品牌名称" prop="brandName">
|
|
|
- <el-input v-model="form.brandName" placeholder="京东方" />
|
|
|
+ <el-input v-model="form.brandName" placeholder="京东方" :disabled="isView" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="品牌首字母" prop="brandInitials">
|
|
|
- <el-input v-model="form.brandInitials" placeholder="请输入品牌首字母" />
|
|
|
+ <el-form-item label="品牌首字母" prop="brandInitials" required>
|
|
|
+ <el-input v-model="form.brandInitials" placeholder="请输入品牌首字母" :disabled="isView" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
@@ -27,7 +27,7 @@
|
|
|
<el-row :gutter="20">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="品牌名称(英文)" prop="brandEnglishName">
|
|
|
- <el-input v-model="form.brandEnglishName" placeholder="请输入品牌英文名称" />
|
|
|
+ <el-input v-model="form.brandEnglishName" placeholder="请输入品牌英文名称" :disabled="isView" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
@@ -39,50 +39,58 @@
|
|
|
controls-position="right"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入推荐系数"
|
|
|
+ :disabled="isView"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
|
|
|
<el-form-item label="品牌标题" prop="brandTitle">
|
|
|
- <el-input v-model="form.brandTitle" placeholder="请输入内容" />
|
|
|
+ <el-input v-model="form.brandTitle" placeholder="请输入内容" :disabled="isView" />
|
|
|
</el-form-item>
|
|
|
|
|
|
- <el-form-item label="品牌LOGO" prop="brandLogo">
|
|
|
- <image-upload v-model="form.brandLogo" />
|
|
|
+ <el-form-item label="品牌LOGO" prop="brandLogo" required>
|
|
|
+ <image-upload v-model="form.brandLogo" valueType="url" :isShowTip="false" :disabled="isView" />
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item label="品牌故事" prop="brandStory">
|
|
|
- <el-input v-model="form.brandStory" type="textarea" :rows="3" placeholder="请输入内容" />
|
|
|
+ <el-input v-model="form.brandStory" type="textarea" :rows="3" placeholder="请输入内容" :disabled="isView" />
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item label="是否显示" prop="isShow">
|
|
|
- <el-radio-group v-model="form.isShow">
|
|
|
- <el-radio :value="1">是</el-radio>
|
|
|
- <el-radio :value="0">否</el-radio>
|
|
|
- </el-radio-group>
|
|
|
- <div class="text-gray-500 text-sm mt-2">
|
|
|
- 当品牌下还没有商品的时候。分类的品牌区不会不显示品牌。
|
|
|
+ <div class="flex flex-col items-start">
|
|
|
+ <el-radio-group v-model="form.isShow" :disabled="isView">
|
|
|
+ <el-radio :value="1">是</el-radio>
|
|
|
+ <el-radio :value="0">否</el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+ <div class="text-gray-500 text-sm leading-5 mt-1">
|
|
|
+ 当品牌下还没有商品的时候。分类的品牌区不会不显示品牌。
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item label="品牌介绍" prop="brandDescribe">
|
|
|
- <editor v-model="form.brandDescribe" :min-height="192" />
|
|
|
+ <template v-if="isView">
|
|
|
+ <div class="w-full" v-html="form.brandDescribe"></div>
|
|
|
+ </template>
|
|
|
+ <template v-else>
|
|
|
+ <editor v-model="form.brandDescribe" :min-height="192" />
|
|
|
+ </template>
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item label="商标注册人" prop="brandRegistrant">
|
|
|
- <el-input v-model="form.brandRegistrant" placeholder="请输入商标注册人" />
|
|
|
+ <el-input v-model="form.brandRegistrant" placeholder="请输入商标注册人" :disabled="isView" />
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-row :gutter="20">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="上传营业执照" prop="license">
|
|
|
- <image-upload v-model="form.license" />
|
|
|
+ <image-upload v-model="form.license" valueType="url" :isShowTip="false" :disabled="isView" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="上传商标注册证" prop="registrationCertificate">
|
|
|
- <image-upload v-model="form.registrationCertificate" />
|
|
|
+ <image-upload v-model="form.registrationCertificate" valueType="url" :isShowTip="false" :disabled="isView" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
@@ -94,32 +102,35 @@
|
|
|
value-format="YYYY-MM-DD HH:mm:ss"
|
|
|
placeholder="请选择"
|
|
|
style="width: 100%"
|
|
|
+ :disabled="isView"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
|
|
|
- <el-divider content-position="left">授权信息</el-divider>
|
|
|
-
|
|
|
- <el-table :data="authorizationList" border style="margin-bottom: 20px">
|
|
|
- <el-table-column label="供应商名称" prop="supplierName" align="center" />
|
|
|
- <el-table-column label="品牌名称" prop="brandName" align="center" />
|
|
|
- <el-table-column label="一级类目" prop="firstCategory" align="center" />
|
|
|
- <el-table-column label="二级类目" prop="secondCategory" align="center" />
|
|
|
- <el-table-column label="三级类目" prop="thirdCategory" align="center" />
|
|
|
- <el-table-column label="截止时间" prop="deadline" align="center" />
|
|
|
- <el-table-column label="授权区域(省)" prop="provinceArea" align="center" />
|
|
|
- <el-table-column label="授权区域(市)" prop="cityArea" align="center" />
|
|
|
- <el-table-column label="状态" prop="status" align="center" />
|
|
|
- <el-table-column label="操作" align="center">
|
|
|
- <template #default="scope">
|
|
|
- <el-button link type="primary" size="small" @click="handleEditAuth(scope.$index)">编辑</el-button>
|
|
|
- <el-button link type="danger" size="small" @click="handleDeleteAuth(scope.$index)">删除</el-button>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- </el-table>
|
|
|
-
|
|
|
- <el-button type="primary" plain @click="handleAddAuth">添加授权</el-button>
|
|
|
-
|
|
|
- <el-form-item>
|
|
|
+ <el-form-item v-if="!isAdd" label="授权信息:" style="margin-bottom: 0">
|
|
|
+ <div class="w-full">
|
|
|
+ <el-table :data="authorizationList" border style="margin-bottom: 20px">
|
|
|
+ <el-table-column label="供应商名称" prop="supplierName" align="center" />
|
|
|
+ <el-table-column label="品牌名称" prop="brandName" align="center" />
|
|
|
+ <el-table-column label="一级类目" prop="firstCategory" align="center" />
|
|
|
+ <el-table-column label="二级类目" prop="secondCategory" align="center" />
|
|
|
+ <el-table-column label="三级类目" prop="thirdCategory" align="center" />
|
|
|
+ <el-table-column label="截止时间" prop="deadline" align="center" />
|
|
|
+ <el-table-column label="授权区域(省)" prop="provinceArea" align="center" />
|
|
|
+ <el-table-column label="授权区域(市)" prop="cityArea" align="center" />
|
|
|
+ <el-table-column label="状态" prop="status" align="center" />
|
|
|
+ <el-table-column label="操作" align="center">
|
|
|
+ <template #default="scope">
|
|
|
+ <template v-if="!isView">
|
|
|
+ <el-button link type="primary" size="small" @click="handleEditAuth(scope.$index)">编辑</el-button>
|
|
|
+ <el-button link type="danger" size="small" @click="handleDeleteAuth(scope.$index)">删除</el-button>
|
|
|
+ </template>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+ </div>
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item v-if="!isView">
|
|
|
<el-button type="primary" :loading="buttonLoading" @click="submitForm">保存</el-button>
|
|
|
<el-button @click="goBack">取消</el-button>
|
|
|
</el-form-item>
|
|
|
@@ -136,10 +147,15 @@ const route = useRoute();
|
|
|
const router = useRouter();
|
|
|
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
|
|
|
|
|
|
+const isAdd = computed(() => route.query.type === 'add');
|
|
|
+const isView = computed(() => route.query.type === 'view');
|
|
|
+
|
|
|
const brandFormRef = ref<ElFormInstance>();
|
|
|
const buttonLoading = ref(false);
|
|
|
const pageTitle = computed(() => {
|
|
|
- return route.query.type === 'add' ? '新增品牌' : '编辑品牌';
|
|
|
+ if (route.query.type === 'add') return '新增品牌';
|
|
|
+ if (route.query.type === 'view') return '查看品牌';
|
|
|
+ return '编辑品牌';
|
|
|
});
|
|
|
|
|
|
// 授权信息列表
|
|
|
@@ -175,10 +191,13 @@ const rules = reactive({
|
|
|
{ required: true, message: "品牌名称不能为空", trigger: "blur" }
|
|
|
],
|
|
|
brandInitials: [
|
|
|
- { required: false, message: "品牌首字母缩写不能为空", trigger: "blur" }
|
|
|
+ { required: true, message: "品牌首字母不能为空", trigger: "blur" }
|
|
|
],
|
|
|
brandEnglishName: [
|
|
|
{ required: false, message: "品牌英文名称不能为空", trigger: "blur" }
|
|
|
+ ],
|
|
|
+ brandLogo: [
|
|
|
+ { required: true, message: "品牌LOGO不能为空", trigger: "change" }
|
|
|
]
|
|
|
});
|
|
|
|
|
|
@@ -220,6 +239,7 @@ const handleDeleteAuth = (index: number) => {
|
|
|
|
|
|
/** 提交表单 */
|
|
|
const submitForm = () => {
|
|
|
+ if (isView.value) return;
|
|
|
brandFormRef.value?.validate(async (valid: boolean) => {
|
|
|
if (valid) {
|
|
|
buttonLoading.value = true;
|