|
@@ -85,16 +85,12 @@
|
|
|
<el-col :span="12">
|
|
<el-col :span="12">
|
|
|
<el-form-item prop="files" label="附件:">
|
|
<el-form-item prop="files" label="附件:">
|
|
|
<fileMain v-model="form.files" type="view"></fileMain>
|
|
<fileMain v-model="form.files" type="view"></fileMain>
|
|
|
- <!-- <el-link-->
|
|
|
|
|
- <!-- v-if="form.files && form.files !== ''"-->
|
|
|
|
|
- <!-- type="primary"-->
|
|
|
|
|
- <!-- :underline="false"-->
|
|
|
|
|
- <!-- @click="downloadFile(form.files)"-->
|
|
|
|
|
- <!-- >-->
|
|
|
|
|
- <!-- {{ form.files.name }}-->
|
|
|
|
|
- <!-- </el-link-->
|
|
|
|
|
- <!-- >-->
|
|
|
|
|
|
|
+
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
|
|
+
|
|
|
|
|
+ <template v-slot:technicalDrawings="{ row }">
|
|
|
|
|
+ <fileMain v-model="row.technicalDrawings" type="view"></fileMain>
|
|
|
|
|
+ </template>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
</el-row>
|
|
</el-row>
|
|
|
<headerTitle title="计划清单" style="margin-top: 15px"></headerTitle>
|
|
<headerTitle title="计划清单" style="margin-top: 15px"></headerTitle>
|
|
@@ -116,9 +112,27 @@
|
|
|
v-model="scope.row.totalCount"
|
|
v-model="scope.row.totalCount"
|
|
|
></el-input-number>
|
|
></el-input-number>
|
|
|
</template>
|
|
</template>
|
|
|
|
|
+ <template v-slot:expectReceiveDate="scope">
|
|
|
|
|
+ <div v-if="scope.row.arrivalWay == 1">
|
|
|
|
|
+ {{ scope.row.expectReceiveDate }}
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <div v-if="scope.row.arrivalWay == 2">
|
|
|
|
|
+ <el-link
|
|
|
|
|
+ type="primary"
|
|
|
|
|
+ :underline="false"
|
|
|
|
|
+
|
|
|
|
|
+ >
|
|
|
|
|
+ {{ scope.row.expectReceiveDate }}
|
|
|
|
|
+ </el-link>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </template>
|
|
|
</ele-pro-table>
|
|
</ele-pro-table>
|
|
|
</el-tab-pane>
|
|
</el-tab-pane>
|
|
|
- <el-tab-pane label="带料清单" name="2" v-if="['3', '4', '5', '6','7'].includes(form.sourceType)">
|
|
|
|
|
|
|
+ <el-tab-pane
|
|
|
|
|
+ label="带料清单"
|
|
|
|
|
+ name="2"
|
|
|
|
|
+ v-if="['3', '4', '5', '6', '7'].includes(form.sourceType)"
|
|
|
|
|
+ >
|
|
|
<ele-pro-table
|
|
<ele-pro-table
|
|
|
ref="table"
|
|
ref="table"
|
|
|
:needPage="false"
|
|
:needPage="false"
|
|
@@ -137,7 +151,11 @@
|
|
|
</template>
|
|
</template>
|
|
|
</ele-pro-table>
|
|
</ele-pro-table>
|
|
|
</el-tab-pane>
|
|
</el-tab-pane>
|
|
|
- <el-tab-pane label="产出品清单" name="3" v-if="['3', '4', '5', '6','7'].includes(form.sourceType)">
|
|
|
|
|
|
|
+ <el-tab-pane
|
|
|
|
|
+ label="产出品清单"
|
|
|
|
|
+ name="3"
|
|
|
|
|
+ v-if="['3', '4', '5', '6', '7'].includes(form.sourceType)"
|
|
|
|
|
+ >
|
|
|
<ele-pro-table
|
|
<ele-pro-table
|
|
|
ref="table"
|
|
ref="table"
|
|
|
:needPage="false"
|
|
:needPage="false"
|
|
@@ -183,7 +201,7 @@
|
|
|
},
|
|
},
|
|
|
data() {
|
|
data() {
|
|
|
return {
|
|
return {
|
|
|
- activeName:'1',
|
|
|
|
|
|
|
+ activeName: '1',
|
|
|
visible: false,
|
|
visible: false,
|
|
|
detailId: '',
|
|
detailId: '',
|
|
|
title: '详情',
|
|
title: '详情',
|
|
@@ -220,7 +238,35 @@
|
|
|
align: 'center',
|
|
align: 'center',
|
|
|
slot: 'productName'
|
|
slot: 'productName'
|
|
|
},
|
|
},
|
|
|
-
|
|
|
|
|
|
|
+ {
|
|
|
|
|
+ width: 110,
|
|
|
|
|
+ prop: 'batchNo',
|
|
|
|
|
+ label: '批次号',
|
|
|
|
|
+ slot: 'batchNo',
|
|
|
|
|
+ align: 'center'
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ prop: 'provenance',
|
|
|
|
|
+ label: '产地',
|
|
|
|
|
+ slot: 'provenance',
|
|
|
|
|
+ align: 'center',
|
|
|
|
|
+ minWidth: 200,
|
|
|
|
|
+ showOverflowTooltip: true,
|
|
|
|
|
+ formatter: (row, column) => {
|
|
|
|
|
+ return row.provenance && row.provenance.length
|
|
|
|
|
+ ? row.provenance
|
|
|
|
|
+ .map((item) => this.getDictValue('产地', item))
|
|
|
|
|
+ .join(',')
|
|
|
|
|
+ : '';
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ width: 150,
|
|
|
|
|
+ prop: 'taskName',
|
|
|
|
|
+ label: '工序',
|
|
|
|
|
+ slot: 'taskName',
|
|
|
|
|
+ align: 'center'
|
|
|
|
|
+ },
|
|
|
{
|
|
{
|
|
|
width: 150,
|
|
width: 150,
|
|
|
prop: 'productBrand',
|
|
prop: 'productBrand',
|
|
@@ -271,25 +317,44 @@
|
|
|
align: 'center',
|
|
align: 'center',
|
|
|
slot: 'specification'
|
|
slot: 'specification'
|
|
|
},
|
|
},
|
|
|
- // {
|
|
|
|
|
- // width: 130,
|
|
|
|
|
- // prop: 'modelType',
|
|
|
|
|
- // label: '品牌',
|
|
|
|
|
- // slot: 'modelType'
|
|
|
|
|
- // },
|
|
|
|
|
|
|
+ {
|
|
|
|
|
+ width: 150,
|
|
|
|
|
+ prop: 'arrivalWay',
|
|
|
|
|
+ label: '到货方式',
|
|
|
|
|
+ formatter: (row, column, cellValue) => {
|
|
|
|
|
+ return cellValue == 1 ? '一次性到货' : '分批到货';
|
|
|
|
|
+ },
|
|
|
|
|
+ align: 'center'
|
|
|
|
|
+ },
|
|
|
{
|
|
{
|
|
|
width: 170,
|
|
width: 170,
|
|
|
prop: 'receiveDate',
|
|
prop: 'receiveDate',
|
|
|
label: '到货日期',
|
|
label: '到货日期',
|
|
|
- align: 'center',
|
|
|
|
|
- slot: 'receiveDate'
|
|
|
|
|
|
|
+ slot: 'expectReceiveDate',
|
|
|
|
|
+ align: 'center'
|
|
|
|
|
+ },
|
|
|
|
|
+
|
|
|
|
|
+ {
|
|
|
|
|
+ width: 130,
|
|
|
|
|
+ prop: 'supplierName',
|
|
|
|
|
+ label: '供应商',
|
|
|
|
|
+ slot: 'supplierName',
|
|
|
|
|
+ headerSlot: 'headerSupplierName',
|
|
|
|
|
+ align: 'center'
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ width: 160,
|
|
|
|
|
+ prop: 'technicalDrawings',
|
|
|
|
|
+ label: '图纸附件',
|
|
|
|
|
+ slot: 'technicalDrawings',
|
|
|
|
|
+ align: 'center'
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
width: 140,
|
|
width: 140,
|
|
|
prop: 'files',
|
|
prop: 'files',
|
|
|
label: '附件',
|
|
label: '附件',
|
|
|
- align: 'center',
|
|
|
|
|
- slot: 'files'
|
|
|
|
|
|
|
+ slot: 'files',
|
|
|
|
|
+ align: 'center'
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
minWidth: 220,
|
|
minWidth: 220,
|
|
@@ -302,8 +367,11 @@
|
|
|
};
|
|
};
|
|
|
},
|
|
},
|
|
|
created() {
|
|
created() {
|
|
|
|
|
+ this.requestDict('产地');
|
|
|
|
|
+
|
|
|
this.getPlanData(this.businessId);
|
|
this.getPlanData(this.businessId);
|
|
|
},
|
|
},
|
|
|
|
|
+
|
|
|
methods: {
|
|
methods: {
|
|
|
downloadFile(file) {
|
|
downloadFile(file) {
|
|
|
getFile({ objectName: file.storePath }, file.name);
|
|
getFile({ objectName: file.storePath }, file.name);
|
|
@@ -342,7 +410,11 @@
|
|
|
}
|
|
}
|
|
|
// 表单验证通过,执行保存操作
|
|
// 表单验证通过,执行保存操作
|
|
|
this.loading = true;
|
|
this.loading = true;
|
|
|
- this.form.detailList=[...this.form.detailList,...this.form.rawDetailList,...this.form.outputDetailList]
|
|
|
|
|
|
|
+ this.form.detailList = [
|
|
|
|
|
+ ...this.form.detailList,
|
|
|
|
|
+ ...this.form.rawDetailList,
|
|
|
|
|
+ ...this.form.outputDetailList
|
|
|
|
|
+ ];
|
|
|
return Object.assign({}, this.form);
|
|
return Object.assign({}, this.form);
|
|
|
} catch (error) {
|
|
} catch (error) {
|
|
|
console.log(error);
|
|
console.log(error);
|