产品 活动自定义上传字段

master
lion 1 year ago
parent 859ecfe583
commit f2c29fb27a

@ -3,11 +3,11 @@ export const appConfig = {
//appId:"wx3dc65ce9b588727a",//孕育咨询
// baseUrl: 'http://yunyubang.localhost.com',
baseUrl:'https://yunyubang.ali251.langye.net',// 'https://yunyubang2021.langye.net', //孕育邦
// baseUrl: 'https://yybtest.ali251.langye.net',
// baseUrl:'https://yunyubang.ali251.langye.net',// 'https://yunyubang2021.langye.net', //孕育邦
baseUrl: 'https://yybtest.ali251.langye.net',
newBaseUrl: 'https://yunyubang.ali251.langye.net',
// newBaseUrl: 'http://yybtest.ali251.langye.net',
// newBaseUrl: 'https://yunyubang.ali251.langye.net',
newBaseUrl: 'http://yybtest.ali251.langye.net',
//baseUrl:'https://yybtest2021.langye.net',//孕育咨询
openidInfoKey: 'openid_info_yunyubang'

@ -127,7 +127,8 @@
<view class="buyBox">
<view class="title">请输入您的联系方式</view>
<scroll-view scroll-y="true" style="height: 700rpx;padding-bottom: 40rpx;">
<scroll-view scroll-y="true" style="height: 700rpx;padding-bottom: 40rpx;">
<view class="formCol">
<view>宝妈姓名<text style="color:red">*</text></view>
<view class="formRight"><input type="text" v-model="form.member_name" placeholder="宝妈姓名"></view>
@ -143,6 +144,14 @@
<view class="uni-input">{{form.due_date}}</view>
</picker>
</view>
</view>
<view class="formCol" v-if="modelList.length>1">
<view>产品型号<text style="color:red">*</text></view>
<view class="formRight">
<picker :value="mindex" @change="bindModelChange" :range="modelList">
<view class="uni-input">{{modelList[mindex]}}</view>
</picker>
</view>
</view>
<view class="formCol">
<view>所属区域<text style="color:red">*</text></view>
@ -151,7 +160,7 @@
<view class="uni-input">{{arrRegion[rindex]}}</view>
</picker>
<view style="display: flex;align-items: center;">
<text v-if="info.product_type.name==='实物'" style="color:red">*</text>
<text v-if="info.product_type.name==='实物' && rindex!=0" style="color:red">*</text>
<input type="text" :required="info.product_type.name==='实物'?true:false" v-if="rindex!=0" v-model="form.address" style="margin-top: 10rpx;"
placeholder="请输入具体街道/地址">
</view>
@ -251,7 +260,9 @@
info: {},
viewCounts:'',
dataList: [],
buyName:'',
buyName:'',
mindex:0,
modelList:['请选择产品型号'],
form: {
product_type: "product",
product_id: "",
@ -259,7 +270,8 @@
phone: '',
member_name: "",
member_comment: "",
promotion: "",
promotion: "",
model_name:'',
region: '',
address: '',
hospital: ''
@ -498,6 +510,10 @@
})
})
}
},
bindModelChange:function(e) {
this.mindex = e.target.value;
this.form.model_name = this.modelList[e.target.value];
},
bindRegionChange: function(e) {
this.rindex = e.target.value;
@ -796,13 +812,16 @@
return false;
}
if (this.modelList.length>1 && (this.form.model_name == "请选择产品型号" || weixin.isNull(this.form.model_name))) {
this.alert('请选择产品型号')
return
}
if (this.form.region == "请选择区域" || weixin.isNull(this.form.region)) {
this.alert('请选择区域')
return
}
if(this.info.product_type.name==='实物' && weixin.isNull(this.form.address)){
this.alert('实物商品请填写具体地址')
this.alert('请填写具体地址')
return
}
if (this.form.hospital == "请选择建卡医院") {
@ -913,7 +932,15 @@
that.info = r.data;
that.info.poster = (weixin.isNull(that.info.poster) ? "../../static/750x500.jpg" :
that.info.poster_url)
that.buyName = that.info.state=='active'?'立即购买':'已下架'
that.buyName = that.info.state=='active'?'立即购买':'已下架'
let _marr = r.data.model?JSON.parse(r.data.model):[]
if(_marr.length>0){
_marr.map(item=>{
that.modelList.push(item.name)
})
}
},
utilFail: r => {
console.log(r);

@ -290,69 +290,91 @@
</button>
</view>
<view :class="isOrder?'buyBtn':'noBtn buyBtn'" @click="toBuy">{{isOrderText}}</view>
</view>
</view>
<!-- 报名 -->
<u-popup v-model="showPop" mode="bottom" closeable="true">
<view class="buyBox">
<view class="title">请输入您的联系方式</view>
<scroll-view scroll-y="true" style="height: 700rpx;padding-bottom: 40rpx;">
<view class="formCol">
<view>姓名<text style="color:red">*</text></view>
<view class="formRight"><input type="text" v-model="form.name" placeholder="会员姓名"></view>
</view>
<view class="formCol">
<view>手机号码<text style="color:red">*</text></view>
<view class="formRight"><input type="text" v-model="form.phone" placeholder="请输入手机号码"></view>
</view>
<view class="formCol">
<view>性别<text style="color:red">*</text></view>
<view class="formRight">
<radio-group @change="changeSex" style="display: flex;align-items: center;">
<label v-for="(item, index) in ['','']" :key="index"
style="display: flex;align-items: center;margin-right: 30rpx;">
<view>
<radio :value="item" :checked="item === form.sex" />
</view>
<view>{{item}}</view>
</label>
</radio-group>
</view>
</view>
<view class="formCol">
<view>宝宝生日/预产期<text style="color:red">*</text></view>
<view class="formRight">
<picker mode="date" :value="form.budget_date" @change="bindDateChange">
<view class="uni-input">{{form.budget_date}}</view>
</picker>
</view>
</view>
<view class="formCol">
<view>所属区域<text style="color:red">*</text></view>
<view class="formRight">
<picker :value="rindex" @change="bindRegionChange" :range="arrRegion">
<view class="uni-input">{{arrRegion[rindex]}}</view>
</picker>
<!-- <input type="text" v-if="rindex!=0" v-model="form.address" style="margin-top: 10rpx;"
placeholder="请输入具体街道/地址"> -->
</view>
</view>
<view class="formCol">
<view>地址<text style="color:red"></text></view>
<view class="formRight"><input type="text" v-model="form.address" placeholder="地址"></view>
</view>
<view class="formCol">
<view>建卡医院<text style="color:red">*</text></view>
<view class="formRight">
<picker :value="hindex" @change="bindHospitalChange" :range="arrHospital">
<view class="uni-input">{{arrHospital[hindex]}}</view>
</picker>
<input type="text" v-if="arrHospital[hindex]==''" v-model="form.hospital"
style="margin-top: 10rpx;" placeholder="请输入具体建卡医院">
</view>
</view>
<view class="buyBox">
<view class="title">请输入您的联系方式</view>
<scroll-view scroll-y="true" style="height: 700rpx;padding-bottom: 40rpx;">
<block v-if="fields.length>0">
<view class="formCol" v-for="(item,index) in fields">
<view>{{item.name}}<text v-if="item.is_reqired==='是'" style="color:red">*</text></view>
<view class="formRight" v-if="item.data_id">
<view class="formRight">
<picker :id="fields_value[index].field" @change="changeList" :value="fields_value[index].index" range-key="value" :range="item.list">
<view class="uni-input">{{item.list[fields_value[index].index].value}}</view>
</picker>
</view>
</view>
<view class="formRight" v-else>
<input type="text" v-model="fields_value[index].value" :placeholder="item.name">
</view>
</view>
</block>
<block v-else>
<view class="formCol">
<view>姓名<text style="color:red">*</text></view>
<view class="formRight"><input type="text" v-model="form.name" placeholder="会员姓名"></view>
</view>
<view class="formCol">
<view>手机号码<text style="color:red">*</text></view>
<view class="formRight"><input type="text" v-model="form.phone" placeholder="请输入手机号码"></view>
</view>
<view class="formCol">
<view>性别<text style="color:red">*</text></view>
<view class="formRight">
<radio-group @change="changeSex" style="display: flex;align-items: center;">
<label v-for="(item, index) in ['','']" :key="index"
style="display: flex;align-items: center;margin-right: 30rpx;">
<view>
<radio :value="item" :checked="item === form.sex" />
</view>
<view>{{item}}</view>
</label>
</radio-group>
</view>
</view>
<view class="formCol">
<view>宝宝生日/预产期<text style="color:red">*</text></view>
<view class="formRight">
<picker mode="date" :value="form.budget_date" @change="bindDateChange">
<view class="uni-input">{{form.budget_date}}</view>
</picker>
</view>
</view>
<view class="formCol">
<view>所属区域<text style="color:red">*</text></view>
<view class="formRight">
<picker :value="rindex" @change="bindRegionChange" :range="arrRegion">
<view class="uni-input">{{arrRegion[rindex]}}</view>
</picker>
<!-- <input type="text" v-if="rindex!=0" v-model="form.address" style="margin-top: 10rpx;"
placeholder="请输入具体街道/地址"> -->
</view>
</view>
<view class="formCol">
<view>地址<text style="color:red"></text></view>
<view class="formRight"><input type="text" v-model="form.address" placeholder="地址"></view>
</view>
<view class="formCol">
<view>建卡医院<text style="color:red">*</text></view>
<view class="formRight">
<picker :value="hindex" @change="bindHospitalChange" :range="arrHospital">
<view class="uni-input">{{arrHospital[hindex]}}</view>
</picker>
<input type="text" v-if="arrHospital[hindex]==''" v-model="form.hospital"
style="margin-top: 10rpx;" placeholder="请输入具体建卡医院">
</view>
</view>
</block>
<view class="formCol">
<view>备注信息</view>
<view class="formRight">
@ -436,7 +458,9 @@
showPass: false,
info: {},
viewCounts: '',
dataList: [],
dataList: [],
fields:[],
fields_value:[],
form: {
merchant_id: "",
member_id: "",
@ -447,7 +471,8 @@
phone: "",
budget_date: '',
address: '',
spread_member_id: ''
spread_member_id: '',
field_value:[]
},
arrHospital: ["请选择建卡医院", "市立医院", "苏大附一院", "苏大附二院", "附二浒关院区", "中医院", "第五人民医院", "苏州市第七人民医院", "明基医院", "九龙医院",
@ -1015,53 +1040,74 @@
if (!this.isOrder) {
return
}
this.showPop = true;
//
if(this.fields && this.fields.length>0){
let count = 0
this.fields_value.map(item=>{
if(item.is_reqired==='是' && weixin.isNull(item.value)){
this.alert(`${item.name}必填`)
count++
}
})
if(count>0){
return
}else{
this.form.field_value = this.fields_value
console.log('this.form',this.form)
}
// return
}else{
let user_info = weixin.getUserInfoCache();
if (weixin.isNull(user_info.user_info.phone)) {
this.showPhone = true;
return false;
//this.getUserProfile();
}
if (weixin.isNull(this.form.name) || weixin.isNull(this.form.budget_date) ||
weixin.isNull(this.form.phone) || weixin.isNull(this.form.sex) ||
weixin.isNull(this.form.area) || weixin.isNull(this.form.hospital)) {
if (weixin.isNull(this.form.name) || this.form.name == '微信用户') {
this.alert('请输入真实会员姓名')
return
}
if (weixin.isNull(this.form.sex)) {
this.alert('请选择性别')
return
}
if (weixin.isNull(this.form.budget_date)) {
this.alert('请选择预产日期')
return
}
if (weixin.isNull(this.form.area) || this.form.area == '请选择区域') {
this.alert('请选择区域')
return
}
if (weixin.isNull(this.form.hospital) || this.form.hospital == '请选择建卡医院') {
this.alert('请选择建卡医院')
return
}
if (weixin.isNull(this.form.phone)) {
this.alert('请填写手机号')
return
}
// if (weixin.isNull(this.form.address)) {
// this.alert('')
// return
// }
return false;
}
}
let user_info = weixin.getUserInfoCache();
if (weixin.isNull(user_info.user_info.phone)) {
this.showPhone = true;
return false;
//this.getUserProfile();
}
if (weixin.isNull(this.form.name) || weixin.isNull(this.form.budget_date) ||
weixin.isNull(this.form.phone) || weixin.isNull(this.form.sex) ||
weixin.isNull(this.form.area) || weixin.isNull(this.form.hospital)) {
this.showPop = true;
if (weixin.isNull(this.form.name) || this.form.name == '微信用户') {
this.alert('请输入真实会员姓名')
return
}
if (weixin.isNull(this.form.sex)) {
this.alert('请选择性别')
return
}
if (weixin.isNull(this.form.budget_date)) {
this.alert('请选择预产日期')
return
}
if (weixin.isNull(this.form.area) || this.form.area == '请选择区域') {
this.alert('请选择区域')
return
}
if (weixin.isNull(this.form.hospital) || this.form.hospital == '请选择建卡医院') {
this.alert('请选择建卡医院')
return
}
if (weixin.isNull(this.form.phone)) {
this.alert('请填写手机号')
return
}
// if (weixin.isNull(this.form.address)) {
// this.alert('')
// return
// }
return false;
}
console.log("this.form",this.form)
// jsuni.$u.throttle()
uni.$u.throttle(this.joinActive, 1000);
@ -1110,6 +1156,36 @@
uni.navigateTo({
url: "../shopDetail/shopDetail?id=" + id
})
},
async getParaList(id) {
let arr = []
await weixin.request({
newUrl: true,
api: '/api/member/parameter/show',
data: {
id: id
},
utilSuccess: (res) => {
console.log("res----",res)
res.detail.map(item => {
arr.push(item.value)
})
}
})
return arr
},
changeList(e){
console.log(e)
console.log("this.fields_value",this.fields_value)
var id = e.target.id
var index = e.detail.value
this.fields.map((item,index1)=>{
if(item.filed==id){
this.fields_value[index1].index = index
this.fields_value[index1].value = item.list[index].value
}
})
},
loadInfo: function() {
let that = this
@ -1125,11 +1201,45 @@
if (r.company_ids) {
r.companyList = JSON.parse(r.company_ids)
}
this.info = r;
this.info = r;
//
this.fields = r.fields? JSON.parse(r.fields):[]
if(this.fields.length>0){
this.fields.map(item=>{
this.fields_value.push({
name:item.name,
field:item.filed,
value:'',
index:-1,
is_reqired:item.is_reqired
})
if(item.data_id){
let arr = []
weixin.request({
newUrl: true,
api: '/api/member/parameter/show',
data: {
id: item.data_id
},
utilSuccess: (res) => {
console.log("res----",res)
// res.detail.map(item1 => {
// arr.push(item1.value)
// })
item.list = res.detail
}
})
}
})
console.log("this.fields",this.fields)
}
let apply_end = r.apply_end
let apply_start = r.apply_start
let enddate = r.end_date + " " + r.end_time
let nowtime = that.getNowTime()
let nowtime = that.getNowTime()
if (r.audit_status == 2) {
that.isOrder = false
that.isOrderText = "不可报名"

Loading…
Cancel
Save