This commit is contained in:
zhangdingyu
2019-10-28 11:53:48 +08:00
parent b9bbce4564
commit 0c2c9981aa
2 changed files with 406 additions and 63 deletions

View File

@@ -30,28 +30,182 @@
</el-select>
<el-checkbox v-model="checked" :disabled="isShow2 || (parseInt(token) !== 6 && parseInt(token) !== 19)" size="small" style="margin-left:10px">是否核准</el-checkbox>
<el-button :disabled="disabled" type="baocun" size="small" icon="el-icon-tickets" @click="saveApprove">保存</el-button>
<el-button v-show="isShowN" type="text" style="margin-top: 8px;float: right" @click="isShowN=false">关闭</el-button>
<el-button v-show="!isShowN" type="text" style="margin-top: 8px;float: right" @click="isShowN=true">展开</el-button>
</el-card>
<el-card v-show="isShowN">
<div style="margin-left: 10px">
<span style="margin-left: 0">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:</span>
<el-input v-model="typeValue" placeholder="种类" size="small" readonly style="width:100px;margin-top: 5px"/>
<span>零件名称:</span>
<el-input v-model="partName" placeholder="零件名称" size="small" readonly style="width:100px"/>
<span>规格:</span>
<el-input v-model="Specifications" placeholder="规格" size="small" readonly style="width:100px"/>
<span>投产总数量:</span>
<el-input v-model="batchNum" readonly size="small" style="width:100px"/>
<span>物料:</span>
<el-input v-model="materialName" placeholder="物料" size="small" style="width:215px" readonly>
<el-button slot="prepend" icon="el-icon-search" @click="dialogMaterial=true"/>
<el-button slot="append" icon="el-icon-cjn-09" @click="saveMaterial"/>
</el-input>
<!--<span>规格:</span>-->
<!--<el-input v-model="spec" :readonly="isShow2" style="width:100px" size="small" placeholder="规格"/>-->
</div>
<div style="margin-left: 10px">
<el-row>
<el-col style="width:180px">
<span style="margin-left: 0">物料类型:</span>
<el-select v-model="materielValue" size="small" style="margin-top: 7px;width:100px;margin-bottom: 3px" placeholder="物料类型" @change="clear()">
<el-option
v-for="item in materiel"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
</el-col>
<el-col v-show="materielValue==='1'||materielValue==='6'||materielValue==='7'||materielValue==='8'" :span="12" style="width: 60%">
<span >&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:</span>
<el-input-number v-model="diameter" size="small" controls-position="right" style="width:100px;margin-top: 7px"/>
<span>长度:</span>
<el-input-number v-model="height2" size="small" controls-position="right" style="width:100px;margin-top:3px;"/>
<el-button style="margin-top: 3px;margin-left: 10px;" type="success" size="small" @click="Calculation1()">计算重量</el-button>
<span>重量:</span>
<el-input v-model="weight" style="width:150px" size="small" placeholder="重量">
<el-button slot="append" icon="el-icon-cjn-09" @click="saveWeight"/>
</el-input>
<el-button style="margin-left: 10px;" type="success" size="small" @click="insertThestring()">合并生产</el-button>
</el-col>
<el-col v-show="materielValue==='2'||materielValue==='9'||materielValue==='10'||materielValue==='11'" :span="20">
<span>:</span>
<el-input-number v-model="Length" size="small" controls-position="right" style="width:100px;margin-top:20px;"/>
<span>:</span>
<el-input-number v-model="Width" size="small" controls-position="right" style="width:100px;margin-top:20px;"/>
<span>:</span>
<el-input-number v-model="height1" size="small" controls-position="right" style="width:100px;margin-top:20px;"/>
<el-button style="margin-top: 20px;margin-left: 10px;" type="primary" size="small" @click="Calculation2()">计算重量
</el-button>
<span>重量:</span>
<el-input v-model="weight" style="width:150px" size="small" placeholder="重量">
<el-button slot="append" icon="el-icon-cjn-09" @click="saveWeight"/>
</el-input>
</el-col>
<el-col v-show="materielValue==='3'" :span="20">
<span>对边宽:</span>
<el-input-number v-model="OppositeSideWidth" size="small" controls-position="right" style="width:100px;margin-top:20px;"/>
<span>长度:</span>
<el-input-number v-model="length2" size="small" controls-position="right" style="width:100px;margin-top:20px;"/>
<el-button style="margin-top: 20px;margin-left: 10px;" type="primary" size="small" @click="Calculation3()">计算重量
</el-button>
<span>重量:</span>
<el-input v-model="weight" style="width:150px" size="small" placeholder="重量">
<el-button slot="append" icon="el-icon-cjn-09" @click="saveWeight"/>
</el-input>
</el-col>
<el-col v-show="materielValue==='4'" :span="20">
<span>边宽:</span>
<el-input-number v-model="biankuan" size="small" controls-position="right" style="width:100px;margin-top:20px;"/>
<span>边厚:</span>
<el-input-number v-model="bianhou" size="small" controls-position="right" style="width:100px;margin-top:20px;"/>
<span>长度:</span>
<el-input-number v-model="changdu" size="small" controls-position="right" style="width:100px;margin-top:20px;"/>
<el-button style="margin-top: 20px;margin-left: 10px;" type="primary" size="small" @click="Calculation4()">计算重量
</el-button>
<span>重量:</span>
<el-input v-model="weight" style="width:150px" size="small" placeholder="重量">
<el-button slot="append" icon="el-icon-cjn-09" @click="saveWeight"/>
</el-input>
</el-col>
<el-col v-show="materielValue==='5'" :span="30">
<span>壁厚:</span>
<el-input-number v-model="bihou" size="small" controls-position="right" style="width:100px;margin-top:20px;"/>
<span>外径:</span>
<el-input-number v-model="waijing" size="small" controls-position="right" style="width:100px;margin-top:20px;"/>
<span>长度:</span>
<el-input-number v-model="changdu2" size="small" controls-position="right" style="width:100px;margin-top:20px;"/>
<el-button style="margin-top: 20px;margin-left: 10px;" type="primary" size="small" @click="Calculation5()">计算重量
</el-button>
<span>重量:</span>
<el-input v-model="weight" style="width:150px" size="small" placeholder="重量">
<el-button slot="append" icon="el-icon-cjn-09" @click="saveWeight"/>
</el-input>
</el-col>
</el-row>
</div>
<el-row style="margin-bottom: 10px">
<span style="margin-left: 10px">输入数值:</span>
<el-input v-model="numVal" size="small" style="width:100px;margin-top: 3px" placeholder="输入数值"/>
<span style="margin-left: 10px">选择参数:</span>
<el-select v-model="selParaValue" size="small" style="width:100px" placeholder="选择参数">
<el-option
v-for="item in selPara"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
<span>公差:</span>
<el-input v-model="tolerance" size="small" style="width:100px" placeholder="公差"/>
<el-button style="margin-left: 10px" type="success" size="small" @click="calTol()">计算公差</el-button>
<el-button-group v-if="isShow1" style="margin-left: 10px" >
<el-button v-if="isShow1" type="info" size="small" icon="el-icon-document" @click="pasteTable">粘贴
</el-button>
<el-button v-if="true" :disabled="disabled" type="warning" size="small" icon="el-icon-tickets" @click="DYbtn">原有
</el-button>
<el-button :disabled="disabled" type="warning" size="small" icon="el-icon-tickets" @click="WYbtn">
完艺
</el-button>
<el-button :disabled="disabled" type="danger" size="small" icon="el-icon-delete" @click="deleteTable">删除
</el-button>
<el-button v-if="isShow1" type="baocun" size="small" icon="el-icon-tickets" style="margin-left: 1px;margin-right: 1px" @click="copyAndSave">
复制并保存
</el-button>
<el-button :disabled="disabled" type="baocun" size="small" icon="el-icon-tickets" @click="saveApprove">保存
</el-button>
</el-button-group>
<el-button v-if="!isShow1" type="warning" size="small" icon="el-icon-tickets" @click="saveCompiled">记录修改备注</el-button>
</el-row>
<div style="margin-top: 5px;margin-bottom: 10px;display: inline-block"><span>符号</span>
<el-tag type="info"></el-tag>
<el-tag type="info">°</el-tag>
<el-tag type="info">#</el-tag>
<el-tag type="info"></el-tag>
<el-tag type="info">±</el-tag>
<el-tag type="info">×</el-tag>
<el-tag type="info"></el-tag>
<el-tag type="info"></el-tag>
<el-tag type="info"></el-tag>
<el-tag type="info"></el-tag>
<el-tag type="info"></el-tag>
<el-tag type="info"></el-tag>
<el-tag type="info"></el-tag>
<el-tag type="info">mm</el-tag>
<el-tag type="info"></el-tag>
<el-tag type="info"></el-tag>
<el-tag type="info">δ</el-tag>
<el-tag type="info">μm</el-tag>
<el-tag type="info"></el-tag>
<el-tag type="info"></el-tag>
<el-tag type="info">()</el-tag>
</div>
</el-card>
<el-card>
<el-row>
<el-col style="width: 200px;height: 683px;overflow: auto">
<el-col style="width: 150px;height: 683px;overflow: auto">
<el-tree
ref="treeForm"
:data="departmentData"
:props="defaultProps"
node-key="id"
:expand-on-click-node="false"
:indent="30"
default-expand-all
@node-click="onClick"/>
</el-col>
<el-col style="width: 970px;height: 700px">
<el-table
v-loading="loading0"
:data="tableData"
class="processTable"
border
style="width: 967px"
height="683px"
size="mini">
<el-table v-loading="loading0" :data="tableData" class="processTable" border style="width: 967px" height="683px" size="mini">
<el-table-column prop="num" label="序号" width="45" align="center" type="index"/>
<el-table-column prop="name" label="工艺名称" width="180" align="center">
<template slot-scope="scope">
@@ -68,22 +222,10 @@
<el-input v-direction="{x: 1, y: scope.$index}" v-model="scope.row.准结定额工时" style="width:100%" placeholder="" @change="readyChange(scope.row)"/>
</template>
</el-table-column>
<el-table-column prop="hard" label="难度等级" width="90" align="center">
<el-table-column prop="request" label="工艺要求" align="center" width="290">
<template slot-scope="scope">
<el-select
v-model="scope.row.工艺难度等级"
clearable
placeholder=""
@change="hardEdit(scope.row)">
<el-option v-for="item in hard" :key="item.value" :label="item.label" :value="item.value">
<span style="color: #8492a6; font-size: 13px">{{ item.value }}</span>
</el-option>
</el-select>
</template>
</el-table-column>
<el-table-column prop="request" label="工艺要求" align="center" width="150">
<template slot-scope="scope">
<el-autocomplete
<el-input
v-direction="{x: 2, y: scope.$index}"
v-model="scope.row.工艺要求"
:fetch-suggestions="querySearch"
placeholder=""
@@ -93,7 +235,7 @@
@select="blurRequest(scope.row)"/>
</template>
</el-table-column>
<el-table-column label="操作" width="300" align="center">
<el-table-column label="操作" width="250" align="center">
<template slot-scope="scope">
<div>
<el-button
@@ -123,6 +265,223 @@
</el-col>
</el-row>
</el-card>
<el-dialog v-el-drag-dialog :visible.sync="dialogMaterial" title="物料选择" center width="400px">
<el-input v-model="input" placeholder="材质" size="small" style="width:200px"/>
<el-button type="success" size="small" icon="el-icon-search" style="margin: 0 0 10px 10px" @click="total=0;pageCurrent=1;pageSize=10;searchMaterial()">查询
</el-button>
<el-table :data="tableMaterial" size="mini" highlight-current-row border @row-click="selectMaterial">
<el-table-column align="center" label="材质名称">
<template slot-scope="scope">
{{ scope.row.材料 }}
</template>
</el-table-column>
</el-table>
<div class="block" style="margin-top: 10px;">
<el-pagination
:current-page="1"
:page-sizes="[10, 20]"
:page-size="10"
:pager-count="5"
:total="total"
small
layout="sizes, prev, pager, next"
@size-change="handleSizeChange"
@current-change="handleCurrentChange"/>
</div>
<div slot="footer" class="dialog-footer">
<el-button type="primary" size="small" @click="selectMaterial2()">提交</el-button>
</div>
</el-dialog>
<el-dialog v-el-drag-dialog :visible.sync="dialogFormVisible2" title="工艺名称、工艺要求选择" center width="400px">
<el-form ref="form2" :model="form2" label-position="left" label-width="125px" class="demo-ruleForm">
<el-form-item label="工艺名称分类">
<el-select v-model="processNameClassValue" filterable placeholder="分类" size="small" @change="cChange()">
<el-option
v-for="item in processNameClass"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
</el-form-item>
<el-form-item label="工艺名称">
<el-select v-model="processNameValue" filterable placeholder="名称" size="small" @change="nChange()">
<el-option
v-for="item in processName"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
</el-form-item>
<el-form-item label="工艺要求">
<el-select v-model="processRequestValue" placeholder="要求" size="small">
<el-option
v-for="item in processRequest"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
</el-form-item>
<el-form-item>
<el-button size="mini" type="primary" @click="confirmSelect()">确定选择</el-button>
</el-form-item>
</el-form>
</el-dialog>
<el-dialog v-el-drag-dialog :visible.sync="dialogFormVisible" title="工艺选择" center width="800px">
<el-form ref="form" :model="form" label-position="left" label-width="125px" class="demo-ruleForm">
<el-row>
<el-col :span="24">
<el-form-item label="零件图号">
<el-input v-model="partNameValue1" size="small" placeholder="输入零件图号" style="width: 150px" clearable/>
<el-button type="success" size="small" icon="el-icon-search" style="margin-left: 20px" @click="searchProcess()">查询
</el-button>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="零件图号">
<el-select id="num" v-model="processNumValue" placeholder="零件图号" style="width:150px" size="small" @change="numChange()">
<el-option
v-for="item in partName1"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
<el-button size="small" style="margin-left: 20px" @click="processCopy()">工艺拷贝</el-button>
</el-form-item>
</el-col>
</el-row>
<el-table
:data="tableData2"
style="width: 97%;max-height: 300px;margin-top:15px"
height="300px"
border
size="mini">
<el-table-column align="center" label="工艺序号" width="80">
<template slot-scope="scope">
{{ scope.row.工序顺序 }}
</template>
</el-table-column>
<el-table-column align="center" label="工艺名称" width="180">
<template slot-scope="scope">
{{ scope.row.工艺名称 }}
</template>
</el-table-column>
<el-table-column align="center" label="工艺要求">
<template slot-scope="scope">
{{ scope.row.工艺要求 }}
</template>
</el-table-column>
<el-table-column align="center" label="难度等级" width="80">
<template slot-scope="scope">
{{ scope.row.工艺难度等级 }}
</template>
</el-table-column>
</el-table>
</el-form>
</el-dialog>
<el-dialog v-el-drag-dialog :visible.sync="dialogFormVisible1" title="已完工艺选择" center width="800px">
<el-form ref="form1" :model="form1" label-position="left" label-width="80px" class="demo-ruleForm">
<el-row>
<el-col :span="10">
<el-form-item label="零件号">
<el-input v-model="PN" size="small" placeholder="输入零件号" style="width: 150px" clearable @change="inputChange"/>
</el-form-item>
</el-col>
<el-col :span="10">
<el-button size="small" type="success" icon="el-icon-search" @click="searchProcess1()">查询</el-button>
<el-button size="small" @click="processCopy1()">工艺拷贝</el-button>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="零件图号">
<el-select
v-model="tuhaoValue"
placeholder="零件图号"
size="small"
filterable
style="width:150px"
@change="numChange1()">
<el-option
v-for="item in tuhao"
:key="item.value"
:label="item.label"
:value="item.value">
<div style="float: left">{{ item.label }}</div>
<div style="float: right; color: #8492a6; font-size: 13px">{{ item.name1 }}</div>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="零件名称">
<el-input v-model="remark1" size="small" readonly style="width: 150px;"/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="规格">
<el-input v-model="guige" size="small" readonly style="width: 150px;"/>
</el-form-item>
</el-col>
</el-row>
<el-table :data="tableData4" style="width: 97%;max-height: 250px;margin-top: 15px" size="mini" border height="250px">
<el-table-column align="center" label="工艺序号" width="80">
<template slot-scope="scope">
{{ scope.row.工序顺序 }}
</template>
</el-table-column>
<el-table-column align="center" label="工艺名称" width="120">
<template slot-scope="scope">
{{ scope.row.工艺名称 }}
</template>
</el-table-column>
<el-table-column align="center" label="工艺要求">
<template slot-scope="scope">
{{ scope.row.工艺要求 }}
</template>
</el-table-column>
<el-table-column align="center" label="单件定额工时" width="110">
<template slot-scope="scope">
{{ scope.row.单件定额工时 }}
</template>
</el-table-column>
<el-table-column align="center" label="准结定额工时" width="110">
<template slot-scope="scope">
{{ scope.row.准结定额工时 }}
</template>
</el-table-column>
</el-table>
</el-form>
</el-dialog>
<el-dialog v-el-drag-dialog :visible.sync="dialogFormVisible3" title="工艺定额人员" center style="min-height: 300px">
<el-table :data="tableData3" size="mini" style="width: 97%;max-height: 300px" height="300" highlight-current-row border @row-click="selectPerson">
<el-table-column align="center" label="考勤编号" width="150">
<template slot-scope="scope">
{{ scope.row.考勤编号 }}
</template>
</el-table-column>
<el-table-column align="center" label="姓名">
<template slot-scope="scope">
{{ scope.row.姓名 }}
</template>
</el-table-column>
<el-table-column align="center" label="性别" width="150">
<template slot-scope="scope">
{{ scope.row.性别 }}
</template>
</el-table-column>
<el-table-column align="center" label="工作岗位" width="150">
<template slot-scope="scope">
{{ scope.row.岗位名称 }}
</template>
</el-table-column>
</el-table>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="tijiao()">提交</el-button>
</div>
</el-dialog>
</div>
</template>
@@ -180,6 +539,7 @@ export default {
},
data() {
return {
isShowN: false,
defaultProps: {
children: 'children',
label: 'label'
@@ -357,10 +717,12 @@ export default {
methods: {
onClick(num) {
if (this.partNumValue) {
if (num.father === false) {
editGongyi(this.partNumValue, num.value).then(response => {
this.searchDetail()
})
}
}
},
getTreeData() {
processNameClick().then(response => { // 初始化工艺分类
@@ -369,6 +731,7 @@ export default {
this.options.push({
label: response.data[i].工艺分类名称,
value: response.data[i].工艺分类流水号,
father: true,
children: []
})
}
@@ -379,7 +742,8 @@ export default {
for (let j = 0; j < response.data.length; j++) {
firstLevel.children.push({
label: response.data[j].工艺名称,
value: response.data[j].工艺编号
value: response.data[j].工艺编号,
father: false
})
}
})
@@ -463,26 +827,14 @@ export default {
}
},
singleChange(row) {
singleChange(row.工序流水号, row.单件定额工时).then(response => {
if (response.data[0].result === '1') {
this.$message.success('单件定额编辑成功')
} else {
this.$message.error('单件定额编辑失败')
}
})
singleChange(row.工序流水号, row.单件定额工时)
},
readyChange(row) {
readyChange(row.工序流水号, row.准结定额工时).then(response => {
if (response.data[0].result === '1') {
this.$message.success('准结定额编辑成功')
} else {
this.$message.error('准结定额编辑失败')
}
})
readyChange(row.工序流水号, row.准结定额工时)
},
saveWeight() {
if (this.partNumValue === '' || this.material === '') {
this.$message.error('请选择一个零件')
this.$message.error('请选择一个零件或物料')
} else {
saveWeight(this.partNumValue, this.weight).then(response => {
if (response.data[0].result === '1') {
@@ -1182,21 +1534,9 @@ export default {
if (this.partNumValue === '') {
this.$message.error('请先选择一个零件')
} else {
this.$confirm('此操作将永久删除该行工艺, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
deleteOne(this.partNumValue, row.工序流水号).then(() => {
this.$message.success('删除成功')
this.searchDetail()
})
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
})
})
}
},
upOne(row) { // 上移
@@ -1312,3 +1652,9 @@ export default {
}
}
</style>
<style>
.el-tree-node>.el-tree-node__children {
overflow: hidden;
background-color: #d8e5f6;
}
</style>

View File

@@ -341,7 +341,6 @@
</el-form-item>
</el-form>
</el-dialog>
<el-dialog v-el-drag-dialog :visible.sync="dialogFormVisible" title="工艺选择" center width="800px">
<el-form ref="form" :model="form" label-position="left" label-width="125px" class="demo-ruleForm">
<el-row>
@@ -396,7 +395,6 @@
</el-table>
</el-form>
</el-dialog>
<el-dialog v-el-drag-dialog :visible.sync="dialogFormVisible1" title="已完工艺选择" center width="800px">
<el-form ref="form1" :model="form1" label-position="left" label-width="80px" class="demo-ruleForm">
<el-row>
@@ -471,7 +469,6 @@
</el-table>
</el-form>
</el-dialog>
<el-dialog v-el-drag-dialog :visible.sync="dialogFormVisible3" title="工艺定额人员" center style="min-height: 300px">
<el-table :data="tableData3" size="mini" style="width: 97%;max-height: 300px" height="300" highlight-current-row border @row-click="selectPerson">
<el-table-column align="center" label="考勤编号" width="150">