|
|
|
@ -57,11 +57,7 @@ |
|
|
|
value-format="yyyy-MM-dd" |
|
|
|
placeholder="选择日期"> |
|
|
|
</el-date-picker> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item style="margin-top: 23px;"> |
|
|
|
<laber style="margin-left: -9px;font-size: 19px">➞</laber> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item :label="' '"> |
|
|
|
- |
|
|
|
<el-date-picker |
|
|
|
style="width: 120px" |
|
|
|
v-model="searchData.endDate" |
|
|
|
@ -84,7 +80,7 @@ |
|
|
|
</el-form> |
|
|
|
|
|
|
|
<el-table |
|
|
|
:height="height" |
|
|
|
:height="height + 110" |
|
|
|
:data="dataList" |
|
|
|
ref="mainTable" |
|
|
|
highlight-current-row |
|
|
|
@ -132,7 +128,7 @@ |
|
|
|
layout="total, sizes, prev, pager, next, jumper"> |
|
|
|
</el-pagination> |
|
|
|
|
|
|
|
<el-dialog title="项目" :close-on-click-modal="false" @close="closeClear" v-drag :visible.sync="modalFlag" width="579px"> |
|
|
|
<el-dialog title="项目" :close-on-click-modal="false" @close="closeClear" v-drag :visible.sync="modalFlag" width="600px"> |
|
|
|
<!-- <el-form :inline="true" label-position="top" :model="modalData" :rules="rules" style="margin-left: 7px;margin-top: -5px;">--> |
|
|
|
<!-- <el-form-item label="是否在用" prop="active" :rules="rules.activeType">--> |
|
|
|
<!-- <el-select filterable v-model="modalData.active" style="width: 140px">--> |
|
|
|
@ -213,15 +209,15 @@ |
|
|
|
</el-date-picker> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="项目料号" prop="testPartNo" :rules="rules.testPartNo" > |
|
|
|
<el-input v-model="modalData.testPartNo" style="width: 110px"></el-input> |
|
|
|
<el-input v-model="modalData.testPartNo" disabled style="width: 110px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="料号描述" prop="partDesc" :rules="rules.partDesc" > |
|
|
|
<el-input v-model="modalData.partDesc" style="width: 170px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item :label="'结案日期:'"> |
|
|
|
<el-form-item :label="'预计完成日期:'"> |
|
|
|
<el-date-picker |
|
|
|
style="width: 110px" |
|
|
|
v-model="modalData.projectCloseDate" |
|
|
|
v-model="modalData.needDate" |
|
|
|
type="date" |
|
|
|
value-format="yyyy-MM-dd" |
|
|
|
placeholder="选择日期"> |
|
|
|
@ -244,25 +240,17 @@ |
|
|
|
<span slot="label" style="" @click="projectOwnerFlag = true"><a herf="#">PjM</a></span> |
|
|
|
<el-input v-model="modalData.projectOwnerName" disabled style="width: 110px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<!-- <el-form-item :label="'Build Date:'">--> |
|
|
|
<!-- <el-date-picker--> |
|
|
|
<!-- style="width: 110px"--> |
|
|
|
<!-- v-model="modalData.cProjectBuildDate"--> |
|
|
|
<!-- type="date"--> |
|
|
|
<!-- value-format="yyyy-MM-dd"--> |
|
|
|
<!-- placeholder="选择日期">--> |
|
|
|
<!-- </el-date-picker>--> |
|
|
|
<!-- </el-form-item>--> |
|
|
|
<!-- <el-form-item prop="cQualityEngineer1" :rules="rules.cQualityEngineer1">--> |
|
|
|
<!-- <el-input v-model="modalData.cQualityEngineer1" disabled style="width: 110px"></el-input>--> |
|
|
|
<!-- </el-form-item>--> |
|
|
|
<el-form-item label="IPQC-Lam/Pri/Etch/Slit" prop="cQualityEngineer1Name" :rules="rules.cQualityEngineer1Name"> |
|
|
|
<span slot="label" style="" @click="engineerFlag = true"><a herf="#">IPQC-Lam/Pri/Etch/Slit</a></span> |
|
|
|
<el-input v-model="modalData.cQualityEngineer1Name" disabled style="width: 170px"></el-input> |
|
|
|
<el-form-item label="Engineer" prop="engineerName" :rules="rules.engineerName"> |
|
|
|
<span slot="label" style="" @click="engineer6Flag = true"><a herf="#">Engineer</a></span> |
|
|
|
<el-input v-model="modalData.engineerName" disabled style="width: 170px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<!-- <el-form-item prop="cQualityEngineer2" :rules="rules.cQualityEngineer2">--> |
|
|
|
<!-- <el-input v-model="modalData.cQualityEngineer2" disabled style="width: 110px"></el-input>--> |
|
|
|
<!-- </el-form-item>--> |
|
|
|
<el-form-item label="IPQC-Lam/Pri/Etch/Slit" prop="cQualityEngineer1Name" :rules="rules.cQualityEngineer1Name"> |
|
|
|
<span slot="label" style="" @click="engineerFlag = true"><a herf="#">IPQC-Lam/Pri/Etch/Slit</a></span> |
|
|
|
<el-input v-model="modalData.cQualityEngineer1Name" disabled style="width: 110px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="IPQC-Converting" prop="cQualityEngineer2Name" :rules="rules.cQualityEngineer2Name"> |
|
|
|
<span slot="label" style="" @click="IPQCFlag = true"><a herf="#">IPQC-Converting</a></span> |
|
|
|
<el-input v-model="modalData.cQualityEngineer2Name" disabled style="width: 110px"></el-input> |
|
|
|
@ -273,7 +261,7 @@ |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="MFG" prop="cManufactureEngineerName" :rules="rules.cManufactureEngineerName"> |
|
|
|
<span slot="label" style="" @click="MFGlag = true"><a herf="#">MFG</a></span> |
|
|
|
<el-input v-model="modalData.cManufactureEngineerName" disabled style="width: 110px"></el-input> |
|
|
|
<el-input v-model="modalData.cManufactureEngineerName" disabled style="width: 170px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-footer style="height:40px;margin-top: 10px;text-align:center"> |
|
|
|
@ -285,10 +273,10 @@ |
|
|
|
<!--项目经理选择弹框--> |
|
|
|
<el-dialog title="PM/Sales" @close="closeProjectManagerInfoDialog" @open="openProjectManagerInfoDialog" :visible.sync="projectManagerFlag" width="559px" v-drag> |
|
|
|
<el-form inline="inline" label-position="top" :model="searchBusinessData" style="margin-left: 7px;margin-top: -5px;"> |
|
|
|
<el-form-item label="角色名称"> |
|
|
|
<el-input v-model="searchBusinessData.roleDesc" clearable style="width: 110px"></el-input> |
|
|
|
<el-form-item label="用户账号"> |
|
|
|
<el-input v-model="searchBusinessData.username" clearable style="width: 110px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="角色姓名"> |
|
|
|
<el-form-item label="用户名"> |
|
|
|
<el-input v-model="searchBusinessData.userDisplay" clearable style="width: 110px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="是否在用"> |
|
|
|
@ -302,7 +290,7 @@ |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-table |
|
|
|
:height="height" |
|
|
|
:height="height + 110" |
|
|
|
:data="businessDataList" |
|
|
|
stripe |
|
|
|
highlight-current-row |
|
|
|
@ -315,16 +303,16 @@ |
|
|
|
width="55"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="roleDesc" |
|
|
|
prop="username" |
|
|
|
header-align="center" |
|
|
|
align="center" |
|
|
|
label="角色名称"> |
|
|
|
label="用户账号"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="userDisplay" |
|
|
|
header-align="center" |
|
|
|
align="center" |
|
|
|
label="角色姓名"> |
|
|
|
label="用户名"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="active" |
|
|
|
@ -342,10 +330,10 @@ |
|
|
|
<!--PjM选择弹框--> |
|
|
|
<el-dialog title="PjM" @close="closeProjectOwnerInfoDialog" @open="openProjectOwnerInfoDialog" :visible.sync="projectOwnerFlag" width="559px" v-drag> |
|
|
|
<el-form inline="inline" label-position="top" :model="searchBusinessData1" style="margin-left: 7px;margin-top: -5px;"> |
|
|
|
<el-form-item label="角色名称"> |
|
|
|
<el-input v-model="searchBusinessData1.roleDesc" clearable style="width: 110px"></el-input> |
|
|
|
<el-form-item label="用户账号"> |
|
|
|
<el-input v-model="searchBusinessData1.username" clearable style="width: 110px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="角色姓名"> |
|
|
|
<el-form-item label="用户名"> |
|
|
|
<el-input v-model="searchBusinessData1.userDisplay" clearable style="width: 110px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="是否在用"> |
|
|
|
@ -359,7 +347,7 @@ |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-table |
|
|
|
:height="height" |
|
|
|
:height="height + 110" |
|
|
|
:data="businessDataList1" |
|
|
|
stripe |
|
|
|
highlight-current-row |
|
|
|
@ -372,16 +360,16 @@ |
|
|
|
width="55"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="roleDesc" |
|
|
|
prop="username" |
|
|
|
header-align="center" |
|
|
|
align="center" |
|
|
|
label="角色名称"> |
|
|
|
label="用户账号"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="userDisplay" |
|
|
|
header-align="center" |
|
|
|
align="center" |
|
|
|
label="角色姓名"> |
|
|
|
label="用户名"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="active" |
|
|
|
@ -397,13 +385,72 @@ |
|
|
|
</el-footer> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
<!--工程师选择弹框--> |
|
|
|
<el-dialog title="Engineer" @close="closeEngineer6InfoDialog" @open="openEngineer6InfoDialog" :visible.sync="engineer6Flag" width="559px" v-drag> |
|
|
|
<el-form inline="inline" label-position="top" :model="searchBusinessData6" style="margin-left: 7px;margin-top: -5px;"> |
|
|
|
<el-form-item label="用户账号"> |
|
|
|
<el-input v-model="searchBusinessData6.username" clearable style="width: 110px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="用户名"> |
|
|
|
<el-input v-model="searchBusinessData6.userDisplay" clearable style="width: 110px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="是否在用"> |
|
|
|
<el-select filterable v-model="searchBusinessData6.active" style="width: 140px"> |
|
|
|
<el-option label="是" value="Y"></el-option> |
|
|
|
<el-option label="否" value="N"></el-option> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label=" "> |
|
|
|
<el-button type="primary" style="padding: 3px 12px" @click="searchBusinessInfoList6()">查询</el-button> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-table |
|
|
|
:height="height + 110" |
|
|
|
:data="businessDataList6" |
|
|
|
stripe |
|
|
|
highlight-current-row |
|
|
|
border |
|
|
|
@row-dblclick="engineer6RowDblclick" |
|
|
|
@selection-change="selectionBusiness" |
|
|
|
style="width: 100%;"> |
|
|
|
<el-table-column |
|
|
|
type="selection" |
|
|
|
width="55"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="username" |
|
|
|
header-align="center" |
|
|
|
align="center" |
|
|
|
label="用户账号"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="userDisplay" |
|
|
|
header-align="center" |
|
|
|
align="center" |
|
|
|
label="用户名"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="active" |
|
|
|
header-align="center" |
|
|
|
align="center" |
|
|
|
label="是否在用"> |
|
|
|
</el-table-column> |
|
|
|
</el-table> |
|
|
|
<el-footer style="height:40px;margin-top: |
|
|
|
10px;text-align:center"> |
|
|
|
<el-button type="primary" @click="saveSelectionInfo6()">确定</el-button> |
|
|
|
<el-button type="primary" @click="engineer6Flag = false">关闭</el-button> |
|
|
|
</el-footer> |
|
|
|
|
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
<!--工程师选择弹框--> |
|
|
|
<el-dialog title="IPQC-Lam/Pri/Etch/Slit" @close="closeEngineerInfoDialog" @open="openEngineerInfoDialog" :visible.sync="engineerFlag" width="559px" v-drag> |
|
|
|
<el-form inline="inline" label-position="top" :model="searchBusinessData2" style="margin-left: 7px;margin-top: -5px;"> |
|
|
|
<el-form-item label="角色名称"> |
|
|
|
<el-input v-model="searchBusinessData2.roleDesc" clearable style="width: 110px"></el-input> |
|
|
|
<el-form-item label="用户账号"> |
|
|
|
<el-input v-model="searchBusinessData2.username" clearable style="width: 110px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="角色姓名"> |
|
|
|
<el-form-item label="用户名"> |
|
|
|
<el-input v-model="searchBusinessData2.userDisplay" clearable style="width: 110px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="是否在用"> |
|
|
|
@ -417,7 +464,7 @@ |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-table |
|
|
|
:height="height" |
|
|
|
:height="height + 110" |
|
|
|
:data="businessDataList2" |
|
|
|
stripe |
|
|
|
highlight-current-row |
|
|
|
@ -430,16 +477,16 @@ |
|
|
|
width="55"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="roleDesc" |
|
|
|
prop="username" |
|
|
|
header-align="center" |
|
|
|
align="center" |
|
|
|
label="角色名称"> |
|
|
|
label="用户账号"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="userDisplay" |
|
|
|
header-align="center" |
|
|
|
align="center" |
|
|
|
label="角色姓名"> |
|
|
|
label="用户名"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="active" |
|
|
|
@ -459,10 +506,10 @@ |
|
|
|
<!--IPQC选择弹框--> |
|
|
|
<el-dialog title="IPQC-Converting" @close="closeIPQCInfoDialog" @open="openIPQCInfoDialog" :visible.sync="IPQCFlag" width="559px" v-drag> |
|
|
|
<el-form inline="inline" label-position="top" :model="searchBusinessData3" style="margin-left: 7px;margin-top: -5px;"> |
|
|
|
<el-form-item label="角色名称"> |
|
|
|
<el-input v-model="searchBusinessData3.roleDesc" clearable style="width: 110px"></el-input> |
|
|
|
<el-form-item label="用户账号"> |
|
|
|
<el-input v-model="searchBusinessData3.username" clearable style="width: 110px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="角色姓名"> |
|
|
|
<el-form-item label="用户名"> |
|
|
|
<el-input v-model="searchBusinessData3.userDisplay" clearable style="width: 110px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="是否在用"> |
|
|
|
@ -476,7 +523,7 @@ |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-table |
|
|
|
:height="height" |
|
|
|
:height="height + 110" |
|
|
|
:data="businessDataList3" |
|
|
|
stripe |
|
|
|
highlight-current-row |
|
|
|
@ -489,16 +536,16 @@ |
|
|
|
width="55"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="roleDesc" |
|
|
|
prop="username" |
|
|
|
header-align="center" |
|
|
|
align="center" |
|
|
|
label="角色名称"> |
|
|
|
label="用户账号"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="userDisplay" |
|
|
|
header-align="center" |
|
|
|
align="center" |
|
|
|
label="角色姓名"> |
|
|
|
label="用户名"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="active" |
|
|
|
@ -516,10 +563,10 @@ |
|
|
|
<!--FQC选择弹框--> |
|
|
|
<el-dialog title="FQC" @close="closeFQCInfoDialog" @open="openFQCInfoDialog" :visible.sync="FQCFlag" width="559px" v-drag> |
|
|
|
<el-form inline="inline" label-position="top" :model="searchBusinessData4" style="margin-left: 7px;margin-top: -5px;"> |
|
|
|
<el-form-item label="角色名称"> |
|
|
|
<el-input v-model="searchBusinessData4.roleDesc" clearable style="width: 110px"></el-input> |
|
|
|
<el-form-item label="用户账号"> |
|
|
|
<el-input v-model="searchBusinessData4.username" clearable style="width: 110px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="角色姓名"> |
|
|
|
<el-form-item label="用户名"> |
|
|
|
<el-input v-model="searchBusinessData4.userDisplay" clearable style="width: 110px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="是否在用"> |
|
|
|
@ -533,7 +580,7 @@ |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-table |
|
|
|
:height="height" |
|
|
|
:height="height + 110" |
|
|
|
:data="businessDataList4" |
|
|
|
stripe |
|
|
|
highlight-current-row |
|
|
|
@ -546,16 +593,16 @@ |
|
|
|
width="55"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="roleDesc" |
|
|
|
prop="username" |
|
|
|
header-align="center" |
|
|
|
align="center" |
|
|
|
label="角色名称"> |
|
|
|
label="用户账号"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="userDisplay" |
|
|
|
header-align="center" |
|
|
|
align="center" |
|
|
|
label="角色姓名"> |
|
|
|
label="用户名"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="active" |
|
|
|
@ -573,10 +620,10 @@ |
|
|
|
<!--MFG选择弹框--> |
|
|
|
<el-dialog title="MFG" @close="closeMFGInfoDialog" @open="openMFGInfoDialog" :visible.sync="MFGlag" width="559px" v-drag> |
|
|
|
<el-form inline="inline" label-position="top" :model="searchBusinessData5" style="margin-left: 7px;margin-top: -5px;"> |
|
|
|
<el-form-item label="角色名称"> |
|
|
|
<el-input v-model="searchBusinessData5.roleDesc" clearable style="width: 110px"></el-input> |
|
|
|
<el-form-item label="用户账号"> |
|
|
|
<el-input v-model="searchBusinessData5.username" clearable style="width: 110px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="角色姓名"> |
|
|
|
<el-form-item label="用户名"> |
|
|
|
<el-input v-model="searchBusinessData5.userDisplay" clearable style="width: 110px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="是否在用"> |
|
|
|
@ -590,7 +637,7 @@ |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-table |
|
|
|
:height="height" |
|
|
|
:height="height + 110" |
|
|
|
:data="businessDataList5" |
|
|
|
stripe |
|
|
|
highlight-current-row |
|
|
|
@ -603,16 +650,16 @@ |
|
|
|
width="55"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="roleDesc" |
|
|
|
prop="username" |
|
|
|
header-align="center" |
|
|
|
align="center" |
|
|
|
label="角色名称"> |
|
|
|
label="用户账号"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="userDisplay" |
|
|
|
header-align="center" |
|
|
|
align="center" |
|
|
|
label="角色姓名"> |
|
|
|
label="用户名"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="active" |
|
|
|
@ -667,7 +714,7 @@ |
|
|
|
</el-footer> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
<el-tabs style="font-size: 12px;min-height: 330px" v-model="activeName" class="customer-tab" type="border-card" @tab-click="tabClick"> |
|
|
|
<el-tabs style="margin-top: 0px; width: 100%; height: 250px;" v-model="activeName" class="customer-tab" type="border-card" @tab-click="tabClick"> |
|
|
|
<el-tab-pane label="打样记录" name="proofRecord" style="margin-left: -10px"> |
|
|
|
<proofRecord ref="proofRecord"></proofRecord> |
|
|
|
</el-tab-pane> |
|
|
|
@ -692,7 +739,7 @@ |
|
|
|
|
|
|
|
<script> |
|
|
|
import {getSiteAndBuByUserName} from "@/api/eam/eam.js" |
|
|
|
import {searchBusinessInfo,searchBusinessInfo1,searchBusinessInfo2,searchBusinessInfo3,searchBusinessInfo4,searchBusinessInfo5} from "@/api/factory/site.js" |
|
|
|
import {searchBusinessInfo,searchBusinessInfo1,searchBusinessInfo2,searchBusinessInfo3,searchBusinessInfo4,searchBusinessInfo5,searchBusinessInfo6} from "@/api/factory/site.js" |
|
|
|
import Chooselist from '@/views/modules/common/Chooselist_eam' |
|
|
|
import {userFavoriteList, saveUserFavorite, removeUserFavorite} from '@/api/userFavorite.js' |
|
|
|
import { |
|
|
|
@ -700,7 +747,7 @@ |
|
|
|
getTableUserListLanguage, |
|
|
|
} from "@/api/table.js"; |
|
|
|
import proofRecord from "./com_project_proof_record"; |
|
|
|
import {eamProjectInfoDelete, saveFormalPartNo,eamProjectInfoSearch, eamProjectInfoSave, eamProjectInfoEdit} from "@/api/eam/eamProject.js"; |
|
|
|
import {eamProjectInfoDelete, saveFormalPartNo,eamProjectInfoSearch, eamProjectInfoSave, eamProjectInfoEdit,getTestPartNo} from "@/api/eam/eamProject.js"; |
|
|
|
/*打样记录組件*/ |
|
|
|
|
|
|
|
export default { |
|
|
|
@ -743,6 +790,7 @@ |
|
|
|
endDate:'', |
|
|
|
projectCreationDate: new Date(), |
|
|
|
projectCloseDate:'', |
|
|
|
needDate:'', |
|
|
|
// active: 'Y', |
|
|
|
page: 1, |
|
|
|
limit: 10, |
|
|
|
@ -757,6 +805,7 @@ |
|
|
|
businessDataList3: [], |
|
|
|
businessDataList4: [], |
|
|
|
businessDataList5: [], |
|
|
|
businessDataList6: [], |
|
|
|
dataList: [], |
|
|
|
dataListSelections: [], |
|
|
|
// ======== 复选数据集 ======== |
|
|
|
@ -769,6 +818,7 @@ |
|
|
|
projectManagerFlag:false, |
|
|
|
projectOwnerFlag:false, |
|
|
|
engineerFlag:false, |
|
|
|
engineer6Flag:false, |
|
|
|
IPQCFlag:false, |
|
|
|
FQCFlag:false, |
|
|
|
MFGlag:false, |
|
|
|
@ -780,6 +830,7 @@ |
|
|
|
oriProjectId: '', |
|
|
|
projectDesc:'', |
|
|
|
projectCloseDate:'', |
|
|
|
needDate:'', |
|
|
|
customerNo:'', |
|
|
|
finalCustomerId:'', |
|
|
|
customerDesc:'', |
|
|
|
@ -801,7 +852,10 @@ |
|
|
|
cQualityEngineer3Name:'', |
|
|
|
cManufactureEngineer:'', |
|
|
|
cManufactureEngineerName:'', |
|
|
|
projectCreationDate:'', |
|
|
|
engineer:'', |
|
|
|
engineerName:'', |
|
|
|
//projectCreationDate为当前服务器的时间 |
|
|
|
projectCreationDate: new Date(), |
|
|
|
finalPartNo:'', |
|
|
|
finalPartDesc:'', |
|
|
|
// active:'', |
|
|
|
@ -810,7 +864,7 @@ |
|
|
|
}, |
|
|
|
searchBusinessData:{ |
|
|
|
site: this.$store.state.user.site, |
|
|
|
username: this.$store.state.user.name, |
|
|
|
username: '', |
|
|
|
roleDesc: '', |
|
|
|
userDisplay: '', |
|
|
|
active: '', |
|
|
|
@ -819,7 +873,7 @@ |
|
|
|
}, |
|
|
|
searchBusinessData1:{ |
|
|
|
site: this.$store.state.user.site, |
|
|
|
username: this.$store.state.user.name, |
|
|
|
username: '', |
|
|
|
roleDesc: '', |
|
|
|
userDisplay: '', |
|
|
|
active: '', |
|
|
|
@ -828,7 +882,7 @@ |
|
|
|
}, |
|
|
|
searchBusinessData2:{ |
|
|
|
site: this.$store.state.user.site, |
|
|
|
username: this.$store.state.user.name, |
|
|
|
username: '', |
|
|
|
roleDesc: '', |
|
|
|
userDisplay: '', |
|
|
|
active: '', |
|
|
|
@ -837,7 +891,7 @@ |
|
|
|
}, |
|
|
|
searchBusinessData3:{ |
|
|
|
site: this.$store.state.user.site, |
|
|
|
username: this.$store.state.user.name, |
|
|
|
username: '', |
|
|
|
roleDesc: '', |
|
|
|
userDisplay: '', |
|
|
|
active: '', |
|
|
|
@ -846,7 +900,7 @@ |
|
|
|
}, |
|
|
|
searchBusinessData4:{ |
|
|
|
site: this.$store.state.user.site, |
|
|
|
username: this.$store.state.user.name, |
|
|
|
username: '', |
|
|
|
roleDesc: '', |
|
|
|
userDisplay: '', |
|
|
|
active: '', |
|
|
|
@ -855,7 +909,16 @@ |
|
|
|
}, |
|
|
|
searchBusinessData5:{ |
|
|
|
site: this.$store.state.user.site, |
|
|
|
username: this.$store.state.user.name, |
|
|
|
username: '', |
|
|
|
roleDesc: '', |
|
|
|
userDisplay: '', |
|
|
|
active: '', |
|
|
|
page: 1, |
|
|
|
limit: 10, |
|
|
|
}, |
|
|
|
searchBusinessData6:{ |
|
|
|
site: this.$store.state.user.site, |
|
|
|
username: '', |
|
|
|
roleDesc: '', |
|
|
|
userDisplay: '', |
|
|
|
active: '', |
|
|
|
@ -1071,6 +1134,24 @@ |
|
|
|
fixed: '', |
|
|
|
columnWidth: 120, |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 101001014, |
|
|
|
serialNumber: '101001014Table1Engineer', |
|
|
|
tableId: "101001014Table1", |
|
|
|
tableName: "项目信息表", |
|
|
|
columnProp: 'engineer', |
|
|
|
headerAlign: "center", |
|
|
|
align: "left", |
|
|
|
columnLabel: 'Engineer', |
|
|
|
columnHidden: false, |
|
|
|
columnImage: false, |
|
|
|
columnSortable: false, |
|
|
|
sortLv: 0, |
|
|
|
status: true, |
|
|
|
fixed: '', |
|
|
|
columnWidth: 120, |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 101001014, |
|
|
|
@ -1161,6 +1242,24 @@ |
|
|
|
fixed: '', |
|
|
|
columnWidth: 120, |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 101001014, |
|
|
|
serialNumber: '101001014Table1NeedDate', |
|
|
|
tableId: "101001014Table1", |
|
|
|
tableName: "项目信息表", |
|
|
|
columnProp: 'needDate', |
|
|
|
headerAlign: "center", |
|
|
|
align: "left", |
|
|
|
columnLabel: '预计完成日期', |
|
|
|
columnHidden: false, |
|
|
|
columnImage: false, |
|
|
|
columnSortable: false, |
|
|
|
sortLv: 0, |
|
|
|
status: true, |
|
|
|
fixed: '', |
|
|
|
columnWidth: 120, |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 101001014, |
|
|
|
@ -1339,6 +1438,27 @@ |
|
|
|
trigger: ['blur','change'] |
|
|
|
} |
|
|
|
], |
|
|
|
engineer:[ |
|
|
|
{ |
|
|
|
required: true, |
|
|
|
message: ' ', |
|
|
|
trigger: ['blur','change'] |
|
|
|
} |
|
|
|
], |
|
|
|
projectOwner:[ |
|
|
|
{ |
|
|
|
required: true, |
|
|
|
message: ' ', |
|
|
|
trigger: ['blur','change'] |
|
|
|
} |
|
|
|
], |
|
|
|
cProjectRegion:[ |
|
|
|
{ |
|
|
|
required: true, |
|
|
|
message: ' ', |
|
|
|
trigger: ['blur','change'] |
|
|
|
} |
|
|
|
], |
|
|
|
cQualityEngineer1:[ |
|
|
|
{ |
|
|
|
required: true, |
|
|
|
@ -1360,6 +1480,13 @@ |
|
|
|
trigger: ['blur','change'] |
|
|
|
} |
|
|
|
], |
|
|
|
engineerName:[ |
|
|
|
{ |
|
|
|
required: true, |
|
|
|
message: ' ', |
|
|
|
trigger: ['blur','change'] |
|
|
|
} |
|
|
|
], |
|
|
|
cQualityEngineer1Name:[ |
|
|
|
{ |
|
|
|
required: true, |
|
|
|
@ -1450,11 +1577,26 @@ |
|
|
|
} |
|
|
|
], |
|
|
|
cProjectRegionList: [ |
|
|
|
{ |
|
|
|
cProjectRegion: 'Global', |
|
|
|
}, |
|
|
|
{ |
|
|
|
cProjectRegion: 'APAC', |
|
|
|
}, |
|
|
|
{ |
|
|
|
cProjectRegion: 'Global', |
|
|
|
cProjectRegion: 'CHINA', |
|
|
|
}, |
|
|
|
{ |
|
|
|
cProjectRegion: 'EU', |
|
|
|
}, |
|
|
|
{ |
|
|
|
cProjectRegion: 'US', |
|
|
|
}, |
|
|
|
{ |
|
|
|
cProjectRegion: 'Mexico', |
|
|
|
}, |
|
|
|
{ |
|
|
|
cProjectRegion: 'Other', |
|
|
|
}, |
|
|
|
], |
|
|
|
priorityList: [ |
|
|
|
@ -1525,7 +1667,7 @@ |
|
|
|
strVal = this.modalData.customerNo |
|
|
|
this.$refs.baseList.init(val, strVal) |
|
|
|
} |
|
|
|
if (val === 509 ) { |
|
|
|
if (val === 301 ) { |
|
|
|
strVal = this.modalData.projectManager |
|
|
|
this.$refs.baseList.init(val, strVal) |
|
|
|
} |
|
|
|
@ -1535,17 +1677,12 @@ |
|
|
|
/* 列表方法的回调 */ |
|
|
|
getBaseData (val) { |
|
|
|
if (this.tagNo === 509) { |
|
|
|
//控制台打印 |
|
|
|
this.modalData.customerNo = val.customer_no |
|
|
|
this.modalData.customerDesc = val.customer_desc |
|
|
|
//控制台打印 |
|
|
|
|
|
|
|
} |
|
|
|
if (this.tagNo === 509) { |
|
|
|
//控制台打印 |
|
|
|
this.modalData.projectManager = val.user_display |
|
|
|
this.modalData.projectManagerName = val.user_display |
|
|
|
//控制台打印 |
|
|
|
if (this.tagNo === 301) { |
|
|
|
this.modalData.projectManager = val.project_manager |
|
|
|
this.modalData.projectManagerName = val.project_manager |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
@ -1671,6 +1808,7 @@ |
|
|
|
}, |
|
|
|
|
|
|
|
addModal () { |
|
|
|
//控制台打印打印this.generateNextPartNo() |
|
|
|
this.modalData = { |
|
|
|
flag: '1', |
|
|
|
bu: this.userBuList[0].buNo, |
|
|
|
@ -1683,11 +1821,14 @@ |
|
|
|
projectId: '', |
|
|
|
projectDesc:'', |
|
|
|
projectCloseDate:'', |
|
|
|
needDate:'', |
|
|
|
cProjectRegion: '', |
|
|
|
projectManager:'', |
|
|
|
ProjectOwner:'', |
|
|
|
ProjectOwnerName:'', |
|
|
|
projectManagerName:'', |
|
|
|
engineer: '', |
|
|
|
engineerName: '', |
|
|
|
cQualityEngineer1:'', |
|
|
|
cQualityEngineer1Name:'', |
|
|
|
cQualityEngineer2:'', |
|
|
|
@ -1696,14 +1837,50 @@ |
|
|
|
cQualityEngineer3Name:'', |
|
|
|
cManufactureEngineer: '', |
|
|
|
cManufactureEngineerName: '', |
|
|
|
projectCreationDate:'', |
|
|
|
projectCreationDate:new Date(), |
|
|
|
createDate: '', |
|
|
|
// active: 'Y', |
|
|
|
createBy: this.$store.state.user.name, |
|
|
|
updateBy: this.$store.state.user.name, |
|
|
|
} |
|
|
|
this.generateNextPartNo().then(testPartNo => { |
|
|
|
this.modalData.testPartNo = testPartNo; // 在异步操作完成后再赋值 |
|
|
|
}) |
|
|
|
console.log('testPartNo',this.modalData.testPartNo) |
|
|
|
this.modalDisableFlag = false |
|
|
|
this.modalFlag = true |
|
|
|
}, |
|
|
|
generateNextPartNo() { |
|
|
|
return new Promise((resolve, reject) => { |
|
|
|
getTestPartNo().then(({ data }) => { |
|
|
|
const stringData = String(data); // 显式转换为字符串 |
|
|
|
|
|
|
|
if (stringData === 'null') { |
|
|
|
resolve('P00001'); |
|
|
|
} else { |
|
|
|
const lastPartNo = parseInt(stringData.substring(1)); |
|
|
|
const nextPartNo = lastPartNo + 1; |
|
|
|
let testPartNo; |
|
|
|
|
|
|
|
if (nextPartNo < 10) { |
|
|
|
testPartNo = 'P0000' + nextPartNo; |
|
|
|
} else if (nextPartNo < 100) { |
|
|
|
testPartNo = 'P000' + nextPartNo; |
|
|
|
} else if (nextPartNo < 1000) { |
|
|
|
testPartNo = 'P00' + nextPartNo; |
|
|
|
} else if (nextPartNo < 10000) { |
|
|
|
testPartNo = 'P0' + nextPartNo; |
|
|
|
} else { |
|
|
|
testPartNo = 'P' + nextPartNo; |
|
|
|
} |
|
|
|
|
|
|
|
resolve(testPartNo); |
|
|
|
} |
|
|
|
}).catch(error => { |
|
|
|
reject('Failed to fetch testPartNo: ' + error); |
|
|
|
}); |
|
|
|
}); |
|
|
|
}, |
|
|
|
changeFormalPartNo (row) { |
|
|
|
this.modalData = { |
|
|
|
flag: '2', |
|
|
|
@ -1717,11 +1894,14 @@ |
|
|
|
projectId: row.projectId, |
|
|
|
projectDesc: row.projectDesc, |
|
|
|
projectCloseDate: row.projectCloseDate, |
|
|
|
needDate: row.needDate, |
|
|
|
cProjectRegion: row.cProjectRegion, |
|
|
|
projectManager: row.projectManager, |
|
|
|
projectManagerName: row.projectManagerName, |
|
|
|
projectOwner: row.projectOwner, |
|
|
|
projectOwnerName: row.projectOwnerName, |
|
|
|
engineer: row.engineer, |
|
|
|
engineerName: row.engineerName, |
|
|
|
cQualityEngineer1: row.cQualityEngineer1, |
|
|
|
cQualityEngineer1Name: row.cQualityEngineer1Name, |
|
|
|
cQualityEngineer2: row.cQualityEngineer2, |
|
|
|
@ -1773,11 +1953,14 @@ |
|
|
|
projectDesc: row.projectDesc, |
|
|
|
priority: row.priority, |
|
|
|
projectCloseDate: row.projectCloseDate, |
|
|
|
needDate: row.needDate, |
|
|
|
cProjectRegion: row.cProjectRegion, |
|
|
|
projectManager: row.projectManager, |
|
|
|
projectManagerName: row.projectManager, |
|
|
|
projectOwner: row.projectOwner, |
|
|
|
projectOwnerName: row.projectOwner, |
|
|
|
engineer: row.engineer, |
|
|
|
engineerName: row.engineer, |
|
|
|
cQualityEngineer1: row.cQualityEngineer1, |
|
|
|
cQualityEngineer1Name: row.cQualityEngineer1, |
|
|
|
cQualityEngineer2: row.cQualityEngineer2, |
|
|
|
@ -1838,6 +2021,7 @@ |
|
|
|
this.modalData.cQualityEngineer2 = this.modalData.cQualityEngineer2Name |
|
|
|
this.modalData.cQualityEngineer3 = this.modalData.cQualityEngineer3Name |
|
|
|
this.modalData.cManufactureEngineer = this.modalData.cManufactureEngineerName |
|
|
|
this.modalData.engineer = this.modalData.engineerName |
|
|
|
this.modalData.oriProjectId = this.modalData.projectId |
|
|
|
this.modalData.finalCustomerId = this.modalData.customerNo |
|
|
|
if (this.modalData.projectId === '' || this.modalData.projectId == null) { |
|
|
|
@ -1884,6 +2068,10 @@ |
|
|
|
this.$message.warning('请输入PjM!') |
|
|
|
return |
|
|
|
} |
|
|
|
if (this.modalData.engineer === '' || this.modalData.engineer == null) { |
|
|
|
this.$message.warning('请输入Engineer!') |
|
|
|
return |
|
|
|
} |
|
|
|
if (this.modalData.cQualityEngineer1 === '' || this.modalData.cQualityEngineer1 == null) { |
|
|
|
this.$message.warning('请输入IPQC-Lam/Pri/Etch/Slit!') |
|
|
|
return |
|
|
|
@ -1982,6 +2170,13 @@ |
|
|
|
} |
|
|
|
}) |
|
|
|
}, |
|
|
|
searchBusinessInfoList6 () { |
|
|
|
searchBusinessInfo6(this.searchBusinessData6).then(({data}) => { |
|
|
|
if (data && data.code === 0){ |
|
|
|
this.businessDataList6 = data.rows; |
|
|
|
} |
|
|
|
}) |
|
|
|
}, |
|
|
|
saveFormalPartNo (){ |
|
|
|
saveFormalPartNo(this.modalData).then(({data}) => { |
|
|
|
if (data && data.code === '0') { |
|
|
|
@ -2031,6 +2226,10 @@ |
|
|
|
//请求 |
|
|
|
this.searchBusinessInfoList5(); |
|
|
|
}, |
|
|
|
openEngineer6InfoDialog () { |
|
|
|
//请求 |
|
|
|
this.searchBusinessInfoList6(); |
|
|
|
}, |
|
|
|
// 关闭 |
|
|
|
closeProjectManagerInfoDialog () { |
|
|
|
this.businessDataList = [] |
|
|
|
@ -2045,6 +2244,10 @@ |
|
|
|
this.businessDataList2 = [] |
|
|
|
this.engineerFlag = false |
|
|
|
}, |
|
|
|
closeEngineer6InfoDialog () { |
|
|
|
this.businessDataList6 = [] |
|
|
|
this.engineer6Flag = false |
|
|
|
}, |
|
|
|
//关闭 |
|
|
|
closeIPQCInfoDialog () { |
|
|
|
this.businessDataList3 = [] |
|
|
|
@ -2075,6 +2278,11 @@ |
|
|
|
this.modalData.cQualityEngineer1Name = row.userDisplay |
|
|
|
this.engineerFlag = false |
|
|
|
}, |
|
|
|
engineer6RowDblclick (row) { |
|
|
|
this.modalData.engineer = row.username |
|
|
|
this.modalData.engineerName = row.userDisplay |
|
|
|
this.engineer6Flag = false |
|
|
|
}, |
|
|
|
IPQCRowDblclick (row) { |
|
|
|
this.modalData.cQualityEngineer2 = row.username |
|
|
|
this.modalData.cQualityEngineer2Name = row.userDisplay |
|
|
|
@ -2190,31 +2398,29 @@ |
|
|
|
this.modalData.cManufactureEngineerName = strName |
|
|
|
this.MFGlag = false |
|
|
|
}, |
|
|
|
saveSelectionInfo6 () { |
|
|
|
let str = '' |
|
|
|
let strName = '' |
|
|
|
this.businessSelections.forEach((item, index) => { |
|
|
|
if (index === this.businessSelections.length - 1) { |
|
|
|
str += item.username |
|
|
|
strName += item.userDisplay |
|
|
|
} else { |
|
|
|
str += item.username + ',' |
|
|
|
strName += item.userDisplay + ',' |
|
|
|
} |
|
|
|
} |
|
|
|
) |
|
|
|
this.modalData.engineer = str |
|
|
|
this.modalData.engineerName = strName |
|
|
|
this.engineer6Flag = false |
|
|
|
}, |
|
|
|
closeClear () { |
|
|
|
// flag:'', |
|
|
|
// bu: '', |
|
|
|
// site: this.$store.state.user.site, |
|
|
|
// projectId: '', |
|
|
|
// oriProjectId: '', |
|
|
|
// projectDesc:'', |
|
|
|
// projectCloseDate:'', |
|
|
|
// customerNo:'', |
|
|
|
// finalCustomerId:'', |
|
|
|
// customerDesc:'', |
|
|
|
// projectCategory:'', |
|
|
|
// testPartNo:'', |
|
|
|
// partDesc:'', |
|
|
|
// projectManager:'', |
|
|
|
// projectManagerName:'', |
|
|
|
// cQualityEngineer1:'', |
|
|
|
// cQualityEngineer1Name:'', |
|
|
|
// cQualityEngineer2:'', |
|
|
|
// cQualityEngineer2Name:'', |
|
|
|
// projectCreationDate:'', |
|
|
|
this.modalData.bu = '' |
|
|
|
this.modalData.projectId = '' |
|
|
|
this.modalData.projectDesc = '' |
|
|
|
this.modalData.projectCloseDate = '' |
|
|
|
this.modalData.needDate = '' |
|
|
|
this.modalData.customerNo = '' |
|
|
|
this.modalData.customerDesc = '' |
|
|
|
this.modalData.projectCategory = '' |
|
|
|
@ -2222,6 +2428,8 @@ |
|
|
|
this.modalData.partDesc = '' |
|
|
|
this.modalData.projectManager = '' |
|
|
|
this.modalData.projectManagerName = '' |
|
|
|
this.modalData.engineer = '' |
|
|
|
this.modalData.engineerName = '' |
|
|
|
this.modalData.cQualityEngineer1 = '' |
|
|
|
this.modalData.cQualityEngineer1Name = '' |
|
|
|
this.modalData.cQualityEngineer2 = '' |
|
|
|
|