fix: 订单管理新增订单统计
This commit is contained in:
@@ -15,6 +15,13 @@ export async function getOrderList(data: any) {
|
||||
export async function getOrderStatusOption(data: any) {
|
||||
return requestClient.get<any>(`${prefix}status-option`, { params: data });
|
||||
}
|
||||
/**
|
||||
* 分页查询用户列表
|
||||
* @param data
|
||||
*/
|
||||
export async function saleAmountApi(data: any) {
|
||||
return requestClient.get<any>(`${prefix}sale-amount`, { params: data });
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取订单详情
|
||||
|
||||
@@ -3,18 +3,28 @@ import type { VxeGridListeners } from '#/adapter/vxe-table';
|
||||
|
||||
import { ref } from 'vue';
|
||||
|
||||
import { Page, useVbenModal } from '@vben/common-ui';
|
||||
import {
|
||||
AnalysisOverview,
|
||||
type AnalysisOverviewItem,
|
||||
Page,
|
||||
useVbenModal,
|
||||
} from '@vben/common-ui';
|
||||
import { SvgCakeIcon } from '@vben/icons';
|
||||
|
||||
import { Button, Image, message, Tag } from 'ant-design-vue';
|
||||
import { Button, Image, Tag } from 'ant-design-vue';
|
||||
|
||||
import { useVbenVxeGrid } from '#/adapter/vxe-table';
|
||||
import { TableAction } from '#/components/table-action';
|
||||
import {
|
||||
getOrderList,
|
||||
saleAmountApi,
|
||||
} from '#/views/business/order/product-order/api';
|
||||
import PrescrtionDetail from '#/views/doctor/doctor-reception/components/PrescrtionDetail.vue';
|
||||
|
||||
import FormModalDemo from './components/modal.vue';
|
||||
import DetailModal from './components/detail.vue';
|
||||
import FormModalDemo from './components/modal.vue';
|
||||
import { formOptions } from './config/search';
|
||||
import { gridOptions } from './config/table';
|
||||
import PrescrtionDetail from "#/views/doctor/doctor-reception/components/PrescrtionDetail.vue";
|
||||
|
||||
const hasTopTableDropDownActions = ref(false);
|
||||
|
||||
@@ -36,7 +46,25 @@ const [Grid, gridApi] = useVbenVxeGrid({
|
||||
gridOptions,
|
||||
gridEvents,
|
||||
});
|
||||
const initTableAjax = () => {
|
||||
gridApi.setGridOptions({
|
||||
proxyConfig: {
|
||||
ajax: {
|
||||
// 请求后端接口方法
|
||||
query: async ({ page }, formValues) => {
|
||||
saleAmount();
|
||||
return await getOrderList({
|
||||
page: page.currentPage,
|
||||
pageSize: page.pageSize,
|
||||
...formValues,
|
||||
});
|
||||
},
|
||||
},
|
||||
},
|
||||
});
|
||||
};
|
||||
|
||||
initTableAjax();
|
||||
const [FormModal, formModalApi] = useVbenModal({
|
||||
connectedComponent: FormModalDemo,
|
||||
});
|
||||
@@ -51,17 +79,7 @@ const infoModal = (data = {}) => {
|
||||
gridApi,
|
||||
});
|
||||
modalApi.open();
|
||||
// message.success(`正在开发${JSON.stringify(data)}`);
|
||||
};
|
||||
// const showModal = (data = {}, isUpdate = false) => {
|
||||
// formModalApi.setData({
|
||||
// // 表单值
|
||||
// values: data,
|
||||
// update: isUpdate,
|
||||
// gridApi,
|
||||
// });
|
||||
// formModalApi.open();
|
||||
// };
|
||||
|
||||
const wareSend = (data = {}) => {
|
||||
formModalApi.setData({
|
||||
@@ -81,7 +99,34 @@ const expandAll = () => {
|
||||
const collapseAll = () => {
|
||||
gridApi.grid?.setAllRowExpand(false);
|
||||
};
|
||||
|
||||
const overviewItems = ref<AnalysisOverviewItem[]>([]);
|
||||
const income = ref(0);
|
||||
const total = ref(0);
|
||||
const saleAmount = () => {
|
||||
saleAmountApi({
|
||||
search_time: gridApi.formApi.latestSubmissionValues.search_time,
|
||||
}).then((res) => {
|
||||
console.log(res, 'sssssssss');
|
||||
income.value = res.income;
|
||||
total.value = res.total;
|
||||
overviewItems.value = [
|
||||
{
|
||||
icon: SvgCakeIcon,
|
||||
title: '累计收益',
|
||||
totalTitle: '累计收益',
|
||||
totalValue: total.value,
|
||||
value: total.value,
|
||||
},
|
||||
{
|
||||
icon: 'fluent-emoji:balance-scale',
|
||||
title: '我的收益',
|
||||
totalTitle: '我的收益',
|
||||
totalValue: income.value,
|
||||
value: income.value,
|
||||
},
|
||||
];
|
||||
});
|
||||
};
|
||||
|
||||
const [PrescrtionDetailModal, PrescrtionDetailModalApi] = useVbenModal({
|
||||
connectedComponent: PrescrtionDetail,
|
||||
@@ -100,6 +145,7 @@ const openPrescriptionDetail = (values) => {
|
||||
<FormModal />
|
||||
<Modal />
|
||||
<PrescrtionDetailModal />
|
||||
<AnalysisOverview :items="overviewItems" :my-card="false" class="mt-5" />
|
||||
<Grid>
|
||||
<template #toolbar-buttons>
|
||||
<TableAction
|
||||
@@ -262,7 +308,13 @@ const openPrescriptionDetail = (values) => {
|
||||
</div>
|
||||
<div class="text-sm">
|
||||
<span class="text-gray-500 dark:text-gray-400">商品厂家:</span>
|
||||
{{ item.drug ? item.drug.source_info != null ? item.drug.source_info.name : item.drug.source : '暂无' }}
|
||||
{{
|
||||
item.drug
|
||||
? item.drug.source_info != null
|
||||
? item.drug.source_info.name
|
||||
: item.drug.source
|
||||
: '暂无'
|
||||
}}
|
||||
</div>
|
||||
<div class="text-sm">
|
||||
<span class="text-gray-500 dark:text-gray-400">商品价格:</span>
|
||||
@@ -273,7 +325,10 @@ const openPrescriptionDetail = (values) => {
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div v-if="row.prescription_type === 1" class="medication-details mt-5 p-10">
|
||||
<div
|
||||
v-if="row.prescription_type === 1"
|
||||
class="medication-details mt-5 p-10"
|
||||
>
|
||||
<span class="mb-2 font-medium">药品明细:</span>
|
||||
<ul class="custom-list pl-6">
|
||||
<li
|
||||
|
||||
@@ -105,7 +105,6 @@ getMyStoreList();
|
||||
const userStore = useUserStore();
|
||||
const myStoreId = ref(userStore.userInfo.store_id);
|
||||
// userStore.userInfo?.nick_name
|
||||
console.log(userStore.userInfo.store_id);
|
||||
|
||||
/**
|
||||
* 获取患者列表
|
||||
@@ -720,7 +719,6 @@ function newDrugModalOk() {
|
||||
}
|
||||
|
||||
function updateChineseNumberGoNewDrug(event: KeyboardEvent) {
|
||||
console.log(event.key);
|
||||
if (event.key === 'Enter') {
|
||||
updateLocalStorage();
|
||||
setTimeout(() => {
|
||||
|
||||
Reference in New Issue
Block a user