往来管理、出纳管理页面

This commit is contained in:
fenghaoyuan 2024-09-24 17:16:41 +08:00
parent 73878dcc24
commit e43cf09735
5 changed files with 364 additions and 0 deletions

View File

@ -305,6 +305,48 @@ export const constantRouterMap = [
},
]
},
{
path: '/exchangeManagement',
component: Layout,
name: 'exchangeManagement',
redirect: 'noredirect',
meta: { title: '往来管理', icon: 'example'},
children: [
{
path: '/exchangeManagement/collectionAndPayment',
component: () => import('@/views/exchangeManagement/collectionAndPayment'),
meta: { title: '收付款列表' },
name: 'collectionAndPayment',
},
{
path: '/exchangeManagement/supplier',
component: () => import('@/views/exchangeManagement/supplier'),
meta: { title: '供应商' },
name: 'supplier',
},
]
},
{
path: '/cashingManagement',
component: Layout,
name: 'cashingManagement',
redirect: 'noredirect',
meta: { title: '出纳管理', icon: 'example'},
children: [
{
path: '/cashingManagement/cashing',
component: () => import('@/views/cashingManagement/cashing'),
meta: { title: '出纳列表' },
name: 'cashing',
},
{
path: '/cashingManagement/invoiceManagement',
component: () => import('@/views/cashingManagement/invoiceManagement'),
meta: { title: '发票管理' },
name: 'cashingManagement',
},
]
},
{
path: '/financialManagement',
component: Layout,

View File

View File

@ -0,0 +1,113 @@
<template>
<div class="app-container">
<!-- 搜索 -->
<div class="filter-container">
<el-form :inline="true" :model="searchForm">
<el-form-item label="名称" >
<el-input v-model="searchForm.advice_man" placeholder="请输入名称" />
</el-form-item>
<el-form-item label="供应商" >
<el-input v-model="searchForm.advice_content" placeholder="请输入供应商" />
</el-form-item>
<el-form-item label="客户" >
<el-input v-model="searchForm.advice_content" placeholder="请输入客户" />
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="fetchData">搜索</el-button>
</el-form-item>
</el-form>
</div>
<!-- 表格 -->
<el-table v-loading="listLoading" :data="firmList" border fit highlight-current-row style="width: 100%;">
<el-table-column label="ID" prop="id" align="center" width="80"></el-table-column>
<el-table-column label="发票号码" prop="invoiceNumber" align="center"></el-table-column>
<el-table-column label="开票日期" prop="invoiceDate" align="center"></el-table-column>
<el-table-column label="发票类型" prop="invoiceType" align="center"></el-table-column>
<el-table-column label="供应商代码" prop="supplierCode" align="center"></el-table-column>
<el-table-column label="供应商名称" prop="supplierName" align="center"></el-table-column>
<el-table-column label="物料编码" prop="materialCode" align="center"></el-table-column>
<el-table-column label="物料名称" prop="materialName" align="center"></el-table-column>
<el-table-column label="规格型号" prop="specification" align="center"></el-table-column>
<el-table-column label="单位" prop="unit" align="center"></el-table-column>
<el-table-column label="数量" prop="quantity" align="center"></el-table-column>
<el-table-column label="含税单价" prop="taxPrice" align="center"></el-table-column>
<el-table-column label="税率" prop="taxRate" align="center"></el-table-column>
<el-table-column label="不含税金额" prop="untaxedAmount" align="center"></el-table-column>
<el-table-column label="税额" prop="taxAmount" align="center"></el-table-column>
<el-table-column label="价税合计" prop="totalPrice" align="center"></el-table-column>
<el-table-column label="备注" prop="remark" align="center"></el-table-column>
<el-table-column label="操作" align="center" width="220">
<template slot-scope="scope">
<el-button class="ml-10" size="mini" type="primary" @click="handleDetail(scope.row.advice_content)"> 详情 </el-button>
</template>
</el-table-column>
</el-table>
<!-- 翻页 -->
<pagination v-show="total>0"
:total="total"
:page.sync="searchForm.page"
:page_len.sync="searchForm.page_len"
:limit.sync="searchForm.limit"
@pagination="fetchData" />
<!-- 弹窗 -->
<el-dialog title="详情" :visible.sync="dialog" center width="540px">
<div class="box font-16 lh-24">{{viewsContent}}</div>
</el-dialog>
</div>
</template>
<script>
import { listAdvice } from '@/api/system/index'
export default {
data() {
return {
firmList: [], //
total: 0, //
listLoading: true,
//
searchForm: {
page: 1,
page_len: 10
},
dialog: false, //
viewsContent: '', //
}
},
created() {
this.fetchData()
},
methods: {
//
fetchData(obj={}) {
if(obj.page) {
this.searchForm.page = obj.page
this.searchForm.page_len = obj.page_len
}
this.listLoading = true
this.$http(listAdvice(this.searchForm), (res) => {
this.firmList = res.data.result
this.total = res.data.data_sum
this.listLoading = false
})
},
//
handleDetail(viewsContent) {
if(viewsContent) {
this.viewsContent = viewsContent
this.dialog = true
}
},
}
}
</script>
<style lang='scss' scoped>
.box {
width: 496px;
padding: 20px;
text-indent:2em;
border: 1px solid #ccc;
}
</style>

View File

@ -0,0 +1,102 @@
<template>
<div class="app-container">
<!-- 搜索 -->
<div class="filter-container">
<el-form :inline="true" :model="searchForm">
<el-form-item label="收款" >
<el-input v-model="searchForm.advice_man" placeholder="请输入收款" />
</el-form-item>
<el-form-item label="付款" >
<el-input v-model="searchForm.advice_content" placeholder="请输入付款" />
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="fetchData">搜索</el-button>
</el-form-item>
</el-form>
</div>
<!-- 表格 -->
<el-table v-loading="listLoading" :data="firmList" border fit highlight-current-row style="width: 100%;">
<el-table-column label="ID" prop="id" align="center" width="80"></el-table-column>
<el-table-column label="日期" prop="time" align="center"></el-table-column>
<el-table-column label="单据编号" prop="documentNumber" align="center"></el-table-column>
<el-table-column label="单据类型" prop="documentType" align="center"></el-table-column>
<el-table-column label="结算单位全名" prop="settlementCompanyFullName" align="center"></el-table-column>
<el-table-column label="收货单位全名" prop="receivingCompanyFullName" align="center"></el-table-column>
<el-table-column label="单据金额" prop="documentAmount" align="center"></el-table-column>
<el-table-column label="合计结算金额" prop="settlementAmount" align="center"></el-table-column>
<el-table-column label="未结算金额" prop="unSettlementAmount" align="center"></el-table-column>
<el-table-column label="操作" align="center" width="220">
<template slot-scope="scope">
<el-button class="ml-10" size="mini" type="primary" @click="handleDetail(scope.row.advice_content)"> 详情 </el-button>
</template>
</el-table-column>
</el-table>
<!-- 翻页 -->
<pagination v-show="total>0"
:total="total"
:page.sync="searchForm.page"
:page_len.sync="searchForm.page_len"
:limit.sync="searchForm.limit"
@pagination="fetchData" />
<!-- 弹窗 -->
<el-dialog title="详情" :visible.sync="dialog" center width="540px">
<div class="box font-16 lh-24">{{viewsContent}}</div>
</el-dialog>
</div>
</template>
<script>
import { listAdvice } from '@/api/system/index'
export default {
data() {
return {
firmList: [], //
total: 0, //
listLoading: true,
//
searchForm: {
page: 1,
page_len: 10
},
dialog: false, //
viewsContent: '', //
}
},
created() {
this.fetchData()
},
methods: {
//
fetchData(obj={}) {
if(obj.page) {
this.searchForm.page = obj.page
this.searchForm.page_len = obj.page_len
}
this.listLoading = true
this.$http(listAdvice(this.searchForm), (res) => {
this.firmList = res.data.result
this.total = res.data.data_sum
this.listLoading = false
})
},
//
handleDetail(viewsContent) {
if(viewsContent) {
this.viewsContent = viewsContent
this.dialog = true
}
},
}
}
</script>
<style lang='scss' scoped>
.box {
width: 496px;
padding: 20px;
text-indent:2em;
border: 1px solid #ccc;
}
</style>

View File

@ -0,0 +1,107 @@
<template>
<div class="app-container">
<!-- 搜索 -->
<div class="filter-container">
<el-form :inline="true" :model="searchForm">
<el-form-item label="供应商" >
<el-input v-model="searchForm.advice_man" placeholder="请输入供应商" />
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="fetchData">搜索</el-button>
</el-form-item>
</el-form>
</div>
<!-- 表格 -->
<el-table v-loading="listLoading" :data="firmList" border fit highlight-current-row style="width: 100%;">
<el-table-column label="ID" prop="id" align="center" width="80"></el-table-column>
<el-table-column label="结算单位全名" prop="settlementCompanyFullName" align="center"></el-table-column>
<el-table-column label="应付账款" align="center">
<el-table-column label="期初余额" prop="time" align="center"></el-table-column>
<el-table-column label="本期发生" prop="documentNumber" align="center"></el-table-column>
<el-table-column label="期末余额" prop="documentType" align="center"></el-table-column>
</el-table-column>
<el-table-column label="预付账款" align="center">
<el-table-column label="期初余额" prop="time" align="center"></el-table-column>
<el-table-column label="本期发生" prop="documentNumber" align="center"></el-table-column>
<el-table-column label="期末余额" prop="documentType" align="center"></el-table-column>
</el-table-column>
<el-table-column label="往来合计" align="center">
<el-table-column label="期初余额" prop="time" align="center"></el-table-column>
<el-table-column label="本期发生" prop="documentNumber" align="center"></el-table-column>
<el-table-column label="期末余额" prop="documentType" align="center"></el-table-column>
</el-table-column>
<el-table-column label="操作" align="center" width="220">
<template slot-scope="scope">
<el-button class="ml-10" size="mini" type="primary" @click="handleDetail(scope.row.advice_content)"> 详情 </el-button>
</template>
</el-table-column>
</el-table>
<!-- 翻页 -->
<pagination v-show="total>0"
:total="total"
:page.sync="searchForm.page"
:page_len.sync="searchForm.page_len"
:limit.sync="searchForm.limit"
@pagination="fetchData" />
<!-- 弹窗 -->
<el-dialog title="详情" :visible.sync="dialog" center width="540px">
<div class="box font-16 lh-24">{{viewsContent}}</div>
</el-dialog>
</div>
</template>
<script>
import { listAdvice } from '@/api/system/index'
export default {
data() {
return {
firmList: [], //
total: 0, //
listLoading: true,
//
searchForm: {
page: 1,
page_len: 10
},
dialog: false, //
viewsContent: '', //
}
},
created() {
this.fetchData()
},
methods: {
//
fetchData(obj={}) {
if(obj.page) {
this.searchForm.page = obj.page
this.searchForm.page_len = obj.page_len
}
this.listLoading = true
this.$http(listAdvice(this.searchForm), (res) => {
this.firmList = res.data.result
this.total = res.data.data_sum
this.listLoading = false
})
},
//
handleDetail(viewsContent) {
if(viewsContent) {
this.viewsContent = viewsContent
this.dialog = true
}
},
}
}
</script>
<style lang='scss' scoped>
.box {
width: 496px;
padding: 20px;
text-indent:2em;
border: 1px solid #ccc;
}
</style>