Browse Source

一键

master
han\hanst 2 days ago
parent
commit
50c87b6ae7
  1. 114
      src/views/modules/sampleTracking/projectProofTracking.vue

114
src/views/modules/sampleTracking/projectProofTracking.vue

@ -188,19 +188,19 @@
<el-dialog :title="oneKeyDialogMode === 'edit' ? '修改项目/物料/打样' : '一键创建项目/物料/打样'" :visible.sync="oneKeyDialogVisible" :close-on-click-modal="false" width="1000px"> <el-dialog :title="oneKeyDialogMode === 'edit' ? '修改项目/物料/打样' : '一键创建项目/物料/打样'" :visible.sync="oneKeyDialogVisible" :close-on-click-modal="false" width="1000px">
<el-form :model="oneKeyForm" label-position="top" class="one-key-grid-form"> <el-form :model="oneKeyForm" label-position="top" class="one-key-grid-form">
<el-row :gutter="16"> <el-row :gutter="16">
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('buNo')">
<el-form-item label="BU" required> <el-form-item label="BU" required>
<el-select v-model="oneKeyForm.buNo" placeholder="请选择" style="width: 100%"> <el-select v-model="oneKeyForm.buNo" placeholder="请选择" style="width: 100%">
<el-option v-for="item in userBuList" :key="item.buNo" :label="item.buDesc" :value="item.buNo"></el-option> <el-option v-for="item in userBuList" :key="item.buNo" :label="item.buDesc" :value="item.buNo"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('projectNo')">
<el-form-item label="项目编码"> <el-form-item label="项目编码">
<el-input v-model="oneKeyForm.projectNo" style="width: 100%"></el-input> <el-input v-model="oneKeyForm.projectNo" style="width: 100%"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="12" v-show="isOneKeyCreateFieldVisible('projectDesc')">
<el-form-item label="项目名称"> <el-form-item label="项目名称">
<el-input v-model="oneKeyForm.projectDesc" style="width: 100%"></el-input> <el-input v-model="oneKeyForm.projectDesc" style="width: 100%"></el-input>
</el-form-item> </el-form-item>
@ -208,7 +208,7 @@
</el-row> </el-row>
<el-row :gutter="16"> <el-row :gutter="16">
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('customerNo')">
<el-form-item> <el-form-item>
<span slot="label" class="big-label"> <span slot="label" class="big-label">
<a href="javascript:void(0)" @click="getBaseList(509)">客户编码</a> <a href="javascript:void(0)" @click="getBaseList(509)">客户编码</a>
@ -217,12 +217,12 @@
<el-input v-model="oneKeyForm.customerNo" @blur="customerNoBlur" style="width: 100%"></el-input> <el-input v-model="oneKeyForm.customerNo" @blur="customerNoBlur" style="width: 100%"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="12" v-show="isOneKeyCreateFieldVisible('customerDesc')">
<el-form-item label="客户名称"> <el-form-item label="客户名称">
<el-input v-model="oneKeyForm.customerDesc" disabled style="width: 100%"></el-input> <el-input v-model="oneKeyForm.customerDesc" disabled style="width: 100%"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('cProjectRegion')">
<el-form-item label="区域"> <el-form-item label="区域">
<el-select v-model="oneKeyForm.cProjectRegion" placeholder="请选择" clearable style="width: 100%"> <el-select v-model="oneKeyForm.cProjectRegion" placeholder="请选择" clearable style="width: 100%">
<el-option <el-option
@ -237,7 +237,7 @@
</el-row> </el-row>
<el-row :gutter="16"> <el-row :gutter="16">
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('projectCreationDate')">
<el-form-item label="立项日期"> <el-form-item label="立项日期">
<el-date-picker <el-date-picker
v-model="oneKeyForm.projectCreationDate" v-model="oneKeyForm.projectCreationDate"
@ -248,7 +248,7 @@
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('needDate')">
<el-form-item label="预计完成日期"> <el-form-item label="预计完成日期">
<el-date-picker <el-date-picker
v-model="oneKeyForm.needDate" v-model="oneKeyForm.needDate"
@ -259,14 +259,14 @@
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('projectCategory')">
<el-form-item label="项目分类"> <el-form-item label="项目分类">
<el-select v-model="oneKeyForm.projectCategory" placeholder="请选择" clearable style="width: 100%"> <el-select v-model="oneKeyForm.projectCategory" placeholder="请选择" clearable style="width: 100%">
<el-option v-for="item in projectCategoryList" :key="item" :label="item" :value="item"></el-option> <el-option v-for="item in projectCategoryList" :key="item" :label="item" :value="item"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('priorityLevel')">
<el-form-item label="优先级"> <el-form-item label="优先级">
<el-select v-model="oneKeyForm.priorityLevel" placeholder="请选择" clearable style="width: 100%"> <el-select v-model="oneKeyForm.priorityLevel" placeholder="请选择" clearable style="width: 100%">
<el-option v-for="item in priorityList" :key="item" :label="item" :value="item"></el-option> <el-option v-for="item in priorityList" :key="item" :label="item" :value="item"></el-option>
@ -276,17 +276,17 @@
</el-row> </el-row>
<el-row :gutter="16"> <el-row :gutter="16">
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('testPartNo')">
<el-form-item label="项目料号"> <el-form-item label="项目料号">
<el-input v-model="oneKeyForm.testPartNo" style="width: 100%"></el-input> <el-input v-model="oneKeyForm.testPartNo" style="width: 100%"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="12" v-show="isOneKeyCreateFieldVisible('partDesc')">
<el-form-item label="料号描述"> <el-form-item label="料号描述">
<el-input v-model="oneKeyForm.partDesc" style="width: 100%"></el-input> <el-input v-model="oneKeyForm.partDesc" style="width: 100%"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('partType')">
<el-form-item label="料号状态"> <el-form-item label="料号状态">
<el-select v-model="oneKeyForm.partType" placeholder="请选择" clearable style="width: 100%"> <el-select v-model="oneKeyForm.partType" placeholder="请选择" clearable style="width: 100%">
<el-option v-for="item in partTypeList" :key="item" :label="item" :value="item"></el-option> <el-option v-for="item in partTypeList" :key="item" :label="item" :value="item"></el-option>
@ -296,25 +296,25 @@
</el-row> </el-row>
<el-row :gutter="16"> <el-row :gutter="16">
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('projectManager')">
<el-form-item> <el-form-item>
<span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('projectManager')">PM/Sales</a></span> <span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('projectManager')">PM/Sales</a></span>
<el-input v-model="oneKeyForm.projectManagerName" disabled style="width: 100%"></el-input> <el-input v-model="oneKeyForm.projectManagerName" disabled style="width: 100%"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('projectOwner')">
<el-form-item> <el-form-item>
<span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('projectOwner')">PjM</a></span> <span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('projectOwner')">PjM</a></span>
<el-input v-model="oneKeyForm.projectOwnerName" disabled style="width: 100%"></el-input> <el-input v-model="oneKeyForm.projectOwnerName" disabled style="width: 100%"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('engineer')">
<el-form-item> <el-form-item>
<span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('engineer')">Engineer</a></span> <span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('engineer')">Engineer</a></span>
<el-input v-model="oneKeyForm.engineerName" disabled style="width: 100%"></el-input> <el-input v-model="oneKeyForm.engineerName" disabled style="width: 100%"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('cManufactureEngineer')">
<el-form-item> <el-form-item>
<span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('cManufactureEngineer')">MFG</a></span> <span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('cManufactureEngineer')">MFG</a></span>
<el-input v-model="oneKeyForm.cManufactureEngineerName" disabled style="width: 100%"></el-input> <el-input v-model="oneKeyForm.cManufactureEngineerName" disabled style="width: 100%"></el-input>
@ -323,25 +323,25 @@
</el-row> </el-row>
<el-row :gutter="16"> <el-row :gutter="16">
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('cQualityEngineer6')">
<el-form-item> <el-form-item>
<span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('cQualityEngineer6')">IQC</a></span> <span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('cQualityEngineer6')">IQC</a></span>
<el-input v-model="oneKeyForm.cQualityEngineer6Name" disabled style="width: 100%"></el-input> <el-input v-model="oneKeyForm.cQualityEngineer6Name" disabled style="width: 100%"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('cQualityEngineer1')">
<el-form-item> <el-form-item>
<span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('cQualityEngineer1')">IPQC-Lam/Pri/Etch/Slit</a></span> <span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('cQualityEngineer1')">IPQC-Lam/Pri/Etch/Slit</a></span>
<el-input v-model="oneKeyForm.cQualityEngineer1Name" disabled style="width: 100%"></el-input> <el-input v-model="oneKeyForm.cQualityEngineer1Name" disabled style="width: 100%"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('cQualityEngineer2')">
<el-form-item> <el-form-item>
<span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('cQualityEngineer2')">IPQC-Converting</a></span> <span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('cQualityEngineer2')">IPQC-Converting</a></span>
<el-input v-model="oneKeyForm.cQualityEngineer2Name" disabled style="width: 100%"></el-input> <el-input v-model="oneKeyForm.cQualityEngineer2Name" disabled style="width: 100%"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('cQualityEngineer4')">
<el-form-item> <el-form-item>
<span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('cQualityEngineer4')">SQE</a></span> <span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('cQualityEngineer4')">SQE</a></span>
<el-input v-model="oneKeyForm.cQualityEngineer4Name" disabled style="width: 100%"></el-input> <el-input v-model="oneKeyForm.cQualityEngineer4Name" disabled style="width: 100%"></el-input>
@ -350,25 +350,25 @@
</el-row> </el-row>
<el-row :gutter="16"> <el-row :gutter="16">
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('cQualityEngineer3')">
<el-form-item> <el-form-item>
<span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('cQualityEngineer3')">FQC1</a></span> <span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('cQualityEngineer3')">FQC1</a></span>
<el-input v-model="oneKeyForm.cQualityEngineer3Name" disabled style="width: 100%"></el-input> <el-input v-model="oneKeyForm.cQualityEngineer3Name" disabled style="width: 100%"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('cQualityEngineer5')">
<el-form-item> <el-form-item>
<span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('cQualityEngineer5')">FQC2</a></span> <span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('cQualityEngineer5')">FQC2</a></span>
<el-input v-model="oneKeyForm.cQualityEngineer5Name" disabled style="width: 100%"></el-input> <el-input v-model="oneKeyForm.cQualityEngineer5Name" disabled style="width: 100%"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('ipqcHardTag')">
<el-form-item> <el-form-item>
<span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('ipqcHardTag')">IPQC-Hardtag</a></span> <span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('ipqcHardTag')">IPQC-Hardtag</a></span>
<el-input v-model="oneKeyForm.ipqcHardTagName" disabled style="width: 100%"></el-input> <el-input v-model="oneKeyForm.ipqcHardTagName" disabled style="width: 100%"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('cQualityEngineer7')">
<el-form-item> <el-form-item>
<span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('cQualityEngineer7')">前道工程师</a></span> <span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('cQualityEngineer7')">前道工程师</a></span>
<el-input v-model="oneKeyForm.cQualityEngineer7Name" disabled style="width: 100%"></el-input> <el-input v-model="oneKeyForm.cQualityEngineer7Name" disabled style="width: 100%"></el-input>
@ -377,26 +377,26 @@
</el-row> </el-row>
<el-row :gutter="16"> <el-row :gutter="16">
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('docEngineer')">
<el-form-item> <el-form-item>
<span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('docEngineer')">文档工程师</a></span> <span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('docEngineer')">文档工程师</a></span>
<el-input v-model="oneKeyForm.docEngineerName" disabled style="width: 100%"></el-input> <el-input v-model="oneKeyForm.docEngineerName" disabled style="width: 100%"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('docEngineer2')">
<el-form-item> <el-form-item>
<span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('docEngineer2')">文档工程师2</a></span> <span slot="label" class="big-label"><a href="javascript:void(0)" @click="openRoleDialog('docEngineer2')">文档工程师2</a></span>
<el-input v-model="oneKeyForm.docEngineer2Name" disabled style="width: 100%"></el-input> <el-input v-model="oneKeyForm.docEngineer2Name" disabled style="width: 100%"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('projectStatus')">
<el-form-item label="项目状态"> <el-form-item label="项目状态">
<el-select v-model="oneKeyForm.projectStatus" clearable style="width: 100%"> <el-select v-model="oneKeyForm.projectStatus" clearable style="width: 100%">
<el-option v-for="item in projectStatusList" :key="item" :label="item" :value="item" /> <el-option v-for="item in projectStatusList" :key="item" :label="item" :value="item" />
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('projectPhase')">
<el-form-item label="项目阶段"> <el-form-item label="项目阶段">
<el-select v-model="oneKeyForm.projectPhase" clearable style="width: 100%"> <el-select v-model="oneKeyForm.projectPhase" clearable style="width: 100%">
<el-option <el-option
@ -411,12 +411,12 @@
</el-row> </el-row>
<el-row :gutter="16"> <el-row :gutter="16">
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('proofingNo')">
<el-form-item label="打样单号"> <el-form-item label="打样单号">
<el-input v-model="oneKeyForm.proofingNo" style="width: 100%"></el-input> <el-input v-model="oneKeyForm.proofingNo" style="width: 100%"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('proofingStatus')">
<el-form-item label="打样状态"> <el-form-item label="打样状态">
<el-select v-model="oneKeyForm.proofingStatus" clearable style="width: 100%"> <el-select v-model="oneKeyForm.proofingStatus" clearable style="width: 100%">
<el-option label="草稿" value="草稿" /> <el-option label="草稿" value="草稿" />
@ -426,12 +426,12 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('proofingNumber')">
<el-form-item label="数量"> <el-form-item label="数量">
<el-input v-model.number="oneKeyForm.proofingNumber" style="width: 100%"></el-input> <el-input v-model.number="oneKeyForm.proofingNumber" style="width: 100%"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('planStartDate')">
<el-form-item label="打样开始日期"> <el-form-item label="打样开始日期">
<el-date-picker <el-date-picker
v-model="oneKeyForm.planStartDate" v-model="oneKeyForm.planStartDate"
@ -445,7 +445,7 @@
</el-row> </el-row>
<el-row :gutter="16"> <el-row :gutter="16">
<el-col :span="6">
<el-col :span="6" v-show="isOneKeyCreateFieldVisible('requiredDeliveryDate')">
<el-form-item label="预计交付日期"> <el-form-item label="预计交付日期">
<el-date-picker <el-date-picker
v-model="oneKeyForm.requiredDeliveryDate" v-model="oneKeyForm.requiredDeliveryDate"
@ -456,7 +456,7 @@
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="18">
<el-col :span="isOneKeyCreateFieldVisible('requiredDeliveryDate') ? 18 : 24" v-show="isOneKeyCreateFieldVisible('remark')">
<el-form-item label="备注"> <el-form-item label="备注">
<el-input type="textarea" :rows="2" v-model="oneKeyForm.remark" style="width: 100%"></el-input> <el-input type="textarea" :rows="2" v-model="oneKeyForm.remark" style="width: 100%"></el-input>
</el-form-item> </el-form-item>
@ -851,6 +851,44 @@ export default {
{ projectPhase: 'Beta' }, { projectPhase: 'Beta' },
{ projectPhase: 'Pre-launch' } { projectPhase: 'Pre-launch' }
], ],
// create
oneKeyCreateVisibleFieldKeys: [
'buNo',
'projectNo',
'projectDesc',
'customerNo',
'customerDesc',
'cProjectRegion',
'projectCreationDate',
'needDate',
'projectCategory',
'priorityLevel',
'testPartNo',
'partDesc',
'partType',
'projectManager',
'projectOwner',
'engineer',
'cManufactureEngineer',
'cQualityEngineer6',
'cQualityEngineer1',
'cQualityEngineer2',
'cQualityEngineer4',
'cQualityEngineer3',
'cQualityEngineer5',
'ipqcHardTag',
'cQualityEngineer7',
'docEngineer',
'docEngineer2',
'projectStatus',
'projectPhase',
'proofingNo',
'proofingStatus',
'proofingNumber',
'planStartDate',
'requiredDeliveryDate',
'remark'
],
userBuList: [], userBuList: [],
tagNo: '', tagNo: '',
newCustomerFlag: false, newCustomerFlag: false,
@ -1401,6 +1439,12 @@ export default {
const category = source.cProjectTypeDb || source.projectCategory || source.project_category || source.c_project_type_db || '' const category = source.cProjectTypeDb || source.projectCategory || source.project_category || source.c_project_type_db || ''
return this.isBlankValue(category) ? '' : String(category).trim() return this.isBlankValue(category) ? '' : String(category).trim()
}, },
isOneKeyCreateFieldVisible (fieldKey) {
if (this.oneKeyDialogMode !== 'create') {
return true
}
return this.oneKeyCreateVisibleFieldKeys.indexOf(fieldKey) > -1
},
isBlankValue (value) { isBlankValue (value) {
return value == null || String(value).trim() === '' return value == null || String(value).trim() === ''
}, },

Loading…
Cancel
Save