Browse Source

2024-09-29

master
qiezi 1 year ago
parent
commit
cf1f58bc40
  1. 8
      src/views/modules/oss/ossComponents.vue
  2. 160
      src/views/modules/test/requestForTest.vue
  3. 10
      src/views/modules/test/testAttribute/testProperties.vue
  4. 12
      src/views/modules/test/testSoBom/testTable.vue
  5. 14
      src/views/modules/test/testSoRouting/testRoutingTable.vue

8
src/views/modules/oss/ossComponents.vue

@ -32,6 +32,10 @@ export default {
type:String,
default:'单号'
},
disabled:{
type:Boolean,
default:false
},
},
data(){
return{
@ -243,7 +247,7 @@ export default {
<template>
<div>
<el-button type="primary" v-if="this.orderRef1 && this.orderRef2" @click="handleUpload">上传附件</el-button>
<el-button type="primary" v-if="this.orderRef1 && this.orderRef2 && !disabled" @click="handleUpload">上传附件</el-button>
<el-button type="primary" @click="handleDownload">下载</el-button>
<el-table
:height="height"
@ -276,7 +280,7 @@ export default {
width="120"
label="操作">
<template slot-scope="{row,$index}">
<el-link style="cursor:pointer;" @click="handleRemove(row)">删除</el-link>
<el-link style="cursor:pointer;" v-if="!disabled" @click="handleRemove(row)">删除</el-link>
<el-link style="cursor:pointer;" @click="previewFile(row)">预览</el-link>
</template>
</el-table-column>

160
src/views/modules/test/requestForTest.vue

@ -134,7 +134,8 @@
label="操作">
<template slot-scope="scope">
<a type="text" size="small" style="cursor:pointer;" v-if="scope.row.testStatus !== '已完成'" @click="updateModal(scope.row)">编辑</a>
<a type="text" size="small" style="cursor:pointer;" v-if="scope.row.testResultStatus === 'B'" @click="updateModalStatus(scope.row,'C')">下达</a>
<a type="text" size="small" style="cursor:pointer;" v-if="scope.row.testStatus === '草稿'" @click="updateModalStatus(scope.row,'C')">下达</a>
<a type="text" size="small" style="cursor:pointer;" @click="handleDetail(scope.row)">详情</a>
</template>
</el-table-column>
</el-table>
@ -174,26 +175,30 @@
<el-col :span="4">
<el-form-item label="测试数量" prop="testNumber">
<div class="right">
<el-input type="number" class="inlineNumber" :disabled="testInformationFlag('testNumber') === 'N' && modalData.flag === '2'"
<el-input type="number" class="inlineNumber"
:disabled="(testInformationFlag('testNumber') === 'N' && modalData.flag === '2') || detailFlag"
v-model="modalData.testNumber" @input="modalData.testNumber = modalData.testNumber.replace(/^(0+)|[^\d]+/g, '')"></el-input>
</div>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="优先等级" >
<dict-data-select v-if="modalFlag" :disabled="testInformationFlag('priorityLevel') === 'N' && modalData.flag === '2'"
<dict-data-select v-if="modalFlag"
:disabled="(testInformationFlag('priorityLevel') === 'N' && modalData.flag === '2') || detailFlag"
v-model="modalData.priorityLevel" dict-type="priority_Level"></dict-data-select>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="要求交付日期" prop="requiredDeliveryDate">
<el-date-picker v-model="modalData.requiredDeliveryDate" :disabled="testInformationFlag('requiredDeliveryDate') === 'N' && modalData.flag === '2'"
<el-date-picker v-model="modalData.requiredDeliveryDate"
:disabled="(testInformationFlag('requiredDeliveryDate') === 'N' && modalData.flag === '2') || detailFlag"
style="width: 100%" type="date" value-format="yyyy-MM-dd" placeholder="选择日期"></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="印刷方式" prop="printType">
<dict-data-select v-if="modalFlag" :disabled="testInformationFlag('printType') === 'N' && modalData.flag === '2'"
<dict-data-select v-if="modalFlag"
:disabled="(testInformationFlag('printType') === 'N' && modalData.flag === '2') || detailFlag"
clearable v-model="modalData.printType" dict-type="print_type"></dict-data-select>
</el-form-item>
</el-col>
@ -214,25 +219,9 @@
</el-col>
</el-row>
</el-col>
<el-col :span="4" v-if="false">
<el-form-item>
<span slot="label" @click="getCustomerContactList"><a>收货人</a></span>
<el-input v-model="modalData.consignee"></el-input>
</el-form-item>
</el-col>
<el-col :span="4" v-if="false">
<el-form-item label="收货人联系方式">
<el-input v-model="modalData.consigneeContact"></el-input>
</el-form-item>
</el-col>
<el-col :span="4" v-if="false">
<el-form-item label=" ">
<el-checkbox v-model="modalData.isNeedToSendSamples" true-label="Y">是否需要送样</el-checkbox>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="标签名称" prop="productName">
<el-input :disabled="testInformationFlag('productName') === 'N' && modalData.flag === '2'" v-model="modalData.productName"></el-input>
<el-input :disabled="(testInformationFlag('productName') === 'N' && modalData.flag === '2') || detailFlag" v-model="modalData.productName"></el-input>
</el-form-item>
</el-col>
</el-row>
@ -254,50 +243,37 @@
</el-col>
<el-col :span="4">
<el-form-item prop="trackerName">
<!-- <span slot="label" @click="getBaseList(103,1)"><a herf="#">Artwork</a></span>-->
<span v-if="testInformationFlag('tracker') === 'N' && modalData.flag === '2'" slot="label">Artwork</span>
<span v-if="(testInformationFlag('tracker') === 'N' && modalData.flag === '2') || detailFlag" slot="label">Artwork</span>
<span v-else style="cursor: pointer" slot="label" @click="getBaseList(2041)"><a herf="#">Artwork</a></span>
<el-input :disabled="testInformationFlag('tracker') === 'N' && modalData.flag === '2'" v-model="modalData.trackerName" readonly></el-input>
<el-input :disabled="(testInformationFlag('tracker') === 'N' && modalData.flag === '2') || detailFlag" v-model="modalData.trackerName" readonly></el-input>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item prop="engineerName">
<!-- <span slot="label" @click="getBaseList(103,2)"><a herf="#">TP工程师</a></span>-->
<span v-if="testInformationFlag('engineer') === 'N' && modalData.flag === '2'" slot="label">TP工程师</span>
<span v-if="(testInformationFlag('engineer') === 'N' && modalData.flag === '2') || detailFlag" slot="label">TP工程师</span>
<span v-else slot="label" @click="getBaseList(2042)"><a herf="#">TP工程师</a></span>
<el-input :disabled="testInformationFlag('engineer') === 'N' && modalData.flag === '2'" v-model="modalData.engineerName" readonly></el-input>
<el-input :disabled="(testInformationFlag('engineer') === 'N' && modalData.flag === '2') || detailFlag" v-model="modalData.engineerName" readonly></el-input>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="CQC">
<span v-if="testInformationFlag('artwork') === 'N' && modalData.flag === '2'" slot="label">CQC</span>
<span v-if="(testInformationFlag('artwork') === 'N' && modalData.flag === '2') || detailFlag" slot="label">CQC</span>
<span v-else slot="label"><a herf="#" @click="getBaseList(2007)">CQC</a></span>
<el-input :disabled="testInformationFlag('artwork') === 'N' && modalData.flag === '2'" v-model="modalData.artworkName"></el-input>
<el-input :disabled="(testInformationFlag('artwork') === 'N' && modalData.flag === '2') || detailFlag" v-model="modalData.artworkName"></el-input>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="FAI">
<span v-if="testInformationFlag('planner') === 'N' && modalData.flag === '2'" slot="label">FAI</span>
<span v-if="(testInformationFlag('planner') === 'N' && modalData.flag === '2') || detailFlag" slot="label">FAI</span>
<span v-else slot="label"><a herf="#" @click="getBaseList(2008)">FAI</a></span>
<el-input :disabled="testInformationFlag('planner') === 'N' && modalData.flag === '2'" v-model="modalData.plannerName"></el-input>
<el-input :disabled="(testInformationFlag('planner') === 'N' && modalData.flag === '2') || detailFlag" v-model="modalData.plannerName"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="15">
<el-col :span="12" v-if="false">
<el-form-item style="height: 90px">
<span slot="label" @click="getCustomerAddressList"><a>送样地址</a></span>
<el-input type="textarea" v-model="modalData.sendSamplesAddress" :rows="3" resize='none'></el-input>
</el-form-item>
</el-col>
<el-col :span="12" v-if="false">
<el-form-item label="备注" style="height: 90px">
<el-input type="textarea" v-model="modalData.remark" :rows="3" resize='none'></el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="备注" style="height: 90px">
<el-input type="textarea" :disabled="testInformationFlag('technicalConsiderations') === 'N' && modalData.flag === '2'"
<el-input type="textarea" :disabled="(testInformationFlag('technicalConsiderations') === 'N' && modalData.flag === '2') || detailFlag"
v-model="modalData.technicalConsiderations" :rows="3" resize='none' show-word-limit></el-input>
</el-form-item>
</el-col>
@ -307,15 +283,15 @@
<el-button v-if="!modalData.testNo" @click="saveData" plain type="primary" style="position:absolute;margin-top: 10px;margin-right: 10px;right: 0;z-index: 1">下一步</el-button>
<el-tabs v-model="activeTab" @tab-click="dialogTabClick">
<el-tab-pane label="基本信息" :disabled="!activeTabList.includes('attribute')" name="attribute" v-if="modalData.testNo">
<test-properties v-if="modalFlag" v-model:data-list="testPropertiesList" ref="dialogTestAttribute" :test-no="modalData.testNo"></test-properties>
<test-properties v-if="modalFlag" :disabled="detailFlag" v-model:data-list="testPropertiesList" height="32vh" ref="dialogTestAttribute" :test-no="modalData.testNo"></test-properties>
</el-tab-pane>
<el-tab-pane label="基本信息" :disabled="!activeTabList.includes('attribute')" name="attribute" v-else>
<test-properties v-if="modalFlag" v-model:data-list="copyTestPropertiesList" ref="dialogTestAttribute" :test-no="modalData.testNo"></test-properties>
<test-properties v-if="modalFlag" :disabled="detailFlag" v-model:data-list="copyTestPropertiesList" height="32vh" ref="dialogTestAttribute" :test-no="modalData.testNo"></test-properties>
</el-tab-pane>
<el-tab-pane label="物料属性" :disabled="!activeTabList.includes('partAttribute')" name="partAttribute">
<el-table
:data="partItemList1"
:height="secondHeight - 10"
height="35vh"
border
style="width: 100%;">
<el-table-column
@ -340,77 +316,14 @@
</el-table-column>
</el-table>
</el-tab-pane>
<el-tab-pane label="物料信息" name="part" v-if="false">
<el-form label-position="top" :model="projectPartData">
<el-row :gutter="20">
<el-col :span="4">
<el-form-item label="产品编码">
<el-input v-model="projectPartData.testPartNo" clearable></el-input>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="产品名称">
<el-input v-model="projectPartData.partName" clearable></el-input>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label=" ">
<el-button type="primary" @click="getProjectPartList()">查询</el-button>
</el-form-item>
</el-col>
<el-col :span="4" :offset="8">
<el-form-item label=" ">
<el-button v-if="this.modalData.flag === '1' && this.activeTabList.length === 1" type="primary" style="float: right;margin-right: 8px" @click="saveData">下一步</el-button>
</el-form-item>
</el-col>
</el-row>
</el-form>
<el-table
:height="300"
:data="projectPartList"
ref="projectPartTable"
@row-click="projectPartClickRow"
@selection-change="selectionProjectPart"
:row-key="getRowKeys"
@select="selectTestPart"
@select-all="selectAllTestPart"
header-cell-class-name="cellClass"
border
v-loading="dataListLoading"
style="width: 100%;">
<el-table-column
type="selection"
header-align="center"
align="center"
:selectable="checkSelectable"
:reserve-selection="true"
width="50">
</el-table-column>
<el-table-column
v-for="(item,index) in projectPartDetailList" :key="index"
:sortable="item.columnSortable"
:prop="item.columnProp"
:header-align="item.headerAlign"
:show-overflow-tooltip="item.showOverflowTooltip"
:align="item.align"
:fixed="item.fixed===''?false:item.fixed"
:min-width="item.columnWidth"
:label="item.columnLabel">
<template slot-scope="scope">
<span v-if="!item.columnHidden">{{scope.row[item.columnProp]}}</span>
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]" style="width: 100px; height: 80px"/></span>
</template>
</el-table-column>
</el-table>
</el-tab-pane>
<el-tab-pane label="材料信息" :disabled="!activeTabList.includes('product')" name="product">
<test-table v-if="clickTestRow" :test-number="modalData.testNumber" ref="dialogSoBom" v-model:data-list="testSoBomList" :test-no="modalData.testNo"></test-table>
<test-table v-if="clickTestRow" :disabled="detailFlag" :test-number="modalData.testNumber" height="32vh" ref="dialogSoBom" v-model:data-list="testSoBomList" :test-no="modalData.testNo"></test-table>
</el-tab-pane>
<el-tab-pane label="制程信息" :disabled="!activeTabList.includes('process')" name="process">
<test-routing-table v-if="clickTestRow" ref="dialogSoRouting" v-model:data-list="testSoRoutingList" :test-no="modalData.testNo"></test-routing-table>
<test-routing-table v-if="clickTestRow" :disabled="detailFlag" ref="dialogSoRouting" height="32vh" v-model:data-list="testSoRoutingList" :test-no="modalData.testNo"></test-routing-table>
</el-tab-pane>
<el-tab-pane label="附件信息" :disabled="!activeTabList.includes('file')" name="file">
<test-file v-if="modalFlag" :column-list="fileColumnList" v-model:data-list="testFileList" ref="dialogTestFile" :test-no="modalData.testNo"></test-file>
<oss-components v-if="clickTestRow" :disabled="detailFlag" label="测试单号" height="32vh" :columns="fileColumnList" :order-ref2="modalData.testNo" :order-ref1="modalData.site"></oss-components>
</el-tab-pane>
</el-tabs>
</div>
@ -733,8 +646,9 @@
</el-form-item>
</el-form>
</el-tab-pane>
<el-tab-pane label="基本信息" name="attribute">
<test-properties ref="tabProperties" v-model:data-list="testPropertiesList" :test-no="testCurrentRow.testNo" :height="500"></test-properties>
<test-properties ref="tabProperties" v-model:data-list="testPropertiesList" :test-no="testCurrentRow.testNo" :disabled="testCurrentRow.testStatus === '已完成'" height="45vh"></test-properties>
</el-tab-pane>
<el-tab-pane label="物料属性" name="test_attribute" style="padding: 5px">
<el-table
@ -765,14 +679,14 @@
</el-table>
</el-tab-pane>
<el-tab-pane label="材料信息" name="test_so_bom" style="padding: 5px">
<test-table ref="tabSoBom" :test-number="testCurrentRow.testNumber" :test-no="testCurrentRow.testNo" :height="500" v-model:data-list="testSoBomList"></test-table>
<test-table ref="tabSoBom" :test-number="testCurrentRow.testNumber" :disabled="testCurrentRow.testStatus === '已完成'" :test-no="testCurrentRow.testNo" height="45vh" v-model:data-list="testSoBomList"></test-table>
</el-tab-pane>
<el-tab-pane label="制程信息" name="test_so_routing" style="padding: 5px">
<test-routing-table ref="tabSoBom" :test-no="testCurrentRow.testNo" v-model:data-list="testSoRoutingList" :height="500" ></test-routing-table>
<test-routing-table ref="tabSoBom" :test-no="testCurrentRow.testNo" v-model:data-list="testSoRoutingList" :disabled="testCurrentRow.testStatus === '已完成'" height="45vh" ></test-routing-table>
</el-tab-pane>
<el-tab-pane label="附件信息" name="file">
<!-- <test-file ref="tabFile" :column-list="fileColumnList" v-model:data-list="testFileList" :test-no="testCurrentRow.testNo" :height="500"></test-file>-->
<oss-components label="测试单号" height="45vh" :columns="fileColumnList" :order-ref2="testCurrentRow.testNo" :order-ref1="testCurrentRow.site"></oss-components>
<oss-components style="margin-top: 5px" :disabled="testCurrentRow.testStatus === '已完成'" label="测试单号" height="45vh" :columns="fileColumnList" :order-ref2="testCurrentRow.testNo" :order-ref1="testCurrentRow.site"></oss-components>
</el-tab-pane>
<!-- 项目信息页签 -->
@ -1232,9 +1146,15 @@
}
}
},
modalFlag(newVal, oldVal){
if (newVal === false){
this.detailFlag = false
}
}
},
data () {
return {
detailFlag: false,
partItemList1:[],
partItemList2:[],
testFileList:[],
@ -3676,8 +3596,12 @@
}).catch((error)=>{
this.$message.error(error)
})
},
handleDetail(row){
this.detailFlag = true
this.updateModal(row)
}
}
},
}
</script>

