This commit is contained in:
liushuai
2020-03-24 17:40:29 +08:00
parent b52efdee42
commit 95c0bcf29b
9 changed files with 547 additions and 185 deletions

View File

@@ -0,0 +1,46 @@
import request from '@/utils/request'
import state from '@/store'
import router from '@/router'
// 初始化采购员
export function initBuyer() {
return request({
url: '',
method: 'post',
data: {
UserID: state.state.user.id,
ModularID: router.currentRoute.path,
type: '1',
name: '人事档案管理_人员与角色_查询数据_采购员'
}
})
}
// 采购合同查询
export function searchTable1(radio, check1, supplier, check2, start, end, check3, name, pageCurrent, pageSize) {
return request({
url: '',
method: 'post',
data: {
UserID: state.state.user.id,
ModularID: router.currentRoute.path,
type: '1',
name: '采购管理_合同审批查询_查询数据',
param: '查询全部=' + radio + '&供应商名称_check=' + check1 + '&供应商名称=' + supplier + '&时间段_check=' + check2 + '&开始时间=' + start + '&结束时间=' + end + '&人员编号_check=' + check3 + '&人员编号=' + name,
Pagination: pageCurrent + '&' + pageSize
}
})
}
// 采购合同明细查询
export function searchTable2(num) {
return request({
url: '',
method: 'post',
data: {
UserID: state.state.user.id,
ModularID: router.currentRoute.path,
type: '1',
name: '采购管理_采购合同内容_查询数据',
param: '采购合同流水号=' + num
}
})
}

View File

@@ -0,0 +1,59 @@
import request from '@/utils/request'
import state from '@/store'
import router from '@/router'
// 初始化采购员
export function initBuyer() {
return request({
url: '',
method: 'post',
data: {
UserID: state.state.user.id,
ModularID: router.currentRoute.path,
type: '1',
name: '人事档案管理_人员与角色_查询数据_采购员'
}
})
}
// 采购合同查询
export function searchTable1(radio, check1, supplier, check2, start, end, check3, name, pageCurrent, pageSize) {
return request({
url: '',
method: 'post',
data: {
UserID: state.state.user.id,
ModularID: router.currentRoute.path,
type: '1',
name: '采购管理_情况审批查询_查询数据',
param: '查询全部=' + radio + '&供应商流水号_check=' + check1 + '&供应商流水号=' + supplier + '&时间段_check=' + check2 + '&开始时间=' + start + '&结束时间=' + end + '&人员编号_check=' + check3 + '&人员编号=' + name,
Pagination: pageCurrent + '&' + pageSize
}
})
}
// 查询离线合同请款信息明细
export function searchTable2(num) {
return request({
url: '',
method: 'post',
data: {
UserID: state.state.user.id,
ModularID: router.currentRoute.path,
type: '1',
name: '采购管理_采购合同_请款明细_查询数据',
param: `采购合同请款流水号=${num}`
}
})
}
// 查询供应商
export function searchSupplier() {
return request({
url: '',
method: 'post',
data: {
UserID: state.state.user.id,
ModularID: router.currentRoute.path,
type: '1',
name: '采购管理_供应商_查询数据_根据条件'
}
})
}

View File

@@ -9,7 +9,7 @@
:label="item.label"
:value="item.value"/>
</el-select>
<span style="margin-left: 0">提交时间:</span>
<span style="margin-left: 0">审核时间:</span>
<el-date-picker
v-model="dateRange"
size="small"
@@ -59,16 +59,16 @@
{{ scope.row.操作时间 ? scope.row.操作时间.split(' ')[0] : '' }}
</template>
</el-table-column>
<el-table-column label="审核人" align="center" min-width="60">
<template slot-scope="scope">
{{ scope.row.审核人姓名 }}
</template>
</el-table-column>
<el-table-column label="审核时间" align="center" min-width="60">
<template slot-scope="scope">
{{ scope.row.审核时间 ? scope.row.审核时间.split(' ')[0] : '' }}
</template>
</el-table-column>
<el-table-column label="审核人" align="center" min-width="60">
<template slot-scope="scope">
{{ scope.row.姓名 }}
</template>
</el-table-column>
<el-table-column label="审核结果" align="center" min-width="60">
<template slot-scope="scope">
{{ scope.row.审核情况内容 }}
@@ -76,7 +76,7 @@
</el-table-column>
<el-table-column label="操作" align="center" width="90px" fixed="right">
<template slot-scope="scope">
<el-tooltip :open-delay="1000" effect="dark" content="物料移出采购计划" placement="top">
<el-tooltip :open-delay="1000" effect="dark" content="查看详情" placement="top">
<div style="display: inline-block">
<el-button type="text" size="mini" @click="searchTable2(scope.row)">详情</el-button>
</div>
@@ -97,7 +97,7 @@
</div>
</el-card>
<el-dialog v-el-drag-dialog :visible.sync="dialogFormVisible" title="合同审通知" center style="min-height: 300px;" width="370px">
<el-dialog v-el-drag-dialog :visible.sync="dialogFormVisible" title="合同审通知" center style="min-height: 300px;" width="900px">
<div style="min-height:500px;margin: 0px auto;width:800px;border:1px solid black" v-html="returns"/>
</el-dialog>
</div>

