This commit is contained in:
bryan sun
2020-01-07 12:54:41 +08:00
14 changed files with 2558 additions and 223 deletions

View File

@@ -0,0 +1,159 @@
<template>
<div class="app-container">
<el-card>
<el-date-picker
v-model="startTime"
size="small"
type="daterange"
align="center"
value-format="yyyy-MM-dd"
format="yyyy-MM-dd"
range-separator=""
style="width:250px;margin-left: 5px;margin-top: 10px;margin-bottom: 10px"
start-placeholder="开始日期"
end-placeholder="结束日期"/>
<el-button size="small" type="success" icon="el-icon-search" style="margin-left: 5px" @click="searchTable">查询</el-button>
<el-button size="small" type="primary" icon="el-icon-download" @click="exportExcel">导出</el-button>
</el-card>
<el-card>
<el-table :data="tableData" size="mini" style="max-height: 720px" height="720px" border>
<el-table-column align="center" label="姓名" width="70px">
<template slot-scope="scope">
{{ scope.row.姓名 }}
</template>
</el-table-column>
<el-table-column align="center" label="图号" width="170px">
<template slot-scope="scope">
{{ scope.row.零件图号_短 }}
</template>
</el-table-column>
<el-table-column align="center" label="跟单号" width="120px">
<template slot-scope="scope">
{{ scope.row.跟单号 }}
</template>
</el-table-column>
<el-table-column align="center" label="序号" width="50px">
<template slot-scope="scope">
{{ scope.row.工序顺序 }}
</template>
</el-table-column>
<el-table-column align="center" label="工序名称" width="80px">
<template slot-scope="scope">
{{ scope.row.工艺名称 }}
</template>
</el-table-column>
<el-table-column align="center" label="录入准结工时" width="100px">
<template slot-scope="scope">
{{ scope.row.修补准结工时 }}
</template>
</el-table-column>
<el-table-column align="center" label="实际工时" width="80px">
<template slot-scope="scope">
{{ scope.row.设备工时 }}
</template>
</el-table-column>
<el-table-column align="center" label="合格品" width="70px">
<template slot-scope="scope">
{{ scope.row.合格数 }}
</template>
</el-table-column>
<el-table-column align="center" label="废品" width="70px">
<template slot-scope="scope">
{{ scope.row.不合格数 }}
</template>
</el-table-column>
<el-table-column align="center" label="备注" width="100px">
<template slot-scope="scope">
{{ scope.row.备注 }}
</template>
</el-table-column>
<el-table-column align="center" label="日期" width="100px">
<template slot-scope="scope">
{{ scope.row.操作时间 }}
</template>
</el-table-column>
<el-table-column align="center" label="计划准结工时" width="100px">
<template slot-scope="scope">
{{ scope.row.准结定额工时 }}
</template>
</el-table-column>
<el-table-column align="center" label="计划定额工时" width="100px">
<template slot-scope="scope">
{{ scope.row.单件定额工时 }}
</template>
</el-table-column>
<el-table-column align="center" label="项目名称" width="130px">
<template slot-scope="scope">
{{ scope.row.项目名称 }}
</template>
</el-table-column>
<el-table-column align="center" label="机床号" width="100px">
<template slot-scope="scope">
{{ scope.row.机床图号 }}
</template>
</el-table-column>
<el-table-column align="center" label="组号" width="70px">
<template slot-scope="scope">
{{ scope.row.组号 }}
</template>
</el-table-column>
<el-table-column align="center" label="设计" width="70px">
<template slot-scope="scope">
{{ scope.row.设计者 }}
</template>
</el-table-column>
<el-table-column align="center" label="材料" width="100px">
<template slot-scope="scope">
{{ scope.row.材料 }}
</template>
</el-table-column>
</el-table>
</el-card>
</div>
</template>
<script>
import { searchTable } from '@/api/ManufacturingCenter/MonthEndHourAccounting'
export default {
data() {
return {
tableData: [],
startTime: ''
}
},
methods: {
formatJson(filterVal, jsonData) {
return jsonData.map(v => filterVal.map(j => {
return v[j]
}))
},
exportExcel() {
if (this.tableData.length === 0) {
this.$message.warning('请查询出要导出的数据')
return
}
import('@/vendor/Export2Excel').then(excel => {
const tHeader = ['姓名', '图号', '跟单号', '序号', '工序名称', '录入准结工时', '实际工时', '合格数', '不合格数', '备注', '日期', '计划准结工时', '计划定额工时', '项目名称', '机床图号', '组号', '设计', '材料']
const filterVal = ['姓名', '零件图号_短', '跟单号', '工序顺序', '工艺名称', '修补准结工时', '设备工时', '合格数', '不合格数', '备注', '操作时间', '准结定额工时', '单件定额工时', '项目名称', '机床图号', '组号', '设计者', '材料']
const list = this.tableData
const data = this.formatJson(filterVal, list)
excel.export_json_to_excel({
header: tHeader,
data,
filename: '月工时核算表',
autoWidth: true,
bookType: 'xlsx'
})
})
},
searchTable() {
if (this.startTime[0] && this.startTime[1]) {
searchTable(this.startTime[0], this.startTime[1]).then(response => {
this.tableData = response.data
})
} else {
this.$message.warning('请选择时间段')
}
}
}
}
</script>

