This commit is contained in:
liulujia@meswork.com
2020-02-07 12:56:18 +08:00
16 changed files with 471 additions and 148 deletions

View File

@@ -42,8 +42,8 @@ export function searchTable(...params) {
data: {
type: '1',
name: '车间装配管理_领料单_三表_查询数据',
param: `机床流水号_check=${params[0]}&机床流水号=${params[1]}&组件流水号_check=${params[2]}&组件流水号=${params[3]}&名称_check=${params[4]}&名称=${params[5]}&型号_check=${params[6]}&型号=${params[7]}&规格_check=${params[8]}&规格=${params[9]}&领料情况_check=${params[10]}&领料情况=${params[11]}&零件类型=${params[14]}`,
Pagination: params[12] + '&' + params[13]
param: `机床流水号_check=${params[0]}&机床流水号=${params[1]}&组件流水号_check=${params[2]}&组件流水号=${params[3]}&名称_check=${params[4]}&名称=${params[5]}&领料情况_check=${params[6]}&领料情况=${params[7]}&零件类型=${params[10]}`,
Pagination: params[8] + '&' + params[9]
}
})
}
@@ -54,20 +54,20 @@ export function searchPart(...params) {
data: {
type: '1',
name: '库存管理_离线外购件_出库查询',
param: `物料名称_check=${params[0]}&物料名称=${params[1]}&物料规格_check=${params[2]}&物料规格=${params[3]}&物料型号_check=${params[4]}&物料型号=${params[5]}`,
Pagination: params[6] + '&' + params[7]
param: `物料名称_check=${params[0]}&物料名称=${params[1]}`,
Pagination: params[2] + '&' + params[3]
}
})
}
// 领料单查询
export function searchList(pageCurrent, pageSize, listNumber_check, listNumber, isElectrical) {
export function searchList(pageCurrent, pageSize, listPeople_check, listPeople, isElectrical, check1, time1, time2) {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '车间装配管理_领料单_查询数据',
param: '领料单编号_check=' + listNumber_check + '&领料单编号=' + listNumber + '&是否电气=' + isElectrical,
param: '制单人_check=' + listPeople_check + '&制单人=' + listPeople + '&是否电气=' + isElectrical + '&时间段_check=' + check1 + '&开始时间=' + time1 + '&结束时间=' + time2,
Pagination: pageCurrent + '&' + pageSize
}
})

View File

@@ -0,0 +1,40 @@
import request from '@/utils/request'
// 初始化 项目名称
export function initProject() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: 'PDM_项目名称_查询数据_总计划'
}
})
}
// 查询机床
export function initMachine(projectNum) {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: 'PDM_机床名称_查询数据2',
param: `项目流水号=${projectNum}`
}
})
}
// 查询项目详情
export function searchatabledata(projectNum, machineValue, pageCurrent, pageSize) {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '项目工时统计_合同详情查询_工时综合查询',
param: `项目流水号=${projectNum}&机床流水号=${machineValue}`,
Pagination: pageCurrent + '&' + pageSize
}
})
}

View File

