feat: 工会报销优化2

This commit is contained in:
2026-11-06 18:35:51 +08:00
parent d6e3815b3d
commit 22a18986d0
4 changed files with 22 additions and 17 deletions
@@ -68,9 +68,9 @@ public class OutlayAnnualAllocateController {
for (NutMap row : rows) row.put("year", queryYear);
columns.add(new ExcelExportEntity("基础经费已下拨(元)", "baseMoney", 24));
columns.add(new ExcelExportEntity("专项经费已下拨(元)", "specialMoney", 24));
columns.add(new ExcelExportEntity("新流程合计下拨(元)", "totalMoney", 24));
columns.add(new ExcelExportEntity("合计经费下拨(元)", "totalMoney", 24));
} else if ("history".equals(type)) {
title = "历史季度记录";
title = "历史年度记录";
rows = outlayAnnualAllocateService.historyRecords(queryYear, unionId);
Map<String, String> projectNames = new HashMap<>();
for (Sys_dict dict : sysDictService.getSubListByCode("OUTLAY_QUARTERLY")) {
@@ -65,7 +65,7 @@ layout("/layouts/platform.html"){
<el-tab-pane label="年度基础经费" name="base"></el-tab-pane>
<el-tab-pane label="专项经费" name="special"></el-tab-pane>
<el-tab-pane label="下拨汇总" name="summary"></el-tab-pane>
<el-tab-pane label="历史季度记录" name="history"></el-tab-pane>
<el-tab-pane label="历史年度记录" name="history"></el-tab-pane>
</el-tabs>
<table-tool label="年度经费下拨">
<el-button v-if="tab==='base'" size="small" type="primary" @click="generateVisible=true" :disabled="busy">生成年度基础经费</el-button>
@@ -86,7 +86,7 @@ layout("/layouts/platform.html"){
<template v-if="tab==='summary'">
<el-table-column prop="baseMoney" label="基础经费已下拨(元)" min-width="160"></el-table-column>
<el-table-column prop="specialMoney" label="专项经费已下拨(元)" min-width="160"></el-table-column>
<el-table-column prop="totalMoney" label="新流程合计下拨(元)" min-width="160"></el-table-column>
<el-table-column prop="totalMoney" label="合计经费下拨(元)" min-width="160"></el-table-column>
</template>
<template v-else-if="tab==='history'">
<el-table-column label="分配项目" min-width="140"><template slot-scope="{row}"><dict-tag :options="dict.type.OUTLAY_QUARTERLY" :value="row.quarterly"></dict-tag></template></el-table-column>
@@ -192,7 +192,7 @@ layout("/layouts/platform.html"){
mixins: [OUTLAY_UNION_FIXED_LIST_MIXIN],
dicts: ['OUTLAY_QUARTERLY'],
data() { return {
tab: 'base', query: {year: this.$moment().format('YYYY'), unionId: '', projectName: '', amountMatch: '', pageNumber: 1, pageSize: 20},
tab: 'base', query: {year: this.$moment().format('YYYY'), unionId: '', projectName: '', amountMatch: '', pageNumber: 1, pageSize: 10},
unionList: [], rows: [], total: 0, loading: false, busy: false, requestSequence: 0,
standard: 800, generateVisible: false, editVisible: false, isNew: false, form: {}, originalAllocateMoney: 0,
baseImportVisible: false, baseImportRows: [], baseImportRemark: '',
@@ -58,7 +58,7 @@ layout("/layouts/platform.html"){
}
.invoice-detail-dialog .el-dialog__body {
max-height: 70vh;
max-height: min(80vh, calc(95vh - 128px));
overflow-y: auto;
padding: 12px 24px;
}
@@ -726,6 +726,16 @@ layout("/layouts/platform.html"){
<el-input placeholder="识别后自动回填" v-model="detailForm.invoiceDate" readonly></el-input>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12">
<el-form-item label="销售方信息名称" prop="sellerName">
<el-input placeholder="验真后自动回填" v-model="detailForm.sellerName" readonly></el-input>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12">
<el-form-item label="项目名称" prop="itemName">
<el-input placeholder="验真后自动回填" v-model="detailForm.itemName" readonly></el-input>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="8">
<el-form-item label="价税合计" prop="invoiceAmount">
<el-input-number :controls="false" :min="0" :precision="2"
@@ -745,16 +755,6 @@ layout("/layouts/platform.html"){
v-model="detailForm.taxAmount" disabled></el-input-number>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12">
<el-form-item label="销售方信息名称" prop="sellerName">
<el-input placeholder="验真后自动回填" v-model="detailForm.sellerName" readonly></el-input>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12">
<el-form-item label="项目名称" prop="itemName">
<el-input placeholder="验真后自动回填" v-model="detailForm.itemName" readonly></el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="备注" prop="remark">
<el-input :autosize="{ minRows: 3, maxRows: 5}"
@@ -380,7 +380,12 @@ const unionReimburseInfo = {
if (!this.row || !this.$refs.snakerChartRef) {
return
}
this.$refs.snakerChartRef.onOpenFull(this.row.instanceProcessDefineId, this.row.instanceId)
const {instanceProcessDefineId, instanceId} = this.row
if (!instanceProcessDefineId || !instanceId) {
this.$message.warning("暂无流程图信息")
return
}
this.$refs.snakerChartRef.onOpenFull(instanceProcessDefineId, instanceId)
}
}
}