From 4d21314fc688f9686cce3d8ad52dcdee9a25b93a Mon Sep 17 00:00:00 2001 From: b2894lxlx <517289602@qq.com> Date: Wed, 8 Jan 2025 09:44:25 +0800 Subject: [PATCH] 250108 --- .env.development | 6 +- .env.production | 7 +- .idea/inspectionProfiles/Project_Default.xml | 125 ++ src/api/booking/userInvoice/index.ts | 25 +- src/api/shop/cart/index.ts | 24 +- src/api/think/thinkCard/index.ts | 5 +- src/api/think/thinkCardsBills/index.ts | 106 ++ src/api/think/thinkCardsBills/model/index.ts | 35 + src/api/think/thinkDeposit/index.ts | 2 +- src/api/think/thinkDepositItem/index.ts | 106 ++ src/api/think/thinkDepositItem/model/index.ts | 27 + src/api/think/thinkGoodsOrder/index.ts | 2 +- src/api/think/thinkInvoice/index.ts | 2 +- src/api/think/thinkMachineOpenLog/index.ts | 106 ++ .../think/thinkMachineOpenLog/model/index.ts | 31 + src/api/think/thinkOrder/index.ts | 10 + src/api/think/thinkUsersVip/index.ts | 11 + src/api/think/thinkVipCardsBills/index.ts | 106 ++ .../think/thinkVipCardsBills/model/index.ts | 35 + src/package.json | 4 +- src/package/article/index.vue | 2 +- src/package/booking/checkout.vue | 191 ++- src/package/booking/confirm.vue | 457 +++--- src/package/booking/index.vue | 111 +- src/package/cart/index.vue | 143 +- src/package/goods/checkout.vue | 457 +++--- src/package/goods/detail.vue | 248 ++-- src/package/goods/order-detail.vue | 642 +++++---- src/package/goods/order.vue | 156 +- src/package/order/check.vue | 88 ++ src/package/order/detail.vue | 52 +- src/package/user/card-detail-merchant.vue | 399 ++---- src/package/user/card-detail-record.vue | 120 +- src/package/user/card-detail.vue | 854 +++++------ src/package/user/card.vue | 2 +- src/package/user/depositList.vue | 159 +++ src/package/user/guide.vue | 70 + src/package/user/ic-card.vue | 110 +- src/package/user/invoice-edit.vue | 492 +++---- src/package/user/invoice-show.vue | 212 ++- src/package/user/invoice-type.vue | 28 +- src/package/user/invoice.vue | 551 ++++---- src/package/user/invoiceRent.vue | 404 ++++++ src/package/user/map.vue | 37 + src/package/user/phoneService.vue | 45 + src/package/user/signUp.vue | 52 + src/package/user/siteGuide.vue | 76 + src/pages.json | 58 +- src/pages/index.vue | 144 +- src/pages/order.vue | 364 +++-- src/pages/shop.vue | 216 +-- src/pages/user.vue | 285 ++-- src/pnpm-lock.yaml | 1256 +---------------- src/static/style/common.scss | 8 +- .../ws-login/components/ws-login/ws-login.vue | 3 +- src/uni_modules/zeng-calen/changelog.md | 8 + .../components/zeng-calen/zeng-calen.vue | 455 ++++++ src/uni_modules/zeng-calen/package.json | 85 ++ src/uni_modules/zeng-calen/readme.md | 69 + src/utils/request.ts | 88 +- 60 files changed, 5477 insertions(+), 4495 deletions(-) create mode 100644 .idea/inspectionProfiles/Project_Default.xml create mode 100644 src/api/think/thinkCardsBills/index.ts create mode 100644 src/api/think/thinkCardsBills/model/index.ts create mode 100644 src/api/think/thinkDepositItem/index.ts create mode 100644 src/api/think/thinkDepositItem/model/index.ts create mode 100644 src/api/think/thinkMachineOpenLog/index.ts create mode 100644 src/api/think/thinkMachineOpenLog/model/index.ts create mode 100644 src/api/think/thinkVipCardsBills/index.ts create mode 100644 src/api/think/thinkVipCardsBills/model/index.ts create mode 100644 src/package/order/check.vue create mode 100644 src/package/user/depositList.vue create mode 100644 src/package/user/guide.vue create mode 100644 src/package/user/invoiceRent.vue create mode 100644 src/package/user/map.vue create mode 100644 src/package/user/phoneService.vue create mode 100644 src/package/user/signUp.vue create mode 100644 src/package/user/siteGuide.vue create mode 100644 src/uni_modules/zeng-calen/changelog.md create mode 100644 src/uni_modules/zeng-calen/components/zeng-calen/zeng-calen.vue create mode 100644 src/uni_modules/zeng-calen/package.json create mode 100644 src/uni_modules/zeng-calen/readme.md diff --git a/.env.development b/.env.development index 8d10c2e..aca3657 100644 --- a/.env.development +++ b/.env.development @@ -1,9 +1,7 @@ VITE_APP_NAME=后台管理系统 VITE_SOCKET_URL=wss://server.gxwebsoft.com -VITE_SERVER_URL=https://server.gxwebsoft.com/api -VITE_API_URL=https://modules.gxwebsoft.com/api +VITE_SERVER_URL=https://gxtyzx-server.websoft.top/api +VITE_API_URL=https://gxtyzx-modules.websoft.top/api VITE_THINK_URL=https://gxtyzx-api.websoft.top/api -#VITE_SERVER_URL=http://127.0.0.1:9090/api -#VITE_API_URL=http://127.0.0.1:9099/api #VITE_THINK_URL=http://127.0.0.1:9099/api diff --git a/.env.production b/.env.production index ee66a2b..134dda6 100644 --- a/.env.production +++ b/.env.production @@ -1,8 +1,5 @@ VITE_APP_NAME=后台管理系统 VITE_SOCKET_URL=wss://server.gxwebsoft.com -VITE_SERVER_URL=https://server.gxwebsoft.com/api +VITE_SERVER_URL=https://gxtyzx-server.websoft.top/api +VITE_API_URL=https://gxtyzx-modules.websoft.top/api VITE_THINK_URL=https://gxtyzx-api.websoft.top/api -VITE_API_URL=https://modules.gxwebsoft.com/api -#VITE_SERVER_URL=http://127.0.0.1:9090/api -#VITE_API_URL=http://127.0.0.1:9001/api -#VITE_THINK_URL=http://127.0.0.1:9099/api diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml new file mode 100644 index 0000000..9ae2fa3 --- /dev/null +++ b/.idea/inspectionProfiles/Project_Default.xml @@ -0,0 +1,125 @@ + + + + \ No newline at end of file diff --git a/src/api/booking/userInvoice/index.ts b/src/api/booking/userInvoice/index.ts index 26bac16..e64adfd 100644 --- a/src/api/booking/userInvoice/index.ts +++ b/src/api/booking/userInvoice/index.ts @@ -1,14 +1,15 @@ import request from '@/utils/request'; import type { ApiResult, PageResult } from '@/api'; import type { UserInvoice, UserInvoiceParam } from './model'; -import { MODULES_API_URL } from '@/config/setting'; +import { THINK_API_URL } from '@/config/setting'; +import type {ThinkInvoice} from "@/api/think/thinkInvoice/model"; /** * 分页查询发票 */ export async function pageUserInvoice(params: UserInvoiceParam) { const res = await request.get>>( - MODULES_API_URL + '/booking/user-invoice/page', + THINK_API_URL + '/booking/booking-user-invoice/page', { params } @@ -24,7 +25,7 @@ export async function pageUserInvoice(params: UserInvoiceParam) { */ export async function listUserInvoice(params?: UserInvoiceParam) { const res = await request.get>( - MODULES_API_URL + '/booking/user-invoice', + THINK_API_URL + '/booking/booking-user-invoice', { params } @@ -40,7 +41,7 @@ export async function listUserInvoice(params?: UserInvoiceParam) { */ export async function addUserInvoice(data: UserInvoice) { const res = await request.post>( - MODULES_API_URL + '/booking/user-invoice', + THINK_API_URL + '/booking/booking-user-invoice', data ); if (res.data.code === 0) { @@ -54,7 +55,7 @@ export async function addUserInvoice(data: UserInvoice) { */ export async function updateUserInvoice(data: UserInvoice) { const res = await request.put>( - MODULES_API_URL + '/booking/user-invoice', + THINK_API_URL + '/booking/booking-user-invoice', data ); if (res.data.code === 0) { @@ -68,7 +69,7 @@ export async function updateUserInvoice(data: UserInvoice) { */ export async function removeUserInvoice(id?: number) { const res = await request.delete>( - MODULES_API_URL + '/booking/user-invoice/' + id + THINK_API_URL + '/booking/booking-user-invoice/' + id ); if (res.data.code === 0) { return res.data.message; @@ -81,7 +82,7 @@ export async function removeUserInvoice(id?: number) { */ export async function removeBatchUserInvoice(data: (number | undefined)[]) { const res = await request.delete>( - MODULES_API_URL + '/booking/user-invoice/batch', + THINK_API_URL + '/booking/booking-user-invoice/batch', { data } @@ -97,7 +98,7 @@ export async function removeBatchUserInvoice(data: (number | undefined)[]) { */ export async function getUserInvoice(id: number) { const res = await request.get>( - MODULES_API_URL + '/booking/user-invoice/' + id + THINK_API_URL + '/booking/booking-user-invoice/' + id ); if (res.data.code === 0 && res.data.data) { return res.data.data; @@ -108,9 +109,9 @@ export async function getUserInvoice(id: number) { /** * 开具发票 */ -export async function doInvoice(data: UserInvoice) { +export async function doInvoice(data: ThinkInvoice) { const res = await request.post>( - MODULES_API_URL + '/booking/user-invoice/doInvoice', + THINK_API_URL + '/think/think-invoice/doInvoice', data ); if (res.data.code === 0) { @@ -123,9 +124,9 @@ export async function doInvoice(data: UserInvoice) { /** * 根据orderNo查询发票 */ -export async function showInvoice(orderNo: string) { +export async function showInvoice(id: number) { const res = await request.get>( - MODULES_API_URL + '/booking/user-invoice/showInvoice/' + orderNo + THINK_API_URL + `/think/think-invoice/showInvoice/${id}` ); if (res.data.code === 0 && res.data.data) { return res.data.data; diff --git a/src/api/shop/cart/index.ts b/src/api/shop/cart/index.ts index 3c7dc94..0bc90ae 100644 --- a/src/api/shop/cart/index.ts +++ b/src/api/shop/cart/index.ts @@ -1,6 +1,6 @@ import request from '@/utils/request'; import type {ApiResult, PageResult} from '@/api'; -import {MODULES_API_URL} from '@/config/setting'; +import {THINK_API_URL} from '@/config/setting'; import type {Cart, CartParam, CartVo} from "@/api/shop/cart/model"; import type {Merchant} from "@/api/shop/merchant/model"; @@ -9,7 +9,7 @@ import type {Merchant} from "@/api/shop/merchant/model"; */ export async function pageCart(params: CartParam) { const res = await request.get>>( - MODULES_API_URL + '/shop/cart/page', + THINK_API_URL + '/shop/cart/page', { params } @@ -25,7 +25,7 @@ export async function pageCart(params: CartParam) { */ export async function listCart(params?: CartParam) { const res = await request.get>( - MODULES_API_URL + '/shop/cart', + THINK_API_URL + '/shop/cart', { params } @@ -41,7 +41,7 @@ export async function listCart(params?: CartParam) { */ export async function addCart(data: Cart) { const res = await request.post>( - MODULES_API_URL + '/shop/cart', + THINK_API_URL + '/shop/cart', data ); console.log(res) @@ -56,7 +56,7 @@ export async function addCart(data: Cart) { */ export async function updateCart(data: Cart) { const res = await request.put>( - MODULES_API_URL + '/shop/cart', + THINK_API_URL + '/shop/cart', data ); if (res.data.code === 0) { @@ -70,7 +70,7 @@ export async function updateCart(data: Cart) { */ export async function removeCart(id?: number) { const res = await request.delete>( - MODULES_API_URL + '/shop/cart/' + id + THINK_API_URL + '/shop/cart/' + id ); if (res.data.code === 0) { return res.data.message; @@ -81,7 +81,7 @@ export async function removeCart(id?: number) { // 按店铺ID更新选中 export async function updateCartByMerchantId(id?: number) { const res = await request.put>( - MODULES_API_URL + '/shop/cart/updateCartByMerchantId/' + id + THINK_API_URL + '/shop/cart/updateCartByMerchantId/' + id ); if (res.data.code === 0) { return res.data.message; @@ -93,7 +93,7 @@ export async function updateCartByMerchantId(id?: number) { // 全选操作 export async function onSelectAll(yes: Boolean) { const res = await request.put>( - MODULES_API_URL + '/shop/cart/onSelectAll/' + yes + THINK_API_URL + '/shop/cart/onSelectAll/' + yes ); if (res.data.code === 0) { return res.data; @@ -105,7 +105,7 @@ export async function onSelectAll(yes: Boolean) { * 批量修改 */ export async function updateBatchCart(data: Cart[]) { - const res = await request.put>(MODULES_API_URL + '/shop/cart/batch', data); + const res = await request.put>(THINK_API_URL + '/shop/cart/batch', data); if (res.data.code === 0) { return res.data.message; } @@ -117,7 +117,7 @@ export async function updateBatchCart(data: Cart[]) { */ export async function removeBatchCart(data: (number | undefined)[]) { const res = await request.delete>( - MODULES_API_URL + '/shop/cart/batch', + THINK_API_URL + '/shop/cart/batch', data ); if (res.data.code === 0) { @@ -131,7 +131,7 @@ export async function removeBatchCart(data: (number | undefined)[]) { */ export async function getCart(id: number) { const res = await request.get>( - MODULES_API_URL + '/shop/cart/' + id + THINK_API_URL + '/shop/cart/' + id ); if (res.data.code === 0 && res.data.data) { return res.data.data; @@ -144,7 +144,7 @@ export async function getCart(id: number) { */ export async function myCart(params: CartParam) { const res = await request.get>( - MODULES_API_URL + '/shop/cart/myCart', + THINK_API_URL + '/shop/cart/myCart', { params } diff --git a/src/api/think/thinkCard/index.ts b/src/api/think/thinkCard/index.ts index b384b09..ca62937 100644 --- a/src/api/think/thinkCard/index.ts +++ b/src/api/think/thinkCard/index.ts @@ -123,8 +123,9 @@ export async function bindCard(data: ThinkCard) { THINK_API_URL + '/think/think-card/bindCard', data ); - if (res.data.code === 0 && res.data.data) { - return res.data.data; + console.log('res.data.code', res.data.code) + if (res.data.code === 0) { + return res.data; } return Promise.reject(new Error(res.data.message)); } diff --git a/src/api/think/thinkCardsBills/index.ts b/src/api/think/thinkCardsBills/index.ts new file mode 100644 index 0000000..73cc1f0 --- /dev/null +++ b/src/api/think/thinkCardsBills/index.ts @@ -0,0 +1,106 @@ +import request from '@/utils/request'; +import type { ApiResult, PageResult } from '@/api'; +import type { ThinkCardsBills, ThinkCardsBillsParam } from './model'; +import { MODULES_API_URL } from '@/config/setting'; + +/** + * 分页查询Vip卡每日账单 + */ +export async function pageThinkCardsBills(params: ThinkCardsBillsParam) { + const res = await request.get>>( + MODULES_API_URL + '/think/think-cards-bills/page', + { + params + } + ); + if (res.data.code === 0) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 查询Vip卡每日账单列表 + */ +export async function listThinkCardsBills(params?: ThinkCardsBillsParam) { + const res = await request.get>( + MODULES_API_URL + '/think/think-cards-bills', + { + params + } + ); + if (res.data.code === 0 && res.data.data) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 添加Vip卡每日账单 + */ +export async function addThinkCardsBills(data: ThinkCardsBills) { + const res = await request.post>( + MODULES_API_URL + '/think/think-cards-bills', + data + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 修改Vip卡每日账单 + */ +export async function updateThinkCardsBills(data: ThinkCardsBills) { + const res = await request.put>( + MODULES_API_URL + '/think/think-cards-bills', + data + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 删除Vip卡每日账单 + */ +export async function removeThinkCardsBills(id?: number) { + const res = await request.delete>( + MODULES_API_URL + '/think/think-cards-bills/' + id + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 批量删除Vip卡每日账单 + */ +export async function removeBatchThinkCardsBills(data: (number | undefined)[]) { + const res = await request.delete>( + MODULES_API_URL + '/think/think-cards-bills/batch', + { + data + } + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 根据id查询Vip卡每日账单 + */ +export async function getThinkCardsBills(id: number) { + const res = await request.get>( + MODULES_API_URL + '/think/think-cards-bills/' + id + ); + if (res.data.code === 0 && res.data.data) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} diff --git a/src/api/think/thinkCardsBills/model/index.ts b/src/api/think/thinkCardsBills/model/index.ts new file mode 100644 index 0000000..1e6d650 --- /dev/null +++ b/src/api/think/thinkCardsBills/model/index.ts @@ -0,0 +1,35 @@ +import type { PageParam } from '@/api'; + +/** + * Vip卡每日账单 + */ +export interface ThinkCardsBills { + // + id?: number; + // + uid?: number; + // + cid?: number; + // + date?: string; + // + amount?: string; + // 租户id + tenantId?: number; + // 状态, 0已发布, 1待审核 2已驳回 3违规内容 + status?: number; + // 是否删除, 0否, 1是 + deleted?: number; + // 创建时间 + createTime?: string; + // 修改时间 + updateTime?: string; +} + +/** + * Vip卡每日账单搜索条件 + */ +export interface ThinkCardsBillsParam extends PageParam { + id?: number; + keywords?: string; +} diff --git a/src/api/think/thinkDeposit/index.ts b/src/api/think/thinkDeposit/index.ts index 72f9a97..c3036c9 100644 --- a/src/api/think/thinkDeposit/index.ts +++ b/src/api/think/thinkDeposit/index.ts @@ -44,7 +44,7 @@ export async function addThinkDeposit(data: ThinkDeposit) { data ); if (res.data.code === 0) { - return res.data.message; + return res.data.data; } return Promise.reject(new Error(res.data.message)); } diff --git a/src/api/think/thinkDepositItem/index.ts b/src/api/think/thinkDepositItem/index.ts new file mode 100644 index 0000000..06b3527 --- /dev/null +++ b/src/api/think/thinkDepositItem/index.ts @@ -0,0 +1,106 @@ +import request from '@/utils/request'; +import type { ApiResult, PageResult } from '@/api'; +import type { ThinkDepositItem, ThinkDepositItemParam } from './model'; +import { THINK_API_URL } from '@/config/setting'; + +/** + * 分页查询押金物品 + */ +export async function pageThinkDepositItem(params: ThinkDepositItemParam) { + const res = await request.get>>( + THINK_API_URL + '/think/think-deposit-item/page', + { + params + } + ); + if (res.data.code === 0) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 查询押金物品列表 + */ +export async function listThinkDepositItem(params?: ThinkDepositItemParam) { + const res = await request.get>( + THINK_API_URL + '/think/think-deposit-item', + { + params + } + ); + if (res.data.code === 0 && res.data.data) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 添加押金物品 + */ +export async function addThinkDepositItem(data: ThinkDepositItem) { + const res = await request.post>( + THINK_API_URL + '/think/think-deposit-item', + data + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 修改押金物品 + */ +export async function updateThinkDepositItem(data: ThinkDepositItem) { + const res = await request.put>( + THINK_API_URL + '/think/think-deposit-item', + data + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 删除押金物品 + */ +export async function removeThinkDepositItem(id?: number) { + const res = await request.delete>( + THINK_API_URL + '/think/think-deposit-item/' + id + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 批量删除押金物品 + */ +export async function removeBatchThinkDepositItem(data: (number | undefined)[]) { + const res = await request.delete>( + THINK_API_URL + '/think/think-deposit-item/batch', + { + data + } + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 根据id查询押金物品 + */ +export async function getThinkDepositItem(id: number) { + const res = await request.get>( + THINK_API_URL + '/think/think-deposit-item/' + id + ); + if (res.data.code === 0 && res.data.data) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} diff --git a/src/api/think/thinkDepositItem/model/index.ts b/src/api/think/thinkDepositItem/model/index.ts new file mode 100644 index 0000000..ce7210d --- /dev/null +++ b/src/api/think/thinkDepositItem/model/index.ts @@ -0,0 +1,27 @@ +import type { PageParam } from '@/api'; + +/** + * 押金物品 + */ +export interface ThinkDepositItem { + // + id?: number; + // + title?: string; + // + amount?: string; + // + siteName?: string; + // 创建时间 + createTime?: number; + // 租户id + tenantId?: number; +} + +/** + * 押金物品搜索条件 + */ +export interface ThinkDepositItemParam extends PageParam { + id?: number; + keywords?: string; +} diff --git a/src/api/think/thinkGoodsOrder/index.ts b/src/api/think/thinkGoodsOrder/index.ts index 5ad4d42..fdc9de8 100644 --- a/src/api/think/thinkGoodsOrder/index.ts +++ b/src/api/think/thinkGoodsOrder/index.ts @@ -44,7 +44,7 @@ export async function addThinkGoodsOrder(data: ThinkGoodsOrder) { data ); if (res.data.code === 0) { - return res.data.message; + return res.data.data; } return Promise.reject(new Error(res.data.message)); } diff --git a/src/api/think/thinkInvoice/index.ts b/src/api/think/thinkInvoice/index.ts index 0e63e45..028bdb2 100644 --- a/src/api/think/thinkInvoice/index.ts +++ b/src/api/think/thinkInvoice/index.ts @@ -44,7 +44,7 @@ export async function addThinkInvoice(data: ThinkInvoice) { data ); if (res.data.code === 0) { - return res.data.message; + return res.data; } return Promise.reject(new Error(res.data.message)); } diff --git a/src/api/think/thinkMachineOpenLog/index.ts b/src/api/think/thinkMachineOpenLog/index.ts new file mode 100644 index 0000000..73d51ae --- /dev/null +++ b/src/api/think/thinkMachineOpenLog/index.ts @@ -0,0 +1,106 @@ +import request from '@/utils/request'; +import type { ApiResult, PageResult } from '@/api'; +import type { ThinkMachineOpenLog, ThinkMachineOpenLogParam } from './model'; +import { MODULES_API_URL } from '@/config/setting'; + +/** + * 分页查询闸机开门记录 + */ +export async function pageThinkMachineOpenLog(params: ThinkMachineOpenLogParam) { + const res = await request.get>>( + MODULES_API_URL + '/think/think-machine-open-log/page', + { + params + } + ); + if (res.data.code === 0) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 查询闸机开门记录列表 + */ +export async function listThinkMachineOpenLog(params?: ThinkMachineOpenLogParam) { + const res = await request.get>( + MODULES_API_URL + '/think/think-machine-open-log', + { + params + } + ); + if (res.data.code === 0 && res.data.data) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 添加闸机开门记录 + */ +export async function addThinkMachineOpenLog(data: ThinkMachineOpenLog) { + const res = await request.post>( + MODULES_API_URL + '/think/think-machine-open-log', + data + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 修改闸机开门记录 + */ +export async function updateThinkMachineOpenLog(data: ThinkMachineOpenLog) { + const res = await request.put>( + MODULES_API_URL + '/think/think-machine-open-log', + data + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 删除闸机开门记录 + */ +export async function removeThinkMachineOpenLog(id?: number) { + const res = await request.delete>( + MODULES_API_URL + '/think/think-machine-open-log/' + id + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 批量删除闸机开门记录 + */ +export async function removeBatchThinkMachineOpenLog(data: (number | undefined)[]) { + const res = await request.delete>( + MODULES_API_URL + '/think/think-machine-open-log/batch', + { + data + } + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 根据id查询闸机开门记录 + */ +export async function getThinkMachineOpenLog(id: number) { + const res = await request.get>( + MODULES_API_URL + '/think/think-machine-open-log/' + id + ); + if (res.data.code === 0 && res.data.data) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} diff --git a/src/api/think/thinkMachineOpenLog/model/index.ts b/src/api/think/thinkMachineOpenLog/model/index.ts new file mode 100644 index 0000000..c488981 --- /dev/null +++ b/src/api/think/thinkMachineOpenLog/model/index.ts @@ -0,0 +1,31 @@ +import type { PageParam } from '@/api'; + +/** + * 闸机开门记录 + */ +export interface ThinkMachineOpenLog { + // + id?: number; + // + orderId?: number; + // 租户id + tenantId?: number; + // 备注 + comments?: string; + // 状态, 0在线, 1离线 + status?: number; + // 是否删除, 0否, 1是 + deleted?: number; + // 注册时间 + createTime?: string; + // 修改时间 + updateTime?: string; +} + +/** + * 闸机开门记录搜索条件 + */ +export interface ThinkMachineOpenLogParam extends PageParam { + id?: number; + keywords?: string; +} diff --git a/src/api/think/thinkOrder/index.ts b/src/api/think/thinkOrder/index.ts index cedb117..d87bcca 100644 --- a/src/api/think/thinkOrder/index.ts +++ b/src/api/think/thinkOrder/index.ts @@ -105,6 +105,16 @@ export async function getThinkOrder(id: number) { return Promise.reject(new Error(res.data.message)); } +export async function getThinkOrderByCode(code: string) { + const res = await request.get>( + THINK_API_URL + `/think/think-order/by-code/${code}` + ); + if (res.data.code === 0 && res.data.data) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} + export async function thinkOrderRepay(data: ThinkOrder) { const res = await request.post>( THINK_API_URL + '/think/think-order/repay', data diff --git a/src/api/think/thinkUsersVip/index.ts b/src/api/think/thinkUsersVip/index.ts index 5f60760..4448525 100644 --- a/src/api/think/thinkUsersVip/index.ts +++ b/src/api/think/thinkUsersVip/index.ts @@ -104,6 +104,7 @@ export async function getThinkUsersVip(id: number) { } return Promise.reject(new Error(res.data.message)); } + export async function thinkUsersVipRepay(data: any) { const res = await request.post>( THINK_API_URL + '/think/think-users-vip/repay', data @@ -113,3 +114,13 @@ export async function thinkUsersVipRepay(data: any) { } return Promise.reject(new Error(res.data.message)); } + +export async function thinkUsersVipLog(id: number) { + const res = await request.get>( + THINK_API_URL + `/think/think-users-vip/log/${id}` + ); + if (res.data.code === 0 && res.data.data) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} diff --git a/src/api/think/thinkVipCardsBills/index.ts b/src/api/think/thinkVipCardsBills/index.ts new file mode 100644 index 0000000..56b50cd --- /dev/null +++ b/src/api/think/thinkVipCardsBills/index.ts @@ -0,0 +1,106 @@ +import request from '@/utils/request'; +import type { ApiResult, PageResult } from '@/api'; +import type { ThinkVipCardsBills, ThinkVipCardsBillsParam } from './model'; +import { MODULES_API_URL } from '@/config/setting'; + +/** + * 分页查询Vip卡每日账单 + */ +export async function pageThinkVipCardsBills(params: ThinkVipCardsBillsParam) { + const res = await request.get>>( + MODULES_API_URL + '/think/think-vip-cards-bills/page', + { + params + } + ); + if (res.data.code === 0) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 查询Vip卡每日账单列表 + */ +export async function listThinkVipCardsBills(params?: ThinkVipCardsBillsParam) { + const res = await request.get>( + MODULES_API_URL + '/think/think-vip-cards-bills', + { + params + } + ); + if (res.data.code === 0 && res.data.data) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 添加Vip卡每日账单 + */ +export async function addThinkVipCardsBills(data: ThinkVipCardsBills) { + const res = await request.post>( + MODULES_API_URL + '/think/think-vip-cards-bills', + data + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 修改Vip卡每日账单 + */ +export async function updateThinkVipCardsBills(data: ThinkVipCardsBills) { + const res = await request.put>( + MODULES_API_URL + '/think/think-vip-cards-bills', + data + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 删除Vip卡每日账单 + */ +export async function removeThinkVipCardsBills(id?: number) { + const res = await request.delete>( + MODULES_API_URL + '/think/think-vip-cards-bills/' + id + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 批量删除Vip卡每日账单 + */ +export async function removeBatchThinkVipCardsBills(data: (number | undefined)[]) { + const res = await request.delete>( + MODULES_API_URL + '/think/think-vip-cards-bills/batch', + { + data + } + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 根据id查询Vip卡每日账单 + */ +export async function getThinkVipCardsBills(id: number) { + const res = await request.get>( + MODULES_API_URL + '/think/think-vip-cards-bills/' + id + ); + if (res.data.code === 0 && res.data.data) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} diff --git a/src/api/think/thinkVipCardsBills/model/index.ts b/src/api/think/thinkVipCardsBills/model/index.ts new file mode 100644 index 0000000..b07ee1d --- /dev/null +++ b/src/api/think/thinkVipCardsBills/model/index.ts @@ -0,0 +1,35 @@ +import type { PageParam } from '@/api'; + +/** + * Vip卡每日账单 + */ +export interface ThinkVipCardsBills { + // + id?: number; + // + uid?: number; + // + vid?: number; + // + date?: string; + // + amount?: string; + // 租户id + tenantId?: number; + // 状态, 0已发布, 1待审核 2已驳回 3违规内容 + status?: number; + // 是否删除, 0否, 1是 + deleted?: number; + // 创建时间 + createTime?: string; + // 修改时间 + updateTime?: string; +} + +/** + * Vip卡每日账单搜索条件 + */ +export interface ThinkVipCardsBillsParam extends PageParam { + id?: number; + keywords?: string; +} diff --git a/src/package.json b/src/package.json index 4d7186c..3850b0a 100644 --- a/src/package.json +++ b/src/package.json @@ -12,6 +12,7 @@ "@types/socket.io-client": "^3.0.0", "@vitejs/plugin-vue": "^5.0.5", "autoprefixer": "^9.8.8", + "coordtransform": "^2.1.2", "crypto-js": "^4.2.0", "dayjs": "^1.11.11", "decimal.js": "^10.4.3", @@ -28,6 +29,5 @@ "repository": {}, "author": "", "license": "ISC", - "displayName": "websoft-app", - "devDependencies": {} + "displayName": "websoft-app" } diff --git a/src/package/article/index.vue b/src/package/article/index.vue index 68ab5b2..10c9173 100644 --- a/src/package/article/index.vue +++ b/src/package/article/index.vue @@ -7,7 +7,7 @@ diff --git a/src/package/booking/checkout.vue b/src/package/booking/checkout.vue index a1873b9..a3a0edc 100644 --- a/src/package/booking/checkout.vue +++ b/src/package/booking/checkout.vue @@ -5,62 +5,64 @@ - - + + + + + + + 可预约 - - - - - 可预约 - - - - 已出售 - - - - 我的选择 - - - - 已预定半场 - + + + 已出售 - - - - - + + + + + @@ -180,7 +182,7 @@ export default { } }, onLoad(option) { - this.merchantId = option.id + this.merchantId = parseInt(option.id) this.reload(); }, onShow() { @@ -194,7 +196,8 @@ export default { const app = this let totalPrice = 0; app.selection.map(d => { - totalPrice = totalPrice + d.price + if (app.isHalf === 1) totalPrice += d.halfPrice + else totalPrice += d.price }) carStore.totalPrice = totalPrice console.log('totalPrice: ', totalPrice); @@ -256,7 +259,9 @@ export default { }, setDateList() { this.next7day = [] - for (let i = 0; i < 7; i++) { + let day = 7 + if (this.merchantId === 37) day = 7 + for (let i = 0; i < day; i++) { const day = dayjs().add(i, 'day') this.next7day.push({ week: day.format('d') === '0' ? '7' : day.format('d'), @@ -276,8 +281,14 @@ export default { this.periodList = [] this.timeList.forEach(item => { const weekList = JSON.parse(item.week) - if (weekList.includes(this.week) && dayjs().isBefore(dayjs(this.dateTime + ' ' + item.timePeriod.split(' - ')[0]))) this.periodList.push(item) + if (parseInt(this.merchantId) === 37) { + const today = dayjs().format('YYYY-MM-DD') + if (dayjs().isBefore(dayjs(today + ' 21:00:00')) || dayjs(this.dateTime).isAfter(dayjs())) this.periodList.push(item) + } else { + if (weekList.includes(this.week) && dayjs().isBefore(dayjs(this.dateTime + ' ' + item.timePeriod.split(' - ')[0]))) this.periodList.push(item) + } }) + // console.log(this.periodList) }, onDisabled() { this.disabled = !this.disabled; @@ -305,7 +316,7 @@ export default { }, async getFieldList() { if (!this.periodList.length) { - return uni.showToast({ + return uni.showToast({ title: '暂无可预订场地', icon: 'none' }) @@ -324,53 +335,6 @@ export default { periodVoList }) }, - getBookingPeriod() { - const { - serverTime, - merchantId - } = this - const now = new Date(); - const hours = now.getHours(); - const minutes = now.getMinutes() - const week = this.week == 0 ? 7 : this.week - let startTime; - startTime = serverTime.today == this.dateTime ? String(hours) + String(minutes) : undefined - // 游泳馆当前21:30前都可以预定 - if (merchantId === '3028' && Number(startTime) < 2130) { - startTime = undefined - } - - PeriodApi.listPeriod({ - merchantId: this.merchantId, - isStatus: 0, - week, - dateTime: `${this.dateTime}`, - startTime, - half: this.isHalf - }).then(list => { - this.periodList = list; - uni.hideLoading() - }).catch(err => { - this.periodList = []; - uni.showToast({ - title: err.message, - icon: 'none' - }) - uni.hideLoading() - if (err.message === '您还有未支付订单,请先支付') { - setTimeout(() => { - return uni.switchTab({ - url: '/pages/order/order' - }); - }, 1000) - } - }) - }, - callPhone(phone) { - uni.makePhoneCall({ - phoneNumber: phone - }); - }, openCarInfo() { // this.showCarInfo = !this.showCarInfo; // 通过组件定义的ref调用uni-popup方法 ,如果传入参数 ,type 属性将失效 ,仅支持 ['top','left','bottom','right','center'] @@ -380,8 +344,11 @@ export default { this.$refs.popup.close() }, onField(field, item) { + const timePeriod = item.timePeriod + const checkTimePeriod = field.periodVoList.find(d => (d.period === timePeriod && d.id === item.id)) + // console.log('here', field, item) // 已被预定 - if (field.sold) { + if (checkTimePeriod.sold) { return } const app = this @@ -402,6 +369,7 @@ export default { }) return false } + // console.log(field) const split = item.timePeriod.split(' - ') const siteTime = field.periodVoList.find(d => d.period === item.timePeriod) // 添加到购物车 @@ -412,11 +380,12 @@ export default { fieldId: field.id, fieldName: field.name, price: item.price, + halfPrice: item.halfPrice, childrenPrice: item.childrenPrice, adultNum: 1, childrenNum: 0, siteName: merchant.name, - isChildren: item.isChildren, + isChildren: 2, isHalf: this.isHalf, type: this.type, timePeriod: item.timePeriod, @@ -428,7 +397,7 @@ export default { dateTime: `${this.dateTime}`, comments: `${this.dateTime}(${getWeek(week)})${item.timePeriod}`, }) - console.log(app.selection); + // console.log(app.selection); // console.log('period: ', period); // 是否支持儿童票 // console.log('item.isChildren: ', item.isChildren); @@ -448,7 +417,10 @@ export default { }, isActive(field, item) { const index = this.selection.find(d => d.key === getKey(`${this.dateTime}${item.timePeriod}${this.merchantId}${field.id}`)) - if (item.sold) { + const timePeriod = item.timePeriod + const checkTimePeriod = field.periodVoList.find(d => (d.period === timePeriod && d.id === item.id)) + // console.log('checkTimePeriod', checkTimePeriod, timePeriod) + if (checkTimePeriod && checkTimePeriod.sold) { if (item.isHalf === 1) { return 'web-bg-warning' } @@ -467,6 +439,7 @@ export default { uni.navigateTo({ url: '/package/booking/confirm', success: (res) => { + console.log(this.selection) res.eventChannel.emit('data', this.selection) } }) diff --git a/src/package/booking/confirm.vue b/src/package/booking/confirm.vue index bd61fe3..6102ce0 100644 --- a/src/package/booking/confirm.vue +++ b/src/package/booking/confirm.vue @@ -25,15 +25,8 @@ - - - - -