|
@@ -17,9 +17,14 @@
|
|
|
<van-row class="cell">
|
|
<van-row class="cell">
|
|
|
<van-col span="6">服务对象:</van-col>
|
|
<van-col span="6">服务对象:</van-col>
|
|
|
<van-col span="18">
|
|
<van-col span="18">
|
|
|
- <!-- <div class="serviceTarget" @click="serviceTargetPopup">{{form.serviceTarget?form.serviceTarget:'请选择'}}</div> -->
|
|
|
|
|
|
|
+ <!-- <div class="serviceTarget" @click="serviceTargetPopup">{{form.serviceTarget}}</div> -->
|
|
|
<van-field @click="serviceTargetPopup" :rules="[{ required: true}]" type="textarea" v-model="form.serviceTarget" placeholder="请输入服务对象" disabled />
|
|
<van-field @click="serviceTargetPopup" :rules="[{ required: true}]" type="textarea" v-model="form.serviceTarget" placeholder="请输入服务对象" disabled />
|
|
|
<van-popup position="bottom" v-model="serviceTargetShow">
|
|
<van-popup position="bottom" v-model="serviceTargetShow">
|
|
|
|
|
+ <div class="field">
|
|
|
|
|
+ <div v-for="(item,index) in serviceTarget" :key="index">{{item}}
|
|
|
|
|
+ <van-icon name="clear" color="#999" @click="clearserviceTarget(index)" />
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </div>
|
|
|
<van-search placeholder="请输入姓名查询" @input="listChildInfoByName" v-model="positionSearch" />
|
|
<van-search placeholder="请输入姓名查询" @input="listChildInfoByName" v-model="positionSearch" />
|
|
|
<van-picker cancel-button-text='取消' value-key="title" show-toolbar :columns="childList" @confirm="onConfirmPicker" @cancel="serviceTargetShow = false">
|
|
<van-picker cancel-button-text='取消' value-key="title" show-toolbar :columns="childList" @confirm="onConfirmPicker" @cancel="serviceTargetShow = false">
|
|
|
<template #option="item">
|
|
<template #option="item">
|
|
@@ -44,7 +49,7 @@
|
|
|
<van-row class="cell">
|
|
<van-row class="cell">
|
|
|
<van-col span="6">选择街道:</van-col>
|
|
<van-col span="6">选择街道:</van-col>
|
|
|
<van-col span="18" @click="streetshowPopup">
|
|
<van-col span="18" @click="streetshowPopup">
|
|
|
- <van-field v-model="form.streetName" :rules="[{ required: true}]" placeholder="请选择街道" />
|
|
|
|
|
|
|
+ <van-field v-model="form.streetName" :rules="[{ required: true}]" placeholder="请选择街道" disabled />
|
|
|
<!-- {{form.streetName?form.streetName:'请选择'}} -->
|
|
<!-- {{form.streetName?form.streetName:'请选择'}} -->
|
|
|
</van-col>
|
|
</van-col>
|
|
|
<van-popup v-model="streetShow" position="bottom" :style="{ height: '50%' }">
|
|
<van-popup v-model="streetShow" position="bottom" :style="{ height: '50%' }">
|
|
@@ -61,13 +66,13 @@
|
|
|
<van-col span="6">服务人员:</van-col>
|
|
<van-col span="6">服务人员:</van-col>
|
|
|
<van-col span="18">
|
|
<van-col span="18">
|
|
|
<van-field v-model="form.serviceStaff" :rules="[{ required: true}]" @click="serviceShow=true" placeholder="请选择服务人员" disabled />
|
|
<van-field v-model="form.serviceStaff" :rules="[{ required: true}]" @click="serviceShow=true" placeholder="请选择服务人员" disabled />
|
|
|
- <van-popup v-model="serviceShow" position="bottom" :style="{ height: '30%' }">
|
|
|
|
|
|
|
+ <van-popup v-model="serviceShow" position="bottom" :style="{ height: '50%' }">
|
|
|
<div class="popup">
|
|
<div class="popup">
|
|
|
<div class="btn">
|
|
<div class="btn">
|
|
|
<div @click="serviceShow=false" class="cancle">取消</div>
|
|
<div @click="serviceShow=false" class="cancle">取消</div>
|
|
|
<div @click="serviceConfirm" class="confirm">确定</div>
|
|
<div @click="serviceConfirm" class="confirm">确定</div>
|
|
|
</div>
|
|
</div>
|
|
|
- <van-checkbox-group v-model="result">
|
|
|
|
|
|
|
+ <van-checkbox-group class="group" v-model="result">
|
|
|
<van-cell-group>
|
|
<van-cell-group>
|
|
|
<van-cell v-for="(item,index) in employeeList" clickable :key="index" :title="item.name" @click="toggle(item,index)">
|
|
<van-cell v-for="(item,index) in employeeList" clickable :key="index" :title="item.name" @click="toggle(item,index)">
|
|
|
<template #right-icon>
|
|
<template #right-icon>
|
|
@@ -128,6 +133,7 @@ export default {
|
|
|
multiMediaUrl: [],
|
|
multiMediaUrl: [],
|
|
|
form: {
|
|
form: {
|
|
|
fileList: [],
|
|
fileList: [],
|
|
|
|
|
+ serviceTarget: '123',
|
|
|
},
|
|
},
|
|
|
streetList: '',
|
|
streetList: '',
|
|
|
servicetTime: new Date(),
|
|
servicetTime: new Date(),
|
|
@@ -147,11 +153,18 @@ export default {
|
|
|
},
|
|
},
|
|
|
created() {
|
|
created() {
|
|
|
this.dataInfo = this.$route.query.item
|
|
this.dataInfo = this.$route.query.item
|
|
|
- this.form = { fileList: [], ...this.dataInfo }
|
|
|
|
|
|
|
+ this.form = { serviceTarget: '', fileList: [], ...this.dataInfo }
|
|
|
this.getStreetList()
|
|
this.getStreetList()
|
|
|
this.getEmployeeList()
|
|
this.getEmployeeList()
|
|
|
},
|
|
},
|
|
|
methods: {
|
|
methods: {
|
|
|
|
|
+ clearserviceTarget(index) {
|
|
|
|
|
+ if (!this.form.serviceTarget) return
|
|
|
|
|
+ var serviceTarget = this.form.serviceTarget.split(',')
|
|
|
|
|
+ serviceTarget.splice(index, 1)
|
|
|
|
|
+ this.serviceTarget.splice(index, 1)
|
|
|
|
|
+ this.form.serviceTarget = serviceTarget.join(',')
|
|
|
|
|
+ },
|
|
|
async getEmployeeList() {
|
|
async getEmployeeList() {
|
|
|
const res = await getEmployeeList()
|
|
const res = await getEmployeeList()
|
|
|
this.employeeList = res.data
|
|
this.employeeList = res.data
|
|
@@ -282,6 +295,19 @@ export default {
|
|
|
}
|
|
}
|
|
|
</script>
|
|
</script>
|
|
|
<style lang="scss" scoped>
|
|
<style lang="scss" scoped>
|
|
|
|
|
+.field {
|
|
|
|
|
+ padding: 0 30px;
|
|
|
|
|
+ display: flex;
|
|
|
|
|
+ margin-top: 16px;
|
|
|
|
|
+ div {
|
|
|
|
|
+ margin: 0 10px;
|
|
|
|
|
+ font-size: 26px;
|
|
|
|
|
+ padding: 10px;
|
|
|
|
|
+ line-height: normal;
|
|
|
|
|
+ background-color: #eee;
|
|
|
|
|
+ border-radius: 40px;
|
|
|
|
|
+ }
|
|
|
|
|
+}
|
|
|
.tx {
|
|
.tx {
|
|
|
width: 160px;
|
|
width: 160px;
|
|
|
height: 160px;
|
|
height: 160px;
|
|
@@ -389,11 +415,19 @@ export default {
|
|
|
}
|
|
}
|
|
|
.popup {
|
|
.popup {
|
|
|
padding: 0 30px;
|
|
padding: 0 30px;
|
|
|
|
|
+ overflow: hidden;
|
|
|
|
|
+ height: 100%;
|
|
|
.btn {
|
|
.btn {
|
|
|
padding: 16px 0;
|
|
padding: 16px 0;
|
|
|
display: flex;
|
|
display: flex;
|
|
|
|
|
+ height: 80px;
|
|
|
justify-content: space-between;
|
|
justify-content: space-between;
|
|
|
}
|
|
}
|
|
|
|
|
+ .group {
|
|
|
|
|
+ margin-top: 30px;
|
|
|
|
|
+ height: calc(100% - 180px);
|
|
|
|
|
+ overflow: auto;
|
|
|
|
|
+ }
|
|
|
.cancle {
|
|
.cancle {
|
|
|
font-size: 26px;
|
|
font-size: 26px;
|
|
|
font-weight: bold;
|
|
font-weight: bold;
|