10
src/views/modules/test/testAttribute/testProperties.vue

@ -29,9 +29,13 @@ export default {
default: ()=>[],
},
height:{
type:Number,
type:[Number,String],
default:300
},
disabled:{
type:Boolean,
default:false
},
},
model:{
prop:"dataList",
@ -296,8 +300,8 @@ export default {
<template>
<div>
<div style="margin-top: 5px">
<el-button type="primary" @click="clickSaveBtn" v-if="testNo">新增</el-button>
<el-button type="primary" :loading="loading" v-if="testNo" @click="clickSave">{{ attributeDialog?'编辑':'保存' }}</el-button>
<el-button type="primary" @click="clickSaveBtn" v-if="testNo && !disabled">新增</el-button>
<el-button type="primary" :loading="loading" v-if="testNo && !disabled" @click="clickSave">{{ attributeDialog?'编辑':'保存' }}</el-button>
</div>
<div class="rq " v-if="attributeDialog">
<el-table

12
src/views/modules/test/testSoBom/testTable.vue

@ -32,9 +32,13 @@ export default {
default: ()=>[],
},
height:{
type:Number,
type:[Number,String],
default:300
},
disabled:{
type:Boolean,
default:false
},
},
model:{
prop:"dataList",
@ -598,8 +602,8 @@ export default {
<template>
<div class="testTable">
<div style="margin-bottom: 5px">
<el-button type="primary" @click="saveTestSoBom(null)">新增</el-button>
<el-button type="primary" @click="removeBatchTestSoBom">删除</el-button>
<el-button type="primary" v-if="!disabled" @click="saveTestSoBom(null)">新增</el-button>
<el-button type="primary" v-if="!disabled" @click="removeBatchTestSoBom">删除</el-button>
</div>
<el-table
:height="height" border
@ -630,7 +634,7 @@ export default {
</el-table-column>
<el-table-column label="操作" align="center" fixed="right">
<template slot-scope="{row,$index}">
<a type="text" style="cursor:pointer;" @click="saveTestSoBom(row)">编辑</a>
<a type="text" style="cursor:pointer;" v-if="!disabled" @click="saveTestSoBom(row)">编辑</a>
</template>
</el-table-column>
</el-table>

14
src/views/modules/test/testSoRouting/testRoutingTable.vue

@ -24,9 +24,13 @@ export default {
default: ()=>[],
},
height:{
type:Number,
type:[Number,String],
default:300
}
},
disabled:{
type: Boolean,
default: false
},
},
model:{
prop:"dataList",
@ -619,8 +623,8 @@ export default {
<template>
<div>
<div style="margin-bottom: 5px">
<el-button type="primary" @click="saveTestSoRoutingBtn()">新增</el-button>
<el-button type="primary" @click="removeTestSoRouting">删除</el-button>
<el-button type="primary" v-if="!disabled" @click="saveTestSoRoutingBtn()">新增</el-button>
<el-button type="primary" v-if="!disabled" @click="removeTestSoRouting">删除</el-button>
</div>
<el-table
:height="height" border
@ -651,7 +655,7 @@ export default {
</el-table-column>
<el-table-column label="操作" align="center" fixed="right">
<template slot-scope="{row,$index}">
<a type="text" style="cursor:pointer;" @click="saveTestSoRoutingBtn(row)">编辑</a>
<a type="text" style="cursor:pointer;" v-if="!disabled" @click="saveTestSoRoutingBtn(row)">编辑</a>
</template>
</el-table-column>
</el-table>

Loading…
Cancel
Save