完成开始/暂停接单

This commit is contained in:
TOP糯米 2023-03-25 23:44:20 +08:00
parent 524309e33e
commit b6f429eb21
5 changed files with 41 additions and 4 deletions

View File

@ -37,6 +37,11 @@ export default {
}, },
mounted() {}, mounted() {},
destroyed() {}, destroyed() {},
watch: {
open(v) {
this.state = v;
},
},
methods: { methods: {
changeState() { changeState() {
this.state = !this.state; this.state = !this.state;

View File

@ -53,6 +53,10 @@ const apis = {
url: "/user/workerinfo/setinfo", url: "/user/workerinfo/setinfo",
auth: true, auth: true,
}, },
setServiceState: {
url: "/user/workerinfo/setworker",
auth: true,
},
withdraw: { withdraw: {
withdraw: { withdraw: {
url: "/user/workerinfo/drawmoney", url: "/user/workerinfo/drawmoney",

View File

@ -108,6 +108,7 @@ export default {
license: response.data.worker.imgc, license: response.data.worker.imgc,
content: response.data.worker.desc, content: response.data.worker.desc,
type: response.data.worker.status, type: response.data.worker.status,
acceptOrderState: response.data.worker.worker,
}; };
} }
prototype.$storage.set('userinfo', user); prototype.$storage.set('userinfo', user);
@ -280,5 +281,20 @@ export default {
return reject(response.msg); return reject(response.msg);
}).catch(e => { }); }).catch(e => { });
}); });
},
/**
* 设置服务状态
*/
setServiceState() {
return new Promise((resolve, reject) => {
prototype.$request({
api: "user.setServiceState",
}).then(response => {
if (response.code == 1) {
return resolve();
}
return reject(response.msg);
}).catch(e => { });
});
} }
} }

View File

@ -20,12 +20,13 @@
</view> </view>
<view class="accept-switch"> <view class="accept-switch">
<widget-switch <widget-switch
v-model="acceptOrderState" v-model="acceptState"
:color="['#ffffff', '#ffffff']" :color="['#ffffff', '#ffffff']"
:size="54" :size="54"
:open="acceptOrderState" :open="acceptState"
@input="setServiceState"
/> />
<text class="current-state">{{ acceptOrderState ? "正在" : "暂停" }}接单</text> <text class="current-state">{{ acceptState ? "正在" : "暂停" }}接单</text>
</view> </view>
</block> </block>
<block v-else> <block v-else>
@ -125,7 +126,7 @@ export default {
timer: null, timer: null,
safePt: 0, safePt: 0,
backgroundImage: require("@/static/temp/1.png"), backgroundImage: require("@/static/temp/1.png"),
acceptOrderState: false, acceptState: false,
typeText: "", typeText: "",
typeTextColor: "", typeTextColor: "",
showService: false, showService: false,
@ -149,6 +150,7 @@ export default {
computed: { computed: {
...mapGetters({ ...mapGetters({
isLogin: "user/isLogin", isLogin: "user/isLogin",
acceptOrder: "user/acceptOrder",
}), }),
...mapState({ ...mapState({
userInfo: (state) => state.user.info, userInfo: (state) => state.user.info,
@ -168,6 +170,7 @@ export default {
let [typeText, typeTextColor] = this.$models.worker.worketTypeText(this.userInfo.worker.type); let [typeText, typeTextColor] = this.$models.worker.worketTypeText(this.userInfo.worker.type);
this.typeText = typeText; this.typeText = typeText;
this.typeTextColor = typeTextColor; this.typeTextColor = typeTextColor;
this.acceptState = this.acceptOrder;
} }
}, },
onReady() {}, onReady() {},
@ -188,6 +191,12 @@ export default {
// this.carefreeContent = response.data.content; // this.carefreeContent = response.data.content;
// }); // });
}, },
setServiceState(state) {
this.$models.user.setServiceState().then(() => {
this.$store.dispatch("user/info", true);
this.acceptState = this.acceptOrder;
});
},
}, },
}; };
</script> </script>

View File

@ -18,6 +18,9 @@ export default {
isLogin(state) { isLogin(state) {
return state.token && state.token.length > 0; return state.token && state.token.length > 0;
}, },
acceptOrder(state) {
return state.info.worker.acceptOrderState == 1;
},
}, },
mutations: { mutations: {
showLoginModal(state, data) { showLoginModal(state, data) {