|
@@ -14,12 +14,12 @@
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item v-if="addData.shopType===1" label="供应商名称:" prop="shopName">
|
|
|
- <el-select v-model="selectedBrandIndex" placeholder="请选择品牌" style="width: 100%" filterable @change="setShopName">
|
|
|
+ <el-select v-model="addData.brandId" placeholder="请选择品牌" style="width: 100%" filterable @change="setShopName">
|
|
|
<el-option
|
|
|
- v-for="(item,index) in brandList"
|
|
|
+ v-for="(item) in brandList"
|
|
|
:key="item.id"
|
|
|
:label="item.name"
|
|
|
- :value="index"
|
|
|
+ :value="item.id"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
@@ -77,7 +77,7 @@
|
|
|
<el-input v-model="addData.statementImage" type="hidden" class="hiddenInput" />
|
|
|
</el-form-item>
|
|
|
<el-form-item v-else label="文件:" prop="statementFileId">
|
|
|
- <upload-file v-if="addData.statementType === 4" ref="uploadFileRef" @success="fileUploadSuccess" @error="fileUploadFaild" />
|
|
|
+ <upload-file v-if="addData.statementType === 4" ref="uploadFileRef" :auth-user-id="addData.authUserId" @success="fileUploadSuccess" @error="fileUploadFaild" />
|
|
|
<el-input v-model="addData.statementFileId" type="hidden" class="hiddenInput" />
|
|
|
</el-form-item>
|
|
|
|
|
@@ -90,7 +90,7 @@
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
<div class="submit-btn">
|
|
|
- <el-button type="primary" @click="save">保存</el-button>
|
|
|
+ <el-button type="primary" @click="submit">保存</el-button>
|
|
|
<el-button type="warning" @click="$_back()">返回</el-button>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -118,7 +118,7 @@ export default {
|
|
|
isLoading: false,
|
|
|
|
|
|
addData: {
|
|
|
- authUserId: '', // 供应商id
|
|
|
+ authUserId: null, // 供应商id
|
|
|
brandAuthLogo: '', // 品牌授权logo
|
|
|
brandId: '', // 品牌id
|
|
|
countryId: 1, // 产地国家id
|
|
@@ -131,7 +131,7 @@ export default {
|
|
|
shopType: 1, // 供应商类型:1品牌方,2代理商
|
|
|
statementContent: '', // 声明弹窗内容
|
|
|
statementLink: '', // 声明链接
|
|
|
- statementFileId: '', // 声明文件id
|
|
|
+ statementFileId: -1, // 声明文件id
|
|
|
statementImage: '', // 声明图片
|
|
|
statementType: 1 // 代理声明类型:1弹窗 2链接 3图片 4文件(.doc .ppt .pdf)
|
|
|
},
|
|
@@ -147,7 +147,7 @@ export default {
|
|
|
linkMan: [{ required: true, message: '联系人不能为空', trigger: 'blur' }],
|
|
|
countryId: [{ required: true, message: '产地不能为空', trigger: 'change' }],
|
|
|
brandAuthLogo: [{ required: true, message: '品牌logo不能为空' }],
|
|
|
- brandId: [{ required: true, message: '所属品牌不能为空', trigger: 'change' }],
|
|
|
+ brandId: [{ required: true, message: '所属品牌不能为空', trigger: 'blur' }],
|
|
|
statementContent: [{ required: true, message: '声明不能为空', trigger: 'blur' }],
|
|
|
statementLink: [{ required: true, message: '声明链接不能为空', trigger: 'blur' }],
|
|
|
statementImage: [{ required: true, message: '声明图片不能为空' }],
|
|
@@ -170,6 +170,7 @@ export default {
|
|
|
initAddForm() {
|
|
|
// this.addData.authUserId = this.authUserId
|
|
|
this.getBrandList()
|
|
|
+ this.addData.shopName = ''
|
|
|
},
|
|
|
// 获取品牌列表
|
|
|
getBrandList() {
|
|
@@ -181,49 +182,80 @@ export default {
|
|
|
}
|
|
|
}).catch(err => console.log(err))
|
|
|
},
|
|
|
- // 保存表单数据
|
|
|
- async save() {
|
|
|
+ // 提交表单数据
|
|
|
+ async submit() {
|
|
|
this.isLoading = true
|
|
|
- this.addData.createBy = this.authUserId
|
|
|
- const that = this
|
|
|
- // this.uploadFile()
|
|
|
- await this.$refs.addFormRef.validate(valide => {
|
|
|
- if (!valide) {
|
|
|
- this.isLoading = false
|
|
|
- return
|
|
|
- }
|
|
|
- addSupplier(that.addData).then(res => {
|
|
|
- console.log(res)
|
|
|
- this.$message.success('添加成功')
|
|
|
- // this.$refs.addFormRef.resetFields()
|
|
|
- }).finally(() => {
|
|
|
- this.isLoading = false
|
|
|
- this.$refs.addFormRef.resetFields()
|
|
|
- this.addData.securityLink = ''
|
|
|
+ if (this.addData.statementType === 4) {
|
|
|
+ debugger
|
|
|
+ console.log(this.$refs)
|
|
|
+ this.$refs.uploadFileRef.$refs.upload.submit()
|
|
|
+ } else {
|
|
|
+ await this.$refs.addFormRef.validate(valide => {
|
|
|
+ if (!valide) {
|
|
|
+ this.isLoading = false
|
|
|
+ return
|
|
|
+ }
|
|
|
+ this.save()
|
|
|
})
|
|
|
+ }
|
|
|
+ },
|
|
|
+ // 保存
|
|
|
+ async save() {
|
|
|
+ this.addData.createBy = this.authUserId
|
|
|
+ addSupplier(this.addData).then(res => {
|
|
|
+ console.log(res)
|
|
|
+ this.$message.success('添加成功')
|
|
|
+ this.$refs.addFormRef.resetFields()
|
|
|
+ this.clearFormData()
|
|
|
+ this.$router.replace('/supplier')
|
|
|
+ }).finally(() => {
|
|
|
+ this.isLoading = false
|
|
|
+ this.$refs.addFormRef.resetFields()
|
|
|
+ this.addData.securityLink = ''
|
|
|
})
|
|
|
},
|
|
|
// 设置品牌名称
|
|
|
- setShopName(index) {
|
|
|
+ setShopName(id) {
|
|
|
const fileList = []
|
|
|
+ let selectBrand = {}
|
|
|
+ this.brandList.forEach((item, index) => {
|
|
|
+ if (item.id === id) {
|
|
|
+ selectBrand = item
|
|
|
+ return
|
|
|
+ }
|
|
|
+ })
|
|
|
+ console.log(selectBrand)
|
|
|
if (this.addData.shopType === 1) {
|
|
|
- this.addData.shopName = this.brandList[index]?.name
|
|
|
+ this.addData.shopName = selectBrand.name
|
|
|
}
|
|
|
- this.addData.brandAuthLogo = this.brandList[index]?.authLogo || ''
|
|
|
- if (this.brandList[index]?.authLogo) {
|
|
|
- fileList.push({ name: this.addData.shopName, url: this.brandList[index]?.authLogo || '' })
|
|
|
+ this.addData.brandAuthLogo = selectBrand.authLogo
|
|
|
+ if (selectBrand.authLogo) {
|
|
|
+ fileList.push({ name: this.addData.shopName, url: selectBrand.authLogo || '' })
|
|
|
}
|
|
|
this.fileList1 = fileList
|
|
|
+ // const fileList = []
|
|
|
+ // if (this.addData.shopType === 1) {
|
|
|
+ // this.addData.shopName = this.brandList[index]?.name
|
|
|
+ // }
|
|
|
+ // this.addData.brandAuthLogo = this.brandList[index]?.authLogo || ''
|
|
|
+ // if (this.brandList[index]?.authLogo) {
|
|
|
+ // fileList.push({ name: this.addData.shopName, url: this.brandList[index]?.authLogo || '' })
|
|
|
+ // }
|
|
|
+ // this.fileList1 = fileList
|
|
|
},
|
|
|
- // 手动提交上传图片
|
|
|
- // uploadFile() {
|
|
|
- // this.$refs.uploadImageRef1?.$refs.upload.submit()
|
|
|
- // this.$refs.uploadImageRef2?.$refs.upload.submit()
|
|
|
- // this.$refs.uploadfileRef?.$refs.upload.submit()
|
|
|
- // },
|
|
|
// 文件上传成功
|
|
|
fileUploadSuccess(data) {
|
|
|
this.addData.statementFileId = data.data
|
|
|
+ // this.uploadFile()
|
|
|
+ console.log(data)
|
|
|
+ this.$refs.addFormRef.validate(valide => {
|
|
|
+ if (!valide) {
|
|
|
+ this.isLoading = false
|
|
|
+ return
|
|
|
+ }
|
|
|
+ console.log(2)
|
|
|
+ this.save()
|
|
|
+ })
|
|
|
},
|
|
|
fileUploadFaild(err, file, fileList) {
|
|
|
console.log(err)
|
|
@@ -243,7 +275,34 @@ export default {
|
|
|
},
|
|
|
imageUploadFaild2(err, file, fileList) {
|
|
|
console.log(err)
|
|
|
+ }, // removeImage1() {
|
|
|
+ // this.fileList1 = []
|
|
|
+ // },
|
|
|
+
|
|
|
+ clearFormData() {
|
|
|
+ this.addData = {
|
|
|
+ authUserId: '', // 供应商id
|
|
|
+ brandAuthLogo: '', // 品牌授权logo
|
|
|
+ brandId: '', // 品牌id
|
|
|
+ countryId: 1, // 产地国家id
|
|
|
+ createBy: '', // 创建人用户id
|
|
|
+ linkMan: '', // 联系人
|
|
|
+ mobile: '', // 手机号
|
|
|
+ securityLink: '', // 官网认证链接
|
|
|
+ shopName: '', // 供应商名称
|
|
|
+ shopStatus: 1, // 供应商状态:0停用 1启用
|
|
|
+ shopType: 1, // 供应商类型:1品牌方,2代理商
|
|
|
+ statementContent: '', // 声明弹窗内容
|
|
|
+ statementLink: '', // 声明链接
|
|
|
+ statementFileId: '', // 声明文件id
|
|
|
+ statementImage: '', // 声明图片
|
|
|
+ statementType: 1 // 代理声明类型:1弹窗 2链接 3图片 4文件(.doc .ppt .pdf)
|
|
|
+ }
|
|
|
+ this.fileList1 = []
|
|
|
+ this.fileList2 = []
|
|
|
+ this.fileList3 = []
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
</script>
|