You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

896 lines
27 KiB

<template>
<view class="service-info container">
<view style="margin: 15px 15px 10px;">
<uni-steps :options="serviceStep" active-icon="checkbox" :active="active" active-color='#ffbf60' activeTextColor='#ffbf60' />
</view>
<view v-if="active == 0" class="">
<view class="service-card">
<view class="service-card-title">
<text class="service-card-title-flag"></text>
本次喂养过程中,您需要喂养的食品包括
</view>
<view v-for="(item, index) in foods" :key="index" class="service-item">
<view class="service-item-title">
<view class="service-item-title-name">
{{ item.name }}
</view>
<view class="service-item-title-switch">
<view :style="{'color':item.status?'#333333':'#aaaaaa', 'margin-right': '10px'}">{{ item.status ? '是' : '否' }}</view>
<view>
<u-switch v-model="item.status" inactiveColor="#dddddd" :activeValue="true"></u-switch>
</view>
</view>
</view>
<view v-if="item.status" class="service-item-content">
<view style="color: #333;">{{item.nameSort}}摆放位置</view>
<view style="margin: 10px 0;">
<UploadComponent :imageUrl.sync="item.locationImage"></UploadComponent>
</view>
<view class="service-item-image-tip">
<text style="color:#ff3d3d;line-height: 2;">* </text>请在图片中, 用“红圈”圈出{{item.nameSort}}摆放位置
</view>
<view v-if="item.needInput" class="service-item-input">
<view>{{ item.nameSort }}喂养重量</view>
<view style="width: 100px; display: flex;">
<u-input v-model="item.foodWeight" border="bottom" :customStyle="{'padding':'0 0 0 5px'}">
</u-input>
<u--text :text="item.unit" margin="0 3px 0 0" type="tips"></u--text>
</view>
</view>
<view v-if="item.needInput" class="service-item-input">
<view>{{ item.nameSort }}喂养频率</view>
<view style="width: 100px; display: flex;">
<u-input v-model="item.frequency" border="bottom" type="number" :customStyle="{'padding':'0 0 0 5px'}">
</u-input>
<u--text text="次/天" margin="0 3px 0 0" type="tips"></u--text>
</view>
</view>
<view>
<view style="margin: 10px 0;">{{item.remarkTip?item.remarkTip:'备注信息'}}</view>
<u-input placeholder="请输入备注信息" v-model="item.remark"></u-input>
</view>
</view>
</view>
</view>
<view>
<view v-for="(item, index) in otherTool" :key="item.name" class="service-card">
<view class="service-card-title">
<text class="service-card-title-flag"></text>
<view class="service-card-title-name">
{{ item.name }}
</view>
</view>
<view class="service-item-content">
<view style="color: #333; margin-top: 10px;">{{item.nameSort}}摆放位置</view>
<view style="margin: 10px 0;" v-if="item.locationImage">
<UploadComponent :imageUrl.sync="item.locationImage"></UploadComponent>
</view>
<view style="margin: 10px 0;" v-else>
<UploadComponent :imageUrl.sync="item.locationImage"></UploadComponent>
</view>
<view class="service-item-image-tip">
<text style="color:#ff3d3d;line-height: 2;">* </text>请在图片中, 用“红圈”圈出{{item.nameSort}}摆放位置
</view>
<view>
<view style="margin: 10px 0;">{{item.remarkTip?item.remarkTip:'备注信息'}}</view>
<u-input placeholder="请输入备注信息" v-model="item.remark"></u-input>
</view>
</view>
</view>
</view>
<view class="service-card">
<view class="service-card-title">
<text class="service-card-title-flag"></text>
其他补充信息(非必填)
</view>
<view>
<view style="margin: 10px 0;">备注信息</view>
<u-input placeholder="请输入备注信息" v-model="otherRemark"></u-input>
</view>
</view>
</view>
<view v-if="active == 1">
<view class="service-card">
<view class="service-card-title">
<text class="service-card-title-flag"></text>
本次喂养过程中,您需要清洁的内容包括
</view>
<view v-for="(item, index) in cleans" :key="index" class="service-item">
<view class="service-item-title">
<view class="service-item-title-name">
{{ item.name }}
</view>
<view class="service-item-title-switch">
<view :style="{'color':item.status?'#333333':'#aaaaaa', 'margin-right': '10px'}">{{ item.status ? '是' : '否' }}</view>
<view>
<u-switch v-model="item.status" inactiveColor="#dddddd" :activeValue="true"></u-switch>
</view>
</view>
</view>
<view v-if="item.status" class="service-item-content">
<view style="color: #333;">{{item.nameSort}}摆放位置</view>
<view style="margin: 10px 0;">
<UploadComponent :imageUrl.sync="item.locationImage"></UploadComponent>
</view>
<view class="service-item-image-tip">
<text style="color:#ff3d3d;line-height: 2;">* </text>请在图片中, 用“红圈”圈出{{item.nameSort}}摆放位置
</view>
<view v-if="item.needInput" class="service-item-input">
<view>{{ item.nameSort }}更换频率</view>
<view style="width: 100px; display: flex;">
<u-input v-model="item.frequency" border="bottom" type="number" :customStyle="{'padding':'0 0 0 5px'}">
</u-input>
<u--text text="次/天" margin="0 3px 0 0" type="tips"></u--text>
</view>
</view>
<view>
<view style="margin: 10px 0;">{{item.remarkTip?item.remarkTip:'备注信息'}}</view>
<u-input placeholder="请输入备注信息" v-model="item.remark"></u-input>
</view>
</view>
</view>
</view>
</view>
<view v-if="active == (serviceStep.length-1)">
<view class="service-card">
<view class="service-card-title">
<text class="service-card-title-flag"></text>
请选择您需要的附加服务类型
</view>
<view v-for="(item, index) in addpends" :key="index" class="service-item">
<view class="service-item-title">
<view class="service-item-title-name">
{{ item.name }}
</view>
<view class="service-item-title-switch">
<view :style="{'color':item.status?'#333333':'#aaaaaa', 'margin-right': '10px'}">{{ item.status ? '是' : '否' }}</view>
<view>
<u-switch v-model="item.status" inactiveColor="#dddddd" :activeValue="true"></u-switch>
</view>
</view>
</view>
<view v-if="item.status" class="service-item-content">
<view style="color: #333;">{{item.nameSort}}摆放位置</view>
<view style="margin: 10px 0;">
<UploadComponent :imageUrl.sync="item.locationImage"></UploadComponent>
</view>
<view class="service-item-image-tip">
<text style="color:#ff3d3d;line-height: 2;">* </text>请在图片中, 用“红圈”圈出{{item.nameSort}}摆放位置
</view>
<view>
<view style="margin: 10px 0;">{{item.remarkTip?item.remarkTip:'备注信息'}}</view>
<u-input placeholder="请输入备注信息" v-model="item.remark"></u-input>
</view>
</view>
</view>
</view>
</view>
<view v-if="active == 2 && petType == 'dog'">
<view class="service-card">
<view class="service-card-title">
<text class="service-card-title-flag"></text>
遛狗用品
</view>
<view class="service-item">
<view class="service-item-content">
<view style="color: #333;">遛狗用品摆放位置</view>
<view style="margin: 10px 0;">
<UploadComponent :imageUrl.sync="walkDogLocationImage"></UploadComponent>
</view>
<view class="service-item-image-tip">
<text style="color:#ff3d3d;line-height: 2;">* </text>请在图片中, 用“红圈”圈出遛狗用品摆放位置
</view>
</view>
</view>
<view v-for="(item, index) in walk" :key="index" class="service-item">
<view class="service-item-title">
<view class="service-item-title-name" style="color: #333;">
{{ item.name }}
</view>
<view class="service-item-title-switch">
<view :style="{'color':item.status?'#333333':'#aaaaaa', 'margin-right': '10px'}">{{ item.status ? '是' : '否' }}</view>
<view>
<u-switch v-model="item.status" inactiveColor="#dddddd" :activeValue="true"></u-switch>
</view>
</view>
</view>
<view v-if="item.status" class="service-item-content">
<view style="color: #333;">{{item.nameSort}}摆放位置</view>
<view style="margin: 10px 0;">
<UploadComponent :imageUrl.sync="item.locationImage"></UploadComponent>
</view>
<view class="service-item-image-tip">
<text style="color:#ff3d3d;line-height: 2;">* </text>请在图片中, 用“红圈”圈出{{item.nameSort}}摆放位置
</view>
<view>
<view style="margin: 10px 0;">{{item.remarkTip?item.remarkTip:'备注信息'}}</view>
<u-input placeholder="请输入备注信息" v-model="item.remark"></u-input>
</view>
</view>
</view>
</view>
<view class="service-card">
<view class="service-card-title">
<text class="service-card-title-flag"></text>
注意事项(非必填)
</view>
<view v-for="(item, index) in needDos" :key="index" class="service-item">
<view class="service-item-title">
<view class="service-item-title-name">
{{ item.name }}
</view>
<view class="service-item-title-switch">
<view :style="{'color':item.status?'#333333':'#aaaaaa', 'margin-right': '10px'}">{{ item.status ? '是' : '否' }}</view>
<view>
<u-switch v-model="item.status" inactiveColor="#dddddd" :activeValue="true"></u-switch>
</view>
</view>
</view>
<view v-if="item.status">
<view>
<view style="margin: 10px 0;">备注信息</view>
<u-input :placeholder="item.remarkTip?item.remarkTip:'请输入备注信息'" v-model="item.remark"></u-input>
</view>
</view>
</view>
</view>
</view>
<view class="service-info-btns">
<view class="personal-service-btns">
<view class="personal-service-btn">
<u-button color="#FFF4E4" :disabled="active==0" @click="previousStep">
<view style="color: #FFBF60;">
上一步
</view>
</u-button>
</view>
<view class="personal-service-btn" >
<u-button v-if="active<(serviceStep.length-1)" color="#FFBF60" @click="nextStep">
<view style="color: #fff;">
下一步
</view>
</u-button>
<u-button v-else color="#FFBF60" @click="submit" :loading="loading">
<view style="color: #fff;">
提交
</view>
</u-button>
</view>
</view>
</view>
</view>
</template>
<script>
import { getServiceInfo,addServiceInfo,updateServiceInfo} from '@/api/system/service.js'
import UploadComponent from './components/uploadComponent.vue';
export default {
data() {
return {
loading:false,
id:'',
petId:'',
petType: 'dog',
serviceStep: [],
active: 0,
foods: [
{
name: '干粮(主粮、冻干等)',
nameSort: '干粮',
status: false,
locationImage: '',
foodWeight: '',
frequency: '',
unit: '/次',
needInput:true,
remarkTip:'',
remark: ''
},
{
name: '湿粮(罐头等)',
nameSort: '湿粮',
status: false,
locationImage: '',
foodWeight: '',
frequency: '',
unit: '罐/次',
needInput:true,
remarkTip:'',
remark: ''
}, {
name: '自制食品',
nameSort: '自制食品',
status: false,
locationImage: '',
foodWeight: '',
frequency: '',
needInput:false,
remarkTip:'自制饭制作和喂食说明',
remark: ''
}, {
name: '生骨肉',
nameSort: '生骨肉',
status: false,
locationImage: '',
foodWeight: '',
frequency: '',
needInput:false,
remarkTip:'生骨肉喂食说明',
remark: ''
}, {
name: '保健品',
nameSort: '保健品',
status: false,
locationImage: '',
foodWeight: '',
frequency: '',
needInput:false,
remarkTip:'保健品喂养方式',
remark: ''
},
{
name: '零食',
nameSort: '零食',
status: false,
locationImage: '',
foodWeight: '',
frequency: '',
needInput:false,
remarkTip:'零食喂养方式',
remark: ''
}
],
otherTool:[
{
name: '食盆/自动喂食器',
nameSort: '喂食器',
locationImage: '',
remarkTip:'',
remark: ''
},
{
name: '饮用水',
nameSort: '饮用水',
locationImage: '',
remarkTip:'饮用水添加要求',
remark: ''
},
],
cleans:[
{
name: '猫砂',
nameSort: '猫砂',
status: false,
locationImage: '',
frequency: '',
needInput:true,
remark: ''
},
{
name: '尿垫',
nameSort: '尿垫',
status: false,
locationImage: '',
frequency: '',
needInput:true,
remark: ''
}
],
addpends:[
{
name: '陪玩',
nameSort: '陪玩用品',
status:false,
locationImage: '',
remarkTip:'您希望的互动方式和要求',
remark: ''
},
{
name: '活动区吸毛',
nameSort: '吸毛用品',
status:false,
locationImage: '',
remarkTip:'请说明吸毛区域及要求',
remark: ''
},
{
name: '毛发梳理',
nameSort: '毛发梳理用品',
status:false,
locationImage: '',
remarkTip:'请说明毛发梳理要求(如: 天数, 次数等)',
remark: ''
},
{
name: '食具深度清洁',
nameSort: '需深度清洁的用具及消毒剂',
status:false,
locationImage: '',
remarkTip:'请说明食具/饮水机深度清洁要求(如清洁方式、消毒剂使用方式、频率等)',
remark: ''
},
{
name: '喂药上药',
nameSort: '药品',
status:false,
locationImage: '',
remarkTip:'备注信息',
remark: ''
},
],
walkDogLocationImage:'',
walk:[
{
name: '下雨天是否遛狗',
status:false,
nameSort: '狗狗雨具',
locationImage: '',
remarkTip:'雨天遛狗要求',
remark: ''
}
],
needDos:[
{
name: '遛狗时长',
status:false,
remarkTip:'',
remark: ''
},
{
name: '狗狗行为',
status:false,
remarkTip:'请输入备注信息(是否爆冲、避开其他狗等)',
remark: ''
},
{
name: '偏好区域',
status:false,
remarkTip:'请输入备注信息(如禁止狗狗进入的区域)',
remark: ''
},
{
name: '偏好路线',
status:false,
remarkTip:'请输入备注信息(如建议遛狗路线)',
remark: ''
},
],
otherRemark:''
};
},
components:{
UploadComponent
},
onLoad: function (option) {
this.petType = option.petType || 'dog';
this.petId= option.petId
// this.petId= 123 //option.petId
},
mounted() {
this.getServiceStep()
this.getServiceInfo()
},
methods: {
getServiceStep() {
if (this.petType == 'dog') {
this.serviceStep = [{
title: '喂养要求'
}, {
title: '清洁要求'
}, {
title: '遛狗要求'
}, {
title: '附加服务'
},]
} else {
this.serviceStep = [{
title: '喂养要求'
}, {
title: '清洁要求'
}, {
title: '附加服务'
},]
}
},
getServiceInfo(){
getServiceInfo(this.petId).then(res=>{
if(res.code==200&&res.data){
let data= res.data
this.id = data.id
this.petId= data.petId
this.foods[0].status= data.includeDryFood
this.foods[0].frequency= data.dryFoodFeedFrequencyTimes
this.foods[0].foodWeight= data.dryFoodFeedWeight
this.foods[0].locationImage= data.dryFoodLocation
this.foods[0].remark= data.dryFoodRemarks
this.foods[1].status= data.includeWetFood
this.foods[1].frequency= data.wetFoodFeedFrequencyTimes
this.foods[1].foodWeight= data.wetFoodFeedWeight
this.foods[1].locationImage= data.wetFoodLocation
this.foods[1].remark= data.wetFoodRemarks
this.foods[2].status= data.includeHomemadeFood
this.foods[2].remark= data.homemadeFoodInstructions
this.foods[2].locationImage= data.homemadeFoodLocation
this.foods[3].status= data.includeRawMeat
this.foods[3].remark= data.rawMeatFeedingInstructions
this.foods[3].locationImage= data.rawMeatLocation
this.foods[4].status= data.includeHealthSupplements
this.foods[4].remark= data.healthSupplementsFeedingInstructions
this.foods[4].locationImage= data.healthSupplementsLocation
this.foods[5].status= data.includeSnacks
this.foods[5].remark= data.snacksFeedingMethod
this.foods[5].locationImage= data.snacksLocation
this.otherRemark= data.otherRemark
this.otherTool[0].locationImage= data.feedingTrayAutomaticFeederLocation
this.otherTool[0].remark= data.feedingTrayAutomaticFeederRemarks
this.otherTool[1].locationImage= data.waterBowlLocation
this.otherTool[1].remark= data.waterBowlRemarks
this.cleans[0].status= data.changeLitterBox
this.cleans[0].frequency= data.litterBoxChangeFrequencyTimes
this.cleans[0].locationImage= data.litterBoxLocation
this.cleans[0].remark= data.litterBoxRemarks
this.cleans[1].status= data.changePeePad
this.cleans[1].frequency=data.peePadFrequencyTimes
this.cleans[1].locationImage= data.peePadLocation
this.cleans[1].remark= data.peePadRemarks
this.addpends[0].remark= data.playtimeRequirements
this.addpends[0].status= data.playtimeService
this.addpends[0].locationImage= data.playtimeToolsLocation
this.addpends[1].remark= data.furCleaningRequirements
this.addpends[1].status= data.furCleaningService
this.addpends[1].locationImage= data.furCleaningToolsLocation
this.addpends[2].remark= data.groomingRequirements
this.addpends[2].status= data.groomingService
this.addpends[2].locationImage= data.groomingToolsLocation
this.addpends[3].remark= data.deepCleaningRemarks
this.addpends[3].status= data.deepCleaningService
this.addpends[3].locationImage= data.deepCleaningToolsLocation
this.addpends[4].status= data.administerMedication
this.addpends[4].locationImage= data.administerMedicationLocation
this.addpends[4].remark= data.administerMedicationRemarks
this.needDos[0].status= data.isWalkDogDuration
this.needDos[1].status= data.isDogBehavior
this.needDos[2].status= data.isFavoriteRegion
this.needDos[3].status= data.isFavoriteRoute
this.needDos[0].remark= data.walkDogDuration
this.needDos[1].remark= data.dogBehavior
this.needDos[2].remark= data.favoriteRegion
this.needDos[3].remark= data.favoriteRoute
this.needDos[0].status= data.walkDog
this.walk[0].status= data.walkDogRainyDay
this.walkDogLocationImage= data.walkDogToolsLocation
this.walk[0].locationImage= data.dogRainGearLocation
this.walk[0].remark= data.walkDogRainRemark
}
})
},
previousStep(){
this.active = this.active - 1
},
nextStep(){
let isVaild = true;
let errorTip = ''
if(this.active==0){
if(!this.otherTool[0].locationImage){
isVaild = false;
errorTip='请上传喂食器具摆放位置'
}
if(!this.otherTool[1].locationImage){
isVaild = false;
errorTip='请上传饮用水摆放位置'
}
this.foods.map(item=>{
if(item.status && !item.locationImage){
isVaild = false;
errorTip=`请上传${item.nameSort}摆放位置`
}
})
}
if(this.active==1){
this.cleans.map(item=>{
if(item.status && !item.locationImage){
isVaild = false;
errorTip=`请上传${item.nameSort}摆放位置`
}
})
}
if(this.active == 2 && this.petType == 'dog'){
this.walk.map(item=>{
if(item.status && !item.locationImage){
isVaild = false;
errorTip=`请上传${item.nameSort}摆放位置`
}
})
}
if(isVaild == false){
this.$modal.showToast(errorTip);
return;
}
this.active = this.active + 1
},
submit(){
let isVaild = true;
let errorTip = ''
if(this.active == (this.serviceStep.length-1)){
this.addpends.map(item=>{
if(item.status && !item.locationImage){
isVaild = false;
errorTip=`请上传${item.nameSort}摆放位置`
}
})
}
if(isVaild == false){
this.$modal.showToast(errorTip);
return;
}
let params = {
"id": this.id?this.id:0,
"petId": this.petId,
"includeDryFood": this.foods[0].status,
"dryFoodFeedFrequencyDays": 1,
"dryFoodFeedFrequencyTimes": this.foods[0].frequency,
"dryFoodFeedWeight": this.foods[0].foodWeight,
"dryFoodLocation": this.foods[0].locationImage,
"dryFoodRemarks": this.foods[0].remark,
"includeWetFood": this.foods[1].status,
"wetFoodFeedFrequencyDays": 1,
"wetFoodFeedFrequencyTimes": this.foods[1].frequency,
"wetFoodFeedWeight": this.foods[1].foodWeight,
"wetFoodLocation": this.foods[1].locationImage,
"wetFoodRemarks": this.foods[1].remark,
"includeHomemadeFood": this.foods[2].status,
"homemadeFoodInstructions": this.foods[2].remark,
"homemadeFoodLocation": this.foods[2].locationImage,
"includeRawMeat": this.foods[3].status,
"rawMeatFeedingInstructions": this.foods[3].remark,
"rawMeatLocation": this.foods[3].locationImage,
"includeHealthSupplements": this.foods[4].status,
"healthSupplementsFeedingInstructions": this.foods[4].remark,
"healthSupplementsLocation":this.foods[4].locationImage,
"includeSnacks": this.foods[5].status,
"snacksFeedingMethod": this.foods[5].remark,
"snacksLocation": this.foods[5].locationImage,
// 其他补充信息?
// "snacksRemarks": this.otherRemark,
"otherRemark": this.otherRemark,
"feedingTrayAutomaticFeederLocation": this.otherTool[0].locationImage,
"feedingTrayAutomaticFeederRemarks": this.otherTool[0].remark,
"waterBowlLocation": this.otherTool[1].locationImage,
"waterBowlRemarks": this.otherTool[1].remark,
// 是否需要猫砂?
"changeLitterBox":this.cleans[0].status,
"litterBoxChangeFrequencyDays": 1,
"litterBoxChangeFrequencyTimes": this.cleans[0].frequency,
"litterBoxLocation": this.cleans[0].locationImage,
"litterBoxRemarks": this.cleans[0].remark,
// 尿垫更换频率?
"changePeePad": this.cleans[1].status,
"peePadFrequencyDays": 1,
"peePadFrequencyTimes": this.cleans[1].frequency,
"peePadLocation": this.cleans[1].locationImage,
"peePadRemarks": this.cleans[1].remark,
"playtimeRequirements": this.addpends[0].remark,
"playtimeService": this.addpends[0].status,
"playtimeToolsLocation":this.addpends[0].locationImage,
"furCleaningRequirements": this.addpends[1].remark,
"furCleaningService": this.addpends[1].status,
"furCleaningToolsLocation": this.addpends[1].locationImage,
"groomingRequirements": this.addpends[2].remark,
"groomingService": this.addpends[2].status,
"groomingToolsLocation": this.addpends[2].locationImage,
"deepCleaningRemarks": this.addpends[3].remark,
"deepCleaningService": this.addpends[3].status,
"deepCleaningToolsLocation": this.addpends[3].locationImage,
"administerMedication": this.addpends[4].status,
"administerMedicationLocation": this.addpends[4].locationImage,
"administerMedicationRemarks": this.addpends[4].remark,
// 遛狗注意事项状态?
"isWalkDogDuration":this.needDos[0].status,
"isDogBehavior":this.needDos[1].status,
"isFavoriteRegion":this.needDos[2].status,
"isFavoriteRoute":this.needDos[3].status,
"walkDogDuration": this.needDos[0].remark,
"dogBehavior": this.needDos[1].remark,
"favoriteRegion": this.needDos[2].remark,
"favoriteRoute": this.needDos[3].remark,
//遛狗?
"walkDog": this.needDos[0].status,
"walkDogRainyDay": this.walk[0].status,
// 遛狗用品?雨具?
"walkDogToolsLocation": this.walkDogLocationImage,
"dogRainGearLocation": this.walk[0].locationImage,
"walkDogRainRemark":this.walk[0].remark,
// "additionalService": true,
// "additionalServicesPlacement": "string",
// "additionalServicesPlacementRemark": "string",
// "additionalServicesRemarks": "string",
// "cleaningRequirements": true,
}
console.log('提交')
console.log(params)
this.loading=true;
try {
if(this.id){
updateServiceInfo(params).then(res=>{
console.log(res)
if(res.code==200){
uni.showToast({
title: '保存成功!',
duration: 3000,
icon:"none"
})
setTimeout(() => {
let len = getCurrentPages().length;
this.loading=false;
if(len >= 2) {
uni.navigateBack();
}else {
uni.redirectTo({url:'/pages/personalCenter/service'});
}
}, 2000);
}else {
this.loading=false
uni.showToast({
title: '保存失败!',
duration: 3000,
icon:"none"
})
}
})
}else{
addServiceInfo(params).then(res=>{
if(res.code==200){
uni.showToast({
title: '保存成功!',
duration: 3000,
icon:"none"
})
setTimeout(() => {
let len = getCurrentPages().length;
this.loading=false;
if(len >= 2) {
uni.navigateBack();
}else {
uni.redirectTo({url:'/pages/personalCenter/service'});
}
}, 2000);
}else {
this.loading=false
uni.showToast({
title: '保存失败!',
duration: 3000,
icon:"none"
})
}
})
}
} catch (error) {
this.loading=false;
uni.showToast({
title: '保存失败!',
duration: 3000,
icon:"none"
})
} finally {
this.loading=false;
}
}
}
}
</script>
<style lang="scss">
.container {
position: relative;
height: 100%;
padding-bottom: 90px;
.service-info-btns {
background-color: #FFFFFF;
padding: 10px 20px 40px;
width: 100%;
height: 90px;
position: fixed;
bottom: 0;
z-index: 100;
.personal-service-btns{
display: flex;
justify-content: space-around;
align-items: center;
flex-wrap: nowrap;
flex-direction: row;
.personal-service-btn{
width: 40%;
}
}
}
}
.service-info{
.service-card{
margin: 10px;
background: #fff;
padding: 10px;
border-radius: 5px;
.service-card-title{
display: flex;
align-items: center;
padding-bottom: 10px;
border-bottom: solid 1px #efefef;
font-size: 14px;
font-weight: 500;
color: #333;
.service-card-title-flag{
width: 4px;
height: 16px;
flex-shrink: 0;
border-radius: 15px;
background: #FFBF60;
display: inline-block;
margin-right: 5px;
}
}
.service-item{
.service-item-title{
display: flex;
align-items: center;
justify-content: space-between;
height: 50px;
border-bottom: solid 1px #efefef;
.service-item-title-name{
display: flex;
align-items: center;
color: #a94f20;
height: 30px;
}
.service-item-title-switch{
display: flex;
align-items: center;
justify-content: flex-end;
}
}
.service-item-content{
padding: 10px 0;
.service-item-image-tip{
font-size: 12px;
color: #aaa;
display: flex;
padding-bottom: 10px;
border-bottom: solid 1px #efefef;
}
.service-item-input{
display: flex;
align-items: center;
justify-content: space-between;
padding: 10px 0;
border-bottom: solid 1px #efefef;
}
}
}
}
}
</style>