From 1dc5818464bd183d816819b44bf88fd4067fc3ee Mon Sep 17 00:00:00 2001 From: zjf <1799650030@qq.com> Date: Fri, 30 May 2025 14:29:28 +0800 Subject: [PATCH 1/7] .env --- .env | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.env b/.env index 30fea0e..2f58305 100644 --- a/.env +++ b/.env @@ -19,15 +19,15 @@ VITE_OAUTH2_APP_CLIENT='mini:mini' # --------------------------- 开发环境 api地址 ---------------------------------- # VITE_APP_DEV_SERVICE = https://stgl.pj.gov.cn/api # 域名线上 #VITE_APP_DEV_SERVICE = http://59.202.170.152:81/api # 信创线上 -VITE_APP_DEV_SERVICE = http://192.168.101.125:9999 # 邓-本地 -# VITE_APP_DEV_SERVICE = http://127.0.0.1:9999 # 邓-本地 +; VITE_APP_DEV_SERVICE = http://192.168.101.125:9999 # 邓-本地 +VITE_APP_DEV_SERVICE = http://127.0.0.1:9999 # 邓-本地 # VITE_APP_DEV_SERVICE = http://123.156.230.15:8089/api # 测试线上 # --------------------------- 开发环境 图片访问基础地址 --------------------------- # VITE_IMAGE_DEV_PATH = https://stgl.pj.gov.cn/api # 域名线上 #VITE_IMAGE_DEV_PATH = http://59.202.170.152:81/api # 信创线上 -VITE_IMAGE_DEV_PATH = http://192.168.101.125:9999 # 邓-本地 -# VITE_IMAGE_DEV_PATH = http://127.0.0.1:9999 +; VITE_IMAGE_DEV_PATH = http://192.168.101.125:9999 # 邓-本地 +VITE_IMAGE_DEV_PATH = http://127.0.0.1:9999 # VITE_IMAGE_DEV_PATH = http://123.156.230.15:8089/api # 测试线上 # --------------------------- 生产环境 api地址 ---------------------------------- From dc67e565376426852923ff4aa97a213958a7c015 Mon Sep 17 00:00:00 2001 From: zjf <1799650030@qq.com> Date: Thu, 5 Jun 2025 13:41:49 +0800 Subject: [PATCH 2/7] .env --- .env | 39 --------------------------------------- 1 file changed, 39 deletions(-) delete mode 100644 .env diff --git a/.env b/.env deleted file mode 100644 index 36c9e1e..0000000 --- a/.env +++ /dev/null @@ -1,39 +0,0 @@ -#是否是TOC应用 -VITE_IS_TOC=true - -#是否是H5模式 -VITE_IS_H5=true - -#是否是微服务架构 -VITE_IS_MICRO=true - -# 后端请求前缀 -VITE_API_URL = /api - -# 前端加密密钥 -VITE_PWD_ENC_KEY='pigxpigxpigxpigx' - -# OAUTH2 APP模式客户端信息 -VITE_OAUTH2_APP_CLIENT='mini:mini' - -# --------------------------- 开发环境 api地址 ---------------------------------- -# VITE_APP_DEV_SERVICE = https://stgl.pj.gov.cn/api # 域名线上 -#VITE_APP_DEV_SERVICE = http://59.202.170.152:81/api # 信创线上 -VITE_APP_DEV_SERVICE = http://192.168.101.132:9999 # 邓-本地 -# VITE_APP_DEV_SERVICE = http://127.0.0.1:9999 # 邓-本地 -# VITE_APP_DEV_SERVICE = http://123.156.230.15:8089/api # 测试线上 - -# --------------------------- 开发环境 图片访问基础地址 --------------------------- -# VITE_IMAGE_DEV_PATH = https://stgl.pj.gov.cn/api # 域名线上 -#VITE_IMAGE_DEV_PATH = http://59.202.170.152:81/api # 信创线上 -VITE_IMAGE_DEV_PATH = http://192.168.101.132:9999 # 邓-本地 -# VITE_IMAGE_DEV_PATH = http://127.0.0.1:9999 -# VITE_IMAGE_DEV_PATH = http://123.156.230.15:8089/api # 测试线上 - -# --------------------------- 生产环境 api地址 ---------------------------------- -VITE_APP_PROD_SERVICE = https://stgl.pj.gov.cn/api # 域名线上 -#VITE_APP_PROD_SERVICE = http://59.202.170.152:81/api # 信创线上 -#VITE_APP_PROD_SERVICE = http://123.156.228.134:48080/app-api - -# --------------------------- 生产环境 图片访问基础地址 --------------------------- -VITE_APP_PROD_IMAGE = https://stgl.pj.gov.cn/api # 域名线上 From 8eee595c01c48db516956c80561a72301c8b2a16 Mon Sep 17 00:00:00 2001 From: zjf <1799650030@qq.com> Date: Thu, 5 Jun 2025 13:42:33 +0800 Subject: [PATCH 3/7] .env --- src/pages/integrated/visitor/myvisitor.vue | 484 +++++++++++++++++++++ 1 file changed, 484 insertions(+) create mode 100644 src/pages/integrated/visitor/myvisitor.vue diff --git a/src/pages/integrated/visitor/myvisitor.vue b/src/pages/integrated/visitor/myvisitor.vue new file mode 100644 index 0000000..3c67402 --- /dev/null +++ b/src/pages/integrated/visitor/myvisitor.vue @@ -0,0 +1,484 @@ + + + + + From d529a020a36f1716328b51b078cd628c12016656 Mon Sep 17 00:00:00 2001 From: zjf <1799650030@qq.com> Date: Wed, 11 Jun 2025 15:14:47 +0800 Subject: [PATCH 4/7] .env --- .env | 8 ++++---- src/pages.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.env b/.env index 5e88cc1..b0e1196 100644 --- a/.env +++ b/.env @@ -19,15 +19,15 @@ VITE_OAUTH2_APP_CLIENT='mini:mini' # --------------------------- 开发环境 api地址 ---------------------------------- # VITE_APP_DEV_SERVICE = https://stgl.pj.gov.cn/api # 域名线上 #VITE_APP_DEV_SERVICE = http://59.202.170.152:81/api # 信创线上 -VITE_APP_DEV_SERVICE = http://192.168.101.139:9999 # 邓-本地 -# VITE_APP_DEV_SERVICE = http://127.0.0.1:9999 # 邓-本地 +#VITE_APP_DEV_SERVICE = http://192.168.101.139:9999 # 邓-本地 +VITE_APP_DEV_SERVICE = http://127.0.0.1:9999 # 邓-本地 # VITE_APP_DEV_SERVICE = http://123.156.230.15:8089/api # 测试线上 # --------------------------- 开发环境 图片访问基础地址 --------------------------- # VITE_IMAGE_DEV_PATH = https://stgl.pj.gov.cn/api # 域名线上 #VITE_IMAGE_DEV_PATH = http://59.202.170.152:81/api # 信创线上 -VITE_IMAGE_DEV_PATH = http://192.168.101.139:9999 # 邓-本地 -# VITE_IMAGE_DEV_PATH = http://127.0.0.1:9999 +#VITE_IMAGE_DEV_PATH = http://192.168.101.139:9999 # 邓-本地 + VITE_IMAGE_DEV_PATH = http://127.0.0.1:9999 # VITE_IMAGE_DEV_PATH = http://123.156.230.15:8089/api # 测试线上 # --------------------------- 生产环境 api地址 ---------------------------------- diff --git a/src/pages.json b/src/pages.json index eff3e15..669c84a 100644 --- a/src/pages.json +++ b/src/pages.json @@ -553,4 +553,4 @@ // } ] } -} \ No newline at end of file +} From 07bac263385f7b6e431bdc938df9e434e9407baa Mon Sep 17 00:00:00 2001 From: dzc <2388224167@qq.com> Date: Mon, 16 Jun 2025 10:11:06 +0800 Subject: [PATCH 5/7] 1 --- .env | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.env b/.env index 5e88cc1..df9b8ec 100644 --- a/.env +++ b/.env @@ -19,7 +19,7 @@ VITE_OAUTH2_APP_CLIENT='mini:mini' # --------------------------- 开发环境 api地址 ---------------------------------- # VITE_APP_DEV_SERVICE = https://stgl.pj.gov.cn/api # 域名线上 #VITE_APP_DEV_SERVICE = http://59.202.170.152:81/api # 信创线上 -VITE_APP_DEV_SERVICE = http://192.168.101.139:9999 # 邓-本地 +VITE_APP_DEV_SERVICE = http://192.168.101.139:9999 # 邓-本地` # VITE_APP_DEV_SERVICE = http://127.0.0.1:9999 # 邓-本地 # VITE_APP_DEV_SERVICE = http://123.156.230.15:8089/api # 测试线上 From 3de34399b417e76db21eb748a00f69b65be5e122 Mon Sep 17 00:00:00 2001 From: zjf <1799650030@qq.com> Date: Tue, 17 Jun 2025 17:57:57 +0800 Subject: [PATCH 6/7] =?UTF-8?q?=E4=BC=9A=E8=AE=AE=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages.json | 14 +- src/pages/integrated/meeting/detail.vue | 329 ++++++++++++++++++------ src/pages/integrated/meeting/index.vue | 2 + src/sheep/api/meetingRoom.ts | 27 ++ 4 files changed, 282 insertions(+), 90 deletions(-) diff --git a/src/pages.json b/src/pages.json index 669c84a..fcdb8a1 100644 --- a/src/pages.json +++ b/src/pages.json @@ -544,13 +544,13 @@ "iconPath": "", "selectedIconPath": "" } - // , - // { - // "pagePath": "pages/integrated/index", - // "text": "综合服务", - // "iconPath": "static/tabbar/integrated.png", - // "selectedIconPath": "static/tabbar/integrated-select.png" - // } + , + { + "pagePath": "pages/integrated/index", + "text": "综合服务", + "iconPath": "static/tabbar/integrated.png", + "selectedIconPath": "static/tabbar/integrated-select.png" + } ] } } diff --git a/src/pages/integrated/meeting/detail.vue b/src/pages/integrated/meeting/detail.vue index 534aaaf..5d1fef2 100644 --- a/src/pages/integrated/meeting/detail.vue +++ b/src/pages/integrated/meeting/detail.vue @@ -22,30 +22,34 @@ - {{ d }} + {{ d }} - - - - - {{ cell.user }} - 🚫 + + + + + + {{ slot.startTime }} - {{ slot.endTime }} + + 🚫 已预约: {{ slot.bookedBy?.userName }} + 🚫 不可预约 + ✓ 可预约 + + - - - - {{ 8 + h }}:00 + 会议时间:{{ selectedTimeText }} 时长:{{ selectedDuration }}分钟 - 发起人:张三 + 发起人:{{ currentUser.name }} @@ -54,62 +58,216 @@ @@ -117,6 +275,8 @@ function reserveMeeting() { .container { min-height: 100vh; background: #f5f6fa; + display: flex; + flex-direction: column; padding-bottom: 32rpx; } .custom-nav { @@ -220,58 +380,62 @@ function reserveMeeting() { background: #e6f0ff; font-weight: 600; } -.time-table { +.time-list-container { margin: 24rpx; background: #fff; border-radius: 12rpx; + flex: 1; + overflow: hidden; + display: flex; + flex-direction: column; +} +.time-list { + flex: 1; +} +.time-list-content { padding: 16rpx; } -.time-row { - display: flex; - margin-bottom: 8rpx; -} -.time-cell { - flex: 1; - height: 48rpx; - margin-right: 4rpx; - border-radius: 6rpx; - background: #e6eaf2; +.time-item { display: flex; + justify-content: space-between; align-items: center; - justify-content: center; - color: #bbb; - font-size: 22rpx; + padding: 24rpx; + border-bottom: 1px solid #f0f0f0; + background: #f8f9fc; + margin-bottom: 16rpx; + border-radius: 8rpx; + position: relative; } -.time-cell:last-child { - margin-right: 0; +.time-item:last-child { + margin-bottom: 0; } -.time-cell.free { - background: #4d8fff; - color: #fff; +.time-item.free { + background: #e6f0ff; + color: #1777FF; } -.time-cell.booked { - background: #ffb74d; - color: #fff; +.time-item.booked { + background: #fff3e0; + color: #ff9800; } -.time-cell.disabled { - background: #f0f0f0; - color: #ccc; +.time-item.disabled { + background: #f5f5f5; + color: #999; } -.time-cell.selected { +.time-item.selected { border: 2rpx solid #1777FF; } -.time-labels { - display: flex; - margin: 0 24rpx 16rpx 24rpx; +.time-range { + font-size: 28rpx; + font-weight: 500; } -.time-label { - flex: 1; - text-align: center; - color: #bbb; - font-size: 20rpx; +.time-status { + font-size: 24rpx; + padding: 4rpx 16rpx; + border-radius: 4rpx; + background: rgba(255, 255, 255, 0.5); } .reserve-info { - margin: 0 24rpx 16rpx 24rpx; + margin: 0 24rpx; background: #fff; border-radius: 12rpx; padding: 16rpx; @@ -279,7 +443,7 @@ function reserveMeeting() { font-size: 26rpx; } .reserve-btn { - margin: 0 24rpx; + margin: 24rpx; background: linear-gradient(90deg, #0094ff, #06be36); color: #fff; font-size: 30rpx; @@ -287,6 +451,5 @@ function reserveMeeting() { border-radius: 40rpx; padding: 24rpx 0; font-weight: 600; - margin-top: 16rpx; } \ No newline at end of file diff --git a/src/pages/integrated/meeting/index.vue b/src/pages/integrated/meeting/index.vue index bfa38f0..92bbf93 100644 --- a/src/pages/integrated/meeting/index.vue +++ b/src/pages/integrated/meeting/index.vue @@ -74,6 +74,8 @@ function fetchMeetingRooms() { } function goDetail(room) { + console.log('Navigating to detail page with room:', room) + console.log('Room ID:', room.id) uni.navigateTo({ url: `/pages/integrated/meeting/detail?roomId=${room.id}` }) diff --git a/src/sheep/api/meetingRoom.ts b/src/sheep/api/meetingRoom.ts index a219f22..1d2e9d8 100644 --- a/src/sheep/api/meetingRoom.ts +++ b/src/sheep/api/meetingRoom.ts @@ -10,4 +10,31 @@ export default { method: "GET", params, }), + + /** + * 获取会议室时间段 + */ + getTimeSlots: (roomId: string, date: string) => + request({ + url: `/integrated/meetingRoom/${roomId}/time-slots`, + method: "GET", + params: { date }, + }), + + /** + * 预约会议室 + */ + bookMeetingRoom: (roomId: string, data: { + date: string; + startTime: string; + endTime: string; + title: string; + description: string; + attendees: string[]; + }) => + request({ + url: `/integrated/meetingRoom/${roomId}/book`, + method: "POST", + data, + }), } \ No newline at end of file From ad6d9ce395c97615ad4c1f14ae983c89417aa7c6 Mon Sep 17 00:00:00 2001 From: zjf <1799650030@qq.com> Date: Tue, 17 Jun 2025 18:47:03 +0800 Subject: [PATCH 7/7] =?UTF-8?q?=E4=BC=9A=E8=AE=AE=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/integrated/meeting/detail.vue | 83 +++++++++++++++++-------- src/pages/integrated/meeting/index.vue | 11 +++- 2 files changed, 66 insertions(+), 28 deletions(-) diff --git a/src/pages/integrated/meeting/detail.vue b/src/pages/integrated/meeting/detail.vue index 5d1fef2..d73fcca 100644 --- a/src/pages/integrated/meeting/detail.vue +++ b/src/pages/integrated/meeting/detail.vue @@ -88,37 +88,13 @@ const props = defineProps<{ roomInfo?: any }>() -// 初始化数据 -onMounted(() => { - console.log('Detail page mounted, props:', props) - console.log('roomId from props:', props.roomId) - - // 从props获取roomId - if (props.roomId) { - roomId.value = props.roomId - console.log('roomId set to:', roomId.value) - } else { - console.log('No roomId found in props') - } - - // 获取当天的时间段 - const today = getDateString(0) - console.log('Fetching time slots for date:', today) - fetchTimeSlots(today) -}) - -const goBack = () => { - uni.navigateBack() -} - // 使用传入的会议室信息,如果没有则使用默认值 const room = ref({ name: '一号会议室', capacity: 20, address: '公司总部南水吧台旁', tags: ['电视', '白板', '投影仪'], - img: '/static/meeting/room1.jpg', - ...props.roomInfo + img: '/static/meeting/room1.jpg' }) // 当前用户信息 @@ -269,6 +245,63 @@ async function reserveMeeting() { }) } } + +// 初始化数据 +onMounted(() => { + console.log('Detail page mounted, props:', props) + console.log('roomId from props:', props.roomId) + + // 从props获取roomId + if (props.roomId) { + roomId.value = props.roomId + console.log('roomId set to:', roomId.value) + } else { + console.log('No roomId found in props') + } + + // 接收列表页传递的会议室信息 + const currentPage = getCurrentPages().pop() + const eventChannel = currentPage ? (currentPage as any).getOpenerEventChannel() : undefined + if (eventChannel) { + eventChannel.on('acceptRoomInfo', (data: any) => { + console.log('detail.vue: Received raw room info from eventChannel:', data) + // 字段映射 + room.value.name = data.roomName || '未知会议室' + room.value.capacity = data.capacity || 0 + room.value.address = data.location || '未知地址' + room.value.img = data.picUrl || '/static/meeting/default.jpg' + room.value.tags = data.equipmentNames ? data.equipmentNames.map((eq: { name: string, quantity?: number }) => eq.quantity ? `${eq.name} x${eq.quantity}` : eq.name) : [] + console.log('detail.vue: Room.value after mapping:', room.value) + }) + } + + // 获取当天的时间段 + const today = getDateString(0) + console.log('Fetching time slots for date:', today) + fetchTimeSlots(today) + + // 从 localStorage 获取用户信息 + try { + const userInfoString = localStorage.getItem('user_info') + if (userInfoString) { + const userInfoData = JSON.parse(userInfoString) + if (userInfoData && userInfoData.data && userInfoData.data.sysUser && userInfoData.data.sysUser.username) { + currentUser.value.name = userInfoData.data.sysUser.username + if (userInfoData.data.sysUser.userId) { + currentUser.value.id = userInfoData.data.sysUser.userId.toString() + } + console.log('detail.vue: Current user name set from localStorage:', currentUser.value.name) + console.log('detail.vue: Current user ID set from localStorage:', currentUser.value.id) + } + } + } catch (e) { + console.error('detail.vue: Failed to parse user_info from localStorage:', e) + } +}) + +const goBack = () => { + uni.navigateBack() +}