File diff suppressed because it is too large Load Diff

View File

@@ -404,7 +404,6 @@
size="mini"
style="width: 97%;max-height: 300px"
height="400"
stripe
highlight-current-row
border>
<el-table-column align="center" label="零件图号">
@@ -476,7 +475,6 @@
size="mini"
style="width: 97%;max-height: 300px"
height="400"
stripe
highlight-current-row
border>
<el-table-column align="center" label="物料名称">

View File

@@ -17,24 +17,11 @@
type="date"
placeholder="选择加工完成日期"/>
<el-button type="success" class="el-icon-search" size="small" style="margin:0px 10px" @click="pageCurrent=1;total = 0;searchTable();">查询</el-button>
<!-- <el-tooltip :open-delay="1000" content="导出人员工时统计表" placement="right">-->
<!-- <el-button type="primary" size="small" icon="el-icon-download" style="margin:0px 10px" @click="exportUninquirySheet1()">导出</el-button>-->
<!-- </el-tooltip>-->
</el-card>
<el-row>
<el-col style="width: 350px">
<el-col :span="9">
<el-card>
<el-table
v-loading="loading"
:data="tableData"
highlight-current-row
size="mini"
stripe
style="width: 100%;"
height="700px"
border
element-loading-text="拼命加载中"
@row-click="searchTable2">
<el-table v-loading="loading" :data="tableData" highlight-current-row size="mini" style="width: 100%;" height="700px" border element-loading-text="拼命加载中" @row-click="searchTable2">
<el-table-column label="操作者" align="center" show-overflow-tooltip>
<template slot-scope="scope">
{{ scope.row.姓名 }}
@@ -42,17 +29,27 @@
</el-table-column>
<el-table-column label="计划工时" align="center" width="70px">
<template slot-scope="scope">
{{ scope.row.理论加工时间段 }}
{{ scope.row.定额总工时 }}
</template>
</el-table-column>
<el-table-column label="实际工时" align="center" width="70px">
<template slot-scope="scope">
{{ scope.row.设备工时 }}
{{ scope.row.设备工时 }}
</template>
</el-table-column>
<el-table-column label="录入准结工时" align="center" width="100px">
<template slot-scope="scope">
{{ scope.row.修补准结总工时 }}
</template>
</el-table-column>
<el-table-column label="完成数量" align="center" width="70px">
<template slot-scope="scope">
{{ scope.row.完成数量 }}
{{ scope.row.数量 }}
</template>
</el-table-column>
<el-table-column label="扫码工时" align="center" width="70px">
<template slot-scope="scope">
{{ scope.row.扫码总工时 }}
</template>
</el-table-column>
</el-table>
@@ -66,9 +63,9 @@
</div>
</el-card>
</el-col>
<el-col style="margin-left: 0px;width: 860px">
<el-col :span="15">
<el-card>
<el-table v-loading="loading2" :data="tableData2" size="mini" stripe highlight-current-row style="width: 100%;" height="700px" border element-loading-text="拼命加载中">
<el-table v-loading="loading2" :data="tableData2" size="mini" stripe style="width: 100%;" height="700px" border element-loading-text="拼命加载中">
<el-table-column label="零件图号" align="center" width="140px" show-overflow-tooltip>
<template slot-scope="scope">
{{ scope.row.零件图号 }}
@@ -89,34 +86,29 @@
{{ scope.row.完成数量 }}
</template>
</el-table-column>
<el-table-column label="序间质检" align="center" width="70px">
<template slot-scope="scope">
{{ scope.row.质检结果 }}
</template>
</el-table-column>
<!--<el-table-column label="不合格数" align="center" width="70px">-->
<!--<template slot-scope="scope">-->
<!--{{ scope.row.不合格数量 }}-->
<!--</template>-->
<!--</el-table-column>-->
<el-table-column label="计划工时" align="center" width="70px">
<template slot-scope="scope">
{{ scope.row.理论加工时间段 }}
{{ scope.row.工时总额 }}
</template>
</el-table-column>
<el-table-column label="加工工时" align="center" width="70px">
<el-table-column label="实际工时" align="center" width="70px">
<template slot-scope="scope">
{{ scope.row.设备工时 ? scope.row.设备工时 : 0 }}
{{ scope.row.设备工时 }}
</template>
</el-table-column>
<el-table-column label="加工开始" align="center" width="135px">
<el-table-column label="录入准结工时" align="center" width="100px">
<template slot-scope="scope">
{{ scope.row.加工开始时间 }}
{{ scope.row.修补准结工时 }}
</template>
</el-table-column>
<el-table-column label="加工完成" align="center" width="135px">
<el-table-column label="加工时间" align="center" width="135px">
<template slot-scope="scope">
{{ scope.row.加工完成时间 }}
{{ scope.row.操作时间 }}
</template>
</el-table-column>
<el-table-column label="扫码工时" align="center" width="70px">
<template slot-scope="scope">
{{ scope.row.扫码工时 }}
</template>
</el-table-column>
</el-table>
@@ -168,12 +160,8 @@ export default {
this.tableData = []
this.tableData2 = []
this.total2 = 0
if (this.startTime !== '' && this.startTime !== null && this.endTime !== null && this.endTime !== null) {
this.timeCheck = 1
} else {
this.timeCheck = 0
}
searchtable(this.operater, this.timeCheck, this.startTime, this.endTime, this.pageCurrent, this.pageSize).then(response => {
searchtable(this.startTime, this.endTime, this.pageCurrent, this.pageSize).then(response => {
console.log(response.data, 111)
if (response.data.total === 0) {
this.loading = false
} else {
@@ -188,23 +176,10 @@ export default {
this.loading2 = true
this.tableData2 = []
this.pageCurrent2 = 1
searchtable2(row.人员编号, this.timeCheck, this.startTime, this.endTime, this.pageCurrent2, this.pageSize2).then(response => {
searchtable2(row.人员编号, this.startTime, this.endTime, this.pageCurrent2, this.pageSize2).then(response => {
console.log(response.data, 222)
if (response.data.rows.length !== 0) {
for (let i = 0; i < response.data.rows.length; i++) {
this.tableData2.push({
零件图号: response.data.rows[i].零件图号,
零件名称: response.data.rows[i].零件名称,
工艺名称: response.data.rows[i].工艺名称,
完成数量: response.data.rows[i].完成数量,
质检结果: response.data.rows[i].质检结果,
设备工时: response.data.rows[i].设备工时,
不合格数量: response.data.rows[i].不合格数量,
理论加工时间段: response.data.rows[i].理论加工时间段,
实际加工时间段: response.data.rows[i].实际加工时间段,
加工开始时间: response.data.rows[i].加工开始时间 ? response.data.rows[i].加工开始时间 : '',
加工完成时间: response.data.rows[i].加工完成时间 ? response.data.rows[i].加工完成时间 : ''
})
}
this.tableData2 = response.data.rows
}
this.loading2 = false
this.total2 = response.data.total