diff --git a/src/App.vue b/src/App.vue index 11ff27e..4fae050 100644 --- a/src/App.vue +++ b/src/App.vue @@ -203,6 +203,7 @@ export default { uni.hideTabBar() uni.removeStorageSync("userRole") uni.showToast({ title: "用户身份未确认", icon: "none" }) + uni.reLaunch({ url: "/pages/user/userRole" }) break } } else { diff --git a/src/pages/cabinet/putaway.vue b/src/pages/cabinet/putaway.vue index df961bc..8edb93d 100644 --- a/src/pages/cabinet/putaway.vue +++ b/src/pages/cabinet/putaway.vue @@ -43,7 +43,7 @@ - + {{ v.spuDetail.name?.length > 4 ? v.spuDetail.name.substring(0, 4) + "..." : v.spuDetail.name }} diff --git a/src/pages/canteen/detail.vue b/src/pages/canteen/detail.vue index abebbe4..6aa5dda 100644 --- a/src/pages/canteen/detail.vue +++ b/src/pages/canteen/detail.vue @@ -25,6 +25,9 @@ const state = reactive({ showCartDialog: false, showBookingDialog: false, + + bookingTimeList: [], + selectedBookingTime: "", }) onLoad((options: any) => { @@ -155,12 +158,14 @@ const updateFoodCart = async () => { // 打开购物车 const doVisibleCart = async () => (state.showCartDialog = true) -// 购买 +// 购买 打开预订时间段选择对话框 const doBuy = async () => { + state.selectedBookingTime = "" try { uni.showLoading({ title: "加载中...", mask: true }) const res: any = await orderApi.apptList() if (res.code == 0) { + state.bookingTimeList = res.data // 打开预约时间段选择对话框 state.showBookingDialog = true } else { @@ -175,6 +180,7 @@ const doBuy = async () => { // 预约时间段对话框确认 const bookingDialogConfirm = () => { + if (!state.selectedBookingTime) return uni.showToast({ title: "请选择预订时间段", icon: "none" }) uni.showModal({ title: "提示", content: "是否确定购买", @@ -194,10 +200,12 @@ const submitBuy = async () => { const _createtPa = { carParentId: state.cartList[0].parentCarId, hardType: "CANTEEN", + apptId: state.selectedBookingTime, } const { data: createData, code: createCode }: any = await payApi.createHardwareOrder(_createtPa) if (createCode != 0) throw new Error() uni.showToast({ title: "支付成功", icon: "none" }) + state.showBookingDialog = false router.jump("/pages/tabbar/order") } catch (error) { console.error(error) @@ -366,10 +374,27 @@ const doFood = () => { cancelText="取消" confirmText="确认" position="bottom" - @confirm="bookingDialogConfirm" - @cancel="state.showBookingDialog = false" + height="520rpx" + zIndex="800" > - 预订时间段 + + + + + + + + + diff --git a/src/pages/order/detail.vue b/src/pages/order/detail.vue index 6f22678..5cd5d4b 100644 --- a/src/pages/order/detail.vue +++ b/src/pages/order/detail.vue @@ -71,7 +71,12 @@ const doCancelRefund = async () => { - + @@ -115,7 +120,7 @@ const doCancelRefund = async () => { class="flex-row items-start justify-between" v-for="(v, i) in state.shopCarList" :key="i" - @tap.stop="router.jump('/pages/canteen/product-detail', { id: v.productId })" + @tap.stop="router.jump('/pages/merchant/product-detail', { id: v.productId })" > diff --git a/src/pages/tabbar/my.vue b/src/pages/tabbar/my.vue index 025548f..27ba541 100644 --- a/src/pages/tabbar/my.vue +++ b/src/pages/tabbar/my.vue @@ -83,6 +83,7 @@ const state = reactive<{ // { text: "外来人员就餐", icon: "/static/icon/service_1.png", router: "/pages/apply/foreign-list" }, // { text: "跨单位就餐", icon: "/static/icon/service_1.png", router: "/pages/apply/stride-list" }, { text: "人脸管理", icon: "/static/icon/service_5.png", router: "/pages/human-face/list" }, + { text: "清除缓存", icon: "/static/icon/clear-storage.png", router: "" }, // { text: "意见反馈", icon: "/static/icon/service_5.png", router: "/pages/integrated/feedback/index" }, ], appInfo: "", @@ -124,6 +125,22 @@ const storage = { uni.removeStorageSync(STORAGE_KEYS.USER_INFO) state.userInfo = {} }, + + // 清除缓存 + clearCache: () => { + uni.showModal({ + title: "确定清除缓存吗?", + content: "清除缓存将自动刷新页面", + success: (res) => { + if (res.confirm) { + uni.clearStorageSync() + uni.removeStorageSync("userRole") + state.userInfo = {} + uni.reLaunch({ url: "/pages/tabbar/my" }) + } + }, + }) + }, } const login = { @@ -334,17 +351,17 @@ const scanCode = { const onTabLogin = () => (isDevEnv() ? router.jump("/pages/test/login") : login.checkAppInfo()) const onTabMenu = async (item: any, index: number) => { - if (index == state.menuList.length - 1) { - router.jump(item.router) - return - } - const isLogin = await hooks.useCheckLogin() if (isLogin) { - if (item.text === "扫一扫") { - await scanCode.scan() - } else { - router.jump(item.router) + switch (item.text) { + case "扫一扫": + await scanCode.scan() + break + case "清除缓存": + storage.clearCache() + break + default: + router.jump(item.router) } } } @@ -384,6 +401,11 @@ onLoad(async () => { // 获取应用信息 state.appInfo = await getAppInfo() + + await userApi.userRole() + + // 获取存储中的用户信息 + storage.getUserInfo() }) onShow(() => { diff --git a/src/pages/tabbar/order.vue b/src/pages/tabbar/order.vue index bdf0ab9..b8ca571 100644 --- a/src/pages/tabbar/order.vue +++ b/src/pages/tabbar/order.vue @@ -65,7 +65,7 @@ const query = (page: number, pagesize: number) => { // 查看订单和核销码 const doToDetail = (v: any) => { - // router.jump("/pages/order/detail", { id: v.id }) + router.jump("/pages/order/detail", { id: v.id }) } const doAppraise = () => {} diff --git a/src/sheep/hooks/use-img.ts b/src/sheep/hooks/use-img.ts index 536bd97..dd7431f 100644 --- a/src/sheep/hooks/use-img.ts +++ b/src/sheep/hooks/use-img.ts @@ -1,12 +1,8 @@ -import { filePath } from "../utils/file"; - export const usePreviewImage = (str: string | undefined) => { - console.log(str, "str"); - - if (str == undefined) return; - let urlList = str.split(",").map((v) => filePath(v)); - console.log(urlList); - uni.previewImage({ - urls: urlList, - }); -}; + if (str == undefined) return + let urlList = str.split(",") + console.log(urlList) + uni.previewImage({ + urls: urlList, + }) +} diff --git a/src/sheep/hooks/use-qr-code.ts b/src/sheep/hooks/use-qr-code.ts deleted file mode 100644 index e69de29..0000000 diff --git a/src/static/icon/clear-storage.png b/src/static/icon/clear-storage.png new file mode 100644 index 0000000..5d7d35e Binary files /dev/null and b/src/static/icon/clear-storage.png differ