@@ -11,6 +11,18 @@ export function initProject() {
}
})
}
// 三表下达时间查询
export function DeliveryTimeSelect(num) {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: 'PDM_三表下达时间_查询数据',
param: '组件流水号=' + num
}
})
}
// 组件查询
export function searchgroup(num) {
return request({

View File

@@ -5,6 +5,30 @@ Created by hedekun
import { type } from './tool' // type判断传入值的类型比typeof更详细
export default {
install(Vue) {
Vue.prototype.CreateData = function(type, name, data, pageSize, pageList) {
var paramStr = ''
var paramarray = []
if (data !== undefined) {
for (let i = 0; i < data.length; i++) {
paramarray.push({
name: data[i][0],
value: data[i][1],
type: data[i][2],
output: data[i][3]
})
}
paramStr = JSON.stringify(paramarray)
}
var obj = []
obj[0] = {}
obj[0].type = type
obj[0].name = name
obj[0].param = paramStr
obj[0].pageSize = pageSize
obj[0].pageList = pageList
var numn = JSON.stringify(obj[0])
return numn
}
// 用于打开增加框,方法能重置表单,并使表单内容回到初始化状态。
// 传入参数
// 1表单名称字符串形式如'form',必须

View File

@@ -6,8 +6,6 @@ export const name1 = `OP1000`
export const name3 = `OP2000`
export const name4 = `OP9999`
// 创建axios实例
export const readFile = `http://123.56.95.229:8010/webpage/file/` // invoice
export const readImg = `http://123.56.95.229:8010/webpage/img/` // delivery/MS/performancebond
export const upload = `http://123.56.95.229:8010/submit/uploadFile.ashx` // ContractInformationManagement

View File

@@ -2,7 +2,7 @@
<div class="app-container">
<el-card>
<el-row>
<el-select v-model="machineNumberValue" filterable placeholder="选择机床编号" size="small" style="margin-left: 10px" clearable @change="machineChange()">
<el-select v-model="machineNumberValue" filterable placeholder="选择机床编号" size="small" style="margin-left: 10px;width: 180px" clearable @change="machineChange()">
<el-option
v-for="item in machineNumber"
:key="item.value"
@@ -12,7 +12,7 @@
<div style="float: right; color: #8492a6; font-size: 13px">{{ item.name }}</div>
</el-option>
</el-select>
<el-select v-model="groupNumberValue" filterable placeholder="选择组号" size="small" style="margin-left: 10px" clearable>
<el-select v-model="groupNumberValue" filterable placeholder="选择组号" size="small" style="margin-left: 10px;width:100px" clearable>
<el-option
v-for="item in groupNumber"
:key="item.value"
@@ -20,7 +20,7 @@
:value="item.value"/>
</el-select>
<el-input v-model="SpareParts" filterable placeholder="请输入零件名称" style="width: 200px;margin-left: 10px" size="small" clearable/>
<el-select v-model="QualityTypeValue" filterable placeholder="质检类型" style="margin-left: 10px" size="small" clearable>
<el-select v-model="QualityTypeValue" filterable placeholder="质检类型" style="margin-left: 10px;width:150px" size="small" clearable>
<el-option
v-for="item in QualityTypeNumber"
:key="item.value"
@@ -46,7 +46,7 @@
type="date"
placeholder="选择结束日期"/>
<!--<span>质检情况:</span>-->
<el-select v-model="qualityInspectionValue" filterable placeholder="选择质检情况" size="small" style="width: 140px;margin-left: 50px" clearable>
<el-select v-model="qualityInspectionValue" filterable placeholder="选择质检情况" size="small" style="width: 100px;margin-left: 50px" clearable>
<el-option
v-for="item in qualityInspection"
:key="item.value"
@@ -54,7 +54,7 @@
:value="item.value"/>
</el-select>
<!--<span>质检人员:</span>-->
<el-select v-model="personNum" filterable placeholder="选择质检人员" size="small" style="width: 140px;margin-left: 10px" clearable>
<el-select v-model="personNum" filterable placeholder="选择质检人员" size="small" style="width: 130px;margin-left: 10px" clearable>
<el-option
v-for="item in person"
:key="item.value"

View File

@@ -20,17 +20,14 @@
:label="item.label"
:value="item.value"/>
</el-select>
<el-select v-model="PickingValue" placeholder="领料情况" size="small" style="width: 120px" clearable>
<el-option
v-for="item in Picking"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
<el-input v-model="Name" placeholder="名称" clearable style="width: 120px" size="small"/>
<el-input v-model="materialSpec" placeholder="物料规格" style="width: 120px" clearable size="small"/>
<el-input v-model="materialModel" placeholder="物料型号" style="width: 120px" clearable size="small"/>
<el-button size="small" type="success" icon="el-icon-search" style="margin: 0 0 0 10px" @click="pageCurrent0=1;pageSize0=300;pageCurrent1=1;pageSize1=300;pageCurrent2=1;pageSize2=300;pageCurrent4=1;pageSize4=20;searchTable()">查询</el-button>
<el-input v-model="Name" placeholder="物料名称、规格、型号" clearable style="width: 200px" size="small"/>
<el-switch
v-model="PickingValue"
active-color="#13ce66"
inactive-color="#ff4949"
style="margin-left: 5px"/>
<span>已领用</span>
<el-button size="small" type="primary" plain icon="el-icon-search" style="margin: 0 0 0 10px" @click="pageCurrent0=1;pageSize0=300;pageCurrent1=1;pageSize1=300;pageCurrent2=1;pageSize2=300;pageCurrent4=1;pageSize4=20;searchTable()">查询</el-button>
</el-row>
</div>
<el-tabs v-model="PartType" type="card" @tab-click="searchTable()">
@@ -254,13 +251,24 @@
<div slot="header">
<el-card>
<el-row style="margin-top: 5px">
<el-input v-model="pickingListNumber" clearable size="small" placeholder="领料单编号" style="width:120px;margin-left: 10px" />
<el-button size="small" type="success" icon="el-icon-search" style="margin: 0 0 0 10px" @click="searchList()">查询</el-button>
<el-button size="small" type="primary" icon="el-icon-plus" style="margin: 0 0 0 10px" @click="createList()">创建领料单</el-button>
<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"
start-placeholder="开始日期"
end-placeholder="结束日期"/>
<el-input v-model="pickingListPeople" clearable size="small" placeholder="制单人" style="width:120px;margin-left: 10px" />
<el-button size="small" type="primary" plain icon="el-icon-search" style="margin: 0 0 0 10px" @click="searchList()">查询</el-button>
<el-button size="small" type="warning" plain icon="el-icon-plus" style="margin: 0 0 0 10px" @click="createList()">创建领料单</el-button>
<el-tooltip :open-delay="1200" effect="dark" content="为所选领料单增加物料明细" placement="top">
<el-button size="small" type="warning" icon="el-icon-bottom" style="margin: 0 0 5px 10px" @click="selectInto()">选入物料</el-button>
<el-button size="small" type="success" plain icon="el-icon-bottom" style="margin: 0 0 5px 10px" @click="selectInto()">选入物料</el-button>
</el-tooltip>
<el-button :disabled="Number(审批情况)===1" size="small" type="danger" icon="el-icon-delete" style="margin: 0 0 0 10px" @click="dropList()">删除领料单</el-button>
<el-button :disabled="Number(审批情况)===1" size="small" plain type="danger" icon="el-icon-delete" style="margin: 0 0 0 10px" @click="dropList()">删除领料单</el-button>
<el-button :disabled="Number(审批情况)===1" size="small" plain type="danger" icon="el-icon-delete" style="margin-right: 20px;float: right" @click="dropListDetail()">移除领料明细</el-button>
</el-row>
</el-card>
@@ -273,7 +281,7 @@
{{ scope.row.领料单编号 }}
</template>
</el-table-column>
<el-table-column label="领料人" prop="领料人" align="center" min-width="90px">
<el-table-column label="制单人" prop="制单人" align="center" min-width="90px">
<template slot-scope="scope">
{{ scope.row.姓名 }}
</template>
@@ -340,16 +348,16 @@
{{ scope.row.出库数量1 }}
</template>
</el-table-column>
<el-table-column v-if="true" label="备料确认" align="center" prop="是否备料确认" min-width="75px">
<template slot-scope="scope">
<el-tag v-if="Number(scope.row.是否备料确认)===1" type="success" size="mini">已备料</el-tag>
<el-tag v-else type="warning" size="mini">未备料</el-tag>
</template>
</el-table-column>
<!--<el-table-column v-if="true" label="备料确认" align="center" prop="是否备料确认" min-width="75px">-->
<!--<template slot-scope="scope">-->
<!--<el-tag v-if="Number(scope.row.是否备料确认)===1" type="success" size="mini">已备料</el-tag>-->
<!--<el-tag v-else type="warning" size="mini">未备料</el-tag>-->
<!--</template>-->
<!--</el-table-column>-->
<el-table-column v-if="true" label="领料确认" align="center" prop="是否领料确认" width="75px">
<template slot-scope="scope">
<el-tag v-if="(Number(scope.row.总数量) <= Number(scope.row.出库数量1)) || Number(scope.row.是否领料确认) === 1" type="success" size="mini">已领</el-tag>
<el-tag v-else-if="Number(scope.row.总数量) > Number(scope.row.出库数量1) && Number(scope.row.出库数量1) > 0" type="primary" size="mini">未领完</el-tag>
<el-tag v-if="(Number(scope.row.总数量) <= Number(scope.row.出库数量1)) || Number(scope.row.是否领料确认) === 1" type="success" size="mini">已领</el-tag>
<el-tag v-else-if="Number(scope.row.总数量) > Number(scope.row.出库数量1) && Number(scope.row.出库数量1) > 0" type="primary" size="mini">部分领用</el-tag>
<el-tag v-else-if="Number(scope.row.出库数量1) === 0" type="warning" size="mini">未领料</el-tag>
</template>
</el-table-column>
@@ -358,7 +366,7 @@
<el-popover placement="right" width="500" trigger="click">
<el-table :data="gridData" highlight-current-row size="mini" show-summary>
<el-table-column width="50" align="center" type="index" label="序号"/>
<el-table-column min-width="100" align="center" label="姓名">
<el-table-column min-width="100" align="center" label="领料人">
<template slot-scope="scope">
{{ scope.row.姓名 }}
</template>
@@ -384,7 +392,7 @@
<el-dialog v-el-drag-dialog :visible.sync="dialogFormVisible1" title="创建领料单" center width="380px">
<el-form ref="form1" :model="form1" :rules="rules1" label-position="left">
<el-form-item label="领料人" prop="领料人流水号" label-width="100px" size="small">
<el-form-item label="制单人" prop="领料人流水号" label-width="100px" size="small">
<el-select v-model="form1.领料人流水号" placeholder="请选择" size="small" clearable filterable>
<el-option
v-for="item in pickPerson"
@@ -416,12 +424,13 @@ export default {
审批情况: '',
peopleName: '',
ListMX: '',
startTime: '',
PartType: '基本件',
machineNumberValue: '',
machineNumber: [],
MachineNumber: '',
tableDataBasic: [],
PickingValue: '',
PickingValue: false,
Picking: [{
value: 0,
label: '未领'
@@ -462,10 +471,10 @@ export default {
领料单备注: ''
},
rules1: {
领料人流水号: [{ required: true, message: '请选择领料人' }]
领料人流水号: [{ required: true, message: '请选择制单人' }]
},
pickPerson: [],
pickingListNumber: '', // 领料单编号
pickingListPeople: '', // 制单人
pickingListNumberShow: '', // 领料单编号
pickingListNum: '', // 领料单流水号
multipleSelection: [],
@@ -501,7 +510,6 @@ export default {
request(param).then(res => {
if (res.data[0].result === '1') {
this.$message.success('操作成功')
this.pickingListNumber = ''
this.searchList()
} else {
this.$message.error('操作失败')
@@ -580,67 +588,68 @@ export default {
},
// 标准件
searchTable0() {
let check1, check2, check3, check4, check5, check6
let check1, check2, check3
this.machineNumberValue ? check1 = 1 : check1 = 0
this.groupNumberValue ? check2 = 1 : check2 = 0
this.Name ? check3 = 1 : check3 = 0
this.materialModel ? check4 = 1 : check4 = 0
this.materialSpec ? check5 = 1 : check5 = 0
if (this.PickingValue !== 0 && this.PickingValue !== 1) {
check6 = 0
} else {
check6 = 1
}
searchTable(check1, this.machineNumberValue, check2, this.groupNumberValue, check3, this.Name, check4, this.materialModel, check5, this.materialSpec, check6, this.PickingValue, this.pageCurrent0, this.pageSize0, 1).then(response => {
console.log(this.PickingValue, 111)
if (this.PickingValue === false) {
searchTable(check1, this.machineNumberValue, check2, this.groupNumberValue, check3, this.Name, 1, 0, this.pageCurrent0, this.pageSize0, 1).then(response => {
this.tableData0 = response.data.rows
this.total0 = response.data.total
})
} else {
searchTable(check1, this.machineNumberValue, check2, this.groupNumberValue, check3, this.Name, 1, 1, this.pageCurrent0, this.pageSize0, 1).then(response => {
this.tableData0 = response.data.rows
this.total0 = response.data.total
})
}
},
// 外购件
searchTable1() {
let check1, check2, check3, check4, check5, check6
let check1, check2, check3
this.machineNumberValue ? check1 = 1 : check1 = 0
this.groupNumberValue ? check2 = 1 : check2 = 0
this.Name ? check3 = 1 : check3 = 0
this.materialModel ? check4 = 1 : check4 = 0
this.materialSpec ? check5 = 1 : check5 = 0
if (this.PickingValue !== 0 && this.PickingValue !== 1) {
check6 = 0
} else {
check6 = 1
}
searchTable(check1, this.machineNumberValue, check2, this.groupNumberValue, check3, this.Name, check4, this.materialModel, check5, this.materialSpec, check6, this.PickingValue, this.pageCurrent1, this.pageSize1, 2).then(response => {
this.tableData1 = response.data.rows
this.total1 = response.data.total
console.log(this.PickingValue, 111)
if (this.PickingValue === false) {
searchTable(check1, this.machineNumberValue, check2, this.groupNumberValue, check3, this.Name, 1, 0, this.pageCurrent1, this.pageSize1, 2).then(response => {
this.tableData0 = response.data.rows
this.total0 = response.data.total
})
} else {
searchTable(check1, this.machineNumberValue, check2, this.groupNumberValue, check3, this.Name, 1, 1, this.pageCurrent1, this.pageSize1, 2).then(response => {
this.tableData0 = response.data.rows
this.total0 = response.data.total
})
}
},
// 基本件
searchTable2() {
let check1, check2, check3, check4, check5, check6
let check1, check2, check3
this.machineNumberValue ? check1 = 1 : check1 = 0
this.groupNumberValue ? check2 = 1 : check2 = 0
this.Name ? check3 = 1 : check3 = 0
this.materialModel ? check4 = 1 : check4 = 0
this.materialSpec ? check5 = 1 : check5 = 0
if (this.PickingValue !== 0 && this.PickingValue !== 1) {
check6 = 0
} else {
check6 = 1
}
searchTable(check1, this.machineNumberValue, check2, this.groupNumberValue, check3, this.Name, check4, this.materialModel, check5, this.materialSpec, check6, this.PickingValue, this.pageCurrent2, this.pageSize2, 3).then(response => {
this.tableData2 = response.data.rows
this.total2 = response.data.total
console.log(this.PickingValue, 111)
if (this.PickingValue === false) {
searchTable(check1, this.machineNumberValue, check2, this.groupNumberValue, check3, this.Name, 1, 0, this.pageCurrent2, this.pageSize2, 3).then(response => {
this.tableData0 = response.data.rows
this.total0 = response.data.total
})
} else {
searchTable(check1, this.machineNumberValue, check2, this.groupNumberValue, check3, this.Name, 1, 1, this.pageCurrent2, this.pageSize2, 3).then(response => {
this.tableData0 = response.data.rows
this.total0 = response.data.total
})
}
},
// 离线采购件
searchTable4() {
this.listLoading = true
this.tableDataBasic = []
let check1, check2, check3
let check1
this.Name ? check1 = 1 : check1 = 0
this.materialSpec ? check2 = 1 : check2 = 0
this.materialModel ? check3 = 1 : check3 = 0
searchPart(check1, this.Name, check2, this.materialSpec, check3, this.materialModel, this.pageCurrent4, this.pageSize4).then(response => {
searchPart(check1, this.Name, this.pageCurrent4, this.pageSize4).then(response => {
this.tableDataBasic = response.data.rows
this.total4 = response.data.total
this.listLoading = false
@@ -689,10 +698,11 @@ export default {
},
// 查询领料单列表
searchList() {
let check, isElectrical
this.pickingListNumber ? check = 1 : check = 0
let check, isElectrical, check1
this.pickingListPeople ? check = 1 : check = 0
this.startTime ? check1 = 1 : (check1 = 0, this.startTime = '')
Number(this.token) === 37 || Number(this.token) === 36 || Number(this.token) === 35 ? isElectrical = 1 : isElectrical = 0 // 35电工 36电气部长 37电气副部长
searchList(this.pageCurrent3, this.pageSize3, check, this.pickingListNumber, isElectrical).then(response => {
searchList(this.pageCurrent3, this.pageSize3, check, this.pickingListPeople, isElectrical, check1, this.startTime[0], this.startTime[1]).then(response => {
this.pickListTable1 = response.data.rows
this.total3 = response.data.total
})
@@ -754,7 +764,6 @@ export default {
request(param).then(res => {
if (res.data[0].result === '1') {
this.$message.success('操作成功')
this.pickingListNumber = ''
this.searchList()
} else {
this.$message.error('操作失败')
@@ -793,6 +802,9 @@ export default {
handleSelectionChange(val) {
this.multipleSelection = val
},
handleSelectionChange1(val) {
this.multipleSelection1 = val
},
// 选入
selectInto() {
if (this.PartType === '离线采购件') {

View File

@@ -17,16 +17,16 @@
:label="item.label"
:value="item.value"/>
</el-select>
<span>分组</span>
<el-select v-model="partValue" clearable filterable size="small" style="margin-right:10px;width: 80px" placeholder="分组">
<el-option
v-for="item in part"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
<span>规格及型号</span>
<el-input v-model="specificationValue" clearable size="small" style="margin-right:10px;width: 150px" placeholder="规格型号"/>
<!-- <span>分组</span>-->
<!-- <el-select v-model="partValue" clearable filterable size="small" style="margin-right:10px;width: 80px" placeholder="分组">-->
<!-- <el-option-->
<!-- v-for="item in part"-->
<!-- :key="item.value"-->
<!-- :label="item.label"-->
<!-- :value="item.value"/>-->
<!-- </el-select>-->
<!-- <span>规格及型号</span>-->
<!-- <el-input v-model="specificationValue" clearable size="small" style="margin-right:10px;width: 150px" placeholder="规格型号"/>-->
<span>加工总工时小时:</span>
<el-input v-model="totalProcessingHours" clearable size="small" style="margin-right:10px;width: 100px"/>
<span>计划总工时小时:</span>
@@ -34,89 +34,94 @@
<el-button size="small" type="success" icon="el-icon-search" style="margin: 0 0 0 10px" @click="searchTable()">查询</el-button>
</el-card>
<el-card>
<el-table :data="tableData" highlight-current-row border style="width: 100%;" size="mini" height="300">
<el-table-column label="跟单号" align="center" min-width="200">
<el-table :data="tableData" highlight-current-row border style="width: 100%;" size="mini" height="700">
<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="200">
<el-table-column label="序号" align="center" min-width="70">
<template slot-scope="scope">
{{ scope.row.序号 }}
</template>
</el-table-column>
<el-table-column label="工序名" align="center" min-width="200">
<el-table-column label="工序名" align="center" min-width="90">
<template slot-scope="scope">
{{ scope.row.工序名 }}
</template>
</el-table-column>
<el-table-column label="计划数量" align="center" min-width="200">
<el-table-column label="计划数量" align="center" min-width="70">
<template slot-scope="scope">
{{ scope.row.计划数量 }}
</template>
</el-table-column>
<el-table-column label="计划准备工时" align="center" min-width="200">
<el-table-column label="计划准备工时" align="center" min-width="70">
<template slot-scope="scope">
{{ scope.row.计划准备工时 }}
</template>
</el-table-column>
<el-table-column label="单件计划工时" align="center" min-width="200">
<el-table-column label="单件计划工时" align="center" min-width="70">
<template slot-scope="scope">
{{ scope.row.单件计划工时 }}
</template>
</el-table-column>
<el-table-column label="计划工时(分)" align="center" min-width="200">
<el-table-column label="计划工时(分)" align="center" min-width="70">
<template slot-scope="scope">
{{ scope.row.计划工时 }}
</template>
</el-table-column>
<el-table-column label="计划加工日期" align="center" min-width="200">
<el-table-column label="计划加工日期" align="center" min-width="100">
<template slot-scope="scope">
{{ scope.row.计划加工日期 }}
</template>
</el-table-column>
<el-table-column label="加工数量" align="center" min-width="200">
<el-table-column label="加工数量" align="center" min-width="70">
<template slot-scope="scope">
{{ scope.row.加工数量 }}
</template>
</el-table-column>
<el-table-column label="加工准备工时" align="center" min-width="200">
<el-table-column label="加工准备工时" align="center" min-width="70">
<template slot-scope="scope">
{{ scope.row.加工准备工时 }}
</template>
</el-table-column>
<el-table-column label="单件加工工时" align="center" min-width="200">
<template slot-scope="scope">
{{ scope.row.单件加工工时 }}
</template>
</el-table-column>
<el-table-column label="加工工时(分)" align="center" min-width="200">
<el-table-column label="加工工时(分)" align="center" min-width="70">
<template slot-scope="scope">
{{ scope.row.加工工时 }}
</template>
</el-table-column>
<el-table-column label="加工日期" align="center" min-width="200">
<el-table-column label="加工日期" align="center" min-width="100">
<template slot-scope="scope">
{{ scope.row.加工日期 }}
</template>
</el-table-column>
<el-table-column label="图号及规格" align="center" min-width="200">
<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="200">
<el-table-column label="制品名称" align="center" min-width="150">
<template slot-scope="scope">
{{ scope.row.制品名称 }}
</template>
</el-table-column>
</el-table>
<div class="block" style="margin: 10px 0;">
<el-pagination
:current-page="PageCurrent"
:page-sizes="[10, 20, 30, 40, 1000]"
:page-size="PageSize"
:total="total"
layout="total, sizes, prev, pager, next, jumper"
@size-change="handleSizeChange"
@current-change="handleCurrentChange"/>
</div>
</el-card>
</div>
</template>
<script>
import { initProject, initMachine } from '@/api/ManufacturingCenter/ProjectPlanningQuery'
import { initProject, initMachine, searchatabledata } from '@/api/ManufacturingCenter/ContractDetailsInquiry'
export default {
data() {
return {
@@ -129,7 +134,10 @@ export default {
specificationValue: '', // 规格型号
totalProcessingHours: '', // 加工总工时
totalPlannedHours: '', // 计划总工时
tableData: [] // 详情表
tableData: [], // 详情表
PageCurrent: 1,
PageSize: 1000,
total: 0
}
},
created() {
@@ -150,6 +158,43 @@ export default {
})
}
})
}, // 查询按钮
searchTable() {
this.tableData = []
searchatabledata(this.projectValue, this.machineValue, this.PageCurrent, this.PageSize).then(response => {
if (response.data.rows.length !== 0) {
for (let i = 0; i < response.data.rows.length; i++) {
this.tableData.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].单件定额工时,
计划工时: Number(response.data.rows[i].批次数量) * (Number(response.data.rows[i].单件定额工时) + Number(response.data.rows[i].准结定额工时)),
计划加工日期: response.data.rows[i].计划日期.split(' ')[0],
加工数量: 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.totalProcessingHours += Number(response.data.rows[i].设备工时)
this.totalPlannedHours += Number(Number(response.data.rows[i].批次数量) * (Number(response.data.rows[i].单件定额工时) + Number(response.data.rows[i].准结定额工时)))
}
}
this.total = response.data.total
})
},
handleSizeChange(val) {
this.PageCurrent = 1
this.PageSize = val
this.searchTable()
},
handleCurrentChange(val) {
this.PageCurrent = val
this.searchTable()
}
}
}

View File

@@ -29,7 +29,7 @@
:label="item.label"
:value="item.value"/>
</el-select>
<el-button type="success" size="small" icon="el-icon-search" style="margin-left:10px" @click="total = 0;pageSize = 10000;pageList = 1;getTable()">查询</el-button>
<el-button type="primary" size="small" icon="el-icon-search" style="margin-left:10px" plain @click="total = 0;pageSize = 10000;pageList = 1;getTable()">查询</el-button>
</el-form-item>
</el-form>
</el-col>
@@ -103,7 +103,7 @@
type="selection"
align="center"
width="35"/>
<el-table-column label="零件号" prop="零件图号" align="center" min-width="220">
<el-table-column label="零件号" prop="零件图号" align="center" min-width="150">
<template slot-scope="scope">
{{ scope.row.零件图号 }}
</template>
@@ -148,18 +148,20 @@
{{ scope.row.零件类型名称 }}
</template>
</el-table-column>
<el-table-column label="操作" width="170px" fixed="right" align="center">
<el-table-column label="操作" width="220px" fixed="right" align="center">
<template slot-scope="scope">
<el-button
:disabled="checked_hebing"
size="mini"
type="primary"
icon="el-icon-star-off"
style="padding: 4px 8px"
plain
@click="handleEdit(scope.$index, scope.row, 'form')">分批投产</el-button>
<el-button
size="mini"
type="primary"
icon="el-icon-star-off"
style="padding: 4px 8px"
plain
@click="handleEditNumber(scope.$index, scope.row)">更改数量</el-button>
@@ -178,13 +180,13 @@
@size-change="handleSizeChange"
@current-change="handleCurrentChange"/>
<el-tooltip :open-delay="1200" effect="dark" content="打回到零件分配" placement="top">
<el-button :loading="listLoading3" type="danger" size="small" style="float:right;margin-left: 10px" @click="back">打回</el-button>
<el-button :loading="listLoading3" type="danger" size="small" style="float:right;margin-left: 10px" plain @click="back">打回</el-button>
</el-tooltip>
<el-tooltip :open-delay="1200" effect="dark" content="选中零件进行投产" placement="top">
<el-button :loading="listLoading3" type="primary" size="small" style="float:right;" @click="production">投产</el-button>
<el-button :loading="listLoading3" type="warning" size="small" style="float:right;" plain @click="production">投产</el-button>
</el-tooltip>
<el-tooltip :open-delay="1200" effect="dark" content="选中零件进行备料投产" placement="top">
<el-button :loading="listLoading3" type="success" size="small" style="float:right;" @click="production10">备料投产</el-button>
<el-button :loading="listLoading3" type="primary" size="small" style="float:right;" plain @click="production10">备料投产</el-button>
</el-tooltip>
<el-tooltip :open-delay="1200" effect="dark" content="将零件加急处理" placement="top">
<el-checkbox v-model="checked_UrgentItem" style="float:right;margin-top:10px;margin-right:10px">是否加急</el-checkbox>

View File

@@ -1,6 +1,6 @@
<template>
<div class="app-container">
<el-card>
<el-card style="padding-top: 10px">
<el-row>
<!-- <span>机床编号:</span>-->
<el-select v-model="machineNumberValue" filterable placeholder="机床编号" size="small" style="margin:0px 10px" clearable @change="machineChange">
@@ -21,6 +21,7 @@
:label="item.label"
:value="item.value"/>
</el-select>
<span style="margin-left: 50px">三表下达时间:&nbsp;&nbsp;{{ DeliveryTime }}</span>
<!-- <el-button type="success" size="small" icon="el-icon-search" style="margin-left: 15px" @click="searchTable()">查询</el-button>-->
<!-- <el-button type="success" size="small" icon="el-icon-search" style="margin-left: 15px" @click="searchPart()">查询1</el-button>-->
<el-badge :value="value1" :max="99" class="item">
@@ -63,7 +64,7 @@
<el-card>
<el-tabs type="border-card" @tab-click="selectPart">
<el-tab-pane label="基本件">
<el-table :data="tableData1" :row-class-name="tableRowClassName1" border size="mini" style="width: 100%" height="300px" @selection-change="handleSelectionChange">
<el-table :data="tableData1" :row-class-name="tableRowClassName1" stripe border size="mini" style="width: 100%" height="300px" @selection-change="handleSelectionChange">
<el-table-column align="center" width="50" type="selection"/>
<el-table-column label="零件名称" align="center" width="120px">
<template slot-scope="scope">
@@ -228,15 +229,15 @@
placeholder="选择日期"/>
<span style="font-weight: bold">制造:</span>
<el-tooltip :open-delay="1200" effect="dark" content="将零件选择到采购单" placement="top">
<el-button type="success" size="small" icon="el-icon-star-off" style="margin-top: 3px; margin-left: 5px" @click="purchaseRequisition()">制造部采购</el-button>
<el-button type="primary" size="small" icon="el-icon-star-off" plain style="margin-top: 3px; margin-left: 5px" @click="purchaseRequisition()">制造部采购</el-button>
</el-tooltip>
<span style="margin-left: 40px;font-weight: bold">金工:</span>
<el-tooltip :open-delay="1200" effect="dark" content="所选零件分配为自家生产" placement="top">
<el-button type="danger" size="small" icon="el-icon-star-off" style="margin-top: 3px; margin-left: 5px" @click="Production()">车间生产</el-button>
<el-button type="danger" size="small" icon="el-icon-star-off" plain style="margin-top: 3px; margin-left: 5px" @click="Production()">车间生产</el-button>
</el-tooltip>
<span style="margin-left: 40px;font-weight: bold">采购:</span>
<el-tooltip :open-delay="1200" effect="dark" content="所选零件分配到采购部" placement="top">
<el-button type="primary" size="small" icon="el-icon-star-off" style="margin-top: 3px; margin-left: 5px" @click="PurchasingDepartment()">采购部门采购</el-button>
<el-button type="success" size="small" icon="el-icon-star-off" plain style="margin-top: 3px; margin-left: 5px" @click="PurchasingDepartment()">采购部门采购</el-button>
</el-tooltip>
</el-card>
<el-card>
@@ -251,7 +252,7 @@
<el-row>
<el-col style="width: 400px">
<el-card>
<el-table :data="tableData4" border size="mini" style="width: 100%" height="300px" highlight-current-row @row-click="searchDetailed">
<el-table :data="tableData4" stripe border size="mini" style="width: 100%" height="300px" highlight-current-row @row-click="searchDetailed">
<el-table-column label="请购单号" show-overflow-tooltip align="center" width="120px">
<template slot-scope="scope">
{{ scope.row.请购单编号 }}
@@ -567,13 +568,14 @@
</template>
<script>
import { initProject, searchgroup, searchTable, searchPart, searchPart1, searchTable1, addData, editData, deleteData, searchDetailed1, purchaseRequisition, purchaseRequisition1, purchaseRequisition2, MoveOut, MoveOut1, PurchasingDepartment, Production, PartCallbackInformation, PartCallbackInformation1, submit, submit1, Delete, Delete1, editStock, editNum, OutPart } from '@/api/ManufacturingCenter/PartAssignment'
import { DeliveryTimeSelect, initProject, searchgroup, searchTable, searchPart, searchPart1, searchTable1, addData, editData, deleteData, searchDetailed1, purchaseRequisition, purchaseRequisition1, purchaseRequisition2, MoveOut, MoveOut1, PurchasingDepartment, Production, PartCallbackInformation, PartCallbackInformation1, submit, submit1, Delete, Delete1, editStock, editNum, OutPart } from '@/api/ManufacturingCenter/PartAssignment'
import { mapGetters } from 'vuex'
import Cookie from 'js-cookie'
export default {
inject: ['reload'],
data() {
return {
DeliveryTime: '', // 三表下达时间
projectFloatValue: '',
machineNumberValue: '',
machineFloatValue: '',
@@ -672,6 +674,7 @@ export default {
}
},
created() {
this.DeliveryTime = ''
this.fetchData()
},
methods: {
@@ -869,12 +872,21 @@ export default {
}
})
},
// 三表下达时间查询
DeliveryTimeSelect() {
this.DeliveryTime = ''
DeliveryTimeSelect(this.groupNumberValue).then(response => {
console.log(response.data)
this.DeliveryTime = response.data[0].操作日期.substring(0, 10)
})
},
searchTable() {
this.loading = true
if (this.machineNumberValue !== '') {
this.check2 = 1
} else { this.check2 = 0 }
if (this.groupNumberValue !== '') {
this.DeliveryTimeSelect() // 三表下达时间查询
this.check3 = 1
} else { this.check3 = 0 }
searchTable(this.machineNumberValue, this.check2, this.groupNumberValue, this.check3).then(response => {

View File

@@ -21,11 +21,11 @@
:value="item.value"/>
</el-select>
<el-input v-model="partNumber" clearable size="small" placeholder="零件图号" style="width: 150px;margin: 0px 10px;"/>
<el-button v-if="是否扫描 === false" size="small" type="success" icon="el-icon-search" style="margin: 10px 0 0 10px" @click="total = 0;pageList = 1;getTable()">查询</el-button>
<el-button v-if="是否扫描 === true" size="small" type="success" icon="el-icon-search" style="margin: 10px 0 0 10px" @click="total5 = 0;pageList5 = 1;getTable5()">查询</el-button>
<el-button v-if="是否扫描 === false" size="small" type="primary" icon="el-icon-search" plain style="margin: 10px 0 0 10px" @click="total = 0;pageList = 1;getTable()">查询</el-button>
<el-button v-if="是否扫描 === true" size="small" type="primary" icon="el-icon-search" plain style="margin: 10px 0 0 10px" @click="total5 = 0;pageList5 = 1;getTable5()">查询</el-button>
<el-checkbox v-if="false" v-model="是否扫描">是否扫描查询</el-checkbox>
<el-tooltip :open-delay="1200" effect="dark" content="变更零件加工开始和结束时间" style="margin-left:200px" placement="top">
<el-button size="small" type="primary" @click="PartPlan()">零件计划变更</el-button>
<el-button size="small" type="warning" plain @click="PartPlan()">零件计划变更</el-button>
</el-tooltip>
<el-date-picker
v-model="startTime"
@@ -139,9 +139,9 @@
@size-change="handleSizeChange"
@current-change="handleCurrentChange"/>
<el-tooltip :open-delay="1200" effect="dark" content="将选中零件自动排出加工工序" placement="top">
<el-button type="warning" size="small" icon="el-icon-download" @click="Selection">选入</el-button>
<el-button type="warning" size="small" icon="el-icon-download" plain @click="Selection">选入</el-button>
</el-tooltip>
<el-button type="warning" size="small" icon="el-icon-download" @click="SelectionAll">全部选入</el-button>
<el-button type="warning" size="small" icon="el-icon-download" plain @click="SelectionAll">全部选入</el-button>
</div>
<div v-if="是否扫描 === true" class="block" style="margin-top: 10px;">
<el-pagination
@@ -428,11 +428,11 @@
@current-change="handleCurrentChange1"/>
<div style="float:right">
<el-tooltip :open-delay="1200" effect="dark" content="自动计算工序加工时间" placement="top">
<el-button type="primary" size="small" style="margin:5px 10px 10px 10px" @click="Discharge">虚拟排产</el-button>
<el-button type="warning" size="small" style="margin:5px 10px 10px 10px" plain @click="Discharge">虚拟排产</el-button>
</el-tooltip>
<el-button v-if="可以确定零件计划" type="primary" size="small" style="margin:5px 10px 10px 10px" @click="Plan" >确定零件计划</el-button>
<el-button v-if="可以确定零件计划" type="warning" size="small" style="margin:5px 10px 10px 10px" plain @click="Plan" >确定零件计划</el-button>
<el-tooltip :open-delay="1200" effect="dark" content="选出重新设置零件的加工时间" placement="top">
<el-button type="danger" size="small" icon="el-icon-upload2" style="float:right;margin:5px 50px 10px 10px" @click="allOut">全部选出</el-button>
<el-button type="danger" size="small" icon="el-icon-upload2" style="float:right;margin:5px 50px 10px 10px" plain @click="allOut">全部选出</el-button>
</el-tooltip>
</div>
</div>

View File

@@ -105,7 +105,7 @@
width="80px"
>
<template slot-scope="scope" >
<el-button :disabled="scope.row.批次零件状态 === '2'" type="primary" plain size="mini" @click="handleEdit(scope.row)">停产</el-button>
<el-button :disabled="scope.row.批次零件状态 === '2'" type="primary" plain size="mini" @click="handleEdit(scope.row)">报废</el-button>
</template>
</el-table-column>
</el-table>
@@ -199,7 +199,7 @@
</el-col>
</el-row>
<el-card>
<div style="margin-top: 10px">停产,将重新补投两种零件一种是接着加工(执行原来的加工计划)另一种是从第一序重新加工(重新制定零件的加工计划)补投的零件号后加B</div>
<div style="margin-top: 10px">报废,将重新补投两种零件一种是接着加工(执行原来的加工计划)另一种是从第一序重新加工(重新制定零件的加工计划)补投的零件号后加B</div>
<div style="margin-top: 10px; display: block">
<span>补投接着加工零件数量</span>
<el-input v-model="inputA" auto-complete="off" style="width: 100px" size="small"/>

View File

@@ -43,14 +43,6 @@
<el-tooltip :open-delay="1200" effect="dark" content="新增项目" placement="top">
<el-button type="primary" icon="el-icon-circle-plus-outline" size="small" style="margin-left: 10px;background: #fdf6ec;border-color: #ff9759;color: #ff9759;" @click="ADD()">新增</el-button>
</el-tooltip>
<!--<<<<<<< HEAD-->
<!--&lt;!&ndash;<<<<<<< HEAD&ndash;&gt;-->
<!--&lt;!&ndash; &lt;!&ndash; <el-button type="info" size="small" style="margin-left: 10px">导出Excel</el-button>&ndash;&gt;&ndash;&gt;-->
<!--&lt;!&ndash;=======&ndash;&gt;-->
<!--&lt;!&ndash; &lt;!&ndash;<el-button type="info" size="small" style="margin-left: 10px">导出Excel</el-button>&ndash;&gt;&ndash;&gt;-->
<!--&lt;!&ndash;&gt;>>>>>> d828757fc0d137c09d0339446a35ae8651355ce7&ndash;&gt;-->
<!--=======-->
<!--&gt;>>>>>> 75e884a0fca545b1a478c0a0dcaf498a46cbe009-->
</div>
</el-card>
<el-row>

View File

@@ -50,7 +50,7 @@
:label="item.label"
:value="item.value"/>
</el-select>
<el-button type="success" class="el-icon-search" size="small" @click="pageCurrent=1;pageSize=20;searchTable()">查询</el-button>
<el-button type="primary" class="el-icon-search" size="small" plain @click="pageCurrent=1;pageSize=20;searchTable()">查询</el-button>
</el-row>
<el-table v-loading="loading" :data="tableData" height="500" size="mini" stripe style="width: 100%;" border highlight-current-row element-loading-text="拼命加载中">
<el-table-column label="序号" type="index" align="center" fixed="left" width="50"/>

View File

@@ -25,8 +25,8 @@
:label="item.label"
:value="item.value"/>
</el-select>
<el-button icon="el-icon-search" type="success" size="small" @click="pageCurrentWB = 1;pageSizeWB = 1000;pageCurrent = 1;pageSize = 1000;getTableData()">查询</el-button>
<el-button icon="el-icon-circle-plus-outline" type="primary" size="small" @click="openUrgentItem()">加急件</el-button>
<el-button icon="el-icon-search" type="primary" plain size="small" @click="pageCurrentWB = 1;pageSizeWB = 1000;pageCurrent = 1;pageSize = 1000;getTableData()">查询</el-button>
<el-button icon="el-icon-circle-plus-outline" type="warning" plain size="small" @click="openUrgentItem()">加急件</el-button>
</el-card>
<el-card>
<div v-for="(file, key) in hadFile" :key="key">

View File

@@ -0,0 +1,186 @@
<template>
<div class="app-container">
<el-button
type="success"
size="small"
style="margin-left:10px"
@click="downloadExcel()">导出Excel模板1</el-button>
<el-button
type="success"
size="small"
style="margin-left:10px"
@click="downloadExce2()">导出Excel模板2</el-button>
<el-button
type="success"
size="small"
style="margin-left:10px"
@click="downloadExce3()">导出Excel模板3</el-button>
<el-button
type="success"
size="small"
style="margin-left:10px"
@click="downloadExce4()">导出Excel模板4</el-button>
<el-button
type="success"
size="small"
style="margin-left:10px"
@click="downloadExce5()">导出Excel模板5</el-button>
<el-button
type="success"
size="small"
style="margin-left:10px"
@click="downloadExce6()">导出Excel模板6</el-button>
<el-button
type="success"
size="small"
style="margin-left:10px"
@click="downloadExce7()">导出Excel模板7</el-button>
<el-button
type="success"
size="small"
style="margin-left:10px"
@click="downloadExcel8()">导出Excel模板8</el-button>
</div>
</template>
<script>
import { ExcelDownLoad } from '@/utils/request'
export default {
data() {
return {
}
},
methods: {
// 模板1
downloadExcel() {
var param = []
param[0] = ['发票流水号', 1]
param[1] = ['供应商名称', 2]
// var data = this.CreateData(1, name: 2, param)
var data = this.CreateData(1, 2, param)
console.log(data)
const _ExcelDownLoad = ExcelDownLoad
this.download(`${_ExcelDownLoad}?Fapiao=${data}`)
},
// 模板2
downloadExce2() {
var param = []
param[0] = ['发票流水号', 1]
param[1] = ['供应商名称', 2]
var data = this.CreateData(1, 2, param)
console.log(data)
const _ExcelDownLoad = ExcelDownLoad
this.download(`${_ExcelDownLoad}?Fapiao=${data}`)
},
// 模板3
downloadExce3() {
var param = []
param[0] = ['发票流水号', 1]
param[1] = ['供应商名称', 2]
var data = this.CreateData(1, 2, param)
console.log(data)
const _ExcelDownLoad = ExcelDownLoad
this.download(`${_ExcelDownLoad}?Fapiao=${data}`)
},
// 模板4
downloadExce4() {
var param = []
param[0] = ['发票流水号', 1]
param[1] = ['供应商名称', 2]
var data = this.CreateData(1, 2, param)
console.log(data)
const _ExcelDownLoad = ExcelDownLoad
this.download(`${_ExcelDownLoad}?Fapiao=${data}`)
},
// 模板5
downloadExce5() {
var param = []
param[0] = ['发票流水号', 1]
param[1] = ['供应商名称', 2]
var data = this.CreateData(1, 2, param)
console.log(data)
const _ExcelDownLoad = ExcelDownLoad
this.download(`${_ExcelDownLoad}?Fapiao=${data}`)
},
// 模板6
downloadExce6() {
var param = []
param[0] = ['发票流水号', 1]
param[1] = ['供应商名称', 2]
var data = this.CreateData(1, 2, param)
console.log(data)
const _ExcelDownLoad = ExcelDownLoad
this.download(`${_ExcelDownLoad}?Fapiao=${data}`)
},
// 模板7
downloadExce7() {
var param = []
param[0] = ['发票流水号', 1]
param[1] = ['供应商名称', 2]
var data = this.CreateData(1, 2, param)
console.log(data)
const _ExcelDownLoad = ExcelDownLoad
this.download(`${_ExcelDownLoad}?Fapiao=${data}`)
},
// 模板8
downloadExcel8() {
var param = []
param[0] = ['发票流水号', 1]
param[1] = ['供应商名称', 2]
var data = this.CreateData(1, 2, param)
console.log(data)
const _ExcelDownLoad = ExcelDownLoad
this.download(`${_ExcelDownLoad}?Fapiao=${data}`)
},
/**
* 下载
* @param {String} url 目标文件地址
* @param {String} filename 想要保存的文件名称
*/
download(url) {
this.getBlob(url, function(blob, filename) {
saveAs(blob, filename)
})
},
getBlob(url, cb) {
var xhr = new XMLHttpRequest()
xhr.open('GET', url, true)
xhr.responseType = 'blob'
xhr.onload = function() {
if (xhr.status === 200) {
console.log(xhr, 1111)
const name = xhr.getResponseHeader('content-disposition').split('=')[1]
cb(xhr.response, name)
}
}
xhr.send()
}
}
}
/**
* 保存
* @param {Blob} blob
* @param {String} filename 想要保存的文件名称
*/
function saveAs(blob, filename = '下载文件.xls') {
if (window.navigator.msSaveOrOpenBlob) {
navigator.msSaveBlob(blob, filename)
} else {
var link = document.createElement('a')
var body = document.querySelector('body')
link.href = window.URL.createObjectURL(blob)
link.download = filename
// fix Firefox
link.style.display = 'none'
body.appendChild(link)
link.click()
body.removeChild(link)
window.URL.revokeObjectURL(link.href)
}
}
</script>
<style scoped>
</style>