|
@@ -5,9 +5,7 @@
|
|
|
<view>
|
|
|
<u-popup :show="show" :overlay="false">
|
|
|
<view class="pop">
|
|
|
- <view class="contentXZ">
|
|
|
- <u-parse :content="content"></u-parse>
|
|
|
- </view><br><br><br><br><br>
|
|
|
+ <view class="contentXZ"> <u-parse :content="content"></u-parse> </view><br /><br /><br /><br /><br />
|
|
|
<view class="bottom-container">
|
|
|
<u-button @click="handleAgree" text="我已知晓" color="#5298ff" shape="circle"></u-button>
|
|
|
</view>
|
|
@@ -38,7 +36,7 @@
|
|
|
</u-radio>
|
|
|
</u-radio-group>
|
|
|
</u-form-item>
|
|
|
- <u-form-item label="所在位置" labelPosition="left" prop="" required borderBottom ref="item1">
|
|
|
+ <u-form-item label="所在位置" labelPosition="left" prop="address" required borderBottom ref="item1">
|
|
|
<view @click="handleDW" class="letText">
|
|
|
<text v-if="form.address">{{ form.address }}</text>
|
|
|
<text v-if="!form.address">请选择定位</text>
|
|
@@ -86,7 +84,7 @@
|
|
|
</u--form>
|
|
|
|
|
|
<view class="" style="padding: 50rpx 0">
|
|
|
- <u-button @click="submin" text="发布" color="#5298ff" shape="circle"></u-button>
|
|
|
+ <u-button :disabled="disabled" @click="submin" text="发布" color="#5298ff" shape="circle"></u-button>
|
|
|
</view>
|
|
|
</view>
|
|
|
<u-datetime-picker
|
|
@@ -110,6 +108,7 @@ export default {
|
|
|
components: { zjUpload },
|
|
|
data() {
|
|
|
return {
|
|
|
+ disabled: false,
|
|
|
showTime: false,
|
|
|
show: true,
|
|
|
form: {
|
|
@@ -153,38 +152,42 @@ export default {
|
|
|
trigger: ['change', 'blur']
|
|
|
}
|
|
|
],
|
|
|
- amount: [
|
|
|
+ address: [
|
|
|
{
|
|
|
required: true,
|
|
|
message: '必传',
|
|
|
trigger: ['change', 'blur']
|
|
|
}
|
|
|
],
|
|
|
- num: [
|
|
|
+ amount: [
|
|
|
{
|
|
|
required: true,
|
|
|
message: '必传',
|
|
|
trigger: ['change', 'blur']
|
|
|
- }
|
|
|
- ],
|
|
|
- power: [
|
|
|
+ },
|
|
|
{
|
|
|
- required: true,
|
|
|
- message: '必传',
|
|
|
+ pattern: /^\d+\.?\d*$/g,
|
|
|
+ // 正则检验前先将值转为字符串
|
|
|
+ transform(value) {
|
|
|
+ return String(value)
|
|
|
+ },
|
|
|
+ message: '格式不正确',
|
|
|
trigger: ['change', 'blur']
|
|
|
}
|
|
|
],
|
|
|
- energy: [
|
|
|
+ num: [
|
|
|
{
|
|
|
required: true,
|
|
|
message: '必传',
|
|
|
trigger: ['change', 'blur']
|
|
|
- }
|
|
|
- ],
|
|
|
- goodsCreateTime: [
|
|
|
+ },
|
|
|
{
|
|
|
- required: true,
|
|
|
- message: '必传',
|
|
|
+ pattern: /^\d+$/g,
|
|
|
+ // 正则检验前先将值转为字符串
|
|
|
+ transform(value) {
|
|
|
+ return String(value)
|
|
|
+ },
|
|
|
+ message: '格式不正确',
|
|
|
trigger: ['change', 'blur']
|
|
|
}
|
|
|
]
|
|
@@ -193,19 +196,26 @@ export default {
|
|
|
categoryList: [],
|
|
|
dictList: [],
|
|
|
fileList: [],
|
|
|
- url: [],
|
|
|
+ fileurl: [],
|
|
|
content: ''
|
|
|
}
|
|
|
},
|
|
|
onReady() {
|
|
|
//如果需要兼容微信小程序,并且校验规则中含有方法等,只能通过setRules方法设置规则。
|
|
|
- this.$refs.form.setRules(this.rules)
|
|
|
+ // this.$refs.form.setRules(this.rules)
|
|
|
},
|
|
|
onShow() {
|
|
|
this.getConfig()
|
|
|
this.getList()
|
|
|
this.getDictList()
|
|
|
},
|
|
|
+ watch: {
|
|
|
+ 'form.address': {
|
|
|
+ handler(nl) {
|
|
|
+ this.$refs.form.clearValidate('address')
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
methods: {
|
|
|
getConfig() {
|
|
|
this.$api
|
|
@@ -218,9 +228,9 @@ export default {
|
|
|
.catch(() => {})
|
|
|
},
|
|
|
getFiles(value) {
|
|
|
- this.url = []
|
|
|
+ this.fileurl = []
|
|
|
value.forEach(v => {
|
|
|
- this.url.push({
|
|
|
+ this.fileurl.push({
|
|
|
imgUrl: v
|
|
|
})
|
|
|
})
|
|
@@ -230,44 +240,49 @@ export default {
|
|
|
.validate()
|
|
|
.then(valid => {
|
|
|
if (valid) {
|
|
|
+ this.disabled = true
|
|
|
this.form.categoryName =
|
|
|
this.categoryList.find(v => v.categoryId === this.form.categoryId)?.categoryName ?? ''
|
|
|
let params = {
|
|
|
...this.form,
|
|
|
- goodsFiles: this.url
|
|
|
+ goodsFiles: this.fileurl
|
|
|
}
|
|
|
- this.$api
|
|
|
- .post('/goods/add', params)
|
|
|
- .then(res => {
|
|
|
- this.form = {
|
|
|
- title: '',
|
|
|
- content: '',
|
|
|
- categoryName: '',
|
|
|
- categoryId: '',
|
|
|
- lng: '',
|
|
|
- lat: '',
|
|
|
- address: '',
|
|
|
- amount: '',
|
|
|
- num: '',
|
|
|
- brand: '',
|
|
|
- power: '',
|
|
|
- province: '',
|
|
|
- city: '',
|
|
|
- area: '',
|
|
|
- street: '',
|
|
|
- energy: '',
|
|
|
- goodsCreateTime: ''
|
|
|
- }
|
|
|
- this.$refs.form.clearValidate()
|
|
|
- this.show = true
|
|
|
- this.$navToPage(
|
|
|
- {
|
|
|
- url: '/pages/index/index'
|
|
|
- },
|
|
|
- 'switchTab'
|
|
|
- )
|
|
|
- })
|
|
|
- .catch(() => {})
|
|
|
+ this.$toast('发布成功')
|
|
|
+ setTimeout(() => {
|
|
|
+ this.$api
|
|
|
+ .post('/goods/add', params)
|
|
|
+ .then(res => {
|
|
|
+ this.form = {
|
|
|
+ title: '',
|
|
|
+ content: '',
|
|
|
+ categoryName: '',
|
|
|
+ categoryId: '',
|
|
|
+ lng: '',
|
|
|
+ lat: '',
|
|
|
+ address: '',
|
|
|
+ amount: '',
|
|
|
+ num: '',
|
|
|
+ brand: '',
|
|
|
+ power: '',
|
|
|
+ province: '',
|
|
|
+ city: '',
|
|
|
+ area: '',
|
|
|
+ street: '',
|
|
|
+ energy: '',
|
|
|
+ goodsCreateTime: ''
|
|
|
+ }
|
|
|
+ this.$refs.form.clearValidate()
|
|
|
+ this.disabled = false
|
|
|
+ this.show = true
|
|
|
+ this.$navToPage(
|
|
|
+ {
|
|
|
+ url: '/pages/index/index'
|
|
|
+ },
|
|
|
+ 'switchTab'
|
|
|
+ )
|
|
|
+ })
|
|
|
+ .catch((err) => {this.$toast(err)})
|
|
|
+ }, 1000)
|
|
|
}
|
|
|
})
|
|
|
.catch(err => {
|