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 @@
+
+
+
+
+
+ {{ tab }}
+
+
+
+
+
+
+
+
+
+ 接待人:
+ {{ item.userName }}
+
+
+ 联系方式:
+ {{ item.mobile }}
+
+
+ 预约时间:
+ {{ formatCreateTime(item.createTime) }}
+
+
+ 备注:
+ {{ item.description }}
+
+
+ 审核意见:
+ {{ item.checkReason }}
+
+
+
+
+
+
+ 加载中...
+ 没有更多数据了
+ 暂无访客记录
+
+
+
+
+
+
+
+
+
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()
+}