feat: 病历模块优化、AI辅助问诊
This commit is contained in:
@@ -237,17 +237,6 @@
|
||||
:ripple="true">
|
||||
常用方
|
||||
</u-button>
|
||||
<view v-if="!isSpecialPrescriptionCartLocked" class="m-l-16">
|
||||
<u-button
|
||||
:throttle-time="0"
|
||||
shape="circle"
|
||||
size="mini"
|
||||
:custom-style="{backgroundColor: 'transparent !important',border:'1px solid #6ACDBB',color:'#6ACDBB'}"
|
||||
plain
|
||||
@click="handleOpenAiPrescriptionDrawer">
|
||||
AI辅助出方
|
||||
</u-button>
|
||||
</view>
|
||||
<view v-if="!isSpecialPrescriptionCartLocked" class="m-l-16">
|
||||
<u-button
|
||||
:throttle-time="0"
|
||||
@@ -327,17 +316,6 @@
|
||||
:ripple="true">
|
||||
常用方
|
||||
</u-button>
|
||||
<view v-if="!isSpecialPrescriptionCartLocked" class="m-l-16">
|
||||
<u-button
|
||||
:throttle-time="0"
|
||||
shape="circle"
|
||||
size="mini"
|
||||
:custom-style="{backgroundColor: 'transparent !important',border:'1px solid #6ACDBB',color:'#6ACDBB'}"
|
||||
plain
|
||||
@click="handleOpenAiPrescriptionDrawer">
|
||||
AI辅助出方
|
||||
</u-button>
|
||||
</view>
|
||||
<view v-if="!isSpecialPrescriptionCartLocked" class="m-l-16">
|
||||
<u-button
|
||||
:throttle-time="0"
|
||||
@@ -407,17 +385,6 @@
|
||||
<text class="fs-28 text-gray m-l-8">{{ activeCategoryLabel }}</text>
|
||||
</view>
|
||||
<view class="flex-row m-l-163" style="height: 50rpx;">
|
||||
<view v-if="!isSpecialPrescriptionCartLocked" class="m-l-16">
|
||||
<u-button
|
||||
:throttle-time="0"
|
||||
shape="circle"
|
||||
size="mini"
|
||||
:custom-style="{backgroundColor: 'transparent !important',border:'1px solid #6ACDBB',color:'#6ACDBB'}"
|
||||
plain
|
||||
@click="handleOpenAiPrescriptionDrawer">
|
||||
AI辅助出方
|
||||
</u-button>
|
||||
</view>
|
||||
<view v-if="!isSpecialPrescriptionCartLocked" class="m-l-16">
|
||||
<u-button
|
||||
:throttle-time="0"
|
||||
@@ -575,34 +542,39 @@
|
||||
</swiper-item>
|
||||
</swiper>
|
||||
|
||||
<!-- 底部操作栏:fixed;病历 Tab 必须 v-if 卸载,微信 v-show 对 fixed 无效会串到病历 -->
|
||||
<view v-if="isRxMainVisible" class="bottom flex-jus-sp flex-ali-center safe-area-inset-bottom">
|
||||
<view class="flex-row flex-ali-center bottom-left-actions">
|
||||
<!-- 底部操作栏:与病历底栏同布局(左文案 | 右 AI 胶囊 + 主按钮) -->
|
||||
<view v-if="isRxMainVisible" class="bottom safe-area-inset-bottom">
|
||||
<view class="bottom-left flex-row flex-ali-center">
|
||||
<view
|
||||
v-if="!isSalespersonTransferMode && !isCommonPrescription && supportsCommonPrescriptionTemplate"
|
||||
@click="handleSaveAsCommonPrescription"
|
||||
class="btnText"
|
||||
>另存常用方</view>
|
||||
<!-- AI入口放底部,避免顶部三按钮挤出屏幕 -->
|
||||
</view>
|
||||
<view class="flex-row flex-ali-center">
|
||||
<!-- AI 胶囊与病历「AI写病历」同款;功能暂不可用时仍保留入口样式 -->
|
||||
<view
|
||||
v-if="!isSpecialPrescriptionCartLocked && !isSalespersonTransferMode && !isCommonPrescription"
|
||||
class="rx-ai-btn"
|
||||
@click="handleOpenAiPrescriptionDrawer"
|
||||
class="btnText"
|
||||
>AI辅助出方</view>
|
||||
>
|
||||
<text class="rx-ai-btn__icon">✦</text>
|
||||
<text class="rx-ai-btn__text">AI辅助出方</text>
|
||||
</view>
|
||||
<u-button
|
||||
:throttle-time="0"
|
||||
@click="handleSendPrescription"
|
||||
shape="circle"
|
||||
:custom-style="{
|
||||
backgroundColor: isSubmitting ? '#A5DCD2' : '#6ACDBB',
|
||||
color: '#fff',
|
||||
height: '86rpx',
|
||||
width: bottomSendBtnWidth
|
||||
}"
|
||||
:disabled="isSubmitting">
|
||||
{{ isCommonPrescription ? '保存常用方' : (isSalespersonTransferMode ? '提交传方' : '发送处方') }}
|
||||
</u-button>
|
||||
</view>
|
||||
<u-button
|
||||
:throttle-time="0"
|
||||
@click="handleSendPrescription"
|
||||
shape="circle"
|
||||
:custom-style="{
|
||||
backgroundColor: isSubmitting ? '#A5DCD2' : '#6ACDBB',
|
||||
color: '#fff',
|
||||
height: '86rpx',
|
||||
width: bottomSendBtnWidth
|
||||
}"
|
||||
:disabled="isSubmitting">
|
||||
{{ isCommonPrescription ? '保存常用方' : (isSalespersonTransferMode ? '提交传方' : '发送处方') }}
|
||||
</u-button>
|
||||
</view>
|
||||
|
||||
<!--
|
||||
@@ -1179,14 +1151,17 @@ export default {
|
||||
isSpecialPrescriptionCartLocked() {
|
||||
return isSpecialPrescriptionCartLocked(this);
|
||||
},
|
||||
/** 底部发送按钮宽度(左侧有「另存常用方 / AI辅助出方」时收窄) */
|
||||
/**
|
||||
* 底部发送按钮宽度
|
||||
* 与病历一致:右侧有 AI 胶囊时主按钮收窄;无 AI 时拉宽
|
||||
*/
|
||||
bottomSendBtnWidth() {
|
||||
if (this.isSalespersonTransferMode || this.isCommonPrescription) {
|
||||
return '686rpx';
|
||||
}
|
||||
// 左侧至少有 AI辅助出方;有常用方模板时再多一个入口
|
||||
if (this.supportsCommonPrescriptionTemplate) {
|
||||
return '320rpx';
|
||||
// 右侧 AI 胶囊 + 发送,主按钮与病历「保存病历」同量级
|
||||
if (!this.isSpecialPrescriptionCartLocked) {
|
||||
return '240rpx';
|
||||
}
|
||||
return '480rpx';
|
||||
},
|
||||
@@ -3698,27 +3673,59 @@ export default {
|
||||
.special-rx-card__action {
|
||||
width: 100%;
|
||||
}
|
||||
/* 与病历 mr-bottom 对齐:左文案 | 右 AI 胶囊 + 主按钮 */
|
||||
.bottom {
|
||||
position: fixed;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
padding: 32rpx;
|
||||
background: #fff;
|
||||
border-top: 1px solid #f0f0f0;
|
||||
padding: 20rpx 28rpx;
|
||||
background: rgba(255, 255, 255, 0.96);
|
||||
border-top: 1rpx solid #edf0f2;
|
||||
z-index: 99;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
box-shadow: 0 -4rpx 24rpx rgba(0, 0, 0, 0.06);
|
||||
}
|
||||
.bottom-left {
|
||||
flex: 1;
|
||||
min-width: 0;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
}
|
||||
.btnText {
|
||||
font-size: 26rpx;
|
||||
color: #6ACDBB;
|
||||
font-size: 28rpx;
|
||||
padding: 0 32rpx;
|
||||
padding: 12rpx 20rpx;
|
||||
flex-shrink: 0;
|
||||
border-radius: 40rpx;
|
||||
}
|
||||
.btnText--danger {
|
||||
color: #FC3636;
|
||||
color: #f55353;
|
||||
}
|
||||
/* 与病历 .mr-ai-btn 同款胶囊 */
|
||||
.rx-ai-btn {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
gap: 8rpx;
|
||||
padding: 14rpx 28rpx;
|
||||
margin-right: 16rpx;
|
||||
border-radius: 40rpx;
|
||||
background: rgba(106, 205, 187, 0.1);
|
||||
border: 1rpx solid rgba(106, 205, 187, 0.4);
|
||||
}
|
||||
.rx-ai-btn__icon {
|
||||
font-size: 22rpx;
|
||||
color: #6ACDBB;
|
||||
line-height: 1;
|
||||
}
|
||||
.rx-ai-btn__text {
|
||||
font-size: 26rpx;
|
||||
color: #6ACDBB;
|
||||
font-weight: 600;
|
||||
}
|
||||
</style>
|
||||
Reference in New Issue
Block a user