Browse Source

2024-05-24 更新

master
fengyuan_yang 2 years ago
parent
commit
d12a2a248d
  1. 10342
      package-lock.json
  2. 480
      src/views/modules/changeManagement/changeRecord.vue
  3. 12
      src/views/modules/changeManagement/changeRequest.vue
  4. 6
      src/views/modules/processManagement/processBindingInfo.vue

10342
package-lock.json
File diff suppressed because it is too large
View File

480
src/views/modules/changeManagement/changeRecord.vue

@ -81,18 +81,20 @@
<div style="height: 675px">
<el-form :inline="true" label-position="top" :model="modalData" :rules="rules" style="margin-top: -5px;">
<el-form-item prop="applicantId" :rules="rules.applicantId">
<span style="cursor: pointer" slot="label" @click="getBaseList(103, 1)"><a herf="#">申请人</a></span>
<el-input v-model="modalData.applicantId" style="width: 120px"></el-input>
<span v-if="changeRequestFlag('applicant_id') === 'N'" slot="label">申请人</span>
<span v-else style="cursor: pointer" slot="label" @click="getBaseList(103, 1)"><a herf="#">申请人</a></span>
<el-input v-model="modalData.applicantId" :disabled="changeRequestFlag('applicant_id') === 'N'" style="width: 120px"></el-input>
<el-input v-model="modalData.applicantName" disabled style="width: 300px"></el-input>
</el-form-item>
<el-form-item label="申请部门" >
<el-input v-model="modalData.applicationDepartmentId" readonly style="width: 120px"></el-input>
<el-form-item label="申请部门">
<el-input v-model="modalData.applicationDepartmentId" disabled style="width: 120px"></el-input>
<el-input v-model="modalData.applicationDepartmentName" disabled style="width: 300px"></el-input>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="modalData" :rules="rules">
<el-form-item label="申请日期" prop="applicantId" :rules="rules.applyDate">
<el-form-item label="申请日期" prop="applyDate" :rules="rules.applyDate">
<el-date-picker
:disabled="changeRequestFlag('apply_date') === 'N'"
style="width: 205px"
v-model="modalData.applyDate"
type="date"
@ -102,34 +104,36 @@
</el-date-picker>
</el-form-item>
<el-form-item label="ECN变更影响" prop="changeImpact" :rules="rules.changeImpact">
<dict-data-select v-model="modalData.changeImpact" style="width: 205px" dict-type="change_change_Impact"></dict-data-select>
<dict-data-select v-model="modalData.changeImpact" :disabled="changeRequestFlag('change_impact') === 'N'" style="width: 205px" dict-type="change_change_Impact"></dict-data-select>
</el-form-item>
<el-form-item label="变更影响描述" prop="changeImpactDesc" :rules="[{required: modalData.changeImpact === 'Y',message: ' ',trigger: ['blur','change']}]">
<el-input v-model="modalData.changeImpactDesc" style="width: 423px"></el-input>
<el-input v-model="modalData.changeImpactDesc" :disabled="changeRequestFlag('change_impact_desc') === 'N'" style="width: 423px"></el-input>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="modalData" :rules="rules">
<el-form-item label="ECN阶段" prop="ecnStage" :rules="rules.ecnStage">
<dict-data-select v-model="modalData.ecnStage" style="width: 95px" dict-type="change_ecn_stage"></dict-data-select>
<dict-data-select v-model="modalData.ecnStage" :disabled="changeRequestFlag('ecn_stage') === 'N'" style="width: 95px" dict-type="change_ecn_stage"></dict-data-select>
</el-form-item>
<el-form-item label="变更类别" prop="changeType" :rules="rules.changeType">
<dict-data-select v-model="modalData.changeType" style="width: 95px" dict-type="change_change_type"></dict-data-select>
<dict-data-select v-model="modalData.changeType" :disabled="changeRequestFlag('change_type') === 'N'" style="width: 95px" dict-type="change_change_type"></dict-data-select>
</el-form-item>
<el-form-item label="ECN种类" prop="ecnType" :rules="rules.ecnType">
<dict-data-select v-model="modalData.ecnType" style="width: 100px" dict-type="change_ecn_type"></dict-data-select>
<dict-data-select v-model="modalData.ecnType" :disabled="changeRequestFlag('ecn_type') === 'N'" style="width: 100px" dict-type="change_ecn_type"></dict-data-select>
</el-form-item>
<el-form-item label=" ">
<el-button type="primary" @click="chooseEcnTypeModal" style="width: 90px">ECN种类</el-button>
<el-button :disabled="changeRequestFlag('ecn_type') === 'N'" type="primary" @click="chooseEcnTypeModal" style="width: 90px">ECN种类</el-button>
</el-form-item>
<el-form-item prop="tpEngineerId" :rules="rules.tpEngineerId">
<span style="cursor: pointer" slot="label" @click="getBaseList(2005)"><a href="#">审批人员</a></span>
<el-input v-model="modalData.tpEngineerId" clearable style="width: 120px"></el-input>
<span v-if="changeRequestFlag('tp_engineer_id') === 'N'" slot="label">审批人员</span>
<span v-else style="cursor: pointer" slot="label" @click="getBaseList(2005)"><a herf="#">审批人员</a></span>
<el-input v-model="modalData.tpEngineerId" clearable :disabled="changeRequestFlag('tp_engineer_id') === 'N'" style="width: 120px"></el-input>
<el-input v-model="modalData.tpEngineerName" disabled style="width: 300px"></el-input>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="modalData" :rules="rules">
<el-form-item label="变更生效日期" prop="changePhaseInDate" :rules="rules.changePhaseInDate">
<el-date-picker
:disabled="changeRequestFlag('change_phase_in_date') === 'N'"
style="width: 205px"
v-model="modalData.changePhaseInDate"
type="date"
@ -142,11 +146,12 @@
<!-- <dict-data-select v-model="modalData.printing" style="width: 205px" dict-type="change_printing"></dict-data-select>-->
<!-- </el-form-item>-->
<el-form-item label="是否DF产品" prop="dfIsProduct" :rules="rules.dfIsProduct">
<dict-data-select v-model="modalData.dfIsProduct" style="width: 205px" dict-type="change_df_is_product"></dict-data-select>
<dict-data-select v-model="modalData.dfIsProduct" :disabled="changeRequestFlag('df_is_product') === 'N'" style="width: 205px" dict-type="change_df_is_product"></dict-data-select>
</el-form-item>
<el-form-item label=" " prop="industrialEngineerId" :rules="[{required: modalData.dfIsProduct === 'Y',message: ' ',trigger: ['blur','change']}]">
<span style="cursor: pointer" slot="label" @click="getBaseList(2006)"><a href="#">I/E</a></span>
<el-input v-model="modalData.industrialEngineerId" clearable style="width: 120px"></el-input>
<el-form-item label=" " :required="modalData.dfIsProduct === 'I'" prop="industrialEngineerId" :show-message="false">
<span v-if="changeRequestFlag('industrial_engineer_id') === 'N'" slot="label">I/E</span>
<span v-else style="cursor: pointer" slot="label" @click="getBaseList(2006)"><a herf="#">I/E</a></span>
<el-input v-model="modalData.industrialEngineerId" clearable :disabled="changeRequestFlag('industrial_engineer_id') === 'N'" style="width: 120px"></el-input>
<el-input v-model="modalData.industrialEngineerName" disabled style="width: 300px"></el-input>
</el-form-item>
<!-- <el-form-item label="制造成本是否变更" prop="manufacturingCostIsChange" :rules="rules.manufacturingCostIsChange">-->
@ -155,25 +160,27 @@
</el-form>
<el-form :inline="true" label-position="top" :model="modalData">
<el-form-item label=" ">
<span style="cursor: pointer" slot="label" @click="getBaseList(2007)"><a href="#">CQC</a></span>
<el-input v-model="modalData.cqcOperatorId" clearable style="width: 120px"></el-input>
<span v-if="changeRequestFlag('cqc_operator_id') === 'N'" slot="label">CQC</span>
<span v-else style="cursor: pointer" slot="label" @click="getBaseList(2007)"><a herf="#">CQC</a></span>
<el-input v-model="modalData.cqcOperatorId" clearable :disabled="changeRequestFlag('cqc_operator_id') === 'N'" style="width: 120px"></el-input>
<el-input v-model="modalData.cqcOperatorName" disabled style="width: 300px"></el-input>
</el-form-item>
<el-form-item label=" ">
<span style="cursor: pointer" slot="label" @click="getBaseList(2008)"><a href="#">FAI</a></span>
<el-input v-model="modalData.faiOperatorId" clearable style="width: 120px"></el-input>
<span v-if="changeRequestFlag('fai_operator_id') === 'N'" slot="label">FAI</span>
<span v-else style="cursor: pointer" slot="label" @click="getBaseList(2008)"><a herf="#">FAI</a></span>
<el-input v-model="modalData.faiOperatorId" clearable :disabled="changeRequestFlag('fai_operator_id') === 'N'" style="width: 120px"></el-input>
<el-input v-model="modalData.faiOperatorName" disabled style="width: 300px"></el-input>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="modalData" :rules="rules">
<el-form-item label="变更要求描述" prop="changeRequestDesc" :rules="rules.changeRequestDesc">
<el-input type="textarea" v-model="modalData.changeRequestDesc" :rows="3" resize='none' show-word-limit style="width: 643px;height: 30px"></el-input>
<el-input type="textarea" v-model="modalData.changeRequestDesc" :disabled="changeRequestFlag('change_request_desc') === 'N'" :rows="3" resize='none' show-word-limit style="width: 643px;height: 30px"></el-input>
</el-form-item>
<!-- <el-form-item label="是否重新报价" prop="isReQuote" :rules="rules.isReQuote">-->
<!-- <dict-data-select v-model="modalData.isReQuote" style="width: 205px" dict-type="change_is_re_quote"></dict-data-select>-->
<!-- </el-form-item>-->
<el-form-item label="印刷方式" prop="printing" :rules="rules.printing">
<dict-data-select v-model="modalData.printing" style="width: 205px" dict-type="change_printing"></dict-data-select>
<dict-data-select v-model="modalData.printing" :disabled="changeRequestFlag('printing') === 'N'" style="width: 205px" dict-type="change_printing"></dict-data-select>
</el-form-item>
</el-form>
<!-- <el-form :inline="true" label-position="top" :model="modalData" :rules="rules" style="margin-top: 50px">-->
@ -221,8 +228,8 @@
min-width="170"
label="新物料编码">
<template slot-scope="scope">
<el-input @input="(val)=>partInput(scope.row, val)" :ref="`newPartNo${scope.$index}`" v-model="scope.row.newPartNo" @keyup.enter.native="focusNextInput(scope.$index, 'newPartNo')" style="width:77%"></el-input>
<el-button type="primary" @click="choosePartNo(scope.row)" style="width:18%;padding: 3px 7px">·&nbsp;·&nbsp;·</el-button>
<el-input :disabled="changeRequestDetailFlag('new_part_no') === 'N'" @input="(val)=>partInput(scope.row, val)" :ref="`newPartNo${scope.$index}`" v-model="scope.row.newPartNo" @keyup.enter.native="focusNextInput(scope.$index, 'newPartNo')" style="width:77%"></el-input>
<el-button :disabled="changeRequestDetailFlag('new_part_no') === 'N'" type="primary" @click="choosePartNo(scope.row)" style="width:18%;padding: 3px 7px">·&nbsp;·&nbsp;·</el-button>
</template>
</el-table-column>
<el-table-column
@ -232,7 +239,7 @@
min-width="90"
label="新图纸编码">
<template slot-scope="scope">
<el-input :ref="`newDrawingNo${scope.$index}`" v-model="scope.row.newDrawingNo" @keyup.enter.native="focusNextInput(scope.$index, 'newDrawingNo')" style="width:98%"></el-input>
<el-input :disabled="changeRequestDetailFlag('new_drawing_no') === 'N'" :ref="`newDrawingNo${scope.$index}`" v-model="scope.row.newDrawingNo" @keyup.enter.native="focusNextInput(scope.$index, 'newDrawingNo')" style="width:98%"></el-input>
</template>
</el-table-column>
<el-table-column
@ -242,7 +249,7 @@
min-width="90"
label="新图稿编码">
<template slot-scope="scope">
<el-input :ref="`newDraftNo${scope.$index}`" v-model="scope.row.newDraftNo" @keyup.enter.native="focusNextInput(scope.$index, 'newDraftNo')" style="width:98%"></el-input>
<el-input :disabled="changeRequestDetailFlag('new_draft_no') === 'N'" :ref="`newDraftNo${scope.$index}`" v-model="scope.row.newDraftNo" @keyup.enter.native="focusNextInput(scope.$index, 'newDraftNo')" style="width:98%"></el-input>
</template>
</el-table-column>
<el-table-column
@ -270,73 +277,79 @@
<div style="height: 675px">
<el-form :inline="true" label-position="top" :model="costImpactData" style="margin-top: -5px;">
<el-form-item style="margin-top: 20px;width: 155px">
<el-checkbox v-model="costImpactData.productionProductFlag" true-label="Y">在生产品</el-checkbox>
<el-checkbox :disabled="changeCostImpactFlag('production_product_flag') === 'N'" v-model="costImpactData.productionProductFlag" true-label="Y">在生产品</el-checkbox>
</el-form-item>
<el-form-item label="数量">
<el-input class="inlineNumber numInput" v-model="costImpactData.productionProductNumber" :disabled="costImpactData.productionProductFlag !== 'Y'" type="number" style="width: 100px"></el-input>
<el-input class="inlineNumber numInput" v-model="costImpactData.productionProductNumber" :disabled="costImpactData.productionProductFlag !== 'Y' || changeCostImpactFlag('production_product_number') === 'N'" type="number" style="width: 100px"></el-input>
</el-form-item>
<el-form-item label="处理意见">
<dict-data-select v-model="costImpactData.productionProductOpinions" :disabled="costImpactData.productionProductFlag !== 'Y'" style="width: 200px" dict-type="change_production_product_opinions"></dict-data-select>
<dict-data-select v-model="costImpactData.productionProductOpinions" :disabled="costImpactData.productionProductFlag !== 'Y' || changeCostImpactFlag('production_product_opinions') === 'N'" style="width: 200px" dict-type="change_production_product_opinions"></dict-data-select>
</el-form-item>
<el-form-item label="报废金额">
<el-input class="inlineNumber numInput" v-model="costImpactData.productionProductScrapAmount" :disabled="costImpactData.productionProductFlag !== 'Y'" @input="handleInput(costImpactData.productionProductScrapAmount,1)" type="number" style="width: 140px"></el-input>
<el-input class="inlineNumber numInput" v-model="costImpactData.productionProductScrapAmount" :disabled="costImpactData.productionProductFlag !== 'Y' || changeCostImpactFlag('production_product_scrap_amount') === 'N'" @input="handleInput(costImpactData.productionProductScrapAmount,1)" type="number" style="width: 140px"></el-input>
</el-form-item>
<!-- <el-form-item label=" " style="margin-left: -10px">-->
<!-- <el-input v-model="costImpactData.productionProductRemark" :disabled="costImpactData.productionProductFlag !== 'Y'" style="width: 300px"></el-input>-->
<!-- </el-form-item>-->
<el-form-item>
<span style="cursor: pointer" slot="label" @click="getBaseList(103, 3)"><a herf="#">执行人</a></span>
<el-input v-model="costImpactData.productionProductExecutorName" :disabled="costImpactData.productionProductFlag !== 'Y'" style="width: 130px"></el-input>
<span v-if="costImpactData.productionProductFlag !== 'Y' || changeCostImpactFlag('production_product_executor') === 'N'" slot="label">执行人</span>
<span v-else style="cursor: pointer" slot="label" @click="getBaseList(103, 3)"><a herf="#">执行人</a></span>
<el-input v-model="costImpactData.productionProductExecutorName" readonly :disabled="costImpactData.productionProductFlag !== 'Y' || changeCostImpactFlag('production_product_executor') === 'N'" style="width: 130px"></el-input>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="costImpactData" style="margin-top: 10px;">
<el-form-item style="margin-top: 20px;width: 155px">
<el-checkbox v-model="costImpactData.inventoryProductFlag" true-label="Y">成品库存</el-checkbox>
<el-checkbox :disabled="changeCostImpactFlag('inventory_product_flag') === 'N'" v-model="costImpactData.inventoryProductFlag" true-label="Y">成品库存</el-checkbox>
</el-form-item>
<el-form-item label="数量">
<el-input class="inlineNumber numInput" v-model="costImpactData.inventoryProductNumber" :disabled="costImpactData.inventoryProductFlag !== 'Y'" type="number" style="width: 100px"></el-input>
<el-input class="inlineNumber numInput" v-model="costImpactData.inventoryProductNumber" :disabled="costImpactData.inventoryProductFlag !== 'Y' || changeCostImpactFlag('inventory_product_number') === 'N'" type="number" style="width: 100px"></el-input>
</el-form-item>
<el-form-item label="处理意见">
<dict-data-select v-model="costImpactData.inventoryProductOpinions" :disabled="costImpactData.inventoryProductFlag !== 'Y'" style="width: 200px" dict-type="change_inventory_product_opinions"></dict-data-select>
<dict-data-select v-model="costImpactData.inventoryProductOpinions" :disabled="costImpactData.inventoryProductFlag !== 'Y' || changeCostImpactFlag('inventory_product_opinions') === 'N'" style="width: 200px" dict-type="change_inventory_product_opinions"></dict-data-select>
</el-form-item>
<el-form-item label="报废金额">
<el-input class="inlineNumber numInput" v-model="costImpactData.inventoryProductScrapAmount" :disabled="costImpactData.inventoryProductFlag !== 'Y'" @input="handleInput(costImpactData.inventoryProductScrapAmount,2)" type="number" style="width: 140px"></el-input>
<el-input class="inlineNumber numInput" v-model="costImpactData.inventoryProductScrapAmount" :disabled="costImpactData.inventoryProductFlag !== 'Y' || changeCostImpactFlag('inventory_product_scrap_amount') === 'N'" @input="handleInput(costImpactData.inventoryProductScrapAmount,2)" type="number" style="width: 140px"></el-input>
</el-form-item>
<!-- <el-form-item label=" " style="margin-left: -10px">-->
<!-- <el-input v-model="costImpactData.inventoryProductRemark" :disabled="costImpactData.inventoryProductFlag !== 'Y'" style="width: 300px"></el-input>-->
<!-- </el-form-item>-->
<el-form-item>
<span style="cursor: pointer" slot="label" @click="getBaseList(103, 4)"><a herf="#">执行人</a></span>
<el-input v-model="costImpactData.inventoryProductExecutorName" :disabled="costImpactData.inventoryProductFlag !== 'Y'" style="width: 130px"></el-input>
<span v-if="costImpactData.inventoryProductFlag !== 'Y' || changeCostImpactFlag('inventory_product_executor') === 'N'" slot="label">执行人</span>
<span v-else style="cursor: pointer" slot="label" @click="getBaseList(103, 4)"><a herf="#">执行人</a></span>
<el-input v-model="costImpactData.inventoryProductExecutorName" readonly :disabled="costImpactData.inventoryProductFlag !== 'Y' || changeCostImpactFlag('inventory_product_executor') === 'N'" style="width: 130px"></el-input>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="costImpactData" style="margin-top: 10px;">
<el-form-item style="margin-top: 20px;width: 155px">
<el-checkbox v-model="costImpactData.newOrderFlag" true-label="Y">新订单</el-checkbox>
<el-checkbox :disabled="changeCostImpactFlag('new_order_flag') === 'N'" v-model="costImpactData.newOrderFlag" true-label="Y">新订单</el-checkbox>
</el-form-item>
<el-form-item label="数量">
<el-input class="inlineNumber numInput" v-model="costImpactData.newOrderNumber" :disabled="costImpactData.newOrderFlag !== 'Y'" type="number" style="width: 100px"></el-input>
<el-input class="inlineNumber numInput" v-model="costImpactData.newOrderNumber" :disabled="costImpactData.newOrderFlag !== 'Y' || changeCostImpactFlag('new_order_number') === 'N'" type="number" style="width: 100px"></el-input>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="costImpactData" style="margin-top: 10px;">
<el-form-item style="margin-top: 20px;width: 155px">
<el-checkbox v-model="costImpactData.affectedFlag" true-label="Y">影响的原材料及其库存量</el-checkbox>
<el-checkbox :disabled="changeCostImpactFlag('affected_flag') === 'N'" v-model="costImpactData.affectedFlag" true-label="Y">影响的原材料及其库存量</el-checkbox>
</el-form-item>
<el-form-item label="数量">
<el-input class="inlineNumber numInput" v-model="costImpactData.affectedNumber" :disabled="costImpactData.affectedFlag !== 'Y'" type="number" style="width: 100px"></el-input>
<el-input class="inlineNumber numInput" v-model="costImpactData.affectedNumber" :disabled="costImpactData.affectedFlag !== 'Y' || changeCostImpactFlag('affected_number') === 'N'" type="number" style="width: 100px"></el-input>
</el-form-item>
<el-form-item label="处理意见">
<dict-data-select v-model="costImpactData.affectedOpinions" :disabled="costImpactData.affectedFlag !== 'Y'" style="width: 200px" dict-type="change_affected_opinions"></dict-data-select>
<dict-data-select v-model="costImpactData.affectedOpinions" :disabled="costImpactData.affectedFlag !== 'Y' || changeCostImpactFlag('affected_opinions') === 'N'" style="width: 200px" dict-type="change_affected_opinions"></dict-data-select>
</el-form-item>
<el-form-item label="报废金额">
<el-input class="inlineNumber numInput" v-model="costImpactData.affectedScrapAmount" :disabled="costImpactData.affectedFlag !== 'Y'" @input="handleInput(costImpactData.affectedScrapAmount,3)" type="number" style="width: 140px"></el-input>
<el-input class="inlineNumber numInput" v-model="costImpactData.affectedScrapAmount" :disabled="costImpactData.affectedFlag !== 'Y' || changeCostImpactFlag('affected_scrap_amount') === 'N'" @input="handleInput(costImpactData.affectedScrapAmount,3)" type="number" style="width: 140px"></el-input>
</el-form-item>
<!-- <el-form-item label=" " style="margin-left: -10px">-->
<!-- <el-input v-model="costImpactData.affectedRemark" :disabled="costImpactData.affectedFlag !== 'Y'" style="width: 300px"></el-input>-->
<!-- </el-form-item>-->
<el-form-item>
<span style="cursor: pointer" slot="label" @click="getBaseList(103, 5)"><a herf="#">执行人</a></span>
<el-input v-model="costImpactData.affectedExecutorName" :disabled="costImpactData.affectedFlag !== 'Y'" style="width: 130px"></el-input>
<span v-if="costImpactData.affectedFlag !== 'Y' || changeCostImpactFlag('affected_executor') === 'N'" slot="label">执行人</span>
<span v-else style="cursor: pointer" slot="label" @click="getBaseList(103, 5)"><a herf="#">执行人</a></span>
<el-input v-model="costImpactData.affectedExecutorName" readonly :disabled="costImpactData.affectedFlag !== 'Y' || changeCostImpactFlag('affected_executor') === 'N'" style="width: 130px"></el-input>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="costImpactData" style="margin-top: 10px;">
@ -344,7 +357,7 @@
<el-input class="inlineNumber numInput" v-model="totalCost" type="number" readonly style="width: 125px"></el-input>
</el-form-item>
<el-form-item label="备注">
<el-input v-model="costImpactData.remark" style="width: 612px"></el-input>
<el-input v-model="costImpactData.remark" :disabled="changeCostImpactFlag('remark') === 'N'" style="width: 612px"></el-input>
</el-form-item>
</el-form>
</div>
@ -379,25 +392,23 @@
</template>
</el-table-column>
<el-table-column
prop=""
header-align="center"
align="center"
min-width="80"
min-width="60"
label="可选值">
<template slot-scope="scope">
<el-select v-model="scope.row.chooseValue" placeholder="请选择">
<el-option v-for="item in scope.row.availableValueList" :key="index" :label="item.availableValue" :value="item.availableValue"></el-option>
<el-select :disabled="changeFAItemFlag('choose_value') === 'N'" v-model="scope.row.chooseValue" placeholder="请选择">
<el-option v-for="item in scope.row.availableValueList" :key="item.availableValue" :label="item.availableValue" :value="item.availableValue"></el-option>
</el-select>
</template>
</el-table-column>
<el-table-column
prop=""
header-align="center"
align="center"
min-width="100"
min-width="120"
label="备注">
<template slot-scope="scope">
<el-input v-model="scope.row.itemRemark" style="width:98%"></el-input>
<el-input :disabled="changeFAItemFlag('item_remark') === 'N'" v-model="scope.row.itemRemark"></el-input>
</template>
</el-table-column>
<!-- <el-table-column-->
@ -417,27 +428,27 @@
</div>
<el-form :inline="true" label-position="top" :model="executionInfoData">
<el-form-item label="原菲林编号">
<el-input v-model="executionInfoData.originalFilmNo" style="width: 230px"></el-input>
<el-input :disabled="changeExecutionInfoFlag('original_film_no') === 'N'" v-model="executionInfoData.originalFilmNo" style="width: 230px"></el-input>
</el-form-item>
<el-form-item label="原啤刀编号">
<el-input v-model="executionInfoData.originalDieCuttingRuleNo" style="width: 230px"></el-input>
<el-input :disabled="changeExecutionInfoFlag('original_die_cutting_rule_no') === 'N'" v-model="executionInfoData.originalDieCuttingRuleNo" style="width: 230px"></el-input>
</el-form-item>
<el-form-item label="原网板/印版编号">
<el-input v-model="executionInfoData.originalStencilNo" style="width: 230px"></el-input>
<el-input :disabled="changeExecutionInfoFlag('original_stencil_no') === 'N'" v-model="executionInfoData.originalStencilNo" style="width: 230px"></el-input>
</el-form-item>
<el-form-item label="ECN执行日期">
<el-date-picker style="width: 130px" v-model="executionInfoData.executionDate" type="date" value-format="yyyy-MM-dd" placeholder="请选择日期" :editable=false></el-date-picker>
<el-date-picker :disabled="changeExecutionInfoFlag('execution_date') === 'N'" style="width: 130px" v-model="executionInfoData.executionDate" type="date" value-format="yyyy-MM-dd" placeholder="请选择日期" :editable=false></el-date-picker>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="executionInfoData" style="margin-top: -5px;">
<el-form-item label="新菲林编号">
<el-input v-model="executionInfoData.newFilmNo" style="width: 230px"></el-input>
<el-input :disabled="changeExecutionInfoFlag('new_film_no') === 'N'" v-model="executionInfoData.newFilmNo" style="width: 230px"></el-input>
</el-form-item>
<el-form-item label="新啤刀编号">
<el-input v-model="executionInfoData.newDieCuttingRuleNo" style="width: 230px"></el-input>
<el-input :disabled="changeExecutionInfoFlag('new_die_cutting_rule_no') === 'N'" v-model="executionInfoData.newDieCuttingRuleNo" style="width: 230px"></el-input>
</el-form-item>
<el-form-item label="新网板/印版编号">
<el-input v-model="executionInfoData.newStencilNo" style="width: 230px"></el-input>
<el-input :disabled="changeExecutionInfoFlag('new_stencil_no') === 'N'" v-model="executionInfoData.newStencilNo" style="width: 230px"></el-input>
</el-form-item>
</el-form>
<div style="text-align: center ;font-size: 11px">
@ -472,8 +483,8 @@
min-width="130"
label="执行人">
<template slot-scope="scope">
<el-input @input="(val)=>executorInput(scope.row, val)" v-model="scope.row.executor" style="width:77%"></el-input>
<el-button type="primary" @click="chooseExecutor(scope.row)" style="width:18%;padding: 3px 7px">·&nbsp;·&nbsp;·</el-button>
<el-input :disabled="changeItemFlag('executor') === 'N'" @input="(val)=>executorInput(scope.row, val)" v-model="scope.row.executor" style="width:77%"></el-input>
<el-button :disabled="changeItemFlag('executor') === 'N'" type="primary" @click="chooseExecutor(scope.row)" style="width:18%;padding: 3px 7px">·&nbsp;·&nbsp;·</el-button>
</template>
</el-table-column>
<el-table-column
@ -483,14 +494,13 @@
min-width="150"
label="备注">
<template slot-scope="scope">
<el-input v-model="scope.row.itemRemark" style="height: 11px" allow-create>;width:98%"></el-input>
<el-input :disabled="changeItemFlag('item_remark') === 'N'" v-model="scope.row.itemRemark" style="width:98%"></el-input>
</template>
</el-table-column>
<el-table-column
fixed="right"
header-align="center"
align="center"
width="60"
min-width="50"
label="操作">
<template slot-scope="scope">
<el-link v-if="scope.row.executeFlag !== 'Y'" style="cursor: pointer" @click="executeModal(scope.row)">执行</el-link>
@ -530,13 +540,12 @@
</template>
</el-table-column>
<el-table-column
prop=""
header-align="center"
align="center"
min-width="100"
label="备注">
<template slot-scope="scope">
<el-input v-model="scope.row.itemRemark" style="height: 11px" allow-create>;width:98%"></el-input>
<el-input :disabled="changeCountersignatureItemFlag('item_remark') === 'N'" v-model="scope.row.itemRemark" style="width:98%"></el-input>
</template>
</el-table-column>
<el-table-column
@ -867,7 +876,7 @@
changeUploadFile,
ChooseList,
},
computed:{
computed: {
totalCost: {
get () {
let total = 0
@ -882,7 +891,70 @@
}
return total
}
}
},
changeRequestFlag () {
return (value) => {
let arr = this.plmChangeRequestArr.filter(a => a.fieldId === value)
if (arr.length > 0) {
return arr[0].updateFlag
}
return 'N'
}
},
changeRequestDetailFlag () {
return (value) => {
let arr = this.plmChangeRequestDetailArr.filter(a => a.fieldId === value)
if (arr.length > 0) {
return arr[0].updateFlag
}
return 'N'
}
},
changeCostImpactFlag () {
return (value) => {
let arr = this.plmChangeCostImpactArr.filter(a => a.fieldId === value)
if (arr.length > 0) {
return arr[0].updateFlag
}
return 'N'
}
},
changeFAItemFlag () {
return (value) => {
let arr = this.plmChangeFAItemArr.filter(a => a.fieldId === value)
if (arr.length > 0) {
return arr[0].updateFlag
}
return 'N'
}
},
changeExecutionInfoFlag () {
return (value) => {
let arr = this.plmChangeExecutionInfoArr.filter(a => a.fieldId === value)
if (arr.length > 0) {
return arr[0].updateFlag
}
return 'N'
}
},
changeItemFlag () {
return (value) => {
let arr = this.plmChangeItemArr.filter(a => a.fieldId === value)
if (arr.length > 0) {
return arr[0].updateFlag
}
return 'N'
}
},
changeCountersignatureItemFlag () {
return (value) => {
let arr = this.plmChangeCountersignatureItemArr.filter(a => a.fieldId === value)
if (arr.length > 0) {
return arr[0].updateFlag
}
return 'N'
}
},
},
watch: {
@ -938,7 +1010,13 @@
tempPartRow: {},
tempExecutorRow: {},
changeTitle: '',
nodeAuthorityArr: '',
plmChangeRequestArr: [],
plmChangeRequestDetailArr: [],
plmChangeCostImpactArr: [],
plmChangeFAItemArr: [],
plmChangeExecutionInfoArr: [],
plmChangeItemArr: [],
plmChangeCountersignatureItemArr: [],
// ======== ========
modalData: {
site: this.$store.state.user.site,
@ -974,7 +1052,10 @@
cqcOperatorName: '',
faiOperatorId: '',
faiOperatorName: '',
nodeConclusion: ''
nodeConclusion: '',
stepId: '',
rejectFlag: '',
rejectStepId: ''
},
costImpactData: {
site: this.$store.state.user.site,
@ -1480,28 +1561,6 @@
fixed: '',
columnWidth: 150
},
// {
// columnProp: 'executeFlag',
// headerAlign: 'center',
// align: 'center',
// columnLabel: '',
// columnHidden: false,
// columnImage: false,
// status: true,
// fixed: '',
// columnWidth: 80
// },
// {
// columnProp: 'executor',
// headerAlign: 'center',
// align: 'center',
// columnLabel: '',
// columnHidden: false,
// columnImage: false,
// status: true,
// fixed: '',
// columnWidth: 100
// },
{
columnProp: 'itemExecutionDate',
headerAlign: 'center',
@ -1688,7 +1747,134 @@
],
// ======== ========
rules: {},
rules: {
applicantId: [
{
required: true,
message: ' ',
trigger: ['blur','change']
}
],
applyDate: [
{
required: true,
message: ' ',
trigger: ['blur','change']
}
],
changeImpact: [
{
required: true,
message: ' ',
trigger: ['blur','change']
}
],
changeImpactDesc: [
{
required: true,
message: ' ',
trigger: ['blur','change']
}
],
ecnStage: [
{
required: true,
message: ' ',
trigger: ['blur','change']
}
],
changeType: [
{
required: true,
message: ' ',
trigger: ['blur','change']
}
],
tpEngineerId: [
{
required: true,
message: ' ',
trigger: ['blur','change']
}
],
changePhaseInDate: [
{
required: true,
message: ' ',
trigger: ['blur','change']
}
],
dfIsProduct: [
{
required: true,
message: ' ',
trigger: ['blur','change']
}
],
printing: [
{
required: true,
message: ' ',
trigger: ['blur','change']
}
],
manufacturingCostIsChange: [
{
required: true,
message: ' ',
trigger: ['blur','change']
}
],
changeRequestDesc: [
{
required: true,
message: ' ',
trigger: ['blur','change']
}
],
isReQuote: [
{
required: true,
message: ' ',
trigger: ['blur','change']
}
],
ulCertificationRequirements: [
{
required: true,
message: ' ',
trigger: ['blur','change']
}
],
ulContinueToMeetDemand: [
{
required: true,
message: ' ',
trigger: ['blur','change']
}
],
gpCertificationRequirements: [
{
required: true,
message: ' ',
trigger: ['blur','change']
}
],
gpContinueToMeetDemand: [
{
required: true,
message: ' ',
trigger: ['blur','change']
}
],
ecnType: [
{
required: true,
message: ' ',
trigger: ['blur','change']
}
],
},
// ======== ========
fileSelections: [],
itemSelections: [],
@ -1718,29 +1904,56 @@
if (this.$route.params.docNo) {
this.searchData.changeNo = this.$route.params.docNo
}
this.searchData.limit = this.pageSize
this.searchData.page = this.pageIndex
changeRecordSearch(this.searchData).then(({data}) => {
if (data.code === 0) {
this.dataList = data.page.list
this.pageIndex = data.page.currPage
this.pageSize = data.page.pageSize
this.totalPage = data.page.totalCount
//
if (this.totalPage > 0) {
//
this.$refs.changeTable.setCurrentRow(this.dataList[0])
// table
this.refreshCurrentTabTable()
this.updateModal(this.dataList[0])
}
}
})
} else {
if (this.$route.params.changeNo) {
this.searchData.changeNo = this.$route.params.changeNo
}
this.getDataList()
}
this.getDataList()
},
created () {
this.getEcnModel()
},
methods: {
//
getNodeAuthority (changeNo) {
async getNodeAuthority (row) {
let tempData = {
site: this.$store.state.user.site,
changeNo: changeNo
site: row.site,
changeNo: row.changeNo,
stepId: row.stepId,
menuId: this.$route.meta.menuId
}
getNodeAuthority(tempData).then(({data}) => {
await getNodeAuthority(tempData).then(({data}) => {
if (data && data.code === 0) {
this.nodeAuthorityArr = data.rows
this.plmChangeRequestArr = data.rows.plmChangeRequest
this.plmChangeRequestDetailArr = data.rows.plmChangeRequestDetail
this.plmChangeCostImpactArr = data.rows.plmChangeCostImpact
this.plmChangeFAItemArr = data.rows.plmChangeFAItem
this.plmChangeExecutionInfoArr = data.rows.plmChangeExecutionInfo
this.plmChangeItemArr = data.rows.plmChangeItem
this.plmChangeCountersignatureItemArr = data.rows.plmChangeCountersignatureItem
}
})
},
@ -2100,10 +2313,8 @@
},
//
updateModal (row) {
if (row.changeStatus !== '草稿') {
this.getNodeAuthority(row.changeNo)
}
async updateModal (row) {
await this.getNodeAuthority(row)
this.modalData = {
site: row.site,
changeNo: row.changeNo,
@ -2139,7 +2350,10 @@
cqcOperatorName: row.cqcOperatorName,
faiOperatorId: row.faiOperatorId,
faiOperatorName: row.faiOperatorName,
nodeConclusion: ''
nodeConclusion: '',
stepId: row.stepId,
rejectFlag: row.rejectFlag,
rejectStepId: row.rejectStepId
}
this.changeTitle = '变更申请-' + this.modalData.changeNo
// ECN
@ -2159,21 +2373,27 @@
//
issueModal (row) {
let tempData = {
site: row.site,
userName: this.$store.state.user.name,
changeNo: row.changeNo,
menuId: this.$route.meta.menuId
}
issueChange(tempData).then(({data}) => {
if (data && data.code === 0) {
this.getDataList()
this.$message({message: '操作成功', type: 'success'})
} else {
this.$alert(data.msg, '错误', {
confirmButtonText: '确定'
})
this.$confirm(`是否确认下达?`, '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
let tempData = {
site: row.site,
userName: this.$store.state.user.name,
changeNo: row.changeNo,
menuId: this.$route.meta.menuId
}
issueChange(tempData).then(({data}) => {
if (data && data.code === 0) {
this.getDataList()
this.$message({message: '操作成功', type: 'success'})
} else {
this.$alert(data.msg, '错误', {
confirmButtonText: '确定'
})
}
})
})
},
@ -2618,23 +2838,11 @@
if (type === 1) {
strVal = this.modalData.applicantId
} else if (type === 3) {
if (this.costImpactData.productionProductFlag !== 'Y') {
return
} else {
strVal = this.costImpactData.productionProductExecutor
}
strVal = this.costImpactData.productionProductExecutor
} else if (type === 4) {
if (this.costImpactData.inventoryProductFlag !== 'Y') {
return
} else {
strVal = this.costImpactData.inventoryProductExecutor
}
strVal = this.costImpactData.inventoryProductExecutor
} else if (type === 5) {
if (this.costImpactData.affectedFlag !== 'Y') {
return
} else {
strVal = this.costImpactData.affectedExecutor
}
strVal = this.costImpactData.affectedExecutor
} else if (type === 7) {
strVal = this.tempExecutorRow.executor
}

12
src/views/modules/changeManagement/changeRequest.vue

@ -105,7 +105,7 @@
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="modalData" :rules="rules">
<el-form-item label="申请日期" prop="applicantId" :rules="rules.applyDate">
<el-form-item label="申请日期" prop="applyDate" :rules="rules.applyDate">
<el-date-picker
style="width: 205px"
v-model="modalData.applyDate"
@ -136,7 +136,7 @@
<el-button type="primary" @click="chooseEcnTypeModal" style="width: 90px">ECN种类</el-button>
</el-form-item>
<el-form-item prop="tpEngineerId" :rules="rules.tpEngineerId">
<span style="cursor: pointer" slot="label" @click="getBaseList(2005)"><a href="#">审批人员</a></span>
<span style="cursor: pointer" slot="label" @click="getBaseList(2005)"><a herf="#">审批人员</a></span>
<el-input v-model="modalData.tpEngineerId" clearable style="width: 120px"></el-input>
<el-input v-model="modalData.tpEngineerName" disabled style="width: 300px"></el-input>
</el-form-item>
@ -158,8 +158,8 @@
<el-form-item label="是否DF产品" prop="dfIsProduct" :rules="rules.dfIsProduct">
<dict-data-select v-if="modalFlag" v-model="modalData.dfIsProduct" style="width: 205px" dict-type="change_df_is_product"></dict-data-select>
</el-form-item>
<el-form-item label=" " prop="industrialEngineerId" :rules="[{required: modalData.dfIsProduct === 'Y',message: ' ',trigger: ['blur','change']}]">
<span style="cursor: pointer" slot="label" @click="getBaseList(2006)"><a href="#">I/E</a></span>
<el-form-item label=" " prop="industrialEngineerId" :rules="[{required: modalData.dfIsProduct === 'Yes',message: ' ',trigger: ['blur','change']}]">
<span style="cursor: pointer" slot="label" @click="getBaseList(2006)"><a herf="#">I/E</a></span>
<el-input v-model="modalData.industrialEngineerId" clearable style="width: 120px"></el-input>
<el-input v-model="modalData.industrialEngineerName" disabled style="width: 300px"></el-input>
</el-form-item>
@ -169,12 +169,12 @@
</el-form>
<el-form :inline="true" label-position="top" :model="modalData">
<el-form-item label=" ">
<span style="cursor: pointer" slot="label" @click="getBaseList(2007)"><a href="#">CQC</a></span>
<span style="cursor: pointer" slot="label" @click="getBaseList(2007)"><a herf="#">CQC</a></span>
<el-input v-model="modalData.cqcOperatorId" clearable style="width: 120px"></el-input>
<el-input v-model="modalData.cqcOperatorName" disabled style="width: 300px"></el-input>
</el-form-item>
<el-form-item label=" ">
<span style="cursor: pointer" slot="label" @click="getBaseList(2008)"><a href="#">FAI</a></span>
<span style="cursor: pointer" slot="label" @click="getBaseList(2008)"><a herf="#">FAI</a></span>
<el-input v-model="modalData.faiOperatorId" clearable style="width: 120px"></el-input>
<el-input v-model="modalData.faiOperatorName" disabled style="width: 300px"></el-input>
</el-form-item>

6
src/views/modules/processManagement/processBindingInfo.vue

@ -958,7 +958,11 @@
// Table
getTableList (type) {
let tempData = {
tableType: type
tableType: type,
passTable: [
'plm_change_ecn_type_detail',
'plm_change_ecn_type_header'
]
}
getTableList(tempData).then(({data}) => {
if (data && data.code === 0) {

Loading…
Cancel
Save