完善ai问诊页面样式
This commit is contained in:
@@ -1,152 +1,174 @@
|
|||||||
<!-- 机构端 - AI问诊页面 -->
|
<!-- 机构端 - AI问诊页面 -->
|
||||||
<template>
|
<template>
|
||||||
<view class="ai-page">
|
<view class="ai-page">
|
||||||
<!-- #ifdef MP-WEIXIN -->
|
<!-- ===== 顶部固定区 ===== -->
|
||||||
<view class="detail-navbar">
|
<view class="top-fixed">
|
||||||
<view class="detail-navbar-back" @click="uni.navigateBack()">
|
<!-- #ifdef MP-WEIXIN -->
|
||||||
<text class="back-arrow">‹</text>
|
<view class="detail-navbar">
|
||||||
<text class="back-text">返回</text>
|
<view class="detail-navbar-back" @click="uni.navigateBack()">
|
||||||
</view>
|
<text class="back-arrow">‹</text>
|
||||||
<text class="detail-navbar-title">AI问诊</text>
|
<text class="back-text">返回</text>
|
||||||
<view style="width: 120rpx;"></view>
|
|
||||||
</view>
|
|
||||||
<!-- #endif -->
|
|
||||||
|
|
||||||
<!-- 高风险提示横幅(始终显示) -->
|
|
||||||
<view class="risk-banner">
|
|
||||||
<text class="risk-banner-icon">⚠️</text>
|
|
||||||
<text class="risk-banner-text">AI问诊仅供参考,不能代替专业医生诊断,紧急情况请立即拨打120</text>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<!-- 症状快捷选择 -->
|
|
||||||
<view v-if="!hasConversation" class="quick-select-area">
|
|
||||||
<text class="qs-title">请选择主要症状(可多选)</text>
|
|
||||||
<view class="qs-tags">
|
|
||||||
<view
|
|
||||||
v-for="sym in symptomOptions"
|
|
||||||
:key="sym"
|
|
||||||
class="qs-tag"
|
|
||||||
:class="selectedSymptoms.includes(sym) ? 'qs-tag-selected' : ''"
|
|
||||||
@click="toggleSymptom(sym)"
|
|
||||||
>
|
|
||||||
{{ sym }}
|
|
||||||
</view>
|
</view>
|
||||||
|
<text class="detail-navbar-title">AI问诊</text>
|
||||||
|
<view style="width: 120rpx;"></view>
|
||||||
</view>
|
</view>
|
||||||
<view v-if="selectedSymptoms.length > 0" class="qs-confirm-row">
|
<!-- #endif -->
|
||||||
<view class="qs-confirm-btn" @click="startWithSymptoms">开始问诊</view>
|
|
||||||
|
<!-- 高风险提示横幅(始终显示) -->
|
||||||
|
<view class="risk-banner">
|
||||||
|
<text class="risk-banner-icon">⚠️</text>
|
||||||
|
<text class="risk-banner-text">AI问诊仅供参考,不能代替专业医生诊断,紧急情况请立即拨打120</text>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<!-- 对话区域 -->
|
<!-- ===== 中间自适应聊天区 ===== -->
|
||||||
<scroll-view
|
<view class="middle-flex">
|
||||||
class="chat-scroll"
|
<scroll-view
|
||||||
direction="vertical"
|
class="chat-scroll"
|
||||||
:scroll-into-view="lastMsgId"
|
direction="vertical"
|
||||||
:scroll-with-animation="true"
|
:scroll-into-view="lastMsgId"
|
||||||
>
|
:scroll-with-animation="true"
|
||||||
<!-- 欢迎提示 -->
|
|
||||||
<view class="welcome-msg" v-if="messages.length === 0 && !hasConversation">
|
|
||||||
<view class="welcome-avatar">🤖</view>
|
|
||||||
<view class="welcome-bubble">
|
|
||||||
<text class="welcome-title">您好!我是医养AI助手</text>
|
|
||||||
<text class="welcome-desc">我可以帮助您初步了解用户症状、进行健康风险评估,以及提供护理建议。请选择上方症状或直接输入描述。</text>
|
|
||||||
<text class="welcome-disclaimer">⚠ 本工具仅供辅助参考,最终诊疗请遵循医嘱。</text>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<!-- 消息列表 -->
|
|
||||||
<view
|
|
||||||
v-for="(msg, idx) in messages"
|
|
||||||
:key="idx"
|
|
||||||
:id="'msg-' + idx"
|
|
||||||
class="msg-row"
|
|
||||||
:class="msg.role === 'user' ? 'msg-row-right' : 'msg-row-left'"
|
|
||||||
>
|
>
|
||||||
<!-- AI头像 -->
|
<!-- 症状快捷选择(在聊天区顶部,随聊天区滚动) -->
|
||||||
<view v-if="msg.role === 'ai'" class="msg-avatar ai-avatar">🤖</view>
|
<view v-if="!hasConversation" class="quick-select-area">
|
||||||
|
<text class="qs-title">请选择主要症状(可多选)</text>
|
||||||
<view class="msg-bubble-wrap" :class="msg.role === 'user' ? 'mbw-right' : 'mbw-left'">
|
<view class="qs-tags">
|
||||||
<!-- 高风险提醒卡片 -->
|
|
||||||
<view v-if="msg.riskLevel === 'high'" class="risk-card">
|
|
||||||
<view class="risk-card-header">
|
|
||||||
<text class="risk-card-icon">🚨</text>
|
|
||||||
<text class="risk-card-title">高风险提示</text>
|
|
||||||
</view>
|
|
||||||
<text class="risk-card-body">{{ msg.content }}</text>
|
|
||||||
<view class="risk-card-actions">
|
|
||||||
<view class="risk-action-btn rca-call" @click="callEmergency">一键拨打120</view>
|
|
||||||
<view class="risk-action-btn rca-notify" @click="notifyFamily">通知家属</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<!-- 普通气泡 -->
|
|
||||||
<view v-else class="msg-bubble" :class="msg.role === 'user' ? 'bubble-user' : 'bubble-ai'">
|
|
||||||
<text class="msg-text">{{ msg.content }}</text>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<!-- 建议操作列表(AI回复带操作) -->
|
|
||||||
<view v-if="msg.suggestions && msg.suggestions.length > 0" class="suggestion-list">
|
|
||||||
<view
|
<view
|
||||||
v-for="sug in msg.suggestions"
|
v-for="sym in symptomOptions"
|
||||||
:key="sug"
|
:key="sym"
|
||||||
class="suggestion-item"
|
class="qs-tag"
|
||||||
@click="sendMessage(sug)"
|
:class="selectedSymptoms.includes(sym) ? 'qs-tag-selected' : ''"
|
||||||
|
@click="toggleSymptom(sym)"
|
||||||
>
|
>
|
||||||
{{ sug }}
|
{{ sym }}
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
<view v-if="selectedSymptoms.length > 0" class="qs-confirm-row">
|
||||||
|
<view class="qs-confirm-btn" @click="startWithSymptoms">开始问诊</view>
|
||||||
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<!-- 用户头像 -->
|
<!-- 欢迎提示 -->
|
||||||
<view v-if="msg.role === 'user'" class="msg-avatar user-avatar">👩⚕️</view>
|
<view class="welcome-msg" v-if="messages.length === 0 && !hasConversation">
|
||||||
</view>
|
<view class="welcome-avatar">🤖</view>
|
||||||
|
<view class="welcome-bubble">
|
||||||
<!-- AI加载中 -->
|
<text class="welcome-title">您好!我是医养AI助手</text>
|
||||||
<view v-if="isLoading" class="msg-row msg-row-left">
|
<text class="welcome-desc">我可以帮助您初步了解用户症状、进行健康风险评估,以及提供护理建议。请选择上方症状或直接输入描述。</text>
|
||||||
<view class="msg-avatar ai-avatar">🤖</view>
|
<text class="welcome-disclaimer">⚠ 本工具仅供辅助参考,最终诊疗请遵循医嘱。</text>
|
||||||
<view class="loading-bubble">
|
</view>
|
||||||
<view class="loading-dot"></view>
|
|
||||||
<view class="loading-dot"></view>
|
|
||||||
<view class="loading-dot"></view>
|
|
||||||
</view>
|
</view>
|
||||||
</view>
|
|
||||||
|
|
||||||
<view id="msg-bottom" style="height: 20rpx;"></view>
|
<!-- 消息列表 -->
|
||||||
</scroll-view>
|
|
||||||
|
|
||||||
<!-- 快捷问题(有对话后显示) -->
|
|
||||||
<view v-if="hasConversation && quickReplies.length > 0" class="quick-replies">
|
|
||||||
<scroll-view direction="horizontal" class="qr-scroll">
|
|
||||||
<view
|
<view
|
||||||
v-for="qr in quickReplies"
|
v-for="(msg, idx) in messages"
|
||||||
:key="qr"
|
:key="idx"
|
||||||
class="qr-chip"
|
:id="'msg-' + idx"
|
||||||
@click="sendMessage(qr)"
|
class="msg-row"
|
||||||
|
:class="msg.role === 'user' ? 'msg-row-right' : 'msg-row-left'"
|
||||||
>
|
>
|
||||||
{{ qr }}
|
<!-- AI头像 -->
|
||||||
|
<view v-if="msg.role === 'ai'" class="msg-avatar ai-avatar">🤖</view>
|
||||||
|
|
||||||
|
<view class="msg-bubble-wrap" :class="msg.role === 'user' ? 'mbw-right' : 'mbw-left'">
|
||||||
|
<!-- 高风险提醒卡片 -->
|
||||||
|
<view v-if="msg.riskLevel === 'high'" class="risk-card">
|
||||||
|
<view class="risk-card-header">
|
||||||
|
<text class="risk-card-icon">🚨</text>
|
||||||
|
<text class="risk-card-title">高风险提示</text>
|
||||||
|
</view>
|
||||||
|
<text class="risk-card-body">{{ msg.content }}</text>
|
||||||
|
<view class="risk-card-actions">
|
||||||
|
<view class="risk-action-btn rca-call" @click="callEmergency">一键拨打120</view>
|
||||||
|
<view class="risk-action-btn rca-notify" @click="notifyFamily">通知家属</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<!-- 普通气泡 -->
|
||||||
|
<view v-else class="msg-bubble" :class="msg.role === 'user' ? 'bubble-user' : 'bubble-ai'">
|
||||||
|
<text class="msg-text">{{ msg.content }}</text>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<!-- 建议操作列表(AI回复带操作) -->
|
||||||
|
<view v-if="msg.suggestions && msg.suggestions.length > 0" class="suggestion-list">
|
||||||
|
<view
|
||||||
|
v-for="sug in msg.suggestions"
|
||||||
|
:key="sug"
|
||||||
|
class="suggestion-item"
|
||||||
|
@click="sendMessage(sug)"
|
||||||
|
>
|
||||||
|
{{ sug }}
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<!-- 用户头像 -->
|
||||||
|
<view v-if="msg.role === 'user'" class="msg-avatar user-avatar">👩⚕️</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
|
<!-- AI加载中 -->
|
||||||
|
<view v-if="isLoading" class="msg-row msg-row-left">
|
||||||
|
<view class="msg-avatar ai-avatar">🤖</view>
|
||||||
|
<view class="loading-bubble">
|
||||||
|
<view class="loading-dot"></view>
|
||||||
|
<view class="loading-dot"></view>
|
||||||
|
<view class="loading-dot"></view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<view id="msg-bottom" style="height: 20rpx;"></view>
|
||||||
</scroll-view>
|
</scroll-view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<!-- 输入区 -->
|
<!-- ===== 底部固定区 ===== -->
|
||||||
<view class="input-bar">
|
<view class="bottom-fixed">
|
||||||
<view class="input-bar-inner">
|
<!-- 快捷问题模块 -->
|
||||||
<input
|
<view v-if="quickReplies.length > 0" class="quick-replies">
|
||||||
class="chat-input"
|
<view class="quick-replies-header" @click="toggleQuickReplies">
|
||||||
v-model="inputText"
|
<view class="qr-header-left">
|
||||||
placeholder="描述症状或询问护理建议..."
|
<text class="qr-header-icon">💬</text>
|
||||||
:confirm-type="'send'"
|
<text class="qr-title">快捷问题</text>
|
||||||
@confirm="onSend"
|
</view>
|
||||||
:maxlength="200"
|
<view class="qr-toggle">
|
||||||
/>
|
<text class="qr-toggle-text">{{ quickRepliesExpanded ? '收起' : '展开' }}</text>
|
||||||
<view class="send-btn" :class="inputText.trim() ? 'send-btn-active' : ''" @click="onSend">
|
<text class="qr-toggle-icon">{{ quickRepliesExpanded ? '▾' : '▸' }}</text>
|
||||||
发送
|
</view>
|
||||||
|
</view>
|
||||||
|
<view v-if="quickRepliesExpanded" class="quick-replies-body">
|
||||||
|
<scroll-view class="qr-scroll" :scroll-x="true" :scroll-y="false">
|
||||||
|
<view class="qr-scroll-inner">
|
||||||
|
<view
|
||||||
|
v-for="qr in quickReplies"
|
||||||
|
:key="qr"
|
||||||
|
class="qr-chip"
|
||||||
|
@click="sendMessage(qr)"
|
||||||
|
>
|
||||||
|
{{ qr }}
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</scroll-view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="input-actions">
|
|
||||||
<view class="ia-btn" @click="clearConversation">清空对话</view>
|
<!-- 输入区 -->
|
||||||
<view class="ia-btn" @click="exportRecord">导出记录</view>
|
<view class="input-bar">
|
||||||
<view class="ia-btn ia-btn-primary" @click="referToDoctor">转诊医生</view>
|
<view class="input-bar-inner">
|
||||||
|
<input
|
||||||
|
class="chat-input"
|
||||||
|
v-model="inputText"
|
||||||
|
placeholder="描述症状或询问护理建议..."
|
||||||
|
:confirm-type="'send'"
|
||||||
|
@confirm="onSend"
|
||||||
|
:maxlength="200"
|
||||||
|
/>
|
||||||
|
<view class="send-btn" :class="inputText.trim() ? 'send-btn-active' : ''" @click="onSend">
|
||||||
|
发送
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="input-actions">
|
||||||
|
<view class="ia-btn" @click="clearConversation">清空对话</view>
|
||||||
|
<view class="ia-btn" @click="exportRecord">导出记录</view>
|
||||||
|
<view class="ia-btn ia-btn-primary" @click="referToDoctor">转诊医生</view>
|
||||||
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
@@ -194,7 +216,8 @@
|
|||||||
lastMsgId: '' as string,
|
lastMsgId: '' as string,
|
||||||
selectedSymptoms: [] as string[],
|
selectedSymptoms: [] as string[],
|
||||||
symptomOptions: ['头晕', '胸痛', '发烧', '呼吸困难', '腹痛', '跌倒', '意识模糊', '血压异常', '血糖异常', '情绪异常'] as string[],
|
symptomOptions: ['头晕', '胸痛', '发烧', '呼吸困难', '腹痛', '跌倒', '意识模糊', '血压异常', '血糖异常', '情绪异常'] as string[],
|
||||||
quickReplies: ['症状加重了', '需要上门服务', '联系家属', '转诊医生', '今日用药'] as string[]
|
quickReplies: ['症状加重了', '需要上门服务', '联系家属', '转诊医生', '今日用药'] as string[],
|
||||||
|
quickRepliesExpanded: false as boolean
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
@@ -282,11 +305,16 @@
|
|||||||
this.messages = []
|
this.messages = []
|
||||||
this.hasConversation = false
|
this.hasConversation = false
|
||||||
this.lastMsgId = ''
|
this.lastMsgId = ''
|
||||||
|
this.quickRepliesExpanded = false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
|
toggleQuickReplies() {
|
||||||
|
this.quickRepliesExpanded = !this.quickRepliesExpanded
|
||||||
|
},
|
||||||
|
|
||||||
exportRecord() {
|
exportRecord() {
|
||||||
uni.showToast({ title: '导出功能开发中', icon: 'none' })
|
uni.showToast({ title: '导出功能开发中', icon: 'none' })
|
||||||
},
|
},
|
||||||
@@ -309,9 +337,34 @@
|
|||||||
<style>
|
<style>
|
||||||
.ai-page {
|
.ai-page {
|
||||||
background-color: #f0f2f7;
|
background-color: #f0f2f7;
|
||||||
min-height: 100vh;
|
height: 100vh;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ===== 三段式布局容器 ===== */
|
||||||
|
.top-fixed {
|
||||||
|
flex: none;
|
||||||
|
z-index: 10;
|
||||||
|
background-color: #f0f2f7;
|
||||||
|
}
|
||||||
|
|
||||||
|
.middle-flex {
|
||||||
|
flex: 1;
|
||||||
|
min-height: 0;
|
||||||
|
overflow: hidden;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
}
|
||||||
|
|
||||||
|
.bottom-fixed {
|
||||||
|
flex: none;
|
||||||
|
z-index: 10;
|
||||||
|
background-color: #ffffff;
|
||||||
|
border-top-width: 1rpx;
|
||||||
|
border-top-style: solid;
|
||||||
|
border-top-color: #eeeeee;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ===== 导航栏 ===== */
|
/* ===== 导航栏 ===== */
|
||||||
@@ -444,7 +497,9 @@
|
|||||||
/* ===== 聊天滚动区 ===== */
|
/* ===== 聊天滚动区 ===== */
|
||||||
.chat-scroll {
|
.chat-scroll {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
|
width: 100%;
|
||||||
padding: 20rpx 0;
|
padding: 20rpx 0;
|
||||||
|
box-sizing: border-box;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ===== 欢迎消息 ===== */
|
/* ===== 欢迎消息 ===== */
|
||||||
@@ -686,34 +741,98 @@
|
|||||||
margin: 0 4rpx;
|
margin: 0 4rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ===== 快捷回复 ===== */
|
/* ===== 快捷问题模块 ===== */
|
||||||
.quick-replies {
|
.quick-replies {
|
||||||
background-color: #ffffff;
|
flex: none;
|
||||||
|
background-color: #f8f9ff;
|
||||||
border-top-width: 1rpx;
|
border-top-width: 1rpx;
|
||||||
border-top-style: solid;
|
border-top-style: solid;
|
||||||
border-top-color: #f0f0f0;
|
border-top-color: #dde3f8;
|
||||||
|
}
|
||||||
|
|
||||||
|
.quick-replies-header {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: space-between;
|
||||||
|
padding: 16rpx 24rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.qr-header-left {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.qr-header-icon {
|
||||||
|
font-size: 26rpx;
|
||||||
|
margin-right: 10rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.qr-title {
|
||||||
|
font-size: 26rpx;
|
||||||
|
font-weight: 600;
|
||||||
|
color: #444444;
|
||||||
|
}
|
||||||
|
|
||||||
|
.qr-toggle {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
align-items: center;
|
||||||
|
background-color: rgb(66,121,240);
|
||||||
|
border-radius: 24rpx;
|
||||||
|
padding: 8rpx 20rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.qr-toggle-text {
|
||||||
|
font-size: 22rpx;
|
||||||
|
color: #ffffff;
|
||||||
|
margin-right: 6rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.qr-toggle-icon {
|
||||||
|
font-size: 24rpx;
|
||||||
|
color: #ffffff;
|
||||||
|
line-height: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.quick-replies-body {
|
||||||
|
padding-bottom: 12rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.qr-scroll {
|
.qr-scroll {
|
||||||
white-space: nowrap;
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.qr-scroll-inner {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
flex-wrap: nowrap;
|
||||||
|
align-items: center;
|
||||||
|
padding: 0 16rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.qr-chip {
|
.qr-chip {
|
||||||
display: inline-flex;
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
align-items: center;
|
||||||
|
flex-shrink: 0;
|
||||||
font-size: 24rpx;
|
font-size: 24rpx;
|
||||||
color: rgb(66,121,240);
|
color: rgb(66,121,240);
|
||||||
background-color: #eef2fe;
|
background-color: #ffffff;
|
||||||
border-radius: 20rpx;
|
border-width: 1rpx;
|
||||||
padding: 10rpx 24rpx;
|
border-style: solid;
|
||||||
margin: 12rpx 8rpx;
|
border-color: rgb(66,121,240);
|
||||||
|
border-radius: 24rpx;
|
||||||
|
padding: 10rpx 28rpx;
|
||||||
|
margin: 0 8rpx;
|
||||||
|
height: 60rpx;
|
||||||
|
line-height: 60rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ===== 输入区 ===== */
|
/* ===== 输入区 ===== */
|
||||||
.input-bar {
|
.input-bar {
|
||||||
background-color: #ffffff;
|
background-color: #ffffff;
|
||||||
border-top-width: 1rpx;
|
|
||||||
border-top-style: solid;
|
|
||||||
border-top-color: #eeeeee;
|
|
||||||
padding-bottom: env(safe-area-inset-bottom);
|
padding-bottom: env(safe-area-inset-bottom);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
|
|||||||
{"code":"import { defineComponent } from \"vue\";\nimport { mockService, LogisticsConstants } from \"./mock-service\";\nexport default defineComponent({\n data() {\n return {\n isTestMode: mockService.isTestMode,\n config: new UTSJSONObject({\n mockUrl: mockService.mockUrl,\n webhookSecret: '********',\n autoPush: mockService.autoPush\n }),\n carriers: LogisticsConstants.CARRIERS.map((c) => {\n return new UTSJSONObject({\n name: c['label'],\n code: c['value'],\n enabled: true,\n callback_status: true,\n polling: false\n });\n })\n };\n },\n methods: {\n goBack() {\n uni.navigateBack();\n },\n toggleTestMode(e = null) {\n const val = e.detail.value;\n this.isTestMode = val;\n mockService.isTestMode = val; // 同步到 Mock 服务\n },\n onScenarioChange(e = null) {\n const isAuto = e.detail.value.includes('auto');\n this.config.autoPush = isAuto;\n mockService.autoPush = isAuto; // 同步到 Mock 服务\n },\n saveConfig() {\n uni.showLoading({ title: '保存中...' });\n setTimeout(() => {\n mockService.mockUrl = this.config.mockUrl;\n uni.hideLoading();\n uni.showToast({ title: '全局配置已同步' });\n }, 1000);\n }\n }\n});\n//# sourceMappingURL=D:/%E9%AA%85%E9%94%8B/%E5%8C%BB%E7%96%97/pages/mall/delivery/test/platform-config-center.uvue?vue&type=script&uts=true&lang.uts.js.map","references":[],"uniExtApis":["uni.navigateBack","uni.showLoading","uni.hideLoading","uni.showToast"],"map":"{\"version\":3,\"file\":\"platform-config-center.uvue?vue&type=script&uts=true&lang.uts.js\",\"sourceRoot\":\"\",\"sources\":[\"platform-config-center.uvue?vue&type=script&uts=true&lang.uts\"],\"names\":[],\"mappings\":\";OACQ,EAAE,WAAW,EAAE,kBAAkB,EAAE;AAE1C,+BAAe;IACd,IAAI;QACH,OAAO;YACN,UAAU,EAAE,WAAW,CAAC,UAAU;YAClC,MAAM,oBAAE;gBACP,OAAO,EAAE,WAAW,CAAC,OAAO;gBAC5B,aAAa,EAAE,UAAU;gBACzB,QAAQ,EAAE,WAAW,CAAC,QAAQ;aAC9B,CAAA;YACD,QAAQ,EAAE,kBAAkB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAiB;gBAC3D,yBAAO;oBACN,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC;oBAChB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC;oBAChB,OAAO,EAAE,IAAI;oBACb,eAAe,EAAE,IAAI;oBACrB,OAAO,EAAE,KAAK;iBACG,EAAA;YACnB,CAAC,CAAC;SACF,CAAA;IACF,CAAC;IACD,OAAO,EAAE;QACR,MAAM;YACL,GAAG,CAAC,YAAY,EAAE,CAAA;QACnB,CAAC;QACD,cAAc,CAAC,QAAM;YACpB,MAAM,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,KAAgB,CAAA;YACrC,IAAI,CAAC,UAAU,GAAG,GAAG,CAAA;YACrB,WAAW,CAAC,UAAU,GAAG,GAAG,CAAA,CAAC,cAAc;QAC5C,CAAC;QACD,gBAAgB,CAAC,QAAM;YACtB,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;YAC9C,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAA;YAC7B,WAAW,CAAC,QAAQ,GAAG,MAAM,CAAA,CAAC,cAAc;QAC7C,CAAC;QACD,UAAU;YACT,GAAG,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;YACpC,UAAU,CAAC;gBACV,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAA;gBACzC,GAAG,CAAC,WAAW,EAAE,CAAA;gBACjB,GAAG,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;YACpC,CAAC,EAAE,IAAI,CAAC,CAAA;QACT,CAAC;KACD;CACD,EAAA\"}"}
|
|
||||||
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
|
|||||||
{"code":"import {} from \"vue\";\nimport { setIsLoggedIn, setUserProfile, getCurrentUser } from \"@/utils/store\";\nimport supa from \"@/components/supadb/aksupainstance\";\nexport default defineComponent({\n onLaunch: function () {\n uni.__f__('log', 'at App.uvue:7', 'App Launch');\n // 检查是否已有有效会话,有则恢复登录状态\n this.checkExistingSession();\n },\n onShow: function () {\n uni.__f__('log', 'at App.uvue:13', 'App Show');\n },\n onHide: function () {\n uni.__f__('log', 'at App.uvue:16', 'App Hide');\n },\n methods: {\n checkExistingSession: function () {\n // 检查是否已有有效会话\n const session = supa.getSession();\n if (session.user != null) {\n uni.__f__('log', 'at App.uvue:23', '已有有效会话,恢复登录状态');\n setIsLoggedIn(true);\n uni.reLaunch({ url: '/pages/mall/merchant/index' });\n return null;\n }\n // 检查本地存储的登录状态\n const savedUserId = uni.getStorageSync('user_id');\n if (savedUserId != null && savedUserId != '') {\n uni.__f__('log', 'at App.uvue:40', '本地存储中有用户ID,尝试恢复会话');\n getCurrentUser().then((profile = null) => {\n if (profile != null) {\n uni.__f__('log', 'at App.uvue:43', '会话恢复成功');\n setIsLoggedIn(true);\n uni.reLaunch({ url: '/pages/mall/merchant/index' });\n }\n }).catch(() => {\n uni.__f__('log', 'at App.uvue:56', '会话恢复失败,需要重新登录');\n });\n }\n // 没有有效会话,显示登录页\n uni.__f__('log', 'at App.uvue:61', '无有效会话,显示登录页');\n }\n }\n});\n//# sourceMappingURL=D:/%E9%AA%85%E9%94%8B/%E5%8C%BB%E7%96%97/App.uvue?vue&type=script&lang.uts.js.map","references":[],"uniExtApis":["uni.__f__","uni.reLaunch","uni.getStorageSync"],"map":"{\"version\":3,\"file\":\"App.uvue?vue&type=script&lang.uts.js\",\"sourceRoot\":\"\",\"sources\":[\"App.uvue?vue&type=script&lang.uts\"],\"names\":[],\"mappings\":\";OACQ,EAAE,aAAa,EAAE,cAAc,EAAE,cAAc,EAAE;OACjD,IAAI;AAEX,+BAAe;IACd,QAAQ,EAAE;QACT,GAAG,CAAC,KAAK,CAAC,KAAK,EAAC,eAAe,EAAC,YAAY,CAAC,CAAA;QAE7C,sBAAsB;QACtB,IAAI,CAAC,oBAAoB,EAAE,CAAA;IAC5B,CAAC;IACD,MAAM,EAAE;QACP,GAAG,CAAC,KAAK,CAAC,KAAK,EAAC,gBAAgB,EAAC,UAAU,CAAC,CAAA;IAC7C,CAAC;IACD,MAAM,EAAE;QACP,GAAG,CAAC,KAAK,CAAC,KAAK,EAAC,gBAAgB,EAAC,UAAU,CAAC,CAAA;IAC7C,CAAC;IACD,OAAO,EAAE;QACR,oBAAoB,EAAE;YACrB,aAAa;YACb,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAA;YACjC,IAAI,OAAO,CAAC,IAAI,IAAI,IAAI,EAAE;gBACzB,GAAG,CAAC,KAAK,CAAC,KAAK,EAAC,gBAAgB,EAAC,eAAe,CAAC,CAAA;gBACjD,aAAa,CAAC,IAAI,CAAC,CAAA;gBAKnB,GAAG,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,4BAA4B,EAAE,CAAC,CAAA;gBAKnD,YAAM;aACN;YAED,cAAc;YACd,MAAM,WAAW,GAAG,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC,CAAA;YACjD,IAAI,WAAW,IAAI,IAAI,IAAI,WAAW,IAAI,EAAE,EAAE;gBAC7C,GAAG,CAAC,KAAK,CAAC,KAAK,EAAC,gBAAgB,EAAC,mBAAmB,CAAC,CAAA;gBACrD,cAAc,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,OAAA;oBAC7B,IAAI,OAAO,IAAI,IAAI,EAAE;wBACpB,GAAG,CAAC,KAAK,CAAC,KAAK,EAAC,gBAAgB,EAAC,QAAQ,CAAC,CAAA;wBAC1C,aAAa,CAAC,IAAI,CAAC,CAAA;wBAKnB,GAAG,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,4BAA4B,EAAE,CAAC,CAAA;qBAKnD;gBACF,CAAC,CAAC,CAAC,KAAK,CAAC;oBACR,GAAG,CAAC,KAAK,CAAC,KAAK,EAAC,gBAAgB,EAAC,eAAe,CAAC,CAAA;gBAClD,CAAC,CAAC,CAAA;aACF;YAED,eAAe;YACf,GAAG,CAAC,KAAK,CAAC,KAAK,EAAC,gBAAgB,EAAC,aAAa,CAAC,CAAA;QAChD,CAAC;KACD;CACD,EAAA\"}"}
|
|
||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
|
|||||||
{"code":"import { defineComponent } from \"vue\";\nimport supa from \"@/components/supadb/aksupainstance\";\nimport { IS_TEST_MODE } from \"@/ak/config\";\nexport default defineComponent({\n onLoad() {\n // 启动页:根据登录态重定向\n this.checkAndRedirect();\n },\n onShow() {\n // 启动页仅在首次进入时做一次跳转,避免影响 H5 手动输入 URL\n },\n methods: {\n checkAndRedirect() {\n uni.__f__('log', 'at pages/user/boot.uvue:40', 'boot: start redirect check');\n if (IS_TEST_MODE) {\n // 测试阶段:不做强制重定向,保留你手动输入的 URL / 目标页面\n return null;\n }\n let isLoggedIn = false;\n try {\n const sessionInfo = supa.getSession();\n isLoggedIn = sessionInfo != null && sessionInfo.user != null;\n }\n catch (e) {\n uni.__f__('error', 'at pages/user/boot.uvue:52', 'boot: error checking session', e);\n }\n // 微信小程序 → merchant 商家端\n if (isLoggedIn) {\n uni.reLaunch({ url: '/pages/mall/merchant/index' });\n }\n else {\n uni.reLaunch({ url: '/pages/user/login' });\n }\n }\n }\n});\n//# sourceMappingURL=D:/%E9%AA%85%E9%94%8B/%E5%8C%BB%E7%96%97/pages/user/boot.uvue?vue&type=script&lang.uts.js.map","references":[],"uniExtApis":["uni.__f__","uni.reLaunch"],"map":"{\"version\":3,\"file\":\"boot.uvue?vue&type=script&lang.uts.js\",\"sourceRoot\":\"\",\"sources\":[\"boot.uvue?vue&type=script&lang.uts\"],\"names\":[],\"mappings\":\";OACQ,IAAI;OACJ,EAAE,YAAY,EAAE;AAEvB,+BAAe;IACd,MAAM;QACL,eAAe;QACf,IAAI,CAAC,gBAAgB,EAAE,CAAC;IACzB,CAAC;IACD,MAAM;QACL,mCAAmC;IACpC,CAAC;IACD,OAAO,EAAE;QACR,gBAAgB;YACf,GAAG,CAAC,KAAK,CAAC,KAAK,EAAC,4BAA4B,EAAC,4BAA4B,CAAC,CAAA;YAE1E,IAAI,YAAY,EAAE;gBACjB,mCAAmC;gBACnC,YAAM;aACN;YAED,IAAI,UAAU,GAAG,KAAK,CAAA;YACtB,IAAI;gBACH,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE,CAAA;gBACrC,UAAU,GAAG,WAAW,IAAI,IAAI,IAAI,WAAW,CAAC,IAAI,IAAI,IAAI,CAAA;aAC5D;YAAC,OAAO,CAAC,EAAE;gBACX,GAAG,CAAC,KAAK,CAAC,OAAO,EAAC,4BAA4B,EAAC,8BAA8B,EAAE,CAAC,CAAC,CAAA;aACjF;YAYD,uBAAuB;YACvB,IAAI,UAAU,EAAE;gBACf,GAAG,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,4BAA4B,EAAE,CAAC,CAAA;aACnD;iBAAM;gBACN,GAAG,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAA;aAC1C;QAWF,CAAC;KACD;CACD,EAAC\"}"}
|
|
||||||
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
|
|||||||
{"code":"import { defineComponent } from \"vue\";\nexport default defineComponent({\n data() {\n return {\n keyword: '',\n searched: false\n };\n },\n methods: {\n onInput(e) {\n this.keyword = e.detail.value;\n },\n doSearch() {\n if (!this.keyword.trim())\n return null;\n this.searched = true;\n }\n }\n});\n//# sourceMappingURL=D:/%E9%AA%85%E9%94%8B/%E5%8C%BB%E7%96%97/pages/mall/merchant/search.uvue?vue&type=script&lang.uts.js.map","references":[],"uniExtApis":[],"map":"{\"version\":3,\"file\":\"search.uvue?vue&type=script&lang.uts.js\",\"sourceRoot\":\"\",\"sources\":[\"search.uvue?vue&type=script&lang.uts\"],\"names\":[],\"mappings\":\";AACC,+BAAe;IACd,IAAI;QACH,OAAO;YACN,OAAO,EAAE,EAAY;YACrB,QAAQ,EAAE,KAAgB;SAC1B,CAAA;IACF,CAAC;IACD,OAAO,EAAE;QACR,OAAO,CAAC,CAAc;YACrB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAA;QAC9B,CAAC;QACD,QAAQ;YACP,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;gBAAE,YAAM;YAChC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;QACrB,CAAC;KACD;CACD,EAAA\"}"}
|
|
||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
|
|||||||
{"code":"import { defineComponent as _defineComponent } from 'vue';\nimport { unref as _unref, gei as _gei, sei as _sei } from \"vue\";\nconst __BINDING_COMPONENTS__ = '{\"AdminLayout\":{\"name\":\"_unref(AdminLayout)\",\"type\":\"setup\"}}';\nif (!Math) {\n (_unref(AdminLayout))();\n}\nimport { ref, onMounted } from 'vue';\nimport AdminLayout from '@/layouts/admin/AdminLayout.uvue';\nexport default /*#__PURE__*/ _defineComponent({\n __name: 'index',\n setup(__props) {\n const title = ref('管理后台首页');\n onMounted(() => {\n uni.__f__('log', 'at pages/mall/admin/homePage/index.uvue:15', '首页加载完成');\n uni.__f__('log', 'at pages/mall/admin/homePage/index.uvue:16', '首页显示');\n });\n return (_ctx, _cache) => {\n \"raw js\";\n const __returned__ = {\n a: _sei(_gei(_ctx, ''), 'view')\n };\n return __returned__;\n };\n }\n});\n//# sourceMappingURL=D:/%E9%AA%85%E9%94%8B/%E5%8C%BB%E7%96%97/pages/mall/admin/homePage/index.uvue?vue&type=script&setup=true&lang.uts.js.map","references":["D:/Hbiulder/HBuilderX/plugins/uniapp-cli-vite/node_modules/@vue/runtime-core/dist/runtime-core.d.ts","D:/Hbiulder/HBuilderX/plugins/uniapp-cli-vite/node_modules/@vue/runtime-core/dist/runtime-core.d.ts","D:/Hbiulder/HBuilderX/plugins/uniapp-cli-vite/node_modules/@vue/runtime-core/dist/runtime-core.d.ts","D:/骅锋/医疗/layouts/admin/AdminLayout.uvue.ts"],"uniExtApis":["uni.__f__"],"map":"{\"version\":3,\"file\":\"index.uvue?vue&type=script&setup=true&lang.uts.js\",\"sourceRoot\":\"\",\"sources\":[\"index.uvue?vue&type=script&setup=true&lang.uts\"],\"names\":[],\"mappings\":\"AAAA,OAAO,EAAE,eAAe,IAAI,gBAAgB,EAAE,MAAM,KAAK,CAAA;AACzD,OAAO,EAAE,KAAK,IAAI,MAAM,EAAE,GAAG,IAAI,IAAI,EAAE,GAAG,IAAI,IAAI,EAAE,MAAM,KAAK,CAAA;AAC/D,MAAM,sBAAsB,GAAG,+DAA+D,CAAA;AAC9F,IAAI,CAAC,IAAI,EAAE;IAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,EAAE,CAAA;CAAE;AAEtC,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,KAAK,CAAA;AACpC,OAAO,WAAW,MAAM,kCAAkC,CAAA;AAG1D,eAAe,aAAa,CAAA,gBAAgB,CAAC;IAC3C,MAAM,EAAE,OAAO;IACf,KAAK,CAAC,OAAO;QAEf,MAAM,KAAK,GAAG,GAAG,CAAS,QAAQ,CAAC,CAAA;QAEnC,SAAS,CAAC;YACR,GAAG,CAAC,KAAK,CAAC,KAAK,EAAC,4CAA4C,EAAC,QAAQ,CAAC,CAAA;YACtE,GAAG,CAAC,KAAK,CAAC,KAAK,EAAC,4CAA4C,EAAC,MAAM,CAAC,CAAA;QACtE,CAAC,CAAC,CAAA;QAEF,OAAO,CAAC,IAAI,EAAE,MAAM;YAAO,QAAQ,CAAA;YACjC,MAAM,YAAY,GAAG;gBACrB,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC;aAChC,CAAA;YACC,OAAO,YAAY,CAAA;QACrB,CAAC,CAAA;IACD,CAAC;CAEA,CAAC,CAAA\"}"}
|
|
||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
|
|||||||
{"code":"import { defineComponent } from \"vue\";\nexport default defineComponent({\n methods: {\n goBack() {\n uni.navigateBack();\n }\n }\n});\n//# sourceMappingURL=D:/%E9%AA%85%E9%94%8B/%E5%8C%BB%E7%96%97/pages/user/terms.uvue?vue&type=script&lang.uts.js.map","references":[],"uniExtApis":["uni.navigateBack"],"map":"{\"version\":3,\"file\":\"terms.uvue?vue&type=script&lang.uts.js\",\"sourceRoot\":\"\",\"sources\":[\"terms.uvue?vue&type=script&lang.uts\"],\"names\":[],\"mappings\":\";AACC,+BAAe;IACd,OAAO,EAAE;QACR,MAAM;YACL,GAAG,CAAC,YAAY,EAAE,CAAC;QACpB,CAAC;KACD;CACD,EAAC\"}"}
|
|
||||||
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
|
|||||||
{"code":"import { __awaiter } from \"tslib\";\nimport { defineComponent as _defineComponent } from 'vue';\nimport { o as _o, gei as _gei, sei as _sei } from \"vue\";\nimport { ref } from 'vue';\nexport default /*#__PURE__*/ _defineComponent({\n __name: 'change-password',\n setup(__props) {\n const oldPassword = ref('');\n const newPassword = ref('');\n const confirmPassword = ref('');\n const handleSubmit = () => { return __awaiter(this, void 0, void 0, function* () {\n if (oldPassword.value == '' || newPassword.value == '' || confirmPassword.value == '') {\n uni.showToast({\n title: '请填写完整信息',\n icon: 'none'\n });\n return Promise.resolve(null);\n }\n if (newPassword.value != confirmPassword.value) {\n uni.showToast({\n title: '两次输入的密码不一致',\n icon: 'none'\n });\n return Promise.resolve(null);\n }\n uni.showLoading({ title: '提交中...' });\n uni.hideLoading();\n uni.showToast({\n title: '修改成功',\n icon: 'success'\n });\n setTimeout(() => {\n uni.navigateBack();\n }, 1500);\n }); };\n return (_ctx, _cache) => {\n \"raw js\";\n const __returned__ = {\n a: oldPassword.value,\n b: _o($event => { return oldPassword.value = $event.detail.value; }),\n c: newPassword.value,\n d: _o($event => { return newPassword.value = $event.detail.value; }),\n e: confirmPassword.value,\n f: _o($event => { return confirmPassword.value = $event.detail.value; }),\n g: _o(handleSubmit),\n h: _sei(_gei(_ctx, ''), 'view')\n };\n return __returned__;\n };\n }\n});\n//# sourceMappingURL=D:/%E9%AA%85%E9%94%8B/%E5%8C%BB%E7%96%97/pages/user/change-password.uvue?vue&type=script&setup=true&lang.uts.js.map","references":["D:/Hbiulder/HBuilderX/plugins/uniapp-cli-vite/node_modules/@vue/runtime-core/dist/runtime-core.d.ts","D:/Hbiulder/HBuilderX/plugins/uniapp-cli-vite/node_modules/@vue/runtime-core/dist/runtime-core.d.ts","D:/Hbiulder/HBuilderX/plugins/uniapp-cli-vite/node_modules/@vue/runtime-core/dist/runtime-core.d.ts"],"uniExtApis":["uni.showToast","uni.showLoading","uni.hideLoading","uni.navigateBack"],"map":"{\"version\":3,\"file\":\"change-password.uvue?vue&type=script&setup=true&lang.uts.js\",\"sourceRoot\":\"\",\"sources\":[\"change-password.uvue?vue&type=script&setup=true&lang.uts\"],\"names\":[],\"mappings\":\";AAAA,OAAO,EAAE,eAAe,IAAI,gBAAgB,EAAE,MAAM,KAAK,CAAA;AACzD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,IAAI,IAAI,EAAE,GAAG,IAAI,IAAI,EAAE,MAAM,KAAK,CAAA;AAEvD,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAGzB,eAAe,aAAa,CAAA,gBAAgB,CAAC;IAC3C,MAAM,EAAE,iBAAiB;IACzB,KAAK,CAAC,OAAO;QAEf,MAAM,WAAW,GAAG,GAAG,CAAS,EAAE,CAAC,CAAA;QACnC,MAAM,WAAW,GAAG,GAAG,CAAS,EAAE,CAAC,CAAA;QACnC,MAAM,eAAe,GAAG,GAAG,CAAS,EAAE,CAAC,CAAA;QAEvC,MAAM,YAAY,GAAG;YACnB,IAAI,WAAW,CAAC,KAAK,IAAI,EAAE,IAAI,WAAW,CAAC,KAAK,IAAI,EAAE,IAAI,eAAe,CAAC,KAAK,IAAI,EAAE,EAAE;gBACrF,GAAG,CAAC,SAAS,CAAC;oBACZ,KAAK,EAAE,SAAS;oBAChB,IAAI,EAAE,MAAM;iBACb,CAAC,CAAA;gBACF,6BAAM;aACP;YAED,IAAI,WAAW,CAAC,KAAK,IAAI,eAAe,CAAC,KAAK,EAAE;gBAC9C,GAAG,CAAC,SAAS,CAAC;oBACZ,KAAK,EAAE,YAAY;oBACnB,IAAI,EAAE,MAAM;iBACb,CAAC,CAAA;gBACF,6BAAM;aACP;YAED,GAAG,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;YAEpC,GAAG,CAAC,WAAW,EAAE,CAAA;YAEjB,GAAG,CAAC,SAAS,CAAC;gBACZ,KAAK,EAAE,MAAM;gBACb,IAAI,EAAE,SAAS;aAChB,CAAC,CAAA;YAEF,UAAU,CAAC;gBACT,GAAG,CAAC,YAAY,EAAE,CAAA;YACpB,CAAC,EAAE,IAAI,CAAC,CAAA;QACV,CAAC,IAAA,CAAA;QAED,OAAO,CAAC,IAAI,EAAE,MAAM;YAAO,QAAQ,CAAA;YACjC,MAAM,YAAY,GAAG;gBACrB,CAAC,EAAE,WAAW,CAAC,KAAK;gBACpB,CAAC,EAAE,EAAE,CAAC,MAAM,MAAI,OAAA,WAAW,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,EAAvC,CAAuC,CAAC;gBACxD,CAAC,EAAE,WAAW,CAAC,KAAK;gBACpB,CAAC,EAAE,EAAE,CAAC,MAAM,MAAI,OAAA,WAAW,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,EAAvC,CAAuC,CAAC;gBACxD,CAAC,EAAE,eAAe,CAAC,KAAK;gBACxB,CAAC,EAAE,EAAE,CAAC,MAAM,MAAI,OAAA,eAAe,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,EAA3C,CAA2C,CAAC;gBAC5D,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC;gBACnB,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC;aAChC,CAAA;YACC,OAAO,YAAY,CAAA;QACrB,CAAC,CAAA;IACD,CAAC;CAEA,CAAC,CAAA\"}"}
|
|
||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
|
|||||||
{"code":"import { defineComponent } from \"vue\";\nexport default defineComponent({\n data() {\n return {};\n }\n});\n//# sourceMappingURL=D:/%E9%AA%85%E9%94%8B/%E5%8C%BB%E7%96%97/pages/mall/merchant/certification.uvue?vue&type=script&lang.uts.js.map","references":[],"uniExtApis":[],"map":"{\"version\":3,\"file\":\"certification.uvue?vue&type=script&lang.uts.js\",\"sourceRoot\":\"\",\"sources\":[\"certification.uvue?vue&type=script&lang.uts\"],\"names\":[],\"mappings\":\";AACC,+BAAe;IACd,IAAI;QACH,OAAO,EAAE,CAAA;IACV,CAAC;CACD,EAAA\"}"}
|
|
||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
|
|||||||
{"code":"import { __awaiter } from \"tslib\";\nimport { defineComponent } from \"vue\";\nimport { mockService } from \"./mock-service\";\nimport { getCurrentUser } from \"@/utils/store\";\nexport default defineComponent({\n data() {\n return {\n currentTab: 'all',\n orders: []\n };\n },\n onShow() {\n this.loadData();\n },\n computed: {\n filteredOrders() {\n if (this.currentTab === 'all') {\n return this.orders;\n }\n if (this.currentTab === 'completed') {\n return this.orders.filter((o) => { return o.status === 'DELIVERED'; });\n }\n else {\n return this.orders.filter((o) => { return o.status !== 'DELIVERED'; });\n }\n }\n },\n methods: {\n goBack() {\n uni.navigateBack();\n },\n loadData() {\n return __awaiter(this, void 0, void 0, function* () {\n // Ensure user mapping is ready before querying orders\n try {\n yield getCurrentUser();\n }\n catch (e) {\n uni.__f__('warn', 'at pages/mall/delivery/test/consumer-order-list.uvue:81', 'getCurrentUser failed:', e);\n }\n const data = yield mockService.getMockOrders();\n this.orders = [...data];\n });\n },\n getStatusText(status) {\n return mockService.getStatusText(status);\n },\n getDisplayMessage(text, status) {\n return mockService.getDisplayMessage(text, status);\n },\n goDetail(orderNo) {\n uni.navigateTo({\n url: `/pages/mall/delivery/test/consumer-logistics-detail?order_no=${orderNo}`\n });\n }\n }\n});\n//# sourceMappingURL=D:/%E9%AA%85%E9%94%8B/%E5%8C%BB%E7%96%97/pages/mall/delivery/test/consumer-order-list.uvue?vue&type=script&uts=true&lang.uts.js.map","references":[],"uniExtApis":["uni.navigateBack","uni.__f__","uni.navigateTo"],"map":"{\"version\":3,\"file\":\"consumer-order-list.uvue?vue&type=script&uts=true&lang.uts.js\",\"sourceRoot\":\"\",\"sources\":[\"consumer-order-list.uvue?vue&type=script&uts=true&lang.uts\"],\"names\":[],\"mappings\":\";;OACQ,EAAE,WAAW,EAAa;OAC1B,EAAE,cAAc,EAAE;AAEzB,+BAAe;IACd,IAAI;QACH,OAAO;YACN,UAAU,EAAE,KAAK;YACjB,MAAM,EAAE,EAAiB;SACzB,CAAA;IACF,CAAC;IACD,MAAM;QACL,IAAI,CAAC,QAAQ,EAAE,CAAA;IAChB,CAAC;IACD,QAAQ,EAAE;QACT,cAAc;YACb,IAAI,IAAI,CAAC,UAAU,KAAK,KAAK,EAAE;gBAC9B,OAAO,IAAI,CAAC,MAAM,CAAA;aAClB;YACD,IAAI,IAAI,CAAC,UAAU,KAAK,WAAW,EAAE;gBACpC,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAY,OAAc,OAAA,CAAC,CAAC,MAAM,KAAK,WAAW,EAAxB,CAAwB,CAAC,CAAA;aAC9E;iBAAM;gBACN,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAY,OAAc,OAAA,CAAC,CAAC,MAAM,KAAK,WAAW,EAAxB,CAAwB,CAAC,CAAA;aAC9E;QACF,CAAC;KACD;IACD,OAAO,EAAE;QACR,MAAM;YACL,GAAG,CAAC,YAAY,EAAE,CAAA;QACnB,CAAC;QACK,QAAQ;;gBACb,sDAAsD;gBACtD,IAAI;oBACH,MAAM,cAAc,EAAE,CAAA;iBACtB;gBAAC,OAAO,CAAC,EAAE;oBACX,GAAG,CAAC,KAAK,CAAC,MAAM,EAAC,yDAAyD,EAAC,wBAAwB,EAAE,CAAC,CAAC,CAAA;iBACvG;gBAED,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,aAAa,EAAE,CAAA;gBAC9C,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,CAAA;YACxB,CAAC;SAAA;QACD,aAAa,CAAC,MAAc;YAC3B,OAAO,WAAW,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;QACzC,CAAC;QACD,iBAAiB,CAAC,IAAY,EAAE,MAAc;YAC7C,OAAO,WAAW,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QACnD,CAAC;QACD,QAAQ,CAAC,OAAe;YACvB,GAAG,CAAC,UAAU,CAAC;gBACd,GAAG,EAAE,gEAAgE,OAAO,EAAE;aAC9E,CAAC,CAAA;QACH,CAAC;KACD;CACD,EAAA\"}"}
|
|
||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
|
|||||||
{"code":"import { defineComponent } from \"vue\";\nexport default defineComponent({\n methods: {\n goBack() {\n uni.navigateBack();\n },\n goto(url) {\n uni.navigateTo({ url: url });\n }\n }\n});\n//# sourceMappingURL=D:/%E9%AA%85%E9%94%8B/%E5%8C%BB%E7%96%97/pages/mall/delivery/test/index.uvue?vue&type=script&uts=true&lang.uts.js.map","references":[],"uniExtApis":["uni.navigateBack","uni.navigateTo"],"map":"{\"version\":3,\"file\":\"index.uvue?vue&type=script&uts=true&lang.uts.js\",\"sourceRoot\":\"\",\"sources\":[\"index.uvue?vue&type=script&uts=true&lang.uts\"],\"names\":[],\"mappings\":\";AACC,+BAAe;IACd,OAAO,EAAE;QACR,MAAM;YACL,GAAG,CAAC,YAAY,EAAE,CAAA;QACnB,CAAC;QACD,IAAI,CAAC,GAAW;YACf,GAAG,CAAC,UAAU,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAA;QAC7B,CAAC;KACD;CACD,EAAA\"}"}
|
|
||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user