|
|
|
@ -53,7 +53,8 @@ |
|
|
|
<el-input v-model="searchData.engineerName" clearable style="width: 120px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item :label="'优先等级'"> |
|
|
|
<dict-data-select v-model="searchData.priorityLevel" clearable style="width: 120px" :use-default-value="false" dict-type="priority_Level"></dict-data-select> |
|
|
|
<dict-data-select v-model="searchData.priorityLevel" clearable style="width: 120px" :use-default-value="false" |
|
|
|
dict-type="priority_Level"></dict-data-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item :label="'状态'" v-if="false"> |
|
|
|
<el-select v-model="searchData.proofingResultStatus" style="width: 120px"> |
|
|
|
@ -131,11 +132,13 @@ |
|
|
|
<span v-show="scope.row.proofingResultStatus === 'S'">已提交打样</span> |
|
|
|
<span v-show="scope.row.proofingResultStatus === 'R'">客户已反馈</span> |
|
|
|
</span> |
|
|
|
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]" style="width: 100px; height: 80px"/></span> |
|
|
|
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]" |
|
|
|
style="width: 100px; height: 80px"/></span> |
|
|
|
</div> |
|
|
|
<div v-else> |
|
|
|
<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> |
|
|
|
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]" |
|
|
|
style="width: 100px; height: 80px"/></span> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
@ -147,7 +150,9 @@ |
|
|
|
label="操作"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<el-link style="cursor: pointer" @click="updateModal(scope.row)">编辑</el-link> |
|
|
|
<el-link style="cursor: pointer" v-if="scope.row.proofingResultStatus === 'B'" @click="updateModalStatus(scope.row,'C')">下达</el-link> |
|
|
|
<el-link style="cursor: pointer" v-if="scope.row.proofingResultStatus === 'B'" |
|
|
|
@click="updateModalStatus(scope.row,'C')">下达 |
|
|
|
</el-link> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
</el-table> |
|
|
|
@ -166,15 +171,17 @@ |
|
|
|
</el-pagination> |
|
|
|
|
|
|
|
<!-- 打样模态框 --> |
|
|
|
<el-dialog :title="modalData.title" @close="closeModalDiaLog" @open="getProjectPartList()" :close-on-click-modal="false" v-drag :visible.sync="modalFlag" top="10vh" width="65%"> |
|
|
|
<el-dialog :title="modalData.title" @close="closeModalDiaLog" @open="openModalDialog" :close-on-click-modal="false" |
|
|
|
v-drag :visible.sync="modalFlag" top="10vh" width="1200px"> |
|
|
|
<el-form label-position="top" ref="modalForm" :model="modalData" :rules="rules"> |
|
|
|
<el-row :gutter="15"> |
|
|
|
<el-col :span="8"> |
|
|
|
<el-row :gutter="10"> |
|
|
|
<el-col :span="10"> |
|
|
|
<el-form-item prop="customerNo" label="客户编码"> |
|
|
|
<span style="cursor: pointer" slot="label" v-if="modalData.flag === '1'" @click="getBaseList(102,1)"><a herf="#">客户编码</a></span> |
|
|
|
<el-input :disabled="modalData.flag !== '1'" v-model="modalData.customerNo" ></el-input> |
|
|
|
<span style="cursor: pointer" slot="label" v-if="modalData.flag === '1'" |
|
|
|
@click="getBaseList(102,1)"><a herf="#">客户编码</a></span> |
|
|
|
<el-input :disabled="modalData.flag !== '1' && columnFlagByHeader('customerNo')" v-model="modalData.customerNo"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
<el-col :span="14"> |
|
|
|
@ -187,31 +194,33 @@ |
|
|
|
<el-col :span="4"> |
|
|
|
<el-form-item label="打样数量" prop="proofingNumber"> |
|
|
|
<div class="right"> |
|
|
|
<el-input type="number" class="inlineNumber" v-model="modalData.proofingNumber" @input="modalData.proofingNumber = modalData.proofingNumber.replace(/^(0+)|[^\d]+/g, '')"></el-input> |
|
|
|
<el-input type="number" class="inlineNumber" :disabled="columnFlagByHeader('proofingNumber')" v-model="modalData.proofingNumber" |
|
|
|
@input="modalData.proofingNumber = modalData.proofingNumber.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" v-model="modalData.priorityLevel" dict-type="priority_Level"></dict-data-select> |
|
|
|
<dict-data-select v-if="modalFlag" :disabled="columnFlagByHeader('priorityLevel')" 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" style="width: 100%" type="date" value-format="yyyy-MM-dd" placeholder="选择日期"></el-date-picker> |
|
|
|
<el-date-picker v-model="modalData.requiredDeliveryDate" style="width: 100%" type="date" |
|
|
|
value-format="yyyy-MM-dd" placeholder="选择日期" :disabled="columnFlagByHeader('requiredDeliveryDate')"></el-date-picker> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
<el-col :span="4"> |
|
|
|
|
|
|
|
</el-col> |
|
|
|
</el-row> |
|
|
|
<el-row :gutter="15"> |
|
|
|
<el-col :span="8"> |
|
|
|
<el-row :gutter="10"> |
|
|
|
<el-col :span="10"> |
|
|
|
<el-form-item prop="projectId" label="项目编码"> |
|
|
|
<span slot="label" v-if="modalData.customerNo && modalData.flag === '1'" @click="chooseProjectListFlag = true"><a herf="#">项目编码</a></span> |
|
|
|
<el-input :disabled="!modalData.customerNo || modalData.flag !== '1'" v-model="modalData.projectId"></el-input> |
|
|
|
<span slot="label" v-if="modalData.customerNo && modalData.flag === '1'" |
|
|
|
@click="chooseProjectListFlag = true"><a herf="#">项目编码</a></span> |
|
|
|
<el-input :disabled="(!modalData.customerNo || modalData.flag !== '1')" |
|
|
|
v-model="modalData.projectId"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
<el-col :span="14"> |
|
|
|
@ -221,68 +230,46 @@ |
|
|
|
</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="4"> |
|
|
|
<el-form-item> |
|
|
|
<!-- <el-form-item prop="trackerName">--> |
|
|
|
<!-- <span style="cursor: pointer" slot="label" @click="getBaseList(103,1)"><a herf="#">CS</a></span>--> |
|
|
|
<span style="cursor: pointer" slot="label" @click="getBaseList(2051)"><a herf="#">CS</a></span> |
|
|
|
<el-input v-model="modalData.trackerName" ></el-input> |
|
|
|
<label v-if="columnFlagByHeader('tracker')" slot="label">CS</label> |
|
|
|
<span v-else style="cursor: pointer" slot="label" @click="getBaseList(2051)"><a herf="#">CS</a></span> |
|
|
|
<el-input v-model="modalData.trackerName" :disabled="columnFlagByHeader('tracker')" readonly></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
<el-col :span="4"> |
|
|
|
<el-form-item> |
|
|
|
<!-- <el-form-item prop="engineerName">--> |
|
|
|
<!-- <span style="cursor: pointer" slot="label" @click="getBaseList(103,2)"><a herf="#">NPI工程师</a></span>--> |
|
|
|
<span style="cursor: pointer" slot="label" @click="getBaseList(2052)"><a herf="#">NPI工程师</a></span> |
|
|
|
<el-input v-model="modalData.engineerName" ></el-input> |
|
|
|
<label v-if="columnFlagByHeader('engineer')" slot="label">NPI工程师</label> |
|
|
|
<span v-else style="cursor: pointer" slot="label" @click="getBaseList(2052)"><a herf="#">NPI工程师</a></span> |
|
|
|
<el-input v-model="modalData.engineerName" :disabled="columnFlagByHeader('engineer')" readonly></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
<el-col :span="4"> |
|
|
|
<el-form-item> |
|
|
|
<!-- <span style="cursor: pointer" slot="label" @click="getBaseList(103,2)"><a herf="#">Approver</a></span>--> |
|
|
|
<span style="cursor: pointer" slot="label" @click="getBaseList(2053)"><a herf="#">Approver</a></span> |
|
|
|
<el-input v-model="modalData.approverName" ></el-input> |
|
|
|
<label v-if="columnFlagByHeader('approver')" slot="label">Approver</label> |
|
|
|
<span v-else style="cursor: pointer" slot="label" @click="getBaseList(2053)"><a herf="#">Approver</a></span> |
|
|
|
<el-input v-model="modalData.approverName" :disabled="columnFlagByHeader('approver')" readonly></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
<el-col :span="4"> |
|
|
|
<el-form-item> |
|
|
|
<!-- <span style="cursor: pointer" slot="label" @click="getBaseList(103,2)"><a herf="#">Approver</a></span>--> |
|
|
|
<span style="cursor: pointer" slot="label" @click="delegateAccessVisible = true"><a herf="#">DelegateAccess</a></span> |
|
|
|
<el-input v-model="delegateAccessName" readonly></el-input> |
|
|
|
<label v-if="columnFlagByDelegateAccess('delegateAccess')" slot="label">DelegateAccess</label> |
|
|
|
<span v-else style="cursor: pointer" slot="label" @click="delegateAccessVisible = true"><a herf="#">DelegateAccess</a></span> |
|
|
|
<el-input v-model="delegateAccessName" :disabled="columnFlagByDelegateAccess('delegateAccess')" readonly></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" v-model="modalData.technicalConsiderations" :rows="3" resize='none' show-word-limit></el-input> |
|
|
|
<el-input type="textarea" v-model="modalData.technicalConsiderations" :rows="3" resize='none' |
|
|
|
show-word-limit></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
</el-row> |
|
|
|
@ -295,7 +282,7 @@ |
|
|
|
<el-form-item label="产品名称"> |
|
|
|
<el-input v-model="projectPartData.partName" clearable style="width: 120px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label=" " v-if="this.modalData.projectId"> |
|
|
|
<el-form-item label=" " v-if="modalData.projectId"> |
|
|
|
<el-button type="primary" @click="getProjectPartList()">查询</el-button> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
@ -337,19 +324,27 @@ |
|
|
|
<el-footer style="height:30px;text-align:center;margin-top: 8px"> |
|
|
|
<el-button type="primary" @click="saveData()">保存</el-button> |
|
|
|
<el-button type="primary" @click="modalFlag = false">关闭</el-button> |
|
|
|
<el-button v-if="modalData.proofingStatus === '审批中'" type="primary" @click="agreeSubmit">同意</el-button> |
|
|
|
<el-button v-if="modalData.proofingStatus === '审批中' && modalData.isReject === 'Y'" type="primary" @click="rejectSubmit">驳回</el-button> |
|
|
|
</el-footer> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
<!-- 录入打样结果模态框 --> |
|
|
|
<el-dialog title="录入打样结果" :close-on-click-modal="false" v-drag :visible.sync="enterResultModalFlag" width="785px"> |
|
|
|
<el-form :inline="true" label-position="top" :model="enterResultData" :rules="enterResultRules" style="margin-left: 0px;margin-top: 10px;"> |
|
|
|
<el-dialog title="录入打样结果" :close-on-click-modal="false" v-drag :visible.sync="enterResultModalFlag" |
|
|
|
width="785px"> |
|
|
|
<el-form :inline="true" label-position="top" :model="enterResultData" :rules="enterResultRules" |
|
|
|
style="margin-left: 0px;margin-top: 10px;"> |
|
|
|
<el-form-item label="实际交付日期" prop="actualityDeliveryDate" :rules="enterResultRules.actualityDeliveryDate"> |
|
|
|
<el-date-picker v-model="enterResultData.actualityDeliveryDate" type="date" value-format="yyyy-MM-dd" placeholder="请选择日期" style="width: 200px"></el-date-picker> |
|
|
|
<el-date-picker v-model="enterResultData.actualityDeliveryDate" type="date" value-format="yyyy-MM-dd" |
|
|
|
placeholder="请选择日期" style="width: 200px"></el-date-picker> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-form :inline="true" label-position="top" :model="enterResultData" :rules="enterResultRules" style="margin-left:0px;margin-top: 5px;"> |
|
|
|
<el-form-item label="打样结果信息" prop="proofingResultInformation" :rules="enterResultRules.proofingResultInformation"> |
|
|
|
<el-input type="textarea" v-model="enterResultData.proofingResultInformation" :rows="3" resize='none' show-word-limit style="width: 500px;height: 30px"></el-input> |
|
|
|
<el-form :inline="true" label-position="top" :model="enterResultData" :rules="enterResultRules" |
|
|
|
style="margin-left:0px;margin-top: 5px;"> |
|
|
|
<el-form-item label="打样结果信息" prop="proofingResultInformation" |
|
|
|
:rules="enterResultRules.proofingResultInformation"> |
|
|
|
<el-input type="textarea" v-model="enterResultData.proofingResultInformation" :rows="3" resize='none' |
|
|
|
show-word-limit style="width: 500px;height: 30px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-form :inline="true" label-position="top" :model="enterResultData" style="margin-left: 0px;margin-top: 50px;"> |
|
|
|
@ -396,10 +391,14 @@ |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
<!-- 录入送样信息模态框 --> |
|
|
|
<el-dialog title="录入送样信息" :close-on-click-modal="false" v-drag :visible.sync="submitResultModalFlag" width="620px"> |
|
|
|
<el-form :inline="true" label-position="top" :model="submitResultData" :rules="submitResultRules" style="margin-left: 0px;margin-top: 10px;"> |
|
|
|
<el-form-item label="实际送样日期" prop="actualitySendSamplesDate" :rules="submitResultRules.actualitySendSamplesDate"> |
|
|
|
<el-date-picker v-model="submitResultData.actualitySendSamplesDate" type="date" value-format="yyyy-MM-dd" placeholder="请选择日期" style="width: 200px"></el-date-picker> |
|
|
|
<el-dialog title="录入送样信息" :close-on-click-modal="false" v-drag :visible.sync="submitResultModalFlag" |
|
|
|
width="620px"> |
|
|
|
<el-form :inline="true" label-position="top" :model="submitResultData" :rules="submitResultRules" |
|
|
|
style="margin-left: 0px;margin-top: 10px;"> |
|
|
|
<el-form-item label="实际送样日期" prop="actualitySendSamplesDate" |
|
|
|
:rules="submitResultRules.actualitySendSamplesDate"> |
|
|
|
<el-date-picker v-model="submitResultData.actualitySendSamplesDate" type="date" value-format="yyyy-MM-dd" |
|
|
|
placeholder="请选择日期" style="width: 200px"></el-date-picker> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="送样方式" prop="sendSamplesMethod" :rules="submitResultRules.sendSamplesMethod"> |
|
|
|
<el-select v-model="submitResultData.sendSamplesMethod" style="width: 221px"> |
|
|
|
@ -414,7 +413,8 @@ |
|
|
|
</el-form> |
|
|
|
<el-form :inline="true" label-position="top" :model="submitResultData" style="margin-left:0px;margin-top: 5px;"> |
|
|
|
<el-form-item label="送货备注"> |
|
|
|
<el-input type="textarea" v-model="submitResultData.deliverGoodsRemark" :rows="3" resize='none' show-word-limit style="width: 456px;height: 30px"></el-input> |
|
|
|
<el-input type="textarea" v-model="submitResultData.deliverGoodsRemark" :rows="3" resize='none' |
|
|
|
show-word-limit style="width: 456px;height: 30px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-footer style="height:35px;margin-top: 50px;text-align:center"> |
|
|
|
@ -424,10 +424,13 @@ |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
<!-- 客户回复模态框 --> |
|
|
|
<el-dialog title="客户回复" :close-on-click-modal="false" v-drag :visible.sync="customerResponseModalFlag" width="620px"> |
|
|
|
<el-form :inline="true" label-position="top" :model="customerResponseData" :rules="customerResponseRules" style="margin-left: 0px;margin-top: 10px;"> |
|
|
|
<el-dialog title="客户回复" :close-on-click-modal="false" v-drag :visible.sync="customerResponseModalFlag" |
|
|
|
width="620px"> |
|
|
|
<el-form :inline="true" label-position="top" :model="customerResponseData" :rules="customerResponseRules" |
|
|
|
style="margin-left: 0px;margin-top: 10px;"> |
|
|
|
<el-form-item label="实际回复日期" prop="actualityReplyDate" :rules="customerResponseRules.actualityReplyDate"> |
|
|
|
<el-date-picker v-model="customerResponseData.actualityReplyDate" type="date" value-format="yyyy-MM-dd" placeholder="请选择日期" style="width: 185px"></el-date-picker> |
|
|
|
<el-date-picker v-model="customerResponseData.actualityReplyDate" type="date" value-format="yyyy-MM-dd" |
|
|
|
placeholder="请选择日期" style="width: 185px"></el-date-picker> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="客户确认结果" prop="confirmResults" :rules="customerResponseRules.confirmResults"> |
|
|
|
<el-select v-model="customerResponseData.confirmResults" style="width: 185px"> |
|
|
|
@ -439,9 +442,11 @@ |
|
|
|
<el-input v-model="customerResponseData.confirmBy" style="width: 185px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-form :inline="true" label-position="top" :model="customerResponseData" style="margin-left:0px;margin-top: 5px;"> |
|
|
|
<el-form :inline="true" label-position="top" :model="customerResponseData" |
|
|
|
style="margin-left:0px;margin-top: 5px;"> |
|
|
|
<el-form-item label="客户回复信息"> |
|
|
|
<el-input type="textarea" v-model="customerResponseData.confirmInformation" :rows="3" resize='none' show-word-limit style="width: 595px;height: 30px"></el-input> |
|
|
|
<el-input type="textarea" v-model="customerResponseData.confirmInformation" :rows="3" resize='none' |
|
|
|
show-word-limit style="width: 595px;height: 30px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-footer style="height:35px;margin-top: 50px;text-align:center"> |
|
|
|
@ -451,7 +456,8 @@ |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
<!--选择项目模态框--> |
|
|
|
<el-dialog title="选择-项目" @close="closeProjectInfoDialog" @open="searchProjectInfoList" :visible.sync="chooseProjectListFlag" width="35%"> |
|
|
|
<el-dialog title="选择-项目" @close="closeProjectInfoDialog" @open="searchProjectInfoList" |
|
|
|
:visible.sync="chooseProjectListFlag" width="35%"> |
|
|
|
<el-form label-position="top" :model="searchProjectData" ref="closeProjectInfoForm"> |
|
|
|
<el-row :gutter="10"> |
|
|
|
<el-col :span="6"> |
|
|
|
@ -481,15 +487,19 @@ |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
<!-- 页签 --> |
|
|
|
<el-tabs v-model="activeTable" style="margin-top: 0px; width: 100%; min-height: 300px;" type="border-card" @tab-click="tabClick" class="customer-tab"> |
|
|
|
<el-tabs v-model="activeTable" style="margin-top: 0px; width: 100%; min-height: 300px;" type="border-card" |
|
|
|
@tab-click="tabClick" class="customer-tab"> |
|
|
|
<!-- 打样详细信息页签 --> |
|
|
|
<el-tab-pane label="打样详细信息" name="proofing_detail_information" v-if="false"> |
|
|
|
<el-form :inline="true" label-position="top" :model="proofingDetailData" style="margin-left: 10px;margin-top: 10px;"> |
|
|
|
<el-form :inline="true" label-position="top" :model="proofingDetailData" |
|
|
|
style="margin-left: 10px;margin-top: 10px;"> |
|
|
|
<el-form-item label="技术注意事项"> |
|
|
|
<el-input type="textarea" v-model="proofingDetailData.technicalConsiderations" readonly :rows="3" resize='none' show-word-limit style="width: 600px;height: 30px"></el-input> |
|
|
|
<el-input type="textarea" v-model="proofingDetailData.technicalConsiderations" readonly :rows="3" |
|
|
|
resize='none' show-word-limit style="width: 600px;height: 30px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-form :inline="true" label-position="top" :model="proofingDetailData" style="margin-left: 10px;margin-top: 46px;"> |
|
|
|
<el-form :inline="true" label-position="top" :model="proofingDetailData" |
|
|
|
style="margin-left: 10px;margin-top: 46px;"> |
|
|
|
<el-form-item label="是否需要送样"> |
|
|
|
<input type="checkbox" v-if="proofingDetailData.isNeedToSendSamples == 'Y'" checked onclick="return false"/> |
|
|
|
<input type="checkbox" v-if="proofingDetailData.isNeedToSendSamples != 'Y'" onclick="return false"/> |
|
|
|
@ -498,7 +508,8 @@ |
|
|
|
<el-input v-model="proofingDetailData.sendSamplesAddress" readonly style="width: 295px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-form :inline="true" label-position="top" :model="proofingDetailData" style="margin-left: 10px;margin-top: 46px;"> |
|
|
|
<el-form :inline="true" label-position="top" :model="proofingDetailData" |
|
|
|
style="margin-left: 10px;margin-top: 46px;"> |
|
|
|
<el-form-item label="收货人"> |
|
|
|
<el-input v-model="proofingDetailData.consignee" readonly style="width: 295px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
@ -509,30 +520,46 @@ |
|
|
|
</el-tab-pane> |
|
|
|
<!-- 打样结果页签 --> |
|
|
|
<el-tab-pane label="打样结果" name="proofing_result" v-if="false"> |
|
|
|
<el-form :inline="true" label-position="top" :model="proofingResultData" style="margin-left: 10px;margin-top: 5px;"> |
|
|
|
<el-button v-if="proofingResultData.proofingResultStatus === 'C'" type="primary" @click="proofingResultModal()">录入打样结果</el-button> |
|
|
|
<el-button v-if="proofingResultData.proofingResultStatus === 'E'" type="primary" @click="submitProofingModal()">录入送样信息</el-button> |
|
|
|
<el-button v-if="proofingResultData.proofingResultStatus === 'S'" type="primary" @click="customerResponseModal()">客户回复</el-button> |
|
|
|
<el-form :inline="true" label-position="top" :model="proofingResultData" |
|
|
|
style="margin-left: 10px;margin-top: 5px;"> |
|
|
|
<el-button v-if="proofingResultData.proofingResultStatus === 'C'" type="primary" |
|
|
|
@click="proofingResultModal()">录入打样结果 |
|
|
|
</el-button> |
|
|
|
<el-button v-if="proofingResultData.proofingResultStatus === 'E'" type="primary" |
|
|
|
@click="submitProofingModal()">录入送样信息 |
|
|
|
</el-button> |
|
|
|
<el-button v-if="proofingResultData.proofingResultStatus === 'S'" type="primary" |
|
|
|
@click="customerResponseModal()">客户回复 |
|
|
|
</el-button> |
|
|
|
</el-form> |
|
|
|
<el-form :inline="true" label-position="top" :model="proofingResultData" style="margin-left: 10px;margin-top: 2px;"> |
|
|
|
<el-form :inline="true" label-position="top" :model="proofingResultData" |
|
|
|
style="margin-left: 10px;margin-top: 2px;"> |
|
|
|
<el-form-item label="实际交付日期"> |
|
|
|
<el-date-picker v-model="proofingResultData.actualityDeliveryDate" readonly type="date" value-format="yyyy-MM-dd" style="width: 240px"></el-date-picker> |
|
|
|
<el-date-picker v-model="proofingResultData.actualityDeliveryDate" readonly type="date" |
|
|
|
value-format="yyyy-MM-dd" style="width: 240px"></el-date-picker> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="是否需要送样"> |
|
|
|
<input type="checkbox" v-if="proofingResultData.isNeedToSendSamples == 'Y'" checked onclick="return false"/> |
|
|
|
<input type="checkbox" v-if="proofingResultData.isNeedToSendSamples != 'Y'" onclick="return false"/> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="是否送样"> |
|
|
|
<input type="checkbox" v-if="proofingResultData.proofingResultStatus == 'S' || proofingResultData.proofingResultStatus == 'R'" checked onclick="return false"/> |
|
|
|
<input type="checkbox" v-if="proofingResultData.proofingResultStatus != 'S' && proofingResultData.proofingResultStatus != 'R'" onclick="return false"/> |
|
|
|
<input type="checkbox" |
|
|
|
v-if="proofingResultData.proofingResultStatus == 'S' || proofingResultData.proofingResultStatus == 'R'" |
|
|
|
checked onclick="return false"/> |
|
|
|
<input type="checkbox" |
|
|
|
v-if="proofingResultData.proofingResultStatus != 'S' && proofingResultData.proofingResultStatus != 'R'" |
|
|
|
onclick="return false"/> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-form :inline="true" label-position="top" :model="proofingResultData" style="margin-left: 10px;margin-top: -1px;"> |
|
|
|
<el-form :inline="true" label-position="top" :model="proofingResultData" |
|
|
|
style="margin-left: 10px;margin-top: -1px;"> |
|
|
|
<el-form-item label="打样结果信息"> |
|
|
|
<el-input type="textarea" v-model="proofingResultData.proofingResultInformation" readonly :rows="2" resize='none' show-word-limit style="width: 760px;height: 20px"></el-input> |
|
|
|
<el-input type="textarea" v-model="proofingResultData.proofingResultInformation" readonly :rows="2" |
|
|
|
resize='none' show-word-limit style="width: 760px;height: 20px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-form :inline="true" label-position="top" :model="proofingResultData" style="margin-left: 10px;margin-top: 26px;"> |
|
|
|
<el-form :inline="true" label-position="top" :model="proofingResultData" |
|
|
|
style="margin-left: 10px;margin-top: 26px;"> |
|
|
|
<el-form-item label="附件清单"> |
|
|
|
<el-table |
|
|
|
:height="90" |
|
|
|
@ -552,7 +579,8 @@ |
|
|
|
: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> |
|
|
|
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]" |
|
|
|
style="width: 100px; height: 80px"/></span> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
@ -568,9 +596,11 @@ |
|
|
|
</el-table> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-form :inline="true" label-position="top" :model="proofingResultData" style="margin-left: 10px;margin-top: 69px;"> |
|
|
|
<el-form :inline="true" label-position="top" :model="proofingResultData" |
|
|
|
style="margin-left: 10px;margin-top: 69px;"> |
|
|
|
<el-form-item label="实际送样日期"> |
|
|
|
<el-date-picker v-model="proofingResultData.actualitySendSamplesDate" readonly type="date" value-format="yyyy-MM-dd" style="width: 240px"></el-date-picker> |
|
|
|
<el-date-picker v-model="proofingResultData.actualitySendSamplesDate" readonly type="date" |
|
|
|
value-format="yyyy-MM-dd" style="width: 240px"></el-date-picker> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="送样方式"> |
|
|
|
<el-input v-model="proofingResultData.sendSamplesMethod" readonly style="width: 240px"></el-input> |
|
|
|
@ -579,29 +609,36 @@ |
|
|
|
<el-input v-model="proofingResultData.deliverGoodsInformation" readonly style="width: 240px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-form :inline="true" label-position="top" :model="proofingResultData" style="margin-left: 10px;margin-top: -2px;"> |
|
|
|
<el-form :inline="true" label-position="top" :model="proofingResultData" |
|
|
|
style="margin-left: 10px;margin-top: -2px;"> |
|
|
|
<el-form-item label="送货备注"> |
|
|
|
<el-input type="textarea" v-model="proofingResultData.deliverGoodsRemark" readonly :rows="2" resize='none' show-word-limit style="width: 760px;height: 20px"></el-input> |
|
|
|
<el-input type="textarea" v-model="proofingResultData.deliverGoodsRemark" readonly :rows="2" resize='none' |
|
|
|
show-word-limit style="width: 760px;height: 20px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-form :inline="true" label-position="top" :model="proofingResultData" style="margin-left: 10px;margin-top: 26px;"> |
|
|
|
<el-form :inline="true" label-position="top" :model="proofingResultData" |
|
|
|
style="margin-left: 10px;margin-top: 26px;"> |
|
|
|
<el-form-item label="客户是否回复"> |
|
|
|
<input type="checkbox" v-if="proofingResultData.proofingResultStatus == 'R'" checked onclick="return false"/> |
|
|
|
<input type="checkbox" v-if="proofingResultData.proofingResultStatus == 'R'" checked |
|
|
|
onclick="return false"/> |
|
|
|
<input type="checkbox" v-if="proofingResultData.proofingResultStatus != 'R'" onclick="return false"/> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="客户确认结果"> |
|
|
|
<el-input v-model="proofingResultData.confirmResults" readonly style="width: 205px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="实际回复日期"> |
|
|
|
<el-date-picker v-model="proofingResultData.actualityReplyDate" readonly type="date" value-format="yyyy-MM-dd" style="width: 240px"></el-date-picker> |
|
|
|
<el-date-picker v-model="proofingResultData.actualityReplyDate" readonly type="date" |
|
|
|
value-format="yyyy-MM-dd" style="width: 240px"></el-date-picker> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="客户确认人"> |
|
|
|
<el-input v-model="proofingResultData.confirmBy" readonly style="width: 205px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-form :inline="true" label-position="top" :model="proofingResultData" style="margin-left: 10px;margin-top: -2px;"> |
|
|
|
<el-form :inline="true" label-position="top" :model="proofingResultData" |
|
|
|
style="margin-left: 10px;margin-top: -2px;"> |
|
|
|
<el-form-item label="客户回复信息"> |
|
|
|
<el-input type="textarea" v-model="proofingResultData.confirmInformation" readonly :rows="2" resize='none' show-word-limit style="width: 760px;height: 20px"></el-input> |
|
|
|
<el-input type="textarea" v-model="proofingResultData.confirmInformation" readonly :rows="2" resize='none' |
|
|
|
show-word-limit style="width: 760px;height: 20px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
</el-tab-pane> |
|
|
|
@ -729,7 +766,8 @@ |
|
|
|
</el-tab-pane> |
|
|
|
<!-- 客户信息页签 --> |
|
|
|
<el-tab-pane label="客户信息" name="customer_information"> |
|
|
|
<el-form label-position="top" :model="customerInformationData" style="margin-left: 10px;margin-top: 5px;margin-right: 10px"> |
|
|
|
<el-form label-position="top" :model="customerInformationData" |
|
|
|
style="margin-left: 10px;margin-top: 5px;margin-right: 10px"> |
|
|
|
<el-row :gutter="20"> |
|
|
|
<el-col :span="8"> |
|
|
|
<div class="grid-content bg-purple"> |
|
|
|
@ -905,7 +943,8 @@ |
|
|
|
: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> |
|
|
|
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]" |
|
|
|
style="width: 100px; height: 80px"/></span> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
</el-table> |
|
|
|
@ -934,7 +973,8 @@ |
|
|
|
: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> |
|
|
|
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]" |
|
|
|
style="width: 100px; height: 80px"/></span> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
</el-table> |
|
|
|
@ -942,7 +982,8 @@ |
|
|
|
<el-button type="primary" @click="contactModelFlag=false">关闭</el-button> |
|
|
|
</el-footer> |
|
|
|
</el-dialog> |
|
|
|
<el-dialog title="人员选择" @open="openDelegateAccess" @close="closeDelegateAccess" v-drag :visible.sync="delegateAccessVisible" width="40vw"> |
|
|
|
<el-dialog title="人员选择" @open="openDelegateAccess" @close="closeDelegateAccess" v-drag |
|
|
|
:visible.sync="delegateAccessVisible" width="40vw"> |
|
|
|
<el-form :inline="true" label-position="top" :model="proofingDelegateAccess"> |
|
|
|
<el-form-item label="编码"> |
|
|
|
<el-input v-model="proofingDelegateAccess.delegateAccess" clearable style="width: 120px"></el-input> |
|
|
|
@ -1014,10 +1055,14 @@ |
|
|
|
import { |
|
|
|
proofingInformationEditStatus, |
|
|
|
searchDelegateAccess, |
|
|
|
searchDelegateAccessByUser |
|
|
|
searchDelegateAccessByUser, submitChange |
|
|
|
} from "../../../api/proofing/proofingInformation"; |
|
|
|
import {getNodeAuthority} from "../../../api/changeManagement/changeManagement"; |
|
|
|
import ProjectInfo from "../quotation/sellForQuotation/projectInfo.vue"; |
|
|
|
|
|
|
|
export default { |
|
|
|
components: { |
|
|
|
ProjectInfo, |
|
|
|
DictDataSelect, |
|
|
|
Chooselist, |
|
|
|
proofingUploadFile |
|
|
|
@ -1030,15 +1075,15 @@ |
|
|
|
this.searchData.projectId = this.searchData.projectId.toUpperCase() |
|
|
|
} |
|
|
|
}, |
|
|
|
modalData: { |
|
|
|
deep: true, |
|
|
|
handler: function (newV, oldV) { |
|
|
|
this.modalData.customerNo = this.modalData.customerNo.toUpperCase() |
|
|
|
this.modalData.projectId = this.modalData.projectId.toUpperCase() |
|
|
|
this.modalData.proofingNo = this.modalData.proofingNo.toUpperCase() |
|
|
|
'modalData.proofingNo'(newV, oldV) { |
|
|
|
if (newV) { |
|
|
|
this.modalData.proofingNo = newV.toUpperCase() |
|
|
|
} |
|
|
|
}, |
|
|
|
'modalData.customerNo'(newV, oldV) { |
|
|
|
if (newV) { |
|
|
|
this.modalData.customerNo = newV.toUpperCase() |
|
|
|
} |
|
|
|
if (oldV) { |
|
|
|
if (!newV) { |
|
|
|
this.modalData.customerDesc = '' |
|
|
|
@ -1050,6 +1095,9 @@ |
|
|
|
} |
|
|
|
}, |
|
|
|
'modalData.projectId'(newV, oldV) { |
|
|
|
if (newV) { |
|
|
|
this.modalData.projectId = newV.toUpperCase() |
|
|
|
} |
|
|
|
if (oldV) { |
|
|
|
if (!newV) { |
|
|
|
this.modalData.projectName = '' |
|
|
|
@ -1070,8 +1118,38 @@ |
|
|
|
set(val) { |
|
|
|
|
|
|
|
} |
|
|
|
}, |
|
|
|
columnFlagByHeader() { |
|
|
|
return (value) => { |
|
|
|
if (this.modalData.flag === '1'){ |
|
|
|
return false |
|
|
|
} |
|
|
|
if (!this.columnFieldList1){ |
|
|
|
return true |
|
|
|
} |
|
|
|
let arr = this.columnFieldList1.filter(a => a.fieldId === value) |
|
|
|
if (arr.length > 0) { |
|
|
|
return arr[0].updateFlag === 'N' |
|
|
|
} |
|
|
|
return true |
|
|
|
} |
|
|
|
}, |
|
|
|
columnFlagByDelegateAccess() { |
|
|
|
return (value) => { |
|
|
|
if (this.modalData.flag === '1'){ |
|
|
|
return false |
|
|
|
} |
|
|
|
if (!this.columnFieldList2){ |
|
|
|
return true |
|
|
|
} |
|
|
|
let arr = this.columnFieldList2.filter(a => a.fieldId === value) |
|
|
|
if (arr.length > 0) { |
|
|
|
return arr[0].updateFlag === 'N' |
|
|
|
} |
|
|
|
return true |
|
|
|
} |
|
|
|
}, |
|
|
|
}, |
|
|
|
data() { |
|
|
|
return { |
|
|
|
selectionDelegateAccess: [], |
|
|
|
@ -1115,7 +1193,8 @@ |
|
|
|
priorityLevel: '', |
|
|
|
proofingNo: '', |
|
|
|
page: 1, |
|
|
|
limit: 10 |
|
|
|
limit: 10, |
|
|
|
menuId: this.$route.meta.menuId, |
|
|
|
}, |
|
|
|
// 其它 |
|
|
|
dataListLoading: false, |
|
|
|
@ -1164,7 +1243,12 @@ |
|
|
|
createDate: '', |
|
|
|
createBy: '', |
|
|
|
updateDate: '', |
|
|
|
updateBy: '' |
|
|
|
updateBy: '', |
|
|
|
nodeConclusion: '', |
|
|
|
stepId: '', |
|
|
|
rejectFlag: '', |
|
|
|
rejectStepId: '', |
|
|
|
isReject: '' |
|
|
|
}, |
|
|
|
proofingDetailData: { |
|
|
|
technicalConsiderations: '', |
|
|
|
@ -2055,7 +2139,10 @@ |
|
|
|
// 项目集合 |
|
|
|
projectList: [], |
|
|
|
addressModelFlag: false, |
|
|
|
contactModelFlag: false |
|
|
|
contactModelFlag: false, |
|
|
|
|
|
|
|
columnFieldList1: [], |
|
|
|
columnFieldList2: [], |
|
|
|
} |
|
|
|
}, |
|
|
|
mounted() { |
|
|
|
@ -2066,6 +2153,38 @@ |
|
|
|
}) |
|
|
|
}, |
|
|
|
created() { |
|
|
|
if (this.$route.params.type){ |
|
|
|
let params = { |
|
|
|
site: this.$route.params.site, |
|
|
|
proofingNo: this.$route.params.docNo, |
|
|
|
limit: this.pageSize, |
|
|
|
page : 1, |
|
|
|
} |
|
|
|
this.dataListLoading = true |
|
|
|
proofingInformationSearch(params).then(({data}) => { |
|
|
|
if (data && data.code === 0) { |
|
|
|
this.dataList = data.page.list |
|
|
|
this.totalPage = data.page.totalCount |
|
|
|
this.$refs.selectDiv.setLengthAll(this.dataList.length) |
|
|
|
// 判断是否全部存在数据 |
|
|
|
if (this.totalPage > 0) { |
|
|
|
//设置选中行 |
|
|
|
this.$refs.proofingTable.setCurrentRow(this.dataList[0]) |
|
|
|
//加载当前的页签的table |
|
|
|
this.refreshCurrentTabTable() |
|
|
|
this.proofingClickRow(this.dataList[0]) |
|
|
|
this.updateModal(this.dataList[0]) |
|
|
|
} else { |
|
|
|
//设置选中行 |
|
|
|
this.$refs.proofingTable.setCurrentRow({}) |
|
|
|
// 加载当前的页签的table |
|
|
|
this.refreshCurrentTabTable() |
|
|
|
this.testClickRow({}) |
|
|
|
} |
|
|
|
} |
|
|
|
this.dataListLoading = false |
|
|
|
}) |
|
|
|
} |
|
|
|
this.getDataList(); |
|
|
|
}, |
|
|
|
methods: { |
|
|
|
@ -2262,7 +2381,8 @@ |
|
|
|
* 报价信息编辑模态框 |
|
|
|
* @param row |
|
|
|
*/ |
|
|
|
updateModal (row) { |
|
|
|
async updateModal (row) { |
|
|
|
await this.getNodeAuthority(row) |
|
|
|
this.modalData = { |
|
|
|
flag: '2', |
|
|
|
title: '打样编辑-'+row.proofingNo, |
|
|
|
@ -2302,7 +2422,12 @@ |
|
|
|
proofingStatus: row.proofingStatus, |
|
|
|
proofingResultStatus: row.proofingResultStatus, |
|
|
|
nextToDo: row.nextToDo, |
|
|
|
updateBy: this.$store.state.user.name |
|
|
|
updateBy: this.$store.state.user.name, |
|
|
|
nodeConclusion: '', |
|
|
|
stepId: row.stepId, |
|
|
|
rejectFlag: row.rejectFlag, |
|
|
|
rejectStepId: row.rejectStepId, |
|
|
|
isReject: row.isReject |
|
|
|
} |
|
|
|
this.searchDelegateAccessByUser(); |
|
|
|
this.modalDisableFlag = true |
|
|
|
@ -2313,8 +2438,13 @@ |
|
|
|
/** |
|
|
|
* 获取项目物料列表 |
|
|
|
*/ |
|
|
|
getProjectPartList () { |
|
|
|
openModalDialog() { |
|
|
|
if (this.modalData.proofingNo) { |
|
|
|
this.searchDelegateAccess(); |
|
|
|
} |
|
|
|
this.getProjectPartList(); |
|
|
|
}, |
|
|
|
getProjectPartList() { |
|
|
|
if (!this.modalData.projectId) { |
|
|
|
this.projectPartList = []; |
|
|
|
return |
|
|
|
@ -2388,7 +2518,8 @@ |
|
|
|
message: '操作成功', |
|
|
|
type: 'success', |
|
|
|
duration: 1500, |
|
|
|
onClose: () => {} |
|
|
|
onClose: () => { |
|
|
|
} |
|
|
|
}) |
|
|
|
} else { |
|
|
|
this.$alert(data.msg, '错误', { |
|
|
|
@ -2406,7 +2537,8 @@ |
|
|
|
message: '操作成功', |
|
|
|
type: 'success', |
|
|
|
duration: 1500, |
|
|
|
onClose: () => {} |
|
|
|
onClose: () => { |
|
|
|
} |
|
|
|
}) |
|
|
|
} else { |
|
|
|
this.$alert(data.msg, '错误', { |
|
|
|
@ -2488,7 +2620,8 @@ |
|
|
|
message: '操作成功', |
|
|
|
type: 'success', |
|
|
|
duration: 1500, |
|
|
|
onClose: () => {} |
|
|
|
onClose: () => { |
|
|
|
} |
|
|
|
}) |
|
|
|
} else { |
|
|
|
this.$alert(data.msg, '错误', { |
|
|
|
@ -2622,7 +2755,8 @@ |
|
|
|
message: '操作成功', |
|
|
|
type: 'success', |
|
|
|
duration: 1500, |
|
|
|
onClose: () => {} |
|
|
|
onClose: () => { |
|
|
|
} |
|
|
|
}) |
|
|
|
} else { |
|
|
|
this.$alert(data.msg, '错误', { |
|
|
|
@ -2733,7 +2867,8 @@ |
|
|
|
message: '操作成功', |
|
|
|
type: 'success', |
|
|
|
duration: 1500, |
|
|
|
onClose: () => {} |
|
|
|
onClose: () => { |
|
|
|
} |
|
|
|
}) |
|
|
|
} else { |
|
|
|
this.$alert(data.msg, '错误', { |
|
|
|
@ -2848,7 +2983,8 @@ |
|
|
|
message: '操作成功', |
|
|
|
type: 'success', |
|
|
|
duration: 1500, |
|
|
|
onClose: () => {} |
|
|
|
onClose: () => { |
|
|
|
} |
|
|
|
}) |
|
|
|
} else { |
|
|
|
this.$alert(data.msg, '错误', { |
|
|
|
@ -2932,7 +3068,8 @@ |
|
|
|
message: '操作成功', |
|
|
|
type: 'success', |
|
|
|
duration: 1500, |
|
|
|
onClose: () => {} |
|
|
|
onClose: () => { |
|
|
|
} |
|
|
|
}) |
|
|
|
} else { |
|
|
|
this.$alert(data.msg, '错误', { |
|
|
|
@ -3127,7 +3264,7 @@ |
|
|
|
fields() { |
|
|
|
let json = '{' |
|
|
|
this.columnList.forEach((item, index) => { |
|
|
|
if (index == this.columnList.length - 1) { |
|
|
|
if (index === this.columnList.length - 1) { |
|
|
|
json += '"' + item.columnLabel + '"' + ':' + '"' + item.columnProp + '"' |
|
|
|
} else { |
|
|
|
json += '"' + item.columnLabel + '"' + ':' + '"' + item.columnProp + '"' + ',' |
|
|
|
@ -3228,9 +3365,16 @@ |
|
|
|
} |
|
|
|
}, |
|
|
|
updateModalStatus(row, status) { |
|
|
|
this.$confirm(`是否确认下达?`, '提示', { |
|
|
|
confirmButtonText: '确定', |
|
|
|
cancelButtonText: '取消', |
|
|
|
type: 'warning' |
|
|
|
}).then(() => { |
|
|
|
let params = JSON.parse(JSON.stringify(row)) |
|
|
|
params.proofingResultStatus = status; |
|
|
|
params.proofingStatus = '下达'; |
|
|
|
params.userName = this.$store.state.user.name |
|
|
|
params.menuId = this.$route.meta.menuId |
|
|
|
proofingInformationEditStatus(params).then(({data}) => { |
|
|
|
if (data && data.code === 0) { |
|
|
|
this.getDataList() |
|
|
|
@ -3242,6 +3386,7 @@ |
|
|
|
}) |
|
|
|
} |
|
|
|
}) |
|
|
|
}) |
|
|
|
}, |
|
|
|
searchDelegateAccessByUser() { |
|
|
|
// 角色 ROO7 的用户 |
|
|
|
@ -3304,8 +3449,84 @@ |
|
|
|
}).catch((error) => { |
|
|
|
this.$message.error(error) |
|
|
|
}) |
|
|
|
}, |
|
|
|
|
|
|
|
// 同意提交 |
|
|
|
agreeSubmit() { |
|
|
|
this.$confirm(`是否确认提交?`, '提示', { |
|
|
|
confirmButtonText: '确定', |
|
|
|
cancelButtonText: '取消', |
|
|
|
type: 'warning' |
|
|
|
}).then(() => { |
|
|
|
this.modalData.nodeConclusion = 'Y' |
|
|
|
this.submitData() |
|
|
|
}) |
|
|
|
}, |
|
|
|
|
|
|
|
// 驳回提交 |
|
|
|
rejectSubmit() { |
|
|
|
this.$confirm(`是否确认驳回?`, '提示', { |
|
|
|
confirmButtonText: '确定', |
|
|
|
cancelButtonText: '取消', |
|
|
|
type: 'warning' |
|
|
|
}).then(() => { |
|
|
|
this.modalData.nodeConclusion = 'N' |
|
|
|
this.submitData() |
|
|
|
}) |
|
|
|
}, |
|
|
|
|
|
|
|
// 提交 |
|
|
|
submitData() { |
|
|
|
if (this.columnFieldList1 ){ |
|
|
|
for (let i = 0; i < this.columnFieldList1.length; i++) { |
|
|
|
let row = this.columnFieldList1[i] |
|
|
|
if (!this.modalData[row.fieldId] && row.required === 'Y'){ |
|
|
|
this.$message.error(row.fieldName + '不能为空') |
|
|
|
return |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
if (this.columnFieldList2 ){ |
|
|
|
if (!this.delegateAccessName) { |
|
|
|
this.$message.error('Delegate Access不能为空') |
|
|
|
return; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
let tempData = { |
|
|
|
...this.modalData, |
|
|
|
userName:this.$store.state.user.name, |
|
|
|
menuId: this.$route.meta.menuId, |
|
|
|
} |
|
|
|
submitChange(tempData).then(({data}) => { |
|
|
|
if (data && data.code === 0) { |
|
|
|
this.getDataList() |
|
|
|
this.$message({message: '操作成功', type: 'success'}) |
|
|
|
this.submitModalFlag = false |
|
|
|
this.modalFlag = false |
|
|
|
} else { |
|
|
|
this.$alert(data.msg, '错误', { |
|
|
|
confirmButtonText: '确定' |
|
|
|
}) |
|
|
|
} |
|
|
|
}) |
|
|
|
}, |
|
|
|
|
|
|
|
// 获取流程的配置权限 |
|
|
|
async getNodeAuthority(row) { |
|
|
|
let tempData = { |
|
|
|
site: row.site, |
|
|
|
stepId: row.stepId, |
|
|
|
menuId: this.$route.meta.menuId |
|
|
|
} |
|
|
|
await getNodeAuthority(tempData).then(({data}) => { |
|
|
|
if (data && data.code === 0) { |
|
|
|
this.columnFieldList1 = data.rows.plm_proofing_information |
|
|
|
this.columnFieldList2 = data.rows.plm_proofing_delegate_access |
|
|
|
} |
|
|
|
}) |
|
|
|
}, |
|
|
|
} |
|
|
|
} |
|
|
|
</script> |
|
|
|
|
|
|
|
@ -3314,6 +3535,7 @@ |
|
|
|
padding: 0px !important; |
|
|
|
height: 300px; |
|
|
|
} |
|
|
|
|
|
|
|
.right /deep/ .el-input__inner { |
|
|
|
text-align: right; |
|
|
|
} |
|
|
|
@ -3323,6 +3545,7 @@ |
|
|
|
-webkit-appearance: none; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
/deep/ .inlineNumber input[type="number"] { |
|
|
|
-moz-appearance: textfield; |
|
|
|
padding-right: 5px !important; |
|
|
|
|