<template>
|
<el-dialog
|
width="75%"
|
top="10vh"
|
:fullscreen="isFullScreen"
|
:close-on-click-modal="false"
|
:visible.sync="visible"
|
v-if="visible"
|
>
|
<template slot="title">
|
<i
|
:class="isFullScreen ? 'icon-zuixiaohua' : 'icon-quanpingzuidahua'"
|
style="position: absolute; right: 52px; float: right"
|
@click="fullscreen"
|
>
|
</i>
|
<span>销售订单</span>
|
<!-- <span>{{ title }}</span>-->
|
</template>
|
|
<el-form
|
:model="dataForm"
|
:rules="dataRule"
|
ref="dataForm"
|
label-width="100px"
|
class="l-mes"
|
:disabled="!editable"
|
>
|
<el-tabs type="border-card" ref="tabs">
|
<el-tab-pane label="主要" type="card">
|
<el-row>
|
<el-col :span="6">
|
<el-form-item label="同步数据来源" prop="sourceId">
|
<el-input
|
v-model="dataForm.sourceId"
|
placeholder=""
|
:disabled="!ediSource"
|
></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="6">
|
<el-form-item label="订单号" prop="customerOrderNo">
|
<el-input
|
v-model="dataForm.customerOrderNo"
|
@blur="dataForm.customerOrderNo = $event.target.value.trim()"
|
placeholder=""
|
:disabled="!ediSource"
|
></el-input>
|
</el-form-item>
|
</el-col>
|
<!-- <el-col :span="6">-->
|
<!-- <el-form-item label="OTC行号" prop="otcLineNo">-->
|
<!-- <el-input-->
|
<!-- v-model="dataForm.otcLineNo"-->
|
<!-- placeholder=""-->
|
<!-- disabled-->
|
<!-- ></el-input>-->
|
<!-- </el-form-item>-->
|
<!-- </el-col>-->
|
<!-- <el-col :span="6">-->
|
<!-- <el-form-item label="GSM行号" prop="coLineNo">-->
|
<!-- <el-input-->
|
<!-- v-model="dataForm.coLineNo"-->
|
<!-- placeholder=""-->
|
<!-- disabled-->
|
<!-- ></el-input>-->
|
<!-- </el-form-item>-->
|
<!-- </el-col>-->
|
<el-col :span="6">
|
<el-form-item label="客户编号" prop="customerNo">
|
<el-input
|
v-model="dataForm.customerNo"
|
@blur="dataForm.customerNo = $event.target.value.trim()"
|
placeholder=""
|
:disabled="!ediSource"
|
></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="6">
|
<el-form-item label="客户名称" prop="customerName">
|
<el-input
|
v-model="dataForm.customerName"
|
@blur="dataForm.customerName = $event.target.value.trim()"
|
placeholder=""
|
:disabled="!ediSource"
|
></el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<el-row>
|
<el-col :span="6">
|
<el-form-item label="客户的零件号" prop="customerPartNo">
|
<el-input
|
v-model="dataForm.customerPartNo"
|
placeholder=""
|
disabled
|
></el-input>
|
</el-form-item>
|
</el-col>
|
<!-- <el-col :span="6">-->
|
<!-- <el-form-item label="IFS行号" prop="ifsLineNo">-->
|
<!-- <el-input-->
|
<!-- v-model="dataForm.ifsLineNo"-->
|
<!-- placeholder=""-->
|
<!-- disabled-->
|
<!-- ></el-input>-->
|
<!-- </el-form-item>-->
|
<!-- </el-col>-->
|
<el-col :span="6">
|
<el-form-item label="客户订单状态" prop="coState">
|
<el-select
|
v-model="dataForm.coState"
|
placeholder=""
|
filterable
|
style="width: 100%"
|
:disabled="!ediSource"
|
>
|
<el-option
|
v-for="item in coStates"
|
:key="item.id"
|
:label="item.label"
|
:value="item.value"
|
:disabled="!ediSource"
|
/>
|
</el-select>
|
</el-form-item>
|
</el-col>
|
<el-col :span="6">
|
<el-form-item label="行号" prop="coLineNo">
|
<el-input
|
v-model="dataForm.coLineNo"
|
placeholder=""
|
:disabled="!ediSource"
|
></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="6">
|
<el-form-item label="客户的零件规格" prop="customerPartName">
|
<el-input
|
v-model="dataForm.customerPartName"
|
placeholder=""
|
disabled
|
></el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<!-- <el-row>-->
|
|
<!-- <el-col :span="6">-->
|
<!-- <el-form-item label="IFS交货号" prop="ifsDeliveryNo">-->
|
<!-- <el-input-->
|
<!-- v-model="dataForm.ifsDeliveryNo"-->
|
<!-- placeholder=""-->
|
<!-- disabled-->
|
<!-- ></el-input>-->
|
<!-- </el-form-item>-->
|
<!-- </el-col>-->
|
<!-- </el-row>-->
|
<el-row>
|
<el-col :span="6">
|
<el-form-item label="零件号" prop="partNo">
|
<el-input v-model="dataForm.partNo" placeholder="" readonly>
|
<el-button
|
slot="append"
|
icon="el-icon-search"
|
@click="openPartDialog()"
|
></el-button>
|
</el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="6">
|
<el-form-item label="销售数量" prop="otcQuantity">
|
<el-input
|
v-model="dataForm.otcQuantity"
|
placeholder=""
|
:disabled="!ediSource"
|
></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="6">
|
<el-form-item label="客户零件名称" prop="productName">
|
<el-input
|
v-model="dataForm.productName"
|
placeholder=""
|
disabled
|
>
|
</el-input>
|
</el-form-item>
|
</el-col>
|
<!-- <el-col :span="6">-->
|
<!-- <el-form-item label="IFS行项号" prop="ifsLineItemNo">-->
|
<!-- <el-input-->
|
<!-- v-model="dataForm.ifsLineItemNo"-->
|
<!-- placeholder=""-->
|
<!-- disabled-->
|
<!-- ></el-input>-->
|
<!-- </el-form-item>-->
|
<!-- </el-col>-->
|
<el-col :span="6">
|
<el-form-item label="销售件号" prop="salesPartNo">
|
<el-input
|
v-model="dataForm.salesPartNo"
|
placeholder=""
|
disabled
|
>
|
<el-button
|
slot="append"
|
icon="el-icon-search"
|
@click="openSalesPartDialog()"
|
v-show="dataForm.id"
|
></el-button>
|
</el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<el-row>
|
<el-col :span="6">
|
<el-form-item label="销售件描述" prop="salesPartName">
|
<el-input
|
v-model="dataForm.salesPartName"
|
placeholder=""
|
disabled
|
>
|
<el-button
|
slot="append"
|
icon="el-icon-search"
|
@click="openSalesPartDialog()"
|
v-show="dataForm.id"
|
></el-button>
|
</el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="6">
|
<el-form-item label="制造属性" prop="manufactureAttr">
|
<el-select
|
v-model="dataForm.manufactureAttr"
|
placeholder=""
|
style="width: 100%"
|
:disabled="!ediSource"
|
>
|
<el-option
|
v-for="item in manufactureAttrs"
|
:key="item.value"
|
:label="item.label"
|
:value="item.value"
|
:disabled="!ediSource"
|
/>
|
</el-select>
|
</el-form-item>
|
</el-col>
|
<el-col :span="6">
|
<el-form-item label="工艺文件号" prop="docNumber">
|
<el-input
|
v-model="dataForm.docNumber"
|
placeholder=""
|
disabled
|
></el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<el-row>
|
<el-col :span="6">
|
<el-form-item label="期望交货时间" prop="wantedDeliveryDate">
|
<el-date-picker
|
v-model="dataForm.wantedDeliveryDate"
|
style="width: 100%"
|
type="datetime"
|
value-format="yyyy-MM-dd HH:mm:ss"
|
:disabled="!ediSource"
|
>
|
</el-date-picker>
|
</el-form-item>
|
</el-col>
|
<el-col :span="6">
|
<el-form-item label="计划交货时间" prop="plannedDeliveryDate">
|
<el-date-picker
|
v-model="dataForm.plannedDeliveryDate"
|
style="width: 100%"
|
type="datetime"
|
value-format="yyyy-MM-dd HH:mm:ss"
|
>
|
</el-date-picker>
|
</el-form-item>
|
</el-col>
|
<el-col :span="6">
|
<el-form-item label="客户零件规格" prop="customerPartSpec">
|
<el-input
|
v-model="dataForm.customerPartSpec"
|
placeholder=""
|
disabled
|
></el-input>
|
</el-form-item>
|
</el-col>
|
<!-- <el-col :span="6">-->
|
<!-- <el-form-item label="事业部" prop="division">-->
|
<!-- <el-input-->
|
<!-- v-model="dataForm.division"-->
|
<!-- placeholder=""-->
|
<!-- disabled-->
|
<!-- ></el-input>-->
|
<!-- </el-form-item>-->
|
<!-- </el-col>-->
|
</el-row>
|
<el-row>
|
<el-col :span="6">
|
<el-form-item label="印字方式" prop="printType">
|
<el-input
|
v-model="dataForm.printType"
|
placeholder=""
|
disabled
|
></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="6">
|
<el-form-item label="印字要求" prop="printingRequirements">
|
<el-input
|
v-model="dataForm.printingRequirements"
|
placeholder=""
|
disabled
|
></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="6">
|
<el-form-item label="印字内容" prop="printContent">
|
<el-input
|
v-model="dataForm.printContent"
|
placeholder=""
|
disabled
|
></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="6">
|
<el-form-item label="包装要求" prop="packageRequire">
|
<el-input
|
v-model="dataForm.packageRequire"
|
placeholder=""
|
disabled
|
></el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<el-row>
|
<el-col :span="6">
|
<el-form-item label="质量要求" prop="qualityRequire">
|
<el-input
|
v-model="dataForm.qualityRequire"
|
placeholder=""
|
disabled
|
></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="6">
|
<el-form-item label="生产需求说明" prop="otherProductRequire">
|
<el-input
|
v-model="dataForm.otherProductRequire"
|
placeholder=""
|
disabled
|
></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="6">
|
<el-form-item label="系统" prop="divisionSystem">
|
<el-input
|
v-model="dataForm.divisionSystem"
|
placeholder=""
|
disabled
|
></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="6">
|
<el-form-item label="收货地址" prop="shippingAddress">
|
<el-input
|
v-model="dataForm.shippingAddress"
|
placeholder=""
|
disabled
|
></el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<el-row>
|
<el-col :span="6">
|
<el-form-item label="业务员" prop="salesmanName">
|
<el-input
|
v-model="dataForm.salesmanName"
|
placeholder=""
|
disabled
|
></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="6">
|
<el-form-item label="盘长要求" prop="lengthRequirement">
|
<el-input
|
v-model="dataForm.lengthRequirement"
|
placeholder=""
|
disabled
|
></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="6">
|
<el-form-item label="最终客户" prop="remark">
|
<el-input
|
v-model="dataForm.finalCustomerName"
|
placeholder=""
|
disabled
|
></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="6">
|
<el-form-item label="产品分组" prop="remark">
|
<el-input
|
v-model="dataForm.productGroup"
|
placeholder=""
|
disabled
|
></el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<el-row>
|
<el-col :span="6">
|
<el-form-item label="产品类型" prop="remark">
|
<el-input
|
v-model="dataForm.productType"
|
placeholder=""
|
disabled
|
></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="6">
|
<el-form-item label="采集性质" prop="centralizedMiningProperty">
|
<el-input
|
v-model="dataForm.centralizedMiningProperty"
|
placeholder=""
|
disabled
|
></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="6">
|
<el-form-item label="订单行备注" prop="remark">
|
<el-input
|
v-model="dataForm.remark"
|
placeholder=""
|
disabled
|
></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="6">
|
<el-form-item label="订单头备注" prop="comment">
|
<el-input
|
v-model="dataForm.comment"
|
placeholder=""
|
disabled
|
></el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<el-row>
|
<el-col :span="6">
|
<el-form-item label="OTC推送状态" prop="remark">
|
<span>{{
|
dataForm.otcPartSync != null
|
? dataForm.otcPartSync
|
? '已同步'
|
: '未同步'
|
: ''
|
}}</span>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<el-row>
|
<el-col :span="24">
|
<el-form-item label="订单说明" prop="orderDescription">
|
<el-input
|
type="textarea"
|
:rows="3"
|
placeholder=""
|
v-model="dataForm.orderDescription"
|
maxlength="500"
|
show-word-limit
|
>
|
</el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<el-card header="订单参数" shadow="never">
|
<el-row>
|
<el-form-item
|
style="float:left;width: 50%"
|
v-for="(item, index) in orderParamList"
|
:property="item.renameField"
|
:label="item.item"
|
:key="index"
|
><el-input
|
v-model="dataForm[item.renameField]"
|
placeholder=""
|
:disabled="!ediSource"
|
></el-input
|
></el-form-item>
|
</el-row>
|
</el-card>
|
</el-tab-pane>
|
<el-tab-pane label="附件" type="card">
|
<el-table :data="fileList" style="width: 100%" height="500">
|
<el-table-column prop="original" label="文件名" align="center">
|
</el-table-column>
|
<el-table-column label="操作" width="100" align="center">
|
<template slot-scope="scope">
|
<span
|
style="cursor:pointer;color:#409eff;"
|
@click="uploadFile(scope.row)"
|
>下载</span
|
>
|
</template>
|
</el-table-column>
|
</el-table>
|
</el-tab-pane>
|
<el-tab-pane label="产出批次" v-if="false" type="card">
|
<div style="display: flex;justify-content:flex-end;">
|
<div></div>
|
</div>
|
<el-table :data="outputBatchTableData" height="400px">
|
<el-table-column
|
prop="otcCustomerOrderNo"
|
align="center"
|
label="OTC订单号"
|
show-overflow-tooltip
|
>
|
<template slot-scope="scope">
|
<span>{{ scope.row.otcCustomerOrderNo }}</span>
|
</template>
|
</el-table-column>
|
<el-table-column
|
prop="otcLineNo"
|
align="center"
|
label="OTC行项号"
|
show-overflow-tooltip
|
>
|
</el-table-column>
|
<el-table-column
|
prop="snNo"
|
align="center"
|
label="SN号"
|
show-overflow-tooltip
|
>
|
</el-table-column>
|
<el-table-column prop="qty" align="center" label="段长">
|
</el-table-column>
|
<el-table-column prop="meterMark" align="center" label="米标">
|
</el-table-column>
|
<el-table-column prop="crccNumber" align="center" label="CRCC号">
|
</el-table-column>
|
<el-table-column prop="company" align="center" label="公司名称">
|
</el-table-column>
|
<el-table-column
|
prop="finishedProductSpecification"
|
align="center"
|
label="成品规格型号"
|
>
|
</el-table-column>
|
<el-table-column prop="ymd" align="center" label="年月日">
|
</el-table-column>
|
<el-table-column prop="begining" align="center" label="始端">
|
</el-table-column>
|
<el-table-column prop="ending" align="center" label="终端">
|
</el-table-column>
|
<el-table-column prop="purpose" align="center" label="用途">
|
</el-table-column>
|
<el-table-column prop="selfNo" align="center" label="自编号">
|
</el-table-column>
|
|
<el-table-column prop="direction" align="center" label="去向">
|
</el-table-column>
|
<el-table-column prop="section" align="center" label="区间">
|
</el-table-column>
|
<el-table-column prop="print" align="center" label="印字">
|
</el-table-column>
|
<el-table-column
|
prop="endClassification"
|
align="center"
|
label="端别"
|
>
|
</el-table-column>
|
<el-table-column
|
prop="orderUploadRemark"
|
align="center"
|
label="备注"
|
>
|
</el-table-column>
|
</el-table>
|
</el-tab-pane>
|
<el-tab-pane label="客户信息" type="card" v-if="false">
|
<el-row>
|
<el-col :span="12">
|
<el-form-item
|
label="客户采购订单号"
|
prop="customerPoNo"
|
label-width="180px"
|
>
|
<el-input
|
v-model="dataForm.customerPoNo"
|
placeholder=""
|
></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="12">
|
<el-form-item
|
label="客户采购订单行号"
|
prop="customerPoLineNo"
|
label-width="180px"
|
>
|
<el-input
|
v-model="dataForm.customerPoLineNo"
|
placeholder=""
|
></el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<el-row>
|
<el-col :span="12">
|
<el-form-item
|
label="客户采购订单下达号"
|
prop="customerPoRelNo"
|
label-width="180px"
|
>
|
<el-input
|
v-model="dataForm.customerPoRelNo"
|
placeholder=""
|
></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="12">
|
<el-form-item
|
label="客户零件号"
|
prop="customerPartNo"
|
label-width="180px"
|
>
|
<el-input
|
v-model="dataForm.customerPartNo"
|
placeholder=""
|
></el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<el-row>
|
<el-col :span="12">
|
<el-form-item
|
label="客户零件名称"
|
prop="customerPartName"
|
label-width="180px"
|
>
|
<el-input
|
v-model="dataForm.customerPartName"
|
placeholder=""
|
></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="12">
|
<el-form-item
|
label="客户销售数量"
|
prop="customerPartBuyQty"
|
label-width="180px"
|
>
|
<el-input
|
v-model="dataForm.customerPartBuyQty"
|
placeholder=""
|
></el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<el-row>
|
<el-col :span="12">
|
<el-form-item
|
label="客户计量单位"
|
prop="customerPartUnitMeas"
|
label-width="180px"
|
>
|
<el-select
|
v-model="dataForm.customerPartUnitMeas"
|
placeholder=""
|
filterable
|
style="width: 100%"
|
>
|
<el-option
|
v-for="item in units"
|
:key="item.id"
|
:label="item.label"
|
:value="item.value"
|
/>
|
</el-select>
|
</el-form-item>
|
</el-col>
|
<el-col :span="12">
|
<el-form-item
|
label="客户零件转换系数"
|
prop="custPartConvFactor"
|
label-width="180px"
|
>
|
<el-input
|
v-model="dataForm.custPartConvFactor"
|
placeholder=""
|
></el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<el-row>
|
<el-col :span="12">
|
<el-form-item
|
label="客户零件反向转换系数"
|
prop="custPartInvertConvFactor"
|
label-width="180px"
|
>
|
<el-input
|
v-model="dataForm.custPartInvertConvFactor"
|
placeholder=""
|
></el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
</el-tab-pane>
|
<el-tab-pane label="工艺附件" type="card">
|
<div style="display: flex;justify-content:flex-end;">
|
<div></div>
|
</div>
|
<div
|
v-loading="progrecessFileLoading"
|
element-loading-text="请稍等,文件上传中"
|
>
|
<el-upload
|
drag
|
ref="upload"
|
action="/mes/plan/customerOrder/upload"
|
:auto-upload="true"
|
:headers="headers"
|
:before-upload="submitUpload"
|
:on-success="uploadSuccess"
|
:data="paramData"
|
:with-credentials="true"
|
:show-file-list="false"
|
>
|
<i class="el-icon-upload"></i>
|
<div class="el-upload__text">
|
将文件拖到此处,或<em>点击上传</em>
|
</div>
|
</el-upload>
|
</div>
|
|
<el-table :data="processConfigFileTableData" height="400px">
|
<el-table-column
|
prop="orderNumber"
|
align="center"
|
label="订单号"
|
show-overflow-tooltip
|
>
|
</el-table-column>
|
<el-table-column prop="lineNumber" align="center" label="行号">
|
</el-table-column>
|
<el-table-column
|
prop="originalFileName"
|
align="center"
|
label="原文件名"
|
>
|
</el-table-column>
|
<el-table-column prop="fileName" align="center" label="文件名">
|
</el-table-column>
|
<el-table-column prop="createUser" align="center" label="上传人">
|
</el-table-column>
|
<el-table-column
|
prop="createTime"
|
align="center"
|
label="上传时间"
|
show-overflow-tooltip
|
>
|
</el-table-column>
|
<el-table-column prop="updateUser" align="center" label="更新人">
|
</el-table-column>
|
<el-table-column
|
prop="updateTime"
|
align="center"
|
label="更新时间"
|
show-overflow-tooltip
|
>
|
</el-table-column>
|
<!-- <el-table-column align="center" label="是否同步工艺配置单">-->
|
<!-- <template slot-scope="scope">-->
|
<!-- <el-switch-->
|
<!-- :value="scope.row.effectiveRange"-->
|
<!-- active-value="1"-->
|
<!-- inactive-value="0"-->
|
<!-- @input="handleInput(scope.row)"-->
|
<!-- :disabled="scope.row.lineNumber !== dataForm.otcLineNo"-->
|
<!-- />-->
|
<!-- </template>-->
|
<!-- </el-table-column>-->
|
<el-table-column fixed="right" align="center" label="操作">
|
<template slot-scope="scope">
|
<el-button
|
@click="synchronizeFile(scope.row)"
|
type="text"
|
size="small"
|
:disabled="scope.row.lineNumber !== dataForm.otcLineNo"
|
>同步</el-button
|
>
|
<el-button
|
@click="delProcessConfigFile(scope.row)"
|
type="text"
|
size="small"
|
:disabled="scope.row.lineNumber !== dataForm.otcLineNo"
|
>删除</el-button
|
>
|
<el-button
|
@click="downloadProcessConfigFile(scope.row)"
|
type="text"
|
size="small"
|
>下载</el-button
|
>
|
</template>
|
</el-table-column>
|
</el-table>
|
</el-tab-pane>
|
<el-tab-pane
|
label="工艺配置单"
|
type="card"
|
style="height: 650px;overflow-y: auto"
|
>
|
<div
|
style="margin: 5px 20px;display: flex;justify-content:space-between;"
|
>
|
<el-radio-group
|
v-model="configContent.modelType"
|
:disabled="configContent.id ? true : false"
|
@change="changeModal"
|
>
|
<el-radio v-model="radio" label="01">模板1</el-radio>
|
<el-radio v-model="radio" label="02">模板2</el-radio>
|
</el-radio-group>
|
|
<span style="right: 0;">
|
<el-button
|
:disabled="!configContent.id"
|
type="danger"
|
size="mini"
|
v-thinclick="`deleteConfig`"
|
>
|
删除
|
</el-button>
|
<el-button type="success" size="mini" v-thinclick="`saveConfig`">
|
保存
|
</el-button>
|
<el-button
|
type="success"
|
size="mini"
|
v-thinclick="`saveConfigForAll`"
|
>
|
保存并应用至其他订单行
|
</el-button>
|
</span>
|
</div>
|
<el-divider content-position="left">配置单内容</el-divider>
|
<!--模板1-->
|
<div
|
class="node-content-remark"
|
v-if="configContent.modelType == configTypes[0].value"
|
>
|
<el-form
|
class="configform1"
|
:inline="true"
|
ref="form"
|
label-width="80px"
|
>
|
<el-form-item label="订单编号">
|
<el-input v-model="configContent.proNo" readonly></el-input>
|
</el-form-item>
|
<el-form-item label="项目名称">
|
<el-input v-model="configContent.proName" readonly></el-input>
|
</el-form-item>
|
</el-form>
|
<!-- 生产要求描述:-->
|
<rich-text
|
editor-id="editor1"
|
:richContent="configContent.remark1"
|
@contentChange="setConfigRemark1"
|
placeholder="请输入生产要求描述"
|
></rich-text>
|
<!-- 印字举例:-->
|
<!-- <rich-text-->
|
<!-- editor-id="editor2"-->
|
<!-- :richContent="configContent.remark2"-->
|
<!-- @contentChange="setConfigRemark2"-->
|
<!-- placeholder="请输入印字举例"-->
|
<!-- ></rich-text>-->
|
<!-- 注意:-->
|
<!-- <rich-text-->
|
<!-- editor-id="editor3"-->
|
<!-- :richContent="configContent.remark3"-->
|
<!-- @contentChange="setConfigRemark3"-->
|
<!-- placeholder="请输入注意"-->
|
<!-- ></rich-text>-->
|
<!-- 备注:-->
|
<!-- <rich-text-->
|
<!-- editor-id="editor4"-->
|
<!-- :richContent="configContent.remark4"-->
|
<!-- @contentChange="setConfigRemark4"-->
|
<!-- placeholder="请输入备注"-->
|
<!-- ></rich-text>-->
|
</div>
|
|
<!--模板2-->
|
<div
|
class="node-content-remark"
|
v-if="configContent.modelType == configTypes[1].value"
|
>
|
<div
|
class="node-content-remark2"
|
style="width: 80%;margin-left: 30px;"
|
>
|
<el-button type="primary" size="mini" @click="getHistoryData"
|
>获取</el-button
|
>
|
<el-form
|
class="configform2"
|
:inline="true"
|
ref="form"
|
label-width="80px"
|
>
|
<el-form-item label="合同编号:" style="width: 40%">
|
<el-input v-model="configContent.proNo" readonly></el-input>
|
</el-form-item>
|
<el-form-item label="项目名称:" style="width: 40%">
|
<el-input v-model="configContent.proName"></el-input>
|
</el-form-item>
|
<el-form-item label="印字要求:" style="width: 100%">
|
<el-input v-model="configContent.printReq"></el-input>
|
</el-form-item>
|
</el-form>
|
<rich-text
|
placeholder="生产规格型号及数量"
|
editor-id="editorb1"
|
:richContent="configContent.remark1"
|
@contentChange="setConfigRemark1"
|
></rich-text>
|
<rich-text
|
placeholder="生产要求描述"
|
editor-id="editorb2"
|
:richContent="configContent.remark2"
|
@contentChange="setConfigRemark2"
|
></rich-text>
|
<el-form-item label="实际印字要求:" style="width: 80%">
|
<el-input v-model="configContent.realPrintReq"></el-input>
|
</el-form-item>
|
<el-row class="bodyrow">
|
<el-col :span="5">
|
<div class="param-top">
|
<div class="form-item" style="text-align: left">
|
<label>发泡缆芯(Φmm)</label>
|
<div style="color: #7A9EFD">
|
<el-input v-model="configContent.cableCore"></el-input>
|
</div>
|
</div>
|
</div>
|
</el-col>
|
<el-col :span="3">
|
<div style="text-align: right;padding-right: 20px">
|
护套模具:
|
</div>
|
</el-col>
|
<el-col :span="3">
|
<div class="param-top">
|
<div class="form-item">
|
<label>模芯(Φmm)</label>
|
<div style="color: #7A9EFD">
|
<el-input v-model="configContent.modelCore"></el-input>
|
</div>
|
</div>
|
</div>
|
</el-col>
|
<el-col :span="3">
|
<div class="param-top">
|
<div class="form-item">
|
<label>模套(Φmm)</label>
|
<div style="color: #7A9EFD">
|
<el-input
|
v-model="configContent.modelSleeve"
|
></el-input>
|
</div>
|
</div>
|
</div>
|
</el-col>
|
<el-col :span="3"
|
><div class="param-top">
|
<div class="form-item">
|
<label>定径模(Φmm)</label>
|
<div style="color: #7A9EFD">
|
<el-input
|
v-model="configContent.sizingModel"
|
></el-input>
|
</div>
|
</div>
|
</div>
|
</el-col>
|
<el-col :span="3"
|
><div class="param-top">
|
<div class="form-item">
|
<label>过模(Φmm)</label>
|
<div style="color: #7A9EFD">
|
<el-input
|
v-model="configContent.strandModel"
|
></el-input>
|
</div>
|
</div>
|
</div>
|
</el-col>
|
</el-row>
|
|
<!-- <rich-text-->
|
<!-- placeholder="产品的性能要求"-->
|
<!-- editor-id="editorb3"-->
|
<!-- :richContent="configContent.remark3"-->
|
<!-- @contentChange="setConfigRemark3"-->
|
<!-- ></rich-text>-->
|
<div>
|
产品的性能要求:20℃时的电气特征
|
</div>
|
|
<el-table
|
:data="configContent.processConfigDataList"
|
style="width: 100%;margin-top: 10px"
|
border
|
>
|
<el-table-column prop="date" label="频率(MHz)">
|
<template slot-scope="scope">
|
<el-input v-model="scope.row.frequency"></el-input>
|
</template>
|
</el-table-column>
|
<el-table-column prop="name" label="最大传送衰减(dB/km)">
|
<template slot-scope="scope">
|
<el-input v-model="scope.row.deliveryReduce"></el-input>
|
</template>
|
</el-table-column>
|
<el-table-column
|
prop="province"
|
label="耦合损耗max(dB),2米,95%"
|
>
|
<template slot-scope="scope">
|
<el-input v-model="scope.row.couplingLoss"></el-input>
|
</template>
|
</el-table-column>
|
<el-table-column fixed="right" label="操作" width="120">
|
<template slot-scope="scope">
|
<el-button
|
@click.native.prevent="deleteConfigTableRow(scope.$index)"
|
type="text"
|
size="small"
|
>
|
删除
|
</el-button>
|
<el-button
|
v-if="
|
scope.$index ==
|
configContent.processConfigDataList.length - 1
|
"
|
@click.native.prevent="addConfigTableRow(scope.$index)"
|
type="text"
|
size="small"
|
>
|
新增
|
</el-button>
|
</template>
|
</el-table-column>
|
</el-table>
|
<el-form-item
|
label="工作频带内驻波比:"
|
style="width: 80%"
|
label-width="120px"
|
>
|
<el-input v-model="configContent.workFrequency"></el-input>
|
</el-form-item>
|
<el-form-item
|
label="频率范围:"
|
style="width: 80%"
|
label-width="120px"
|
>
|
<el-input v-model="configContent.frequencyRange"></el-input>
|
</el-form-item>
|
<el-form-item
|
label="直流电阻:"
|
style="width: 80%"
|
label-width="120px"
|
>
|
<el-input v-model="configContent.resistance"></el-input>
|
</el-form-item>
|
<rich-text
|
placeholder="请输入"
|
editor-id="editorb4"
|
:richContent="configContent.remark4"
|
@contentChange="setConfigRemark4"
|
></rich-text>
|
</div>
|
</div>
|
</el-tab-pane>
|
</el-tabs>
|
</el-form>
|
|
<span slot="footer" class="dialog-footer">
|
<el-button @click="visible = false">取消</el-button>
|
<el-button
|
type="primary"
|
:disabled="buttonDisable"
|
v-thinclick="`dataFormSubmit`"
|
v-if="editable"
|
>确定</el-button
|
>
|
</span>
|
|
<part-dialog
|
:currshowlist.sync="showPart"
|
@listenToPartEvent="selectPart"
|
/>
|
<SalesPartDialog
|
:currshowlist.sync="showSalesPart"
|
:customerOrderInfo="customerOrderInfo"
|
@listenToPartEvent="selectSalesPart"
|
/>
|
<SynchronizeDialog
|
:currshowlist.sync="showSynchronize"
|
@listenToPartEvent="selectSynchronizePart"
|
:param-obj="selectOrderParam"
|
:parentSelectedObj="selectOrderObj"
|
/>
|
<config-history
|
:currshowlist.sync="historyShow"
|
@listenToPartEvent="selectHistory"
|
/>
|
<OtherCustomerOrderLine
|
:currshowlist.sync="showOtherCustomerOrder"
|
:configContent="configContent"
|
:otherCustomerOrderLineList="otherCustomerOrderLineList"
|
:customerOrderId="dataForm.id"
|
@refreshCustomerOrderForm="refreshCustomerOrderForm"
|
></OtherCustomerOrderLine>
|
</el-dialog>
|
</template>
|
|
<script>
|
import {
|
getCustomerOrder,
|
addCustomerOrder,
|
putCustomerOrder,
|
download,
|
getOtcCustomerOrderFileList,
|
otcDownload,
|
getProcessConfigFiles,
|
updateConfigFileEffectiveRange,
|
deleteProcessConfigFile,
|
downloadProcessConfigFile,
|
newProcessConfigAdd,
|
newProcessConfigEdit,
|
newProcessConfigAddOne,
|
newProcessConfigEditOne,
|
newProcessConfigDelete,
|
getProcessConfigPage,
|
getBeSelectedLineNoList
|
} from '@/api/plan/customerorder'
|
import { remote } from '@/api/admin/dict'
|
import PartDialog from '@/views/common/part.vue'
|
import ConfigHistory from '@/views/plan/customerorder/customerorder-config-history'
|
import SalesPartDialog from './sales-part.vue'
|
import SynchronizeDialog from './synchronize-part.vue'
|
import { validateSixDecimal } from '@/util/validate'
|
import { getStore } from '@/util/store'
|
import RichText from '@/views/common/rich-text.vue'
|
import { getProductMainV1 } from '@/api/product/personboard'
|
import OtherCustomerOrderLine from './other-customer-order-line'
|
|
const defaultConfigTableData = {
|
configId: 0,
|
frequency: '', // 频率
|
deliveryReduce: '', // 最大传送衰减
|
couplingLoss: '' // 耦合损耗
|
}
|
export default {
|
components: {
|
PartDialog,
|
SalesPartDialog,
|
SynchronizeDialog,
|
RichText,
|
ConfigHistory,
|
OtherCustomerOrderLine
|
},
|
data() {
|
return {
|
progrecessFileLoading: false,
|
fileList: [],
|
title: '',
|
orderParamList: [],
|
isFullScreen: false,
|
visible: false,
|
buttonDisable: false,
|
showPart: false,
|
showSynchronize: false,
|
selectOrderParam: null,
|
selectOrderObj: {},
|
dataForm: {
|
id: 0,
|
sourceId: '',
|
customerOrderNo: '',
|
customerNo: '',
|
customerName: '',
|
coState: '',
|
coLineNo: '',
|
partNo: '',
|
customerPartName: '',
|
buyQtyDue: '',
|
wantedDeliveryDate: '',
|
plannedDeliveryDate: '',
|
customerPoNo: '',
|
customerPoLineNo: '',
|
customerPoRelNo: '',
|
customerPartNo: '',
|
customerPartBuyQty: '',
|
customerPartUnitMeas: '',
|
custPartConvFactor: '',
|
custPartInvertConvFactor: '',
|
salesPartNo: null,
|
salesPartName: null,
|
ifsSalesUnit: null,
|
ifsConvFactor: null,
|
unit: null,
|
otcUnit: null,
|
otcQuantity: null,
|
docNumber: null,
|
manufactureAttr: 'N',
|
customerPartSpec: null,
|
division: null,
|
printType: null,
|
printingRequirements: null,
|
printContent: null,
|
packageRequire: null,
|
qualityRequire: null,
|
otherProductRequire: null,
|
divisionSystem: null,
|
shippingAddress: null,
|
salesmanName: null,
|
lengthRequirement: null,
|
remark: null,
|
otcPartSync: null,
|
finalCustomerName: null,
|
productGroup: null,
|
productType: null,
|
centralizedMiningProperty: null,
|
orderDescription: null,
|
otcLineNo: null,
|
comment: null
|
},
|
dataRule: {
|
sourceId: [],
|
customerOrderNo: [
|
{ required: true, message: '客户订单号不能为空', trigger: 'blur' }
|
],
|
customerNo: [
|
{ required: true, message: '客户编号不能为空', trigger: 'blur' }
|
],
|
customerName: [
|
{ required: true, message: '客户名称不能为空', trigger: 'blur' }
|
],
|
coState: [],
|
coLineNo: [],
|
partNo: [{ required: true, message: '零件不能为空', trigger: 'blur' }],
|
otcQuantity: [
|
{ required: true, message: '销售数量不能为空', trigger: 'blur' },
|
{ validator: validateSixDecimal, trigger: 'blur' }
|
],
|
wantedDeliveryDate: [
|
{ required: true, message: '期望交货时间不能为空', trigger: 'blur' }
|
],
|
customerPoNo: [],
|
customerPoLineNo: [],
|
customerPoRelNo: [],
|
customerPartNo: [],
|
customerPartBuyQty: [
|
{ validator: validateSixDecimal, trigger: 'blur' }
|
],
|
customerPartUnitMeas: [],
|
custPartConvFactor: [
|
{ validator: validateSixDecimal, trigger: 'blur' }
|
],
|
custPartInvertConvFactor: [
|
{ validator: validateSixDecimal, trigger: 'blur' }
|
],
|
salesPartNo: [
|
{ required: true, message: '销售件号不能为空', trigger: 'blur' }
|
],
|
salesPartName: [
|
{ required: true, message: '销售件描述不能为空', trigger: 'blur' }
|
]
|
},
|
units: [],
|
coStates: [
|
{
|
value: '01partUnCheck',
|
label: '零件待选'
|
},
|
{
|
value: '02technologyUnCheck',
|
label: '工艺文件待选'
|
},
|
{
|
value: '03plan',
|
label: '待计划'
|
},
|
{
|
value: '04planed',
|
label: '已下发'
|
},
|
{
|
value: '05cancel',
|
label: '已作废'
|
},
|
{
|
value: '06unedit',
|
label: '订单编辑'
|
}
|
],
|
showSalesPart: false,
|
customerOrderInfo: null,
|
manufactureAttrs: [],
|
outputBatchTableData: [],
|
processConfigFileTableData: [],
|
paramData: {
|
// range: '1',
|
orderNumber: '',
|
lineNumber: ''
|
},
|
headers: {
|
Authorization: 'Bearer ' + getStore({ name: 'access_token' })
|
},
|
// 模板1配置单内容
|
configContent: {
|
modelType: '01', // 模板类型 01 02
|
orderId: '',
|
orderNumber: '',
|
id: '',
|
proNo: '',
|
proName: '',
|
printReq: '', // 印字要求
|
remark1: '',
|
remark2: '',
|
remark3: '',
|
remark4: '',
|
realPrintReq: '', // 实际印字要求
|
cableCore: '', // 发泡缆芯
|
modelCore: '', // 模芯
|
modelSleeve: '', // 模套
|
sizingModel: '', // 定径模
|
strandModel: '', // 过模
|
workFrequency: '', // 工作频带内驻波比
|
frequencyRange: '', // 频率范围
|
resistance: '', // 直流电阻
|
processConfigDataList: [] // 附表
|
},
|
configTypes: [
|
{ value: '01', label: '模板1' },
|
{ value: '02', label: '模板2' }
|
],
|
historyShow: false,
|
radio: '',
|
showOutPutBatch: false,
|
showOtherCustomerOrder: false,
|
otherCustomerOrderLineList: []
|
}
|
},
|
computed: {
|
editable: function() {
|
if (!this.dataForm.id) {
|
return true
|
}
|
if (this.dataForm.id && this.dataForm.coState !== '04complete') {
|
return true
|
}
|
return false
|
},
|
ediSource: function() {
|
if (!this.dataForm.id) {
|
return true
|
}
|
if (this.dataForm.id && this.dataForm.sourceId !== 'GSM') {
|
return true
|
}
|
return false
|
}
|
},
|
mounted: function() {
|
this.getDicUnit('unit') // 获取单位
|
this.getManufactureAttrs('manufacture_attr_type')
|
},
|
methods: {
|
init(id) {
|
this.orderParamList = []
|
this.dataForm.id = id || 0
|
this.visible = true
|
this.dataForm.coState = '01partUnCheck'
|
this.$nextTick(() => {
|
this.$refs.dataForm.resetFields()
|
if (this.dataForm.id) {
|
getCustomerOrder(this.dataForm.id).then((response) => {
|
// if (response.data.data.customerOrderList != null) {
|
// this.dataForm = response.data.data.customerOrderList
|
//
|
// console.log('0')
|
// if (this.dataForm.OrderOrContract) {
|
// console.log('1')
|
// // 将订单还是合同转义
|
// if (this.dataForm.OrderOrContract == '0') {
|
// this.dataForm.OrderOrContract = '合同'
|
// } else if (this.dataForm.OrderOrContract == '1') {
|
// this.dataForm.OrderOrContract = '订单'
|
// }
|
// }
|
// } else {
|
// console.log('2')
|
this.dataForm = response.data.data
|
// }
|
// this.fileList = response.data.data.customerOrderAttachmentList
|
this.getFileList()
|
this.orderParamList = response.data.data.orderParamList
|
this.title =
|
this.dataForm.customerName + this.dataForm.customerOrderNo
|
// 产出批次
|
this.outputBatchTableData = response.data.data.outPutBatchList
|
// 工艺附件
|
this.processConfigFileTableData = response.data.data.configFiles
|
// 工艺配置单
|
// this.this.configContent.modelType = '01'
|
// this.configContent.orderId = this.dataForm.id
|
// this.configContent.orderId = response.data.data.customerOrderNo
|
console.log(response.data.data)
|
if (response.data.data.processConfigDTO) {
|
// 有保存的数据
|
this.configContent = response.data.data.processConfigDTO
|
} else {
|
// 没数据
|
this.configContent = {
|
modelType: '01', // 模板类型 01 02
|
orderId: this.dataForm.id,
|
orderNumber: response.data.data.customerOrderNo,
|
id: '',
|
proNo: response.data.data.customerOrderNo,
|
proName: response.data.data.customerName,
|
printReq: '', // 印字要求
|
remark1: '',
|
remark2: '',
|
remark3: '',
|
remark4: '',
|
realPrintReq: '', // 实际印字要求
|
cableCore: '', // 发泡缆芯
|
modelCore: '', // 模芯
|
modelSleeve: '', // 模套
|
sizingModel: '', // 定径模
|
strandModel: '', // 过模
|
workFrequency: '', // 工作频带内驻波比
|
frequencyRange: '', // 频率范围
|
resistance: '', // 直流电阻
|
processConfigDataList: [] // 附表
|
}
|
for (let i = 0; i < 15; i++) {
|
this.configContent.processConfigDataList.push(
|
Object.assign({}, defaultConfigTableData)
|
)
|
}
|
}
|
})
|
} else {
|
this.title = '新增'
|
this.$refs.tabs.currentName = '0'
|
}
|
})
|
},
|
getFileList() {
|
this.fileList = []
|
const queryParam = { orderNumber: this.dataForm.customerOrderNo }
|
getOtcCustomerOrderFileList(queryParam).then((response) => {
|
const resData = response.data
|
if (resData.code === 0) {
|
const datas = resData.data
|
if (datas.length > 0) {
|
this.fileList = datas
|
}
|
} else {
|
this.$message.error('获取附件失败')
|
}
|
})
|
},
|
uploadFile(row) {
|
otcDownload(row.id).then((response) => {
|
const blob = new Blob([response.data], {
|
type: 'application/force-download'
|
})
|
const filename = decodeURI(row.original)
|
// 创建一个超链接,将文件流赋进去,然后实现这个超链接的单击事件
|
const elink = document.createElement('a')
|
elink.download = filename
|
elink.style.display = 'none'
|
elink.href = URL.createObjectURL(blob)
|
document.body.appendChild(elink)
|
elink.click()
|
URL.revokeObjectURL(elink.href) // 释放URL 对象
|
document.body.removeChild(elink)
|
})
|
},
|
// 附件的点击
|
handlePreview(file) {
|
download(file.name, this.dataForm.id).then((response) => {
|
const blob = new Blob([response.data], {
|
type: 'application/force-download'
|
})
|
const filename = decodeURI(file.name)
|
// 创建一个超链接,将文件流赋进去,然后实现这个超链接的单击事件
|
const elink = document.createElement('a')
|
elink.download = filename
|
elink.style.display = 'none'
|
elink.href = URL.createObjectURL(blob)
|
document.body.appendChild(elink)
|
elink.click()
|
URL.revokeObjectURL(elink.href) // 释放URL 对象
|
document.body.removeChild(elink)
|
})
|
},
|
// 表单提交
|
dataFormSubmit() {
|
this.buttonDisable = true
|
this.$refs.dataForm.validate((valid) => {
|
if (valid) {
|
if (this.dataForm.id) {
|
putCustomerOrder(this.dataForm)
|
.then((data) => {
|
this.$message.success('修改成功')
|
this.visible = false
|
this.buttonDisable = false
|
this.$emit('refreshDataList', 1)
|
})
|
.catch((error) => {
|
this.buttonDisable = false
|
})
|
} else {
|
addCustomerOrder(this.dataForm)
|
.then((data) => {
|
this.$message.success('添加成功')
|
this.visible = false
|
this.buttonDisable = false
|
this.$emit('refreshDataList', 1)
|
})
|
.catch((error) => {
|
this.buttonDisable = false
|
})
|
}
|
} else {
|
this.buttonDisable = false
|
}
|
})
|
},
|
// 零件选择
|
openPartDialog() {
|
if (
|
this.dataForm.coState === '01partUnCheck' ||
|
this.dataForm.coState === '02technologyUnCheck'
|
) {
|
this.showPart = true
|
} else {
|
this.$message.warning(
|
'订单只有在【零件待选】、【工艺文件待选】状态下,才能进行零件修改'
|
)
|
}
|
},
|
selectPart(part) {
|
if (part) {
|
this.dataForm.partNo = part.partNo
|
this.$refs.dataForm.validateField('partNo', (valid) => {})
|
}
|
},
|
// 全屏
|
fullscreen() {
|
this.isFullScreen = !this.isFullScreen
|
},
|
// 获取字典显示名称并缓存
|
getDicUnit(type) {
|
remote(type).then((response) => {
|
const code = response.data.code
|
if (code === 0) {
|
const _data = response.data.data
|
this.units = _data
|
}
|
})
|
},
|
getManufactureAttrs(type) {
|
remote(type).then((response) => {
|
const code = response.data.code
|
if (code === 0) {
|
const _data = response.data.data
|
this.manufactureAttrs = _data
|
}
|
})
|
},
|
// 打开销售件的弹出框
|
openSalesPartDialog() {
|
if (
|
this.dataForm.coState === '01partUnCheck' ||
|
this.dataForm.coState === '02technologyUnCheck'
|
) {
|
this.customerOrderInfo = {
|
id: this.dataForm.id,
|
unit: this.dataForm.unit,
|
otcUnit: this.dataForm.otcUnit
|
}
|
this.showSalesPart = true
|
} else {
|
this.$message.warning(
|
'订单只有在【零件待选】、【工艺文件待选】状态下,才能进行销售件修改'
|
)
|
}
|
},
|
// 选择销售件后的回调
|
selectSalesPart(row) {
|
this.dataForm.partNo = row.partNo
|
this.dataForm.salesPartNo = row.salesPartNo
|
this.dataForm.salesPartName = row.salesPartName
|
this.dataForm.ifsSalesUnit = row.ifsSalesUnit
|
this.dataForm.ifsConvFactor = row.ifsConvFactor
|
this.dataForm.unit = row.unit
|
},
|
updateOutPutBatch(row) {
|
row.edit = false
|
},
|
delOutPutBatch(row) {},
|
addOutPutBatch() {},
|
submitUpload() {
|
this.paramData.orderNumber = this.dataForm.customerOrderNo
|
this.paramData.lineNumber = this.dataForm.otcLineNo
|
this.progrecessFileLoading = true
|
},
|
uploadSuccess() {
|
this.progrecessFileLoading = false
|
this.getConfigFiles()
|
},
|
getConfigFiles() {
|
const param = {
|
orderNumber: this.dataForm.customerOrderNo,
|
lineNumber: this.dataForm.otcLineNo
|
}
|
getProcessConfigFiles(param).then((res) => {
|
this.processConfigFileTableData = res.data.data
|
})
|
},
|
// 同步文件
|
synchronizeFile(row) {
|
this.selectOrderParam = {
|
customerOrderNo: row.orderNumber
|
}
|
this.selectOrderObj = row
|
this.showSynchronize = true
|
},
|
// 同步文件后的回调
|
selectSynchronizePart(row) {
|
this.getConfigFiles()
|
},
|
delProcessConfigFile(row) {
|
if (row.lineNumber !== this.dataForm.otcLineNo) {
|
this.$message.error('上传文件行号与当前销售订单行号不一致,不允许删除')
|
} else {
|
this.$confirm('是否删除工艺配置文件', '提示', {
|
confirmButtonText: '确定',
|
cancelButtonText: '取消',
|
type: 'warning',
|
closeOnClickModal: false
|
})
|
.then(function() {
|
return deleteProcessConfigFile(row.id)
|
})
|
.then((data) => {
|
this.getConfigFiles()
|
})
|
}
|
},
|
downloadProcessConfigFile(row) {
|
downloadProcessConfigFile(
|
row.fileName,
|
row.bucketName,
|
row.originalFileName
|
)
|
},
|
handleInput(row) {
|
if (row.lineNumber !== this.dataForm.otcLineNo) {
|
this.$message.error('上传文件行号与当前销售订单行号不一致,不允许修改')
|
} else {
|
row.effectiveRange = row.effectiveRange === '1' ? '0' : '1'
|
updateConfigFileEffectiveRange(row).then((res) => {
|
this.getConfigFiles()
|
})
|
}
|
},
|
|
// 删除配置单
|
deleteConfig() {
|
const configId = this.configContent.id
|
if (configId) {
|
newProcessConfigDelete(configId).then((res) => {
|
this.$message.success('删除成功')
|
this.init(this.configContent.orderId)
|
})
|
}
|
},
|
// 保存配置单
|
saveConfig() {
|
const configId = this.configContent.id
|
console.log(this.configContent)
|
for (
|
let i = this.configContent.processConfigDataList.length - 1;
|
i >= 0;
|
i--
|
) {
|
if (
|
!this.configContent.processConfigDataList[i].frequency &&
|
!this.configContent.processConfigDataList[i].deliveryReduce &&
|
!this.configContent.processConfigDataList[i].couplingLoss
|
) {
|
this.configContent.processConfigDataList.splice(i, 1)
|
}
|
}
|
if (configId) {
|
newProcessConfigEditOne(this.configContent).then((res) => {
|
console.log(res)
|
if (res.data.code === 0) {
|
this.$message.success('保存成功')
|
this.init(this.configContent.orderId)
|
} else {
|
this.$message.success('保存失败')
|
}
|
})
|
} else {
|
newProcessConfigAddOne(this.configContent).then((res) => {
|
console.log(res)
|
if (res.data.code === 0) {
|
this.$message.success('保存成功')
|
this.init(this.configContent.orderId)
|
} else {
|
this.$message.success('保存失败')
|
}
|
})
|
}
|
},
|
// 保存配置单
|
saveConfigForAll() {
|
// 先调用接口,查询订单号下是否存在多条订单行
|
getBeSelectedLineNoList({
|
customerOrderNo: this.dataForm.customerOrderNo,
|
id: this.dataForm.id
|
}).then((response) => {
|
const resData = response.data
|
const otherCustomerOrderLineData = resData.data
|
if (otherCustomerOrderLineData != null) {
|
this.otherCustomerOrderLineList = otherCustomerOrderLineData
|
this.showOtherCustomerOrder = true
|
} else {
|
this.$message.error('该销售订单号下,没有其他订单行')
|
/* const configId = this.configContent.id
|
console.log(this.configContent)
|
for (
|
let i = this.configContent.processConfigDataList.length - 1;
|
i >= 0;
|
i--
|
) {
|
if (
|
!this.configContent.processConfigDataList[i].frequency &&
|
!this.configContent.processConfigDataList[i].deliveryReduce &&
|
!this.configContent.processConfigDataList[i].couplingLoss
|
) {
|
this.configContent.processConfigDataList.splice(i, 1)
|
}
|
}
|
if (configId) {
|
newProcessConfigEdit(this.configContent).then((res) => {
|
console.log(res)
|
if (res.data.code === 0) {
|
this.$message.success('保存成功')
|
this.init(this.configContent.orderId)
|
} else {
|
this.$message.success('保存失败')
|
}
|
})
|
} else {
|
newProcessConfigAdd(this.configContent).then((res) => {
|
console.log(res)
|
if (res.data.code === 0) {
|
this.$message.success('保存成功')
|
this.init(this.configContent.orderId)
|
} else {
|
this.$message.success('保存失败')
|
}
|
})
|
} */
|
}
|
})
|
/* const configId = this.configContent.id
|
console.log(this.configContent)
|
for (
|
let i = this.configContent.processConfigDataList.length - 1;
|
i >= 0;
|
i--
|
) {
|
if (
|
!this.configContent.processConfigDataList[i].frequency &&
|
!this.configContent.processConfigDataList[i].deliveryReduce &&
|
!this.configContent.processConfigDataList[i].couplingLoss
|
) {
|
this.configContent.processConfigDataList.splice(i, 1)
|
}
|
}
|
if (configId) {
|
newProcessConfigEdit(this.configContent).then((res) => {
|
console.log(res)
|
if (res.data.code === 0) {
|
this.$message.success('保存成功')
|
this.init(this.configContent.orderId)
|
} else {
|
this.$message.success('保存失败')
|
}
|
})
|
} else {
|
newProcessConfigAdd(this.configContent).then((res) => {
|
console.log(res)
|
if (res.data.code === 0) {
|
this.$message.success('保存成功')
|
this.init(this.configContent.orderId)
|
} else {
|
this.$message.success('保存失败')
|
}
|
})
|
} */
|
},
|
// 富文本备注改变,则进行赋值
|
setConfigRemark1(val) {
|
this.configContent.remark1 = val
|
},
|
setConfigRemark2(val) {
|
this.configContent.remark2 = val
|
},
|
setConfigRemark3(val) {
|
this.configContent.remark3 = val
|
},
|
setConfigRemark4(val) {
|
this.configContent.remark4 = val
|
},
|
deleteConfigTableRow(index) {
|
this.configContent.processConfigDataList.splice(index, 1)
|
},
|
addConfigTableRow(index) {
|
this.configContent.processConfigDataList.push(
|
Object.assign({}, defaultConfigTableData)
|
)
|
},
|
// 切换模板
|
changeModal(value) {
|
if (value === '01') {
|
this.configContent.proNo = this.dataForm.customerOrderNo
|
this.configContent.proName = this.dataForm.customerName
|
} else if (value === '02') {
|
this.configContent.proNo = this.dataForm.customerOrderNo
|
this.configContent.proName = ''
|
this.configContent.printReq =
|
'印字方式:' +
|
(this.dataForm.printType || '无') +
|
' | 印字要求:' +
|
(this.dataForm.printingRequirements || '无') +
|
' | 印字内容:' +
|
(this.dataForm.printContent || '无')
|
this.configContent.remark1 =
|
'规格型号为:' +
|
this.dataForm.productName +
|
' | 数量:' +
|
this.dataForm.otcQuantity +
|
' ' +
|
this.dataForm.otcUnit +
|
''
|
}
|
},
|
// 模板2 获取按钮
|
getHistoryData() {
|
this.historyShow = true
|
// var param = Object.assign({ current: 1, size: 20 })
|
// getProcessConfigPage(param).then((res) => {
|
// const list = res.data.data.records
|
// console.log(list)
|
// })
|
},
|
// 获取确认
|
selectHistory(data) {
|
if (data) {
|
this.configContent.proName = data.proName
|
this.configContent.printReq = data.printReq
|
this.configContent.remark1 = data.remark1
|
this.configContent.remark2 = data.remark2
|
this.configContent.remark3 = data.remark3
|
this.configContent.remark4 = data.remark4
|
this.configContent.realPrintReq = data.realPrintReq
|
this.configContent.cableCore = data.cableCore
|
this.configContent.modelCore = data.modelCore
|
this.configContent.modelSleeve = data.modelSleeve
|
this.configContent.sizingModel = data.sizingModel
|
this.configContent.strandModel = data.strandModel
|
this.configContent.workFrequency = data.workFrequency
|
this.configContent.frequencyRange = data.frequencyRange
|
this.configContent.resistance = data.resistance
|
this.configContent.processConfigDataList = data.processConfigDataList
|
}
|
},
|
refreshCustomerOrderForm(orderId) {
|
this.init(orderId)
|
}
|
}
|
}
|
</script>
|
<style scoped lang="scss">
|
.node-content-remark > div {
|
/deep/ .quill-editor {
|
.ql-container {
|
height: 450px;
|
overflow: auto;
|
}
|
}
|
//&:last-child {
|
// /deep/ .quill-editor .ql-container {
|
// height: 100px;
|
// overflow: auto;
|
// }
|
//}
|
}
|
|
.node-content-remark2 > div {
|
/deep/ .quill-editor {
|
.ql-container {
|
height: 100px;
|
overflow: auto;
|
}
|
}
|
}
|
.configform1 {
|
.el-input {
|
width: 300px;
|
}
|
}
|
.configform2 {
|
/deep/ .el-form-item__content {
|
width: 70% !important;
|
}
|
.el-input {
|
width: 100%;
|
}
|
}
|
|
.bodyrow {
|
.el-input {
|
width: 80%;
|
}
|
.form-item {
|
text-align: center;
|
}
|
}
|
</style>
|