diff --git a/pages/record/rx-paper.vue b/pages/record/rx-paper.vue index 13f73f2..a0783ce 100644 --- a/pages/record/rx-paper.vue +++ b/pages/record/rx-paper.vue @@ -44,6 +44,9 @@ + + + Rp @@ -64,9 +67,7 @@ {{ data.doctorName }} - - - + 审方药师: @@ -75,12 +76,16 @@ + 审核: 调配: - 核对: - 发药: + 核对/发药: - 注意:请勿丢失,处方当日有效,因特殊情况,该处方有效为天(签名:) + 1.根据《处方管理办法》规定,本处方开具三天有效; + 2.本处方仅供患者{{ order?.drugStoreName || '' }}使用,本处方金额以实际药店成交金额为准; + + 3.请仔细阅读药品使用说明,服药谨遵医嘱,如有不适请立即停药并前往医院就诊。 + @@ -95,13 +100,14 @@ import { computed, ref } from "vue"; import { onLoad } from "@dcloudio/uni-app"; import dayjs from 'dayjs'; import useUser from '@/hooks/useUser'; -import { getRxDetail, getSealImage, getRxMedicinePurchaseOrderId } from '@/utils/api' +import { getConsultOrder, getRxDetail, getSealImage, getRxMedicinePurchaseOrderId } from '@/utils/api' import fullPage from "@/components/full-page.vue"; import footerButton from "@/components/footer-button.vue"; import { loading as showLoading, hideLoading, toast } from "@/utils/widget"; const { userInfo } = useUser(); const data = ref(null); +const order = ref(null); const id = ref(''); const serviceTime = ref(0); @@ -152,11 +158,28 @@ async function getRx() { data.value = rx; serviceTime.value = typeof res.now === 'number' ? res.now : 0; data.value.time = rx.createTime ? dayjs(rx.createTime).format('YYYY-MM-DD HH:mm') : ''; + await getOrder(); } else { toast(message || '获取处方详情失败'); } } +async function getOrder() { + const orderId = typeof data.value?.orderId === 'string' ? data.value.orderId.trim() : ''; + order.value = null; + if (!orderId) return; + + try { + const { data: orders } = await getConsultOrder({ orderId, page: 1, pageSize: 1 }); + if (data.value?.orderId === orderId && Array.isArray(orders)) { + order.value = orders.find((item) => item?.orderId === orderId) || null; + } + } catch (error) { + // 获取失败时不影响处方页展示,店铺名称保持为空。 + order.value = null; + } +} + async function handleInsurancePayment() { showLoading(); const res = await getRxMedicinePurchaseOrderId({ @@ -337,6 +360,7 @@ function viewOrder() { .stamp { position: relative; + height: 1px; /* margin-top: 50rpx; */ } @@ -348,8 +372,8 @@ function viewOrder() { .stamp-img { position: absolute; - left: 0; - top: -150rpx; + right: 0; + top: -80rpx; width: 280rpx; height: 280rpx; } diff --git a/static/stamp.png b/static/stamp.png new file mode 100644 index 0000000..4f690a5 Binary files /dev/null and b/static/stamp.png differ diff --git a/store/user.js b/store/user.js index 8def849..f012df9 100644 --- a/store/user.js +++ b/store/user.js @@ -63,14 +63,6 @@ export default defineStore("userStore", () => { authCode, }); const data = await getUserByAuthCode(authCode); - // const data = { - // "avatar": "https://tfs.alipayobjects.com/images/partner/T1bC0cXmKeXXXXXXXX", - // "certNo": "330523199506266439", - // "mobile": "17855833126", - // "userName": "胡学俭", - // "userId": "2088612594454930" - // } - console.log(data) uni.setStorageSync("hasAuthed", "hasAuthed"); const maskData = { name: data.userName,