From 3fe8762f603db94f63c3a55efc1e1329e996cf23 Mon Sep 17 00:00:00 2001 From: zq <136432190602163.com> Date: Wed, 10 Sep 2025 17:44:19 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E7=BA=BF=E4=B8=8A?= =?UTF-8?q?=E6=94=B6=E6=AC=BE=E3=80=81=E6=94=B6=E6=8C=82=E5=8F=B7=E8=B4=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/assets/site/form_linkActive.svg | 1 + src/assets/site/form_qua_ic.svg | 1 + src/assets/site/siteSemInfo_Icon.svg | 1 + src/assets/weixin.svg | 1 + src/assets/zhifubao.svg | 1 + src/components/CustomDropdown.vue | 112 +++-- src/components/GuipSwitch.vue | 128 +++--- src/components/Tooltip.vue | 221 ++++++++++ src/components/addPay.vue | 432 ++++++++++++++++++++ src/main.js | 4 + src/store/index.js | 20 +- src/utils/eventBus.js | 3 + src/utils/tooltip.js | 58 +++ src/views/HosInformation.vue | 767 ++++++++++++++++++++++++++--------- 14 files changed, 1476 insertions(+), 274 deletions(-) create mode 100644 src/assets/site/form_linkActive.svg create mode 100644 src/assets/site/form_qua_ic.svg create mode 100644 src/assets/site/siteSemInfo_Icon.svg create mode 100644 src/assets/weixin.svg create mode 100644 src/assets/zhifubao.svg create mode 100644 src/components/Tooltip.vue create mode 100644 src/components/addPay.vue create mode 100644 src/utils/eventBus.js create mode 100644 src/utils/tooltip.js diff --git a/src/assets/site/form_linkActive.svg b/src/assets/site/form_linkActive.svg new file mode 100644 index 0000000..a6b2d92 --- /dev/null +++ b/src/assets/site/form_linkActive.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/site/form_qua_ic.svg b/src/assets/site/form_qua_ic.svg new file mode 100644 index 0000000..5831ba3 --- /dev/null +++ b/src/assets/site/form_qua_ic.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/site/siteSemInfo_Icon.svg b/src/assets/site/siteSemInfo_Icon.svg new file mode 100644 index 0000000..377fc99 --- /dev/null +++ b/src/assets/site/siteSemInfo_Icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/weixin.svg b/src/assets/weixin.svg new file mode 100644 index 0000000..fa92db0 --- /dev/null +++ b/src/assets/weixin.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/zhifubao.svg b/src/assets/zhifubao.svg new file mode 100644 index 0000000..6ac7aa7 --- /dev/null +++ b/src/assets/zhifubao.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/components/CustomDropdown.vue b/src/components/CustomDropdown.vue index a00c6a9..69af87b 100644 --- a/src/components/CustomDropdown.vue +++ b/src/components/CustomDropdown.vue @@ -1,36 +1,41 @@ \ No newline at end of file diff --git a/src/components/Tooltip.vue b/src/components/Tooltip.vue new file mode 100644 index 0000000..ee142c9 --- /dev/null +++ b/src/components/Tooltip.vue @@ -0,0 +1,221 @@ + + + + + \ No newline at end of file diff --git a/src/components/addPay.vue b/src/components/addPay.vue new file mode 100644 index 0000000..fce9bdc --- /dev/null +++ b/src/components/addPay.vue @@ -0,0 +1,432 @@ + + + \ No newline at end of file diff --git a/src/main.js b/src/main.js index ea60726..6c9ef60 100755 --- a/src/main.js +++ b/src/main.js @@ -14,6 +14,8 @@ import LoadingService from './services/loading' import { directive as clickaway } from 'vue-clickaway'; import GuipMessage from '@/components/GuipMessage/index'; import HeaderIcon from './utils/headerIcon' +import PositionMessage from './utils/tooltip' + Vue.prototype.$loadingFn = LoadingService; Vue.config.productionTip = false; Vue.prototype.$http = request; @@ -21,6 +23,8 @@ Vue.use(ElementUI); Vue.use(GuipMessage) Vue.directive('clickaway', clickaway); Vue.mixin(HeaderIcon) +Vue.use(PositionMessage) + new Vue({ router, store, diff --git a/src/store/index.js b/src/store/index.js index c1feb2f..84116e8 100755 --- a/src/store/index.js +++ b/src/store/index.js @@ -35,7 +35,25 @@ export default new Vuex.Store({ desc: 'siteMessage3' } ] - },{ + }, + { + name: '收款设置', + path: '', + noToPath:true, + img: 'menu/Totalprofit1.svg', + imgActive: require('@/assets/menu/Totalprofit.svg'), + list: [ + { + name: '线上收款', + desc: 'siteMessage6' + }, + { + name: '收挂号费', + desc: 'siteMessage7' + }, + ] + }, + { name: '项目管理', path: '', noToPath:true, diff --git a/src/utils/eventBus.js b/src/utils/eventBus.js new file mode 100644 index 0000000..4dbae2c --- /dev/null +++ b/src/utils/eventBus.js @@ -0,0 +1,3 @@ +// 在项目中创建 eventBus.js +import Vue from 'vue' +export const EventBus = new Vue() \ No newline at end of file diff --git a/src/utils/tooltip.js b/src/utils/tooltip.js new file mode 100644 index 0000000..7ed58a8 --- /dev/null +++ b/src/utils/tooltip.js @@ -0,0 +1,58 @@ +import Vue from 'vue' +import Tooltip from '@/components/Tooltip.vue' + +const PositionMessageConstructor = Vue.extend(Tooltip) + +// 存储实例引用,便于全局控制 +const instances = [] + +function showMessage(options) { + const instance = new PositionMessageConstructor({ + propsData: options + }).$mount() + + document.body.appendChild(instance.$el) + instances.push(instance) + + const showInstance = instance.show() + + // 添加自动隐藏(duration为0表示一直显示) + if (options.duration !== 0) { + const duration = options.duration || 2000 + setTimeout(() => { + instance.hide() + setTimeout(() => { + if (instance.$el && instance.$el.parentNode) { + instance.$el.parentNode.removeChild(instance.$el) + } + // 从实例数组中移除 + const index = instances.indexOf(instance) + if (index > -1) { + instances.splice(index, 1) + } + }, 300) // 等待动画结束 + }, duration) + } + + return showInstance +} + +// 隐藏所有tooltip +function hideAll() { + instances.forEach(instance => { + instance.hide() + setTimeout(() => { + if (instance.$el && instance.$el.parentNode) { + instance.$el.parentNode.removeChild(instance.$el) + } + }, 300) + }) + instances.length = 0 +} + +export default { + install(Vue) { + Vue.prototype.$positionMessage = showMessage + Vue.prototype.$hideAllPositionMessages = hideAll + } +} \ No newline at end of file diff --git a/src/views/HosInformation.vue b/src/views/HosInformation.vue index 9556531..d2b9173 100644 --- a/src/views/HosInformation.vue +++ b/src/views/HosInformation.vue @@ -9,43 +9,45 @@
- +
- +
- - + +
-
方便患者记忆,非必填 - + + prop="depart_name" :placeholder="(depart_id && doctor_id) ? '无' : '请输入'" + :disabled="(depart_id && doctor_id) ? true : false" />
@@ -53,23 +55,25 @@
医保定点
- +
- +
患者预约 仅项目计数
- 仅医生名片 + 仅医生名片
就诊前的注意事项,非必填
- +
@@ -85,15 +89,13 @@ + @change="ChangeTime('time1')" format="HH:mm" value-format="HH:mm"> + @change="ChangeTime('time1')" format="HH:mm" value-format="HH:mm"> @@ -102,7 +104,8 @@
- +
@@ -146,6 +149,167 @@ +
+ +
+ 线上收款 + + + 未绑定微信收款方式,无法开启线上收款 + {{ onLinePay == 1 ? '开启' : '' }} +
+
+
+ + +
+ 微信收款 + +
+ + + + + + + + +
+
+
+
+ + +
+ 支付宝收款 +
+
+ 绑定后,患者支付宝扫码付款可享自动退费 +
+ + + + + + +
+
+
+
+
+
+ +
+ 收挂号费 + + + {{ onRegister == 1 ? '' : '关闭' }} + 开启,患者在小程序预约时,需缴纳挂号费 +
+
+
+
+
+

设置挂号费金额

+

{{registerMoney}}元/人

+
+
+
+ 已设置 + 修改 +
+
+ 未设置 + 立即设置 +
+
+
+
+
+

免挂号费规则

+

患者5天内再次就诊、患者有剩余治疗项目,免收挂号费

+
+
+
+ 已设置 + 修改 +
+
+ 未设置 + 立即设置 +
+
+
+
+
+
@@ -164,9 +328,9 @@
共{{ projectList.length }}条,已选8{{ selectedCount }}条 批量禁用 + @click="batchOperate(0, 'project')">批量禁用 + @click="batchOperate(1, 'project')"> 批量启用 @@ -174,20 +338,24 @@
-
全部分类
-
{{ item.name }}
+
+ 全部分类
+
{{ item.name }}
+
搜索项目 - - + +
- + @@ -197,28 +365,30 @@ + + @@ -252,14 +422,15 @@ 共{{ courseList.length }}条,已选{{ selectedCount }}条 批量禁用 + @click="batchOperate(0, 'group')">批量禁用 + @click="batchOperate(1, 'group')"> 批量启用 - + @@ -271,7 +442,8 @@ @@ -289,9 +461,15 @@ --> + + + + + :show-cancel-button="true" @confirm="handleConfirm" @cancel="handleCancel" @close="handleClose" + @dialogVisibleChange="dialogVisibleChange"> + + - \ No newline at end of file From ba06684c5d468e91995add875caeba8a570f7651 Mon Sep 17 00:00:00 2001 From: longchao <588888888@qq.com> Date: Sun, 28 Sep 2025 18:40:34 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E7=AE=A1=E7=90=86=E5=91=98=E5=90=8E?= =?UTF-8?q?=E5=8F=B0=E6=8C=82=E5=8F=B7=E8=B4=B9=E7=BC=B4=E8=B4=B9=E7=9B=B8?= =?UTF-8?q?=E5=85=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/GuipDialog.vue | 6 +- src/components/GuipSwitch.vue | 9 ++- src/components/Tooltip.vue | 16 ++-- src/components/paymentMethod.vue | 2 +- src/utils/tooltip.js | 8 +- src/views/HomeView.vue | 6 +- src/views/HosInformation.vue | 156 +++++++++++++++++++++++++++------------ src/views/Register.vue | 2 +- src/views/elementGroups.vue | 4 +- 9 files changed, 136 insertions(+), 73 deletions(-) diff --git a/src/components/GuipDialog.vue b/src/components/GuipDialog.vue index 630ad65..41cc814 100644 --- a/src/components/GuipDialog.vue +++ b/src/components/GuipDialog.vue @@ -18,7 +18,7 @@ - + - -