diff --git a/components.d.ts b/components.d.ts index 514bb9b..ae332bb 100644 --- a/components.d.ts +++ b/components.d.ts @@ -23,6 +23,7 @@ declare module '@vue/runtime-core' { Loading: typeof import('./src/components/loading/loading.vue')['default'] MedinceDetailModal: typeof import('./src/components/medinceDetailModal.vue')['default'] MedinceModal: typeof import('./src/components/medinceModal.vue')['default'] + MedinceOrderModal: typeof import('./src/components/medinceOrderModal.vue')['default'] NumberModal: typeof import('./src/components/numberModal.vue')['default'] PatientModal: typeof import('./src/components/patientModal.vue')['default'] Prescription: typeof import('./src/components/prescription.vue')['default'] diff --git a/src/api/order/list.js b/src/api/order/list.js index 9cb8008..f7d9ed4 100644 --- a/src/api/order/list.js +++ b/src/api/order/list.js @@ -88,4 +88,22 @@ export function exportProduct(data){//导出药品订单 }) } - +export function getServiceList(data){//服务列表 + return request({ + url:'/admin/order/service/page', + method: 'post', + data + }) +} +export function serviceDetail(id){//服务包详情 + return request({ + url:`/admin/order/service/${id}`, + method: 'get' + }) +} +export function serviceRightDetail(id){//服务包权益详情 + return request({ + url:`/admin/order/service/detail/${id}`, + method: 'get' + }) +} \ No newline at end of file diff --git a/src/components/confirmModal.vue b/src/components/confirmModal.vue index 8e9639b..310c728 100644 --- a/src/components/confirmModal.vue +++ b/src/components/confirmModal.vue @@ -38,8 +38,7 @@ const props = defineProps({ default:'', }, payment_amount_total:{ - type:Number, - default:'' + type:Number }, dealType:{ type: String, @@ -62,7 +61,7 @@ const handleClose = () => { // alert(flag) } watch(()=>props.payment_amount_total,(newVal,oldVal)=>{ - form.refund_amount=newVal; + form.refund_amount=Number(newVal); },{immediate:true}) // Akiraka 20230210 删除数据校验 const rules = reactive({ diff --git a/src/components/medinceOrderModal.vue b/src/components/medinceOrderModal.vue new file mode 100644 index 0000000..fff7653 --- /dev/null +++ b/src/components/medinceOrderModal.vue @@ -0,0 +1,790 @@ + + + + + 订单信息 + + + + + + {{ modalForm.order_product_no }} + + + + + {{ + modalForm.order_prescription.prescription_code + }} + 暂无 + + + + + + + {{ modalForm.created_at }} + + + + + {{ + parseTime(modalForm.pay_time) + }} + - + + + + + + + {{ modalForm.amount_total }}元 + + + + + {{ modalForm.logistics_fee }}元 + + + + + + + {{ modalForm.payment_amount_total }}元 + + + + + {{ + formatProductStatus(modalForm.order_product_status) + }} + + + + + + + {{ + formatProductCancelReason(modalForm.cancel_reason) + }} + + + + + + + 退款信息 + + + + + {{ modalForm.order_product_refund.product_refund_no }} + + + + + {{ modalForm.order_product_refund.refund_id }} + + + + + + + {{ modalForm.order_product_refund.refund_total }}元 + + + + + {{ + formatRefundStatus( + modalForm.order_product_refund.product_refund_status + ) + }} + + + + + + + {{ modalForm.order_product_refund.success_time }} + - + + + + + + + {{ modalForm.order_product_refund.refund_reason }} + + + + + + + 药品信息 + + + + + + + + + + + + + + + + + + + + + + 地址信息 + + {{ + lookAllAddress ? '隐藏完整地址信息' : '查看完整地址信息' + }} + + + + + + + {{ modalForm.consignee_name_mask }} + {{ AddressData.consignee_name }} + + + + + + {{ modalForm.consignee_tel_mask }} + {{ AddressData.consignee_tel }} + + + + + + + {{ modalForm.address_mask }} + {{ AddressData.address }} + + + + + + + 物流信息 + + + 物流单号:{{ modalForm.order_product_logistics.logistics_no }} + + + + + + + + {{ item.context }} + + + {{ + isExpand ? '收起' : '展开' + }} + + 暂无物流信息 + + + + + + + + 处方信息 + + + + + + + + + + + + + 医生信息 + + 查看医生完整信息 + + + + + + + + + + + + + + + {{ modalForm.user_doctor.user_name }} {{ + formatDoctorTitle(modalForm.user_doctor.doctor_title) + }} + + + {{ + modalForm.user_doctor.hospital.hospital_name + }} {{ + modalForm.user_doctor.department_custom_name + }} + + + + 暂未分配到医生 + + + + + + + 就诊人信息 + + 查看就诊人完整信息 + + + + + + {{ modalForm.order_inquiry_case.name }} ({{ + modalForm.order_inquiry_case.sex == 1 ? '男' : '女' + }} {{ modalForm.order_inquiry_case.age }}岁) + + + + + + + {{ modalForm.order_inquiry_case.disease_desc }} + + + + + + + {{ + modalForm.order_inquiry_case.disease_class_name + }} {{ + modalForm.user_doctor.department_custom_name + }} + + + + + + + 处方上报状态 + + + + + {{ fromatReportStatus(modalForm.report_pre_status) }} + + + + + + + + {{ modalForm.report_pre_time }} + - + + + + + + + {{ modalForm.report_pre_fail_reason }} + + + + + + + + + 操作 + + + + + + { + isVisible = true; + order_product_id = modalForm.order_product_id; + } + " + >上报处方平台 + + + + { + okVisible = true; + cur_product_id = modalForm.order_product_id; + } + " + >取消药品订单 + + + + + + + { + doctorVisible = false; + doctor_id = ''; + } + " + > + + { + patientVisible = false; + } + " + > + + + + + + diff --git a/src/utils/format.js b/src/utils/format.js index bba579e..a465f18 100644 --- a/src/utils/format.js +++ b/src/utils/format.js @@ -52,6 +52,15 @@ export const formatDoctorTitle=(val)=>{ return '' } } + export const formatServiceCancelReason=(val)=>{ + //1医生未接受服务 2:主动取消 4:客服取消 5:支付超时 + let data={1:'医生未接受服务', 2:'主动取消',4:'客服取消',5:'支付超时'} + if(val){ + return data[val] + }else{ + return '' + } + } export const fromatReportStatus=(val)=>{ //上报处方平台状态(0:未上报 1:已上报 2:上报失败)) let data={0:'未上报', 1:'已上报', 2:'上报失败'} @@ -89,6 +98,16 @@ export const formatRelation=(val)=>{ return '' } }; + export const formatMedinceStatus=(val)=>{ + // 1:待支付 2:待发货 3:已发货 4:已签收 5:已取消 + let data={1:'待支付', 2:'待发货', 3:'已发货', 4:'已签收',5:'已取消'} + if(val){ + return data[val] + }else{ + return '' + } + }; + export const formatMultipoint=(val)=>{ //医生多点执业认证状态(0:未认证 1:认证通过 2:审核中 3:认证失败) let data={0:'未认证',1:'认证通过', 2:'审核中', 3:'认证失败'} @@ -101,7 +120,7 @@ export const formatRelation=(val)=>{ export const formatMode=(val)=>{ //1:图文 2:视频 3:语音 4:电话 5:会员 - let data={1:'图文',2:'视频', 3:'语音', 4:'电话',5:'会员',6:'疑难会诊',7:'附赠沟通'} + let data={1:'图文',2:'视频', 3:'语音', 4:'电话',5:'会员',6:'疑难会诊',7:'附赠沟通',8:'健康包',9:'服务包'} if(val){ return data[val] }else{ @@ -135,4 +154,13 @@ export const formatRelation=(val)=>{ }else{ return '' } - }; \ No newline at end of file + }; + export const formatCouponStatus=(val)=>{ + //-1:'注册即发放',0:'未使用', 1:'已使用',2:'已过期' + let data={'-1':'注册即发放',0:'未使用',1:'已使用', 2:'已过期'} + if(val || val==0){ + return data[val] + }else{ + return '' + } + }; diff --git a/src/views/order/service-list/index.vue b/src/views/order/service-list/index.vue new file mode 100644 index 0000000..3728664 --- /dev/null +++ b/src/views/order/service-list/index.vue @@ -0,0 +1,1595 @@ + + + + + + + + + + + + + + + + + + 待支付 + 未开始 + 服务中 + 服务完成 + 服务取消 + + + + + + 健康包服务 + 随访包服务 + + + + + + + 未支付 + 已支付 + 支付中 + 支付失败 + 支付超时 + 支付关闭 + 已撤销 + + + + + + 无退款 + 申请退款 + 退款中 + 退款成功 + 拒绝退款 + 退款关闭 + 退款异常 + 部分退款 + + + + + + 医生未接受服务 + 主动取消 + 客服取消 + 支付超时 + + + + + + + + + + + + + + + + + + + + + + 搜索 + 重置 + + + + + + + + + + 选择数据导出 + + 当前搜索全部导出 + 全部导出 + + + + + { + deleteData = selection; + } + " + @page-change="handlePageChange" + @page-size-change="handlepage_sizeChange" + > + + {{ rowIndex + 1 + (pager.page - 1) * pager.page_size }} + + + 小程序支付 + 微信扫码 + 模拟支付 + + + + 待支付 + 未开始 + 服务中 + 服务完成 + 服务取消 + + + {{ record.amount_total }}元 + + + {{ record.payment_amount_total }}元 + + + + {{ record.patient_name }}({{ + record.patient_sex == 1 ? '男,' : '女,' + }}{{ record.patient_age }}岁) + + + + + {{ record.order_service_type == 1 ? '健康包服务' : '随访包服务' }} + + + {{ formatMode(record.inquiry_mode) }} + + + {{ parseTime(record.pay_time) }} + + + + + 详情 + + + + + + + { + $refs.modalFormRef.resetFields(); + modalForm.doctor_id = null; + } + " + > + + + 订单信息 + + + + + + {{ modalForm.order_service_no }} + + + + + {{ + formatServiceStatus(modalForm.order_service_status) + }} + + + + + + + {{ modalForm.created_at }} + + + + + {{ + parseTime(modalForm.pay_time) + }} + - + + + + + + + {{ modalForm.amount_total }}元 + + + + + {{ modalForm.order_inquiry_coupon.coupon_name }}({{ + modalForm.order_inquiry_coupon.coupon_use_price + }}元) + 无 + + + + + + + {{ modalForm.payment_amount_total }}元 + + + + + 专家问诊 + + + + + + + {{ + modalForm.order_service_type == 1 ? '健康包服务' : '随访包服务' + }} + + + + + {{ parseTime(modalForm.reception_time) }} + + + + + + + {{ parseTime(modalForm.finish_time) }} + + + + + {{ parseTime(modalForm.finish_time) }} + + + + + + + {{ parseTime(modalForm.cancel_time) }} + + + + + + + {{ + formatServiceCancelReason(modalForm.cancel_reason) + }} + + + + + + + 退款信息 + + + + + {{ + modalForm.order_service_package_refund.inquiry_refund_no + }} + + + + + {{ modalForm.escrow_trade_no }} + + + + + + + {{ + modalForm.order_service_package_refund.refund_total + }}元 + + + + + {{ + formatRefundStatus( + modalForm.order_service_package_refund.inquiry_refund_status + ) + }} + + + + + + + {{ modalForm.order_service_package_refund.success_time }} + - + + + + + + + {{ + modalForm.order_service_package_refund.refund_reason + }} + + + + + + + 服务权益 + + + + + 接诊后生效 + {{rightDetail.start_time}}——{{ rightDetail.finish_time }} + + + + + + + {{(rightDetail.order_service_package_detail.service_period)/30 +}}个月内{{rightDetail.order_service_package_detail.service_count==0?'不限':(rightDetail.order_service_package_detail.service_count)}}次问诊,30盒肝爽颗粒(步长)、价值5元的全品类药品优惠劵2张、价值100元的肝胆商城优惠劵1张 + + + + + + + + + + + + + + + + {{ rowIndex + 1 }} + + + + {{ formatInquiryStatus(record.inquiry_status) }} + + + + + 详情 + + + + + + + + + + + + + + + + + + {{ rowIndex + 1 }} + + + + {{ formatMedinceStatus(record.order_product_status) }} + + + + 详情 + + + + + + + + + + + + + + + + + {{record.coupon.coupon_name}} + + + {{formatCouponStatus(record.user_coupon_status)}} + + + + 肝胆商城后台 + + + + + + + + + + 医生信息 + + 查看医生完整信息 + + + + + + + + + + + + + + + {{ modalForm.user_doctor.user_name }} {{ + formatDoctorTitle(modalForm.user_doctor.doctor_title) + }} + + + {{ + modalForm.user_doctor.hospital.hospital_name + }} {{ + modalForm.user_doctor.department_custom_name + }} + + + + 暂未分配到医生 + + + + + + + 就诊人信息 + + 查看就诊人完整信息 + + + + + + {{ modalForm.patient_name }} ({{ + modalForm.patient_sex == 1 ? '男' : '女' + }} {{ modalForm.patient_age }}岁) + + + + + + + + {{ + modalForm.order_service_package_case.disease_class_name + }} {{ + modalForm.user_doctor.department_custom_name + }} + + + + + + + {{ modalForm.order_service_package_case.disease_desc }} + + + + + + + + + + + + + + + + + 操作 + + + + + + + { + okVisible = true; + cur_inruiry_id = modalForm.order_service_id; + } + " + >取消订单 + + + + + + + + { + doctorVisible = false; + doctor_id = ''; + } + " + > + + + { + patientVisible = false; + } + " + > + + + + + + { + recordVisible = false; + } + " + > + + + {$refs.modalInquriyFormRef.resetFields(); modalInquiryForm.doctor_id = null;}"> + + + 订单信息 + + + + + + {{ modalInquiryForm.inquiry_no }} + + + + + {{ formatInquiryStatus(modalInquiryForm.inquiry_status) }} + + + + + + + {{modalInquiryForm.created_at}} + + + + + {{parseTime(modalInquiryForm.pay_time)}} + - + + + + + + + {{modalInquiryForm.amount_total}}元 + + + + + {{modalInquiryForm.order_inquiry_coupon.coupon_name}}({{modalForm.order_inquiry_coupon.coupon_use_price}}元) + 无 + + + + + + + {{modalInquiryForm.payment_amount_total}}元 + + + + + {{formatInquiryType(modalInquiryForm.inquiry_type)}} + + + + + + + {{formatMode(modalInquiryForm.inquiry_mode)}} + + + + + {{parseTime(modalInquiryForm.reception_time)}} + + + + + + + {{parseTime(modalInquiryForm.complete_time)}} + + + + + {{parseTime(modalInquiryForm.finish_time)}} + + + + + + + + {{parseTime(modalInquiryForm.cancel_time)}} + + + + + + + {{ formatOrderCancelReason(modalInquiryForm.cancel_reason)}} + + + + + + + 退款信息 + + + + + {{modalInquiryForm.order_inquiry_refund.inquiry_refund_no}} + + + + + {{modalInquiryForm.escrow_trade_no}} + + + + + + + + {{modalInquiryForm.order_inquiry_refund.refund_total}}元 + + + + + {{formatRefundStatus(modalInquiryForm.order_inquiry_refund.inquiry_refund_status)}} + + + + + + + + {{modalForm.order_inquiry_refund.success_time}} + - + + + + + + + {{modalInquiryForm.order_inquiry_refund.refund_reason}} + + + + + + + 医生信息 + + 查看医生完整信息 + + + + + + + + + + + + + + {{modalInquiryForm.user_doctor.user_name}} {{formatDoctorTitle(modalInquiryForm.user_doctor.doctor_title)}} + {{modalInquiryForm.user_doctor.hospital.hospital_name}} {{modalInquiryForm.user_doctor.department_custom_name}} + + + 暂未分配到医生 + + + + + + + 就诊人信息 + + 查看就诊人完整信息 + + + + + + {{modalInquiryForm.patient_name}} ({{modalInquiryForm.patient_sex==1?'男':'女'}} {{modalInquiryForm.patient_age}}岁) + + + + + + + {{modalInquiryForm.order_inquiry_case.disease_class_name}} {{modalInquiryForm.user_doctor.department_custom_name}} + + + + + + + {{modalInquiryForm.order_inquiry_case.disease_desc}} + + + + + + + + + + + + + + + 评价信息 + + + + + + + + + + + + + + + + + + + + + + + + + + + {{ comment.content }} + + + + + + + + + 操作 + + + + + + 问诊记录 + + + {okVisible=true;cur_inruiry_id=modalInquiryForm.order_inquiry_id;}">取消问诊 + + + + + + + + + + {medinceVisible=false}"> + + + + + +