| | |
| | | <template> |
| | | <basicContainer> |
| | | <avue-crud |
| | | :option="option" |
| | | :table-loading="pageF.loading" |
| | | :data="tableData" |
| | | :page="page" |
| | | :permission="permissionList" |
| | | :before-open="beforeOpen" |
| | | v-model="form" v-model:search="queryParams" |
| | | ref="crudRef" |
| | | @row-update="rowUpdate" |
| | | @row-save="rowSave" |
| | | @refresh-change="refreshChange" |
| | | @row-del="rowDel" |
| | | @search-change="searchChange" |
| | | @search-reset="searchReset" |
| | | @selection-change="selectionChange" |
| | | @current-change="currentChange" |
| | | @size-change="sizeChange" |
| | | @on-load="onLoad" |
| | | > |
| | | <avue-crud :option="option" :table-loading="pageF.loading" :data="tableData" :page="page" |
| | | :permission="permissionList" :before-open="beforeOpen" v-model="form" v-model:search="queryParams" ref="crudRef" |
| | | @row-update="rowUpdate" @row-save="rowSave" @refresh-change="refreshChange" @row-del="rowDel" |
| | | @search-change="searchChange" @search-reset="searchReset" @selection-change="selectionChange" |
| | | @current-change="currentChange" @size-change="sizeChange" @on-load="onLoad"> |
| | | <template #menu-left> |
| | | <!-- <el-button--> |
| | | <!-- type="success"--> |
| | |
| | | <!-- v-hasPermi="['tms:tmsApBill:remove']"--> |
| | | <!-- >删除--> |
| | | <!-- </el-button>--> |
| | | <el-button |
| | | type="warning" |
| | | plain |
| | | icon="Download" |
| | | @click="handleExport" |
| | | v-hasPermi="['tms:tmsApBill:export']" |
| | | >导出 |
| | | <el-button type="warning" plain icon="Download" @click="handleExport" v-hasPermi="['tms:tmsApBill:export']">导出 |
| | | </el-button> |
| | | </template> |
| | | <template #menu="{row}"> |
| | |
| | | <el-link size="small" type="primary" v-if="row.pushStatus == '3' || row.pushStatus == '4'" |
| | | @click="handleManualPush(row)" class="link-btn" underline="never" icon="el-icon-upload">手动推送 |
| | | </el-link> |
| | | <el-link size="small" type="primary" v-if="row.status == 0" |
| | | @click="handleEdit(row)" class="link-btn" :underline="false" |
| | | icon="el-icon-edit">账单确认 |
| | | <el-link size="small" type="primary" v-if="row.status == 0" @click="handleEdit(row)" class="link-btn" |
| | | :underline="false" icon="el-icon-edit">账单确认 |
| | | </el-link> |
| | | <el-link size="small" type="primary" |
| | | @click="handleView(row)" class="link-btn" :underline="false" |
| | | <el-link size="small" type="primary" @click="handleView(row)" class="link-btn" :underline="false" |
| | | icon="el-icon-view">查看 |
| | | </el-link> |
| | | <el-link size="small" type="primary" |
| | | @click="handleLog(row)" class="link-btn" :underline="false" |
| | | <!-- <el-link size="small" type="primary" @click="handleLog(row)" class="link-btn" :underline="false" |
| | | icon="el-icon-tickets">日志 |
| | | </el-link> --> |
| | | |
| | | <el-link size="small" type="primary" @click="handleFlow(row)" class="link-btn" underline="never" |
| | | icon="el-icon-document"> |
| | | 审核日志 |
| | | </el-link> |
| | | </template> |
| | | </avue-crud> |
| | | |
| | | <el-dialog :title="pageF.title" v-model="pageF.open" class="avue-dialog avue-dialog--top" width="80%"> |
| | | |
| | | <avue-form v-if="opt == 'js'" v-model="boxForm" ref="boxFormRef" |
| | | :option="boxFormOption"> |
| | | <avue-form v-if="opt == 'js'" v-model="boxForm" ref="boxFormRef" :option="boxFormOption"> |
| | | <template #settleAmount> |
| | | <avue-input-number :min="0" :max="form.actualSettlementAmount" v-model="boxForm.settleAmount" placeholder="请输入结算金额"></avue-input-number> |
| | | <avue-input-number :min="0" :max="form.actualSettlementAmount" v-model="boxForm.settleAmount" |
| | | placeholder="请输入结算金额"></avue-input-number> |
| | | |
| | | </template> |
| | | </avue-form> |
| | |
| | | <el-descriptions-item label="应结算金额">{{form.settleAmount}}</el-descriptions-item> |
| | | <el-descriptions-item label="减免金额"> |
| | | <div v-if="opt === 'edit'"> |
| | | <el-input-number :max="form.settleAmount" v-model="form.deductionAmount" placeholder="请输入减免金额" @change="deductionAmountChange" /> |
| | | <el-input-number :max="form.settleAmount" v-model="form.deductionAmount" placeholder="请输入减免金额" |
| | | @change="deductionAmountChange" /> |
| | | </div> |
| | | <div v-else>{{form.deductionAmount}}</div> |
| | | </el-descriptions-item> |
| | |
| | | <div v-if="opt === 'edit'"> |
| | | <el-input v-model="form.reasonReduction" placeholder="请输入减免原因" /> |
| | | </div> |
| | | <div v-else>{{form.reasonReduction}}</div></el-descriptions-item> |
| | | <div v-else>{{ form.reasonReduction }}</div> |
| | | </el-descriptions-item> |
| | | <el-descriptions-item label="已结算金额" v-if="opt == 'js'">{{form.settledAmount}}</el-descriptions-item> |
| | | <el-descriptions-item label="待结算金额" v-if="opt == 'js'">{{Number(form.settleAmount) - Number(form.settledAmount)}}</el-descriptions-item> |
| | | <el-descriptions-item label="待结算金额" v-if="opt == 'js'">{{ Number(form.settleAmount) - |
| | | Number(form.settledAmount)}}</el-descriptions-item> |
| | | </el-descriptions> |
| | | <h3>关联明细</h3> |
| | | <avue-crud |
| | | :option="YSGenerateTableOption" ref="itemsTableRef" |
| | | :data="form.items" |
| | | > |
| | | <avue-crud :option="YSGenerateTableOption" ref="itemsTableRef" :data="form.items"> |
| | | <template #menu="{row}"> |
| | | <el-link size="small" type="primary" |
| | | @click="handleCancel(row)" class="link-btn" :underline="false" |
| | | <el-link size="small" type="primary" @click="handleCancel(row)" class="link-btn" :underline="false" |
| | | icon="el-icon-close">取消关联 |
| | | </el-link> |
| | | </template> |
| | |
| | | </el-dialog> |
| | | <el-dialog :title="pageF.title" v-model="open2" class="avue-dialog avue-dialog--top" width="80%"> |
| | | |
| | | <avue-crud |
| | | :option="logTableOption" ref="itemsTableRef2" |
| | | :data="logTable" |
| | | > |
| | | <avue-crud :option="logTableOption" ref="itemsTableRef2" :data="logTable"> |
| | | |
| | | </avue-crud> |
| | | |
| | |
| | | |
| | | |
| | | </basicContainer> |
| | | <flowLog ref="flowLogIshow" :isShow="false" title="审核日志" :flowParams="flowParams"></flowLog> |
| | | </template> |
| | | |
| | | <script setup name="tmsApBill" lang="ts"> |
| | |
| | | exportTmsApBill, |
| | | getTmsApBill, |
| | | listTmsApBill, |
| | | updateTmsApBill,manualPushTmsApBill |
| | | updateTmsApBill, manualPushTmsApBill,getPayableAuditLog |
| | | } from "@/api/tms/tmsApBill"; |
| | | import useCurrentInstance from "@/utils/useCurrentInstance"; |
| | | import {computed, reactive, ref, toRefs} from "vue"; |
| | |
| | | // 取消操作 |
| | | }); |
| | | } |
| | | |
| | | const flowLogIshow = ref() |
| | | const flowParams = ref([]) |
| | | |
| | | const handleFlow = (row: any) => { |
| | | let data = { |
| | | headId: row.id, |
| | | } |
| | | getPayableAuditLog(data).then((res) => { |
| | | flowParams.value = res.rows |
| | | flowLogIshow.value.openModel() |
| | | |
| | | }) |
| | | } |
| | | </script> |