前端最新版本同步

This commit is contained in:
Zhang.WH
2025-09-25 10:36:07 +08:00
parent a3a06d6f3c
commit 1276dc4adb
117 changed files with 11964 additions and 2466 deletions

View File

@@ -83,6 +83,14 @@
>重置</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="Download"
@click="handleExport"
>导出</el-button>
</el-col>
</el-row>
<el-table
@@ -107,6 +115,14 @@
:show-overflow-tooltip="true"
/>
<el-table-column
label="单据号"
align="center"
key="supplyBusno"
prop="supplyBusno"
width="200"
:show-overflow-tooltip="true"
/>
<el-table-column
label="项目名称"
align="center"
@@ -155,6 +171,20 @@
:show-overflow-tooltip="true"
/>
<el-table-column
label="货位"
align="center"
key="locationStoreName"
prop="locationStoreName"
:show-overflow-tooltip="true"
/>
<el-table-column
label="采购单价"
align="center"
key="price"
prop="price"
:show-overflow-tooltip="true"
/>
<el-table-column
label="单位"
align="center"
@@ -171,6 +201,34 @@
:show-overflow-tooltip="true"
/>
<el-table-column
label="盈亏金额"
align="center"
key="totalPrice"
prop="totalPrice"
:show-overflow-tooltip="true"
/>
<el-table-column
label="供应商"
align="center"
key="supplier"
prop="supplier"
:show-overflow-tooltip="true"
/>
<el-table-column
label="审核人"
align="center"
key="approverId_dictText"
prop="approverId_dictText"
:show-overflow-tooltip="true"
/>
<el-table-column
label="制单日期"
align="center"
key="occurrenceTime"
prop="occurrenceTime"
:show-overflow-tooltip="true"
/>
<el-table-column
label="盘点日期"
align="center"
@@ -199,12 +257,13 @@ import {
getReportStocktakingPage,
getInit,
getPharmacyCabinetList,
getReportStocktakingPageAuto,
cancelSupply,
stopSupply,
} from "./statisticalManagent";
const { proxy } = getCurrentInstance();
const route = useRoute();
const purchaseinventoryList = ref([]);
const loading = ref(true);
@@ -234,6 +293,38 @@ const data = reactive({
const { queryParams, form, rules } = toRefs(data);
// 监听路由变化
watch(
() => route.query,
(newQuery) => {
// 如果路由中包含指定参数,则使用这些参数进行查询
if (newQuery.purposeLocationId || newQuery.occurrenceTimeSTime || newQuery.occurrenceTimeETime) {
// 设置查询参数
if (newQuery.purposeLocationId) {
queryParams.value.purposeLocationId = newQuery.purposeLocationId;
}
if (newQuery.occurrenceTimeSTime) {
queryParams.value.occurrenceTimeSTime = newQuery.occurrenceTimeSTime + ' 00:00:00';
}
if (newQuery.occurrenceTimeETime) {
queryParams.value.occurrenceTimeETime = newQuery.occurrenceTimeETime + ' 23:59:59';
}
// 执行查询
getList();
}else {
queryParams.value.purposeLocationId = newQuery.sourceLocationId;
queryParams.value.time = newQuery.time + ' 00:00:00';
getReportStocktakingPageAuto(queryParams.value).then((res) => {
loading.value = false;
purchaseinventoryList.value = res.data.records
total.value = res.data.total;
});
}
},
{ immediate: true }
);
function getPharmacyCabinetLists() {
getPharmacyCabinetList().then((response) => {
locationIdList.value = response.data
@@ -245,11 +336,13 @@ function getPharmacyCabinetLists() {
/** 查询调拨管理项目列表 */
function getList() {
loading.value = true;
getReportStocktakingPage(queryParams.value).then((res) => {
loading.value = false;
purchaseinventoryList.value = res.data.records
total.value = res.data.total;
});
if(!route.query.sourceLocationId) {
getReportStocktakingPage(queryParams.value).then((res) => {
loading.value = false;
purchaseinventoryList.value = res.data.records
total.value = res.data.total;
});
}
}
/** 搜索按钮操作 */
@@ -283,6 +376,12 @@ function handleSelectionChange(selection) {
multiple.value = !selection.length;
}
/** 导出按钮操作 */
function handleExport() {
proxy.$download.downloadGet("report-manage/stocktaking/excel-out", {
...queryParams.value
}, `dict_${new Date().getTime()}.xlsx`);
}
getList();
getPharmacyCabinetLists()

View File

@@ -44,6 +44,17 @@
/>
</el-select>
</el-form-item>
<el-form-item label="停供状态:" prop="categoryCode">
<el-select
v-model="queryParams.inventoryStatusEnum"
placeholder="请选择药品类别"
clearable
style="width: 150px"
>
<el-option label="未停供" :value="2" />
<el-option label="已停供" :value="3" />
</el-select>
</el-form-item>
<el-form-item label="医保等级:" prop="chrgitmLv">
<el-select
v-model="queryParams.chrgitmLv"
@@ -440,17 +451,17 @@
:style="'margin-top: 35px;'"
@pagination="getList"
/>
<el-dialog
title="药品追溯码"
v-model="visible"
width="1400"
append-to-body
destroy-on-close
:draggable="true"
>
<traceabilityCodeManagement :recordInfo="recordInfo"></traceabilityCodeManagement>
</el-dialog>
</div>
<el-dialog
title="药品追溯码"
v-model="visible"
width="1400"
append-to-body
destroy-on-close
:draggable="true"
>
<traceabilityCodeManagement :recordInfo="recordInfo"></traceabilityCodeManagement>
</el-dialog>
</template>
<script setup name="StatisticalManagement">

View File

@@ -137,6 +137,14 @@
>重置</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="Download"
@click="handleExport"
>导出</el-button>
</el-col>
</el-row>
<el-table
@@ -323,8 +331,10 @@ import {
cancelSupply,
stopSupply,
} from "./statisticalManagent";
import { watch } from "vue";
const { proxy } = getCurrentInstance();
const route = useRoute();
const {
item_type,
inventory_range,
@@ -364,6 +374,27 @@ const data = reactive({
const { queryParams, form, rules } = toRefs(data);
// 监听路由变化
watch(
() => route.query,
(newQuery) => {
// 如果路由中包含指定参数,则使用这些参数进行查询
if (newQuery.purposeLocationId || newQuery.occurrenceTimeSTime || newQuery.occurrenceTimeETime) {
// 设置查询参数
if (newQuery.purposeLocationId) {
queryParams.value.purposeLocationId = newQuery.purposeLocationId;
}
if (newQuery.occurrenceTimeETime) {
queryParams.value.time = newQuery.occurrenceTimeETime + ' 00:00:00';
}
// 执行查询
getList();
}
},
{ immediate: true }
);
function getPharmacyCabinetLists() {
getPharmacyCabinetList().then((response) => {
locationIdList.value = response.data
@@ -424,6 +455,12 @@ function handleSelectionChange(selection) {
multiple.value = !selection.length;
}
/** 导出按钮操作 */
function handleExport() {
proxy.$download.downloadGet("report-manage/inventory-product/excel-out", {
...queryParams.value
}, `dict_${new Date().getTime()}.xlsx`);
}
getList();
getPharmacyCabinetLists()

View File

@@ -1,278 +1,203 @@
<template>
<div class="app-container">
<!-- <el-row :gutter="10" class="mb8">
<el-form
:model="queryParams"
ref="queryRef"
:inline="true"
label-width="85px"
>
<el-form-item label="结算经办机构:" prop="setlOptins" label-width="110px">
<el-input
v-model="queryParams.setlOptins"
placeholder="请输入结算经办机构"
clearable
style="width: 150px"
@keyup.enter="handleQuery"
/>
</el-form-item>
<el-form-item label="结算日期:">
<el-date-picker
v-model="occurrenceTime"
value-format="YYYY-MM-DD"
type="daterange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
style="width: 300px"
></el-date-picker>
</el-form-item>
<el-form-item label="清算类型:" prop="clrType">
<el-select
v-model="queryParams.clrType"
placeholder="请选择清算类型"
clearable
style="width: 150px"
>
<el-option
v-for="categoryCode in clrTypeOptions"
:key="categoryCode.value"
:label="categoryCode.label"
:value="categoryCode.value"
/>
</el-select>
</el-form-item>
</el-form> -->
<!-- <el-button
type="primary"
plain
icon="Edit"
@click="handleQuery"
>统计</el-button
> -->
<!-- <el-button
type="primary"
plain
icon="Edit"
@click="handleApplyForLiquidation"
>申请清算</el-button
> -->
<!-- </el-col> -->
<!-- </el-row> -->
<!-- <div style="margin-bottom:5px"> -->
<el-row :guutter="15">
<el-tabs v-model="activeTabName" type="card" class="inOut-tabs" @tab-click="hendleTabChange">
<el-tab-pane label="对账" name="first">
<el-row :guutter="15">
<el-form
:model="totalPrice"
ref="priceRef"
:inline="true"
>
<el-row :guutter="15">
<el-form-item label="结算经办机构" prop="setlOptins" label-width="160px">
<el-input
v-model="totalPrice.setlOptins"
placeholder="请输入结算经办机构"
clearable
style="width: 150px"
@keyup.enter="handleQuery"
/>
</el-form-item>
<el-form-item label="结算日期:" label-width="130px">
<el-date-picker
v-model="occurrenceTime"
value-format="YYYY-MM-DD"
type="daterange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
style="width: 300px"
></el-date-picker>
</el-form-item>
<el-form-item label="清算类型:" prop="clrType" label-width="160px">
<el-select
v-model="totalPrice.clrType"
placeholder="请选择清算类型"
clearable
style="width: 150px"
>
<el-option
v-for="categoryCode in clrTypeOptions"
:key="categoryCode.value"
:label="categoryCode.label"
:value="categoryCode.value"
/>
</el-select>
</el-form-item>
</el-row>
<el-row :guutter="15">
<el-form-item label="医疗费总额:" prop="medfeeSumamt" label-width="160px">
<el-input
v-model="totalPrice.medfeeSumamt"
placeholder="请输入医疗费总额"
clearable
style="width: 150px"
/>
</el-form-item>
<el-form-item label="基金支付总额:" prop="fundAppySum" label-width="160px">
<el-input
v-model="totalPrice.fundAppySum"
placeholder="请输入基金支付总额"
clearable
style="width: 150px"
/>
</el-form-item>
<el-form-item label="个人账户支付金额:" prop="acctPay" label-width="160px">
<el-input
v-model="totalPrice.acctPay"
placeholder="请输入个人账户支付金额"
clearable
style="width: 150px"
/>
</el-form-item>
<el-form-item label="现金支付金额:" prop="cashPayamt" label-width="160px">
<el-input
v-model="totalPrice.cashPayamt"
placeholder="请输入现金支付金额"
clearable
style="width: 150px"
/>
</el-form-item>
<el-button
type="primary"
plain
icon="Edit"
@click="handOperatedApply"
>手动清算</el-button
>
</el-row>
<el-form :model="totalPrice" ref="priceRef" :inline="true">
<el-row :guutter="15">
<el-form-item label="结算经办机构:" prop="setlOptins" label-width="160px">
<el-input v-model="totalPrice.setlOptins" placeholder="请输入结算经办机构" clearable style="width: 150px"
@keyup.enter="handleQuery" />
</el-form-item>
<el-form-item label="结算日期" label-width="130px">
<el-date-picker v-model="occurrenceTime" value-format="YYYY-MM-DD" type="daterange" range-separator="-"
start-placeholder="开始日期" end-placeholder="结束日期" style="width: 300px"></el-date-picker>
</el-form-item>
<el-form-item label="清算类型:" prop="clrType" label-width="160px">
<el-select v-model="queryParams.clrType" placeholder="请选择清算类型" clearable style="width: 150px">
<el-option v-for="categoryCode in clrTypeOptions" :key="categoryCode.value" :label="categoryCode.label"
:value="categoryCode.value" />
</el-select>
</el-form-item>
<el-form-item label="险种类型:" prop="insutype" label-width="160px">
<el-select v-model="queryParams.insutype" placeholder="请选择险种类型" clearable style="width: 150px">
<el-option v-for="categoryCode in insutypeOptions" :key="categoryCode.value" :label="categoryCode.label"
:value="categoryCode.value" />
</el-select>
</el-form-item>
</el-row>
<el-row :guutter="15">
<el-form-item label="医疗费总额:" prop="medfeeSumamt" label-width="160px">
<el-input v-model="totalPrice.medfeeSumamt" placeholder="请输入医疗费总额" clearable style="width: 150px" />
</el-form-item>
<el-form-item label="基金支付总额:" prop="fundAppySum" label-width="160px">
<el-input v-model="totalPrice.fundAppySum" placeholder="请输入基金支付总额" clearable style="width: 150px" />
</el-form-item>
<el-form-item label="个人账户支付金额:" prop="acctPay" label-width="160px">
<el-input v-model="totalPrice.acctPay" placeholder="请输入个人账户支付金额" clearable style="width: 150px" />
</el-form-item>
<el-form-item label="现金支付金额:" prop="cashPayamt" label-width="160px">
<el-input v-model="totalPrice.cashPayamt" placeholder="请输入现金支付金额" clearable style="width: 150px" />
</el-form-item>
<el-form-item label="结算笔数:" prop="setlCnt" label-width="160px">
<el-input v-model="totalPrice.setlCnt" placeholder="请输入结算笔数" clearable style="width: 150px" />
</el-form-item>
<!-- <el-button type="primary" plain icon="Edit" @click="handOperatedApply">手动清算</el-button> -->
<el-button type="primary" plain icon="Edit" @click="handOperatedReconcileAccounts">手动对账</el-button>
</el-form>
</el-row>
</el-row>
<!-- </div> -->
<el-table
v-loading="loading"
:data="purchaseinventoryList"
@selection-change="handleSelectionChange"
@row-click="handleRowClick"
>
<el-table-column type="selection" width="50" align="center" />
<el-table-column
label="申请清算ID"
align="center"
key="outResult"
prop="outResult"
width="270"
:show-overflow-tooltip="true"
/>
<el-table-column
label="开始时间"
align="center"
key="begndate"
prop="begndate"
width="150"
:show-overflow-tooltip="true"
/>
<el-table-column
label="结束时间"
align="center"
key="enddate"
prop="enddate"
width="150"
:show-overflow-tooltip="true"
/>
<el-table-column
label="清算类别"
align="center"
key="clrType"
prop="clrType"
width="100"
:show-overflow-tooltip="true"
/>
<el-table-column
label="总费用"
align="center"
key="medfeeSumamt"
prop="medfeeSumamt"
width="170"
:show-overflow-tooltip="true"
/>
<el-table-column
label="医保认可总费用"
align="center"
key="medSumfee"
prop="medSumfee"
width="170"
:show-overflow-tooltip="true"
/>
<el-table-column
label="基金申报金额"
align="center"
key="fundAppySum"
prop="fundAppySum"
width="170"
:show-overflow-tooltip="true"
/>
<el-table-column
label="现金支付总额"
align="center"
key="cashPayamt"
prop="cashPayamt"
width="170"
:show-overflow-tooltip="true"
/>
<el-table-column
label="个人账户金额"
align="center"
key="acctPay"
prop="acctPay"
width="170"
:show-overflow-tooltip="true"
/>
<el-table-column
label="状态"
align="center"
key="status"
prop="status"
width="170"
:show-overflow-tooltip="true"
>
<template #default="scope">
<span>{{ parseTime(scope.row.setlTime) }}</span>
</template>
</el-table-column>
<!-- <el-table-column
label="是否退费"
align="center"
key="refdSetlFlag"
prop="refdSetlFlag"
:show-overflow-tooltip="true"
>
<template #default="scope">
<span>{{ scope.row.refdSetlFlag==1?'退费':'' }}</span>
</template>
</el-table-column> -->
<el-table-column
label="操作"
align="center"
width="300"
class-name="small-padding fixed-width"
fixed="right"
>
<template #default="scope">
<el-button
type="danger"
link
icon="revoked-filled"
:disabled="scope.row.id == ''"
@click="revokedSelectedRows(scope.row)"
>
撤销
</el-button>
</template>
</el-table-column>
</el-table>
</el-form>
</el-row>
<!-- </div> -->
<el-table v-loading="loading" :data="purchaseinventoryList" @selection-change="handleSelectionChange"
@row-click="handleRowClick">
<el-table-column type="selection" width="50" align="center" />
<el-table-column label="申请清算ID" align="center" key="outResult" prop="outResult" width="270"
:show-overflow-tooltip="true" />
<el-table-column label="开始时间" align="center" key="begndate" prop="begndate" width="150"
:show-overflow-tooltip="true" />
<el-table-column label="结束时间" align="center" key="enddate" prop="enddate" width="150"
:show-overflow-tooltip="true" />
<el-table-column label="清算类别" align="center" key="clrType" prop="clrType" width="100"
:show-overflow-tooltip="true" />
<el-table-column label="总费用" align="center" key="medfeeSumamt" prop="medfeeSumamt" width="170"
:show-overflow-tooltip="true" />
<el-table-column label="医保认可总费用" align="center" key="medSumfee" prop="medSumfee" width="170"
:show-overflow-tooltip="true" />
<el-table-column label="基金申报金额" align="center" key="fundAppySum" prop="fundAppySum" width="170"
:show-overflow-tooltip="true" />
<el-table-column label="现金支付总额" align="center" key="cashPayamt" prop="cashPayamt" width="170"
:show-overflow-tooltip="true" />
<el-table-column label="个人账户金额" align="center" key="acctPay" prop="acctPay" width="170"
:show-overflow-tooltip="true" />
<el-table-column label="状态" align="center" key="status" prop="status" width="170" :show-overflow-tooltip="true">
<template #default="scope">
<span>{{ parseTime(scope.row.setlTime) }}</span>
</template>
</el-table-column>
<!-- <el-table-column
label="是否退费"
align="center"
key="refdSetlFlag"
prop="refdSetlFlag"
:show-overflow-tooltip="true"
>
<template #default="scope">
<span>{{ scope.row.refdSetlFlag==1?'退费':'' }}</span>
</template>
</el-table-column> -->
<el-table-column label="操作" align="center" width="300" class-name="small-padding fixed-width" fixed="right">
<template #default="scope">
<el-button type="danger" link icon="revoked-filled" :disabled="scope.row.id == ''"
@click="revokedSelectedRows(scope.row)">
撤销
</el-button>
</template>
</el-table-column>
</el-table>
</el-tab-pane>
<el-tab-pane label="清算" name="second">
<el-row :guutter="15">
<el-form :model="totalPrice" ref="priceRef" :inline="true">
<el-row :guutter="15">
<el-form-item label="结算经办机构:" prop="setlOptins" label-width="160px">
<el-input v-model="totalPrice.setlOptins" placeholder="请输入结算经办机构" clearable style="width: 150px"
@keyup.enter="handleQuery" />
</el-form-item>
<el-form-item label="结算日期:" label-width="130px">
<el-date-picker v-model="occurrenceTime" value-format="YYYY-MM-DD" type="daterange" range-separator="-"
start-placeholder="开始日期" end-placeholder="结束日期" style="width: 300px"></el-date-picker>
</el-form-item>
<el-form-item label="清算类型:" prop="clrType" label-width="160px">
<el-select v-model="queryParams.clrType" placeholder="请选择清算类型" clearable style="width: 150px">
<el-option v-for="categoryCode in clrTypeOptions" :key="categoryCode.value" :label="categoryCode.label"
:value="categoryCode.value" />
</el-select>
</el-form-item>
<!-- <el-form-item label="险种类型:" prop="insutype" label-width="160px">
<el-select v-model="queryParams.insutype" placeholder="请选择险种类型" clearable style="width: 150px">
<el-option v-for="categoryCode in insutypeOptions" :key="categoryCode.value" :label="categoryCode.label"
:value="categoryCode.value" />
</el-select>
</el-form-item> -->
</el-row>
<el-row :guutter="15">
<el-form-item label="医疗费总额:" prop="medfeeSumamt" label-width="160px">
<el-input v-model="totalPrice.medfeeSumamt" placeholder="请输入医疗费总额" clearable style="width: 150px" />
</el-form-item>
<el-form-item label="基金支付总额:" prop="fundAppySum" label-width="160px">
<el-input v-model="totalPrice.fundAppySum" placeholder="请输入基金支付总额" clearable style="width: 150px" />
</el-form-item>
<el-form-item label="个人账户支付金额:" prop="acctPay" label-width="160px">
<el-input v-model="totalPrice.acctPay" placeholder="请输入个人账户支付金额" clearable style="width: 150px" />
</el-form-item>
<el-form-item label="现金支付金额:" prop="cashPayamt" label-width="160px">
<el-input v-model="totalPrice.cashPayamt" placeholder="请输入现金支付金额" clearable style="width: 150px" />
</el-form-item>
<!-- <el-form-item label="结算笔数:" prop="setlCnt" label-width="160px">
<el-input v-model="totalPrice.setlCnt" placeholder="请输入结算笔数" clearable style="width: 150px" />
</el-form-item> -->
<el-button type="primary" plain icon="Edit" @click="handOperatedApply">手动清算</el-button>
<!-- <el-button type="primary" plain icon="Edit" @click="handOperatedReconcileAccounts">手动对账</el-button> -->
</el-row>
</el-form>
</el-row>
<!-- </div> -->
<el-table v-loading="loading" :data="purchaseinventoryList" @selection-change="handleSelectionChange"
@row-click="handleRowClick">
<el-table-column type="selection" width="50" align="center" />
<el-table-column label="申请清算ID" align="center" key="outResult" prop="outResult" width="270"
:show-overflow-tooltip="true" />
<el-table-column label="开始时间" align="center" key="begndate" prop="begndate" width="150"
:show-overflow-tooltip="true" />
<el-table-column label="结束时间" align="center" key="enddate" prop="enddate" width="150"
:show-overflow-tooltip="true" />
<el-table-column label="清算类别" align="center" key="clrType" prop="clrType" width="100"
:show-overflow-tooltip="true" />
<el-table-column label="总费用" align="center" key="medfeeSumamt" prop="medfeeSumamt" width="170"
:show-overflow-tooltip="true" />
<el-table-column label="医保认可总费用" align="center" key="medSumfee" prop="medSumfee" width="170"
:show-overflow-tooltip="true" />
<el-table-column label="基金申报金额" align="center" key="fundAppySum" prop="fundAppySum" width="170"
:show-overflow-tooltip="true" />
<el-table-column label="现金支付总额" align="center" key="cashPayamt" prop="cashPayamt" width="170"
:show-overflow-tooltip="true" />
<el-table-column label="个人账户金额" align="center" key="acctPay" prop="acctPay" width="170"
:show-overflow-tooltip="true" />
<el-table-column label="状态" align="center" key="status" prop="status" width="170" :show-overflow-tooltip="true">
<template #default="scope">
<span>{{ parseTime(scope.row.setlTime) }}</span>
</template>
</el-table-column>
<!-- <el-table-column
label="是否退费"
align="center"
key="refdSetlFlag"
prop="refdSetlFlag"
:show-overflow-tooltip="true"
>
<template #default="scope">
<span>{{ scope.row.refdSetlFlag==1?'退费':'' }}</span>
</template>
</el-table-column> -->
<el-table-column label="操作" align="center" width="300" class-name="small-padding fixed-width" fixed="right">
<template #default="scope">
<el-button type="danger" link icon="revoked-filled" :disabled="scope.row.id == ''"
@click="revokedSelectedRows(scope.row)">
撤销
</el-button>
</template>
</el-table-column>
</el-table>
</el-tab-pane>
</el-tabs>
</div>
</template>
@@ -282,10 +207,12 @@ import {
applyUnClearing,
autoApplyFinancialClearing,
reconcileDetailList,
handOperatedApplyFinancialClearing
handOperatedApplyFinancialClearing,
handOperatedApplyReconcileAccounts
} from "./statisticalManagent";
import { getToken } from "@/utils/auth";
import { formatDateStr } from '@/utils/index';
import { ref } from "vue";
const { proxy } = getCurrentInstance();
const purchaseinventoryList = ref([]);
const loading = ref(false);
@@ -297,7 +224,9 @@ const occurrenceTime = ref([
formatDateStr(getFirstDayOfMonth(new Date()), 'YYYY-MM-DD'), // 当前月份的第一天
formatDateStr(new Date(), 'YYYY-MM-DD') // 当天
])
const activeTabName = ref("first");
const clrTypeOptions = ref([]);
const insutypeOptions = ref([]);
const filePath = ref("")
const purchaseinventoryReturnList = ref([])
const loadingReturn = ref(false)
@@ -306,19 +235,19 @@ const selectedRow = ref([])
const fileSize = ref(10)
const uploadList = ref([]);
const baseUrl = import.meta.env.VITE_APP_BASE_API;
const fileType = ref(["zip","txt"]);
const fileType = ref(["zip", "txt"]);
const data = reactive({
form: {},
queryParams: {
// pageNo: 1,
// pageSize: 10,
setlOptins: '229900',
filePath: undefined,
orgId:undefined,
setlOptins: '229900',
filePath: undefined,
orgId: undefined,
clrType: undefined,
fileQuryNo: undefined,
stmtBegnDate:undefined,
stmtEndDate:undefined,
fileQuryNo: undefined,
stmtBegnDate: undefined,
stmtEndDate: undefined,
},
rules: {},
});
@@ -329,6 +258,7 @@ const totalPrice = reactive({
acctPay: 0,
cashPayamt: 0,
counts: 0,
setlCnt: 0,
medSumfee: 0.00
});
@@ -337,7 +267,7 @@ const { queryParams, form, rules } = toRefs(data);
watch(
() => purchaseinventoryList.value,
(newVlaue) => {
if(newVlaue&&newVlaue.length>0){
if (newVlaue && newVlaue.length > 0) {
handleTotalAmount()
}
},
@@ -346,20 +276,20 @@ watch(
/** 搜索按钮操作 */
function handleQuery() {
queryParams.value.stmtBegnDate =
occurrenceTime.value && occurrenceTime.value.length == 2
? occurrenceTime.value[0] + " 00:00:00"
: "";
queryParams.value.stmtEndDate =
occurrenceTime.value && occurrenceTime.value.length == 2
? occurrenceTime.value[1] + " 23:59:59"
: "";
// queryParams.value.pageNo = 1;
getList();
queryParams.value.stmtBegnDate =
occurrenceTime.value && occurrenceTime.value.length == 2
? occurrenceTime.value[0] + " 00:00:00"
: "";
queryParams.value.stmtEndDate =
occurrenceTime.value && occurrenceTime.value.length == 2
? occurrenceTime.value[1] + " 23:59:59"
: "";
// queryParams.value.pageNo = 1;
getList();
}
function getFirstDayOfMonth(date) {
return new Date(date.getFullYear(), date.getMonth(), 1);
return new Date(date.getFullYear(), date.getMonth(), 1);
}
// 对象转成指定字符串分隔
@@ -377,26 +307,26 @@ function listToString(list, separator) {
function handleTotalAmount() {
totalPrice.counts = purchaseinventoryList.value.length
totalPrice.medfeeSumamt = purchaseinventoryList.value.reduce(
(accumulator, currentRow) => {
return Number(
(accumulator + Number(currentRow.medfeeSumamt || 0)).toFixed(2)
);
},
0
);
(accumulator, currentRow) => {
return Number(
(accumulator + Number(currentRow.medfeeSumamt || 0)).toFixed(2)
);
},
0
);
totalPrice.fundAppySum = purchaseinventoryList.value.reduce(
(accumulator, currentRow) => {
return Number(
(accumulator + Number(currentRow.fundPaySumamt || 0)).toFixed(2)
);
(accumulator + Number(currentRow.fundPaySumamt || 0)).toFixed(2)
);
},
0
);
totalPrice.acctPay = purchaseinventoryList.value.reduce(
(accumulator, currentRow) => {
return Number(
(accumulator + Number(currentRow.acctPay || 0)).toFixed(2)
);
(accumulator + Number(currentRow.acctPay || 0)).toFixed(2)
);
},
0
);
@@ -413,7 +343,22 @@ function getPharmacyCabinetLists() {
{ value: 11, label: '门诊' },
{ value: 21, label: '住院' },
];
insutypeOptions.value = [
{ value: 310, label: '职工基本医疗保险' },
{ value: 390, label: '城乡居民基本医疗保险' },
{ value: 320, label: '公务员医疗补助' },
{ value: 330, label: '大额医疗费用补助' },
{ value: 340, label: '离休人员医疗保障' },
{ value: 350, label: '一至六级残废军人医疗补助' },
{ value: 360, label: '老红军医疗保障' },
{ value: 370, label: '企业补充医疗保险' },
{ value: 380, label: '新型农村合作医疗' },
{ value: 391, label: '城镇居民基本医疗保险' },
{ value: 392, label: '城乡居民大病医疗保险' },
];
}
function handleSelectionChangeReturn(selection) {
idsReturn.value = selection.map((item) => item.id);
singleReturn.value = selection.length != 1;
@@ -425,20 +370,20 @@ function getList() {
// console.log(res,"res----------------")
// loading.value = false;
// purchaseinventoryList.value = [{psnNo:"123",mdtrtId:"121",setlId:"1213",medfeeSumamt:"122",fundPaySumamt:"12",acctPay:"4.72",insutype:"410",clrType: 11,contractNo:"229900"},{psnNo:"123",mdtrtId:"121",setlId:"1213",medfeeSumamt:"122",fundPaySumamt:"12",acctPay:"7.43",insutype:"410",clrType: 11,contractNo:"229900"},{psnNo:"123",mdtrtId:"121",setlId:"1213",medfeeSumamt:"122",fundPaySumamt:"12",acctPay:"1",insutype:"410",clrType: 11,contractNo:"229900"},{psnNo:"123",mdtrtId:"121",setlId:"1213",medfeeSumamt:"122",fundPaySumamt:"12",acctPay:"-1",insutype:"410",clrType: 11,contractNo:"229900"}]
purchaseinventoryList.value = res.data.records ? res.data.records : res.data;
purchaseinventoryList.value = res.data.records ? res.data.records : res.data;
total.value = res.data.total;
});
}
function handleApplyForLiquidation () {
function handleApplyForLiquidation() {
let params = {}
params.clrType = queryParams.value.clrType?queryParams.value.clrType:""
params.setlOptins = queryParams.value.setlOptins?queryParams.value.setlOptins:""
params.stmtBegnDate = queryParams.value.stmtBegnDate?queryParams.value.stmtBegnDate:""
params.stmtEndDate = queryParams.value.stmtEndDate?queryParams.value.stmtEndDate:""
params.clrType = queryParams.value.clrType ? queryParams.value.clrType : ""
params.setlOptins = queryParams.value.setlOptins ? queryParams.value.setlOptins : ""
params.stmtBegnDate = queryParams.value.stmtBegnDate ? queryParams.value.stmtBegnDate : ""
params.stmtEndDate = queryParams.value.stmtEndDate ? queryParams.value.stmtEndDate : ""
autoApplyFinancialClearing(params).then((res) => {
console.log(res.data,'res----------------');
loading.value = false;
console.log(res.data, 'res----------------');
loading.value = false;
});
}
function isAllSelected() {
@@ -447,40 +392,77 @@ function isAllSelected() {
function revokedSelectedRows(row) {
let queryParamsss = {
clrAppyEvtId:row.outResult,
clroptins:queryParams.value.setlOptins?queryParams.value.setlOptins:"",
clrAppyEvtId: row.outResult,
clroptins: queryParams.value.setlOptins ? queryParams.value.setlOptins : "",
}
applyUnClearing(queryParamsss).then(res => {
proxy.$message.success('撤销成功')
getList()
proxy.$message.success('撤销成功')
getList()
}).catch(err => {
proxy.$message.error('撤销失败')
proxy.$message.error('撤销失败')
})
}
/** 选择条数 */
function handleSelectionChange(selection) {
selectedRow.value = selection
console.log(selectedRow.value,"selectedRow.value")
console.log(selectedRow.value, "selectedRow.value")
ids.value = selection.map((item) => item.setlId);
single.value = selection.length != 1;
multiple.value = !selection.length;
}
function handOperatedApply () {
const params = {...totalPrice}
params.clrOptins = queryParams.value.setlOptins?queryParams.value.setlOptins:""
params.begndate = queryParams.value.stmtBegnDate?queryParams.value.stmtBegnDate:""
params.enddate = queryParams.value.stmtEndDate?queryParams.value.stmtEndDate:""
params.clrType = queryParams.value.clrType?queryParams.value.clrType:""
handOperatedApplyFinancialClearing(params).then(res => {
function handOperatedApply() {
const params = { ...totalPrice }
params.clrOptins = queryParams.value.setlOptins ? queryParams.value.setlOptins : ""
params.begndate = occurrenceTime.value[0] ? occurrenceTime.value[0] + ' 00:00:00' : ""
params.enddate = occurrenceTime.value[1] ? occurrenceTime.value[1] + ' 23:59:59' : ""
params.clrType = queryParams.value.clrType ? queryParams.value.clrType : ""
handOperatedApplyFinancialClearing(params).then(res => {
}).catch(err => {
proxy.$message.error('申请失败')
proxy.$message.error('申请失败')
})
}
function hendleTabChange() {
totalPrice.medfeeSumamt = 0;
totalPrice.fundAppySum = 0;
totalPrice.acctPay = 0;
totalPrice.cashPayamt = 0;
totalPrice.counts = 0;
totalPrice.setlCnt = 0;
totalPrice.medSumfee = 0.00;
occurrenceTime.value = [
formatDateStr(getFirstDayOfMonth(new Date()), 'YYYY-MM-DD'), // 当前月份的第一天
formatDateStr(new Date(), 'YYYY-MM-DD') // 当天
]
purchaseinventoryList.value = []
queryParams.value = {
setlOptins: '229900',
filePath: undefined,
orgId: undefined,
clrType: undefined,
fileQuryNo: undefined,
stmtBegnDate: undefined,
stmtEndDate: undefined,
}
}
function handOperatedReconcileAccounts() {
const params = { ...totalPrice }
params.clrOptins = queryParams.value.setlOptins ? queryParams.value.setlOptins : ""
params.begndate = occurrenceTime.value[0] ? occurrenceTime.value[0] + ' 00:00:00' : ""
params.enddate = occurrenceTime.value[1] ? occurrenceTime.value[1] + ' 23:59:59' : ""
params.clrType = queryParams.value.clrType ? queryParams.value.clrType : ""
params.insutype = queryParams.value.insutype ? queryParams.value.insutype : ""
handOperatedApplyReconcileAccounts(params).then(res => {
}).catch(err => {
proxy.$message.error('对账失败')
})
}
//点击列表当前行
function handleRowClick(row) {
// editRowTK.value = row
console.log(row,"row")
console.log(row, "row")
// if(row.returnStatus==1){
// loadingReturn.value = true
// generatedReturnDetail(row.supplyBusNo).then((response) => {
@@ -489,7 +471,7 @@ function handleRowClick(row) {
// // k.returnStatus_text = k.returnStatus==1?'已退库':''
// k.originalSupplyBusNo = k.originalSupplyBusNo?k.originalSupplyBusNo:row.supplyBusNo
// })
// })
// loadingReturn.value = false
// }

View File

@@ -83,6 +83,14 @@
>重置</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="Download"
@click="handleExport"
>导出</el-button>
</el-col>
</el-row>
<el-table
@@ -107,6 +115,14 @@
width="140"
:show-overflow-tooltip="true"
/>
<el-table-column
label="单据号"
align="center"
key="supplyBusno"
prop="supplyBusno"
width="200"
:show-overflow-tooltip="true"
/>
<el-table-column
label="项目名称"
align="center"
@@ -149,6 +165,13 @@
prop="locationName"
:show-overflow-tooltip="true"
/>
<el-table-column
label="货位"
align="center"
key="locationStoreName"
prop="locationStoreName"
:show-overflow-tooltip="true"
/>
<el-table-column
label="单位"
align="center"
@@ -156,15 +179,50 @@
prop="unitCode_dictText"
:show-overflow-tooltip="true"
/>
<el-table-column
label="采购单价"
align="center"
key="price"
prop="price"
:show-overflow-tooltip="true"
/>
<el-table-column
label="报损数量"
align="center"
key="itemQuantity"
prop="itemQuantity"
:show-overflow-tooltip="true"
/>
<el-table-column
label="报损金额"
align="center"
key="totalPrice"
prop="totalPrice"
:show-overflow-tooltip="true"
/>
<el-table-column
label="供应商"
align="center"
key="supplier"
prop="supplier"
:show-overflow-tooltip="true"
/>
<el-table-column
label="审核人"
align="center"
key="approverId_dictText"
prop="approverId_dictText"
:show-overflow-tooltip="true"
/>
<el-table-column
label="制单日期"
align="center"
key="occurrenceTime"
prop="occurrenceTime"
:show-overflow-tooltip="true"
/>
<el-table-column
label="报损日期"
label="审批日期"
align="center"
key="approvalTime"
prop="approvalTime"
@@ -194,6 +252,7 @@ import {
} from "./statisticalManagent";
const { proxy } = getCurrentInstance();
const route = useRoute();
const purchaseinventoryList = ref([]);
const loading = ref(true);
@@ -219,6 +278,30 @@ const data = reactive({
const { queryParams, form, rules } = toRefs(data);
// 监听路由变化
watch(
() => route.query,
(newQuery) => {
// 如果路由中包含指定参数,则使用这些参数进行查询
if (newQuery.purposeLocationId || newQuery.occurrenceTimeSTime || newQuery.occurrenceTimeETime) {
// 设置查询参数
if (newQuery.purposeLocationId) {
queryParams.value.purposeLocationId = newQuery.purposeLocationId;
}
if (newQuery.occurrenceTimeSTime) {
queryParams.value.occurrenceTimeSTime = newQuery.occurrenceTimeSTime + ' 00:00:00';
}
if (newQuery.occurrenceTimeETime) {
queryParams.value.occurrenceTimeETime = newQuery.occurrenceTimeETime + ' 23:59:59';
}
// 执行查询
getList();
}
},
{ immediate: true }
);
function getPharmacyCabinetLists() {
getPharmacyCabinetList().then((response) => {
locationIdList.value = response.data
@@ -268,6 +351,13 @@ function handleSelectionChange(selection) {
multiple.value = !selection.length;
}
/** 导出按钮操作 */
function handleExport() {
proxy.$download.downloadGet("report-manage/loss/excel-out", {
...queryParams.value
}, `dict_${new Date().getTime()}.xlsx`);
}
getList();
getPharmacyCabinetLists()
</script>

View File

@@ -466,7 +466,7 @@ import { watch } from "vue";
import { endsWith } from "lodash";
const userStore = useUserStore();
const router = useRouter();
const route = useRoute();
const { proxy } = getCurrentInstance();
const totalAmount = ref(0);
const {
@@ -526,6 +526,29 @@ watch(
},
{ immediate: true }
);
// 监听路由变化
watch(
() => route.query,
(newQuery) => {
// 如果路由中包含指定参数,则使用这些参数进行查询
if (newQuery.purposeLocationId || newQuery.occurrenceTimeSTime || newQuery.occurrenceTimeETime) {
// 设置查询参数
if (newQuery.purposeLocationId) {
queryParams.value.locationId = newQuery.purposeLocationId;
}
if (newQuery.occurrenceTimeSTime) {
queryParams.value.dispenseTimeSTime = newQuery.occurrenceTimeSTime + ' 00:00:00';
}
if (newQuery.occurrenceTimeETime) {
queryParams.value.dispenseTimeETime = newQuery.occurrenceTimeETime + ' 23:59:59';
}
queryParams.value.flag = 1
// 执行查询
getList();
}
},
{ immediate: true }
);
/**计算合计金额 */
function handleTotalAmount() {
totalAmount.value = purchaseinventoryList.value.reduce(
@@ -668,6 +691,7 @@ function getList(type) {
getAmbPractitionerDetail(queryParams.value).then((res) => {
purchaseinventoryList.value = res.data.records
total.value = res.data.total;
loading.value = false;
if(purchaseinventoryList.value.length==0){
return
}
@@ -690,7 +714,6 @@ function getList(type) {
purchaseinventoryList.value.push({practitionerName:'合计',dispensePrice:dispensePrice,refundPrice:refundPrice})
}
}
loading.value = false;
// 带分页数据
if(total.value&&total.value>queryParams.value.pageSize){
let queryParamsValue = {

View File

@@ -1,11 +1,3 @@
<!--
* @Author: X_bo v-hss@tbpartners.local
* @Date: 2025-09-01 16:37:41
* @LastEditTime: 2025-09-02 17:21:49
* @LastEditors: X_bo v-hss@tbpartners.local
* @Description:
* @FilePath: \openhis-ui-vue3\src\views\medicationmanagement\statisticalManagement\pharmacyMonthlybalance.vue
-->
<template>
<div class="app-container">
<el-row>
@@ -94,6 +86,14 @@
icon="Search"
@click="handleRightQuery"
>查询</el-button>
<el-button
type="warning"
plain
icon="Download"
@click="handleExport"
:disabled="!rightQueryParams.orgId"
>导出Excel</el-button
>
</el-form-item>
</el-form>
@@ -108,6 +108,7 @@
<el-table-column label="生产厂家" prop="manufacturerText" width="500" :show-overflow-tooltip="true" />
<el-table-column label="数量" prop="totalQuantity" width="100" :show-overflow-tooltip="true" />
<el-table-column label="单位" prop="unitCode_dictText" width="100" :show-overflow-tooltip="true" />
<el-table-column label="单价" prop="unitPrice" width="100" :show-overflow-tooltip="true" />
<el-table-column label="项目总价" prop="totalMoney" width="120" :show-overflow-tooltip="true" />
<el-table-column label="所属科室" prop="orgId_dictText" width="150" :show-overflow-tooltip="true" />
<el-table-column label="发放时间" prop="dispenseTime" width="240" :show-overflow-tooltip="true">
@@ -204,9 +205,9 @@ function getRightList() {
rightLoading.value = true;
getMedDevInfo(rightQueryParams.value).then((res) => {
console.log(res)
rightTableData.value = res.data.data.records || [];
rightTableData.value = res.data.records || [];
// 设置总条数
rightTotal.value = res.data.data.total || 0;
rightTotal.value = res.data.total || 0;
rightLoading.value = false;
}).catch(() => {
rightLoading.value = false;
@@ -293,6 +294,12 @@ function handleCurrentChange(val) {
rightQueryParams.value.pageNo = val;
getRightList();
}
/** 导出按钮操作 */
function handleExport() {
proxy.$download.downloadGet("report-manage/medication-device/excel-out", {
...rightQueryParams.value,
}, `config_${new Date().getTime()}.xlsx`);
}
</script>
<style scoped>

View File

@@ -138,6 +138,14 @@
>重置</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="Download"
@click="handleExport"
>导出</el-button>
</el-col>
</el-row>
<el-table
@@ -276,13 +284,13 @@
<el-table-column
label="制单日期"
align="center"
key="createTime"
prop="createTime"
key="occurrenceTime"
prop="occurrenceTime"
width="160"
:show-overflow-tooltip="true"
>
<template #default="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
<span>{{ parseTime(scope.row.occurrenceTime) }}</span>
</template>
</el-table-column>
<el-table-column
@@ -316,6 +324,7 @@ import {
} from "./statisticalManagent";
const { proxy } = getCurrentInstance();
const route = useRoute();
// const {
// item_type
@@ -347,8 +356,8 @@ const data = reactive({
purposeLocationId: undefined,
categoryType: undefined,
supplierId: undefined,
createTimeSTime:undefined,
createTimeETime:undefined,
occurrenceTimeSTime:undefined,
occurrenceTimeETime:undefined,
},
rules: {},
});
@@ -363,6 +372,12 @@ function getPharmacyCabinetLists() {
supplierListOptions.value = response.data.supplierListOptions
})
}
/** 导出按钮操作 */
function handleExport() {
proxy.$download.downloadGet("report-manage/inbound/excel-out", {
...queryParams.value
}, `dict_${new Date().getTime()}.xlsx`);
}
/** 查询调拨管理项目列表 */
function getList() {
loading.value = true;
@@ -373,13 +388,37 @@ function getList() {
});
}
// 监听路由变化
watch(
() => route.query,
(newQuery) => {
// 如果路由中包含指定参数,则使用这些参数进行查询
if (newQuery.purposeLocationId || newQuery.occurrenceTimeSTime || newQuery.occurrenceTimeETime) {
// 设置查询参数
if (newQuery.purposeLocationId) {
queryParams.value.purposeLocationId = newQuery.purposeLocationId;
}
if (newQuery.occurrenceTimeSTime) {
queryParams.value.occurrenceTimeSTime = newQuery.occurrenceTimeSTime + ' 00:00:00';
}
if (newQuery.occurrenceTimeETime) {
queryParams.value.occurrenceTimeETime = newQuery.occurrenceTimeETime + ' 23:59:59';
}
// 执行查询
getList();
}
},
{ immediate: true }
);
/** 搜索按钮操作 */
function handleQuery() {
queryParams.value.createTimeSTime =
queryParams.value.occurrenceTimeSTime =
approvalTime.value && approvalTime.value.length == 2
? approvalTime.value[0] + " 00:00:00"
: "";
queryParams.value.createTimeETime =
queryParams.value.occurrenceTimeETime =
approvalTime.value && approvalTime.value.length == 2
? approvalTime.value[1] + " 23:59:59"
: "";
@@ -390,8 +429,8 @@ function handleQuery() {
/** 清空条件按钮操作 */
function handleClear() {
// 清空查询条件
queryParams.value.createTimeSTime = ""
queryParams.value.createTimeETime = ""
queryParams.value.occurrenceTimeSTime = ""
queryParams.value.occurrenceTimeETime = ""
approvalTime.value = ""
proxy.resetForm("queryRef");
getList();

View File

@@ -138,6 +138,14 @@
>重置</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="Download"
@click="handleExport"
>导出</el-button>
</el-col>
</el-row>
<el-table
@@ -293,13 +301,13 @@
<el-table-column
label="制单日期"
align="center"
key="createTime"
prop="createTime"
key="occurrenceTime"
prop="occurrenceTime"
width="160"
:show-overflow-tooltip="true"
>
<template #default="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
<span>{{ parseTime(scope.row.occurrenceTime) }}</span>
</template>
</el-table-column>
<el-table-column
@@ -333,6 +341,7 @@ import {
} from "./statisticalManagent";
const { proxy } = getCurrentInstance();
const route = useRoute();
// const {
// item_type
// } = proxy.useDict(
@@ -363,14 +372,38 @@ const data = reactive({
purposeLocationId: undefined,
categoryType: undefined,
supplierId: undefined,
createTimeSTime:undefined,
createTimeETime:undefined,
occurrenceTimeSTime:undefined,
occurrenceTimeETime:undefined,
},
rules: {},
});
const { queryParams, form, rules } = toRefs(data);
// 监听路由变化
watch(
() => route.query,
(newQuery) => {
// 如果路由中包含指定参数,则使用这些参数进行查询
if (newQuery.purposeLocationId || newQuery.occurrenceTimeSTime || newQuery.occurrenceTimeETime) {
// 设置查询参数
if (newQuery.purposeLocationId) {
queryParams.value.purposeLocationId = newQuery.purposeLocationId;
}
if (newQuery.occurrenceTimeSTime) {
queryParams.value.occurrenceTimeSTime = newQuery.occurrenceTimeSTime + ' 00:00:00';
}
if (newQuery.occurrenceTimeETime) {
queryParams.value.occurrenceTimeETime = newQuery.occurrenceTimeETime + ' 23:59:59';
}
// 执行查询
getList();
}
},
{ immediate: true }
);
function getPharmacyCabinetLists() {
getPharmacyCabinetList().then((response) => {
locationIdList.value = response.data
@@ -391,11 +424,11 @@ function getList() {
/** 搜索按钮操作 */
function handleQuery() {
queryParams.value.createTimeSTime =
queryParams.value.occurrenceTimeSTime =
approvalTime.value && approvalTime.value.length == 2
? approvalTime.value[0] + " 00:00:00"
: "";
queryParams.value.createTimeETime =
queryParams.value.occurrenceTimeETime =
approvalTime.value && approvalTime.value.length == 2
? approvalTime.value[1] + " 23:59:59"
: "";
@@ -406,8 +439,8 @@ function handleQuery() {
/** 清空条件按钮操作 */
function handleClear() {
// 清空查询条件
queryParams.value.createTimeSTime = ""
queryParams.value.createTimeETime = ""
queryParams.value.occurrenceTimeSTime = ""
queryParams.value.occurrenceTimeETime = ""
approvalTime.value = ""
proxy.resetForm("queryRef");
getList();
@@ -420,6 +453,12 @@ function handleSelectionChange(selection) {
multiple.value = !selection.length;
}
/** 导出按钮操作 */
function handleExport() {
proxy.$download.downloadGet("report-manage/purchase-return/excel-out", {
...queryParams.value
}, `dict_${new Date().getTime()}.xlsx`);
}
getList();
getPharmacyCabinetLists()

View File

@@ -122,6 +122,14 @@
>重置</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="Download"
@click="handleExport"
>导出</el-button>
</el-col>
</el-row>
<el-table
@@ -258,6 +266,18 @@
prop="supplierId_dictText"
:show-overflow-tooltip="true"
/>
<el-table-column
label="制单日期"
align="center"
key="occurrenceTime"
prop="occurrenceTime"
width="160"
:show-overflow-tooltip="true"
>
<template #default="scope">
<span>{{ parseTime(scope.row.occurrenceTime) }}</span>
</template>
</el-table-column>
<el-table-column
label="审核人"
align="center"
@@ -305,6 +325,7 @@ import {
} from "./statisticalManagent";
const { proxy } = getCurrentInstance();
const route = useRoute();
const {
item_type,
@@ -340,6 +361,29 @@ const data = reactive({
const { queryParams, form, rules } = toRefs(data);
// 监听路由变化
watch(
() => route.query,
(newQuery) => {
// 如果路由中包含指定参数,则使用这些参数进行查询
if (newQuery.purposeLocationId || newQuery.occurrenceTimeSTime || newQuery.occurrenceTimeETime) {
// 设置查询参数
if (newQuery.purposeLocationId) {
queryParams.value.sourceLocationId = newQuery.purposeLocationId;
}
if (newQuery.occurrenceTimeSTime) {
queryParams.value.occurrenceTimeSTime = newQuery.occurrenceTimeSTime + ' 00:00:00';
}
if (newQuery.occurrenceTimeETime) {
queryParams.value.occurrenceTimeETime = newQuery.occurrenceTimeETime + ' 23:59:59';
}
// 执行查询
getList();
}
},
{ immediate: true }
);
function getPharmacyCabinetLists() {
getPharmacyCabinetList().then((response) => {
@@ -398,7 +442,12 @@ function handleSelectionChange(selection) {
multiple.value = !selection.length;
}
/** 导出按钮操作 */
function handleExport() {
proxy.$download.downloadGet("report-manage/outbound/excel-out", {
...queryParams.value
}, `dict_${new Date().getTime()}.xlsx`);
}
getList();
getPharmacyCabinetLists()

View File

@@ -162,6 +162,14 @@
>重置</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="Download"
@click="handleExport"
>导出</el-button>
</el-col>
</el-row>
<el-table
@@ -317,6 +325,13 @@
<span>{{ parseTime(scope.row.approvalTime) }}</span>
</template>
</el-table-column>
<el-table-column
label="制单日期"
align="center"
key="occurrenceTime"
prop="occurrenceTime"
:show-overflow-tooltip="true"
/>
<el-table-column
label="备注"
align="center"
@@ -346,6 +361,7 @@ import {
} from "./statisticalManagent";
const { proxy } = getCurrentInstance();
const route = useRoute();
const purchaseinventoryList = ref([]);
const loading = ref(true);
@@ -376,6 +392,29 @@ const data = reactive({
const { queryParams, form, rules } = toRefs(data);
// 监听路由变化
watch(
() => route.query,
(newQuery) => {
// 如果路由中包含指定参数,则使用这些参数进行查询
if (newQuery.purposeLocationId || newQuery.occurrenceTimeSTime || newQuery.occurrenceTimeETime) {
// 设置查询参数
if (newQuery.purposeLocationId) {
queryParams.value.purposeLocationId = newQuery.purposeLocationId;
}
if (newQuery.occurrenceTimeSTime) {
queryParams.value.occurrenceTimeSTime = newQuery.occurrenceTimeSTime + ' 00:00:00';
}
if (newQuery.occurrenceTimeETime) {
queryParams.value.occurrenceTimeETime = newQuery.occurrenceTimeETime + ' 23:59:59';
}
// 执行查询
getList();
}
},
{ immediate: true }
);
function getPharmacyCabinetLists() {
getDepartmentList().then((response) => {
@@ -430,6 +469,13 @@ function handleSelectionChange(selection) {
multiple.value = !selection.length;
}
/** 导出按钮操作 */
function handleExport() {
proxy.$download.downloadGet("report-manage/return-issue/excel-out", {
...queryParams.value
}, `dict_${new Date().getTime()}.xlsx`);
}
getList();
getPharmacyCabinetLists()
</script>

View File

@@ -1,402 +1,418 @@
import request from '@/utils/request'
// 查询库存明细列表
export function getproductReturnPage(query) {
return request({
url:'/inventory-manage/product/product-page',
method: 'get',
params: query
})
return request({
url: '/inventory-manage/product/product-page',
method: 'get',
params: query
})
}
// 查询单据初始化数据
export function getInit() {
return request({
url: '/inventory-manage/product/product-init',
method: 'get'
})
}
return request({
url: '/inventory-manage/product/product-init',
method: 'get'
})
}
export function getBusNoInit() { //单据号
return request({
url: '/inventory-manage/product/bus-no-init',
method: 'get'
})
export function getBusNoInit() { //单据号
return request({
url: '/inventory-manage/product/bus-no-init',
method: 'get'
})
}
// 获取药品目录
export function getMedicineList(queryParams) {
return request({
url: '/app-common/inventory-item',
method: 'get',
params: queryParams
})
return request({
url: '/app-common/inventory-item',
method: 'get',
params: queryParams
})
}
// 获取药品目录
export function getCount(queryParams) {
return request({
url:'/app-common/inventory-item-info',
method: 'get',
params: queryParams
})
return request({
url: '/app-common/inventory-item-info',
method: 'get',
params: queryParams
})
}
// 获取药房列表
export function getPharmacyList() {
return request({
url: '/app-common/pharmacy-list',
method: 'get',
})
return request({
url: '/app-common/pharmacy-list',
method: 'get',
})
}
// 药房药库列表
export function getPharmacyCabinetList() {
return request({
url: '/app-common/pharmacy-cabinet-list',
method: 'get',
})
return request({
url: '/app-common/pharmacy-cabinet-list',
method: 'get',
})
}
// 获取药库列表
export function getDispensaryList() {
return request({
url: '/app-common/cabinet-list',
method: 'get',
})
return request({
url: '/app-common/cabinet-list',
method: 'get',
})
}
// 停供
export function stopSupply(busNo) {
return request({
url: '/inventory-manage/product/stop-supply',
method: 'put',
data: busNo
})
return request({
url: '/inventory-manage/product/stop-supply',
method: 'put',
data: busNo
})
}
// 取消停供
export function cancelSupply(busNo) {
return request({
url: '/inventory-manage/product/cancel-supply',
method: 'put',
data: busNo
})
return request({
url: '/inventory-manage/product/cancel-supply',
method: 'put',
data: busNo
})
}
// 查询库存商品明细查询报表列表
export function getReportProductPage(query) {
return request({
url:'/report-manage/inventory-product/report-product-page',
method: 'get',
params: query
})
return request({
url: '/report-manage/inventory-product/report-product-page',
method: 'get',
params: query
})
}
//查询采购入库明细报表
export function getReportInboundPCage(query) {
return request({
url:'/report-manage/inbound/report-inbound-page',
method: 'get',
params: query
})
return request({
url: '/report-manage/inbound/report-inbound-page',
method: 'get',
params: query
})
}
//查询调拨入库明细报表
export function getReportTransferPage(query) {
return request({
url:'/report-manage/transfer/report-transfer-page',
method: 'get',
params: query
})
return request({
url: '/report-manage/transfer/report-transfer-page',
method: 'get',
params: query
})
}
//查询库存盘点明细报表
export function getReportStocktakingPage(query) {
return request({
url:'/report-manage/stocktaking/report-stocktaking-page',
method: 'get',
params: query
})
return request({
url: '/report-manage/stocktaking/report-stocktaking-page',
method: 'get',
params: query
})
}
//报损明细
export function getReportLossPage(query) {
return request({
url:'/report-manage/loss/report-loss-page',
method: 'get',
params: query
})
return request({
url: '/report-manage/loss/report-loss-page',
method: 'get',
params: query
})
}
// 医保对账
export function ybRequestReconcile(data) {
return request({
url: '/yb-request/reconcile',
method: 'post',
data: data
})
return request({
url: '/yb-request/reconcile',
method: 'post',
data: data
})
}
// 合同
export function getContractList() {
return request({
url: '/app-common/contract-list',
method: 'get',
})
return request({
url: '/app-common/contract-list',
method: 'get',
})
}
// 对账列表 结算
export function getReconcileList(params) {
return request({
url: '/yb-request/reconcile-list',
method: 'get',
params:params
})
return request({
url: '/yb-request/reconcile-list',
method: 'get',
params: params
})
}
//领用出库明细
export function getRreportOutboundPage(query) {
return request({
url:'/report-manage/outbound/report-outbound-page',
method: 'get',
params: query
})
return request({
url: '/report-manage/outbound/report-outbound-page',
method: 'get',
params: query
})
}
// 获取科室列表
export function getDepartmentList() {
return request({
url: '/app-common/department-list',
method: 'get',
})
return request({
url: '/app-common/department-list',
method: 'get',
})
}
// 查询领用出库明细初始化数据 供应商
export function getOutboundInit() {
return request({
url: '/report-manage/outbound/init',
method: 'get'
})
}
return request({
url: '/report-manage/outbound/init',
method: 'get'
})
}
// 查询采购入库明细初始化数据 供应商
export function getInboundInit() {
return request({
url: '/report-manage/inbound/init',
method: 'get'
})
}
return request({
url: '/report-manage/inbound/init',
method: 'get'
})
}
//领用退库明细
export function getRreportReturnIssue(query) {
return request({
url:'/report-manage/return-issue/report-return-issue',
method: 'get',
params: query
})
return request({
url: '/report-manage/return-issue/report-return-issue',
method: 'get',
params: query
})
}
// 查询领用退库明细初始化数据 供应商
export function getReturnIssueInit() {
return request({
url: '/report-manage/return-issue/init',
method: 'get'
})
}
return request({
url: '/report-manage/return-issue/init',
method: 'get'
})
}
//采购退库明细
export function getReportPurchaseReturn(query) {
return request({
url:'/report-manage/purchase-return/report-purchase-return',
method: 'get',
params: query
})
return request({
url: '/report-manage/purchase-return/report-purchase-return',
method: 'get',
params: query
})
}
// 查询采购退库明细初始化数据
export function getPurchaseReturnInit() {
return request({
url: '/report-manage/purchase-return/init',
method: 'get'
})
return request({
url: '/report-manage/purchase-return/init',
method: 'get'
})
}
//待发药查询
export function getAwaitingPendingMedicationPageList(query) {
return request({
url:'/pharmacy-manage/pending-medication/pending-medication-page',
method: 'get',
params: query
})
return request({
url: '/pharmacy-manage/pending-medication/pending-medication-page',
method: 'get',
params: query
})
}
//发药明细 切换统计类型
export function getAmbPractitionerDetail(query) {
return request({
url:'/pharmacy-manage/medication-details/amb-practitioner-detail',
method: 'get',
params: query
})
return request({
url: '/pharmacy-manage/medication-details/amb-practitioner-detail',
method: 'get',
params: query
})
}
// 门诊发药明细流水账接口
export function getAmbMedicationDetail(query) {
return request({
url:'/pharmacy-manage/medication-details/amb-medication-detail',
method: 'get',
params: query
})
return request({
url: '/pharmacy-manage/medication-details/amb-medication-detail',
method: 'get',
params: query
})
}
// 查询发药明细初始化数据
export function getMedicationDetailsInit() {
return request({
url: '/pharmacy-manage/medication-details/init',
method: 'get'
})
return request({
url: '/pharmacy-manage/medication-details/init',
method: 'get'
})
}
// 医保对账明细
export function reconcileDetailList(data) {
return request({
url: '/yb-request/reconcile-detail-list',
method: 'post',
data:data
})
return request({
url: '/yb-request/reconcile-detail-list',
method: 'post',
data: data
})
}
// 医保对账明细导出txt
export function reconcileDetailTxt(data) {
return request({
url: '/yb-request/reconcile-detail-txt',
method: 'post',
data: data
})
return request({
url: '/yb-request/reconcile-detail-txt',
method: 'post',
data: data
})
}
// 医保明细对总账
export function reconcileGeneral(data) {
return request({
url: '/yb-request/reconcile-general',
method: 'post',
data: data
})
return request({
url: '/yb-request/reconcile-general',
method: 'post',
data: data
})
}
//查询门诊收费明细
export function getReportChargePage(params) {
return request({
url: '/report-manage/charge/report-charge-page',
method: 'get',
params:params
})
return request({
url: '/report-manage/charge/report-charge-page',
method: 'get',
params: params
})
}
//查询门诊收费明细初始值
export function getReportChargeInit() {
return request({
url: '/report-manage/charge/init',
method: 'get'
})
return request({
url: '/report-manage/charge/init',
method: 'get'
})
}
//查询挂号收费明细
export function getReportRegisterPage(params) {
return request({
url: '/report-manage/register/report-register-page',
method: 'get',
params:params
})
return request({
url: '/report-manage/register/report-register-page',
method: 'get',
params: params
})
}
//查询挂号收费明细初始值
export function getReportRegisterInit() {
return request({
url: '/report-manage/register/init',
method: 'get'
})
return request({
url: '/report-manage/register/init',
method: 'get'
})
}
// 文件上传
export function ybRequestFileUp(data) {
return request({
url: '/yb-request/file-up',
method: 'post',
data: data
})
return request({
url: '/yb-request/file-up',
method: 'post',
data: data
})
}
export function getExpirationWarning(query) {
return request({
url:'/inventory-manage/product/expiration-warning',
method: 'get',
params: query
})
return request({
url: '/inventory-manage/product/expiration-warning',
method: 'get',
params: query
})
}
export function getClroptins(query) {
return request({
url:'/yb-request/select-clroptins',
method: 'get',
params: query
})
return request({
url: '/yb-request/select-clroptins',
method: 'get',
params: query
})
}
export function applyFinancialClearing(data) {
return request({
url:'/yb-request/apply-financial-clearing',
method: 'post',
data: data
})
return request({
url: '/yb-request/apply-financial-clearing',
method: 'post',
data: data
})
}
export function applyFinancialClearingList(query) {
return request({
url:'/yb-request/apply-financial-clearing-list',
method: 'get',
params: query
})
return request({
url: '/yb-request/apply-financial-clearing-list',
method: 'get',
params: query
})
}
export function applyUnClearing(query) {
return request({
url:'/yb-request/apply-un-clearing',
method: 'get',
params: query
})
return request({
url: '/yb-request/apply-un-clearing',
method: 'get',
params: query
})
}
export function autoApplyFinancialClearing(data) {
return request({
url:'/yb-request/auto-apply-financial-clearing',
method: 'post',
data: data
})
return request({
url: '/yb-request/auto-apply-financial-clearing',
method: 'post',
data: data
})
}
export function traceabilityCodeManagementInit(data) {
return request({
url:'/inventory-manage/traceNo/init',
method: 'get',
data: data
})
return request({
url: '/inventory-manage/traceNo/init',
method: 'get',
data: data
})
}
export function inventoryReceiptPage(query) {
return request({
url:'/inventory-manage/traceNo/inventory-receipt-page',
method: 'get',
params: query
})
return request({
url: '/inventory-manage/traceNo/inventory-receipt-page',
method: 'get',
params: query
})
}
export function handOperatedApplyFinancialClearing(data) {
return request({
url:'/yb-request/hand-operated-apply-financial-clearing',
method: 'post',
data: data
})
return request({
url: '/yb-request/hand-operated-apply-financial-clearing',
method: 'post',
data: data
})
}
export function handOperatedApplyReconcileAccounts(data) {
return request({
url: '/yb-request/hand-operated-apply-reconcile-accounts',
method: 'post',
data: data
})
}
export function productPageTotal(query) {
return request({
url:'/inventory-manage/product/product-page-total',
method: 'get',
params: query
})
return request({
url: '/inventory-manage/product/product-page-total',
method: 'get',
params: query
})
}
export function getMedDevInfo(query) {
return request({
url:'/report-manage/medication-device/med-dev-info',
method: 'get',
params: query
})
return request({
url: '/report-manage/medication-device/med-dev-info',
method: 'get',
params: query
})
}
export function getMedDevAll(query) {
return request({
url:'/report-manage/medication-device/med-dev-all',
method: 'get',
params: query
})
return request({
url: '/report-manage/medication-device/med-dev-all',
method: 'get',
params: query
})
}
export function getReportStocktakingPageAuto(query) {
return request({
url: '/report-manage/stocktaking/report-stocktaking-page-auto',
method: 'get',
params: query
})
}

View File

@@ -80,6 +80,14 @@
>重置</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="Download"
@click="handleExport"
>导出</el-button>
</el-col>
</el-row>
<el-table
@@ -199,13 +207,13 @@
<el-table-column
label="制单日期"
align="center"
key="createTime"
prop="createTime"
key="occurrenceTime"
prop="occurrenceTime"
width="160"
:show-overflow-tooltip="true"
>
<template #default="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
<span>{{ parseTime(scope.row.occurrenceTime) }}</span>
</template>
</el-table-column>
<el-table-column
@@ -258,6 +266,7 @@ const multiple = ref(true);
const total = ref(0);
const occurrenceTime = ref([]);
const locationIdList = ref([]);
const route = useRoute();
const data = reactive({
form: {},
@@ -267,14 +276,41 @@ const data = reactive({
searchKey: undefined,
sourceLocationId:undefined,
purposeLocationId:undefined,
createTimeSTime:undefined,
createTimeETime:undefined,
occurrenceTimeSTime:undefined,
occurrenceTimeETime:undefined,
},
rules: {},
});
const { queryParams, form, rules } = toRefs(data);
// 监听路由变化
watch(
() => route.query,
(newQuery) => {
// 如果路由中包含指定参数,则使用这些参数进行查询
if (newQuery.purposeLocationId || newQuery.occurrenceTimeSTime || newQuery.occurrenceTimeETime) {
// 设置查询参数
if (newQuery.purposeLocationId) {
queryParams.value.purposeLocationId = newQuery.purposeLocationId;
}
if (newQuery.sourceLocationId) {
queryParams.value.sourceLocationId = newQuery.sourceLocationId;
}
if (newQuery.occurrenceTimeSTime) {
queryParams.value.occurrenceTimeSTime = newQuery.occurrenceTimeSTime + ' 00:00:00';
}
if (newQuery.occurrenceTimeETime) {
queryParams.value.occurrenceTimeETime = newQuery.occurrenceTimeETime + ' 23:59:59';
}
// 执行查询
getList();
}
},
{ immediate: true }
);
function getPharmacyCabinetLists() {
getPharmacyCabinetList().then((response) => {
locationIdList.value = response.data
@@ -298,11 +334,11 @@ function getList() {
/** 搜索按钮操作 */
function handleQuery() {
queryParams.value.createTimeSTime =
queryParams.value.occurrenceTimeSTime =
occurrenceTime.value && occurrenceTime.value.length == 2
? occurrenceTime.value[0] + " 00:00:00"
: "";
queryParams.value.createTimeETime =
queryParams.value.occurrenceTimeETime =
occurrenceTime.value && occurrenceTime.value.length == 2
? occurrenceTime.value[1] + " 23:59:59"
: "";
@@ -313,8 +349,8 @@ function handleQuery() {
/** 清空条件按钮操作 */
function handleClear() {
// 清空查询条件
queryParams.value.createTimeSTime = ""
queryParams.value.createTimeETime = ""
queryParams.value.occurrenceTimeSTime = ""
queryParams.value.occurrenceTimeETime = ""
occurrenceTime.value = ""
proxy.resetForm("queryRef");
getList();
@@ -327,6 +363,12 @@ function handleSelectionChange(selection) {
multiple.value = !selection.length;
}
/** 导出按钮操作 */
function handleExport() {
proxy.$download.downloadGet("report-manage/transfer/excel-out", {
...queryParams.value
}, `dict_${new Date().getTime()}.xlsx`);
}
getList();
getPharmacyCabinetLists()