From 89de2bbaf2e81ab3fa7a8c2aad3b76bc81033d3d Mon Sep 17 00:00:00 2001
From: xuxueyang <xuxy@fengyuntec.com>
Date: 星期二, 23 七月 2024 18:44:27 +0800
Subject: [PATCH] update 订单功能(花店端)

---
 store/index.js |  791 ++++++++++++++++++++++++++++----------------------------
 1 files changed, 398 insertions(+), 393 deletions(-)

diff --git a/store/index.js b/store/index.js
index 7452b61..190659b 100644
--- a/store/index.js
+++ b/store/index.js
@@ -1,412 +1,417 @@
 import http from '../plugins/http'
 import storage from '../plugins/storage.js'
 import message from '../plugins/message.js'
-// #ifndef VUE3
 import Vue from 'vue'
 import Vuex from 'vuex'
+
 Vue.use(Vuex)
 const store = new Vuex.Store({
-			// #endif
+    state: {
+        hasLogin: false,
+        isUniverifyLogin: false,
+        loginProvider: "",
+        openid: null,
+        testvuex: false,
+        colorIndex: 0,
+        colorList: ['#FF0000', '#00FF00', '#0000FF'],
+        noMatchLeftWindow: true,
+        active: 'componentPage',
+        leftWinActive: '/pages/component/view/view',
+        activeOpen: '',
+        menu: [],
+        univerifyErrorMsg: '',
+        currentInfo: {}, //个人用户信息
+        cache_address: {},
+        // remoteip:'',//服务器ip
+        sign: {
+            'enterprise': 0,
+            'info': 0,
+            'flower': 0,
+            'shopping': 0,
+        },
+        defaultaddress: {}
+    },
+    mutations: {
+
+        updateLogin(state, provider) {
+            console.log('updateLogin', provider)
+            state.hasLogin = provider && true || false;
+            if (!state.hasLogin) {
+                storage.removeItem('token')
+            }
+        },
+        login(state, provider) {
+            state.hasLogin = true;
+            state.loginProvider = provider;
+        },
+        logout(state) {
+            state.hasLogin = false
+            state.openid = null
+            state.currentInfo = {}
+            storage.removeItem('token')
+            message.showToast('退出登录成功')
+            // #ifdef APP
+            var KeepAliveModule = uni.requireNativePlugin("yh-nl") //保活组件
+
+            let ret = KeepAliveModule.stopLocation();
+            console.log('ret', ret)
+            // #endif
+            uni.redirectTo({
+                url: '/views/login/login'
+            })
+        },
+        setOpenid(state, openid) {
+            state.openid = openid
+        },
+        setDefaultAddress(state, defaultaddress) {
+            state.defaultaddress = defaultaddress
+        },
+        setTestTrue(state) {
+            state.testvuex = true
+        },
+        setTestFalse(state) {
+            state.testvuex = false
+        },
+        setColorIndex(state, index) {
+            state.colorIndex = index
+        },
+        setActive(state, tabPage) {
+            state.active = tabPage
+        },
+        setActiveOpen(state, activeOpen) {
+            state.activeOpen = activeOpen
+        },
+        setMenu(state, menu) {
+            state.menu = menu
+        },
+        setUniverifyLogin(state, payload) {
+            typeof payload !== 'boolean' ? payload = !!payload : '';
+            state.isUniverifyLogin = payload;
+        },
+        setUniverifyErrorMsg(state, payload = '') {
+            state.univerifyErrorMsg = payload
+        }
+    },
+    getters: {
+        currentColor(state) {
+            return state.colorList[state.colorIndex]
+        }
+    },
+    actions: {
+        sign_add: async function ({
+                                      commit,
+                                      state
+                                  }, key) {
+            console.log('sign_add', key)
+            state.sign[key] = 1
+        },
+        sign_clear: async function ({
+                                        commit,
+                                        state
+                                    }, key) {
+            console.log('sign_clear', key)
+            state.sign[key] = 0
+        },
+        // lazy loading openid
+        logout: async function ({
+                                    commit,
+                                    state
+                                }) {
+            commit('logout')
+        },
+        getUserOpenId: async function ({
+                                           commit,
+                                           state
+                                       }) {
+            return await new Promise((resolve, reject) => {
+                if (state.openid) {
+                    resolve(state.openid)
+                } else {
+                    uni.login({
+                        success: (data) => {
+                            commit('login')
+                            setTimeout(function () { //模拟异步请求服务器获取 openid
+                                const openid = '123456789'
+                                console.log(
+                                    'uni.request mock openid[' +
+                                    openid + ']');
+                                commit('setOpenid', openid)
+                                resolve(openid)
+                            }, 1000)
+                        },
+                        fail: (err) => {
+                            console.log('uni.login 接口调用失败,将无法正常使用开放接口等服务',
+                                err)
+                            reject(err)
+                        }
+                    })
+                }
+            })
+        },
+        getCurrentInfo: async function ({
+                                            commit,
+                                            state
+                                        }) {
+            //把权限获取到
+            // console.log('getCurrentInfo,getCurrentInfo')
+            const currentInfo = await http.request('get', '/api/current/user', {})
+            if (currentInfo && currentInfo.code == 0) {
+                // state.cMenu = cMenu
+                // state.roles = currentInfo.data.roles || []
+                state.currentInfo = currentInfo.data || {}
+                state.type = currentInfo.data.type || ''
+                state.spacecode = currentInfo.data.spacecode || ''
+                // if(reload){
+                // 	location.reload()
+                // }
+                commit("updateLogin", true)
+            } else {
+                commit("updateLogin", false)
+                //这种情况就是要跳转到登录页面
+            }
+        },
+        loginwx: async function ({
+                                     dispatch,
+                                     commit,
+                                     state
+                                 }, data) {
+            var code = data.code
+            let inviter = data.inviter || ''
+            console.log('')
+            const resp = await http.request('post', '/api/login/wechat', {
+                data: {
+                    code: code,
+                    imgurl: data.imgurl || '',
+                    nickname: data.nickname || '',
+                    inviter: inviter
+                },
+                // params:{
+                // 	code:code
+                // }
+            })
+            if (resp && resp.code == 0) {
+                state.isBind = true
+                storage.setItem("token", resp.data.access_token || "")
+                state.hasLogin = true
+                if (inviter) {
+                    storage.removeItem('inviter');
+                    storage.removeItem('inviterTime');
+                    storage.removeItem('inviterName');
+                }
+                await dispatch('getCurrentInfo')
+            } else {
+                message.showToast('登录失败.' + (resp && resp.msg))
+                storage.removeItem('openid');
+                storage.removeItem('tel');
+                storage.removeItem('token');
+            }
+            return resp
+        },
+        regUser: async function ({
+                                     commit,
+                                     dispatch,
+                                     state
+                                 }, data) {
+            {
+                const resp = await http.request('post', '/api/register/' + data.type, {
+                    data: {
+                        username: data.username,
+                        password: data.password,
+                        tel: data.phoneNumber || data.tel,
+                        smsCode: data.smsCode || '',
+                        dto: data.dto || undefined
+                    },
+                    params: {
+                        clientType: data.clientType || 'app'
+                    }
+                })
+                console.log('resp', resp)
+                if (resp && resp.code == 0) {
 
 
+                } else {
 
-			// #ifdef VUE3
-			import {
-				createStore
-			} from 'vuex'
-			const store = createStore({
-				// #endif
-				state: {
-					hasLogin: false,
-					isUniverifyLogin: false,
-					loginProvider: "",
-					openid: null,
-					testvuex: false,
-					colorIndex: 0,
-					colorList: ['#FF0000', '#00FF00', '#0000FF'],
-					noMatchLeftWindow: true,
-					active: 'componentPage',
-					leftWinActive: '/pages/component/view/view',
-					activeOpen: '',
-					menu: [],
-					univerifyErrorMsg: '',
-					currentInfo: {}, //个人用户信息
-					cache_address: {},
-					// remoteip:'',//服务器ip
-					sign: {
-						'enterprise': 0,
-						'info': 0,
-						'flower': 0,
-					},
-					defaultaddress: {}
-				},
-				mutations: {
+                }
+                return resp
+            }
 
-					updateLogin(state, provider) {
-						console.log('updateLogin', provider)
-						state.hasLogin = provider && true || false;
-						if (!state.hasLogin) {
-							storage.removeItem('token')
-						}
-					},
-					login(state, provider) {
-						state.hasLogin = true;
-						state.loginProvider = provider;
-					},
-					logout(state) {
-						state.hasLogin = false
-						state.openid = null
-						state.currentInfo = {}
-						storage.removeItem('token')
-						message.showToast('退出登录成功')
-						// #ifdef APP
-						var KeepAliveModule = uni.requireNativePlugin("yh-nl") //保活组件
+        },
+        loginPartner: async function ({
+                                          commit,
+                                          dispatch,
+                                          state
+                                      }, data) {
+            {
+                const resp = await http.request('post', '/api/login/partner' + ((data
+                    .phoneNumber || data.tel) ? '/phone' : ''), {
+                    data: {
+                        username: (data.phoneNumber || data.tel) ? (data.phoneNumber ||
+                            data.tel) : data.username,
+                        password: data.password,
+                        tel: data.phoneNumber || data.tel,
+                        smsCode: data.smsCode || ''
+                    },
+                    params: {
+                        clientType: data.clientType || 'app'
+                    }
+                })
+                console.log('resp', resp)
+                if (resp && resp.code == 0) {
+                    // await getCurrentInfo()
+                    // // this.$message.showToast('登录成功')
+                    // console.log(resp)
+                    storage.setItem('token', resp.data.access_token)
+                    commit("updateLogin", true)
+                    await dispatch('getCurrentInfo')
 
-						let ret = KeepAliveModule.stopLocation();
-						console.log('ret', ret)
-						// #endif
-						uni.redirectTo({
-							url: '/views/login/login'
-						})
-					},
-					setOpenid(state, openid) {
-						state.openid = openid
-					},
-					setDefaultAddress(state, defaultaddress) {
-						state.defaultaddress = defaultaddress
-					},
-					setTestTrue(state) {
-						state.testvuex = true
-					},
-					setTestFalse(state) {
-						state.testvuex = false
-					},
-					setColorIndex(state, index) {
-						state.colorIndex = index
-					},
-					setActive(state, tabPage) {
-						state.active = tabPage
-					},
-					setActiveOpen(state, activeOpen) {
-						state.activeOpen = activeOpen
-					},
-					setMenu(state, menu) {
-						state.menu = menu
-					},
-					setUniverifyLogin(state, payload) {
-						typeof payload !== 'boolean' ? payload = !!payload : '';
-						state.isUniverifyLogin = payload;
-					},
-					setUniverifyErrorMsg(state, payload = '') {
-						state.univerifyErrorMsg = payload
-					}
-				},
-				getters: {
-					currentColor(state) {
-						return state.colorList[state.colorIndex]
-					}
-				},
-				actions: {
-					sign_add: async function({
-						commit,
-						state
-					}, key) {
-						console.log('sign_add', key)
-						state.sign[key] = 1
-					},
-					sign_clear: async function({
-						commit,
-						state
-					}, key) {
-						console.log('sign_clear', key)
-						state.sign[key] = 0
-					},
-					// lazy loading openid
-					logout: async function({
-						commit,
-						state
-					}) {
-						commit('logout')
-					},
-					getUserOpenId: async function({
-						commit,
-						state
-					}) {
-						return await new Promise((resolve, reject) => {
-							if (state.openid) {
-								resolve(state.openid)
-							} else {
-								uni.login({
-									success: (data) => {
-										commit('login')
-										setTimeout(function() { //模拟异步请求服务器获取 openid
-											const openid = '123456789'
-											console.log(
-												'uni.request mock openid[' +
-												openid + ']');
-											commit('setOpenid', openid)
-											resolve(openid)
-										}, 1000)
-									},
-									fail: (err) => {
-										console.log('uni.login 接口调用失败,将无法正常使用开放接口等服务',
-											err)
-										reject(err)
-									}
-								})
-							}
-						})
-					},
-					getCurrentInfo: async function({
-						commit,
-						state
-					}) {
-						//把权限获取到
-						// console.log('getCurrentInfo,getCurrentInfo')
-						const currentInfo = await http.request('get', '/api/current/user', {
+                    console.log('login,reLaunch')
+                    // #ifdef APP
+                    var KeepAliveModule = uni.requireNativePlugin("yh-nl") //保活组件
 
-						})
-						if (currentInfo && currentInfo.code == 0) {
-							// state.cMenu = cMenu
-							// state.roles = currentInfo.data.roles || []
-							state.currentInfo = currentInfo.data || {}
-							state.type = currentInfo.data.type || ''
-							state.spacecode = currentInfo.data.spacecode || ''
-							// if(reload){
-							// 	location.reload()
-							// }
-							commit("updateLogin", true)
-						} else {
-							commit("updateLogin", false)
-							//这种情况就是要跳转到登录页面
-						}
-					},
-					loginwx: async function({
-						dispatch,
-						commit,
-						state
-					}, data) {
-						var code = data.code
-						let inviter = data.inviter || ''
-						console.log('')
-						const resp = await http.request('post', '/api/login/wechat', {
-							data: {
-								code: code,
-								imgurl: data.imgurl || '',
-								nickname: data.nickname || '',
-								inviter: inviter
-							},
-							// params:{
-							// 	code:code
-							// }
-						})
-						if (resp && resp.code == 0) {
-							state.isBind = true
-							storage.setItem("token", resp.data.access_token || "")
-							state.hasLogin = true
-							if (inviter) {
-								storage.removeItem('inviter');
-								storage.removeItem('inviterTime');
-								storage.removeItem('inviterName');
-							}
-							await dispatch('getCurrentInfo')
-						} else {
-							message.showToast('登录失败.' + (resp && resp.msg))
-							storage.removeItem('openid');
-							storage.removeItem('tel');
-							storage.removeItem('token');
-						}
-						return resp
-					},
-					regUser: async function({
-						commit,
-						dispatch,
-						state
-					}, data) {
-						{
-							const resp = await http.request('post', '/api/register/' + data.type, {
-								data: {
-									username: data.username,
-									password: data.password,
-									tel: data.phoneNumber || data.tel,
-									smsCode: data.smsCode || '',
-									dto: data.dto || undefined
-								},
-								params: {
-									clientType: data.clientType || 'app'
-								}
-							})
-							console.log('resp', resp)
-							if (resp && resp.code == 0) {
+                    KeepAliveModule && KeepAliveModule.startLocation({
+                        intervalTime: 5000, //定位间隔时间
+                        gaodeApiKey: "0eef1axxxxxx7964", //高德地图Key,已停用,引入插件配置
+                        locationMode: 1, //定位模式
+                        purpose: 0, //定位场景
+                        ifUpload: true, //是否上报服务器
+                        uploadUrl: "http://bio51-api.fixbug.fun/api/current/employee/location", //上报接口
+                        params: "{'lat':'1','lng':'3'}", //其他参数
+                        headers: "{'authorization1':'Bearer xOHeJhg'}",
+                    }, function (res) {
+                        console.log("启用结果:", res);
+                        let ret = KeepAliveModule.getCurrentLocation();
+                        console.log("启用结果2:", ret);
+                    });
+                    // #endif
+                    // uni.redirectTo({
+                    // 	url: '/views/app/app-home/app-home'
+                    // })
+                    uni.reLaunch({
+                        url: '/pages/home/supplier-home'
+                    })
+                } else {
+                    // this.$message.showToast('登录失败')
+
+                }
+                return resp
+            }
+
+        },
+        loginSupplier: async function ({
+                                           commit,
+                                           dispatch,
+                                           state
+                                       }, data) {
+            {
+                const resp = await http.request('post', '/api/login/supplier' + ((data
+                    .phoneNumber || data.tel) ? '/phone' : ''), {
+                    data: {
+                        username: (data.phoneNumber || data.tel) ? (data.phoneNumber ||
+                            data.tel) : data.username,
+                        password: data.password,
+                        tel: data.phoneNumber || data.tel,
+                        smsCode: data.smsCode || ''
+                    },
+                    params: {
+                        clientType: data.clientType || 'app'
+                    }
+                })
+                console.log('resp', resp)
+                if (resp && resp.code == 0) {
+                    // await getCurrentInfo()
+                    // // this.$message.showToast('登录成功')
+                    // console.log(resp)
+                    storage.setItem('token', resp.data.access_token)
+                    commit("updateLogin", true)
+                    await dispatch('getCurrentInfo')
+
+                    console.log('login,reLaunch')
+                    // #ifdef APP
+                    var KeepAliveModule = uni.requireNativePlugin("yh-nl") //保活组件
+
+                    KeepAliveModule && KeepAliveModule.startLocation({
+                        intervalTime: 5000, //定位间隔时间
+                        gaodeApiKey: "0eef1axxxxxx7964", //高德地图Key,已停用,引入插件配置
+                        locationMode: 1, //定位模式
+                        purpose: 0, //定位场景
+                        ifUpload: true, //是否上报服务器
+                        uploadUrl: "http://bio51-api.fixbug.fun/api/current/employee/location", //上报接口
+                        params: "{'lat':'1','lng':'3'}", //其他参数
+                        headers: "{'authorization1':'Bearer xOHeJhg'}",
+                    }, function (res) {
+                        console.log("启用结果:", res);
+                        let ret = KeepAliveModule.getCurrentLocation();
+                        console.log("启用结果2:", ret);
+                    });
+                    // #endif
+                    // uni.redirectTo({
+                    // 	url: '/views/app/app-home/app-home'
+                    // })
+                    uni.reLaunch({
+                        url: '/pages/home/supplier-home'
+                    })
+                } else {
+                    // this.$message.showToast('登录失败')
+
+                }
+                return resp
+            }
+
+        },
+
+        loginCustomer: async function ({
+                                           commit,
+                                           dispatch,
+                                           state
+                                       }, data) {
+            {
+                const resp = await http.request('post', '/api/login/customer' + (data
+                    .phoneNumber ? '/phone' : ''), {
+                    data: {
+                        username: (data.phoneNumber || data.tel) ? (data.phoneNumber ||
+                            data.tel) : data.username,
+                        password: data.password,
+                        tel: data.phoneNumber || data.tel,
+                        smsCode: data.smsCode || ''
+                    },
+                    params: {
+                        clientType: data.clientType || 'app'
+                    }
+                })
+                console.log('resp', resp)
+                if (resp && resp.code == 0) {
+                    storage.setItem('token', resp.data.access_token)
+                    commit("updateLogin", true)
+                    await dispatch('getCurrentInfo')
+                    uni.reLaunch({
+                        url: '/pages/home/home'
+                    })
+                } else {
 
 
-							} else {
+                }
+                return resp
+            }
 
-							}
-							return resp
-						}
+        },
+        submitShopping: async function ({commit, dispatch}, data) {
+            const resp = await http.request('post', '/api/api/customer/flower/cart/change-num', {
+                    data: {
+                        id: data.id,
+                        num: 1
+                    }
+                }
+            )
+            if (resp && resp.code === 0) {
+                message.showToast('添加购物车成功')
+                dispatch('sign_add', 'shopping')
+            } else {
 
-					},
-					loginPartner: async function({
-						commit,
-						dispatch,
-						state
-					}, data) {
-						{
-							const resp = await http.request('post', '/api/login/partner' + ((data
-								.phoneNumber || data.tel) ? '/phone' : ''), {
-								data: {
-									username: (data.phoneNumber || data.tel) ? (data.phoneNumber ||
-										data.tel) : data.username,
-									password: data.password,
-									tel: data.phoneNumber || data.tel,
-									smsCode: data.smsCode || ''
-								},
-								params: {
-									clientType: data.clientType || 'app'
-								}
-							})
-							console.log('resp', resp)
-							if (resp && resp.code == 0) {
-								// await getCurrentInfo()
-								// // this.$message.showToast('登录成功')
-								// console.log(resp)
-								storage.setItem('token', resp.data.access_token)
-								commit("updateLogin", true)
-								await dispatch('getCurrentInfo')
+            }
+            return resp
+        },
 
-								console.log('login,reLaunch')
-								// #ifdef APP
-								var KeepAliveModule = uni.requireNativePlugin("yh-nl") //保活组件
+    }
+})
 
-								KeepAliveModule && KeepAliveModule.startLocation({
-									intervalTime: 5000, //定位间隔时间
-									gaodeApiKey: "0eef1axxxxxx7964", //高德地图Key,已停用,引入插件配置
-									locationMode: 1, //定位模式
-									purpose: 0, //定位场景
-									ifUpload: true, //是否上报服务器
-									uploadUrl: "http://bio51-api.fixbug.fun/api/current/employee/location", //上报接口
-									params: "{'lat':'1','lng':'3'}", //其他参数
-									headers: "{'authorization1':'Bearer xOHeJhg'}",
-								}, function(res) {
-									console.log("启用结果:", res);
-									let ret = KeepAliveModule.getCurrentLocation();
-									console.log("启用结果2:", ret);
-								});
-								// #endif
-								// uni.redirectTo({
-								// 	url: '/views/app/app-home/app-home'
-								// })
-								uni.reLaunch({
-									url: '/pages/home/supplier-home'
-								})
-							} else {
-								// this.$message.showToast('登录失败')
-
-							}
-							return resp
-						}
-
-					},
-					loginSupplier: async function({
-						commit,
-						dispatch,
-						state
-					}, data) {
-						{
-							const resp = await http.request('post', '/api/login/supplier' + ((data
-								.phoneNumber || data.tel) ? '/phone' : ''), {
-								data: {
-									username: (data.phoneNumber || data.tel) ? (data.phoneNumber ||
-										data.tel) : data.username,
-									password: data.password,
-									tel: data.phoneNumber || data.tel,
-									smsCode: data.smsCode || ''
-								},
-								params: {
-									clientType: data.clientType || 'app'
-								}
-							})
-							console.log('resp', resp)
-							if (resp && resp.code == 0) {
-								// await getCurrentInfo()
-								// // this.$message.showToast('登录成功')
-								// console.log(resp)
-								storage.setItem('token', resp.data.access_token)
-								commit("updateLogin", true)
-								await dispatch('getCurrentInfo')
-
-								console.log('login,reLaunch')
-								// #ifdef APP
-								var KeepAliveModule = uni.requireNativePlugin("yh-nl") //保活组件
-
-								KeepAliveModule && KeepAliveModule.startLocation({
-									intervalTime: 5000, //定位间隔时间
-									gaodeApiKey: "0eef1axxxxxx7964", //高德地图Key,已停用,引入插件配置
-									locationMode: 1, //定位模式
-									purpose: 0, //定位场景
-									ifUpload: true, //是否上报服务器
-									uploadUrl: "http://bio51-api.fixbug.fun/api/current/employee/location", //上报接口
-									params: "{'lat':'1','lng':'3'}", //其他参数
-									headers: "{'authorization1':'Bearer xOHeJhg'}",
-								}, function(res) {
-									console.log("启用结果:", res);
-									let ret = KeepAliveModule.getCurrentLocation();
-									console.log("启用结果2:", ret);
-								});
-								// #endif
-								// uni.redirectTo({
-								// 	url: '/views/app/app-home/app-home'
-								// })
-								uni.reLaunch({
-									url: '/pages/home/supplier-home'
-								})
-							} else {
-								// this.$message.showToast('登录失败')
-
-							}
-							return resp
-						}
-
-					},
-
-					loginCustomer: async function({
-						commit,
-						dispatch,
-						state
-					}, data) {
-						{
-							const resp = await http.request('post', '/api/login/customer' + (data
-								.phoneNumber ? '/phone' : ''), {
-								data: {
-									username: (data.phoneNumber || data.tel) ? (data.phoneNumber ||
-										data.tel) : data.username,
-									password: data.password,
-									tel: data.phoneNumber || data.tel,
-									smsCode: data.smsCode || ''
-								},
-								params: {
-									clientType: data.clientType || 'app'
-								}
-							})
-							console.log('resp', resp)
-							if (resp && resp.code == 0) {
-								storage.setItem('token', resp.data.access_token)
-								commit("updateLogin", true)
-								await dispatch('getCurrentInfo')
-								uni.reLaunch({
-									url: '/pages/home/home'
-								})
-							} else {
-
-
-							}
-							return resp
-						}
-
-					},
-
-				}
-			})
-
-			export default store
\ No newline at end of file
+export default store
\ No newline at end of file

--
Gitblit v1.9.3