From d2e141f17c3ad3d30f0aa032ffdb4ebe517612b1 Mon Sep 17 00:00:00 2001
From: wangys <3401275564@qq.com>
Date: Tue, 23 Dec 2025 17:16:28 +0800
Subject: [PATCH] =?UTF-8?q?=E5=B0=8F=E7=A8=8B=E5=BA=8F=20=20=E8=81=8A?=
=?UTF-8?q?=E5=A4=A9=E5=AE=A4=E5=B8=83=E5=B1=80=E6=A0=B7=E5=BC=8F?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../pages/chatRoom/chatRoom/chatRoom.scss | 56 +++++++++++++------
.../pages/chatRoom/chatRoom/chatRoom.uvue | 29 ++++++----
.../e16a6620e40c4484d1d09387699e8211c81e3d2c | 1 -
3 files changed, 57 insertions(+), 29 deletions(-)
delete mode 100644 urbanLifelineWeb/packages/workcase_wechat/unpackage/cache/.mp-weixin/.uts2js/cache/uts_601c3a05cc232ee487c6924d81c2b4b5dbd72e3f/code/cache/e16a6620e40c4484d1d09387699e8211c81e3d2c
diff --git a/urbanLifelineWeb/packages/workcase_wechat/pages/chatRoom/chatRoom/chatRoom.scss b/urbanLifelineWeb/packages/workcase_wechat/pages/chatRoom/chatRoom/chatRoom.scss
index 3a96c95c..47224038 100644
--- a/urbanLifelineWeb/packages/workcase_wechat/pages/chatRoom/chatRoom/chatRoom.scss
+++ b/urbanLifelineWeb/packages/workcase_wechat/pages/chatRoom/chatRoom/chatRoom.scss
@@ -38,7 +38,6 @@
}
.nav-title {
- flex: 1;
font-size: 30rpx;
font-weight: 600;
color: #222;
@@ -47,33 +46,57 @@
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
-}
-
-.nav-actions {
- display: flex;
- align-items: center;
- gap: 16rpx;
+ max-width: 160rpx;
flex-shrink: 0;
}
-.action-btn {
- padding: 12rpx 20rpx;
- background: rgba(255,255,255,0.9);
- border-radius: 32rpx;
- box-shadow: 0 2rpx 8rpx rgba(0,0,0,0.05);
+.nav-right {
+ flex: 1;
+ display: flex;
+ flex-direction: row;
+ align-items: center;
+ justify-content: flex-end;
+ gap: 6px;
+ // 小程序需要为右侧胶囊按钮留出空间
+ /* #ifdef MP-WEIXIN */
+ padding-right: 100px;
+ /* #endif */
}
-.action-text {
- font-size: 26rpx;
- font-weight: 600;
+.nav-btn {
+ display: flex;
+ flex-direction: row;
+ align-items: center;
+ justify-content: center;
+ gap: 4px;
+ padding: 4px 10px;
+ height: 28px;
+ background: rgba(107, 186, 231, 0.8);
+ border: none;
+ border-radius: 14px;
+ box-sizing: border-box;
+ white-space: nowrap;
+ flex-shrink: 0;
+ margin: 0;
+ line-height: 1;
+}
+
+.nav-btn::after {
+ border: none;
+}
+
+.nav-btn-text {
color: #173294;
+ font-size: 12px;
+ font-weight: 500;
+ line-height: 1;
}
.meeting-btn {
background: linear-gradient(90deg, #52c41a 0%, #73d13d 100%);
}
-.meeting-btn .action-text {
+.meeting-text {
color: #fff;
}
@@ -104,6 +127,7 @@
.message-row {
display: flex;
+ flex-direction: row;
align-items: flex-start;
gap: 16rpx;
}
diff --git a/urbanLifelineWeb/packages/workcase_wechat/pages/chatRoom/chatRoom/chatRoom.uvue b/urbanLifelineWeb/packages/workcase_wechat/pages/chatRoom/chatRoom/chatRoom.uvue
index 9eb1de04..619eb926 100644
--- a/urbanLifelineWeb/packages/workcase_wechat/pages/chatRoom/chatRoom/chatRoom.uvue
+++ b/urbanLifelineWeb/packages/workcase_wechat/pages/chatRoom/chatRoom/chatRoom.uvue
@@ -9,13 +9,13 @@
{{ roomName }}
-
-
- {{ workcaseId ? '查看工单' : '创建工单' }}
-
-
- 发起会议
-
+
+
+
@@ -27,11 +27,13 @@
:class="msg.senderType === 'guest' ? 'self' : 'other'">
-
- {{ msg.senderName?.charAt(0) || '客' }}
+
+
+ {{ msg.senderName?.charAt(0) || '客' }}
+
+ {{ msg.senderName || '客服' }}
- {{ msg.senderName || '客服' }}
{{ msg.content }}
@@ -178,10 +180,13 @@ function loadChatRoom() {
// TODO: 调用 workcaseChatAPI.getChatMessagePage() 获取消息列表
}
-// 格式化时间
+// 格式化时间(兼容 iOS)
function formatTime(time?: string): string {
if (!time) return ''
- const date = new Date(time)
+ // iOS 不支持 "yyyy-MM-dd HH:mm:ss" 格式,需要转换为 "yyyy-MM-ddTHH:mm:ss" 或 "yyyy/MM/dd HH:mm:ss"
+ const iosCompatibleTime = time.replace(' ', 'T')
+ const date = new Date(iosCompatibleTime)
+ if (isNaN(date.getTime())) return ''
return `${date.getHours().toString().padStart(2, '0')}:${date.getMinutes().toString().padStart(2, '0')}`
}
diff --git a/urbanLifelineWeb/packages/workcase_wechat/unpackage/cache/.mp-weixin/.uts2js/cache/uts_601c3a05cc232ee487c6924d81c2b4b5dbd72e3f/code/cache/e16a6620e40c4484d1d09387699e8211c81e3d2c b/urbanLifelineWeb/packages/workcase_wechat/unpackage/cache/.mp-weixin/.uts2js/cache/uts_601c3a05cc232ee487c6924d81c2b4b5dbd72e3f/code/cache/e16a6620e40c4484d1d09387699e8211c81e3d2c
deleted file mode 100644
index 5a6a81ec..00000000
--- a/urbanLifelineWeb/packages/workcase_wechat/unpackage/cache/.mp-weixin/.uts2js/cache/uts_601c3a05cc232ee487c6924d81c2b4b5dbd72e3f/code/cache/e16a6620e40c4484d1d09387699e8211c81e3d2c
+++ /dev/null
@@ -1 +0,0 @@
-{"code":"import { defineComponent as _defineComponent } from 'vue';\nimport { o as _o, toDisplayString as _toDisplayString, t as _t, n as _n, f as _f, unref as _unref, p as _p, gei as _gei, sei as _sei, e as _e } from \"vue\";\nconst __BINDING_COMPONENTS__ = '{\"WorkcaseCreator\":{\"name\":\"_unref(WorkcaseCreator)\",\"type\":\"setup\"}}';\nif (!Math) {\n (_unref(WorkcaseCreator))();\n}\nimport { ref, nextTick, onMounted } from 'vue';\nimport WorkcaseCreator from '@/components/WorkcaseCreator/WorkcaseCreator.uvue';\nimport {} from '@/types/workcase';\n// 响应式数据\nexport default /*#__PURE__*/ _defineComponent({\n __name: 'chatRoom',\n setup(__props) {\n const headerPaddingTop = ref(44);\n const headerTotalHeight = ref(88);\n const roomId = ref('');\n const workcaseId = ref('');\n const roomName = ref('聊天室');\n const inputText = ref('');\n const scrollTop = ref(0);\n const showWorkcaseCreator = ref(false);\n // 消息列表\n const messages = ref([\n {\n messageId: '1',\n roomId: 'room001',\n senderId: 'agent001',\n senderType: 'agent',\n senderName: '客服小张',\n content: '您好,我是客服小张,请问有什么可以帮助您的?',\n sendTime: '2024-12-17 16:00:00'\n },\n {\n messageId: '2',\n roomId: 'room001',\n senderId: 'guest001',\n senderType: 'guest',\n senderName: '李经理',\n content: '我们的设备出现了控制系统故障,无法正常启动',\n sendTime: '2024-12-17 16:02:00'\n },\n {\n messageId: '3',\n roomId: 'room001',\n senderId: 'agent001',\n senderType: 'agent',\n senderName: '客服小张',\n content: '好的,请问是哪个型号的设备?能否提供一下设备序列号?',\n sendTime: '2024-12-17 16:03:00'\n },\n {\n messageId: '4',\n roomId: 'room001',\n senderId: 'guest001',\n senderType: 'guest',\n senderName: '李经理',\n content: '型号是TH-500GF,序列号是TH20230501001',\n sendTime: '2024-12-17 16:05:00'\n },\n {\n messageId: '5',\n roomId: 'room001',\n senderId: 'agent001',\n senderType: 'agent',\n senderName: '客服小张',\n content: '好的,我已经记录了您的问题。建议您创建一个工单,我们会安排工程师尽快上门处理。',\n sendTime: '2024-12-17 16:08:00'\n }\n ]);\n // 生命周期\n onMounted(() => {\n uni.getSystemInfo(new UTSJSONObject({\n success: (res) => {\n try {\n const menuButtonInfo = uni.getMenuButtonBoundingClientRect();\n headerPaddingTop.value = menuButtonInfo.top;\n headerTotalHeight.value = menuButtonInfo.bottom + 8;\n }\n catch (e) {\n headerPaddingTop.value = res.statusBarHeight || 44;\n headerTotalHeight.value = (res.statusBarHeight || 44) + 44;\n }\n }\n }));\n // 获取页面参数\n const pages = getCurrentPages();\n const currentPage = pages[pages.length - 1];\n if (currentPage && currentPage.options) {\n roomId.value = currentPage.options.roomId || '';\n workcaseId.value = currentPage.options.workcaseId || '';\n }\n loadChatRoom();\n scrollToBottom();\n });\n // 加载聊天室\n function loadChatRoom() {\n uni.__f__('log', 'at pages/chatRoom/chatRoom/chatRoom.uvue:176', '加载聊天室:', roomId.value);\n // TODO: 调用 workcaseChatAPI.getChatRoomById() 获取聊天室信息\n // TODO: 调用 workcaseChatAPI.getChatMessagePage() 获取消息列表\n }\n // 格式化时间\n function formatTime(time = null) {\n if (!time)\n return '';\n const date = new Date(time);\n return `${date.getHours().toString().padStart(2, '0')}:${date.getMinutes().toString().padStart(2, '0')}`;\n }\n // 发送消息\n function sendMessage() {\n const text = inputText.value.trim();\n if (!text)\n return null;\n const newMsg = {\n messageId: Date.now().toString(),\n roomId: roomId.value,\n senderId: 'guest001',\n senderType: 'guest',\n senderName: '我',\n content: text,\n sendTime: new Date().toISOString()\n };\n messages.value.push(newMsg);\n inputText.value = '';\n nextTick(() => {\n scrollToBottom();\n });\n // TODO: 调用 workcaseChatAPI.sendMessage() 发送消息\n }\n // 滚动到底部\n function scrollToBottom() {\n scrollTop.value = 999999;\n }\n // 处理工单操作\n function handleWorkcaseAction() {\n if (workcaseId.value) {\n uni.navigateTo({\n url: `/pages/workcase/workcaseDetail/workcaseDetail?workcaseId=${workcaseId.value}`\n });\n }\n else {\n showWorkcaseCreator.value = true;\n }\n }\n // 隐藏工单创建器\n function hideCreator() {\n showWorkcaseCreator.value = false;\n }\n // 工单创建成功\n function onWorkcaseCreated(data = null) {\n hideCreator();\n workcaseId.value = data.workcaseId || 'new-workcase';\n uni.showToast({\n title: '工单创建成功',\n icon: 'success'\n });\n }\n // 发起会议\n function startMeeting() {\n uni.navigateTo({\n url: `/pages/meeting/Meeting/Meeting?roomId=${roomId.value}&workcaseId=${workcaseId.value}`\n });\n }\n // 返回上一页\n function goBack() {\n uni.navigateBack();\n }\n return (_ctx, _cache) => {\n \"raw js\";\n const __returned__ = _e({\n a: _o(goBack),\n b: _t(roomName.value),\n c: _t(workcaseId.value ? '查看工单' : '创建工单'),\n d: _o(handleWorkcaseAction),\n e: _o(startMeeting),\n f: headerPaddingTop.value + 'px',\n g: headerTotalHeight.value + 'px',\n h: _f(messages.value, (msg, index, i0) => {\n return _e({\n a: msg.senderType !== 'guest'\n }, msg.senderType !== 'guest' ? {\n b: _t(msg.senderName?.charAt(0) || '客'),\n c: _t(msg.senderName || '客服'),\n d: _t(msg.content),\n e: _t(formatTime(msg.sendTime))\n } : {\n f: _t(msg.content),\n g: _t(formatTime(msg.sendTime))\n }, {\n h: index,\n i: _n(msg.senderType === 'guest' ? 'self' : 'other')\n });\n }),\n i: scrollTop.value,\n j: headerTotalHeight.value + 'px',\n k: _o(sendMessage),\n l: inputText.value,\n m: _o($event => { return inputText.value = $event.detail.value; }),\n n: _o(sendMessage),\n o: showWorkcaseCreator.value\n }, showWorkcaseCreator.value ? {\n p: _o(hideCreator),\n q: _o(onWorkcaseCreated),\n r: _p({\n show: showWorkcaseCreator.value\n })\n } : {}, {\n s: _sei(_gei(_ctx, ''), 'view')\n });\n return __returned__;\n };\n }\n});\n//# sourceMappingURL=F:/Project/urbanLifeline/urbanLifelineWeb/packages/workcase_wechat/pages/chatRoom/chatRoom/chatRoom.uvue?vue&type=script&setup=true&lang.uts.js.map","references":["F:/IDE/HBuilderX/plugins/uniapp-cli-vite/node_modules/@vue/runtime-core/dist/runtime-core.d.ts","F:/IDE/HBuilderX/plugins/uniapp-cli-vite/node_modules/@vue/runtime-core/dist/runtime-core.d.ts","F:/IDE/HBuilderX/plugins/uniapp-cli-vite/node_modules/@vue/runtime-core/dist/runtime-core.d.ts","F:/Project/urbanLifeline/urbanLifelineWeb/packages/workcase_wechat/components/WorkcaseCreator/WorkcaseCreator.uvue.ts","F:/Project/urbanLifeline/urbanLifelineWeb/packages/workcase_wechat/types/workcase/index.ts"],"uniExtApis":["uni.getMenuButtonBoundingClientRect","uni.getSystemInfo","uni.__f__","uni.navigateTo","uni.showToast","uni.navigateBack"],"map":"{\"version\":3,\"file\":\"chatRoom.uvue?vue&type=script&setup=true&lang.uts.js\",\"sourceRoot\":\"\",\"sources\":[\"chatRoom.uvue?vue&type=script&setup=true&lang.uts\"],\"names\":[],\"mappings\":\"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\"}"}