View File

@@ -1,236 +1,203 @@
<template>
<div class="app-container">
<el-card>
<el-select v-model="projectValue" filterable clearable size="small" style="margin-right:10px;width: 150px" placeholder="项目名称" @change="typeChange">
<el-input v-model="billNames" clearable filterable size="small" placeholder="供应商或合同编号" style="width: 200px;margin: 5px"/>
<el-select v-model="personValue" placeholder="采购员" size="small" style="width: 120px" clearable>
<el-option
v-for="item in project"
v-for="item in person"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
<el-select v-model="machineValue" clearable filterable size="small" style="margin-right:10px;width: 150px" placeholder="机床名称">
<el-option
v-for="item in machine"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
<el-button size="small" type="primary" icon="el-icon-search" style="margin: 0 0 0 10px" plain @click="searchTable()">查询</el-button>
<el-button size="small" type="primary" icon="el-icon-download" style="margin: 0 0 0 10px" plain @click="exportExcel()">导出</el-button>
<span style="margin-left: 0">审批时间:</span>
<el-date-picker
v-model="dateRange"
size="small"
type="daterange"
align="center"
style="width: 300px"
value-format="yyyy-MM-dd"
format="yyyy-MM-dd"
range-separator=""
start-placeholder="开始日期"
end-placeholder="结束日期"/>
<el-button type="primary" plain size="small" icon="el-icon-search" style="margin-left: 10px" @click="total1=0;pageCurrent1=1;pageSize1=50;searchTable1()">查询</el-button>
<el-radio v-model="radio" label="1" style="margin: 0 0 0 10px">全部</el-radio>
<el-radio v-model="radio" label="2" style="margin: 0 0 0 10px">通过</el-radio>
<el-radio v-model="radio" label="3" style="margin: 0 0 0 10px">未过</el-radio>
<el-button type="success" size="small" icon="el-icon-download" style="margin-left:10px;margin-top: 3px;margin-right: 20px;float: right" plain @click="exportTable('')">导出</el-button>
</el-card>
<el-card>
<el-table v-loading="loading" :data="tableData" highlight-current-row show-summary border style="width: 1510px;" size="mini" height="700">
<el-table-column label="跟单号" align="center" width="150">
<el-card style="margin-top: 5px">
<el-table v-loading="loading1" :data="tableData1" size="mini" border stripe style="width: 100%" height="600px" highlight-current-row @row-click="searchTable2">
<el-table-column label="采购合同编号" align="center" min-width="130">
<template slot-scope="scope">
{{ scope.row.跟单 }}
{{ scope.row.采购合同编 }}
</template>
</el-table-column>
<el-table-column label="工序" align="center" width="50">
<el-table-column label="供应商" align="center" min-width="150">
<template slot-scope="scope">
{{ scope.row.序号 }}
{{ scope.row.供应商名称 }}
</template>
</el-table-column>
<el-table-column label="工序名" align="center" width="90">
<el-table-column label="采购员" align="center" min-width="60">
<template slot-scope="scope">
{{ scope.row.工序 }}
{{ scope.row. }}
</template>
</el-table-column>
<el-table-column label="投产数" align="center" width="80">
<el-table-column label="合同金额(元)" align="center" min-width="60">
<template slot-scope="scope">
{{ scope.row.计划数量 }}
{{ scope.row.合同总额 }}
</template>
</el-table-column>
<el-table-column label="计划准结(分)" align="center" width="110">
<el-table-column label="交货日期" align="center" min-width="60">
<template slot-scope="scope">
{{ scope.row.计划准备工时 }}
{{ scope.row.交货日期 }}
</template>
</el-table-column>
<el-table-column label="单件定额(分)" align="center" width="110">
<el-table-column label="审核时间" align="center" min-width="60">
<template slot-scope="scope">
{{ scope.row.单件计划工时 }}
{{ scope.row.审核时间 ? scope.row.审核时间.split(' ')[0] : '' }}
</template>
</el-table-column>
<el-table-column label="计划工时(分)" align="center" prop="计划工时" width="110">
<el-table-column label="审批时间" align="center" min-width="60">
<template slot-scope="scope">
{{ scope.row.计划工时 }}
{{ scope.row.审批时间 ? scope.row.审批时间.split(' ')[0] : '' }}
</template>
</el-table-column>
<el-table-column label="计划完成" align="center" width="110">
<el-table-column label="审批人" align="center" min-width="60">
<template slot-scope="scope">
{{ scope.row.计划加工日期 }}
{{ scope.row.审批人姓名 }}
</template>
</el-table-column>
<el-table-column label="加工件数" align="center" width="80">
<el-table-column label="审批结果" align="center" min-width="60">
<template slot-scope="scope">
{{ scope.row.加工数量 }}
{{ scope.row.审批情况内容 }}
</template>
</el-table-column>
<el-table-column label="准结(分)" align="center" width="110">
<el-table-column label="操作" align="center" width="90px" fixed="right">
<template slot-scope="scope">
{{ scope.row.修补工时 }}
</template>
</el-table-column>
<el-table-column label="单件加工工时(分)" align="center" prop="加工工时" width="140">
<template slot-scope="scope">
{{ scope.row.修补单件工时 }}
</template>
</el-table-column>
<el-table-column label="加工工时(分)" align="center" prop="加工工时" width="110">
<template slot-scope="scope">
{{ scope.row.完成工时 }}
</template>
</el-table-column>
<el-table-column label="扫码工时(分)" align="center" prop="扫码工时" width="110">
<template slot-scope="scope">
{{ scope.row.扫码工时 }}
</template>
</el-table-column>
<el-table-column label="工时比值" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.工时比值 }}
</template>
</el-table-column>
<el-table-column label="加工完成" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.加工完成时间 }}
</template>
</el-table-column>
<el-table-column label="图号及规格" align="center" width="150">
<template slot-scope="scope">
{{ scope.row.图号及规格 }}
</template>
</el-table-column>
<el-table-column label="制品名称" align="center" width="150">
<template slot-scope="scope">
{{ scope.row.制品名称 }}
<el-tooltip :open-delay="1000" effect="dark" content="查看详情" placement="top">
<div style="display: inline-block">
<el-button type="text" size="mini" @click="searchTable2(scope.row)">详情</el-button>
</div>
</el-tooltip>
</template>
</el-table-column>
</el-table>
<div class="block">
<div class="block" style="margin-top: 10px;">
<el-pagination
v-if="!loading"
:current-page="pageCurrent"
:page-sizes="[50, 100, 200, 300]"
:page-size="pageSize"
:total="total"
:current-page="pageCurrent1"
:page-sizes="[50, 100, 150, 200]"
:page-size="pageSize1"
:total="total1"
style="display:inline-block;width:50%"
layout="total, sizes, prev, pager, next, jumper"
@size-change="handleSizeChange"
@current-change="handleCurrentChange"/>
@size-change="handleSizeChange1"
@current-change="handleCurrentChange1"/>
</div>
</el-card>
<el-dialog v-el-drag-dialog :visible.sync="dialogFormVisible" title="合同审批通知" center style="min-height: 300px;" width="370px">
<div style="min-height:500px;margin: 0px auto;width:800px;border:1px solid black" v-html="returns"/>
</el-dialog>
</div>
</template>
<script>
import { initProject, initMachine, searchatabledata } from '@/api/ManufacturingCenter/ContractDetailsInquiry'
import { initBuyer, searchTable1, searchTable2 } from '@/api/ManufacturingCenter/ContractApprovalQuery'
export default {
data() {
return {
project: [],
projectValue: '', // 项目名称
machineValue: '', // 机床名称
machine: [],
loading: false,
part: [], // 分組
partValue: '',
specificationValue: '', // 规格型号
totalProcessingHours: '', // 加工总工时
totalPlannedHours: '', // 计划总工时
tableData: [], // 详情表
total: 0, // 总条数
pageSize: 50, // 每页显示条数
pageCurrent: 1 // 后台获取页
radio: '1',
billNames: '',
person: [],
personValue: '',
dateRange: '',
total1: 0,
pageCurrent1: 1,
pageSize1: 50,
tableData1: [],
loading1: false,
dialogFormVisible: false,
returns: ''
}
},
created() {
this.fetchData()
this.searchTable1()
},
methods: {
fetchData() {
this.getSelect(initProject, ['项目名称', '项目流水号'], 'project')
},
// 查询按钮
typeChange() {
this.machineValue = ''
this.machine = []
initMachine(this.projectValue).then(response => {
this.person = []
initBuyer().then(response => {
for (let i = 0; i < response.data.length; i++) {
this.machine.push({
label: response.data[i].机床图号,
value: response.data[i].机床流水
this.person.push({
label: response.data[i].姓名,
value: response.data[i].人员编
})
}
})
},
// 分页查询
searchTable() {
this.tableData = []
if (this.machineValue) {
this.loading = true
searchatabledata(this.projectValue, this.machineValue, this.pageCurrent, this.pageSize).then(response => {
this.loading = false
if (response.data.result.length !== 0) {
for (let i = 0; i < response.data.result.length; i++) {
this.tableData.push({
跟单号: response.data.result[i].跟单号,
序号: response.data.result[i].工序顺序,
工序名: response.data.result[i].工艺名称,
计划数量: response.data.result[i].批次数量,
计划准备工时: response.data.result[i].准结定额工时,
单件计划工时: response.data.result[i].单件定额工时,
计划工时: response.data.result[i].计划工时,
计划加工日期: response.data.result[i].计划日期.split(' ')[0],
加工数量: response.data.result[i].完成数量,
加工准备工时: response.data.result[i].修补准结工时,
加工工时: response.data.result[i].设备工时,
扫码工时: response.data.result[i].扫码工时,
辅助工时: response.data.result[i].辅助工时,
工时比值: Number(response.data.result[i].计划工时) === 0 ? 0 : Math.round(response.data.result[i].完成工时 / Number(response.data.result[i].计划工时) * 100) / 100.00,
加工日期: response.data.result[i].操作时间,
图号及规格: response.data.result[i].零件图号_零件工艺计划,
修补工时: response.data.result[i].修补工时,
修补单件工时: response.data.result[i].修补单件工时,
完成工时: response.data.result[i].完成工时,
加工完成时间: response.data.result[i].加工完成时间,
制品名称: response.data.result[i].零件名称
})
}
}
this.total = parseInt(response.data.output[0].ItemCount)
})
} else {
this.$message.warning('请选择要查询的机床')
}
searchTable1() {
this.loading1 = true
var check1, check2, check3
this.billNames ? check1 = 1 : check1 = 0
this.dateRange ? check2 = 1 : (check2 = 0, this.dateRange = '')
this.personValue ? check3 = 1 : check3 = 0
searchTable1(this.radio, check1, this.billNames, check2, this.dateRange[0], this.dateRange[1], check3, this.personValue, this.pageCurrent1, this.pageSize1).then(response => {
console.log(response.data)
this.loading1 = false
this.tableData1 = response.data.rows
this.total1 = response.data.total
})
},
exportExcel() {
if (this.tableData.length === 0) {
this.$message.warning('请查询出要导出的数据')
return
}
exportTable() {
var check1, check2, check3
this.billNames ? check1 = 1 : check1 = 0
this.dateRange ? check2 = 1 : (check2 = 0, this.dateRange = '')
this.personValue ? check3 = 1 : check3 = 0
var param = []
param[0] = ['项目流水号', this.projectValue]
param[1] = ['机床流水号', this.machineValue]
param[2] = ['PageCurrent', 1]
param[3] = ['PageSize', 999999]
param[4] = ['PageCount', '1111', 'int', '1']
param[5] = ['ItemCount', '1111', 'int', '1']
var Data = this.CreateData('2001', '报表_机床工时统计_查询', param)
param[0] = ['查询全部', this.radio]
param[1] = ['供应商名称_check', check1]
param[2] = ['供应商名称', this.billNames]
param[3] = ['时间段_check', check2]
if (check2 === 0) {
param[4] = ['开始时间', '']
param[5] = ['结束时间', '']
} else {
param[4] = ['开始时间', this.dateRange[0]]
param[5] = ['结束时间', this.dateRange[1]]
}
param[6] = ['人员编号_check', check3]
param[7] = ['人员编号', this.personValue]
var Data = this.CreateData('2001', '报表_采购管理_合同审核查询_查询数据', param)
this.exportExcel_NPOI(Data)
},
// 分页
handleSizeChange(val) {
this.pageCurrent = 1
this.pageSize = val
this.searchTable()
searchTable2(row) {
this.contractValue = parseInt(row.采购合同流水号)
searchTable2(this.contractValue).then(response => {
this.returns = response.data[0].合同内容
this.dialogFormVisible = true
})
},
handleCurrentChange(val) {
this.pageCurrent = val
this.searchTable()
handleSizeChange1(val) {
this.pageCurrent1 = 1
this.pageSize1 = val
this.searchTable1()
},
handleCurrentChange1(val) {
this.pageCurrent1 = val
this.searchTable1()
}
}
}
</script>
<style scoped>
</style>
<style>
#table .el-form-item {
margin: 0;
}
</style>

View File

@@ -16,7 +16,7 @@
:label="item.label"
:value="item.value"/>
</el-select>
<span style="margin-left: 0">提交时间:</span>
<span style="margin-left: 0">审核时间:</span>
<el-date-picker
v-model="dateRange"
size="small"
@@ -51,9 +51,9 @@
{{ scope.row.请款金额 }}
</template>
</el-table-column>
<el-table-column label="审核时间" align="center" min-width="60">
<el-table-column label="提交时间" align="center" min-width="60">
<template slot-scope="scope">
{{ scope.row.审核时间 ? scope.row.审核时间.split(' ')[0] : '' }}
{{ scope.row.请款时间 ? scope.row.请款时间.split(' ')[0] : '' }}
</template>
</el-table-column>
<el-table-column label="审核人" align="center" min-width="60">
@@ -61,6 +61,11 @@
{{ scope.row.审核人姓名 }}
</template>
</el-table-column>
<el-table-column label="审核时间" align="center" min-width="60">
<template slot-scope="scope">
{{ scope.row.审核时间 ? scope.row.审核时间.split(' ')[0] : '' }}
</template>
</el-table-column>
<el-table-column label="审核结果" align="center" min-width="60">
<template slot-scope="scope">
{{ scope.row.审核情况内容 }}
@@ -68,7 +73,7 @@
</el-table-column>
<el-table-column label="操作" align="center" width="90px" fixed="right">
<template slot-scope="scope">
<el-tooltip :open-delay="1000" effect="dark" content="物料移出采购计划" placement="top">
<el-tooltip :open-delay="1000" effect="dark" content="查看详情" placement="top">
<div style="display: inline-block">
<el-button type="text" size="mini" @click="searchTable2(scope.row)">详情</el-button>
</div>
@@ -195,8 +200,8 @@ export default {
this.personValue ? check3 = 1 : check3 = 0
var param = []
param[0] = ['查询全部', this.radio]
param[1] = ['供应商名称_check', check1]
param[2] = ['供应商名称', this.supplierValue]
param[1] = ['供应商流水号_check', check1]
param[2] = ['供应商流水号', this.supplierValue]
param[3] = ['时间段_check', check2]
if (check2 === 0) {
param[4] = ['开始时间', '']

View File

@@ -0,0 +1,252 @@
<template>
<div class="app-container">
<el-card>
<!-- <el-input v-model="billNames" clearable filterable size="small" placeholder="供应商或合同编号" style="width: 200px;margin: 5px"/>-->
<el-select v-model="supplierValue" placeholder="供应商" filterable size="small" style="margin-left: 5px" clearable @change="totalSum=0;totalPay=0;totalDebt=0;">
<el-option
v-for="item in supplier"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
<el-select v-model="personValue" placeholder="采购员" size="small" style="width: 120px" clearable>
<el-option
v-for="item in person"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
<span style="margin-left: 0">审批时间:</span>
<el-date-picker
v-model="dateRange"
size="small"
type="daterange"
align="center"
style="width: 300px"
value-format="yyyy-MM-dd"
format="yyyy-MM-dd"
range-separator=""
start-placeholder="开始日期"
end-placeholder="结束日期"/>
<el-button type="primary" plain size="small" icon="el-icon-search" style="margin-left: 10px" @click="total1=0;pageCurrent1=1;pageSize1=50;searchTable1()">查询</el-button>
<el-radio v-model="radio" label="1" style="margin: 0 0 0 10px">全部</el-radio>
<el-radio v-model="radio" label="2" style="margin: 0 0 0 10px">通过</el-radio>
<el-radio v-model="radio" label="3" style="margin: 0 0 0 10px">未过</el-radio>
<el-button type="success" size="small" icon="el-icon-download" style="margin-left:10px;margin-top: 3px;margin-right: 20px;float: right" plain @click="exportTable('')">导出</el-button>
</el-card>
<el-card style="margin-top: 5px">
<el-table v-loading="loading1" :data="tableData1" size="mini" border stripe style="width: 100%" height="600px" highlight-current-row @row-click="searchTable2">
<el-table-column label="供应商" align="center" min-width="150">
<template slot-scope="scope">
{{ scope.row.供应商名称 }}
</template>
</el-table-column>
<el-table-column label="请款人" align="center" min-width="60">
<template slot-scope="scope">
{{ scope.row.姓名 }}
</template>
</el-table-column>
<el-table-column label="请款金额(元)" align="center" min-width="60">
<template slot-scope="scope">
{{ scope.row.请款金额 }}
</template>
</el-table-column>
<el-table-column label="审批时间" align="center" min-width="60">
<template slot-scope="scope">
{{ scope.row.审批时间 ? scope.row.审批时间.split(' ')[0] : '' }}
</template>
</el-table-column>
<el-table-column label="审批人" align="center" min-width="60">
<template slot-scope="scope">
{{ scope.row.审批人姓名 }}
</template>
</el-table-column>
<el-table-column label="审批结果" align="center" min-width="60">
<template slot-scope="scope">
{{ scope.row.审批情况内容 }}
</template>
</el-table-column>
<el-table-column label="操作" align="center" width="90px" fixed="right">
<template slot-scope="scope">
<el-tooltip :open-delay="1000" effect="dark" content="查看详情" placement="top">
<div style="display: inline-block">
<el-button type="text" size="mini" @click="searchTable2(scope.row)">详情</el-button>
</div>
</el-tooltip>
</template>
</el-table-column>
</el-table>
<div class="block" style="margin-top: 10px;">
<el-pagination
:current-page="pageCurrent1"
:page-sizes="[50, 100, 150, 200]"
:page-size="pageSize1"
:total="total1"
style="display:inline-block;width:50%"
layout="total, sizes, prev, pager, next, jumper"
@size-change="handleSizeChange1"
@current-change="handleCurrentChange1"/>
</div>
</el-card>
<el-dialog v-el-drag-dialog :visible.sync="dialogFormVisible" title="请款信息明细" center width="800px">
<el-table :data="gridData1" border highlight-current-row size="mini">
<el-table-column min-width="150" align="center" label="合同编号">
<template slot-scope="scope">
{{ scope.row.采购合同编号 ? scope.row.采购合同编号 : scope.row.离线合同编号 }}
</template>
</el-table-column>
<el-table-column width="120" align="center" label="到货金额(元)" prop="到货金额">
<template slot-scope="scope">
{{ parseFloat(scope.row.到货金额).toFixed(2) }}
</template>
</el-table-column>
<el-table-column width="120" align="center" label="已付金额(元)" prop="已付金额">
<template slot-scope="scope">
{{ parseFloat(scope.row.已付金额).toFixed(2) }}
</template>
</el-table-column>
<el-table-column width="120" align="center" label="请款金额(元)" prop="请款金额">
<template slot-scope="scope">
{{ parseFloat(scope.row.请款金额).toFixed(2) }}
</template>
</el-table-column>
</el-table>
</el-dialog>
</div>
</template>
<script>
import { initBuyer, searchTable1, searchTable2, searchSupplier } from '@/api/ManufacturingCenter/RequestApprovalQuery'
import { mapGetters } from 'vuex'
export default {
data() {
return {
radio: '1',
billNames: '',
supplier: [],
supplierValue: '',
person: [],
personValue: '',
dateRange: '',
total1: 0,
pageCurrent1: 1,
pageSize1: 50,
tableData1: [],
loading1: false,
dialogFormVisible: false,
gridData1: []
}
},
computed: {
...mapGetters([
'sidebar',
'avatar',
'name',
'id' // 人员编号
])
},
created() {
this.fetchData()
this.searchTable1()
this.searchSupplier()
},
methods: {
searchSupplier() {
this.supplier = []
searchSupplier().then(response => {
for (let i = 0; i < response.data.length; i++) {
this.supplier.push({
label: response.data[i].供应商名称,
value: response.data[i].供应商流水号
})
}
})
},
fetchData() {
this.person = []
initBuyer().then(response => {
for (let i = 0; i < response.data.length; i++) {
this.person.push({
label: response.data[i].姓名,
value: response.data[i].人员编号
})
}
})
},
searchTable1() {
this.loading1 = true
var check1, check2, check3
this.supplierValue ? check1 = 1 : check1 = 0
this.dateRange ? check2 = 1 : (check2 = 0, this.dateRange = '')
this.personValue ? check3 = 1 : check3 = 0
searchTable1(this.radio, check1, this.supplierValue, check2, this.dateRange[0], this.dateRange[1], check3, this.personValue, this.pageCurrent1, this.pageSize1).then(response => {
console.log(response.data)
this.loading1 = false
this.tableData1 = response.data.rows
this.total1 = response.data.total
})
},
exportTable() {
var check1, check2, check3
this.supplierValue ? check1 = 1 : check1 = 0
this.dateRange ? check2 = 1 : (check2 = 0, this.dateRange = '')
this.personValue ? check3 = 1 : check3 = 0
var param = []
param[0] = ['查询全部', this.radio]
param[1] = ['供应商名称_check', check1]
param[2] = ['供应商名称', this.supplierValue]
param[3] = ['时间段_check', check2]
if (check2 === 0) {
param[4] = ['开始时间', '']
param[5] = ['结束时间', '']
} else {
param[4] = ['开始时间', this.dateRange[0]]
param[5] = ['结束时间', this.dateRange[1]]
}
param[6] = ['人员编号_check', check3]
param[7] = ['人员编号', this.personValue]
var Data = this.CreateData('2001', '报表_采购管理_情况审核查询_查询数据', param)
this.exportExcel_NPOI(Data)
},
searchTable2(row) {
this.gridData1 = []
searchTable2(row.采购合同请款流水号).then(response => {
this.gridData1 = response.data
this.dialogFormVisible = true
})
},
handleSizeChange1(val) {
this.pageCurrent1 = 1
this.pageSize1 = val
this.searchTable1()
},
handleCurrentChange1(val) {
this.pageCurrent1 = val
this.searchTable1()
}
}
}
</script>
<style scoped>
.el-card{
margin-bottom: 0px;
}
.el-select{
width:200px
}
.el-input{
width:200px
}
span{
margin: 10px 0 10px 10px;
}
.searchForm .el-form-item{
margin-bottom: 5px;
}
.el-tag{
margin: 0
}
</style>

View File

@@ -52,9 +52,9 @@
{{ scope.row.采购合同编号 ? scope.row.采购合同编号 : scope.row.离线合同编号 }}
</template>
</el-table-column>
<el-table-column width="110" align="center" label="合同总额(元)" prop="合同总额">
<el-table-column width="110" align="center" label="合同总额(元)" prop="合同总额">
<template slot-scope="scope">
{{ parseFloat(scope.row.合同总额).toFixed(2) }}
{{ parseFloat(scope.row.合同总).toFixed(2) }}
</template>
</el-table-column>
<el-table-column width="110" align="center" label="到货金额(元)" prop="到货金额">
@@ -231,7 +231,7 @@ export default {
if (index === 0) {
sums[index] = '总价'
return
} else if (index === 2 || index === 3) {
} else if (index === 1 || index === 2 || index === 3 || index === 4) {
const values = data.map(item => Number(item[column.property]))
if (!values.every(value => isNaN(value))) {
sums[index] = values.reduce((prev, curr) => {

View File

@@ -10,7 +10,7 @@
<el-button type="warning" size="small" icon="el-icon-circle-plus-outline" plain style="margin-left:10px" @click="createOrder()">结算申请</el-button>
<el-button :disabled="disabled" type="warning" size="small" icon="el-icon-circle-plus-outline" plain style="margin-left:10px" @click="addInStoreRecord()">追加入库记录</el-button>
</div>
<h4 style="margin-top: 5px;margin-bottom: 0px">票结算申请单</h4>
<h4 style="margin-top: 5px;margin-bottom: 0px">票结算申请单</h4>
<el-table id="expandTable" :data="tableData1" border stripe highlight-current-row style="width: 100%;max-height: 350px" size="mini" @row-click="searchTable2">
<!-- <el-table-column type="expand">
<template slot-scope="scope">

View File

@@ -35,11 +35,12 @@
@click="back">打回</el-button>
</div>
</el-tooltip>
<el-button type="success" size="small" icon="el-icon-download" plain style="float: right; margin-right: 130px;" @click="exportExcel">导出</el-button>
</el-row>
</div>
</el-card>
<el-row>
<el-card style="width: 42%; float: left">
<el-card style="width: 50%; float: left">
<el-table
v-loading="loading1"
id="expandTable"
@@ -62,7 +63,7 @@
<!-- {{ scope.row.离线合同名称 }}-->
<!-- </template>-->
<!-- </el-table-column>-->
<el-table-column label="离线合同编号" align="center" prop="离线合同编号" min-width="120" sortable="custom" show-overflow-tooltip>
<el-table-column label="离线合同编号" align="center" prop="离线合同编号" min-width="130" sortable="custom" show-overflow-tooltip>
<template slot-scope="scope">
{{ scope.row.离线合同编号 }}
</template>
@@ -72,12 +73,27 @@
<!-- {{ scope.row.采购员 }}-->
<!-- </template>-->
<!-- </el-table-column>-->
<el-table-column label="总金额(元)" align="center" min-width="90">
<el-table-column label="总金额(元)" align="center" min-width="110">
<template slot-scope="scope">
{{ Number(scope.row.合同总额).toFixed(2) }}
</template>
</el-table-column>
<el-table-column label="创建日期" align="center" min-width="80">
<el-table-column label="到货金额(元)" align="center" min-width="110">
<template slot-scope="scope">
{{ Number(scope.row.到货金额).toFixed(2) }}
</template>
</el-table-column>
<el-table-column label="已付金额(元)" align="center" min-width="110">
<template slot-scope="scope">
{{ Number(scope.row.已付金额).toFixed(2) }}
</template>
</el-table-column>
<el-table-column label="未付金额(元)" align="center" min-width="110">
<template slot-scope="scope">
{{ (Number(scope.row.合同总额) - Number(scope.row.已付金额)).toFixed(2) }}
</template>
</el-table-column>
<el-table-column label="创建日期" align="center" min-width="90">
<template slot-scope="scope">
{{ scope.row.创建日期.split(' ')[0] }}
</template>
@@ -95,9 +111,9 @@
@current-change="handleCurrentChange1"/>
</div>
</el-card>
<el-card style="width: 58%">
<el-card style="width: 50%">
<!-- <div id="offlineContract" style="background-color:white;min-height:500px;margin: 0 auto;width: 800px;border:1px solid black">-->
<table v-show="contractDetail.length > 0" class="offlineContract" cellspacing="0px" align="center" border="1 solid black" width="700px">
<table v-show="contractDetail.length > 0" class="offlineContract" cellspacing="0px" align="center" border="1 solid black" width="500px">
<tr>
<th colspan="14"><h1>离线合同</h1></th>
</tr>
@@ -219,6 +235,23 @@ export default {
this.loading1 = false
})
},
exportExcel() { // 离线合同导出
let check1, check2, check3
this.contractNumber ? check1 = 1 : check1 = 0
this.supplierName ? check2 = 1 : check2 = 0
this.dateRange ? check3 = 1 : (check3 = 0, this.dateRange = '')
var param = []
param[0] = ['离线合同编号_check', check1]
param[1] = ['离线合同编号', this.contractNumber]
param[2] = ['供应商名称_check', check2]
param[3] = ['供应商名称', this.supplierName]
param[4] = ['时间_check', check3]
param[5] = ['开始时间', this.dateRange[0]]
param[6] = ['结束时间', this.dateRange[1]]
param[7] = ['是否不包含编辑中', 1]
var Data = this.CreateData('2001', '报表_离线采购合同信息', param)
this.exportExcel_NPOI(Data)
},
// 离线合同列表分页
handleSizeChange1(val) {
this.pageSize1 = val