Browse Source

2025-10-10

领料申请管理的材料明细新增
master
fengyuan_yang 3 months ago
parent
commit
2cd0feba2a
  1. 1
      src/api/orderIssure/soIssueNotify.js
  2. 127
      src/views/modules/orderIssure/soIssueNotify/searchIssureNotify.vue

1
src/api/orderIssure/soIssueNotify.js

@ -53,3 +53,4 @@ export const saveIssueNoOrderDetail = data => createAPI(`/orderIssure/issureNoti
export const updateNotifyDetail = data => createAPI(`/orderIssure/issureNotify/updateNotifyDetail`,'post',data)
export const saveSOIssueNotifyOrderMateria = data => createAPI(`/orderIssure/issureNotify/saveSOIssueNotifyOrderMateria`,'post',data)

127
src/views/modules/orderIssure/soIssueNotify/searchIssureNotify.vue

@ -202,20 +202,56 @@
</template>
</el-table-column>
<el-table-column
prop="qtyToIssue"
prop="componentScrap"
header-align="center"
align="right"
min-width="100"
label="申请数量">
label="调机用量">
<template slot-scope="scope">
<span v-if="editBatchVisible">
<el-input :controls="false" v-model="scope.row.qtyToIssue"
@input="value => scope.row.qtyToIssue = value.match(/^(\d+\.?\d*|\.\d+)$/) ? value : ''"
<el-input :controls="false" v-model="scope.row.componentScrap"
@input="value => { scope.row.componentScrap = value.match(/^(\d+\.?\d*|\.\d+)$/) ? value : ''; updateQtyToIssue(scope.row); }"
style="height: 11px; width: 98%;">
</el-input>
</span>
<span v-else>
<span>{{calculateQtyToIssue(scope.row)}}</span>
<span>{{scope.row.componentScrap}}</span>
</span>
</template>
</el-table-column>
<el-table-column
prop="firstInspectionQty"
header-align="center"
align="right"
min-width="100"
label="首检用量">
<template slot-scope="scope">
<span v-if="editBatchVisible">
<el-input :controls="false" v-model="scope.row.firstInspectionQty"
@input="value => { scope.row.firstInspectionQty = value.match(/^(\d+\.?\d*|\.\d+)$/) ? value : ''; updateQtyToIssue(scope.row); }"
style="height: 11px; width: 98%;">
</el-input>
</span>
<span v-else>
<span>{{scope.row.firstInspectionQty}}</span>
</span>
</template>
</el-table-column>
<el-table-column
prop="standardDosage"
header-align="center"
align="right"
min-width="100"
label="标准用量">
<template slot-scope="scope">
<span v-if="editBatchVisible">
<el-input :controls="false" v-model="scope.row.standardDosage"
@input="value => { scope.row.standardDosage = value.match(/^(\d+\.?\d*|\.\d+)$/) ? value : ''; updateQtyToIssue(scope.row); }"
style="height: 11px; width: 98%;">
</el-input>
</span>
<span v-else>
<span>{{scope.row.standardDosage}}</span>
</span>
</template>
</el-table-column>
@ -1006,7 +1042,8 @@
, xiadaNotify
, editNotifyMaterial
, deleteNotify,
updateNotifyDetail
updateNotifyDetail,
saveSOIssueNotifyOrderMateria
} from "@/api/orderIssure/soIssueNotify.js"
import {
searchShopOrderByPaging
@ -1527,26 +1564,7 @@
status: true,
fixed: '',
columnWidth: 100
},{
userId: this.$store.state.user.name,
functionId: 701002,
serialNumber: '701002Table3NeedDate',
tableId: "701002Table3",
tableName: "申请单材料明细表",
columnProp: "needDate",
headerAlign: "center",
align: "center",
columnLabel: "需求时间",
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
columnWidth: 110
},
],
columnList3s:[
{
userId: this.$store.state.user.name,
functionId: 701002,
@ -1564,50 +1582,37 @@
status: true,
fixed: '',
columnWidth: 80
},{
userId: this.$store.state.user.name,
functionId: 701002,
serialNumber: '701002Table3ComponentScrap',
tableId: "701002Table3",
tableName: "申请单材料明细表",
columnProp: "componentScrap",
headerAlign: "center",
align: "right",
columnLabel: "调机量",
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
columnWidth: 80
},{
},
{
userId: this.$store.state.user.name,
functionId: 701002,
serialNumber: '701002Table3FirstInspectionQty',
serialNumber: '701002Table3NeedDate',
tableId: "701002Table3",
tableName: "申请单材料明细表",
columnProp: "firstInspectionQty",
columnProp: "needDate",
headerAlign: "center",
align: "right",
columnLabel: "首检量",
align: "center",
columnLabel: "需求时间",
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
columnWidth: 80
},{
columnWidth: 110
},
],
columnList3s:[
{
userId: this.$store.state.user.name,
functionId: 701002,
serialNumber: '701002Table3StandardDosage',
serialNumber: '701002Table3QtyToIssue',
tableId: "701002Table3",
tableName: "申请单材料明细表",
columnProp: "standardDosage",
columnProp: "qtyToIssue",
headerAlign: "center",
align: "right",
columnLabel: "标准用量",
columnLabel: "申请数量",
columnHidden: false,
columnImage: false,
columnSortable: false,
@ -3677,6 +3682,15 @@
return (componentScrap + firstInspectionQty + standardDosage).toFixed(2);
},
//
updateQtyToIssue(row) {
const componentScrap = parseFloat(row.componentScrap) || 0;
const firstInspectionQty = parseFloat(row.firstInspectionQty) || 0;
const standardDosage = parseFloat(row.standardDosage) || 0;
// 使 $set
this.$set(row, 'qtyToIssue', (componentScrap + firstInspectionQty + standardDosage).toFixed(2));
},
//
addMaterialModal() {
if (!this.currentRow || !this.currentRow.notifyNo) {
@ -3768,15 +3782,6 @@
})
},
//
getNextItemNo() {
if (this.dataList3.length === 0) {
return 1;
}
const maxItemNo = Math.max(...this.dataList3.map(item => item.itemNo || 0));
return maxItemNo + 1;
},
// S
getBaseList (val, type) {
this.tagNo = val

Loading…
Cancel
Save