From f373bff250a0d9da0996b28b9fb4c996e1d7428e Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期二, 01 四月 2025 14:12:30 +0800
Subject: [PATCH] 标准变更提交页面
---
src/views/business/materialOrder/customsInspection.vue | 784 ++++++++++++++++++++++++++++----------------------------
1 files changed, 392 insertions(+), 392 deletions(-)
diff --git a/src/views/business/materialOrder/customsInspection.vue b/src/views/business/materialOrder/customsInspection.vue
index 4f9902b..148f25b 100644
--- a/src/views/business/materialOrder/customsInspection.vue
+++ b/src/views/business/materialOrder/customsInspection.vue
@@ -5,23 +5,25 @@
<div>
<span>閲囪喘璁㈠崟淇℃伅</span>
<ul class="tab" v-if="active > 1 && isShowTab">
- <li v-for="(m,i) in dataTitle" :key="i" :class="{active:i===dataIndex}" @click="handleDataTab(m,i)">{{m.label}}</li>
+ <li v-for="(m, i) in dataTitle" :key="i" :class="{ active: i === dataIndex }" @click="handleDataTab(m, i)">
+ {{ m.label }}</li>
</ul>
</div>
<div>
- <el-select v-show="active==1" v-model="template" placeholder="涓嬪崟妯℃澘" size="small" style="margin-right: 10px;"
- @change="selectInsOrderTemplateByIdList">
+ <el-select v-show="active == 1" v-model="template" placeholder="涓嬪崟妯℃澘" size="small" style="margin-right: 10px;"
+ @change="selectInsOrderTemplateByIdList">
<el-option v-for="(a, ai) in templates" :key="ai" :label="a.name" :value="a.id">
<span style="float: left">{{ a.name }}</span>
<i class="el-icon-delete" style="float: right; color: #66b1ff; font-size: 16px"
- @click.stop="handleDelete(a)"></i>
+ @click.stop="handleDelete(a)"></i>
</el-option>
</el-select>
- <el-button v-show="active==1" size="small" @click="templateDia=true">
+ <el-button v-show="active == 1" size="small" @click="templateDia = true">
<span style="color: #3A7BFA;">淇濆瓨妯℃澘</span>
</el-button>
- <el-button v-show="active==1 && addObj.orderType === '杩涘巶妫�楠�'" :loading="noNeedCheckLoad" size="small" type="primary" @click="noNeedCheck">鍏嶆</el-button>
- <el-button v-show="active==1" :loading="saveLoad" size="small" type="primary" @click="save">鎻愪氦</el-button>
+ <el-button v-show="active == 1 && addObj.orderType === '杩涘巶妫�楠�'" :loading="noNeedCheckLoad" size="small"
+ type="primary" @click="noNeedCheck">鍏嶆</el-button>
+ <el-button v-show="active == 1" :loading="saveLoad" size="small" type="primary" @click="save">鎻愪氦</el-button>
<el-button size="small" @click="goBack">
<span style="color: #3A7BFA;">杩斿洖</span>
</el-button>
@@ -33,42 +35,41 @@
<el-row>
<el-col :span="6">
<el-form-item class="addObj-form-item" label="閲囪喘璁㈠崟鍙�:">
- <el-input v-model="addObj.orderNo" class="addObj-info" clearable disabled placeholder="" size="small"></el-input>
+ <el-input v-model="addObj.orderNo" class="addObj-info" clearable disabled placeholder=""
+ size="small"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item class="addObj-form-item" label="濮旀墭鍗曚綅:">
- <el-input v-model="addObj.company" class="addObj-info" clearable disabled placeholder="" size="small"></el-input>
+ <el-input v-model="addObj.company" class="addObj-info" clearable disabled placeholder=""
+ size="small"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item class="addObj-form-item" label="鎺ユ敹鏃堕棿:">
- <el-date-picker
- v-model="addObj.receiverDate"
- disabled
- placeholder="閫夋嫨鏃ユ湡"
- size="small"
- style="width: 100%;"
- type="date"
- value-format="yyyy-MM-dd">
+ <el-date-picker v-model="addObj.receiverDate" disabled placeholder="閫夋嫨鏃ユ湡" size="small"
+ style="width: 100%;" type="date" value-format="yyyy-MM-dd">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item class="addObj-form-item" label="闆朵欢鍙�:">
- <el-input v-model="addObj.partNo" class="addObj-info" clearable disabled placeholder="" size="small"></el-input>
+ <el-input v-model="addObj.partNo" class="addObj-info" clearable disabled placeholder=""
+ size="small"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<el-form-item class="addObj-form-item" label="鏍峰搧鍚嶇О:">
- <el-input v-model="addObj.sample" class="addObj-info" clearable disabled placeholder="" size="small"></el-input>
+ <el-input v-model="addObj.sample" class="addObj-info" clearable disabled placeholder=""
+ size="small"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item class="addObj-form-item" label="鏍峰搧鎬绘暟:">
- <el-input v-model="addObj.qtyArrived" class="addObj-info" clearable disabled placeholder="" size="small"></el-input>
+ <el-input v-model="addObj.qtyArrived" class="addObj-info" clearable disabled placeholder=""
+ size="small"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
@@ -90,22 +91,24 @@
</el-col>
<el-col :span="6">
<el-form-item class="addObj-form-item" label="鎶芥鏁伴噺:" prop="testQuantity">
- <el-input v-model="addObj.testQuantity" :disabled="active > 1" class="addObj-info"
- clearable
- placeholder="璇峰~鍐欐娊妫�鏁伴噺" size="small"></el-input>
+ <el-input v-model="addObj.testQuantity" :disabled="active > 1" class="addObj-info" clearable
+ placeholder="璇峰~鍐欐娊妫�鏁伴噺" size="small"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item class="addObj-form-item" label="妫�楠岀被鍒�:" prop="orderType">
- <el-select v-model="addObj.orderType" :disabled="active>1 || orderType===1" clearable size="small" style="width: 100%">
- <el-option v-for="(a, ai) in dict.type.check_type" :key="ai" :label="a.label" :value="a.value"></el-option>
+ <el-select v-model="addObj.orderType" :disabled="active > 1 || orderType == 1" clearable size="small"
+ style="width: 100%">
+ <el-option v-for="a in dict.type.check_type" :key="a.value" :label="a.label"
+ :value="a.value"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item class="addObj-form-item" label="瑙勬牸鍨嬪彿:" placeholder="璇峰~鍐�" prop="partDetail">
<el-tooltip :content="addObj.partDetail" :disabled="!addObj.partDetail">
- <el-input v-model="addObj.partDetail" :disabled="active > 1" clearable class="addObj-info" size="small"></el-input>
+ <el-input v-model="addObj.partDetail" :disabled="active > 1" clearable class="addObj-info"
+ size="small"></el-input>
</el-tooltip>
</el-form-item>
</el-col>
@@ -113,190 +116,181 @@
<el-row>
<el-col :span="6">
<el-form-item class="addObj-form-item" label="绱ф�ョ▼搴�:" placeholder="璇烽�夋嫨" prop="type">
- <el-select v-model="addObj.type" :disabled="active>1" class="addObj-info" clearable size="small" style="width: 100%">
- <el-option v-for="(a, ai) in dict.type.urgency_level" :key="ai" :label="a.label" :value="a.value"></el-option>
+ <el-select v-model="addObj.type" :disabled="active > 1" class="addObj-info" clearable size="small"
+ style="width: 100%">
+ <el-option v-for="a in dict.type.urgency_level" :key="a.value" :label="a.label"
+ :value="a.value"></el-option>
</el-select>
</el-form-item>
</el-col>
- <el-col :span="6">
+ <!-- <el-col :span="6">
<el-form-item class="addObj-form-item" label="绾﹀畾鏃堕棿:" prop="appointed">
- <el-date-picker
- v-model="addObj.appointed"
- :disabled="active > 1"
- format="yyyy-MM-dd"
- placeholder="閫夋嫨鏃ユ湡"
- size="small"
- style="width: 100%"
- type="date"
- value-format="yyyy-MM-dd">
+ <el-date-picker v-model="addObj.appointed" :disabled="active > 1" format="yyyy-MM-dd" placeholder="閫夋嫨鏃ユ湡"
+ size="small" style="width: 100%" type="date" value-format="yyyy-MM-dd">
</el-date-picker>
+ </el-form-item>
+ </el-col> -->
+ <el-col :span="6">
+ <el-form-item class="addObj-form-item" label="鎶ユ绫诲瀷:">
+ <el-input v-model="addObj.inspectionType" class="addObj-info" clearable disabled size="small"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item class="addObj-form-item" label="澶囨敞:">
- <el-input v-model="addObj.remark" :autosize="{ minRows: 2, maxRows: 2}" :disabled="active>1" :placeholder="active>1 ? '' : '璇疯緭鍏�'" clearable
- size="small" type="textarea"></el-input>
+ <el-input v-model="addObj.remark" :autosize="{ minRows: 2, maxRows: 2 }" :disabled="active > 1"
+ :placeholder="active > 1 ? '' : '璇疯緭鍏�'" clearable size="small" type="textarea"></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
<div>
- <div style="display: flex;justify-content: space-between;">
- <div v-if="active==1">
+ <div style="display: flex;justify-content: space-between;background-color: #F5F7FB;margin-bottom: 6px">
+ <div v-if="active == 1">
<el-form :inline="true" :model="addObj1" label-width="90px">
- <el-form-item label="鏍峰搧鍨嬪彿:" style="margin-bottom: 6px">
- <el-select v-model="model" :placeholder="active>1 ? '' : '璇疯緭鍏�'"
- allow-create clearable default-first-option filterable
- size="small"
- @change="changeModel">
+ <el-form-item label="鏍峰搧鍨嬪彿:" style="margin-bottom: 6px;margin-top: 6px">
+ <el-select v-model="model" :placeholder="active > 1 ? '' : '璇疯緭鍏�'" allow-create clearable
+ default-first-option filterable size="small" @change="changeModel">
<el-option v-for="item in models" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-form-item>
- <el-form-item label="妫�楠屾爣鍑�:">
- <el-select v-model="standardMethodListId" :loading="methodLoad"
- :placeholder="active>1 ? '' : '璇疯緭鍏�'" clearable size="small"
- @change="changeStandardMethodListId" @focus="methodFocus">
+ <el-form-item label="妫�楠屾爣鍑�:" style="margin-bottom: 6px;margin-top: 6px">
+ <el-select v-model="standardMethodListId" :loading="methodLoad" :placeholder="active > 1 ? '' : '璇疯緭鍏�'"
+ clearable size="small" @change="changeStandardMethodListId" @focus="methodFocus">
<el-option v-for="item in methods" :key="item.id" :label="item.code" :value="item.id">
</el-option>
</el-select>
</el-form-item>
+ <el-form-item label="闄勪欢鏌ョ湅:" style="margin-bottom: 6px;margin-top: 6px">
+ <el-button type="text" @click="handleFileDialog">
+ <i class="el-icon-document"></i>
+ 闄勪欢鏌ョ湅
+ </el-button>
+ <el-dialog :visible.sync="fileDialogVisible" title="闄勪欢鏌ョ湅" width="80%">
+ <fileList :currentNo="partNo" v-if="fileDialogVisible" />
+ </el-dialog>
+ </el-form-item>
</el-form>
</div>
- <div style="margin-top: 3px">
- <el-button v-show="active==1" :disabled="sampleList.length === 2" size="small" type="primary" @click="handleSplitCountNum">鎷嗗垎</el-button>
+ <div style="margin-bottom: 6px;margin-top: 6px">
+ <el-button v-show="active == 1" :disabled="sampleList.length === 2" size="small" type="primary"
+ @click="handleSplitCountNum">鎷嗗垎</el-button>
</div>
</div>
- <el-table ref="sampleTable" :data="sampleList"
- class="el-table sampleTable"
- highlight-current-row
- max-height="400px"
- tooltip-effect="dark"
- @selection-change="selectSample" @row-click="rowClick">
- <el-table-column v-if="active==1" :selectable="selectable" type="selection" width="65"></el-table-column>
+ <el-table ref="sampleTable" :data="sampleList" class="el-table sampleTable" highlight-current-row
+ :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border max-height="400px" tooltip-effect="dark"
+ @selection-change="selectSample" @row-click="rowClick">
+ <el-table-column v-if="active == 1" :selectable="selectable" type="selection" width="65"></el-table-column>
<el-table-column align="center" label="搴忓彿" prop="index" type="index" width="65"></el-table-column>
<el-table-column align="center" label="鏍峰搧鍚嶇О" min-width="100" prop="sample">
<template slot-scope="scope">
- <el-input v-model="scope.row.sample" :disabled="active>1 || scope.$index !== 0" size="small" @change="(val)=>changeValue(val, 'sample')"></el-input>
+ <el-input v-model="scope.row.sample" :disabled="active > 1 || scope.$index !== 0" size="small"
+ @change="(val) => changeValue(val, 'sample')"></el-input>
</template>
</el-table-column>
<el-table-column align="center" label="鏍峰搧缂栧彿" min-width="140" prop="sampleCode">
<template slot-scope="scope">
- <el-input v-model="scope.row.sampleCode" :disabled="active>1 || scope.$index !== 0" clearable placeholder="涓嶅~鍐欏垯绯荤粺鑷姩鐢熸垚"
- size="small"
- @change="(val)=>changeValue(val, 'sampleCode')"></el-input>
+ <el-input v-model="scope.row.sampleCode" :disabled="active > 1 || scope.$index !== 0" clearable
+ placeholder="涓嶅~鍐欏垯绯荤粺鑷姩鐢熸垚" size="small" @change="(val) => changeValue(val, 'sampleCode')"></el-input>
</template>
</el-table-column>
<el-table-column align="center" label="鏍峰搧鍨嬪彿" min-width="100" prop="model">
<template slot-scope="scope">
- <el-select v-model="scope.row.model" :disabled="active>1 || scope.$index !== 0" allow-create default-first-option filterable
- placeholder="鏍峰搧鍨嬪彿" size="small" style="width: 100%;" @change="handleChangeModel">
+ <el-select v-model="scope.row.model" :disabled="active > 1 || scope.$index !== 0" allow-create
+ default-first-option filterable placeholder="鏍峰搧鍨嬪彿" size="small" style="width: 100%;"
+ @change="handleChangeModel">
<el-option v-for="item in models" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</template>
</el-table-column>
- <el-table-column v-if="!(active>1)" align="center" label="鍨嬪彿鍙傛暟" prop="modelNum" width="130">
+ <el-table-column v-if="!(active > 1)" align="center" label="鍨嬪彿鍙傛暟" prop="modelNum" width="130">
<template slot-scope="scope">
- <el-input v-model="scope.row.modelNum" :disabled="active>1|| scope.$index !== 0" clearable placeholder="闈炲繀濉�"
- size="small"
- @input="methodChange(scope.row.standardMethodListId, scope.row)"></el-input>
+ <el-input v-model="scope.row.modelNum" :disabled="active > 1 || scope.$index !== 0" clearable
+ placeholder="闈炲繀濉�" size="small"
+ @input="methodChange(scope.row.standardMethodListId, scope.row)"></el-input>
</template>
</el-table-column>
<el-table-column align="center" label="妫�楠屾爣鍑�" min-width="100" prop="standardMethodListId">
<template slot-scope="scope">
- <el-select v-model="scope.row.standardMethodListId" :disabled="scope.row.model==null||active>1|| scope.$index !== 0"
- :loading="methodLoad" clearable placeholder="妫�楠屾爣鍑�" size="small"
- style="width: 100%;" @change="(value)=>methodChange(value, scope.row)" @clear="productList = []" @focus="methodFocus">
+ <el-select v-model="scope.row.standardMethodListId"
+ :disabled="scope.row.model == null || active > 1 || scope.$index !== 0" :loading="methodLoad" clearable
+ placeholder="妫�楠屾爣鍑�" size="small" style="width: 100%;" @change="(value) => methodChange(value, scope.row)"
+ @clear="productList = []" @focus="methodFocus">
<el-option v-for="item in methods" :key="item.id" :label="item.code" :value="item.id">
</el-option>
</el-select>
</template>
</el-table-column>
- <el-table-column v-if="addObj.mating==1" align="center" label="閰嶅鏍峰搧鍚嶇О" prop="joinName" width="140">
+ <el-table-column v-if="addObj.mating == 1" align="center" label="閰嶅鏍峰搧鍚嶇О" prop="joinName" width="140">
<template slot-scope="scope">
- <el-input v-model="scope.row.joinName" :autosize="{ minRows: 1, maxRows: 1}" size="small"
- type="textarea"></el-input>
+ <el-input v-model="scope.row.joinName" :autosize="{ minRows: 1, maxRows: 1 }" size="small"
+ type="textarea"></el-input>
</template>
</el-table-column>
- <el-table-column v-if="addObj.mating==1" align="center" label="閰嶅鏍峰搧鍨嬪彿" prop="joinModel" width="140">
+ <el-table-column v-if="addObj.mating == 1" align="center" label="閰嶅鏍峰搧鍨嬪彿" prop="joinModel" width="140">
<template slot-scope="scope">
- <el-input v-model="scope.row.joinModel" :autosize="{ minRows: 1, maxRows: 1}" size="small"
- type="textarea"></el-input>
+ <el-input v-model="scope.row.joinModel" :autosize="{ minRows: 1, maxRows: 1 }" size="small"
+ type="textarea"></el-input>
</template>
</el-table-column>
- <el-table-column v-if="addObj.mating==1" align="center" label="閰嶅鏍峰搧鏁伴噺" prop="joinNum" width="140">
+ <el-table-column v-if="addObj.mating == 1" align="center" label="閰嶅鏍峰搧鏁伴噺" prop="joinNum" width="140">
<template slot-scope="scope">
<el-input-number v-model="scope.row.joinNum" :controls="false" :max="100" :min="1" :precision="0"
- size="small" style="width: 80%;"></el-input-number>
+ size="small" style="width: 80%;"></el-input-number>
</template>
</el-table-column>
<el-table-column align="center" label="寰呮椤规暟閲�" prop="quantity" width="105">
<template slot-scope="scope">
- <el-select v-model="scope.row.quantity" :disabled="active>1|| scope.$index !== 0 || sampleList.length > 1" clearable
- size="small">
- <el-option v-for="item in quantityList" :key="item.value" :label="item.label" :value="item.value"></el-option>
+ <el-select v-model="scope.row.quantity" disabled clearable size="small">
+ <el-option v-for="item in quantityList" :key="item.value" :label="item.label"
+ :value="item.value"></el-option>
</el-select>
</template>
</el-table-column>
</el-table>
- <el-table ref="productTable" v-loading="getProductLoad" :data="productList"
- :row-class-name="tableRowClassName"
- class="el-table"
- max-height="400px"
- style="margin-bottom: 10px;"
- tooltip-effect="dark"
- @select="selectOne"
- @selection-change="selectProduct"
- @select-all="handleAll">
- <el-table-column v-if="active==1" :selectable="selectable" type="selection" width="65"></el-table-column>
+ <el-table ref="productTable" v-loading="getProductLoad" :data="productList" :row-class-name="tableRowClassName"
+ class="el-table" max-height="400px" style="margin-bottom: 10px;"
+ :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border tooltip-effect="dark">
+ <!-- <el-table-column v-if="active == 1" :selectable="selectable" type="selection" width="65"></el-table-column> -->
<el-table-column label="妫�楠岄」" min-width="140" prop="inspectionItem" show-overflow-tooltip>
<template slot="header" slot-scope="scope">
<div style="display: flex;align-items: center;flex-direction: column;font-size: 14px">
<span>妫�楠岄」</span>
- <el-input
- v-if="active==1"
- v-model="inspectionItem"
- placeholder="璇疯緭鍏�"
- size="mini"
- @input="searchFilterList"/>
+ <el-input v-if="active == 1" v-model="inspectionItem" placeholder="璇疯緭鍏�" size="mini"
+ @input="searchFilterList" />
</div>
</template>
</el-table-column>
- <el-table-column label="妫�楠岄」瀛愰」" min-width="140" prop="inspectionItemSubclass"
- show-overflow-tooltip>
+ <el-table-column label="妫�楠岄」瀛愰」" min-width="140" prop="inspectionItemSubclass" show-overflow-tooltip>
<template slot="header" slot-scope="scope">
<div style="display: flex;align-items: center;flex-direction: column;font-size: 14px">
<span>妫�楠岄」瀛愰」</span>
- <el-input
- v-if="active==1"
- v-model="inspectionItemSubclass"
- placeholder="璇疯緭鍏�"
- size="mini"
- @input="searchFilterList"/>
+ <el-input v-if="active == 1" v-model="inspectionItemSubclass" placeholder="璇疯緭鍏�" size="mini"
+ @input="searchFilterList" />
</div>
</template>
</el-table-column>
<el-table-column label="瑕佹眰鍊�" min-width="220px" prop="ask">
<template slot-scope="scope">
- <el-input v-if="active==1&&isAskOnlyRead" v-model="scope.row.ask" :autosize="{ minRows: 1, maxRows: 3}" clearable placeholder="瑕佹眰鍊�"
- size="small" type="textarea"
- @change="e=>requestChange(e,scope.row)"></el-input>
+ <el-input v-if="active == 1 && isAskOnlyRead" v-model="scope.row.ask" :autosize="{ minRows: 1, maxRows: 3 }"
+ clearable placeholder="瑕佹眰鍊�" size="small" type="textarea"
+ @change="e => requestChange(e, scope.row)"></el-input>
<span v-else>
- <template >{{ scope.row.ask }}</template>
+ <template>{{ scope.row.ask }}</template>
</span>
</template>
</el-table-column>
<el-table-column label="瑕佹眰鎻忚堪" min-width="220px" prop="tell">
<template slot-scope="scope">
- <el-input v-if="active==1&&isAskOnlyRead" v-model="scope.row.tell" :autosize="{ minRows: 1, maxRows: 3}" clearable placeholder="瑕佹眰鎻忚堪"
- size="small" type="textarea"
- @change="e=>requestChange(e,scope.row,'tell')"></el-input>
+ <el-input v-if="active == 1 && isAskOnlyRead" v-model="scope.row.tell"
+ :autosize="{ minRows: 1, maxRows: 3 }" clearable placeholder="瑕佹眰鎻忚堪" size="small" type="textarea"
+ @change="e => requestChange(e, scope.row, 'tell')"></el-input>
<span v-else>
- <template >{{ scope.row.tell }}</template>
- </span>
+ <template>{{ scope.row.tell }}</template>
+ </span>
</template>
</el-table-column>
<el-table-column label="鏉′欢" min-width="140" prop="radius" show-overflow-tooltip></el-table-column>
@@ -304,35 +298,29 @@
<template slot="header" slot-scope="scope">
<div style="display: flex;align-items: center;flex-direction: column;font-size: 14px">
<span>璇曢獙鏂规硶</span>
- <el-input
- v-if="active==1"
- v-model="methodS"
- placeholder="璇疯緭鍏�"
- size="mini"
- @input="searchFilterList"/>
+ <el-input v-if="active == 1" v-model="methodS" placeholder="璇疯緭鍏�" size="mini" @input="searchFilterList" />
</div>
</template>
</el-table-column>
<el-table-column label="璁¢噺鍗曚綅" prop="unit" show-overflow-tooltip width="100"></el-table-column>
<el-table-column label="鍗曚环" prop="price" show-overflow-tooltip width="100"></el-table-column>
<el-table-column label="鍖洪棿" min-width="120" prop="section" show-overflow-tooltip></el-table-column>
- <el-table-column :filter-method="filterHandler" :filters="filters" label="瀛愬疄楠屽" min-width="130" prop="sonLaboratory"
- show-overflow-tooltip></el-table-column>
+ <el-table-column :filter-method="filterHandler" :filters="filters" label="瀛愬疄楠屽" min-width="130"
+ prop="sonLaboratory" show-overflow-tooltip></el-table-column>
</el-table>
</div>
<!--鐗规畩鍊煎鐞嗘-->
- <el-dialog :before-close="beforeClose" :close-on-click-modal="false" :close-on-press-escape="false" :show-close="false"
- :visible.sync="bsm1DiaAll"
- min-width="400px"
- title="妫�娴嬪埌鐗规畩椤癸紝璇蜂綔鍑轰互涓嬮�夋嫨">
+ <el-dialog :before-close="beforeClose" :close-on-click-modal="false" :close-on-press-escape="false"
+ :show-close="false" :visible.sync="bsm1DiaAll" min-width="400px" title="妫�娴嬪埌鐗规畩椤癸紝璇蜂綔鍑轰互涓嬮�夋嫨">
<div v-for="(item, index) in bsm1DiaList" :key="item.id" class="body" style="max-height: 60vh;">
- <span>{{item.inspectionItem}}</span>
+ <span>{{ item.inspectionItem }}</span>
<el-row v-if="item.bsm1">
<el-col :span="24" class="search_thing" style="height: initial;margin: 5px 0;">
<div class="search_label" style="width: 80px;"><span class="required-span">* </span>閫夐」锛�</div>
<div class="search_input">
<el-radio-group v-model="item.bsm1Val" v-removeAriaHidden @input="upBsmAll(item)">
- <el-radio v-for="(a, ai) in JSON.parse(item.bsmRow.sectionCopy)" :key="ai" :label="a" style="margin-bottom: 2px;margin-top: 2px;"></el-radio>
+ <el-radio v-for="(a, ai) in JSON.parse(item.bsmRow.sectionCopy)" :key="ai" :label="a"
+ style="margin-bottom: 2px;margin-top: 2px;"></el-radio>
</el-radio-group>
</div>
</el-col>
@@ -340,8 +328,8 @@
<div class="search_label" style="width: 80px;">瑕佹眰鍊硷細</div>
<div class="search_input">
<el-radio-group v-model="item.bsm1Val" v-removeAriaHidden @input="upBsmAll(item)">
- <el-radio v-for="(a, ai) in JSON.parse(item.bsmRow.sectionCopy)" :key="ai"
- :label="a">{{JSON.parse(item.bsmRow.askCopy)[ai]}}</el-radio>
+ <el-radio v-for="(a, ai) in JSON.parse(item.bsmRow.sectionCopy)" :key="ai" :label="a">{{
+ JSON.parse(item.bsmRow.askCopy)[ai] }}</el-radio>
</el-radio-group>
</div>
</el-col>
@@ -354,8 +342,8 @@
</span>
</el-dialog>
<el-dialog :close-on-click-modal="false" :close-on-press-escape="false"
- :show-close="false" :visible.sync="bsm3Dia"
- title="鍖洪棿鍊煎~鍐�" width="800px">
+ :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border :show-close="false"
+ :visible.sync="bsm3Dia" title="鍖洪棿鍊煎~鍐�" width="800px">
<el-table :data="editTable" height="80vh" style="width: 100%">
<!-- inspectionItemList -->
<el-table-column label="妫�楠岄」" prop="inspectionItemList" width="180">
@@ -368,36 +356,27 @@
</el-table-column>
<el-table-column label="璇嗗埆绗﹀��" prop="value">
<template slot-scope="scope">
- <el-input v-model="scope.row.value" placeholder="璇疯緭鍏�" size="small" @input="inputValueHandler(scope.row,scope.$index)"></el-input>
+ <el-input v-model="scope.row.value" placeholder="璇疯緭鍏�" size="small"
+ @input="inputValueHandler(scope.row, scope.$index)"></el-input>
</template>
</el-table-column>
</el-table>
<span slot="footer" class="dialog-footer">
<el-row>
- <el-button @click="bsm3Dia=false">鍙� 娑�</el-button>
+ <el-button @click="bsm3Dia = false">鍙� 娑�</el-button>
<el-button :loading="saveLoad" type="primary" @click="save0">纭� 瀹�</el-button>
</el-row>
</span>
</el-dialog>
- <el-dialog
- :close-on-click-modal="false"
- :close-on-press-escape="false"
- :show-close="false"
- :visible.sync="dialogVisible"
- title="鎻愮ず"
- width="32%">
+ <el-dialog :close-on-click-modal="false" :close-on-press-escape="false" :show-close="false"
+ :visible.sync="dialogVisible" title="鎻愮ず" width="32%">
<span>{{ dialogMessage }}</span>
<span slot="footer" class="dialog-footer">
- <el-button type="primary" @click="goBack()">纭� 瀹�</el-button>
+ <el-button type="primary" @click="dialogVisible = false, closeOpenPage()">纭� 瀹�</el-button>
</span>
</el-dialog>
- <el-dialog
- :close-on-click-modal="false"
- :close-on-press-escape="false"
- :show-close="false"
- :visible.sync="dialogVisible2"
- title="鎻愮ず"
- width="32%">
+ <el-dialog :close-on-click-modal="false" :close-on-press-escape="false" :show-close="false"
+ :visible.sync="dialogVisible2" title="鎻愮ず" width="32%">
<span>{{ dialogMessage2 }}</span>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="dialogVisible2 = false">纭� 瀹�</el-button>
@@ -415,13 +394,8 @@
<el-button :loading="templateLoading" type="primary" @click="addTemplateDia">纭� 瀹�</el-button>
</span>
</el-dialog>
- <el-dialog
- :close-on-click-modal="false"
- :close-on-press-escape="false"
- :show-close="false"
- :visible.sync="noNeedCheckDia"
- title="鍏嶆鎻愮ず"
- width="32%">
+ <el-dialog :close-on-click-modal="false" :close-on-press-escape="false" :show-close="false"
+ :visible.sync="noNeedCheckDia" title="鍏嶆鎻愮ず" width="32%">
<span>纭鍏嶆褰撳墠妫�楠屽崟锛�</span>
<span slot="footer" class="dialog-footer">
<el-button :loading="noNeedCheckLoad" type="primary" @click="handleNoNeedCheck">纭� 瀹�</el-button>
@@ -432,34 +406,37 @@
<script>
import {
+ addExemptionOrder,
addInsOrder,
- addRawMaterOrderTemplate, delRawMaterOrderTemplate,
+ addRawMaterOrderTemplate,
+ delRawMaterOrderTemplate,
getInsOrder,
getUserNow,
- notificationRawOrder, selectRawMaterOrderTemplateById, selectStandardMethodEnum, selectStandardProductList,
+ notificationRawOrder, selectRawMaterOrderTemplate,
+ selectRawMaterOrderTemplateById,
+ selectsStandardMethodByFLSSM,
+ selectStandardMethodEnum,
+ selectStandardProductList,
selectStandardTreeListByPartNo
} from "@/api/business/rawMaterialOrder";
+import fileList from "./commom/fileList.vue"
+import limsTable from "@/components/Table/lims-table.vue";
export default {
name: "CustomsInspection",
dicts: ['check_type', 'urgency_level'],
- components: {},
+ components: { limsTable, fileList },
props: {
- currentId: {
- type: Number,
- default: () => 0
- },
- isReport: {
- type: Number,
- default: () => null
- }
},
data() {
return {
customsInspection: {},
+ fileDialogVisible: false,
orderType: '',
active: 0,
- editTable:[], // 鍖洪棿鐗规畩鍊煎~鍐�
+ currentId: 0,
+ isReport: '',
+ editTable: [], // 鍖洪棿鐗规畩鍊煎~鍐�
template: null,
saveLoad: false, // 淇濆瓨鎸夐挳loading
noNeedCheckLoad: false, // 鍏嶆鎸夐挳loading
@@ -552,9 +529,9 @@
addObj1: {},
model: null,
standardMethodListId: null,
- inspectionItem:null,
- inspectionItemSubclass:null,
- methodS:null,
+ inspectionItem: null,
+ inspectionItemSubclass: null,
+ methodS: null,
codeLevel: '', // 鏍峰搧鎵�鍦ㄧ骇鍒�
selectTreeTem: '', // 鏍峰搧鐖剁骇
checkType: [], // 妫�楠岀被鍨嬮�夐」鏁版嵁
@@ -567,14 +544,14 @@
templateName: '', // 淇濆瓨妯$増鍚嶇О
templates: [], // 妯$増涓嬫媺妗嗘暟鎹�
quantityList: [
- { label: 1, value: 1},
- { label: 2, value: 2},
- { label: 3, value: 3},
- { label: 4, value: 4},
- { label: 5, value: 5},
- { label: 6, value: 6},
- { label: 7, value: 7},
- { label: 8, value: 8},
+ { label: 1, value: 1 },
+ { label: 2, value: 2 },
+ { label: 3, value: 3 },
+ { label: 4, value: 4 },
+ { label: 5, value: 5 },
+ { label: 6, value: 6 },
+ { label: 7, value: 7 },
+ { label: 8, value: 8 },
],
types: [], // 绱ф�ョ▼搴︿笅鎷夋
dataTitle: [
@@ -589,7 +566,7 @@
],
dataIndex: 0,
isShowTab: false,
- symbolList:['RTS'],
+ symbolList: ['RTS'],
bsm3Dia: false, // 鍖洪棿鍊煎~鍐欏脊妗�
bsmRow: {},
bsm1: false,
@@ -633,17 +610,31 @@
this.standardMethodListId = null
}
},
- mounted() {
+ created() {
this.active = this.$route.query.active
this.orderType = this.$route.query.orderType
+ this.currentId = this.$route.query.currentId
+ this.isReport = this.$route.query.isReport
this.customsInspection = this.$route.query.customsInspection
- // this.getUserNowList() // 鑾峰彇褰撳墠鐢ㄦ埛淇℃伅
- this.selectStandardMethods() // 鑾峰彇妫�楠屾爣鍑嗕笅鎷夋鏁版嵁
- this.getInfo() // 鑾峰彇鏁版嵁
-
+ this.getInfo();
},
+ activated() {
+ this.active = this.$route.query.active
+ this.orderType = this.$route.query.orderType
+ this.currentId = this.$route.query.currentId
+ this.isReport = this.$route.query.isReport
+ this.customsInspection = this.$route.query.customsInspection
+ this.getInfo();
+ },
+ // getInfo() {
+ // this.getInfo() // 鑾峰彇鏁版嵁
+ // },
methods: {
- save1 () {
+ handleFileDialog() {
+ this.fileDialogVisible = true
+ this.currentNo = addObj.partNo || customsInspection.partNo;
+ },
+ save1() {
if (this.bsm1DiaList.length > 0) {
this.bsm1DiaList.forEach(item => {
if (!item.bsm1Val) {
@@ -664,25 +655,27 @@
done()
},
//鐗规畩鍊煎~鍐欏鐞�
- inputValueHandler(row,index){
- if(row){
- const nextIndex = index+1
+ inputValueHandler(row, index) {
+ if (row) {
+ const nextIndex = index + 1
for (let i = nextIndex; i < this.editTable.length; i++) {
const element = this.editTable[i];
- if(element.model==row.model&&row.symbolItem==element.symbolItem){
+ if (element.model == row.model && row.symbolItem == element.symbolItem) {
this.editTable[i].value = row.value
}
}
}
},
// 鏌ョ湅鏃跺垏鎹ab鏍�
- handleDataTab (m, i) {
+ handleDataTab(m, i) {
this.dataIndex = i
this.getInfo()
},
// 鑾峰彇鏁版嵁
- getInfo () {
- if (this.active === 2) {
+ getInfo() {
+ this.getUserNowList() // 鑾峰彇褰撳墠鐢ㄦ埛淇℃伅
+ this.selectStandardMethods() // 鑾峰彇妫�楠屾爣鍑嗕笅鎷夋鏁版嵁
+ if (this.active == 2) {
let orderId = ''
if (!this.customsInspection.enterOrderId && this.customsInspection.quarterOrderId) {
this.isShowTab = false
@@ -695,7 +688,7 @@
orderId = this.dataIndex === 0 ? this.customsInspection.enterOrderId : this.customsInspection.quarterOrderId
} else if (!this.customsInspection.enterOrderId && !this.customsInspection.quarterOrderId) {
this.isShowTab = false
- orderId = this.isReport === 1 ? this.customsInspection.insOrderId : this.customsInspection.id
+ orderId = this.isReport == 1 ? this.customsInspection.insOrderId : this.customsInspection.id
}
// 鏌ョ湅
// 璇锋眰鎺ュ彛锛屽洖鏄炬暟鎹�
@@ -729,11 +722,13 @@
}
})
} else {
- notificationRawOrder({ifsInventoryId:this.customsInspection.id}).then(res => {
+ notificationRawOrder({ ifsInventoryId: this.customsInspection.id }).then(res => {
if (res.code === 200) {
if (res.data === 1) {
- this.dialogVisible2 = true
- this.dialogMessage2 = '褰撳墠鎵规鐨勬牱鍝佸凡妫�楠岃繃, 鍙互鍏嶆'
+ if (this.orderType != 1) {
+ this.dialogVisible2 = true
+ this.dialogMessage2 = '褰撳墠鎵规鐨勬牱鍝佸凡妫�楠岃繃, 鍙互鍏嶆'
+ }
} else if (res.data === 2) {
this.dialogVisible2 = true
this.dialogMessage2 = '褰撳墠鎵规鐨勬牱鍝佸凡瓒�20鍚�, 闇�瑕佸绾у娆℃楠�'
@@ -741,37 +736,39 @@
}
})
// 鎶ユ娴佺▼
- selectStandardTreeListByPartNo({partNo:this.customsInspection.partNo}).then(res => {
- if (res.code === 200) {
+ selectStandardTreeListByPartNo({ partNo: this.customsInspection.partNo }).then(res => {
+ if (res.data !== null) {
this.addObj.sample = res.data.label
this.codeLevel = res.data.code
- this.addObj.qtyArrived = this.customsInspection.qtyArrived
- this.addObj.partNo = this.customsInspection.partNo
- this.addObj.partDetail = this.customsInspection.partDesc
- this.addObj.receiverDate = this.customsInspection.receiverDate
- this.addObj.orderNo = this.customsInspection.orderNo
- this.addObj.declareUser = this.customsInspection.declareUser
- this.addObj.testQuantity = this.customsInspection.testQuantity
- this.addObj.buyUnitMeas = this.customsInspection.buyUnitMeas
- this.addObj.updateBatchNo = this.customsInspection.updateBatchNo
- if (this.orderType === 1) {
- this.addObj.orderType = 'Quarterly inspection'
+ this.$set(this.addObj, 'qtyArrived', this.customsInspection.qtyArrived)
+ this.$set(this.addObj, 'partNo', this.customsInspection.partNo)
+ this.$set(this.addObj, 'receiverDate', this.customsInspection.receiverDate)
+ this.$set(this.addObj, 'orderNo', this.customsInspection.orderNo)
+ this.$set(this.addObj, 'declareUser', this.customsInspection.declareUser)
+ this.$set(this.addObj, 'testQuantity', this.customsInspection.testQuantity)
+ this.$set(this.addObj, 'buyUnitMeas', this.customsInspection.buyUnitMeas)
+ this.$set(this.addObj, 'updateBatchNo', this.customsInspection.updateBatchNo)
+ this.$set(this.addObj, 'partDetail', this.customsInspection.partDesc)
+ if (this.orderType == 1) {
+ this.$set(this.addObj, 'orderType', 'Quarterly inspection')
}
const str = res.data.treeName.split('-')
this.selectTreeTem = str.join(' - ')
this.selectTree = str.join(' - ')
- this.addListInfo(this.codeLevel, res.data) // 鍘熸潗鏂欐牱鍝佹槸鍥哄畾鐨勶紝灏遍粯璁よ祴鍊间竴鏉℃暟鎹紝鍙媶鍒�
- this.selectInsOrderTemplate() // 鍘熸潗鏂欐ā鏉垮垪琛ㄦ煡璇�
+ this.addListInfo(this.codeLevel, res.data) // 鍘熻緟鏉愭牱鍝佹槸鍥哄畾鐨勶紝灏遍粯璁よ祴鍊间竴鏉℃暟鎹紝鍙媶鍒�
+ this.selectInsOrderTemplate() // 鍘熻緟鏉愭ā鏉垮垪琛ㄦ煡璇�
+ } else {
+ this.dialogVisible = true
+ this.dialogMessage = res.message
}
}).catch(err => {
- this.dialogVisible = true
- this.dialogMessage = err.message
+
})
}
},
// 鏌ヨ妯℃澘-鍙嶆樉妯℃澘
selectInsOrderTemplateByIdList(e) {
- selectRawMaterOrderTemplateById({id: e}).then(res => {
+ selectRawMaterOrderTemplateById({ id: e }).then(res => {
let obj = JSON.parse(res.data)
this.sampleList = obj.sampleList;
this.productList = obj.sampleList[0].insProduct
@@ -793,7 +790,7 @@
thing: JSON.stringify({
// addObj: this.addObj,
sampleList: sampleList,
- selectTree:this.selectTree
+ selectTree: this.selectTree
})
}).then(res => {
this.templateLoading = false;
@@ -813,22 +810,22 @@
cancelButtonText: "鍙栨秷",
type: "warning"
}).then(() => {
- delRawMaterOrderTemplate({id: row.id}).then(res => {
+ delRawMaterOrderTemplate({ id: row.id }).then(res => {
this.$message.success('鍒犻櫎鎴愬姛')
this.selectInsOrderTemplate()
}).catch(e => {
this.$message.error('鍒犻櫎澶辫触')
})
- }).catch(() => {})
+ }).catch(() => { })
},
// 鏌ヨ妯℃澘鍒楄〃
selectInsOrderTemplate() {
- selectStandardTreeListByPartNo({partNo:this.addObj.partNo}).then(res => {
+ selectRawMaterOrderTemplate({ partNo: this.addObj.partNo }).then(res => {
this.templates = res.data
})
},
// 鎷嗗垎
- handleSplitCountNum () {
+ handleSplitCountNum() {
this.sample.joinName = null
this.sample.joinModel = null
this.sample.joinNum = 1
@@ -851,7 +848,7 @@
this.computationalPairing(this.sampleList.length)
},
// 妫�楠岄」鍒楄〃绛涢��
- searchFilterList () {
+ searchFilterList() {
const vtw = {
inspectionItem: this.inspectionItem, // 妫�楠岄」
inspectionItemSubclass: this.inspectionItemSubclass, // 妫�楠岄」瀛愰」
@@ -862,7 +859,7 @@
})
this.changeProductList0()
if (isHaveValue) {
- for(let i in vtw) {
+ for (let i in vtw) {
if (vtw[i]) {
this.productList = this.productList0.filter((item) => {
return item[i] && item[i].includes(vtw[i])
@@ -875,11 +872,11 @@
}
},
containsValue(str) {
- if(str){
+ if (str) {
let symbolItem = ''
- this.symbolList.some(value =>{
- if(str.includes(value)){
- symbolItem = value
+ this.symbolList.some(value => {
+ if (str.includes(value)) {
+ symbolItem = value
return true
}
})
@@ -894,28 +891,24 @@
this.$message.error('璇烽�夋嫨妫�楠屾爣鍑�')
return
}
- if (!this.sampleList.every(m => m.quantity)) {
- this.$message.error('璇烽�夋嫨寰呮椤规暟閲�')
- return
- }
const sampleList = this.HaveJson(this.sampleList)
sampleList.forEach(item => {
item.insProduct = this.productList
})
this.getTotal(sampleList)
let projectNum = this.totalArr.filter(a => a.state == 1).length
- if(projectNum==0){
+ if (projectNum == 0) {
this.$confirm('妫�楠岄」鐩负绌猴紝鏄惁纭鎻愪氦?', "鎻愮ず", {
confirmButtonText: "纭畾",
cancelButtonText: "鍙栨秷",
type: "warning"
}).then(() => {
this.saveMethod(sampleList)
- }).catch(() => {})
- }else{
- let isRTS = this.totalArr.find(a => a.ask != null && this.symbolList.find(b=>a.ask.includes(b)) && a.state == 1)
+ }).catch(() => { })
+ } else {
+ let isRTS = this.totalArr.find(a => a.ask != null && this.symbolList.find(b => a.ask.includes(b)) && a.state == 1)
if (isRTS) {
- this.editTable = this.handleData(sampleList,this.containsValue, 0)
+ this.editTable = this.handleData(sampleList, this.containsValue, 0)
this.editTable.forEach(item => {
item.value = item.modelNum
})
@@ -931,21 +924,21 @@
});
},
// 鎻愪氦鍖洪棿鍊�
- save0(){
- if(this.editTable.every(m=>m.value)){
+ save0() {
+ if (this.editTable.every(m => m.value)) {
this.sampleList.forEach(item => {
item.insProduct = this.productList
})
- let sampleList = this.handleData(this.HaveJson(this.sampleList),this.handleAsk,1)
+ let sampleList = this.handleData(this.HaveJson(this.sampleList), this.handleAsk, 1)
sampleList.forEach(a => {
- a.insProduct = a.insProduct.filter(b=>b.state === 1)
+ a.insProduct = a.insProduct.filter(b => b.state === 1)
})
this.saveMethod(sampleList)
- }else{
+ } else {
this.$message.error('璇峰~鍐欒瘑鍒鍊�')
}
},
- noNeedCheck () {
+ noNeedCheck() {
this.$refs['addObj'].validate((valid) => {
if (valid) {
if (!this.sampleList.every(m => m.standardMethodListId)) {
@@ -959,7 +952,7 @@
})
this.getTotal(sampleList)
let projectNum = this.totalArr.filter(a => a.state == 1).length
- if (projectNum!=0){
+ if (projectNum != 0) {
this.$message.error('鍏嶆涓嶅彲閫夋嫨妫�楠岄」')
return
}
@@ -970,14 +963,13 @@
}
});
},
- handleNoNeedCheck () {
+ handleNoNeedCheck() {
// 妫�楠岀被鍨嬩负杩涘巶妫�楠屾椂鍙�夋嫨鍏嶆锛屼絾涓嶈兘閫夋嫨妫�楠岄」
const sampleList = this.HaveJson(this.sampleList)
sampleList.forEach(item => {
item.insProduct = this.productList
})
this.getTotal(sampleList)
- const pairing = []
let trees = this.selectTree.split(" - ")
if (trees.length < 3) {
this.$message.error('鏈�夋嫨瀵硅薄')
@@ -995,40 +987,35 @@
this.addObj.ifsInventoryId = this.customsInspection.id
this.noNeedCheckLoad = true
addExemptionOrder({
- str: JSON.stringify({
- insOrder: this.addObj,
- list: JSON.stringify(sampleList.map(a => {
- if (a.modelNum) {
- // 鏍规嵁x鍙峰垽鏂瀷鍙峰弬鏁颁笌鏍峰搧鍨嬪彿鐨勬嫾鎺ヤ綅缃�
- // 渚嬪脳4锛屽氨涓�500ML脳4锛�4脳锛屽氨涓�4脳500ML
- const index = a.modelNum.indexOf('脳')
- if (index === 0) {
- a.model = a.model + a.modelNum
- } else if (index === -1) {
- a.model = a.model + '-' + a.modelNum
- } else {
- a.model = a.modelNum + a.model
- }
+ insOrder: this.addObj,
+ sampleList: sampleList.map(a => {
+ if (a.modelNum) {
+ // 鏍规嵁x鍙峰垽鏂瀷鍙峰弬鏁颁笌鏍峰搧鍨嬪彿鐨勬嫾鎺ヤ綅缃�
+ // 渚嬪脳4锛屽氨涓�500ML脳4锛�4脳锛屽氨涓�4脳500ML
+ const index = a.modelNum.indexOf('脳')
+ if (index === 0) {
+ a.model = a.model + a.modelNum
+ } else if (index === -1) {
+ a.model = a.model + '-' + a.modelNum
} else {
- a.model = a.model + ((a.modelNum == null || a.modelNum == '' || a.modelNum == 'null') ? '' : ('-' + a.modelNum))
+ a.model = a.modelNum + a.model
}
- a.insProduct = a.insProduct.filter(b=>b.state === 1)
- return a
- })),
- pairing: JSON.stringify(pairing)
- })
+ } else {
+ a.model = a.model + ((a.modelNum == null || a.modelNum == '' || a.modelNum == 'null') ? '' : ('-' + a.modelNum))
+ }
+ a.insProduct = a.insProduct.filter(b => b.state === 1)
+ return a
+ }),
}).then(res => {
this.noNeedCheckLoad = false
- if (res.code == 201) return
this.noNeedCheckDia = false
this.$message.success('宸叉彁浜�')
- this.goBack()
- }).catch(e=>{
+ this.closeOpenPage()
+ }).catch(e => {
this.noNeedCheckLoad = false
})
},
- saveMethod(sampleList){
- const pairing = []
+ saveMethod(sampleList) {
let trees = this.selectTree.split(" - ")
if (trees.length < 3) {
this.$message.error('鏈�夋嫨瀵硅薄')
@@ -1045,41 +1032,45 @@
this.addObj.model = (trees[4] == undefined ? null : trees[4])
this.addObj.ifsInventoryId = this.customsInspection.id
this.saveLoad = true
+ if (this.addObj.createTime) {
+ delete this.addObj.createTime
+ }
addInsOrder({
- str: JSON.stringify({
- insOrder: this.addObj,
- list: JSON.stringify(sampleList.map(a => {
- if (a.modelNum) {
- // 鏍规嵁x鍙峰垽鏂瀷鍙峰弬鏁颁笌鏍峰搧鍨嬪彿鐨勬嫾鎺ヤ綅缃�
- // 渚嬪脳4锛屽氨涓�500ML脳4锛�4脳锛屽氨涓�4脳500ML
- const index = a.modelNum.indexOf('脳')
- if (index === 0) {
- a.model = a.model + a.modelNum
- } else if (index === -1) {
- a.model = a.model + '-' + a.modelNum
- } else {
- a.model = a.modelNum + a.model
- }
+ insOrder: this.addObj,
+ sampleList: sampleList.map(a => {
+ if (a.insProduct.length > 0) {
+ a.insProduct.forEach(c => {
+ delete c.id
+ })
+ }
+ if (a.modelNum) {
+ // 鏍规嵁x鍙峰垽鏂瀷鍙峰弬鏁颁笌鏍峰搧鍨嬪彿鐨勬嫾鎺ヤ綅缃�
+ // 渚嬪脳4锛屽氨涓�500ML脳4锛�4脳锛屽氨涓�4脳500ML
+ const index = a.modelNum.indexOf('脳')
+ if (index === 0) {
+ a.model = a.model + a.modelNum
+ } else if (index === -1) {
+ a.model = a.model + '-' + a.modelNum
} else {
- a.model = a.model + ((a.modelNum == null || a.modelNum == '' || a.modelNum == 'null') ? '' : ('-' + a.modelNum))
+ a.model = a.modelNum + a.model
}
- a.insProduct = a.insProduct.filter(b=>b.state === 1)
- return a
- })),
- pairing: JSON.stringify(pairing)
- })
+ } else {
+ a.model = a.model + ((a.modelNum == null || a.modelNum == '' || a.modelNum == 'null') ? '' : ('-' + a.modelNum))
+ }
+ a.insProduct = a.insProduct.filter(b => b.state === 1)
+ return a
+ }),
}).then(res => {
this.saveLoad = false
- if (res.code == 201) return
this.$message.success('宸叉彁浜�')
this.bsm3Dia = false;
- this.goBack()
- }).catch(e=>{
+ this.closeOpenPage()
+ }).catch(e => {
this.saveLoad = false
})
},
- handleAsk(ask,symbolItem, value) {
- try{
+ handleAsk(ask, symbolItem, value) {
+ try {
let code = [">", "<", "=", "锛�", "锛�", "鈮�", "鈮�", "卤", "*", "/"];
let code2 = ['+', '*', '/', '-']
if (ask.includes('&')) {
@@ -1123,42 +1114,42 @@
return code[index] + '' + num
}
}
- }catch(e){}
+ } catch (e) { }
},
- handleData(sampleList,calBack,type){
+ handleData(sampleList, calBack, type) {
let editTable = []
sampleList.forEach(item => {
let obj = {
- sampleCode:item.sampleCode,
- model:item.model,
- symbolList:[],
- sampleId:item.id,
- modelNum:item.modelNum,
+ sampleCode: item.sampleCode,
+ model: item.model,
+ symbolList: [],
+ sampleId: item.id,
+ modelNum: item.modelNum,
}
if (item.insProduct && item.insProduct.length > 0) {
item.insProduct.forEach(a => {
if (a.state == 1) {
- if(type==0){
+ if (type == 0) {
let str = calBack(a.ask)
- str&&obj.symbolList.push({
- symbolItem:str,
- inspectionItem:a.inspectionItem,
+ str && obj.symbolList.push({
+ symbolItem: str,
+ inspectionItem: a.inspectionItem,
})
- }else if(type==1){
+ } else if (type == 1) {
let arr = this.editTable.filter(b => b.sampleId == item.id)
- for (var i=0;i<arr.length;i++){
- if(a.ask){
- if(a.ask.includes(arr[i].symbolItem)){
- let ask = calBack(a.ask, arr[i].symbolItem,arr[i].value)
+ for (var i = 0; i < arr.length; i++) {
+ if (a.ask) {
+ if (a.ask.includes(arr[i].symbolItem)) {
+ let ask = calBack(a.ask, arr[i].symbolItem, arr[i].value)
if (ask) {
a.ask = ask
}
- let tell = this.handleAsk(a.tell, arr[i].symbolItem,arr[i].value)
+ let tell = this.handleAsk(a.tell, arr[i].symbolItem, arr[i].value)
if (tell) {
a.tell = tell
}
}
- }else{
+ } else {
this.$message.error('瑕佹眰鍊间负绌猴紝闇�瑕佸幓鏍囧噯搴撶淮鎶わ紒')
}
}
@@ -1174,21 +1165,21 @@
if (b.productList && b.productList.length > 0) {
b.productList.forEach(c => {
if (c.state == 1) {
- if(type==0){
+ if (type == 0) {
let str = calBack(c.ask)
- str&&obj.symbolList.push({
- symbolItem:str,
- inspectionItem:c.inspectionItem,
+ str && obj.symbolList.push({
+ symbolItem: str,
+ inspectionItem: c.inspectionItem,
})
- }else if(type==1){
+ } else if (type == 1) {
let arr = this.editTable.filter(b => b.sampleId == item.id)
arr.forEach(f => {
- if(c.ask.includes(f.symbolItem)){
- let ask = calBack(c.ask, f.symbolItem,f.value)
+ if (c.ask.includes(f.symbolItem)) {
+ let ask = calBack(c.ask, f.symbolItem, f.value)
if (ask) {
c.ask = ask
}
- let tell = this.handleTell(c.tell, f.symbolItem,f.value)
+ let tell = this.handleTell(c.tell, f.symbolItem, f.value)
if (tell) {
c.tell = tell
}
@@ -1205,25 +1196,25 @@
if (b.productList && b.productList.length > 0) {
b.productList.forEach(c => {
if (c.state == 1) {
- if(type==0){
+ if (type == 0) {
let str = calBack(c.ask)
- str&&obj.symbolList.push({
- symbolItem:str,
- inspectionItem:c.inspectionItem,
+ str && obj.symbolList.push({
+ symbolItem: str,
+ inspectionItem: c.inspectionItem,
})
- }else if(type==1){
+ } else if (type == 1) {
// let ask = calBack(c.ask, c.rts)
// if (ask && c.state == 1) {
// c.ask = csk
// }
let arr = this.editTable.filter(b => b.sampleId == item.id)
arr.forEach(f => {
- if(c.ask.includes(f.symbolItem)){
- let ask = calBack(c.ask, f.symbolItem,f.value)
+ if (c.ask.includes(f.symbolItem)) {
+ let ask = calBack(c.ask, f.symbolItem, f.value)
if (ask) {
c.ask = ask
}
- let tell = this.handleTell(c.tell, f.symbolItem,f.value)
+ let tell = this.handleTell(c.tell, f.symbolItem, f.value)
if (tell) {
c.tell = tell
}
@@ -1238,25 +1229,25 @@
if (c.productList && c.productList.length > 0) {
c.productList.forEach(d => {
if (d.state == 1) {
- if(type==0){
+ if (type == 0) {
let str = calBack(d.ask)
- str&&obj.symbolList.push({
- symbolItem:str,
- inspectionItem:d.inspectionItem,
+ str && obj.symbolList.push({
+ symbolItem: str,
+ inspectionItem: d.inspectionItem,
})
- }else if(type==1){
+ } else if (type == 1) {
// let ask = calBack(d.ask, d.rts)
// if (ask && d.state == 1) {
// d.ask = ask
// }
let arr = this.editTable.filter(b => b.sampleId == item.id)
arr.forEach(f => {
- if(d.ask.includes(f.symbolItem)){
- let ask = calBack(d.ask, f.symbolItem,f.value)
+ if (d.ask.includes(f.symbolItem)) {
+ let ask = calBack(d.ask, f.symbolItem, f.value)
if (ask) {
d.ask = ask
}
- let tell = this.handleTell(d.tell, f.symbolItem,f.value)
+ let tell = this.handleTell(d.tell, f.symbolItem, f.value)
if (tell) {
d.tell = tell
}
@@ -1272,11 +1263,11 @@
}
})
}
- if(type==0){
+ if (type == 0) {
editTable.push(obj)
}
})
- if(type==0){
+ if (type == 0) {
editTable.forEach(a => {
a.symbolList.forEach(b => {
let arr = a.symbolList.filter(c => c.symbolItem == b.symbolItem);
@@ -1285,13 +1276,13 @@
})
editTable.forEach(a => {
let mySet = new Set();
- a.symbolList = a.symbolList.filter(b =>{
+ a.symbolList = a.symbolList.filter(b => {
let num0 = mySet.size;
mySet.add(b.symbolItem);
let num1 = mySet.size;
- if(num0!=num1){
+ if (num0 != num1) {
return true;
- }else{
+ } else {
return false
}
})
@@ -1300,19 +1291,19 @@
editTable.forEach(a => {
a.symbolList.forEach(b => {
let obj = {
- sampleCode:a.sampleCode,
- model:a.model,
- symbolItem:b.symbolItem,
- sampleId:a.sampleId,
- value:null,
- inspectionItemList:b.inspectionItemList,
- modelNum:a.modelNum,
+ sampleCode: a.sampleCode,
+ model: a.model,
+ symbolItem: b.symbolItem,
+ sampleId: a.sampleId,
+ value: null,
+ inspectionItemList: b.inspectionItemList,
+ modelNum: a.modelNum,
}
editTableNew.push(obj)
})
})
return editTableNew
- }else{
+ } else {
return sampleList
}
},
@@ -1322,7 +1313,7 @@
} catch (e) {
}
},
- replaceAll(str,find,value) {
+ replaceAll(str, find, value) {
if (str === undefined) {
return str
}
@@ -1400,10 +1391,10 @@
let num1 = mySet0.size
mySet0.add(item.sonLaboratory)
let num2 = mySet0.size
- if(num2>num1){
+ if (num2 > num1) {
this.sonLaboratoryList.push({
- label:item.sonLaboratory,
- value:item.sonLaboratory,
+ label: item.sonLaboratory,
+ value: item.sonLaboratory,
})
}
})
@@ -1451,11 +1442,11 @@
} else {
this.methods = res.data.standardMethodList
}
- } catch (e) {}
+ } catch (e) { }
})
},
// 璧嬪�肩涓�鏉¢粯璁ゆ暟鎹�
- addListInfo (codeLevel, data) {
+ addListInfo(codeLevel, data) {
this.sampleList = []
this.productList = []
this.sample.model = this.addObj.model
@@ -1548,14 +1539,14 @@
}
this.bsm2Val3 = this.HaveJson(this.permute(nums))
},
- tableRowClassName({row, rowIndex}) {
+ tableRowClassName({ row, rowIndex }) {
if (row.state === 0) {
return '';
}
return 'warning-row';
},
// 淇敼鏍峰搧鍚嶇О
- changeValue (val, string) {
+ changeValue(val, string) {
if (this.sampleList.length > 1) {
// 鏈変袱鏉℃牱鍝佹椂锛岀浜屾潯鏍峰搧淇℃伅鍜岀涓�鏉′繚鎸佷竴鑷�
this.sampleList.forEach(item => {
@@ -1582,9 +1573,9 @@
}
this.getProductLoad = true
let selectTreeList = this.selectTree.split(" - ")
- this.addObj.model&&(selectTreeList[selectTreeList.length - 1] = this.addObj.model)
+ this.addObj.model && (selectTreeList[selectTreeList.length - 1] = this.addObj.model)
selectStandardProductList({
- model: this.addObj.model?this.addObj.model:row.model,
+ model: this.addObj.model ? this.addObj.model : row.model,
modelNum: row.modelNum,
standardMethodListId: val,
factory: selectTreeList.join(" - "),
@@ -1592,21 +1583,19 @@
ifsInventoryId: this.customsInspection.id
}).then(res => {
this.getProductLoad = false
- if (res.code === 200) {
- res.data.forEach(a => {
- a.state = 0
+ res.data.forEach(a => {
+ a.state = 0
+ })
+ this.productList = this.HaveJson(res.data)
+ this.productList0 = JSON.parse(JSON.stringify(this.productList))
+ this.$refs.sampleTable.setCurrentRow(row)
+ setTimeout(() => {
+ this.productList.forEach(a => {
+ if (a.state == 1) this.toggleSelection(a)
})
- this.productList = this.HaveJson(res.data)
- this.productList0 = JSON.parse(JSON.stringify(this.productList))
- this.$refs.sampleTable.setCurrentRow(row)
- setTimeout(() => {
- this.productList.forEach(a => {
- if (a.state == 1) this.toggleSelection(a)
- })
- }, 200)
- }
+ }, 200)
}).catch(err => {
- console.log('err-',err)
+ console.log('err-', err)
})
},
// 閫夋嫨鏍峰搧鍨嬪彿鐨勫洖璋�
@@ -1667,7 +1656,7 @@
}
},
// 鍏ㄩ�夌壒娈婂�煎鐞嗘閫夋嫨瑕佹眰鍊肩殑鍥炶皟
- upBsmAll (item) {
+ upBsmAll(item) {
const i = this.bsm1DiaList.findIndex(obj => obj.id === item.id)
if (i > -1) {
// 鎵惧埌鐩稿簲鐨勬楠岄」璧嬪��
@@ -1698,7 +1687,7 @@
selectOne(selection, row) {
this.bsm1DiaList = []
row.state = row.state == 1 ? 0 : 1
- if(row.section === null) {
+ if (row.section === null) {
row.section = ""
}
if (row.sectionCopy === undefined && row.section) {
@@ -1712,18 +1701,18 @@
if (row.tell.includes('[')) {
this.$set(row, 'tellCopy', row.tell)
}
- let arr = this.productList.filter(m=>m.state==1&&row.sectionCopy&&row.sectionCopy.includes(m.sectionCopy)&&m.ask&&m.sectionCopy.indexOf('[')==-1)
- if (row.bsm === '1' && row.sectionCopy !== '' && row.sectionCopy !== null && row.sectionCopy !== undefined && row.state === 1&&arr.length==0) {
+ let arr = this.productList.filter(m => m.state == 1 && row.sectionCopy && row.sectionCopy.includes(m.sectionCopy) && m.ask && m.sectionCopy.indexOf('[') == -1)
+ if (row.bsm === '1' && row.sectionCopy !== '' && row.sectionCopy !== null && row.sectionCopy !== undefined && row.state === 1 && arr.length == 0) {
if (row.sectionCopy.indexOf('[') > -1) {
row.bsmRow = this.HaveJson(row)
}
row.bsm1 = true
this.bsm1DiaList.push(row)
this.bsm1DiaAll = true
- } else if (row.bsm === '1' && row.sectionCopy !== '' && row.sectionCopy !== null && row.state === 0&&arr.length==0) {
+ } else if (row.bsm === '1' && row.sectionCopy !== '' && row.sectionCopy !== null && row.state === 0 && arr.length == 0) {
row.bsm1 = false
- }else if(arr.length>0){
- try{
+ } else if (arr.length > 0) {
+ try {
row.bsmRow = this.HaveJson(row)
let section = arr[0].section
let arr0 = JSON.parse(row.section)
@@ -1733,7 +1722,7 @@
row.section = section
row.ask = arr1[index]
row.tell = arr4[index]
- } catch(e) {}
+ } catch (e) { }
}
this.sampleList.map(item => {
if (this.sampleIds.indexOf(item.id) > -1) {
@@ -1753,7 +1742,7 @@
handleAll(e) {
if (e.length > 0) {
this.productList.map(m => {
- if(e.find(a=>a.id == m.id)){
+ if (e.find(a => a.id == m.id)) {
m.state = 1
}
return m
@@ -1817,10 +1806,10 @@
this.$refs.productTable.doLayout()
})
},
- changeProductList0(){
- this.productList0.forEach(a=>{
+ changeProductList0() {
+ this.productList0.forEach(a => {
let obj = this.productList.find(m => m.id == a.id)
- if(obj){
+ if (obj) {
a.state = obj.state
a.section = obj.section
a.ask = obj.ask
@@ -1828,7 +1817,7 @@
// a.price = obj.price
a.tell = obj.tell
}
- if(a.state == 0&&a.bsmRow){
+ if (a.state == 0 && a.bsmRow) {
a = this.HaveJson(a.bsmRow)
}
})
@@ -1837,10 +1826,17 @@
const property = column['property'];
return row[property] === value;
},
- goBack () {
- const obj = { path: "/business/materialOrder" };
- this.$tab.closeOpenPage(obj);
- }
+ goBack() {
+ if (this.active == 1) {
+ this.$router.go(-1)
+ } else {
+ this.closeOpenPage()
+ }
+ },
+ closeOpenPage() {
+ this.$router.go(-1)
+ this.$tab.closeOpenPage()
+ },
}
}
</script>
@@ -1851,6 +1847,7 @@
justify-content: space-between;
margin-bottom: 10px;
}
+
.tab {
list-style-type: none;
display: flex;
@@ -1880,4 +1877,7 @@
}
+:deep(.warning-row) {
+ color: #1890FF;
+}
</style>
--
Gitblit v1.9.3