新增了档案更新其他板块功能
This commit is contained in:
parent
2308cb0b4b
commit
076c2b8dfe
@ -1,176 +1,246 @@
|
||||
|
||||
<template>
|
||||
<view class="card">
|
||||
<view class="title">寿宴</view>
|
||||
<u--form labelPosition="left" :model="formData" :rules="rules" ref="breedingForm">
|
||||
<u-form-item labelWidth="auto" label="时间" required prop="cultivated_area" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入门面面积"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="地点" required prop="cultivated_area" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入经营地点"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="人数" required prop="notes" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入门面环境"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="请包办" required prop="notes" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:2,label:'酒店'},{value:1,label:'一条龙'},{value:0,label:'只请厨师'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无歌舞表演" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无交通工具" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无住宿" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
</u--form>
|
||||
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
storeTypeList: ['超市', '生鲜', '饭店', '五金', '杂货', '服装', '文具', '其他'],
|
||||
formData: {
|
||||
shop_front: '', //有无门面
|
||||
},
|
||||
rules: {
|
||||
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.initRules()
|
||||
},
|
||||
methods: {
|
||||
// 初始化校验
|
||||
initRules() {
|
||||
let arr = Object.keys(this.formData);
|
||||
arr.forEach(key => {
|
||||
this.rules[key] = {
|
||||
validator: (rule, value, callback) => {
|
||||
this.$refs.breedingForm.clearValidate(rule.field);
|
||||
value.trim() !== '' ? callback() : callback('不能为空');
|
||||
},
|
||||
trigger: ['change', 'blur']
|
||||
}
|
||||
})
|
||||
},
|
||||
// 校验
|
||||
async validate() {
|
||||
return await this.$refs.breedingForm.validate();;
|
||||
},
|
||||
// 选择土地规划
|
||||
changeLanPlan(e) {
|
||||
let index = e.currentTarget.dataset.index;
|
||||
this.formData.planning = e.detail.value;
|
||||
},
|
||||
// 选择时间
|
||||
changeDate(e) {
|
||||
let data = e.currentTarget.dataset;
|
||||
this.formData[data.value] = e.detail.value;
|
||||
},
|
||||
// 新增开设店铺
|
||||
pushBreedingList() {
|
||||
this.formData.push({})
|
||||
},
|
||||
// 删除开设店铺
|
||||
removeBreedingList(index) {
|
||||
uni.showModal({
|
||||
confirmColor: '#f56c6c',
|
||||
content: '确定删除吗?',
|
||||
success: (res) => {
|
||||
if (res.confirm) {
|
||||
this.formData.splice(index, 1);
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.card {
|
||||
background-color: #fff;
|
||||
margin: 28rpx;
|
||||
padding: 28rpx;
|
||||
margin-top: 0;
|
||||
padding-top: 0;
|
||||
border-radius: 0 0 14rpx 14rpx;
|
||||
}
|
||||
|
||||
.tit {
|
||||
margin: 28rpx 28rpx 0 28rpx;
|
||||
padding: 28rpx 28rpx 0 28rpx;
|
||||
border-radius: 14rpx 14rpx 0 0;
|
||||
background-color: $theme-oa-color;
|
||||
color: white;
|
||||
height: 100rpx;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
.title {
|
||||
font-weight: 500;
|
||||
font-size: 34rpx;
|
||||
|
||||
&::before {
|
||||
width: 8rpx;
|
||||
height: 26rpx;
|
||||
border-radius: 4rpx;
|
||||
background-color: #0122c7;
|
||||
content: "";
|
||||
display: inline-block;
|
||||
margin-right: 8rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.delete {
|
||||
margin: 22rpx 0;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 64rpx;
|
||||
line-height: 64rpx;
|
||||
background: #f56c6c;
|
||||
border-radius: 14rpx;
|
||||
font-size: 28rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.plus {
|
||||
margin: 22rpx 0;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 64rpx;
|
||||
line-height: 64rpx;
|
||||
background: $theme-oa-color;
|
||||
border-radius: 14rpx;
|
||||
font-size: 28rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
<template>
|
||||
<view>
|
||||
<view class="tit">
|
||||
<text v-if="readonly">更新时间: {{update_time}}</text>
|
||||
<text>寿宴</text>
|
||||
</view>
|
||||
<view class="card">
|
||||
<u--form labelPosition="left" :model="formData" :rules="rules" ref="breedingForm">
|
||||
<picker mode="date" @change="changeDate" :disabled="readonly">
|
||||
<u-form-item labelWidth="auto" label="时间" required prop="start_date" borderBottom>
|
||||
<u--input :value="formData.start_date" style="pointer-events: none;" placeholder="请选择时间" disabled
|
||||
disabledColor="#fff"></u--input>
|
||||
<u-icon slot="right" name="arrow-right"></u-icon>
|
||||
</u-form-item>
|
||||
</picker>
|
||||
<u-form-item labelWidth="auto" label="地点" required prop="address" borderBottom>
|
||||
<u--input v-model="formData.address" placeholder="请输入地点"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="人数" required prop="people_count" borderBottom>
|
||||
<u--input v-model="formData.people_count" type="number" placeholder="请输入人数"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="请包办" required prop="serve" borderBottom>
|
||||
<u-radio-group v-model="formData.serve" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:2,label:'酒店'},{value:1,label:'一条龙'},{value:0,label:'只请厨师'}]" :key="index"
|
||||
:label="item.label" :name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无歌舞表演" required prop="perform" borderBottom>
|
||||
<u-radio-group v-model="formData.perform" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无交通工具" required prop="vehicle" borderBottom>
|
||||
<u-radio-group v-model="formData.vehicle" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无住宿" required prop="in_hotel" borderBottom>
|
||||
<u-radio-group v-model="formData.in_hotel" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
</u--form>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
props: {
|
||||
readonly: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
datas: {
|
||||
type: Object,
|
||||
default: null
|
||||
},
|
||||
update_time: {
|
||||
type: String,
|
||||
default: null
|
||||
},
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
formData: {
|
||||
start_date: "", //时间\日期
|
||||
address: "", //地点
|
||||
people_count: "", //人数
|
||||
serve: "", // 包办服务
|
||||
perform: "", //演出
|
||||
vehicle: "", //交通工具
|
||||
in_hotel: "", //住宿
|
||||
},
|
||||
rules: {
|
||||
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.initRules();
|
||||
if (this.$props.readonly && this.$props.datas) {
|
||||
this.formData = this.$props.datas;
|
||||
let keys = Object.keys(this.formData);
|
||||
keys.forEach(item => {
|
||||
if (!isNaN(this.formData[item]) && this.formData[item] != '' && this.formData[item] != null && this
|
||||
.formData[item] != undefined) {
|
||||
parseFloat(this.formData[item]) != 'NaN' ? this.formData[item] = parseFloat(this.formData[item]) : null;
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
datas(newValue, oldValue) {
|
||||
if (this.$props.readonly && newValue) {
|
||||
this.formData = this.$props.datas;
|
||||
let keys = Object.keys(this.formData);
|
||||
keys.forEach(item => {
|
||||
if (!isNaN(this.formData[item]) && this.formData[item] != '' && this.formData[item] != null && this
|
||||
.formData[item] != undefined) {
|
||||
parseFloat(this.formData[item]) != 'NaN' ? this.formData[item] = parseFloat(this.formData[item]) :
|
||||
null;
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
// 初始化校验
|
||||
initRules() {
|
||||
let arr = Object.keys(this.formData);
|
||||
arr.forEach(key => {
|
||||
this.rules[key] = {
|
||||
validator: (rule, value, callback) => {
|
||||
this.$refs.breedingForm.clearValidate(rule.field);
|
||||
value.trim() !== '' ? callback() : callback('不能为空');
|
||||
},
|
||||
trigger: ['change', 'blur']
|
||||
}
|
||||
})
|
||||
},
|
||||
// 校验
|
||||
async validate() {
|
||||
return await this.$refs.breedingForm.validate();;
|
||||
},
|
||||
// 选择土地规划
|
||||
changeLanPlan(e) {
|
||||
let index = e.currentTarget.dataset.index;
|
||||
this.formData.planning = e.detail.value;
|
||||
},
|
||||
// 选择时间
|
||||
changeDate(e) {
|
||||
this.formData.start_date = e.detail.value;
|
||||
},
|
||||
// 新增开设店铺
|
||||
pushBreedingList() {
|
||||
this.formData.push({})
|
||||
},
|
||||
// 删除开设店铺
|
||||
removeBreedingList(index) {
|
||||
uni.showModal({
|
||||
confirmColor: '#f56c6c',
|
||||
content: '确定删除吗?',
|
||||
success: (res) => {
|
||||
if (res.confirm) {
|
||||
this.formData.splice(index, 1);
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.card {
|
||||
|
||||
background-color: #fff;
|
||||
|
||||
margin: 28rpx;
|
||||
|
||||
padding: 28rpx;
|
||||
|
||||
margin-top: 0;
|
||||
|
||||
padding-top: 0;
|
||||
|
||||
border-radius: 0 0 14rpx 14rpx;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
.tit {
|
||||
|
||||
margin: 28rpx 28rpx 0 28rpx;
|
||||
|
||||
padding: 28rpx 28rpx 0 28rpx;
|
||||
|
||||
border-radius: 14rpx 14rpx 0 0;
|
||||
|
||||
background-color: $theme-oa-color;
|
||||
|
||||
color: white;
|
||||
|
||||
height: 100rpx;
|
||||
|
||||
display: flex;
|
||||
|
||||
justify-content: space-between;
|
||||
|
||||
}
|
||||
|
||||
.title {
|
||||
font-weight: 500;
|
||||
font-size: 34rpx;
|
||||
|
||||
&::before {
|
||||
width: 8rpx;
|
||||
height: 26rpx;
|
||||
border-radius: 4rpx;
|
||||
background-color: #0122c7;
|
||||
content: "";
|
||||
display: inline-block;
|
||||
margin-right: 8rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.delete {
|
||||
margin: 22rpx 0;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 64rpx;
|
||||
line-height: 64rpx;
|
||||
background: #f56c6c;
|
||||
border-radius: 14rpx;
|
||||
font-size: 28rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.plus {
|
||||
margin: 22rpx 0;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 64rpx;
|
||||
line-height: 64rpx;
|
||||
background: $theme-oa-color;
|
||||
border-radius: 14rpx;
|
||||
font-size: 28rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
</style>
|
@ -1,176 +1,246 @@
|
||||
|
||||
<template>
|
||||
<view class="card">
|
||||
<view class="title">满月酒</view>
|
||||
<u--form labelPosition="left" :model="formData" :rules="rules" ref="breedingForm">
|
||||
<u-form-item labelWidth="auto" label="时间" required prop="cultivated_area" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入门面面积"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="地点" required prop="cultivated_area" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入经营地点"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="人数" required prop="notes" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入门面环境"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="请包办" required prop="notes" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:2,label:'酒店'},{value:1,label:'一条龙'},{value:0,label:'只请厨师'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无歌舞表演" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无交通工具" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无住宿" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
</u--form>
|
||||
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
storeTypeList: ['超市', '生鲜', '饭店', '五金', '杂货', '服装', '文具', '其他'],
|
||||
formData: {
|
||||
shop_front: '', //有无门面
|
||||
},
|
||||
rules: {
|
||||
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.initRules()
|
||||
},
|
||||
methods: {
|
||||
// 初始化校验
|
||||
initRules() {
|
||||
let arr = Object.keys(this.formData);
|
||||
arr.forEach(key => {
|
||||
this.rules[key] = {
|
||||
validator: (rule, value, callback) => {
|
||||
this.$refs.breedingForm.clearValidate(rule.field);
|
||||
value.trim() !== '' ? callback() : callback('不能为空');
|
||||
},
|
||||
trigger: ['change', 'blur']
|
||||
}
|
||||
})
|
||||
},
|
||||
// 校验
|
||||
async validate() {
|
||||
return await this.$refs.breedingForm.validate();;
|
||||
},
|
||||
// 选择土地规划
|
||||
changeLanPlan(e) {
|
||||
let index = e.currentTarget.dataset.index;
|
||||
this.formData.planning = e.detail.value;
|
||||
},
|
||||
// 选择时间
|
||||
changeDate(e) {
|
||||
let data = e.currentTarget.dataset;
|
||||
this.formData[data.value] = e.detail.value;
|
||||
},
|
||||
// 新增开设店铺
|
||||
pushBreedingList() {
|
||||
this.formData.push({})
|
||||
},
|
||||
// 删除开设店铺
|
||||
removeBreedingList(index) {
|
||||
uni.showModal({
|
||||
confirmColor: '#f56c6c',
|
||||
content: '确定删除吗?',
|
||||
success: (res) => {
|
||||
if (res.confirm) {
|
||||
this.formData.splice(index, 1);
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.card {
|
||||
background-color: #fff;
|
||||
margin: 28rpx;
|
||||
padding: 28rpx;
|
||||
margin-top: 0;
|
||||
padding-top: 0;
|
||||
border-radius: 0 0 14rpx 14rpx;
|
||||
}
|
||||
|
||||
.tit {
|
||||
margin: 28rpx 28rpx 0 28rpx;
|
||||
padding: 28rpx 28rpx 0 28rpx;
|
||||
border-radius: 14rpx 14rpx 0 0;
|
||||
background-color: $theme-oa-color;
|
||||
color: white;
|
||||
height: 100rpx;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
.title {
|
||||
font-weight: 500;
|
||||
font-size: 34rpx;
|
||||
|
||||
&::before {
|
||||
width: 8rpx;
|
||||
height: 26rpx;
|
||||
border-radius: 4rpx;
|
||||
background-color: #0122c7;
|
||||
content: "";
|
||||
display: inline-block;
|
||||
margin-right: 8rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.delete {
|
||||
margin: 22rpx 0;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 64rpx;
|
||||
line-height: 64rpx;
|
||||
background: #f56c6c;
|
||||
border-radius: 14rpx;
|
||||
font-size: 28rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.plus {
|
||||
margin: 22rpx 0;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 64rpx;
|
||||
line-height: 64rpx;
|
||||
background: $theme-oa-color;
|
||||
border-radius: 14rpx;
|
||||
font-size: 28rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
<template>
|
||||
<view>
|
||||
<view class="tit">
|
||||
<text v-if="readonly">更新时间: {{update_time}}</text>
|
||||
<text>满月酒</text>
|
||||
</view>
|
||||
<view class="card">
|
||||
<u--form labelPosition="left" :model="formData" :rules="rules" ref="breedingForm">
|
||||
<picker mode="date" @change="changeDate" :disabled="readonly">
|
||||
<u-form-item labelWidth="auto" label="时间" required prop="start_date" borderBottom>
|
||||
<u--input :value="formData.start_date" style="pointer-events: none;" placeholder="请选择时间" disabled
|
||||
disabledColor="#fff"></u--input>
|
||||
<u-icon slot="right" name="arrow-right"></u-icon>
|
||||
</u-form-item>
|
||||
</picker>
|
||||
<u-form-item labelWidth="auto" label="地点" required prop="address" borderBottom>
|
||||
<u--input v-model="formData.address" placeholder="请输入地点"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="人数" required prop="people_count" borderBottom>
|
||||
<u--input v-model="formData.people_count" type="number" placeholder="请输入人数"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="请包办" required prop="serve" borderBottom>
|
||||
<u-radio-group v-model="formData.serve" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:2,label:'酒店'},{value:1,label:'一条龙'},{value:0,label:'只请厨师'}]" :key="index"
|
||||
:label="item.label" :name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无歌舞表演" required prop="perform" borderBottom>
|
||||
<u-radio-group v-model="formData.perform" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无交通工具" required prop="vehicle" borderBottom>
|
||||
<u-radio-group v-model="formData.vehicle" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无住宿" required prop="in_hotel" borderBottom>
|
||||
<u-radio-group v-model="formData.in_hotel" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
</u--form>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
props: {
|
||||
readonly: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
datas: {
|
||||
type: Object,
|
||||
default: null
|
||||
},
|
||||
update_time: {
|
||||
type: String,
|
||||
default: null
|
||||
},
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
formData: {
|
||||
start_date: "", //时间\日期
|
||||
address: "", //地点
|
||||
people_count: "", //人数
|
||||
serve: "", // 包办服务
|
||||
perform: "", //演出
|
||||
vehicle: "", //交通工具
|
||||
in_hotel: "", //住宿
|
||||
},
|
||||
rules: {
|
||||
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.initRules();
|
||||
if (this.$props.readonly && this.$props.datas) {
|
||||
this.formData = this.$props.datas;
|
||||
let keys = Object.keys(this.formData);
|
||||
keys.forEach(item => {
|
||||
if (!isNaN(this.formData[item]) && this.formData[item] != '' && this.formData[item] != null && this
|
||||
.formData[item] != undefined) {
|
||||
parseFloat(this.formData[item]) != 'NaN' ? this.formData[item] = parseFloat(this.formData[item]) : null;
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
datas(newValue, oldValue) {
|
||||
if (this.$props.readonly && newValue) {
|
||||
this.formData = this.$props.datas;
|
||||
let keys = Object.keys(this.formData);
|
||||
keys.forEach(item => {
|
||||
if (!isNaN(this.formData[item]) && this.formData[item] != '' && this.formData[item] != null && this
|
||||
.formData[item] != undefined) {
|
||||
parseFloat(this.formData[item]) != 'NaN' ? this.formData[item] = parseFloat(this.formData[item]) :
|
||||
null;
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
// 初始化校验
|
||||
initRules() {
|
||||
let arr = Object.keys(this.formData);
|
||||
arr.forEach(key => {
|
||||
this.rules[key] = {
|
||||
validator: (rule, value, callback) => {
|
||||
this.$refs.breedingForm.clearValidate(rule.field);
|
||||
value.trim() !== '' ? callback() : callback('不能为空');
|
||||
},
|
||||
trigger: ['change', 'blur']
|
||||
}
|
||||
})
|
||||
},
|
||||
// 校验
|
||||
async validate() {
|
||||
return await this.$refs.breedingForm.validate();;
|
||||
},
|
||||
// 选择土地规划
|
||||
changeLanPlan(e) {
|
||||
let index = e.currentTarget.dataset.index;
|
||||
this.formData.planning = e.detail.value;
|
||||
},
|
||||
// 选择时间
|
||||
changeDate(e) {
|
||||
this.formData.start_date = e.detail.value;
|
||||
},
|
||||
// 新增开设店铺
|
||||
pushBreedingList() {
|
||||
this.formData.push({})
|
||||
},
|
||||
// 删除开设店铺
|
||||
removeBreedingList(index) {
|
||||
uni.showModal({
|
||||
confirmColor: '#f56c6c',
|
||||
content: '确定删除吗?',
|
||||
success: (res) => {
|
||||
if (res.confirm) {
|
||||
this.formData.splice(index, 1);
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.card {
|
||||
|
||||
background-color: #fff;
|
||||
|
||||
margin: 28rpx;
|
||||
|
||||
padding: 28rpx;
|
||||
|
||||
margin-top: 0;
|
||||
|
||||
padding-top: 0;
|
||||
|
||||
border-radius: 0 0 14rpx 14rpx;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
.tit {
|
||||
|
||||
margin: 28rpx 28rpx 0 28rpx;
|
||||
|
||||
padding: 28rpx 28rpx 0 28rpx;
|
||||
|
||||
border-radius: 14rpx 14rpx 0 0;
|
||||
|
||||
background-color: $theme-oa-color;
|
||||
|
||||
color: white;
|
||||
|
||||
height: 100rpx;
|
||||
|
||||
display: flex;
|
||||
|
||||
justify-content: space-between;
|
||||
|
||||
}
|
||||
|
||||
.title {
|
||||
font-weight: 500;
|
||||
font-size: 34rpx;
|
||||
|
||||
&::before {
|
||||
width: 8rpx;
|
||||
height: 26rpx;
|
||||
border-radius: 4rpx;
|
||||
background-color: #0122c7;
|
||||
content: "";
|
||||
display: inline-block;
|
||||
margin-right: 8rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.delete {
|
||||
margin: 22rpx 0;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 64rpx;
|
||||
line-height: 64rpx;
|
||||
background: #f56c6c;
|
||||
border-radius: 14rpx;
|
||||
font-size: 28rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.plus {
|
||||
margin: 22rpx 0;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 64rpx;
|
||||
line-height: 64rpx;
|
||||
background: $theme-oa-color;
|
||||
border-radius: 14rpx;
|
||||
font-size: 28rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
</style>
|
@ -1,189 +1,256 @@
|
||||
|
||||
<template>
|
||||
<view class="card">
|
||||
<view class="title">白事</view>
|
||||
<u--form labelPosition="left" :model="formData" :rules="rules" ref="breedingForm">
|
||||
<u-form-item labelWidth="auto" label="地点" required prop="cultivated_area" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入经营地点"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="人数" required prop="notes" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入门面环境"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="请包办" required prop="notes" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:2,label:'酒店'},{value:1,label:'一条龙'},{value:0,label:'只请厨师'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无歌舞表演" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无主持仪式" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无交通工具" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无住宿" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无墓地" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
</u--form>
|
||||
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
storeTypeList: ['超市', '生鲜', '饭店', '五金', '杂货', '服装', '文具', '其他'],
|
||||
formData: {
|
||||
shop_front: '', //有无门面
|
||||
},
|
||||
rules: {
|
||||
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.initRules()
|
||||
},
|
||||
methods: {
|
||||
// 初始化校验
|
||||
initRules() {
|
||||
let arr = Object.keys(this.formData);
|
||||
arr.forEach(key => {
|
||||
this.rules[key] = {
|
||||
validator: (rule, value, callback) => {
|
||||
this.$refs.breedingForm.clearValidate(rule.field);
|
||||
value.trim() !== '' ? callback() : callback('不能为空');
|
||||
},
|
||||
trigger: ['change', 'blur']
|
||||
}
|
||||
})
|
||||
},
|
||||
// 校验
|
||||
async validate() {
|
||||
return await this.$refs.breedingForm.validate();;
|
||||
},
|
||||
// 选择土地规划
|
||||
changeLanPlan(e) {
|
||||
let index = e.currentTarget.dataset.index;
|
||||
this.formData.planning = e.detail.value;
|
||||
},
|
||||
// 选择时间
|
||||
changeDate(e) {
|
||||
let data = e.currentTarget.dataset;
|
||||
this.formData[data.value] = e.detail.value;
|
||||
},
|
||||
// 新增开设店铺
|
||||
pushBreedingList() {
|
||||
this.formData.push({})
|
||||
},
|
||||
// 删除开设店铺
|
||||
removeBreedingList(index) {
|
||||
uni.showModal({
|
||||
confirmColor: '#f56c6c',
|
||||
content: '确定删除吗?',
|
||||
success: (res) => {
|
||||
if (res.confirm) {
|
||||
this.formData.splice(index, 1);
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.card {
|
||||
background-color: #fff;
|
||||
margin: 28rpx;
|
||||
padding: 28rpx;
|
||||
margin-top: 0;
|
||||
padding-top: 0;
|
||||
border-radius: 0 0 14rpx 14rpx;
|
||||
}
|
||||
|
||||
.tit {
|
||||
margin: 28rpx 28rpx 0 28rpx;
|
||||
padding: 28rpx 28rpx 0 28rpx;
|
||||
border-radius: 14rpx 14rpx 0 0;
|
||||
background-color: $theme-oa-color;
|
||||
color: white;
|
||||
height: 100rpx;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
.title {
|
||||
font-weight: 500;
|
||||
font-size: 34rpx;
|
||||
|
||||
&::before {
|
||||
width: 8rpx;
|
||||
height: 26rpx;
|
||||
border-radius: 4rpx;
|
||||
background-color: #0122c7;
|
||||
content: "";
|
||||
display: inline-block;
|
||||
margin-right: 8rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.delete {
|
||||
margin: 22rpx 0;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 64rpx;
|
||||
line-height: 64rpx;
|
||||
background: #f56c6c;
|
||||
border-radius: 14rpx;
|
||||
font-size: 28rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.plus {
|
||||
margin: 22rpx 0;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 64rpx;
|
||||
line-height: 64rpx;
|
||||
background: $theme-oa-color;
|
||||
border-radius: 14rpx;
|
||||
font-size: 28rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
<template>
|
||||
<view>
|
||||
<view class="tit">
|
||||
<text v-if="readonly">更新时间: {{update_time}}</text>
|
||||
<text>白事</text>
|
||||
</view>
|
||||
<view class="card">
|
||||
<u--form labelPosition="left" :model="formData" :rules="rules" ref="breedingForm">
|
||||
<u-form-item labelWidth="auto" label="地点" required prop="address" borderBottom>
|
||||
<u--input v-model="formData.address" placeholder="请输入地点"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="人数" required prop="people_count" borderBottom>
|
||||
<u--input v-model="formData.people_count" type="number" placeholder="请输入人数"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="请包办" required prop="serve" borderBottom>
|
||||
<u-radio-group v-model="formData.serve" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:2,label:'酒店'},{value:1,label:'一条龙'},{value:0,label:'只请厨师'}]" :key="index"
|
||||
:label="item.label" :name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无歌舞表演" required prop="perform" borderBottom>
|
||||
<u-radio-group v-model="formData.perform" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无主持仪式" required prop="host" borderBottom>
|
||||
<u-radio-group v-model="formData.host" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无交通工具" required prop="vehicle" borderBottom>
|
||||
<u-radio-group v-model="formData.vehicle" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无住宿" required prop="in_hotel" borderBottom>
|
||||
<u-radio-group v-model="formData.in_hotel" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无墓地" required prop="in_hotel" borderBottom>
|
||||
<u-radio-group v-model="formData.in_hotel" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
</u--form>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
props: {
|
||||
readonly: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
datas: {
|
||||
type: Object,
|
||||
default: null
|
||||
},
|
||||
update_time: {
|
||||
type: String,
|
||||
default: null
|
||||
},
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
formData: {
|
||||
address: "", //地点
|
||||
people_count: "", //人数
|
||||
serve: "", // 包办服务
|
||||
perform: "", //演出
|
||||
host: "", //主持
|
||||
vehicle: "", //交通工具
|
||||
in_hotel: "", //住宿
|
||||
graveyard: "", //墓地
|
||||
},
|
||||
rules: {
|
||||
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.initRules();
|
||||
if (this.$props.readonly && this.$props.datas) {
|
||||
this.formData = this.$props.datas;
|
||||
let keys = Object.keys(this.formData);
|
||||
keys.forEach(item => {
|
||||
if (!isNaN(this.formData[item]) && this.formData[item] != '' && this.formData[item] != null && this
|
||||
.formData[item] != undefined) {
|
||||
parseFloat(this.formData[item]) != 'NaN' ? this.formData[item] = parseFloat(this.formData[item]) : null;
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
datas(newValue, oldValue) {
|
||||
if (this.$props.readonly && newValue) {
|
||||
this.formData = this.$props.datas;
|
||||
let keys = Object.keys(this.formData);
|
||||
keys.forEach(item => {
|
||||
if (!isNaN(this.formData[item]) && this.formData[item] != '' && this.formData[item] != null && this
|
||||
.formData[item] != undefined) {
|
||||
parseFloat(this.formData[item]) != 'NaN' ? this.formData[item] = parseFloat(this.formData[item]) :
|
||||
null;
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
// 初始化校验
|
||||
initRules() {
|
||||
let arr = Object.keys(this.formData);
|
||||
arr.forEach(key => {
|
||||
this.rules[key] = {
|
||||
validator: (rule, value, callback) => {
|
||||
this.$refs.breedingForm.clearValidate(rule.field);
|
||||
value.trim() !== '' ? callback() : callback('不能为空');
|
||||
},
|
||||
trigger: ['change', 'blur']
|
||||
}
|
||||
})
|
||||
},
|
||||
// 校验
|
||||
async validate() {
|
||||
return await this.$refs.breedingForm.validate();;
|
||||
},
|
||||
// 选择土地规划
|
||||
changeLanPlan(e) {
|
||||
let index = e.currentTarget.dataset.index;
|
||||
this.formData.planning = e.detail.value;
|
||||
},
|
||||
// 选择时间
|
||||
changeDate(e) {
|
||||
this.formData.start_date = e.detail.value;
|
||||
},
|
||||
// 新增开设店铺
|
||||
pushBreedingList() {
|
||||
this.formData.push({})
|
||||
},
|
||||
// 删除开设店铺
|
||||
removeBreedingList(index) {
|
||||
uni.showModal({
|
||||
confirmColor: '#f56c6c',
|
||||
content: '确定删除吗?',
|
||||
success: (res) => {
|
||||
if (res.confirm) {
|
||||
this.formData.splice(index, 1);
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.card {
|
||||
|
||||
background-color: #fff;
|
||||
|
||||
margin: 28rpx;
|
||||
|
||||
padding: 28rpx;
|
||||
|
||||
margin-top: 0;
|
||||
|
||||
padding-top: 0;
|
||||
|
||||
border-radius: 0 0 14rpx 14rpx;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
.tit {
|
||||
|
||||
margin: 28rpx 28rpx 0 28rpx;
|
||||
|
||||
padding: 28rpx 28rpx 0 28rpx;
|
||||
|
||||
border-radius: 14rpx 14rpx 0 0;
|
||||
|
||||
background-color: $theme-oa-color;
|
||||
|
||||
color: white;
|
||||
|
||||
height: 100rpx;
|
||||
|
||||
display: flex;
|
||||
|
||||
justify-content: space-between;
|
||||
|
||||
}
|
||||
|
||||
.title {
|
||||
font-weight: 500;
|
||||
font-size: 34rpx;
|
||||
|
||||
&::before {
|
||||
width: 8rpx;
|
||||
height: 26rpx;
|
||||
border-radius: 4rpx;
|
||||
background-color: #0122c7;
|
||||
content: "";
|
||||
display: inline-block;
|
||||
margin-right: 8rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.delete {
|
||||
margin: 22rpx 0;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 64rpx;
|
||||
line-height: 64rpx;
|
||||
background: #f56c6c;
|
||||
border-radius: 14rpx;
|
||||
font-size: 28rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.plus {
|
||||
margin: 22rpx 0;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 64rpx;
|
||||
line-height: 64rpx;
|
||||
background: $theme-oa-color;
|
||||
border-radius: 14rpx;
|
||||
font-size: 28rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
</style>
|
@ -1,184 +1,254 @@
|
||||
|
||||
<template>
|
||||
<view class="card">
|
||||
<view class="title">婚宴</view>
|
||||
<u--form labelPosition="left" :model="formData" :rules="rules" ref="breedingForm">
|
||||
<u-form-item labelWidth="auto" label="时间" required prop="cultivated_area" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入门面面积"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="地点" required prop="cultivated_area" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入经营地点"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="人数" required prop="notes" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入门面环境"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="请包办" required prop="notes" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:2,label:'酒店'},{value:1,label:'一条龙'},{value:0,label:'只请厨师'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无歌舞表演" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无主持仪式" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无交通工具" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无住宿" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
</u--form>
|
||||
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
storeTypeList: ['超市', '生鲜', '饭店', '五金', '杂货', '服装', '文具', '其他'],
|
||||
formData: {
|
||||
shop_front: '', //有无门面
|
||||
},
|
||||
rules: {
|
||||
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.initRules()
|
||||
},
|
||||
methods: {
|
||||
// 初始化校验
|
||||
initRules() {
|
||||
let arr = Object.keys(this.formData);
|
||||
arr.forEach(key => {
|
||||
this.rules[key] = {
|
||||
validator: (rule, value, callback) => {
|
||||
this.$refs.breedingForm.clearValidate(rule.field);
|
||||
value.trim() !== '' ? callback() : callback('不能为空');
|
||||
},
|
||||
trigger: ['change', 'blur']
|
||||
}
|
||||
})
|
||||
},
|
||||
// 校验
|
||||
async validate() {
|
||||
return await this.$refs.breedingForm.validate();;
|
||||
},
|
||||
// 选择土地规划
|
||||
changeLanPlan(e) {
|
||||
let index = e.currentTarget.dataset.index;
|
||||
this.formData.planning = e.detail.value;
|
||||
},
|
||||
// 选择时间
|
||||
changeDate(e) {
|
||||
let data = e.currentTarget.dataset;
|
||||
this.formData[data.value] = e.detail.value;
|
||||
},
|
||||
// 新增开设店铺
|
||||
pushBreedingList() {
|
||||
this.formData.push({})
|
||||
},
|
||||
// 删除开设店铺
|
||||
removeBreedingList(index) {
|
||||
uni.showModal({
|
||||
confirmColor: '#f56c6c',
|
||||
content: '确定删除吗?',
|
||||
success: (res) => {
|
||||
if (res.confirm) {
|
||||
this.formData.splice(index, 1);
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.card {
|
||||
background-color: #fff;
|
||||
margin: 28rpx;
|
||||
padding: 28rpx;
|
||||
margin-top: 0;
|
||||
padding-top: 0;
|
||||
border-radius: 0 0 14rpx 14rpx;
|
||||
}
|
||||
|
||||
.tit {
|
||||
margin: 28rpx 28rpx 0 28rpx;
|
||||
padding: 28rpx 28rpx 0 28rpx;
|
||||
border-radius: 14rpx 14rpx 0 0;
|
||||
background-color: $theme-oa-color;
|
||||
color: white;
|
||||
height: 100rpx;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
.title {
|
||||
font-weight: 500;
|
||||
font-size: 34rpx;
|
||||
|
||||
&::before {
|
||||
width: 8rpx;
|
||||
height: 26rpx;
|
||||
border-radius: 4rpx;
|
||||
background-color: #0122c7;
|
||||
content: "";
|
||||
display: inline-block;
|
||||
margin-right: 8rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.delete {
|
||||
margin: 22rpx 0;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 64rpx;
|
||||
line-height: 64rpx;
|
||||
background: #f56c6c;
|
||||
border-radius: 14rpx;
|
||||
font-size: 28rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.plus {
|
||||
margin: 22rpx 0;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 64rpx;
|
||||
line-height: 64rpx;
|
||||
background: $theme-oa-color;
|
||||
border-radius: 14rpx;
|
||||
font-size: 28rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
<template>
|
||||
<view>
|
||||
<view class="tit">
|
||||
<text v-if="readonly">更新时间: {{update_time}}</text>
|
||||
<text>婚宴</text>
|
||||
</view>
|
||||
<view class="card">
|
||||
<u--form labelPosition="left" :model="formData" :rules="rules" ref="breedingForm">
|
||||
<picker mode="date" @change="changeDate" :disabled="readonly">
|
||||
<u-form-item labelWidth="auto" label="时间" required prop="start_date" borderBottom>
|
||||
<u--input :value="formData.start_date" style="pointer-events: none;" placeholder="请选择时间" disabled disabledColor="#fff"></u--input>
|
||||
<u-icon slot="right" name="arrow-right"></u-icon>
|
||||
</u-form-item>
|
||||
</picker>
|
||||
<u-form-item labelWidth="auto" label="地点" required prop="address" borderBottom>
|
||||
<u--input v-model="formData.address" placeholder="请输入地点"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="人数" required prop="people_count" borderBottom>
|
||||
<u--input v-model="formData.people_count" type="number" placeholder="请输入人数"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="请包办" required prop="serve" borderBottom>
|
||||
<u-radio-group v-model="formData.serve" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:2,label:'酒店'},{value:1,label:'一条龙'},{value:0,label:'只请厨师'}]" :key="index"
|
||||
:label="item.label" :name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无歌舞表演" required prop="perform" borderBottom>
|
||||
<u-radio-group v-model="formData.perform" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无主持仪式" required prop="host" borderBottom>
|
||||
<u-radio-group v-model="formData.host" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无交通工具" required prop="vehicle" borderBottom>
|
||||
<u-radio-group v-model="formData.vehicle" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无住宿" required prop="in_hotel" borderBottom>
|
||||
<u-radio-group v-model="formData.in_hotel" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
</u--form>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
props: {
|
||||
readonly: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
datas: {
|
||||
type: Object,
|
||||
default: null
|
||||
},
|
||||
update_time: {
|
||||
type: String,
|
||||
default: null
|
||||
},
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
formData: {
|
||||
start_date: "", //时间\日期
|
||||
address: "", //地点
|
||||
people_count: "", //人数
|
||||
serve: "", // 包办服务
|
||||
perform: "", //演出
|
||||
host: "", //主持
|
||||
vehicle: "", //交通工具
|
||||
in_hotel: "", //住宿
|
||||
},
|
||||
rules: {
|
||||
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.initRules();
|
||||
if (this.$props.readonly && this.$props.datas) {
|
||||
this.formData = this.$props.datas;
|
||||
let keys = Object.keys(this.formData);
|
||||
keys.forEach(item => {
|
||||
if (!isNaN(this.formData[item]) && this.formData[item] != '' && this.formData[item] != null && this
|
||||
.formData[item] != undefined) {
|
||||
parseFloat(this.formData[item]) != 'NaN' ? this.formData[item] = parseFloat(this.formData[item]) : null;
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
datas(newValue, oldValue) {
|
||||
if (this.$props.readonly && newValue) {
|
||||
this.formData = this.$props.datas;
|
||||
let keys = Object.keys(this.formData);
|
||||
keys.forEach(item => {
|
||||
if (!isNaN(this.formData[item]) && this.formData[item] != '' && this.formData[item] != null && this
|
||||
.formData[item] != undefined) {
|
||||
parseFloat(this.formData[item]) != 'NaN' ? this.formData[item] = parseFloat(this.formData[item]) :
|
||||
null;
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
// 初始化校验
|
||||
initRules() {
|
||||
let arr = Object.keys(this.formData);
|
||||
arr.forEach(key => {
|
||||
this.rules[key] = {
|
||||
validator: (rule, value, callback) => {
|
||||
this.$refs.breedingForm.clearValidate(rule.field);
|
||||
value.trim() !== '' ? callback() : callback('不能为空');
|
||||
},
|
||||
trigger: ['change', 'blur']
|
||||
}
|
||||
})
|
||||
},
|
||||
// 校验
|
||||
async validate() {
|
||||
return await this.$refs.breedingForm.validate();;
|
||||
},
|
||||
// 选择土地规划
|
||||
changeLanPlan(e) {
|
||||
let index = e.currentTarget.dataset.index;
|
||||
this.formData.planning = e.detail.value;
|
||||
},
|
||||
// 选择时间
|
||||
changeDate(e) {
|
||||
this.formData.start_date = e.detail.value;
|
||||
},
|
||||
// 新增开设店铺
|
||||
pushBreedingList() {
|
||||
this.formData.push({})
|
||||
},
|
||||
// 删除开设店铺
|
||||
removeBreedingList(index) {
|
||||
uni.showModal({
|
||||
confirmColor: '#f56c6c',
|
||||
content: '确定删除吗?',
|
||||
success: (res) => {
|
||||
if (res.confirm) {
|
||||
this.formData.splice(index, 1);
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.card {
|
||||
|
||||
background-color: #fff;
|
||||
|
||||
margin: 28rpx;
|
||||
|
||||
padding: 28rpx;
|
||||
|
||||
margin-top: 0;
|
||||
|
||||
padding-top: 0;
|
||||
|
||||
border-radius: 0 0 14rpx 14rpx;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
.tit {
|
||||
|
||||
margin: 28rpx 28rpx 0 28rpx;
|
||||
|
||||
padding: 28rpx 28rpx 0 28rpx;
|
||||
|
||||
border-radius: 14rpx 14rpx 0 0;
|
||||
|
||||
background-color: $theme-oa-color;
|
||||
|
||||
color: white;
|
||||
|
||||
height: 100rpx;
|
||||
|
||||
display: flex;
|
||||
|
||||
justify-content: space-between;
|
||||
|
||||
}
|
||||
|
||||
.title {
|
||||
font-weight: 500;
|
||||
font-size: 34rpx;
|
||||
|
||||
&::before {
|
||||
width: 8rpx;
|
||||
height: 26rpx;
|
||||
border-radius: 4rpx;
|
||||
background-color: #0122c7;
|
||||
content: "";
|
||||
display: inline-block;
|
||||
margin-right: 8rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.delete {
|
||||
margin: 22rpx 0;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 64rpx;
|
||||
line-height: 64rpx;
|
||||
background: #f56c6c;
|
||||
border-radius: 14rpx;
|
||||
font-size: 28rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.plus {
|
||||
margin: 22rpx 0;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 64rpx;
|
||||
line-height: 64rpx;
|
||||
background: $theme-oa-color;
|
||||
border-radius: 14rpx;
|
||||
font-size: 28rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
</style>
|
@ -1,64 +1,93 @@
|
||||
|
||||
<template>
|
||||
<view class="card">
|
||||
<view class="title">其他庆祝宴</view>
|
||||
<u--form labelPosition="left" :model="formData" :rules="rules" ref="breedingForm">
|
||||
<u-form-item labelWidth="auto" label="宴席类型" required prop="cultivated_area" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入门面面积"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="时间" required prop="cultivated_area" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入门面面积"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="地点" required prop="cultivated_area" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入经营地点"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="人数" required prop="notes" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入门面环境"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="请包办" required prop="notes" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:2,label:'酒店'},{value:1,label:'一条龙'},{value:0,label:'只请厨师'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无歌舞表演" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无交通工具" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无住宿" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
</u--form>
|
||||
<view>
|
||||
<view class="tit">
|
||||
<text v-if="readonly">更新时间: {{update_time}}</text>
|
||||
<text>其他庆祝宴</text>
|
||||
</view>
|
||||
<view class="card">
|
||||
<u--form labelPosition="left" :model="formData" :rules="rules" ref="breedingForm">
|
||||
<u-form-item labelWidth="auto" label="宴席类型" required prop="types" borderBottom>
|
||||
<u--input v-model="formData.types" placeholder="请输入宴席类型"></u--input>
|
||||
</u-form-item>
|
||||
<picker mode="date" @change="changeDate" :disabled="readonly">
|
||||
<u-form-item labelWidth="auto" label="时间" required prop="start_date" borderBottom>
|
||||
<u--input :value="formData.start_date" style="pointer-events: none;" placeholder="请选择时间" disabled
|
||||
disabledColor="#fff"></u--input>
|
||||
<u-icon slot="right" name="arrow-right"></u-icon>
|
||||
</u-form-item>
|
||||
</picker>
|
||||
<u-form-item labelWidth="auto" label="地点" required prop="address" borderBottom>
|
||||
<u--input v-model="formData.address" placeholder="请输入地点"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="人数" required prop="people_count" borderBottom>
|
||||
<u--input v-model="formData.people_count" type="number" placeholder="请输入人数"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="请包办" required prop="serve" borderBottom>
|
||||
<u-radio-group v-model="formData.serve" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:2,label:'酒店'},{value:1,label:'一条龙'},{value:0,label:'只请厨师'}]" :key="index"
|
||||
:label="item.label" :name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无歌舞表演" required prop="perform" borderBottom>
|
||||
<u-radio-group v-model="formData.perform" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无交通工具" required prop="vehicle" borderBottom>
|
||||
<u-radio-group v-model="formData.vehicle" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无住宿" required prop="in_hotel" borderBottom>
|
||||
<u-radio-group v-model="formData.in_hotel" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
</u--form>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
props: {
|
||||
readonly: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
datas: {
|
||||
type: Object,
|
||||
default: null
|
||||
},
|
||||
update_time: {
|
||||
type: String,
|
||||
default: null
|
||||
},
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
storeTypeList: ['超市', '生鲜', '饭店', '五金', '杂货', '服装', '文具', '其他'],
|
||||
formData: {
|
||||
shop_front: '', //有无门面
|
||||
types: "", //宴席类型
|
||||
start_date: "", //时间\日期
|
||||
address: "", //地点
|
||||
people_count: "", //人数
|
||||
serve: "", // 包办服务
|
||||
perform: "", //演出
|
||||
host: "", //主持
|
||||
vehicle: "", //交通工具
|
||||
in_hotel: "", //住宿
|
||||
},
|
||||
rules: {
|
||||
|
||||
@ -66,7 +95,32 @@
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.initRules()
|
||||
this.initRules();
|
||||
if (this.$props.readonly && this.$props.datas) {
|
||||
this.formData = this.$props.datas;
|
||||
let keys = Object.keys(this.formData);
|
||||
keys.forEach(item => {
|
||||
if (!isNaN(this.formData[item]) && this.formData[item] != '' && this.formData[item] != null && this
|
||||
.formData[item] != undefined) {
|
||||
parseFloat(this.formData[item]) != 'NaN' ? this.formData[item] = parseFloat(this.formData[item]) : null;
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
datas(newValue, oldValue) {
|
||||
if (this.$props.readonly && newValue) {
|
||||
this.formData = this.$props.datas;
|
||||
let keys = Object.keys(this.formData);
|
||||
keys.forEach(item => {
|
||||
if (!isNaN(this.formData[item]) && this.formData[item] != '' && this.formData[item] != null && this
|
||||
.formData[item] != undefined) {
|
||||
parseFloat(this.formData[item]) != 'NaN' ? this.formData[item] = parseFloat(this.formData[item]) :
|
||||
null;
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
// 初始化校验
|
||||
@ -93,8 +147,7 @@
|
||||
},
|
||||
// 选择时间
|
||||
changeDate(e) {
|
||||
let data = e.currentTarget.dataset;
|
||||
this.formData[data.value] = e.detail.value;
|
||||
this.formData.start_date = e.detail.value;
|
||||
},
|
||||
// 新增开设店铺
|
||||
pushBreedingList() {
|
||||
@ -118,24 +171,43 @@
|
||||
|
||||
<style lang="scss">
|
||||
.card {
|
||||
|
||||
background-color: #fff;
|
||||
|
||||
margin: 28rpx;
|
||||
|
||||
padding: 28rpx;
|
||||
|
||||
margin-top: 0;
|
||||
|
||||
padding-top: 0;
|
||||
|
||||
border-radius: 0 0 14rpx 14rpx;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
.tit {
|
||||
|
||||
margin: 28rpx 28rpx 0 28rpx;
|
||||
|
||||
padding: 28rpx 28rpx 0 28rpx;
|
||||
|
||||
border-radius: 14rpx 14rpx 0 0;
|
||||
|
||||
background-color: $theme-oa-color;
|
||||
|
||||
color: white;
|
||||
|
||||
height: 100rpx;
|
||||
|
||||
display: flex;
|
||||
|
||||
justify-content: space-between;
|
||||
|
||||
}
|
||||
|
||||
.title {
|
||||
font-weight: 500;
|
||||
font-size: 34rpx;
|
||||
|
@ -1,298 +1,338 @@
|
||||
<!-- 深加工 -->
|
||||
<template>
|
||||
<view class="card">
|
||||
<view class="title">深加工</view>
|
||||
<u--form labelPosition="left" :model="formData" :rules="rules" ref="breedingForm">
|
||||
<u-form-item labelWidth="auto" label="是否在经营" required prop="shop_front" borderBottom>
|
||||
<u-radio-group v-model="formData.shop_front" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'是'},{value:0,label:'否'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<block v-if="formData.shop_front">
|
||||
<u-form-item labelWidth="auto" label="有无建设用地" required prop="shop_front" borderBottom>
|
||||
<u-radio-group v-model="formData.shop_front" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="面积" required prop="cultivated_area" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入面积"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="经营地点" required prop="cultivated_area" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入经营地点"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="材料来源" required prop="notes" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入门面环境"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无销售渠道" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无技术指导" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无品牌" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无宣传推广" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无运输" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" labelPosition="top" label="经营诉求" required prop="farm_tools" borderBottom>
|
||||
<u--textarea v-model="formData.farm_tools" autoHeight placeholder="请输入经营诉求" border="surround"
|
||||
count></u--textarea>
|
||||
</u-form-item>
|
||||
</block>
|
||||
<block v-else>
|
||||
<u-form-item labelWidth="auto" label="有无建设用地" required prop="shop_front" borderBottom>
|
||||
<u-radio-group v-model="formData.shop_front" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<picker :range="storeTypeList" mode="selector" @change="changeLanPlan">
|
||||
<u-form-item labelWidth="auto" label="经营类型" required prop="planning" borderBottom>
|
||||
<u--input :value="storeTypeList[formData.planning]" placeholder="请选择经营类型" disabled
|
||||
disabledColor="#fff"></u--input>
|
||||
<u-icon slot="right" name="arrow-right"></u-icon>
|
||||
</u-form-item>
|
||||
</picker>
|
||||
<u-form-item labelWidth="auto" label="经营地点" required prop="cultivated_area" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入经营地点"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="人数" required prop="cultivated_area" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入经营地点"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无食堂" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="材料来源" required prop="notes" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入门面环境"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="自动化办公程度" required prop="notes" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入门面环境"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无用工需求" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无品牌" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无宣传推广" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="库存情况" required prop="notes" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入门面环境"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无运输" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" labelPosition="top" label="经营诉求" required prop="farm_tools" borderBottom>
|
||||
<u--textarea v-model="formData.farm_tools" autoHeight placeholder="请输入经营诉求" border="surround"
|
||||
count></u--textarea>
|
||||
</u-form-item>
|
||||
</block>
|
||||
</u--form>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
props:{
|
||||
readonly: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
datas:{
|
||||
type: Object,
|
||||
default: null
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
storeTypeList: ['超市', '生鲜', '饭店', '五金', '杂货', '服装', '文具', '其他'],
|
||||
formData: {
|
||||
shop_front: '', //有无门面
|
||||
manage: '',
|
||||
// construction_land
|
||||
// type
|
||||
// area
|
||||
// count
|
||||
// canteen
|
||||
|
||||
},
|
||||
rules: {
|
||||
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.initRules()
|
||||
},
|
||||
methods: {
|
||||
// 初始化校验
|
||||
initRules() {
|
||||
let arr = Object.keys(this.formData);
|
||||
arr.forEach(key => {
|
||||
this.rules[key] = {
|
||||
validator: (rule, value, callback) => {
|
||||
this.$refs.breedingForm.clearValidate(rule.field);
|
||||
value.trim() !== '' ? callback() : callback('不能为空');
|
||||
},
|
||||
trigger: ['change', 'blur']
|
||||
}
|
||||
})
|
||||
},
|
||||
// 校验
|
||||
async validate() {
|
||||
return await this.$refs.breedingForm.validate();;
|
||||
},
|
||||
// 选择土地规划
|
||||
changeLanPlan(e) {
|
||||
let index = e.currentTarget.dataset.index;
|
||||
this.formData.planning = e.detail.value;
|
||||
},
|
||||
// 选择时间
|
||||
changeDate(e) {
|
||||
let data = e.currentTarget.dataset;
|
||||
this.formData[data.value] = e.detail.value;
|
||||
},
|
||||
// 新增开设店铺
|
||||
pushBreedingList() {
|
||||
this.formData.push({})
|
||||
},
|
||||
// 删除开设店铺
|
||||
removeBreedingList(index) {
|
||||
uni.showModal({
|
||||
confirmColor: '#f56c6c',
|
||||
content: '确定删除吗?',
|
||||
success: (res) => {
|
||||
if (res.confirm) {
|
||||
this.formData.splice(index, 1);
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.card {
|
||||
background-color: #fff;
|
||||
margin: 28rpx;
|
||||
padding: 28rpx;
|
||||
margin-top: 0;
|
||||
padding-top: 0;
|
||||
border-radius: 0 0 14rpx 14rpx;
|
||||
}
|
||||
|
||||
.tit {
|
||||
margin: 28rpx 28rpx 0 28rpx;
|
||||
padding: 28rpx 28rpx 0 28rpx;
|
||||
border-radius: 14rpx 14rpx 0 0;
|
||||
background-color: $theme-oa-color;
|
||||
color: white;
|
||||
height: 100rpx;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
.title {
|
||||
font-weight: 500;
|
||||
font-size: 34rpx;
|
||||
|
||||
&::before {
|
||||
width: 8rpx;
|
||||
height: 26rpx;
|
||||
border-radius: 4rpx;
|
||||
background-color: #0122c7;
|
||||
content: "";
|
||||
display: inline-block;
|
||||
margin-right: 8rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.delete {
|
||||
margin: 22rpx 0;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 64rpx;
|
||||
line-height: 64rpx;
|
||||
background: #f56c6c;
|
||||
border-radius: 14rpx;
|
||||
font-size: 28rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.plus {
|
||||
margin: 22rpx 0;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 64rpx;
|
||||
line-height: 64rpx;
|
||||
background: $theme-oa-color;
|
||||
border-radius: 14rpx;
|
||||
font-size: 28rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
<!-- 深加工 -->
|
||||
<template>
|
||||
<view>
|
||||
<view class="tit">
|
||||
<text v-if="readonly">更新时间: {{update_time}}</text>
|
||||
<text>深加工</text>
|
||||
</view>
|
||||
<view class="card">
|
||||
<u--form labelPosition="left" :model="formData" :rules="rules" ref="breedingForm">
|
||||
<u-form-item labelWidth="auto" label="是否在经营" required prop="is_manage" borderBottom>
|
||||
<u-radio-group v-model="formData.is_manage" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'是'},{value:0,label:'否'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<block v-if="formData.is_manage">
|
||||
<u-form-item labelWidth="auto" label="有无建设用地" required prop="construction_land" borderBottom>
|
||||
<u-radio-group v-model="formData.construction_land" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="面积(m²)" required prop="land_area" borderBottom>
|
||||
<u--input v-model="formData.land_area" type="number" placeholder="请输入面积(m²)"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="经营地点" required prop="manage_place" borderBottom>
|
||||
<u--input v-model="formData.manage_place" placeholder="请输入经营地点"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="材料来源" required prop="source_materials" borderBottom>
|
||||
<u--input v-model="formData.source_materials" placeholder="请输入材料来源"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无销售渠道" required prop="marketing_channel" borderBottom>
|
||||
<u-radio-group v-model="formData.marketing_channel" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无技术指导" required prop="technical_guidance" borderBottom>
|
||||
<u-radio-group v-model="formData.technical_guidance" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无品牌" required prop="brand" borderBottom>
|
||||
<u-radio-group v-model="formData.brand" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无宣传推广" required prop="advertising" borderBottom>
|
||||
<u-radio-group v-model="formData.advertising" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无运输" required prop="transport" borderBottom>
|
||||
<u-radio-group v-model="formData.transport" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" labelPosition="top" label="经营诉求" required prop="business_appeal" borderBottom>
|
||||
<u--textarea v-model="formData.business_appeal" autoHeight placeholder="请输入经营诉求" border="surround"
|
||||
count></u--textarea>
|
||||
</u-form-item>
|
||||
</block>
|
||||
<block v-else>
|
||||
<u-form-item labelWidth="auto" label="有无建设用地" required prop="construction_land" borderBottom>
|
||||
<u-radio-group v-model="formData.construction_land" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<picker :range="storeTypeList" mode="selector" @change="changeLanPlan">
|
||||
<u-form-item labelWidth="auto" label="经营类型" required prop="manage_type" borderBottom>
|
||||
<u--input :value="storeTypeList[formData.manage_type]" style="pointer-events: none;" placeholder="请选择经营类型"
|
||||
disabled disabledColor="#fff"></u--input>
|
||||
<u-icon slot="right" name="arrow-right"></u-icon>
|
||||
</u-form-item>
|
||||
</picker>
|
||||
<u-form-item labelWidth="auto" label="经营地点" required prop="manage_place" borderBottom>
|
||||
<u--input v-model="formData.manage_place" placeholder="请输入经营地点"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="人数" required prop="people_count" borderBottom>
|
||||
<u--input v-model="formData.people_count" placeholder="请输入人数"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无食堂" required prop="canteen" borderBottom>
|
||||
<u-radio-group v-model="formData.canteen" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="材料来源" required prop="source_materials" borderBottom>
|
||||
<u--input v-model="formData.source_materials" placeholder="请输入材料来源"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="自动化办公程度" required prop="automation" borderBottom>
|
||||
<u--input v-model="formData.automation" placeholder="请输入自动化办公程度"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无用工需求" required prop="employment" borderBottom>
|
||||
<u-radio-group v-model="formData.employment" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无品牌" required prop="brand" borderBottom>
|
||||
<u-radio-group v-model="formData.brand" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无宣传推广" required prop="advertising" borderBottom>
|
||||
<u-radio-group v-model="formData.advertising" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="库存情况" required prop="repertory" borderBottom>
|
||||
<u--input v-model="formData.repertory" placeholder="请输入库存情况"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无运输" required prop="transport" borderBottom>
|
||||
<u-radio-group v-model="formData.transport" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" labelPosition="top" label="经营诉求" required prop="business_appeal" borderBottom>
|
||||
<u--textarea v-model="formData.business_appeal" autoHeight placeholder="请输入经营诉求" border="surround"
|
||||
count></u--textarea>
|
||||
</u-form-item>
|
||||
</block>
|
||||
</u--form>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
props: {
|
||||
readonly: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
datas: {
|
||||
type: Object,
|
||||
default: null
|
||||
},
|
||||
update_time: {
|
||||
type: String,
|
||||
default: null
|
||||
},
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
storeTypeList: ['超市', '生鲜', '饭店', '五金', '杂货', '服装', '文具', '其他'],
|
||||
formData: {
|
||||
is_manage: "", //是否拥有门面
|
||||
construction_land: "", //有无建设用地
|
||||
land_area: "", //面积
|
||||
manage_place: "", //经营地点
|
||||
source_materials: "", //材料来源
|
||||
marketing_channel: "", //有无销售渠道
|
||||
technical_guidance: "", //有无技术指导
|
||||
brand: "", //有无品牌
|
||||
advertising: "", //有无宣传推广
|
||||
transport: "", //有无运输
|
||||
business_appeal: "", //经营诉求
|
||||
manage_type: "", //经营类型
|
||||
people_count: "", //人数
|
||||
canteen: "", //食堂
|
||||
automation: "", //自动化办公程度
|
||||
employment: "", //用工需求
|
||||
repertory: "", //库存
|
||||
},
|
||||
rules: {
|
||||
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.initRules();
|
||||
if (this.$props.readonly && this.$props.datas) {
|
||||
this.formData = this.$props.datas;
|
||||
let keys = Object.keys(this.formData);
|
||||
keys.forEach(item => {
|
||||
if (!isNaN(this.formData[item])&&this.formData[item]!=''&&this.formData[item]!=null&&this.formData[item]!=undefined){
|
||||
parseFloat(this.formData[item])!='NaN'?this.formData[item] = parseFloat(this.formData[item]):null;
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
datas(newValue, oldValue) {
|
||||
if (this.$props.readonly && newValue) {
|
||||
this.formData = this.$props.datas;
|
||||
let keys = Object.keys(this.formData);
|
||||
keys.forEach(item => {
|
||||
if (!isNaN(this.formData[item])&&this.formData[item]!=''&&this.formData[item]!=null&&this.formData[item]!=undefined){
|
||||
parseFloat(this.formData[item])!='NaN'?this.formData[item] = parseFloat(this.formData[item]):null;
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
// 初始化校验
|
||||
initRules() {
|
||||
let arr = Object.keys(this.formData);
|
||||
arr.forEach(key => {
|
||||
this.rules[key] = {
|
||||
validator: (rule, value, callback) => {
|
||||
this.$refs.breedingForm.clearValidate(rule.field);
|
||||
value.trim() !== '' ? callback() : callback('不能为空');
|
||||
},
|
||||
trigger: ['change', 'blur']
|
||||
}
|
||||
})
|
||||
},
|
||||
// 校验
|
||||
async validate() {
|
||||
return await this.$refs.breedingForm.validate();;
|
||||
},
|
||||
// 选择经营类型
|
||||
changeLanPlan(e) {
|
||||
let index = e.currentTarget.dataset.index;
|
||||
this.formData.manage_type = e.detail.value;
|
||||
},
|
||||
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.card {
|
||||
|
||||
background-color: #fff;
|
||||
|
||||
margin: 28rpx;
|
||||
|
||||
padding: 28rpx;
|
||||
|
||||
margin-top: 0;
|
||||
|
||||
padding-top: 0;
|
||||
|
||||
border-radius: 0 0 14rpx 14rpx;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
.tit {
|
||||
|
||||
margin: 28rpx 28rpx 0 28rpx;
|
||||
|
||||
padding: 28rpx 28rpx 0 28rpx;
|
||||
|
||||
border-radius: 14rpx 14rpx 0 0;
|
||||
|
||||
background-color: $theme-oa-color;
|
||||
|
||||
color: white;
|
||||
|
||||
height: 100rpx;
|
||||
|
||||
display: flex;
|
||||
|
||||
justify-content: space-between;
|
||||
|
||||
}
|
||||
|
||||
.title {
|
||||
font-weight: 500;
|
||||
font-size: 34rpx;
|
||||
|
||||
&::before {
|
||||
width: 8rpx;
|
||||
height: 26rpx;
|
||||
border-radius: 4rpx;
|
||||
background-color: #0122c7;
|
||||
content: "";
|
||||
display: inline-block;
|
||||
margin-right: 8rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.delete {
|
||||
margin: 22rpx 0;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 64rpx;
|
||||
line-height: 64rpx;
|
||||
background: #f56c6c;
|
||||
border-radius: 14rpx;
|
||||
font-size: 28rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.plus {
|
||||
margin: 22rpx 0;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 64rpx;
|
||||
line-height: 64rpx;
|
||||
background: $theme-oa-color;
|
||||
border-radius: 14rpx;
|
||||
font-size: 28rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
</style>
|
@ -1,15 +1,9 @@
|
||||
<template>
|
||||
|
||||
|
||||
<view class="content">
|
||||
|
||||
<view class="tit">
|
||||
<text v-if="readonly">更新时间: {{update_time}}</text>
|
||||
<text>开设店铺</text>
|
||||
|
||||
</view>
|
||||
|
||||
|
||||
<view class="card">
|
||||
<!-- <view class="title">开设店铺</view> -->
|
||||
<u--form labelPosition="left" :model="formData" :rules="rules" ref="breedingForm">
|
||||
|
@ -1,282 +1,338 @@
|
||||
<!-- 深加工 -->
|
||||
<template>
|
||||
<view class="card">
|
||||
<view class="title">粗加工</view>
|
||||
<u--form labelPosition="left" :model="formData" :rules="rules" ref="breedingForm">
|
||||
<u-form-item labelWidth="auto" label="是否在经营" required prop="shop_front" borderBottom>
|
||||
<u-radio-group v-model="formData.shop_front" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'是'},{value:0,label:'否'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<block v-if="formData.shop_front">
|
||||
<u-form-item labelWidth="auto" label="有无建设用地" required prop="shop_front" borderBottom>
|
||||
<u-radio-group v-model="formData.shop_front" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="面积" required prop="cultivated_area" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入面积"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="经营地点" required prop="cultivated_area" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入经营地点"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="材料来源" required prop="notes" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入门面环境"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无销售渠道" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无技术指导" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无品牌" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无宣传推广" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无运输" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" labelPosition="top" label="经营诉求" required prop="farm_tools" borderBottom>
|
||||
<u--textarea v-model="formData.farm_tools" autoHeight placeholder="请输入经营诉求" border="surround"
|
||||
count></u--textarea>
|
||||
</u-form-item>
|
||||
</block>
|
||||
<block v-else>
|
||||
<u-form-item labelWidth="auto" label="有无建设用地" required prop="shop_front" borderBottom>
|
||||
<u-radio-group v-model="formData.shop_front" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<picker :range="storeTypeList" mode="selector" @change="changeLanPlan">
|
||||
<u-form-item labelWidth="auto" label="经营类型" required prop="planning" borderBottom>
|
||||
<u--input :value="storeTypeList[formData.planning]" placeholder="请选择经营类型" disabled
|
||||
disabledColor="#fff"></u--input>
|
||||
<u-icon slot="right" name="arrow-right"></u-icon>
|
||||
</u-form-item>
|
||||
</picker>
|
||||
<u-form-item labelWidth="auto" label="经营地点" required prop="cultivated_area" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入经营地点"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="人数" required prop="cultivated_area" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入经营地点"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无食堂" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="材料来源" required prop="notes" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入门面环境"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="自动化办公程度" required prop="notes" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入门面环境"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无用工需求" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无品牌" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无宣传推广" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="库存情况" required prop="notes" borderBottom>
|
||||
<u--input v-model="formData.cultivated_area" placeholder="请输入门面环境"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无运输" required prop="planting_company" borderBottom>
|
||||
<u-radio-group v-model="formData.planting_company" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" labelPosition="top" label="经营诉求" required prop="farm_tools" borderBottom>
|
||||
<u--textarea v-model="formData.farm_tools" autoHeight placeholder="请输入经营诉求" border="surround"
|
||||
count></u--textarea>
|
||||
</u-form-item>
|
||||
</block>
|
||||
</u--form>
|
||||
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
storeTypeList: ['超市', '生鲜', '饭店', '五金', '杂货', '服装', '文具', '其他'],
|
||||
formData: {
|
||||
shop_front: '', //有无门面
|
||||
},
|
||||
rules: {
|
||||
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.initRules()
|
||||
},
|
||||
methods: {
|
||||
// 初始化校验
|
||||
initRules() {
|
||||
let arr = Object.keys(this.formData);
|
||||
arr.forEach(key => {
|
||||
this.rules[key] = {
|
||||
validator: (rule, value, callback) => {
|
||||
this.$refs.breedingForm.clearValidate(rule.field);
|
||||
value.trim() !== '' ? callback() : callback('不能为空');
|
||||
},
|
||||
trigger: ['change', 'blur']
|
||||
}
|
||||
})
|
||||
},
|
||||
// 校验
|
||||
async validate() {
|
||||
return await this.$refs.breedingForm.validate();;
|
||||
},
|
||||
// 选择土地规划
|
||||
changeLanPlan(e) {
|
||||
let index = e.currentTarget.dataset.index;
|
||||
this.formData.planning = e.detail.value;
|
||||
},
|
||||
// 选择时间
|
||||
changeDate(e) {
|
||||
let data = e.currentTarget.dataset;
|
||||
this.formData[data.value] = e.detail.value;
|
||||
},
|
||||
// 新增开设店铺
|
||||
pushBreedingList() {
|
||||
this.formData.push({})
|
||||
},
|
||||
// 删除开设店铺
|
||||
removeBreedingList(index) {
|
||||
uni.showModal({
|
||||
confirmColor: '#f56c6c',
|
||||
content: '确定删除吗?',
|
||||
success: (res) => {
|
||||
if (res.confirm) {
|
||||
this.formData.splice(index, 1);
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.card {
|
||||
background-color: #fff;
|
||||
margin: 28rpx;
|
||||
padding: 28rpx;
|
||||
margin-top: 0;
|
||||
padding-top: 0;
|
||||
border-radius: 0 0 14rpx 14rpx;
|
||||
}
|
||||
|
||||
.tit {
|
||||
margin: 28rpx 28rpx 0 28rpx;
|
||||
padding: 28rpx 28rpx 0 28rpx;
|
||||
border-radius: 14rpx 14rpx 0 0;
|
||||
background-color: $theme-oa-color;
|
||||
color: white;
|
||||
height: 100rpx;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
.title {
|
||||
font-weight: 500;
|
||||
font-size: 34rpx;
|
||||
|
||||
&::before {
|
||||
width: 8rpx;
|
||||
height: 26rpx;
|
||||
border-radius: 4rpx;
|
||||
background-color: #0122c7;
|
||||
content: "";
|
||||
display: inline-block;
|
||||
margin-right: 8rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.delete {
|
||||
margin: 22rpx 0;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 64rpx;
|
||||
line-height: 64rpx;
|
||||
background: #f56c6c;
|
||||
border-radius: 14rpx;
|
||||
font-size: 28rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.plus {
|
||||
margin: 22rpx 0;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 64rpx;
|
||||
line-height: 64rpx;
|
||||
background: $theme-oa-color;
|
||||
border-radius: 14rpx;
|
||||
font-size: 28rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
<!-- 粗加工 -->
|
||||
<template>
|
||||
<view>
|
||||
<view class="tit">
|
||||
<text v-if="readonly">更新时间: {{update_time}}</text>
|
||||
<text>粗加工</text>
|
||||
</view>
|
||||
<view class="card">
|
||||
<u--form labelPosition="left" :model="formData" :rules="rules" ref="breedingForm">
|
||||
<u-form-item labelWidth="auto" label="是否在经营" required prop="is_manage" borderBottom>
|
||||
<u-radio-group v-model="formData.is_manage" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'是'},{value:0,label:'否'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<block v-if="formData.is_manage">
|
||||
<u-form-item labelWidth="auto" label="有无建设用地" required prop="construction_land" borderBottom>
|
||||
<u-radio-group v-model="formData.construction_land" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="面积(m²)" required prop="land_area" borderBottom>
|
||||
<u--input v-model="formData.land_area" type="number" placeholder="请输入面积(m²)"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="经营地点" required prop="manage_place" borderBottom>
|
||||
<u--input v-model="formData.manage_place" placeholder="请输入经营地点"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="材料来源" required prop="source_materials" borderBottom>
|
||||
<u--input v-model="formData.source_materials" placeholder="请输入材料来源"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无销售渠道" required prop="marketing_channel" borderBottom>
|
||||
<u-radio-group v-model="formData.marketing_channel" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无技术指导" required prop="technical_guidance" borderBottom>
|
||||
<u-radio-group v-model="formData.technical_guidance" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无品牌" required prop="brand" borderBottom>
|
||||
<u-radio-group v-model="formData.brand" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无宣传推广" required prop="advertising" borderBottom>
|
||||
<u-radio-group v-model="formData.advertising" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无运输" required prop="transport" borderBottom>
|
||||
<u-radio-group v-model="formData.transport" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" labelPosition="top" label="经营诉求" required prop="business_appeal" borderBottom>
|
||||
<u--textarea v-model="formData.business_appeal" autoHeight placeholder="请输入经营诉求" border="surround"
|
||||
count></u--textarea>
|
||||
</u-form-item>
|
||||
</block>
|
||||
<block v-else>
|
||||
<u-form-item labelWidth="auto" label="有无建设用地" required prop="construction_land" borderBottom>
|
||||
<u-radio-group v-model="formData.construction_land" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<picker :range="storeTypeList" mode="selector" @change="changeLanPlan">
|
||||
<u-form-item labelWidth="auto" label="经营类型" required prop="manage_type" borderBottom>
|
||||
<u--input :value="storeTypeList[formData.manage_type]" style="pointer-events: none;" placeholder="请选择经营类型"
|
||||
disabled disabledColor="#fff"></u--input>
|
||||
<u-icon slot="right" name="arrow-right"></u-icon>
|
||||
</u-form-item>
|
||||
</picker>
|
||||
<u-form-item labelWidth="auto" label="经营地点" required prop="manage_place" borderBottom>
|
||||
<u--input v-model="formData.manage_place" placeholder="请输入经营地点"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="人数" required prop="people_count" borderBottom>
|
||||
<u--input v-model="formData.people_count" placeholder="请输入人数"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无食堂" required prop="canteen" borderBottom>
|
||||
<u-radio-group v-model="formData.canteen" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="材料来源" required prop="source_materials" borderBottom>
|
||||
<u--input v-model="formData.source_materials" placeholder="请输入材料来源"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="自动化办公程度" required prop="automation" borderBottom>
|
||||
<u--input v-model="formData.automation" placeholder="请输入自动化办公程度"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无用工需求" required prop="employment" borderBottom>
|
||||
<u-radio-group v-model="formData.employment" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无品牌" required prop="brand" borderBottom>
|
||||
<u-radio-group v-model="formData.brand" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无宣传推广" required prop="advertising" borderBottom>
|
||||
<u-radio-group v-model="formData.advertising" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="库存情况" required prop="repertory" borderBottom>
|
||||
<u--input v-model="formData.repertory" placeholder="请输入库存情况"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="有无运输" required prop="transport" borderBottom>
|
||||
<u-radio-group v-model="formData.transport" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'有'},{value:0,label:'无'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" labelPosition="top" label="经营诉求" required prop="business_appeal" borderBottom>
|
||||
<u--textarea v-model="formData.business_appeal" autoHeight placeholder="请输入经营诉求" border="surround"
|
||||
count></u--textarea>
|
||||
</u-form-item>
|
||||
</block>
|
||||
</u--form>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
props: {
|
||||
readonly: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
datas: {
|
||||
type: Object,
|
||||
default: null
|
||||
},
|
||||
update_time: {
|
||||
type: String,
|
||||
default: null
|
||||
},
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
storeTypeList: ['超市', '生鲜', '饭店', '五金', '杂货', '服装', '文具', '其他'],
|
||||
formData: {
|
||||
is_manage: "", //是否拥有门面
|
||||
construction_land: "", //有无建设用地
|
||||
land_area: "", //面积
|
||||
manage_place: "", //经营地点
|
||||
source_materials: "", //材料来源
|
||||
marketing_channel: "", //有无销售渠道
|
||||
technical_guidance: "", //有无技术指导
|
||||
brand: "", //有无品牌
|
||||
advertising: "", //有无宣传推广
|
||||
transport: "", //有无运输
|
||||
business_appeal: "", //经营诉求
|
||||
manage_type: "", //经营类型
|
||||
people_count: "", //人数
|
||||
canteen: "", //食堂
|
||||
automation: "", //自动化办公程度
|
||||
employment: "", //用工需求
|
||||
repertory: "", //库存
|
||||
},
|
||||
rules: {
|
||||
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.initRules();
|
||||
if (this.$props.readonly && this.$props.datas) {
|
||||
this.formData = this.$props.datas;
|
||||
let keys = Object.keys(this.formData);
|
||||
keys.forEach(item => {
|
||||
if (!isNaN(this.formData[item])&&this.formData[item]!=''&&this.formData[item]!=null&&this.formData[item]!=undefined){
|
||||
parseFloat(this.formData[item])!='NaN'?this.formData[item] = parseFloat(this.formData[item]):null;
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
datas(newValue, oldValue) {
|
||||
if (this.$props.readonly && newValue) {
|
||||
this.formData = this.$props.datas;
|
||||
let keys = Object.keys(this.formData);
|
||||
keys.forEach(item => {
|
||||
if (!isNaN(this.formData[item])&&this.formData[item]!=''&&this.formData[item]!=null&&this.formData[item]!=undefined){
|
||||
parseFloat(this.formData[item])!='NaN'?this.formData[item] = parseFloat(this.formData[item]):null;
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
// 初始化校验
|
||||
initRules() {
|
||||
let arr = Object.keys(this.formData);
|
||||
arr.forEach(key => {
|
||||
this.rules[key] = {
|
||||
validator: (rule, value, callback) => {
|
||||
this.$refs.breedingForm.clearValidate(rule.field);
|
||||
value.trim() !== '' ? callback() : callback('不能为空');
|
||||
},
|
||||
trigger: ['change', 'blur']
|
||||
}
|
||||
})
|
||||
},
|
||||
// 校验
|
||||
async validate() {
|
||||
return await this.$refs.breedingForm.validate();;
|
||||
},
|
||||
// 选择经营类型
|
||||
changeLanPlan(e) {
|
||||
let index = e.currentTarget.dataset.index;
|
||||
this.formData.manage_type = e.detail.value;
|
||||
},
|
||||
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.card {
|
||||
|
||||
background-color: #fff;
|
||||
|
||||
margin: 28rpx;
|
||||
|
||||
padding: 28rpx;
|
||||
|
||||
margin-top: 0;
|
||||
|
||||
padding-top: 0;
|
||||
|
||||
border-radius: 0 0 14rpx 14rpx;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
.tit {
|
||||
|
||||
margin: 28rpx 28rpx 0 28rpx;
|
||||
|
||||
padding: 28rpx 28rpx 0 28rpx;
|
||||
|
||||
border-radius: 14rpx 14rpx 0 0;
|
||||
|
||||
background-color: $theme-oa-color;
|
||||
|
||||
color: white;
|
||||
|
||||
height: 100rpx;
|
||||
|
||||
display: flex;
|
||||
|
||||
justify-content: space-between;
|
||||
|
||||
}
|
||||
|
||||
.title {
|
||||
font-weight: 500;
|
||||
font-size: 34rpx;
|
||||
|
||||
&::before {
|
||||
width: 8rpx;
|
||||
height: 26rpx;
|
||||
border-radius: 4rpx;
|
||||
background-color: #0122c7;
|
||||
content: "";
|
||||
display: inline-block;
|
||||
margin-right: 8rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.delete {
|
||||
margin: 22rpx 0;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 64rpx;
|
||||
line-height: 64rpx;
|
||||
background: #f56c6c;
|
||||
border-radius: 14rpx;
|
||||
font-size: 28rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.plus {
|
||||
margin: 22rpx 0;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 64rpx;
|
||||
line-height: 64rpx;
|
||||
background: $theme-oa-color;
|
||||
border-radius: 14rpx;
|
||||
font-size: 28rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
</style>
|
@ -151,7 +151,7 @@
|
||||
if (this.showDemandList.length == 0) return Toast('请先添加需求!');
|
||||
let refsDatas = await this.loadRefsDatas();
|
||||
if (!this.updateFlag) return;
|
||||
// return ;
|
||||
return ;
|
||||
uni.showLoading({
|
||||
title: '正在更新...',
|
||||
mask: true
|
||||
|
Loading…
x
Reference in New Issue
Block a user