Browse Source

0412 新看板

master
ruanqi 3 years ago
parent
commit
e2c54c27e5
  1. 2
      src/api/production.js
  2. 201
      src/views/modules/production/productionBlankingSearch.vue

2
src/api/production.js

@ -48,7 +48,7 @@ export const getAvailableResourceList=data => createAPI(`dailyPlan/getAvailableR
export const scheduleForShopOrder=data => createAPI(`dailyPlan/scheduleForShopOrder`, 'post', data); export const scheduleForShopOrder=data => createAPI(`dailyPlan/scheduleForShopOrder`, 'post', data);
export const scheduleForSOTask=data => createAPI(`dailyPlan/scheduleForSOTask`, 'post', data); export const scheduleForSOTask=data => createAPI(`dailyPlan/scheduleForSOTask`, 'post', data);
export const saveHunlianTask=data => createAPI(`dailyPlan/saveHunlianTask`, 'post', data);

201
src/views/modules/production/productionBlankingSearch.vue

@ -9,7 +9,7 @@
</el-form-item> </el-form-item>
<el-form-item :label="' '"> <el-form-item :label="' '">
<el-button @click="search()" style="margin-left: 0px;margin-top: 0px" type="primary">查询</el-button> <el-button @click="search()" style="margin-left: 0px;margin-top: 0px" type="primary">查询</el-button>
<el-button @click="getSum()" style="margin-left: 0px;margin-top: 0px" type="primary">计算选中订单合计</el-button>
<el-button @click="getSum()" style="margin-left: 0px;margin-top: 0px" type="primary">合并任务单</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
<div class="search1"> <div class="search1">
@ -25,8 +25,17 @@
<el-table-column <el-table-column
type="selection" type="selection"
align="center" align="center"
:selectable="selectFlag"
width="30"> width="30">
</el-table-column> </el-table-column>
<el-table-column
prop="site"
header-align="center"
align="left"
min-width="40"
style="font-size: 20px"
label="工厂编码">
</el-table-column>
<el-table-column <el-table-column
prop="erpStatus" prop="erpStatus"
header-align="center" header-align="center"
@ -42,6 +51,13 @@
min-width="65" min-width="65"
label="硫化订单号"> label="硫化订单号">
</el-table-column> </el-table-column>
<el-table-column
prop="orderNoHunlian"
header-align="center"
align="left"
min-width="65"
label="周计划号">
</el-table-column>
<el-table-column <el-table-column
prop="partDescSpec" prop="partDescSpec"
header-align="center" header-align="center"
@ -100,8 +116,11 @@
</el-table-column> </el-table-column>
</el-table> </el-table>
</div> </div>
<el-dialog title="合计" :close-on-click-modal="false" v-drag :visible.sync="sumFlag" width="341px">
<el-dialog title="混炼任务合并" :close-on-click-modal="false" v-drag :visible.sync="sumFlag" width="700px">
<el-form :inline="true" label-position="top" style="margin-left: 7px;margin-top: -5px;"> <el-form :inline="true" label-position="top" style="margin-left: 7px;margin-top: -5px;">
<el-form-item :label="'硫化产品名称:'">
<el-input v-model="hunlianPartDesc" style="width: 120px"></el-input>
</el-form-item>
<el-form-item :label="'混炼胶用量:'"> <el-form-item :label="'混炼胶用量:'">
<el-input v-model="qty1" readonly style="width: 130px"></el-input> <el-input v-model="qty1" readonly style="width: 130px"></el-input>
</el-form-item> </el-form-item>
@ -113,7 +132,82 @@
<el-input v-model="qty3" readonly style="width: 130px" ></el-input> <el-input v-model="qty3" readonly style="width: 130px" ></el-input>
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-table
height="200"
:data="modalTableData"
ref="tables"
border
style="width: 100%">
<!-- <el-table-column-->
<!-- prop="orderNo"-->
<!-- header-align="center"-->
<!-- align="left"-->
<!-- min-width="60"-->
<!-- label="生产订单号">-->
<!-- </el-table-column>-->
<el-table-column
prop="orderNoHunlian"
header-align="center"
align="left"
min-width="60"
label="周计划号">
</el-table-column>
<el-table-column
prop="qtyRequired"
header-align="center"
align="right"
min-width="45"
label="混炼胶用量">
</el-table-column>
<el-table-column
prop="sjph1"
header-align="center"
align="center"
min-width="50"
label="生胶牌号1">
</el-table-column>
<el-table-column
prop="sjphQtyReq1"
header-align="center"
align="right"
min-width="45"
label="生胶1用量">
</el-table-column>
<el-table-column
prop="sjph2"
header-align="center"
align="center"
min-width="50"
label="生胶牌号2">
</el-table-column>
<el-table-column
prop="sjphQtyReq2"
header-align="center"
align="right"
min-width="45"
label="生胶2用量">
</el-table-column>
<el-table-column
prop="planStartDate"
header-align="center"
align="center"
min-width="45"
label="需求日期">
</el-table-column>
<el-table-column
prop=""
header-align="center"
align="center"
width="50"
fixed="right"
label="操作">
<template slot-scope="scope" class="foo_container">
<a type="text" size="small" @click="splitSchedulesTable(scope.$index)">删除</a>
</template>
</el-table-column>
</el-table>
<el-footer style="height:40px;margin-top: 20px;text-align:center"> <el-footer style="height:40px;margin-top: 20px;text-align:center">
<el-button type="primary" @click="saveNewPlan">合并</el-button>
<el-button type="primary" @click="sumFlag = false">关闭</el-button> <el-button type="primary" @click="sumFlag = false">关闭</el-button>
</el-footer> </el-footer>
</el-dialog> </el-dialog>
@ -123,6 +217,7 @@
<script> <script>
import { import {
productionBlankingSearch, productionBlankingSearch,
saveHunlianTask,
} from '@/api/production.js' } from '@/api/production.js'
export default { export default {
name: 'productionBlankingSearch', name: 'productionBlankingSearch',
@ -141,6 +236,8 @@
qty1:0, qty1:0,
qty2:0, qty2:0,
qty3:0, qty3:0,
hunlianPartDesc:'',
modalTableData:[],
} }
}, },
mounted () { mounted () {
@ -150,6 +247,38 @@
// this.autoRoll() // this.autoRoll()
}, },
methods: { methods: {
splitSchedulesTable (index) {
this.modalTableData.splice(index, 1)
let modalTableData=this.modalTableData;
this.qty1=0;
this.qty2=0;
this.qty3=0;
for (let i = 0; i <modalTableData.length ; i++) {
if(modalTableData[i].qtyRequired!=null){
let num1=this.qty1+modalTableData[i].qtyRequired;
this.qty1=num1;
}
if(modalTableData[i].sjphQtyReq1!=null){
let num2=this.qty2+modalTableData[i].sjphQtyReq1;
this.qty2=num2;
}
if(modalTableData[i].sjphQtyReq2!=null){
let num3=this.qty3+modalTableData[i].sjphQtyReq2;
this.qty3=num3;
}
}
this.qty1=Number(this.qty1).toFixed(2);
this.qty2=Number(this.qty2).toFixed(2);
this.qty3=Number(this.qty3).toFixed(2);
},
selectFlag(row,index){
if(row.orderNo==null||row.erp=='已取消'||row.finishedFlag=='2'||row.finishedFlag=='3'){
return false;
}else {
return true;
}
},
// //
selectionChangeHandle (val) { selectionChangeHandle (val) {
this.dataListSelections = val this.dataListSelections = val
@ -182,6 +311,18 @@
return false return false
} }
let dataList=this.dataListSelections; let dataList=this.dataListSelections;
let flag=false;
for (let i = 0; i <dataList.length ; i++) {
if(dataList[i].site!=dataList[0].site||dataList[i].componentPartNo!=dataList[0].componentPartNo){
flag=true;
}
}
if(flag){
this.$alert('勾选订单不是同一个工厂或者混炼物料!', '错误', {
confirmButtonText: '确定'
})
return false
}
for (let i = 0; i <dataList.length ; i++) { for (let i = 0; i <dataList.length ; i++) {
if(dataList[i].qtyRequired!=null){ if(dataList[i].qtyRequired!=null){
let num1=this.qty1+dataList[i].qtyRequired; let num1=this.qty1+dataList[i].qtyRequired;
@ -196,11 +337,65 @@
this.qty3=num3; this.qty3=num3;
} }
} }
this.hunlianPartDesc=dataList[0].compPartDescSpec;
this.qty1=Number(this.qty1).toFixed(2); this.qty1=Number(this.qty1).toFixed(2);
this.qty2=Number(this.qty2).toFixed(2); this.qty2=Number(this.qty2).toFixed(2);
this.qty3=Number(this.qty3).toFixed(2); this.qty3=Number(this.qty3).toFixed(2);
this.modalTableData=JSON.parse(JSON.stringify(dataList))
this.sumFlag=true; this.sumFlag=true;
}
},
saveNewPlan(){
if(this.modalTableData.length==0){
this.$alert("列表中不存在周计划!", '错误', {
confirmButtonText: '确定'
})
return false;
}
let detailList=[];
for (let i = 0; i <this.modalTableData.length; i++) {
let data={
site:this.modalTableData[i].site,
orderNo:this.modalTableData[i].orderNoHunlian,
orderRef1:this.modalTableData[i].orderNo,
hunlianQty:this.modalTableData[i].qtyRequired,
orderDate:this.modalTableData[i].planStartDate,
hunlianPartNo:this.modalTableData[i].componentPartNo,
}
detailList.push(data);
}
let inData={
site:this.modalTableData[0].site,
taskQty:this.qty1,
partNo:this.modalTableData[0].componentPartNo,
createBy:this.$store.state.user.name,
detailList:detailList
}
this.$confirm(`是否合并这些周计划?`, '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
saveHunlianTask(inData).then(({data}) => {
if (data && data.code === 0) {
this.search ();
this.sumFlag = false;
this.$message({
message: '操作成功',
type: 'success',
duration: 1500,
onClose: () => {
}
})
} else {
this.$alert(data.msg, '错误', {
confirmButtonText: '确定'
})
}
})
}).catch(() => {
})
},
} }
} }
</script> </script>

Loading…
Cancel
Save