增加服务分类选择

This commit is contained in:
TOP糯米 2023-03-26 00:20:00 +08:00
parent b6f429eb21
commit 0e92d51498
4 changed files with 72 additions and 23 deletions

View File

@ -56,8 +56,8 @@ export default {
oneItem.value = data[index][keys.value]; oneItem.value = data[index][keys.value];
// 递归下去 // 递归下去
// oneItem.children = this.handleTree(data, data[index][keys.id]); oneItem.children = this.handleTree(data, data[index][keys.id]);
oneItem.children = []; // oneItem.children = [];
res.push(oneItem); res.push(oneItem);
} else { } else {
// 匹配不到,跳过 // 匹配不到,跳过

View File

@ -107,6 +107,7 @@ export default {
idcardB: response.data.worker.imgb, idcardB: response.data.worker.imgb,
license: response.data.worker.imgc, license: response.data.worker.imgc,
content: response.data.worker.desc, content: response.data.worker.desc,
serviceType: response.data.worker.types,
type: response.data.worker.status, type: response.data.worker.status,
acceptOrderState: response.data.worker.worker, acceptOrderState: response.data.worker.worker,
}; };

View File

@ -1,8 +1,10 @@
export default { export default {
worketTypeText(type) { worketTypeText(type) {
switch (type) { switch (type) {
case 0: return ['待审核', '#ff0000'];
case 1: return ['普通师傅', '#bfbfbf']; case 1: return ['普通师傅', '#bfbfbf'];
case 2: return ['入驻师傅', '#d9a019']; case 2: return ['入驻师傅', '#d9a019'];
default: return ['未知']
} }
}, },
} }

View File

@ -44,19 +44,19 @@
<text class="title">*服务分类</text> <text class="title">*服务分类</text>
<picker <picker
mode="selector" mode="selector"
:range="cateList" :range="serviceTypeList"
range-key="name" range-key="name"
@change="changeCate" @change="changeServiceType"
class="select-widget" class="select-widget"
:class="{ active: cateText.length > 0 }" :class="{ active: serviceTypeText.length > 0 }"
> >
<view class="picker-view limit-line clamp-1"> <view class="picker-view limit-line clamp-1">
{{ cateText ? cateText : "请选择服务分类" }} {{ serviceTypeText ? serviceTypeText : "请选择服务分类" }}
</view> </view>
</picker> </picker>
<text class="iconfont icon-jinru"></text> <text class="iconfont icon-jinru"></text>
</view> </view>
<view class="input-item"> <view v-show="serviceType == 2 || serviceType == 3" class="input-item">
<text class="title">车辆类型</text> <text class="title">车辆类型</text>
<picker <picker
mode="selector" mode="selector"
@ -72,6 +72,22 @@
</picker> </picker>
<text class="iconfont icon-jinru"></text> <text class="iconfont icon-jinru"></text>
</view> </view>
<view class="input-item">
<text class="title">*服务类型</text>
<picker
mode="selector"
:range="cateList"
range-key="name"
@change="changeCate"
class="select-widget"
:class="{ active: cateText.length > 0 }"
>
<view class="picker-view limit-line clamp-1">
{{ cateText ? cateText : "请选择服务类型" }}
</view>
</picker>
<text class="iconfont icon-jinru"></text>
</view>
<view class="input-item-section"> <view class="input-item-section">
<text class="title">*认证资料<text class="desc">请录入身份资料</text></text> <text class="title">*认证资料<text class="desc">请录入身份资料</text></text>
<view class="profile-box"> <view class="profile-box">
@ -135,16 +151,23 @@ export default {
data() { data() {
return { return {
maxContentLength: 300, maxContentLength: 300,
cityList: [],
cateList: [],
carTypeList: [],
avatar: "", avatar: "",
province: "", province: "",
city: "", city: "",
cityList: [],
serviceType: 0,
serviceTypeText: "",
serviceTypeList: [
{ id: 1, name: "安装" },
{ id: 2, name: "配送" },
{ id: 3, name: "安装+配送" },
],
cateId: 0, cateId: 0,
cateText: "", cateText: "",
cateList: [],
carTypeId: 0, carTypeId: 0,
carTypeText: "", carTypeText: "",
carTypeList: [],
name: "", name: "",
idcardA: "", idcardA: "",
idcardB: "", idcardB: "",
@ -178,6 +201,13 @@ export default {
this.cateText = this.userInfo.worker.cateId; this.cateText = this.userInfo.worker.cateId;
this.carTypeText = this.userInfo.worker.carTypeId; this.carTypeText = this.userInfo.worker.carTypeId;
this.serviceType = this.userInfo.worker.serviceType;
this.serviceTypeList.forEach((item) => {
if (item.id === this.serviceType) {
this.serviceTypeText = item.name;
}
});
} }
this.cityList = this.$models.system.getCity(); this.cityList = this.$models.system.getCity();
this.$models.service.getInstallCate().then((list) => { this.$models.service.getInstallCate().then((list) => {
@ -251,6 +281,18 @@ export default {
this.province = e.detail.value[0].text; this.province = e.detail.value[0].text;
this.city = e.detail.value[1].text; this.city = e.detail.value[1].text;
}, },
changeServiceType(e) {
this.serviceTypeList.forEach((item, index) => {
if (index == e.detail.value) {
this.serviceType = item.id;
this.serviceTypeText = item.name;
}
});
if (this.serviceType == 1) {
this.carTypeId = 0;
this.carTypeText = "";
}
},
changeCate(e) { changeCate(e) {
this.cateId = this.cateList[e.detail.value].id; this.cateId = this.cateList[e.detail.value].id;
this.cateText = this.cateList[e.detail.value].name; this.cateText = this.cateList[e.detail.value].name;
@ -260,20 +302,24 @@ export default {
this.carTypeText = this.carTypeList[e.detail.value].name; this.carTypeText = this.carTypeList[e.detail.value].name;
}, },
submit() { submit() {
let saveData = {
avatar: this.avatar,
province: this.province,
city: this.city,
service: this.cateId,
name: this.name,
mobile: this.mobile,
imga: this.idcardA,
imgb: this.idcardB,
imgc: this.license,
desc: this.content,
types: this.serviceType,
};
if (this.serviceType == 2 || this.serviceType == 3) {
saveData.car = this.carTypeId;
}
this.$models.user this.$models.user
.setServiceInfo({ .setServiceInfo(saveData)
avatar: this.avatar,
province: this.province,
city: this.city,
service: this.cateId,
car: this.carTypeId,
name: this.name,
mobile: this.mobile,
imga: this.idcardA,
imgb: this.idcardB,
imgc: this.license,
desc: this.content,
})
.then((message) => { .then((message) => {
this.$store.dispatch("user/info", true); this.$store.dispatch("user/info", true);
this.$utils.toast(message).then(() => { this.$utils.toast(message).then(() => {