This commit is contained in:
Your Name
2026-05-07 18:21:00 +08:00
parent d39b1ed7ee
commit 6c997559a2
2 changed files with 17 additions and 3 deletions
@@ -2520,6 +2520,7 @@ const fulfillmentStatusTabs = [
function handleFulfillmentStatusTabClick(value: number | '') { function handleFulfillmentStatusTabClick(value: number | '') {
activeFocusKey.value = '' activeFocusKey.value = ''
queryParams.exclude_fulfillment_cancelled = 0
queryParams.fulfillment_status = value queryParams.fulfillment_status = value
resetPage() resetPage()
} }
@@ -2570,7 +2571,9 @@ const queryParams = reactive({
prescription_audit_status: '' as number | '', prescription_audit_status: '' as number | '',
payment_slip_audit_status: '' as number | '', payment_slip_audit_status: '' as number | '',
/** 供货方式:甘草(已传甘草药方单号)/ 自营(无甘草单号) */ /** 供货方式:甘草(已传甘草药方单号)/ 自营(无甘草单号) */
supply_mode: '' as '' | 'gancao' | 'self' supply_mode: '' as '' | 'gancao' | 'self',
/** 列表排除履约已取消(4):重点看板「待处方审核」等用 */
exclude_fulfillment_cancelled: 0 as number
}) })
const rxAuditTabs = [ const rxAuditTabs = [
@@ -2588,11 +2591,13 @@ const payAuditTabs = [
function handleRxAuditTabClick(val: number | '') { function handleRxAuditTabClick(val: number | '') {
activeFocusKey.value = '' activeFocusKey.value = ''
queryParams.exclude_fulfillment_cancelled = 0
queryParams.prescription_audit_status = val queryParams.prescription_audit_status = val
resetPage() resetPage()
} }
function handlePayAuditTabClick(val: number | '') { function handlePayAuditTabClick(val: number | '') {
activeFocusKey.value = '' activeFocusKey.value = ''
queryParams.exclude_fulfillment_cancelled = 0
queryParams.payment_slip_audit_status = val queryParams.payment_slip_audit_status = val
resetPage() resetPage()
} }
@@ -2604,6 +2609,7 @@ function handleFocusBoardSearch(key: 'pendingRx' | 'pendingPay' | 'pendingShip'
queryParams.prescription_audit_status = '' queryParams.prescription_audit_status = ''
queryParams.payment_slip_audit_status = '' queryParams.payment_slip_audit_status = ''
queryParams.fulfillment_status = '' queryParams.fulfillment_status = ''
queryParams.exclude_fulfillment_cancelled = 0
resetPage() resetPage()
return return
} }
@@ -2613,9 +2619,11 @@ function handleFocusBoardSearch(key: 'pendingRx' | 'pendingPay' | 'pendingShip'
queryParams.prescription_audit_status = '' queryParams.prescription_audit_status = ''
queryParams.payment_slip_audit_status = '' queryParams.payment_slip_audit_status = ''
queryParams.fulfillment_status = '' queryParams.fulfillment_status = ''
queryParams.exclude_fulfillment_cancelled = 0
if (key === 'pendingRx') { if (key === 'pendingRx') {
queryParams.prescription_audit_status = 0 queryParams.prescription_audit_status = 0
queryParams.exclude_fulfillment_cancelled = 1
} else if (key === 'pendingPay') { } else if (key === 'pendingPay') {
queryParams.prescription_audit_status = 1 queryParams.prescription_audit_status = 1
queryParams.payment_slip_audit_status = 0 queryParams.payment_slip_audit_status = 0
@@ -2666,6 +2674,7 @@ async function fetchLists(params: Record<string, unknown>) {
if (!String(p.patient_keyword || '').trim()) delete p.patient_keyword if (!String(p.patient_keyword || '').trim()) delete p.patient_keyword
if (!String(p.express_keyword || '').trim()) delete p.express_keyword if (!String(p.express_keyword || '').trim()) delete p.express_keyword
if (!p.express_company || p.express_company === '') delete p.express_company if (!p.express_company || p.express_company === '') delete p.express_company
if (Number(p.exclude_fulfillment_cancelled) !== 1) delete p.exclude_fulfillment_cancelled
if (!String(p.start_time || '').trim() || !String(p.end_time || '').trim()) { if (!String(p.start_time || '').trim() || !String(p.end_time || '').trim()) {
delete p.start_time delete p.start_time
delete p.end_time delete p.end_time
@@ -2854,6 +2863,7 @@ watch(
if (show) return if (show) return
if (queryParams.prescription_audit_status === '' || queryParams.prescription_audit_status === undefined) return if (queryParams.prescription_audit_status === '' || queryParams.prescription_audit_status === undefined) return
queryParams.prescription_audit_status = '' queryParams.prescription_audit_status = ''
queryParams.exclude_fulfillment_cancelled = 0
resetPage() resetPage()
}, },
{ immediate: true } { immediate: true }
@@ -2875,6 +2885,7 @@ function handleReset() {
queryParams.prescription_audit_status = '' queryParams.prescription_audit_status = ''
queryParams.payment_slip_audit_status = '' queryParams.payment_slip_audit_status = ''
queryParams.supply_mode = '' queryParams.supply_mode = ''
queryParams.exclude_fulfillment_cancelled = 0
resetParams() resetParams()
} }
@@ -640,9 +640,12 @@ class PrescriptionOrderLists extends BaseAdminDataLists implements ListsSearchIn
$query = PrescriptionOrder::where($this->searchWhereWithoutStatusFilters())->whereNull('delete_time'); $query = PrescriptionOrder::where($this->searchWhereWithoutStatusFilters())->whereNull('delete_time');
$this->applyPermissionAndExtraFilters($query); $this->applyPermissionAndExtraFilters($query);
$pendingRxQuery = clone $query;
YejiStatsLogic::applyPrescriptionOrderNotCancelledForPerformanceQuery($pendingRxQuery, '');
return [ return [
// 处方审核待处理 // 处方审核待处理(不含履约已取消)
'pending_rx' => (int) (clone $query)->where('prescription_audit_status', 0)->count(), 'pending_rx' => (int) $pendingRxQuery->where('prescription_audit_status', 0)->count(),
// 支付审核待处理(前提:处方已通过) // 支付审核待处理(前提:处方已通过)
'pending_pay' => (int) (clone $query)->where('prescription_audit_status', 1)->where('payment_slip_audit_status', 0)->count(), 'pending_pay' => (int) (clone $query)->where('prescription_audit_status', 1)->where('payment_slip_audit_status', 0)->count(),
// 履约待发货 // 履约待发货