From 1bf6023783ecfdb2e578b22145d9911099280b98 Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期五, 07 三月 2025 17:31:22 +0800
Subject: [PATCH] 下单页面调整
---
src/utils/bigEval.js | 114 +
src/store/modules/user.js | 1
src/layout/components/Navbar.vue | 140
src/views/business/inspectionOrder/add.vue | 4408 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
src/views/business/inspectionOrder/fiberoptic-config-readonly.vue | 0
src/views/business/inspectionOrder/index.vue | 57
src/router/index.js | 32
7 files changed, 4,636 insertions(+), 116 deletions(-)
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
index bb34f1b..da89cf9 100644
--- a/src/layout/components/Navbar.vue
+++ b/src/layout/components/Navbar.vue
@@ -1,7 +1,7 @@
<template>
<div class="navbar">
-<!-- <breadcrumb id="breadcrumb-container" class="breadcrumb-container" v-if="!topNav"/>-->
-<!-- <top-nav id="topmenu-container" class="topmenu-container" v-if="topNav"/>-->
+ <!-- <breadcrumb id="breadcrumb-container" class="breadcrumb-container" v-if="!topNav"/>-->
+ <!-- <top-nav id="topmenu-container" class="topmenu-container" v-if="topNav"/>-->
<div class="logo">
<img src="@/assets/logo/ZTTlogo.png" />
</div>
@@ -10,56 +10,61 @@
</div>
<div class="right-menu">
<div class="avatar-wrapper">
- <img :src="avatar" class="user-avatar">
- <span class="userName">Admin</span>
- <img class="logoout" src="@/assets/images/logoout.png" @click="logout" title="閫�鍑鸿处鍙�" />
+ <img :src="avatar" class="user-avatar" />
+ <span class="userName">{{ nickName }}</span>
+ <img
+ class="logoout"
+ src="@/assets/images/logoout.png"
+ @click="logout"
+ title="閫�鍑鸿处鍙�"
+ />
</div>
-<!-- <template v-if="device!=='mobile'">-->
-<!-- <search id="header-search" class="right-menu-item" />-->
+ <!-- <template v-if="device!=='mobile'">-->
+ <!-- <search id="header-search" class="right-menu-item" />-->
-<!-- <el-tooltip content="婧愮爜鍦板潃" effect="dark" placement="bottom">-->
-<!-- <ruo-yi-git id="ruoyi-git" class="right-menu-item hover-effect" />-->
-<!-- </el-tooltip>-->
+ <!-- <el-tooltip content="婧愮爜鍦板潃" effect="dark" placement="bottom">-->
+ <!-- <ruo-yi-git id="ruoyi-git" class="right-menu-item hover-effect" />-->
+ <!-- </el-tooltip>-->
-<!-- <el-tooltip content="鏂囨。鍦板潃" effect="dark" placement="bottom">-->
-<!-- <ruo-yi-doc id="ruoyi-doc" class="right-menu-item hover-effect" />-->
-<!-- </el-tooltip>-->
+ <!-- <el-tooltip content="鏂囨。鍦板潃" effect="dark" placement="bottom">-->
+ <!-- <ruo-yi-doc id="ruoyi-doc" class="right-menu-item hover-effect" />-->
+ <!-- </el-tooltip>-->
-<!-- <screenfull id="screenfull" class="right-menu-item hover-effect" />-->
+ <!-- <screenfull id="screenfull" class="right-menu-item hover-effect" />-->
-<!-- <el-tooltip content="甯冨眬澶у皬" effect="dark" placement="bottom">-->
-<!-- <size-select id="size-select" class="right-menu-item hover-effect" />-->
-<!-- </el-tooltip>-->
+ <!-- <el-tooltip content="甯冨眬澶у皬" effect="dark" placement="bottom">-->
+ <!-- <size-select id="size-select" class="right-menu-item hover-effect" />-->
+ <!-- </el-tooltip>-->
-<!-- </template>-->
+ <!-- </template>-->
-<!-- <div class="avatar-container">-->
-<!-- <el-dropdown-menu slot="dropdown">-->
-<!-- <router-link to="/user/profile">-->
-<!-- <el-dropdown-item>涓汉涓績</el-dropdown-item>-->
-<!-- </router-link>-->
-<!-- <el-dropdown-item @click.native="setting = true">-->
-<!-- <span>甯冨眬璁剧疆</span>-->
-<!-- </el-dropdown-item>-->
-<!-- <el-dropdown-item divided @click.native="logout">-->
-<!-- <span>閫�鍑虹櫥褰�</span>-->
-<!-- </el-dropdown-item>-->
-<!-- </el-dropdown-menu>-->
-<!-- </div>-->
+ <!-- <div class="avatar-container">-->
+ <!-- <el-dropdown-menu slot="dropdown">-->
+ <!-- <router-link to="/user/profile">-->
+ <!-- <el-dropdown-item>涓汉涓績</el-dropdown-item>-->
+ <!-- </router-link>-->
+ <!-- <el-dropdown-item @click.native="setting = true">-->
+ <!-- <span>甯冨眬璁剧疆</span>-->
+ <!-- </el-dropdown-item>-->
+ <!-- <el-dropdown-item divided @click.native="logout">-->
+ <!-- <span>閫�鍑虹櫥褰�</span>-->
+ <!-- </el-dropdown-item>-->
+ <!-- </el-dropdown-menu>-->
+ <!-- </div>-->
</div>
</div>
</template>
<script>
-import { mapGetters } from 'vuex'
-import Breadcrumb from '@/components/Breadcrumb'
-import TopNav from '@/components/TopNav'
-import Hamburger from '@/components/Hamburger'
-import Screenfull from '@/components/Screenfull'
-import SizeSelect from '@/components/SizeSelect'
-import Search from '@/components/HeaderSearch'
-import RuoYiGit from '@/components/RuoYi/Git'
-import RuoYiDoc from '@/components/RuoYi/Doc'
+import { mapGetters } from "vuex";
+import Breadcrumb from "@/components/Breadcrumb";
+import TopNav from "@/components/TopNav";
+import Hamburger from "@/components/Hamburger";
+import Screenfull from "@/components/Screenfull";
+import SizeSelect from "@/components/SizeSelect";
+import Search from "@/components/HeaderSearch";
+import RuoYiGit from "@/components/RuoYi/Git";
+import RuoYiDoc from "@/components/RuoYi/Doc";
export default {
components: {
@@ -70,44 +75,43 @@
SizeSelect,
Search,
RuoYiGit,
- RuoYiDoc
+ RuoYiDoc,
},
computed: {
- ...mapGetters([
- 'avatar',
- 'device'
- ]),
+ ...mapGetters(["avatar", "device", "nickName"]),
setting: {
get() {
- return this.$store.state.settings.showSettings
+ return this.$store.state.settings.showSettings;
},
set(val) {
- this.$store.dispatch('settings/changeSetting', {
- key: 'showSettings',
- value: val
- })
- }
+ this.$store.dispatch("settings/changeSetting", {
+ key: "showSettings",
+ value: val,
+ });
+ },
},
topNav: {
get() {
- return this.$store.state.settings.topNav
- }
- }
+ return this.$store.state.settings.topNav;
+ },
+ },
},
methods: {
async logout() {
- this.$confirm('纭畾娉ㄩ攢骞堕��鍑虹郴缁熷悧锛�', '鎻愮ず', {
- confirmButtonText: '纭畾',
- cancelButtonText: '鍙栨秷',
- type: 'warning'
- }).then(() => {
- this.$store.dispatch('LogOut').then(() => {
- location.href = '/index';
+ this.$confirm("纭畾娉ㄩ攢骞堕��鍑虹郴缁熷悧锛�", "鎻愮ず", {
+ confirmButtonText: "纭畾",
+ cancelButtonText: "鍙栨秷",
+ type: "warning",
+ })
+ .then(() => {
+ this.$store.dispatch("LogOut").then(() => {
+ location.href = "/index";
+ });
})
- }).catch(() => {});
- }
- }
-}
+ .catch(() => {});
+ },
+ },
+};
</script>
<style lang="scss" scoped>
@@ -116,7 +120,7 @@
overflow: hidden;
//position: relative;
background: #fff;
- box-shadow: 0 1px 4px rgba(0,21,41,.08);
+ box-shadow: 0 1px 4px rgba(0, 21, 41, 0.08);
position: fixed; /* 灏嗗ご閮ㄥ浐瀹� */
top: 0; /* 鍦ㄩ《閮ㄥ浐瀹� */
width: 100%; /* 瀹藉害100%锛岃鐩栨暣涓鍙� */
@@ -199,10 +203,10 @@
&.hover-effect {
cursor: pointer;
- transition: background .3s;
+ transition: background 0.3s;
&:hover {
- background: rgba(0, 0, 0, .025)
+ background: rgba(0, 0, 0, 0.025);
}
}
}
diff --git a/src/router/index.js b/src/router/index.js
index 66a0b9f..912bf88 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -92,22 +92,22 @@
// 鍔ㄦ�佽矾鐢憋紝鍩轰簬鐢ㄦ埛鏉冮檺鍔ㄦ�佸幓鍔犺浇
export const dynamicRoutes = [
- // {
- // // 鍘熸潗鏂欎笅鍗�
- // path: '/materialOrder',
- // component: Layout,
- // hidden: true,
- // permissions: ['business:order'],
- // children: [
- // {
- // // 閾滄潗鏂欎笅鍗�
- // path: 'customsInspection',
- // component: () => import('@/views/business/materialOrder/customsInspection'),
- // name: 'customsInspection',
- // meta: { title: '閾滄潗鏂欎笅鍗�', activeMenu: '/business/materialOrder' }
- // }
- // ]
- // },
+ {
+ // 涓嬪崟椤甸潰
+ path: '/inspectionOrder',
+ component: Layout,
+ hidden: true,
+ permissions: ['business:order'],
+ children: [
+ {
+ // 閾滄潗鏂欎笅鍗�
+ path: 'addOrder',
+ component: () => import('@/views/business/inspectionOrder/add'),
+ name: 'addOrder',
+ meta: { title: '鏂板濮旀墭鍗�', activeMenu: '/business/inspectionOrder' }
+ }
+ ]
+ },
{
// 鐢ㄦ埛绠$悊
path: "/system/user-auth",
diff --git a/src/store/modules/user.js b/src/store/modules/user.js
index e5d40e4..8626ba0 100644
--- a/src/store/modules/user.js
+++ b/src/store/modules/user.js
@@ -67,6 +67,7 @@
return new Promise((resolve, reject) => {
getInfo()
.then((res) => {
+ console.log("store-->",res);
const user = res.user;
let avatar = user.avatar || "";
if (!isHttp(avatar)) {
diff --git a/src/utils/bigEval.js b/src/utils/bigEval.js
new file mode 100644
index 0000000..8cbce13
--- /dev/null
+++ b/src/utils/bigEval.js
@@ -0,0 +1,114 @@
+import Big from "big.js";
+
+/**
+ * 瀹夊叏璁$畻鍣紙鏀寔 + - * / 鍜屾嫭鍙凤級
+ * @param {string} expr 鏁板琛ㄨ揪寮忥紝濡� "(0.1 + 0.2) * 3"
+ * @returns {string} 璁$畻缁撴灉瀛楃涓�
+ */
+export function bigEval(expr) {
+ // 姝ラ1锛氳瘝娉曞垎鏋�
+ const tokens = tokenize(expr);
+ // 姝ラ2锛氳浆鎹负閫嗘尝鍏拌〃杈惧紡锛堝悗缂�琛ㄨ揪寮忥級
+ const rpn = shuntingYard(tokens);
+ // 姝ラ3锛氭墽琛岃绠�
+ return evaluateRPN(rpn);
+}
+
+// 璇嶆硶鍒嗘瀽鍣�
+function tokenize(expr) {
+ const tokens = [];
+ let numBuffer = "";
+ let prevToken = null;
+
+ const flushNumber = () => {
+ if (numBuffer) {
+ if (numBuffer.startsWith(".")) numBuffer = "0" + numBuffer;
+ tokens.push({ type: "number", value: numBuffer });
+ numBuffer = "";
+ }
+ };
+
+ for (let i = 0; i < expr.length; i++) {
+ const c = expr[i];
+
+ if (/\d|\./.test(c)) {
+ numBuffer += c;
+ } else if ("+-*/()".includes(c)) {
+ flushNumber();
+
+ // // 澶勭悊璐熷彿锛堝綋'-'鍓嶆棤鏁板瓧鎴栧墠鏈夎繍绠楃鏃朵负璐熷彿锛�
+ // if (c === "-" && (!prevToken ||
+ // (prevToken.type === "operator" && prevToken.value !== ")"))) {
+ // numBuffer += c;
+ // console.log("杩涘叆--銆�",c,tokens,prevToken);
+ // } else {
+ // }
+ tokens.push({ type: "operator", value: c });
+ prevToken = tokens[tokens.length - 1];
+ } else if (c !== " ") {
+ throw new Error(`闈炴硶瀛楃: ${c}`);
+ }
+ }
+
+ flushNumber();
+ return tokens;
+}
+
+// 璋冨害鍦虹畻娉曠敓鎴愰�嗘尝鍏拌〃杈惧紡
+function shuntingYard(tokens) {
+ const output = [];
+ const stack = [];
+ const precedence = { "+": 1, "-": 1, "*": 2, "/": 2 };
+
+ for (const token of tokens) {
+ if (token.type === "number") {
+ output.push(token.value);
+ } else if (token.value === "(") {
+ stack.push(token.value);
+ } else if (token.value === ")") {
+ while (stack.length && stack[stack.length - 1] !== "(") {
+ output.push(stack.pop());
+ }
+ stack.pop(); // 寮瑰嚭宸︽嫭鍙�
+ } else {
+ while (
+ stack.length &&
+ stack[stack.length - 1] !== "(" &&
+ precedence[stack[stack.length - 1]] >= precedence[token.value]
+ ) {
+ output.push(stack.pop());
+ }
+ stack.push(token.value);
+ }
+ }
+
+ while (stack.length) output.push(stack.pop());
+ return output;
+}
+
+// 鎵ц閫嗘尝鍏拌〃杈惧紡璁$畻
+function evaluateRPN(rpn) {
+ const stack = [];
+
+ for (const token of rpn) {
+ if (/\d|\./.test(token)) {
+ stack.push(new Big(token));
+ } else {
+ const b = stack.pop();
+ const a = stack.pop();
+
+ switch (token) {
+ case "+": stack.push(a.plus(b)); break;
+ case "-": stack.push(a.minus(b)); break;
+ case "*": stack.push(a.times(b)); break;
+ case "/":
+ if (b.eq(0)) throw new Error("闄ゆ暟涓嶈兘涓洪浂");
+ stack.push(a.div(b));
+ break;
+ default: throw new Error(`鏈煡杩愮畻绗�: ${token}`);
+ }
+ }
+ }
+
+ return stack.pop().toString();
+}
diff --git a/src/views/business/inspectionOrder/add.vue b/src/views/business/inspectionOrder/add.vue
index 9267eaa..1bb080d 100644
--- a/src/views/business/inspectionOrder/add.vue
+++ b/src/views/business/inspectionOrder/add.vue
@@ -1,3 +1,4387 @@
+<template>
+ <div>
+ <div v-show="!configShow && !equipConfigShow && !cableConfigShow">
+ <el-row class="title">
+ <el-col :span="6" style="padding-left: 20px; text-align: left"
+ >濮旀墭鍗曚俊鎭� 鎬讳环锛�<span style="color: #3a7bfa"
+ >锟{ total }}</span
+ ></el-col
+ >
+ <el-col :span="18" style="text-align: right">
+ <el-select
+ v-model="template"
+ size="medium"
+ filterable
+ placeholder="涓嬪崟妯℃澘"
+ style="margin-right: 10px"
+ v-show="active == 1"
+ @change="selectInsOrderTemplateById"
+ >
+ <el-option
+ v-for="(a, ai) in templates"
+ :key="ai"
+ :value="a.id"
+ :label="a.name"
+ >
+ <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>
+ </el-option>
+ </el-select>
+ <el-button
+ size="medium"
+ @click="templateDia = true"
+ v-show="active == 1"
+ >
+ <span style="color: #3a7bfa">淇濆瓨妯℃澘</span>
+ </el-button>
+ <el-button
+ size="medium"
+ type="primary"
+ @click="openCableConfig"
+ v-if="
+ active == 1 &&
+ PROJECT == '瑁呭鐢电紗' &&
+ addObj.sampleType != undefined &&
+ addObj.sampleType.indexOf('鐢电紗') > -1
+ "
+ >鐢电紗閰嶇疆</el-button
+ >
+ <el-button
+ size="medium"
+ type="primary"
+ @click="openEquipConfig"
+ v-if="active == 1"
+ >瀛愭牱鍝侀厤缃�</el-button
+ >
+ <el-button
+ size="medium"
+ type="primary"
+ @click="openConfig"
+ v-if="addObj.sampleType === '鍏夌紗'"
+ >鍏夌氦閰嶇疆</el-button
+ >
+ <el-button
+ size="medium"
+ type="primary"
+ @click="save"
+ :loading="saveLoad"
+ v-show="active == 1"
+ >鎻愪氦</el-button
+ >
+ <!-- 瀹℃牳 -->
+ <el-button
+ size="medium"
+ @click="upInsOrderOfState(2)"
+ :loading="saveLoad"
+ v-show="active == 3 && addObj.companyId"
+ :disabled="saveLoad"
+ >涓嶉�氳繃</el-button
+ >
+ <el-button
+ size="medium"
+ type="primary"
+ @click="upInsOrderOfState(1)"
+ :loading="saveLoad"
+ v-show="active == 3 && addObj.companyId"
+ >閫氳繃</el-button
+ >
+ <el-button size="medium" @click="$parent.playOrder(0)">
+ <span style="color: #3a7bfa">杩斿洖</span>
+ </el-button>
+ </el-col>
+ </el-row>
+ </div>
+ <basic-container>
+ <div
+ class="search"
+ v-show="!configShow && !equipConfigShow && !cableConfigShow"
+ >
+ <el-form
+ :model="addObj"
+ :rules="formRule"
+ label-position="right"
+ inline
+ >
+ <el-row>
+ <el-col :span="6">
+ <el-form-item label="濮旀墭缂栧彿锛�" prop="entrustCode">
+ <el-input
+ v-model="addObj.entrustCode"
+ size="small"
+ class="search_input"
+ placeholder="绯荤粺鐢熸垚"
+ disabled
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="妫�楠岀被鍒細" prop="orderType">
+ <el-select
+ size="small"
+ class="search_input"
+ clearable
+ v-model="addObj.orderType"
+ :disabled="active > 1"
+ >
+ <el-option
+ v-for="(a, ai) in orderType"
+ :key="ai"
+ :value="a.dictValue"
+ :label="a.dictLabel"
+ ></el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="鍒跺崟浜猴細" prop="custom">
+ <el-input
+ size="small"
+ class="search_input"
+ clearable
+ disabled
+ v-model="addObj.custom"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item
+ label="濮旀墭鍗曚綅锛�"
+ prop="company"
+ class="company_input"
+ >
+ <el-input
+ readonly
+ size="small"
+ v-model="addObj.company"
+ placeholder="閫夋嫨濮旀墭鍗曚綅"
+ >
+ <template slot="append"
+ ><el-button
+ slot="append"
+ icon="el-icon-search"
+ @click="selectUserDia = true"
+ :disabled="
+ active > 1 || addObj.company != '涓ぉ绉戞妧妫�娴嬩腑蹇�'
+ "
+ ></el-button
+ ></template>
+ </el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="6">
+ <el-form-item label="鑱旂郴鏂瑰紡锛�" prop="phone">
+ <el-input
+ size="small"
+ placeholder="璇疯緭鍏�"
+ class="search_input"
+ clearable
+ :readonly="active > 1"
+ v-model="addObj.phone"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="绱ф�ョ▼搴︼細" prop="type">
+ <el-select
+ @change="changeType"
+ size="small"
+ class="search_input"
+ clearable
+ v-model="addObj.type"
+ :disabled="active > 1"
+ >
+ <el-option
+ v-for="(a, ai) in type"
+ :key="ai"
+ :value="a.dictValue"
+ :label="a.dictLabel"
+ ></el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item
+ label="鏍峰搧鍚嶇О锛�"
+ prop="sample"
+ class="sample_input"
+ >
+ <el-input readonly size="small" v-model="addObj.sample">
+ <template slot="append"
+ ><el-button
+ slot="append"
+ icon="el-icon-search"
+ @click="selectStandardTree = true"
+ :disabled="active > 1"
+ ></el-button
+ ></template>
+ </el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="鏍峰搧鏁伴噺锛�" prop="sampleNum">
+ <el-input-number
+ size="small"
+ v-model="addObj.sampleNum"
+ :min="1"
+ :max="100"
+ :precision="0"
+ @change="addStandardTree"
+ :disabled="active > 1"
+ ></el-input-number>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="6">
+ <el-form-item label="鏉ユ牱鏂瑰紡锛�" prop="formType">
+ <el-select
+ v-model="addObj.formType"
+ size="small"
+ class="search_input"
+ :disabled="active > 1"
+ >
+ <el-option
+ v-for="(a, ai) in formType"
+ :key="ai"
+ :label="a.dictLabel"
+ :value="a.dictValue"
+ ></el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="鎶ュ憡鍙戦�佹柟寮忥細" prop="send">
+ <el-radio-group v-model="addObj.send">
+ <el-radio :label="1">鑷彇</el-radio>
+ <el-radio :label="0">鍏朵粬</el-radio>
+ </el-radio-group>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item
+ label="鏍峰搧澶勭悊鏂瑰紡锛�"
+ prop="processing"
+ class="processing_input"
+ >
+ <el-radio-group v-model="addObj.processing" size="mini">
+ <el-radio :label="0">濮旀墭鍗曚綅鍙栧洖</el-radio>
+ <el-radio :label="1">瀹為獙瀹ゅ鐞�</el-radio>
+ </el-radio-group>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="宸ョ▼鍚嶇О锛�" prop="engineering">
+ <el-input
+ size="small"
+ class="search_input"
+ :placeholder="active > 1 ? '' : '璇疯緭鍏�'"
+ clearable
+ v-model="addObj.engineering"
+ :readonly="active > 1"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="6">
+ <el-form-item
+ label="宸ョ▼鍚嶇ОEN锛�"
+ prop="engineeringEn"
+ class="engineeringEn_input"
+ >
+ <el-input
+ size="small"
+ :placeholder="active > 1 ? '' : '璇疯緭鍏�'"
+ clearable
+ v-model="addObj.engineeringEn"
+ :readonly="active > 1"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="鐢熶骇鍗曚綅锛�" prop="production">
+ <el-input
+ size="small"
+ class="search_input"
+ placeholder="璇疯緭鍏�"
+ clearable
+ v-model="addObj.production"
+ :readonly="active > 1"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item
+ label="鐢熶骇鍗曚綅EN锛�"
+ prop="productionEn"
+ class="productionEn_input"
+ >
+ <el-input
+ size="small"
+ class="search_input"
+ placeholder="璇疯緭鍏�"
+ clearable
+ v-model="addObj.productionEn"
+ :readonly="active > 1"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="鏄惁鐣欐牱锛�" prop="isLeave">
+ <el-radio-group v-model="addObj.isLeave">
+ <el-radio :label="0">涓嶇暀鏍�</el-radio>
+ <el-radio :label="1">鐣欐牱</el-radio>
+ </el-radio-group>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="6">
+ <el-form-item label="鏄惁娑夊強閰嶅鏍峰搧锛�" prop="mating">
+ <el-radio-group
+ v-model="addObj.mating"
+ @change="$refs.sampleTable.doLayout()"
+ >
+ <el-radio :label="1">鏄�</el-radio>
+ <el-radio :label="0">鍚�</el-radio>
+ </el-radio-group>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item
+ label="OTC璁㈠崟鍙凤細"
+ prop="otcCode"
+ class="otcCode_input"
+ >
+ <el-input
+ size="small"
+ :placeholder="active > 1 ? '' : '璇疯緭鍏�'"
+ clearable
+ v-model="addObj.otcCode"
+ :readonly="active > 1"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="濮旀墭浜猴細" prop="prepareUser">
+ <el-input
+ size="small"
+ class="search_input"
+ :placeholder="active > 1 ? '' : '璇疯緭鍏�'"
+ clearable
+ v-model="addObj.prepareUser"
+ :readonly="active > 1"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="澶囨敞锛�" prop="remark">
+ <el-input
+ type="textarea"
+ :autosize="{ minRows: 2, maxRows: 2 }"
+ size="small"
+ clearable
+ :placeholder="active > 1 ? '' : '璇疯緭鍏�'"
+ v-model="addObj.remark"
+ :readonly="active > 1"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ </div>
+ </basic-container>
+ <basic-container>
+ <div style="height: auto">
+ <div
+ class="search"
+ v-if="active == 1"
+ style="display: flex; background: transparent"
+ >
+ <div>
+ <div class="search_label">鏍峰搧鍨嬪彿锛�</div>
+ <div class="search_input">
+ <el-select
+ v-model="model"
+ :placeholder="active > 1 ? '' : '璇疯緭鍏�'"
+ filterable
+ allow-create
+ default-first-option
+ size="small"
+ @change="changeModel"
+ >
+ <el-option
+ v-for="item in models"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
+ </el-option>
+ </el-select>
+ </div>
+ </div>
+ <div>
+ <div class="search_label">妫�楠屾爣鍑嗭細</div>
+ <div class="search_input">
+ <el-select
+ filterable
+ v-model="standardMethodListId"
+ :placeholder="active > 1 ? '' : '璇疯緭鍏�'"
+ size="small"
+ @focus="methodFocus"
+ :loading="methodLoad"
+ @change="changeStandardMethodListId"
+ >
+ <el-option
+ v-for="item in methods"
+ :key="item.id"
+ :label="item.code"
+ :value="item.id"
+ >
+ </el-option>
+ </el-select>
+ </div>
+ </div>
+ </div>
+ <el-table
+ class="el-table sampleTable"
+ ref="sampleTable"
+ :data="sampleList"
+ max-height="400px"
+ tooltip-effect="dark"
+ border
+ @selection-change="selectSample"
+ highlight-current-row
+ @row-click="rowClick"
+ style="margin-top: 10px"
+ >
+ <el-table-column
+ type="selection"
+ width="60"
+ :selectable="selectable"
+ v-if="active == 1"
+ ></el-table-column>
+ <el-table-column
+ type="index"
+ label="搴忓彿"
+ width="65"
+ align="center"
+ ></el-table-column>
+ <el-table-column
+ prop="sample"
+ label="鏍峰搧鍚嶇О"
+ align="center"
+ min-width="100"
+ >
+ <template slot-scope="scope">
+ <el-input
+ size="small"
+ v-model="scope.row.sample"
+ clearable
+ :readonly="active > 1"
+ ></el-input>
+ </template>
+ </el-table-column>
+ <el-table-column
+ prop="sampleCode"
+ label="鏍峰搧缂栧彿"
+ min-width="140"
+ align="center"
+ >
+ <template slot-scope="scope">
+ <el-input
+ size="small"
+ v-model="scope.row.sampleCode"
+ clearable
+ placeholder="涓嶅~鍐欏垯绯荤粺鑷姩鐢熸垚"
+ :readonly="active > 1"
+ ></el-input>
+ </template>
+ </el-table-column>
+ <el-table-column
+ prop="model"
+ label="鏍峰搧鍨嬪彿"
+ align="center"
+ min-width="100"
+ >
+ <template slot-scope="scope">
+ <el-select
+ v-model="scope.row.model"
+ filterable
+ allow-create
+ default-first-option
+ placeholder="鏍峰搧鍨嬪彿"
+ size="small"
+ @change="handleChangeModel"
+ :disabled="active > 1"
+ style="width: 100%"
+ >
+ <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
+ prop="modelNum"
+ label="鍨嬪彿鍙傛暟"
+ width="130"
+ align="center"
+ v-if="!(active > 1)"
+ >
+ <template slot-scope="scope">
+ <el-input
+ size="small"
+ v-model="scope.row.modelNum"
+ clearable
+ placeholder="闈炲繀濉�"
+ @keyup.enter.native="
+ methodChange(scope.row.standardMethodListId, scope.row)
+ "
+ @clear="methodChange(scope.row.standardMethodListId, scope.row)"
+ ></el-input>
+ </template>
+ </el-table-column>
+ <el-table-column
+ prop="standardMethodListId"
+ label="妫�楠屾爣鍑�"
+ align="center"
+ min-width="100"
+ >
+ <template slot-scope="scope">
+ <el-select
+ v-model="scope.row.standardMethodListId"
+ :disabled="scope.row.model == null || active > 1"
+ placeholder="妫�楠屾爣鍑�"
+ filterable
+ size="small"
+ :loading="methodLoad"
+ @change="(value) => methodChange(value, scope.row)"
+ @focus="methodFocus"
+ :readonly="active > 1"
+ style="width: 100%"
+ clearable
+ @clear="productList = []"
+ >
+ <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
+ prop="joinName"
+ label="閰嶅鏍峰搧鍚嶇О"
+ width="140"
+ align="center"
+ v-if="addObj.mating == 1"
+ >
+ <template slot-scope="scope">
+ <el-input
+ size="small"
+ type="textarea"
+ :autosize="{ minRows: 1, maxRows: 1 }"
+ v-model="scope.row.joinName"
+ ></el-input>
+ </template>
+ </el-table-column>
+ <el-table-column
+ prop="joinModel"
+ label="閰嶅鏍峰搧鍨嬪彿"
+ width="140"
+ align="center"
+ v-if="addObj.mating == 1"
+ >
+ <template slot-scope="scope">
+ <el-input
+ size="small"
+ type="textarea"
+ :autosize="{ minRows: 1, maxRows: 1 }"
+ v-model="scope.row.joinModel"
+ ></el-input>
+ </template>
+ </el-table-column>
+ <el-table-column
+ prop="joinNum"
+ label="閰嶅鏍峰搧鏁伴噺"
+ width="140"
+ align="center"
+ v-if="addObj.mating == 1"
+ >
+ <template slot-scope="scope">
+ <el-input-number
+ size="small"
+ v-model="scope.row.joinNum"
+ :min="1"
+ :max="100"
+ :precision="0"
+ :controls="false"
+ style="width: 80%"
+ ></el-input-number>
+ </template>
+ </el-table-column>
+ <el-table-column
+ prop="proNum"
+ label="寰呮椤规暟閲�"
+ width="105"
+ align="center"
+ ></el-table-column>
+ </el-table>
+ <el-table
+ class="el-table"
+ ref="productTable"
+ :data="productList"
+ max-height="400px"
+ tooltip-effect="dark"
+ border
+ @selection-change="selectProduct"
+ style="margin-bottom: 10px"
+ @select="upProductSelect"
+ :row-class-name="tableRowClassName"
+ v-loading="standardLoading || getProductLoad"
+ @select-all="handleAll"
+ >
+ <el-table-column
+ type="selection"
+ width="65"
+ :selectable="selectable"
+ v-if="active == 1"
+ ></el-table-column>
+ <el-table-column
+ prop="inspectionItem"
+ label="妫�楠岄」"
+ min-width="140"
+ 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"
+ @input="searchFilterList"
+ size="mini"
+ placeholder="璇疯緭鍏�"
+ />
+ </div>
+ </template>
+ </el-table-column>
+ <el-table-column
+ prop="inspectionItemSubclass"
+ label="妫�楠岄」瀛愰」"
+ min-width="140"
+ 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"
+ @input="searchFilterList"
+ size="mini"
+ placeholder="璇疯緭鍏�"
+ />
+ </div>
+ </template>
+ </el-table-column>
+ <el-table-column prop="tell" label="瑕佹眰鎻忚堪" min-width="220px">
+ <template slot-scope="scope">
+ <el-input
+ size="small"
+ placeholder="瑕佹眰鎻忚堪"
+ v-model="scope.row.tell"
+ clearable
+ type="textarea"
+ :autosize="{ minRows: 1, maxRows: 3 }"
+ @change="(e) => requestChange(e, scope.row, 'tell')"
+ v-if="active == 1 && isAskOnlyRead"
+ ></el-input>
+ <span v-else>
+ <template>{{ scope.row.tell }}</template>
+ </span>
+ </template>
+ </el-table-column>
+ <el-table-column
+ prop="ask"
+ label="瑕佹眰鍊�"
+ min-width="220px"
+ v-if="isAskOnlyRead"
+ >
+ <template slot-scope="scope">
+ <el-input
+ size="small"
+ placeholder="瑕佹眰鍊�"
+ v-model="scope.row.ask"
+ clearable
+ type="textarea"
+ :autosize="{ minRows: 1, maxRows: 3 }"
+ @change="(e) => requestChange(e, scope.row, 'ask')"
+ v-if="
+ active == 1 &&
+ isAskOnlyRead &&
+ scope.row.inspectionValueType != '5'
+ "
+ ></el-input>
+ <span v-else>
+ <template>{{ scope.row.ask }}</template>
+ </span>
+ </template>
+ </el-table-column>
+ <el-table-column
+ prop="methodS"
+ label="璇曢獙鏂规硶"
+ min-width="120"
+ 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="methodS"
+ @input="searchFilterList"
+ size="mini"
+ placeholder="璇疯緭鍏�"
+ />
+ </div>
+ </template>
+ </el-table-column>
+ <el-table-column
+ prop="unit"
+ label="璁¢噺鍗曚綅"
+ width="100"
+ show-overflow-tooltip
+ ></el-table-column>
+ <el-table-column
+ prop="price"
+ label="鍗曚环"
+ width="100"
+ show-overflow-tooltip
+ ></el-table-column>
+ <el-table-column
+ prop="section"
+ label="鍖洪棿"
+ min-width="120"
+ show-overflow-tooltip
+ ></el-table-column>
+ <el-table-column
+ prop="sonLaboratory"
+ label="瀛愬疄楠屽"
+ min-width="130"
+ show-overflow-tooltip
+ :filters="filters"
+ :filter-method="filterHandler"
+ ></el-table-column>
+ </el-table>
+ </div>
+ </basic-container>
+ </div>
+</template>
+
+<script>
+import { mapGetters } from "vuex";
+import fiberOpticConfig from "./fiberoptic-config.vue";
+import fiberOpticConfigReadOnly from "./fiberoptic-config-readonly.vue";
+import equipConfig from "./equip-config.vue";
+import cableConfig from "./cable-config.vue";
+import getLodop from "@/utils/lodop";
+import { bigEval } from "@/utils/bigEval";
+import { getDicts } from "@/api/system/dict/data";
+export default {
+ components: {
+ fiberOpticConfig,
+ fiberOpticConfigReadOnly,
+ equipConfig,
+ cableConfig,
+ },
+ computed: {
+ ...mapGetters(["nickName", "company"]),
+ },
+ props: {
+ examine: {
+ type: Number,
+ default: () => 0,
+ },
+ active: {
+ type: Number,
+ default: () => 0,
+ },
+ currentId: {
+ type: Number,
+ default: () => 0,
+ },
+ },
+ data() {
+ return {
+ pickerOptions: {
+ disabledDate(time) {
+ // 褰撳墠鏃堕棿鍔犱笂涓夊ぉ鐨勬椂闂存埑
+ const threeDaysLater = Date.now() + 24 * 60 * 60 * 1000;
+ // 绂佺敤涓夊ぉ鍚庝箣鍓嶇殑鎵�鏈夋棩鏈�
+ return time.getTime() < threeDaysLater;
+ },
+ },
+ fiberLoss: [],
+ qrDataList: [],
+ isFocus: false,
+ methodCount: 0,
+ standardLoading: false,
+ errorInspectionItemList: [],
+ errorInspectionItem: false,
+ inspectionItemST: null,
+ sampleSelectionList: [], //鏍峰搧琛ㄦ牸閫変腑鏁版嵁
+ editTable: [],
+ template: null,
+ templates: [],
+ addObj: {
+ entrustCode: null,
+ custom: null,
+ company: null,
+ userId: null,
+ type: "0",
+ code: null,
+ appointed: null,
+ remark: null,
+ otcCode: null,
+ mating: 0,
+ sample: null,
+ factory: null,
+ laboratory: null,
+ sampleType: null,
+ sampleNum: 1,
+ unit: null,
+ model: null,
+ method: null,
+ phone: null,
+ processing: 1,
+ isLeave: 0,
+ orderType: null,
+ send: 1,
+ formType: "閫佹",
+ engineering: null,
+ engineeringEn: null,
+ production: null,
+ productionEn: null,
+ companyId: null,
+ prepareUser: null,
+ },
+ formRule: {
+ orderType: {
+ required: true,
+ message: "璇烽�夋嫨妫�楠岀被鍒�",
+ trigger: "change",
+ },
+ custom: { required: true, message: "", trigger: "blur" },
+ company: { required: true, message: "璇烽�夋嫨濮旀墭鍗曚綅", trigger: "blur" },
+ phone: { required: true, message: "璇疯緭鍏ヨ仈绯绘柟寮�", trigger: "blur" },
+ type: { required: true, message: "璇烽�夋嫨绱ф�ョ▼搴�", trigger: "change" },
+ sample: { required: true, message: "璇烽�夋嫨鏍峰搧鍚嶇О", trigger: "blur" },
+ sampleNum: {
+ required: true,
+ message: "璇疯緭鍏ユ牱鍝佹暟閲�",
+ trigger: "blur",
+ },
+ formType: {
+ required: true,
+ message: "璇烽�夋嫨鏉ユ牱鏂瑰紡",
+ trigger: "change",
+ },
+ production: {
+ required: true,
+ message: "璇疯緭鍏ョ敓浜у崟浣�",
+ trigger: "blur",
+ },
+ productionEn: {
+ required: true,
+ message: "璇疯緭鍏ョ敓浜у崟浣岴N",
+ trigger: "blur",
+ },
+ },
+ sample: {
+ sampleCode: null,
+ laboratory: null,
+ factory: null,
+ sampleType: null,
+ sample: null,
+ model: null,
+ modelNum: null,
+ sampleNum: 1,
+ isLeave: 0,
+ unit: null,
+ },
+ type: [],
+ selectUserDia: false,
+ componentData2: {
+ entity: {
+ orderBy: {
+ field: "id",
+ order: "desc",
+ },
+ },
+ isIndex: true,
+ showSelect: true,
+ select: false,
+ do: [],
+ tagField: {
+ state: {
+ select: [
+ {
+ value: 1,
+ type: "success",
+ label: "鍚敤",
+ },
+ {
+ value: 0,
+ type: "danger",
+ label: "鍋滅敤",
+ },
+ ],
+ },
+ },
+ selectField: {},
+ },
+ selectStandardTree: false,
+ search: null,
+ list: [],
+ selectTree: null,
+ expandedKeys: [],
+ sampleList: [],
+ sampleIds: [],
+ methodList: [],
+ addSampleDia: false,
+ count: 1,
+ productList: [],
+ productList0: [],
+ bsm1DiaList: [],
+ productIds: [],
+ productListSelected: [],
+ getProductLoad: false,
+ saveLoad: false,
+ templateDia: false,
+ templateLoading: false,
+ templateName: "",
+ issuedDialogVisible: false,
+ distributeData: {
+ appointed: "",
+ userId: [],
+ sonLaboratory: "",
+ isCreate: false,
+ },
+ personList: [],
+ upLoad: false,
+ units: [],
+ models: [],
+ methods: [],
+ methodLoad: false,
+ noDialogVisible: false,
+ tell: "",
+ noLoading: false,
+ orderType: [],
+ filters: [],
+ formType: [],
+ configShow: false,
+ currentMethod: null,
+ isAskOnlyRead: false,
+ sampleId: null,
+ bsmRow: null,
+ bsm1: false,
+ bsm1Val: null,
+ bsm1Dia: false,
+ bsm1DiaAll: false,
+ equipConfigShow: false,
+ cableConfigShow: false,
+ bsm2: false,
+ bsm2Val: null,
+ bsm2Dia: false,
+ bsm2Val2: [],
+ bsm2Val3: [],
+ bsmRow3: null,
+ bsm3Val: null,
+ bsm3Dia: false,
+ total: 0,
+ RTS: "",
+ totalArr: [],
+ model: null,
+ standardMethodListId: null,
+ symbolList: [
+ "RTS",
+ "A",
+ "B",
+ "C",
+ "D",
+ "E",
+ "F",
+ "G",
+ "H",
+ "I",
+ "J",
+ "K",
+ "L",
+ "M",
+ "N",
+ "O",
+ "P",
+ "Q",
+ "R",
+ "S",
+ "T",
+ "U",
+ "V",
+ "W",
+ "X",
+ "Y",
+ "Z",
+ ],
+ inspectionItem: null,
+ inspectionItemSubclass: null,
+ methodS: null,
+ circulateShow: false,
+ circulateForm: {
+ entrustTime: "",
+ entrustNum: "",
+ entrustPoint: "",
+ },
+ singleVerticalCombustionShow: false, //鍗曟牴鍨傜洿鐕冪儳妫�楠岄」寮规
+ singleVerticalCombustionNum: 0, //鍗曟牴鍨傜洿鐕冪儳妫�楠岄」璁℃暟
+ isBsm2Val2: false,
+ opticalProject: [], // 娓╁害寰幆寮规鍏夌氦椤圭洰鍒楄〃
+ opticalProjectList: [], // 娓╁害寰幆寮规鍏夌氦椤圭洰閫変腑鐨勬暟缁�
+ temperatureData: [], // 娓╁害寰幆寮规娓╁害鐐归泦鍚堝垪琛�
+ temperatureDataList: [
+ { label: "<", value: "<" },
+ { label: "鈮�", value: "鈮�" },
+ { label: "=", value: "=" },
+ { label: "鈮�", value: "鈮�" },
+ { label: ">", value: ">" },
+ ],
+ temperatureShow: false, // 娓╁崌璇曢獙妫�楠岄」寮规
+ temperatureTest: [],
+ temperatureList: [],
+ temperatureEngList: [],
+ temperatureTitle: "",
+ temperatureTestNum: "",
+ isShowInput: false,
+ temId: "",
+ sonLaboratoryList: [],
+ selectiveEcho: [], // 妫�楠屼笅鍗曠殑鏃跺�欏嬀閫夋楠岄」鐩�,濡傛灉浣跨敤绛涢�夋彁浜ゆ樉绀烘楠岄」鐩负绌� 鍥炴樉鍒楄〃
+ fiberPairing: [], //鍏夌氦閰嶇疆閲岀殑鐔旀帴閰嶅
+ };
+ },
+ watch: {
+ productList: {
+ deep: true,
+ handler(val) {
+ if (val && val.length > 0) {
+ let arr = [];
+ val.forEach((item) => {
+ if (
+ item.sonLaboratory &&
+ !arr.find((a) => a.value == item.sonLaboratory)
+ ) {
+ arr.push({
+ text: item.sonLaboratory,
+ value: item.sonLaboratory,
+ });
+ }
+ });
+ this.filters = arr;
+ }
+ },
+ },
+ sampleList: {
+ deep: true,
+ handler(val) {
+ console.log(val);
+ if (val.length > 0) {
+ this.getTotal(val[0].bushing, false);
+ }
+ },
+ },
+ "addObj.sample"(val) {
+ this.model = null;
+ this.standardMethodListId = null;
+ },
+ "addObj.sampleNum"(val) {
+ this.model = null;
+ this.standardMethodListId = null;
+ },
+ },
+ mounted() {
+ if (this.addObj.custom == "" || this.addObj.custom == null) {
+ this.addObj.custom = this.nickName; //璁剧疆鍒跺崟浜轰负褰撳墠鐧诲綍浜�
+ }
+ this.addObj.company = this.company;
+ this.selectDictForType();
+ this.selectDictForOrderType();
+ this.selectDictForUnit();
+ this.selectDictForSampleForm();
+
+ if (this.active != 3) {
+ this.getUserNow();
+ }
+ this.selectStandardTreeList();
+ this.getAuthorizedPerson();
+ this.selectStandardMethods();
+ if (this.active != 1) {
+ // 鏌ョ湅/瀹℃牳娴佺▼
+ // 璇锋眰鎺ュ彛锛屽洖鏄炬暟鎹�
+ this.$axios
+ .post(this.$api.insOrder.getInsOrder, {
+ orderId: this.currentId,
+ })
+ .then((res) => {
+ this.addObj = {
+ ...res.data.insOrder,
+ };
+ this.addObj.type = String(this.addObj.type);
+ this.sampleList = this.HaveJson(res.data.sampleProduct);
+ this.getProNum();
+ this.addObj.sampleNum = this.sampleList.length;
+ this.$nextTick(() => {
+ this.$refs.sampleTable.doLayout();
+ if (this.addObj.sampleNum > 0) {
+ this.$refs.sampleTable.setCurrentRow(this.sampleList[0], true);
+ this.rowClick(this.sampleList[0]);
+ }
+ });
+ });
+ }
+ },
+ methods: {
+ changeType(type) {
+ this.hasSendUrgentOrder(type)
+ .then((res) => {
+ console.log(res);
+ if (!res) {
+ this.addObj.type = "1";
+ this.$message.error("褰撳ぉ鍔犳�ラ搴﹀凡鐢ㄥ畬");
+ throw "褰撳ぉ鍔犳�ラ搴﹀凡鐢ㄥ畬";
+ }
+ })
+ .catch((err) => {
+ console.log(err);
+ });
+ },
+ //鍒ゆ柇褰撳ぉ鏄惁鍙笅鍙戠揣鎬ヨ鍗�
+ async hasSendUrgentOrder(type) {
+ let flag = true;
+ //濡傛灉鏄被鍨嬫槸绱ф�ワ紝鍒ゆ柇褰撳墠瀹㈡埛褰撳ぉ鐨勭揣鎬ラ搴︽槸鍚︾敤瀹�
+ if (type == 2) {
+ await this.$axios
+ .post(this.$api.insOrder.hasSendUrgentOrder, {})
+ .then((res) => {
+ flag = res.data;
+ return flag;
+ // if (!res.data) {
+ // this.addObj.type = "1";
+ // this.$message.error("褰撳ぉ绱ф�ラ搴﹀凡鐢ㄥ畬");
+ // throw "褰撳ぉ绱ф�ラ搴﹀凡鐢ㄥ畬";
+ // }
+ });
+ }
+ return flag;
+ },
+ //鍏夌氦閰嶇疆淇濆瓨鍥炶皟
+ saveFiberConfigEvent(event) {
+ console.log(event);
+ this.$nextTick(() => {
+ this.getTotal(event.bushing);
+ this.fiberPairing = event.fiberPairing;
+ });
+ },
+ //淇濆瓨鍗曟牴鍨傜洿鐕冪儳鐗规畩鍊�
+ saveSingleVerticalCombustionData() {},
+ openSingleVerticalCombustionDialog() {
+ this.$prompt("鍗曟牴鍨傜洿鐕冪儳娆℃暟", "鐗规畩妫�娴嬮」鐩�", {
+ confirmButtonText: "纭畾",
+ cancelButtonText: "鍙栨秷",
+ inputValidator: this.customDecimalValidate,
+ closeOnClickModal: false,
+ })
+ .then(({ value }) => {
+ this.sampleList.forEach((item) => {
+ this.singleVerticalData(item.insProduct, value);
+ });
+ this.singleVerticalData(this.productList, value);
+ this.singleVerticalData(this.productList0, value);
+ this.changeProductList0();
+ this.currentMethod.insProduct = this.productList0;
+ this.getProNum();
+ })
+ .catch(() => {});
+ },
+ singleVerticalData(arr, value) {
+ arr.forEach((ins) => {
+ if (ins.inspectionItem == "鍗曟牴鍨傜洿鐕冪儳" && ins.state == 1) {
+ let tell = "";
+ if (ins.tell.includes(",")) {
+ tell = ins.tell.split(",")[0];
+ } else {
+ tell = ins.tell;
+ }
+ ins.tell = tell + "," + value + "鏍�";
+ }
+ });
+ },
+ customDecimalValidate(value) {
+ console.log(value);
+ if (value == 0) {
+ return "涓嶈兘涓�0锛岃杈撳叆鏁板瓧";
+ } else if (!/^[0-9]*[1-9][0-9]*$/.test(value)) {
+ return "璇疯緭鍏ユ鏁存暟";
+ }
+ },
+ //鐗规畩鍊煎~鍐欏鐞�
+ inputValueHandler(row, index) {
+ if (row) {
+ const nextIndex = index + 1;
+ // console.log(nextIndex, this.editTable)
+ for (let i = nextIndex; i < this.editTable.length; i++) {
+ const element = this.editTable[i];
+ if (
+ element.model == row.model &&
+ row.symbolItem == element.symbolItem
+ ) {
+ this.editTable[i].value = row.value;
+ }
+ }
+ }
+ },
+ spliceData() {
+ if (
+ !this.circulateForm.entrustNum ||
+ !this.circulateForm.entrustTime ||
+ !this.circulateForm.entrustPoint ||
+ this.opticalProjectList.length === 0 ||
+ this.temperatureData.length === 0
+ ) {
+ this.$message.error("璇峰~鍐欏畬鏁存暟鎹�");
+ return;
+ }
+ // 鎷兼帴瑕佹眰鍊糰sk
+ const opticalProjectList = JSON.parse(
+ JSON.stringify(this.opticalProjectList)
+ );
+ opticalProjectList.forEach((o) => {
+ o.temperatureData.forEach((t) => {
+ if (!t.temperaturePoint || !t.askSymbol || !t.askNum) {
+ throw this.$message.error("璇峰~鍐欏畬鏁存暟鎹�");
+ }
+ });
+ if (!o.temperatureData.some((item) => item.temperaturePoint == "20")) {
+ throw this.$message.error(`${o.value + "娉㈤暱娌℃湁閰嶇疆20鈩冩俯搴︾偣"}`);
+ }
+ });
+ let entrustTime = this.circulateForm.entrustTime;
+ let entrustNum = this.circulateForm.entrustNum;
+ let opticalProjectList2 = JSON.parse(
+ JSON.stringify(this.opticalProjectList)
+ );
+ let askArr = [];
+ let opticalProjectArr = [];
+ opticalProjectList.forEach((o) => {
+ opticalProjectArr.push(o.value);
+ o.temperatureData.unshift({ temperaturePoint: 20 });
+ o.temperatureData.forEach((t) => {
+ if (!t.askSymbol) {
+ const askObj =
+ t.temperaturePoint + "鈩�(甯告俯)" + "," + o.value + "," + null;
+ askArr.push(askObj);
+ } else {
+ const askObj =
+ t.temperaturePoint +
+ "鈩�" +
+ "," +
+ o.value +
+ "," +
+ t.askSymbol +
+ t.askNum;
+ askArr.push(askObj);
+ }
+ });
+ });
+ askArr.push(this.circulateForm.entrustNum);
+ const ask = askArr.join(";");
+ // 鎷兼帴瑕佹眰鎻忚堪tell
+ let askNum = [];
+ let temperaturePointList = [];
+ let temperaturePointList2 = [];
+ entrustTime = entrustTime + "h";
+ entrustNum = entrustNum + "娆�";
+ opticalProjectList2.forEach((o) => {
+ o.temperatureData.forEach((t) => {
+ t.temperaturePoint = t.temperaturePoint + "鈩�";
+ temperaturePointList2.push(t.temperaturePoint);
+ temperaturePointList.push(t.temperaturePoint);
+ askNum.push(t.askSymbol + t.askNum + "dB/Km");
+ });
+ });
+ temperaturePointList = Array.from(new Set(temperaturePointList));
+ temperaturePointList2 = Array.from(new Set(temperaturePointList2));
+ temperaturePointList2.unshift(20 + "鈩�(甯告俯)");
+ let additionArr = [];
+ askNum.forEach((a) => {
+ additionArr.push(temperaturePointList.join(",") + a);
+ });
+ additionArr = Array.from(new Set(additionArr));
+ const tell =
+ "娓╁害鑼冨洿:" +
+ temperaturePointList2.join(",") +
+ ";" +
+ "淇濇俯鏃堕棿:" +
+ entrustTime +
+ ";" +
+ "寰幆娆℃暟:" +
+ entrustNum +
+ ";" +
+ "鍏夌氦(" +
+ opticalProjectArr.join(",") +
+ ")" +
+ "闄勫姞琛板噺缁濆鍊�:" +
+ additionArr.join(";");
+ this.productList.forEach((item) => {
+ if (item.inspectionItem === "娓╁害寰幆") {
+ item.ask = ask;
+ item.tell = tell;
+ }
+ });
+ this.circulateShow = false;
+ this.changeProductList0();
+ this.currentMethod.insProduct = this.productList0;
+ this.sampleList.forEach((ele) => {
+ ele.insProduct = this.productList0;
+ });
+ this.getProNum();
+ },
+ //娓╁崌/鐑惊鐜壒娈婇」鐩敓鎴�
+ //璋冩暣锛氭棤闇�鐢ㄦ埛閫夋嫨锛岄粯璁ょ敓鎴愬洓涓瓙椤癸紝寰幆涓�娆�
+ spliceTemperatureTest() {
+ // console.log(this.temperatureList)
+ // if (this.temperatureTest.length === 0) {
+ // this.$message.error("璇烽�夋嫨");
+ // return;
+ // }
+ let askStr = "";
+ let askArr1 = [];
+ let askArr2 = "";
+ let ask = "";
+ let index = "";
+ // this.temperatureTest.map((val) => {
+ // index = this.temperatureEngList.findIndex((item) => item.label === val);
+ // if (index > -1) {
+ // askStr = val + "," + this.temperatureEngList[index].value;
+ // }
+ // askArr1.push(askStr);
+ // });
+ this.temperatureEngList.forEach((item, i) => {
+ index = i;
+ if (index > -1) {
+ askStr = item.label + "," + this.temperatureEngList[index].value;
+ }
+ askArr1.push(askStr);
+ });
+ askArr2 = askArr1.join(";");
+ ask = askArr2 + ";1";
+ // if (this.temperatureTitle === "娓╁崌璇曢獙瑕佹眰濉啓") {
+ // askArr2 = askArr1.join(";");
+ // ask = askArr2 + ";1";
+ // } else {
+ // if (!this.temperatureTestNum) {
+ // this.$message.error("璇峰~鍐欏惊鐜鏁�");
+ // return;
+ // }
+ // askArr2 = askArr1.join(";");
+ // ask = askArr2 + ";" + this.temperatureTestNum;
+ // }
+ this.productList.forEach((item) => {
+ if (item.id === this.temId) {
+ item.ask = ask;
+ item.tell = ask;
+ }
+ });
+ //灏嗘俯鍗囪瘯楠�/鐑惊鐜殑瑕佹眰鍊煎拰瑕佹眰鎻忚堪锛岃祴缁檚ampleList
+ this.sampleList.forEach((ele) => {
+ if (ele.id == this.currentMethod.id) {
+ ele.insProduct.forEach((item) => {
+ if (item.id === this.temId) {
+ item.ask = ask;
+ item.tell = ask;
+ item.state = 1;
+ }
+ });
+ }
+ });
+ // this.temperatureShow = false;
+ },
+ temperatureShowClose() {
+ if (
+ this.temperatureTitle === "鐑惊鐜姹傚~鍐�" &&
+ !this.temperatureTestNum
+ ) {
+ this.$message.error("璇峰~鍐欏惊鐜鏁�");
+ return;
+ }
+ if (this.temperatureTest.length === 0) {
+ this.$message.error("璇烽�夋嫨");
+ return;
+ }
+ this.spliceTemperatureTest();
+ },
+ cleanTemperatureTest() {
+ this.temperatureTest = [];
+ this.temperatureTestNum = "";
+ this.temperatureShow = false;
+ },
+ cleanSpliceData() {
+ this.circulateForm.entrustNum = null;
+ this.circulateForm.entrustTime = null;
+ this.circulateForm.entrustPoint = null;
+ this.opticalProjectList = [];
+ this.$refs.multipleTable.clearSelection();
+ this.temperatureData = [];
+ this.circulateShow = false;
+ },
+ beforeCirculateShowClose() {
+ if (
+ !this.circulateForm.entrustNum ||
+ !this.circulateForm.entrustTime ||
+ !this.circulateForm.entrustPoint ||
+ this.opticalProjectList.length === 0 ||
+ this.temperatureData.length === 0
+ ) {
+ this.$message.error("璇峰~鍐欏畬鏁存暟鎹�");
+ return;
+ }
+ // 鎷兼帴瑕佹眰鍊糰sk
+ const opticalProjectList = JSON.parse(
+ JSON.stringify(this.opticalProjectList)
+ );
+ opticalProjectList.forEach((o) => {
+ o.temperatureData.forEach((t) => {
+ if (!t.temperaturePoint || !t.askSymbol || !t.askNum) {
+ throw this.$message.error("璇峰~鍐欏畬鏁存暟鎹�");
+ }
+ });
+ if (!o.temperatureData.some((item) => item.temperaturePoint == "20")) {
+ throw this.$message.error(`${o.value + "娉㈤暱娌℃湁閰嶇疆20鈩冩俯搴︾偣"}`);
+ }
+ });
+ this.spliceData();
+ },
+
+ handleTemperatureTestChange(value) {
+ // console.log('value---', value)
+ },
+ handleSelectionChange(val) {
+ this.opticalProjectList = val;
+ },
+ selectAllOptical(val) {
+ if (val.length > 0) {
+ if (val[val.length - 1].temperatureData) {
+ this.temperatureData = this.HaveJson(val.temperatureData);
+ } else {
+ this.temperatureData = [];
+ }
+ } else {
+ this.temperatureData = [];
+ }
+ this.circulateForm.entrustPoint = this.temperatureData.length;
+ },
+ selectOpticalProject(val) {
+ if (val.temperatureData) {
+ this.temperatureData = this.HaveJson(val.temperatureData);
+ } else {
+ this.temperatureData = [];
+ }
+ this.circulateForm.entrustPoint = this.temperatureData.length;
+ },
+ rowClickOptical(val) {
+ const index = this.opticalProjectList.findIndex(
+ (item) => item.value === val.value
+ );
+ if (index > -1 && val.temperatureData) {
+ this.temperatureData = this.HaveJson(val.temperatureData);
+ }
+ this.circulateForm.entrustPoint = this.temperatureData.length;
+ },
+ changeTemperature() {
+ this.opticalProjectList.forEach((item) => {
+ item.temperatureData = this.HaveJson(this.temperatureData);
+ });
+ },
+ addTemperatureData() {
+ const obj = {};
+ this.temperatureData.push(obj);
+ this.circulateForm.entrustPoint = this.temperatureData.length;
+ },
+ deleteTemperatureData() {
+ if (this.temperatureData.length > 0) {
+ this.temperatureData = this.temperatureData.slice(0, -1);
+ }
+ this.circulateForm.entrustPoint = this.temperatureData.length;
+ },
+ changeTemperatureData() {
+ const length = this.temperatureData.length;
+ const entrustPoint = Number(this.circulateForm.entrustPoint);
+ if (entrustPoint > length) {
+ for (let i = 0; i < entrustPoint - length; i++) {
+ const obj = {};
+ this.temperatureData.push(obj);
+ }
+ } else if (entrustPoint < length) {
+ const deleteNum = length - entrustPoint;
+ this.temperatureData = this.temperatureData.slice(0, -deleteNum);
+ }
+ setTimeout(() => {
+ this.isFocus = false;
+ }, 300);
+ },
+ changeProductList0() {
+ this.productList0.forEach((a) => {
+ let obj = this.productList.find((m) => m.id == a.id);
+ if (obj) {
+ a.state = obj.state;
+ a.section = obj.section;
+ a.ask = obj.ask;
+ a.manHour = obj.manHour;
+ a.price = obj.price;
+ a.tell = obj.tell;
+ }
+ if (a.state == 0 && a.bsmRow) {
+ a = this.HaveJson(a.bsmRow);
+ }
+ });
+ },
+ searchFilterList() {
+ const vtw = {
+ inspectionItem: this.inspectionItem, // 妫�楠岄」
+ inspectionItemSubclass: this.inspectionItemSubclass, // 妫�楠岄」瀛愰」
+ methodS: this.methodS, // 璇曢獙鏂规硶
+ };
+ const isHaveValue = Object.values(vtw).some((item) => {
+ return item;
+ });
+ this.changeProductList0();
+ if (isHaveValue) {
+ for (let i in vtw) {
+ if (vtw[i]) {
+ this.productList = this.productList0.filter((item) => {
+ return item[i] && item[i].includes(vtw[i]);
+ });
+ }
+ }
+ this.$nextTick(() => {
+ this.productList.forEach((a) => {
+ if (a.state == 1) this.toggleSelection(a);
+ });
+ });
+ } else {
+ // 娌℃湁鏌ヨ鏉′欢鏃舵覆鏌撴墍鏈夋暟鎹�
+ this.productList = this.productList0;
+ this.$nextTick(() => {
+ this.productList.forEach((a) => {
+ if (a.state == 1) this.toggleSelection(a);
+ });
+ });
+ }
+ },
+ getAuthorizedPerson() {
+ this.$axios.get(this.$api.user.getLaboratoryPersonList).then((res) => {
+ this.personList = res.data;
+ });
+ },
+ selectDictForType() {
+ getDicts("urgency_level")
+ .then((res) => {
+ if (res.code === 200) {
+ this.type = res.data;
+ }
+ })
+ .catch((error) => {
+ console.error(error);
+ });
+ },
+ selectUser() {
+ let selects = this.$refs.ValueTable2.multipleSelection;
+ if (selects.length == 0) {
+ this.$message.error("鏈�夋嫨鏁版嵁");
+ return;
+ }
+ this.addObj.company = selects.company;
+ this.addObj.code = selects.code;
+ this.addObj.companyId = selects.id;
+ this.selectUserDia = false;
+ if (this.active == 1) {
+ // TODO
+ this.selectInsOrderTemplate();
+ }
+ },
+ containsValue(str) {
+ if (str) {
+ let symbolItem = "";
+ this.symbolList.some((value) => {
+ if (str.includes(value)) {
+ symbolItem = value;
+ return true;
+ }
+ });
+ return symbolItem;
+ }
+ },
+ /**
+ * 鑾峰彇灏忔暟鐨勬渶澶т綅鏁�
+ * @param number 鍨嬪彿鍙傛暟
+ * @param ask 瑕佹眰鍊�
+ * @param calcNum 璁$畻鍊�
+ */
+ getDecimalPlaces(number, ask, calcNum) {
+ console.log("璁$畻灏忔暟鐐�-->", number, ask, calcNum);
+ let count1 = 0;
+ let count2 = 0;
+ const reg = /(\d+\.)(\d+)/g;
+ let matches = [];
+ if (ask) {
+ matches = ask.match(reg);
+ }
+ if (
+ matches &&
+ matches.length > 0 &&
+ matches[0].toString().indexOf(".") > -1
+ ) {
+ count1 = matches[0].toString().split(".")[1].length;
+ }
+ if (number.toString().indexOf(".") > -1) {
+ count2 = number.toString().split(".")[1].length;
+ }
+ if (calcNum.toString().indexOf(".") > -1) {
+ const pointLength2 = calcNum.toString().split(".")[1].length;
+ count2 = count2 > pointLength2 ? count2 : pointLength2;
+ }
+ return count1 > count2 ? count1 : count2;
+ },
+ handleAsk(ask, symbolItem, value) {
+ console.log("澶勭悊瑕佹眰鍊�--銆�", ask, symbolItem, value);
+ try {
+ let code = [">", "<", "=", "锛�", "锛�", "鈮�", "鈮�", "卤"];
+ if (ask.includes("&")) {
+ // 澶氫釜鏉′欢
+ let arr0 = ask.split("&");
+ let arr1 = [];
+ arr0.forEach((m) => {
+ let index = code.findIndex((b) => m.includes(b));
+ // console.log("index--銆�", index);
+ if (index > -1) {
+ let arr = m.split(code[index]).filter((b) => !!b);
+ let calcNum = this.$Big(
+ bigEval(this.replaceAll(arr[0], symbolItem, value))
+ );
+ let num = calcNum.toFixed(
+ this.getDecimalPlaces(value, ask, calcNum)
+ );
+ m = code[index] + "" + num;
+ arr1.push(m);
+ }
+ });
+ // console.log("澶勭悊澶氫釜鏉′欢瑕佹眰鍊�--銆�", arr1.join("&"));
+ return arr1.join("&");
+ } else {
+ // 鍗曚釜鏉′欢
+ let index = code.findIndex((b) => ask.includes(b));
+ // console.log("index--銆�", index);
+ if (index > -1) {
+ let arr = ask.split(code[index]).filter((b) => !!b);
+ console.log("鐗规畩鍊兼浛鎹�--銆�", arr);
+ let calcNum = this.$Big(
+ bigEval(this.replaceAll(arr[0], symbolItem, value))
+ );
+ let num = calcNum.toFixed(
+ this.getDecimalPlaces(value, ask, calcNum)
+ );
+ console.log("澶勭悊鍗曚釜鏉′欢瑕佹眰鍊�--銆�", code[index] + "" + num);
+ return code[index] + "" + num;
+ }
+ }
+ } catch (e) {
+ console.error("澶勭悊瑕佹眰鍊煎紓甯�-->", e);
+ }
+ },
+ handleTell(tell, symbolItem, value) {
+ try {
+ let num = this.replaceAll(tell, symbolItem, value);
+ return num;
+ } catch (e) {}
+ },
+ replaceAll(str, find, value) {
+ if (str === undefined) {
+ return str;
+ }
+ return str.split(find).join(value);
+ },
+ save() {
+ if (!this.addObj.companyId) {
+ this.$message.error("鏈�夋嫨瀹㈡埛鍗曚綅");
+ return;
+ }
+ if (!this.addObj.type) {
+ this.$message.error("鏈�夋嫨绱ф�ョ▼搴�");
+ } else if (!this.addObj.formType) {
+ this.$message.error("璇疯緭鍏ユ潵鏍锋柟寮�");
+ } else if (!this.addObj.orderType) {
+ this.$message.error("璇烽�夋嫨妫�楠岀被鍒�");
+ } else if (!this.addObj.production) {
+ this.$message.error("璇疯緭鍏ョ敓浜у崟浣�");
+ } else if (!this.addObj.productionEn) {
+ this.$message.error("璇疯緭鍏ョ敓浜у崟浣岴N");
+ } else if (this.sampleList.length < 1) {
+ this.$message.error("璇锋坊鍔犱竴涓牱鍝�");
+ } else if (!this.sampleList.every((m) => m.sample)) {
+ this.$message.error("璇疯緭鍏ユ牱鍝佸悕绉�");
+ } else if (!this.sampleList.every((m) => m.model)) {
+ this.$message.error("璇疯緭鍏ユ牱鍝佸瀷鍙�");
+ } else if (!this.sampleList.every((m) => m.standardMethodListId)) {
+ this.$message.error("璇烽�夋嫨妫�楠屾爣鍑�");
+ } else {
+ const select = this.selectTree.split(" - ");
+ const productListSelected = this.productListSelected.some(
+ (item) => item.inspectionItem === "娓╁害寰幆"
+ );
+ let isHaveBushing = "";
+ this.sampleList.forEach((item) => {
+ if (!item.bushing || item.bushing.length === 0) {
+ isHaveBushing = false;
+ }
+ });
+ //鍒ゆ柇绱ф�ラ搴︽槸鍚︾敤瀹�
+ this.hasSendUrgentOrder(this.addObj.type).then((res) => {
+ if (!res) {
+ this.addObj.type = "1";
+ this.$message.error("褰撳ぉ绱ф�ラ搴﹀凡鐢ㄥ畬");
+ } else {
+ let sampleCodes = new Set();
+ let flag = false;
+ for (let i = 0; i < this.sampleList.length; i++) {
+ if (
+ this.sampleList[i].sampleCode &&
+ this.sampleList[i].sampleCode.trim() !== "" &&
+ this.sampleList[i].sampleCode != null
+ ) {
+ if (sampleCodes.has(this.sampleList[i].sampleCode)) {
+ flag = true;
+ break;
+ }
+ sampleCodes.add(this.sampleList[i].sampleCode);
+ }
+ }
+ if (flag) {
+ this.$message.error("鏍峰搧缂栧彿涓嶈兘閲嶅");
+ return;
+ }
+ //杩囨护妫�娴嬮」锛氬幓闄ょ壒娈婇」
+ let filterProductList = this.productListSelected
+ .filter((ele) => ele.bsm == 0)
+ .filter((ele) => {
+ if (
+ select[1].indexOf("閫氫俊") >= 0 &&
+ ["鍏夌紗", "鍏夌氦"].includes(select[2])
+ ) {
+ return !["娓╁害寰幆", "鍏夌氦鎺ュご鎹熻��"].includes(
+ ele.inspectionItem
+ );
+ }
+ return true;
+ })
+ .filter((ele) => {
+ if (select[1].indexOf("鐢靛姏") >= 0) {
+ return !["娓╁崌璇曢獙", "鐑惊鐜�"].includes(ele.inspectionItem);
+ }
+ return true;
+ });
+ //鏍¢獙妫�楠岄」鐨勮姹傚�煎拰瑕佹眰鎻忚堪,浠呭鎵樿姹�
+ const isTrue = this.checkRequiredValueAndRemark(
+ filterProductList,
+ this.isAskOnlyRead
+ );
+ if (!isTrue) {
+ this.errorInspectionItem = true;
+ this.errorInspectionItemList = [
+ ...new Set(this.errorInspectionItemList),
+ ];
+ let newData = [];
+ const h = this.$createElement;
+ for (let i in this.errorInspectionItemList) {
+ const lastChar = this.errorInspectionItemList[i].slice(-1);
+ if (lastChar == "-") {
+ this.errorInspectionItemList[i] =
+ this.errorInspectionItemList[i].slice(0, -1);
+ }
+ newData.push(
+ h(
+ "p",
+ { style: "font-size: 14px;color: red;" },
+ Number(i) + 1 + "銆�" + this.errorInspectionItemList[i]
+ )
+ );
+ }
+ newData.push(
+ h(
+ "p",
+ {
+ style:
+ "font-size: 16px;color:#000;margin-top:12px;overflow-y: auto;max-height:80vh",
+ },
+ "浠ヤ笂椤圭洰瑕佹眰鎻忚堪涓庤姹傚�间笉鍖归厤锛岀‘瀹氭彁浜わ紵"
+ )
+ );
+ this.$confirm("鎻愮ず", {
+ title: "鎻愮ず",
+ message: h("div", null, newData),
+ confirmButtonText: "纭畾",
+ cancelButtonText: "鍙栨秷",
+ type: "",
+ })
+ .then(() => {
+ console.log("纭畾");
+ // console.log('isHaveBushing===', this.totalArr)
+ let spcialItem = this.totalArr.filter(
+ (a) =>
+ a.state == 1 &&
+ (a.inspectionItem.includes("鏉惧绠�") ||
+ (a.inspectionItemSubclass &&
+ a.inspectionItemSubclass.includes("鏉惧绠�")))
+ );
+ if (
+ productListSelected &&
+ select[2] === "鍏夌紗" &&
+ isHaveBushing === false &&
+ spcialItem.length == 0
+ ) {
+ this.$message.error("鍏夌紗娓╁害寰幆椤圭洰蹇呴』杩涜鍏夌氦閰嶇疆");
+ this.$refs.sampleTable.setCurrentRow(
+ this.currentMethod,
+ true
+ );
+ this.rowClick(this.currentMethod);
+ this.sampleIds = [this.currentMethod.id];
+ this.openConfig();
+ return;
+ } else if (spcialItem.length > 0 && isHaveBushing === false) {
+ this.$message.error("鏉惧绠¢」鐩繀椤昏繘琛屽厜绾ら厤缃�");
+ this.$refs.sampleTable.setCurrentRow(
+ this.currentMethod,
+ true
+ );
+ this.rowClick(this.currentMethod);
+ this.sampleIds = [this.currentMethod.id];
+ // spcialItem.forEach(item=>{
+ // this.sampleIds.push(item.id)
+ // })
+ this.openConfig();
+ return;
+ }
+ let sampleList = this.HaveJson(this.sampleList);
+ let projectNum = this.totalArr.filter(
+ (a) => a.state == 1
+ ).length;
+ 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
+ );
+ if (isRTS && this.PROJECT == "妫�娴嬩腑蹇�") {
+ this.editTable = this.handleData(
+ sampleList,
+ this.containsValue,
+ 0
+ );
+ if (this.editTable.length === 0) {
+ this.$message.error("瑕佹眰鍊间负绌猴紝闇�瑕佸幓鏍囧噯搴撶淮鎶わ紒");
+ return;
+ }
+ // console.log('editTable1===', this.editTable);
+ this.editTable.forEach((item) => {
+ item.value = item.modelNum;
+ });
+ this.bsm3Dia = true;
+ return;
+ }
+ this.saveMethod(sampleList);
+ }
+ this.errorInspectionItemList = [];
+ })
+ .catch(() => {
+ this.errorInspectionItemList = [];
+ this.errorInspectionItem = false;
+ return;
+ });
+ //this.$message.error('妫�楠岄」'+this.errorInspectionItemList+'鐨勮姹傚�间笌瑕佹眰鎻忚堪涓嶅尮閰嶏紝 璇锋鏌�')
+ //return
+ }
+ if (this.errorInspectionItem) {
+ return;
+ }
+ // console.log('isHaveBushing===', this.totalArr)
+ let spcialItem = this.totalArr.filter(
+ (a) =>
+ a.state == 1 &&
+ (a.inspectionItem.includes("鏉惧绠�") ||
+ (a.inspectionItemSubclass &&
+ a.inspectionItemSubclass.includes("鏉惧绠�")))
+ );
+ if (
+ productListSelected &&
+ select[2] === "鍏夌紗" &&
+ isHaveBushing === false &&
+ spcialItem.length == 0
+ ) {
+ this.$message.error("鍏夌紗娓╁害寰幆椤圭洰蹇呴』杩涜鍏夌氦閰嶇疆");
+ this.$refs.sampleTable.setCurrentRow(this.currentMethod, true);
+ this.rowClick(this.currentMethod);
+ this.sampleIds = [this.currentMethod.id];
+ this.openConfig();
+ return;
+ } else if (spcialItem.length > 0 && isHaveBushing === false) {
+ this.$message.error("鏉惧绠¢」鐩繀椤昏繘琛屽厜绾ら厤缃�");
+ this.$refs.sampleTable.setCurrentRow(this.currentMethod, true);
+ this.rowClick(this.currentMethod);
+ this.sampleIds = [this.currentMethod.id];
+ // spcialItem.forEach(item=>{
+ // this.sampleIds.push(item.id)
+ // })
+ this.openConfig();
+ return;
+ }
+ let sampleList = this.HaveJson(this.sampleList);
+ let projectNum = this.totalArr.filter((a) => a.state == 1).length;
+ 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
+ );
+ if (isRTS && this.PROJECT == "妫�娴嬩腑蹇�") {
+ this.editTable = this.handleData(
+ sampleList,
+ this.containsValue,
+ 0
+ );
+ if (this.editTable.length === 0) {
+ this.$message.error("瑕佹眰鍊间负绌猴紝闇�瑕佸幓鏍囧噯搴撶淮鎶わ紒");
+ return;
+ }
+ // console.log('editTable1===', this.editTable);
+ this.editTable.forEach((item) => {
+ item.value = item.modelNum;
+ });
+ this.bsm3Dia = true;
+ return;
+ }
+ this.saveMethod(sampleList);
+ }
+ }
+ });
+ }
+ },
+ errorSet() {},
+ /**
+ * 鏍¢獙濮旀墭瑕佹眰鐨勬楠岄」鐨勮姹傛弿杩板拰瑕佹眰鍊�
+ *
+ */
+ checkRequiredValueAndRemark(data, isAskOnlyRead) {
+ let isTrue = true;
+ //杩囨护瑕佹眰鍊兼垨瑕佹眰鎻忚堪涓虹┖鐨勬楠岄」
+ let emptyList = data.filter(
+ (ele) =>
+ ele.ask == undefined ||
+ ele.ask == "" ||
+ ele.ask == null ||
+ ele.tell == undefined ||
+ ele.tell == "" ||
+ ele.tell == null
+ );
+ if (emptyList.length > 0) {
+ emptyList.forEach((ele) => {
+ console.log("ask or tell is null");
+ this.errorInspectionItemList.push(
+ ele.inspectionItem +
+ " " +
+ (ele.inspectionItemSubclass == null
+ ? ""
+ : ele.inspectionItemSubclass)
+ );
+ });
+ isTrue = false;
+ }
+ //濮旀墭瑕佹眰鎵嶈蛋涓嬮潰鐨勬牎楠�
+ if (isAskOnlyRead) {
+ try {
+ data.forEach((ele) => {
+ //瑕佹眰鍊煎拰瑕佹眰鎻忚堪涓嶈兘涓虹┖
+ // if(!ele.ask || !ele.tell){
+ // console.log(111111);
+ // this.errorInspectionItemList.push(ele.inspectionItem + ' ' + (ele.inspectionItemSubclass == null ? '' : ele.inspectionItemSubclass))
+ // //this.errorInspectionItemList.push(h('p', {style: 'font-size: 14px;color: red;'},ele.inspectionItem + ' ' + ele.inspectionItemSubclass))
+ // //this.errorInspectionItemList.push(h('p', { style: 'font-size: 16px;color:#000;margin-top:12px;overflow-y: auto;max-height:80vh' },'浠ヤ笂椤圭洰涓嶅悎鏍硷紝纭畾鎻愪氦锛�'))
+ // isTrue = false
+ // }else{
+ // }
+ if (/[0-9]/.test(ele.ask)) {
+ //鍒ゆ柇锛堚墹,鈮�,>,<,=锛夎繖鍑犵鎯呭喌
+ //鍒ゆ柇瑕佹眰鍊间腑鐨勬暟瀛楁槸鍚﹀寘鍚湪瑕佹眰鎻忚堪涓�
+ //.match(/\d+(\.\d+)?/g) 姝ゆ鍒欐埅鍙栧瓧绗︿腑鐨勬暣鏁板拰灏忔暟
+ if (["鈮�", "鈮�", ">", "<", "="].includes(ele.ask[0])) {
+ const askVal = ele.ask.match(/\d+(\.\d+)?/g);
+ // 鍒ゆ柇瑕佹眰鍊兼槸鍚﹀寘鍚湪瑕佹眰鎻忚堪涓�
+ if (ele.tell.includes(ele.ask[0])) {
+ const regex = /([鈮も墺<>!=]=?|[<>=])[+-]?\d*(\.\d+)?/g;
+ const matches = ele.tell.match(regex);
+ if (
+ ele.ask != ele.tell &&
+ matches.filter((item) => item == ele.ask).length == 0
+ ) {
+ console.log(
+ "瑕佹眰鍊煎拰瑕佹眰鎻忚堪涓嶇浉绛�,骞朵笖瑕佹眰鎻忚堪涓笉鍖呭惈瑕佹眰鍊�"
+ );
+ this.errorInspectionItemList.push(
+ ele.inspectionItem +
+ " " +
+ (ele.inspectionItemSubclass == null
+ ? ""
+ : ele.inspectionItemSubclass)
+ );
+ isTrue = false;
+ }
+ }
+ if (isNaN(askVal[0])) {
+ console.log("瑕佹眰鍊间腑娌℃湁鏁板瓧");
+ this.errorInspectionItemList.push(
+ ele.inspectionItem +
+ " " +
+ (ele.inspectionItemSubclass == null
+ ? ""
+ : ele.inspectionItemSubclass)
+ );
+ isTrue = false;
+ }
+ if (
+ ele.tell.includes("鐩村緞鍏樊涔嬪崐") &&
+ ele.ask.indexOf("0.5") < 0
+ ) {
+ console.log("鐩村緞鍏樊涔嬪崐涓�0.5涓嶅尮閰�");
+ this.errorInspectionItemList.push(
+ ele.inspectionItem +
+ " " +
+ (ele.inspectionItemSubclass == null
+ ? ""
+ : ele.inspectionItemSubclass)
+ );
+ isTrue = false;
+ // if(ele.tell.indexOf(askVal[0])<0 && ele.tell.indexOf('鍗�')<0){
+ // console.log(askVal);
+ // console.log(2222233);
+ // isTrue = false
+ // }else if(askVal==0.5&&ele.tell.indexOf('鍗�')<0){
+ // console.log(22222);
+ // isTrue = false
+ // }
+ }
+ }
+ //鍒ゆ柇鑼冨洿(10-25),瑕佹眰鍊煎繀椤绘槸-
+ if (
+ ele.ask.indexOf("-") > 0 &&
+ ele.ask.length > 1 &&
+ ele.ask.indexOf("&") < 0
+ ) {
+ //瑕佹眰鎻忚堪鐨剘鍜岃姹傚�肩殑-锛岀瓑鏁�
+ let tell = ele.tell;
+ if (
+ ele.tell.indexOf("~") > 0 ||
+ ele.tell.indexOf("锛�") ||
+ ele.tell.indexOf("锛�")
+ ) {
+ tell = tell.replace("~", "-");
+ tell = tell.replace("锛�", "(");
+ tell = tell.replace("锛�", ")");
+ }
+ const splits = ele.ask.split("-");
+ //婊¤冻鏍煎紡瑕佹眰锛屽苟涓斾袱涓兘鏄暟瀛�
+ if (
+ splits.length == 2 &&
+ !isNaN(splits[0]) &&
+ !isNaN(splits[1])
+ ) {
+ /**
+ * 鍒ゆ柇鎯呭喌
+ * 1.瑕佹眰鎻忚堪涓庤姹傛弿杩扮浉鍚�
+ * 2.瑕佹眰鎻忚堪鍖呭惈瑕佹眰鍊�
+ * 3.瑕佹眰鎻忚堪涓�3N-10N杩欑鎯呭喌
+ * 4.瑕佹眰鎻忚堪涓�10卤5杩欑鎯呭喌
+ * 5.瑕佹眰鎻忚堪涓�(10-15)卤5杩欑鎯呭喌
+ */
+ let min = Math.min(...splits);
+ let max = Math.max(...splits);
+ if (min == max) {
+ console.log("鏈�澶у�煎拰鏈�灏忓�肩浉绛�");
+ this.errorInspectionItemList.push(
+ ele.inspectionItem +
+ " " +
+ (ele.inspectionItemSubclass == null
+ ? ""
+ : ele.inspectionItemSubclass)
+ );
+ isTrue = false;
+ }
+ //瑕佹眰鎻忚堪涓笉鍖呭惈卤浠ュ強鍖洪棿鐨勬暟瀛楋紝鍒欒繑鍥瀎alse
+ if (tell.indexOf("卤") < 0 && tell.indexOf("-") < 0) {
+ console.log("瑕佹眰鎻忚堪涓笉鍖呭惈卤浠ュ強鍖洪棿鐨勬暟瀛�");
+ this.errorInspectionItemList.push(
+ ele.inspectionItem +
+ " " +
+ (ele.inspectionItemSubclass == null
+ ? ""
+ : ele.inspectionItemSubclass)
+ );
+ isTrue = false;
+ } else if (ele.tell.indexOf("-") == 0) {
+ console.log("瑕佹眰鍊肩殑鍖洪棿鏍煎紡閿欒");
+ this.errorInspectionItemList.push(
+ ele.inspectionItem +
+ " " +
+ (ele.inspectionItemSubclass == null
+ ? ""
+ : ele.inspectionItemSubclass)
+ );
+ isTrue = false;
+ } else if (tell.indexOf("-") > 0 || tell.indexOf("卤") > 0) {
+ if (tell.indexOf("卤") > 0 && tell.indexOf("-") > 0) {
+ const num = tell.split("卤")[1];
+ const startIndex = tell.indexOf("(");
+ const endIndex = tell.indexOf(")");
+ ////鏍¢獙瑕佹眰鎻忚堪涓�(10-15)卤5杩欑鍐欐硶鐨勬儏鍐�
+ if (startIndex > -1 && endIndex > 0) {
+ const str = tell.substring(startIndex, endIndex);
+ if (str && str.indexOf("-") > 0) {
+ let strList = str.split("-");
+ const minNum = Number(strList[0] - num);
+ const maxNum = Number(strList[1] + num);
+ if (minNum > min || maxNum < max) {
+ console.log("閿欒鐨勫尯闂磋缃�");
+ this.errorInspectionItemList.push(
+ ele.inspectionItem +
+ " " +
+ (ele.inspectionItemSubclass == null
+ ? ""
+ : ele.inspectionItemSubclass)
+ );
+ isTrue = false;
+ }
+ }
+ }
+ } else if (tell.indexOf("卤") > 0 && tell.indexOf("-") < 0) {
+ //鏍¢獙瑕佹眰鎻忚堪涓�10卤5杩欑鍐欐硶鐨勬儏鍐�
+ let splitNums = tell.split("卤");
+ if (splitNums.length < 2) {
+ console.log(777777);
+ this.errorInspectionItemList.push(
+ ele.inspectionItem +
+ " " +
+ (ele.inspectionItemSubclass == null
+ ? ""
+ : ele.inspectionItemSubclass)
+ );
+ isTrue = false;
+ } else {
+ let leftNum = splitNums[0].match(/\d+(\.\d+)?/g);
+ let rightNum = splitNums[1].match(/\d+(\.\d+)?/g);
+ console.log(leftNum, rightNum);
+ let minTell = Number(
+ Number(leftNum) - Number(rightNum)
+ ).toFixed(6);
+ let maxTell = Number(
+ Number(leftNum) + Number(rightNum)
+ ).toFixed(6);
+ if (minTell != min || maxTell != max) {
+ console.log(888888);
+ this.errorInspectionItemList.push(
+ ele.inspectionItem +
+ " " +
+ (ele.inspectionItemSubclass == null
+ ? ""
+ : ele.inspectionItemSubclass)
+ );
+ isTrue = false;
+ }
+ }
+ } else {
+ const splitTells = tell.split("-");
+ if (
+ splitTells[0].indexOf(min) < 0 ||
+ splitTells[1].indexOf(max) < 0
+ ) {
+ console.log(99999);
+ this.errorInspectionItemList.push(
+ ele.inspectionItem +
+ " " +
+ (ele.inspectionItemSubclass == null
+ ? ""
+ : ele.inspectionItemSubclass)
+ );
+ isTrue = false;
+ }
+ }
+ }
+ } else {
+ console.log(1010101001);
+ this.errorInspectionItemList.push(
+ ele.inspectionItem +
+ " " +
+ (ele.inspectionItemSubclass == null
+ ? ""
+ : ele.inspectionItemSubclass)
+ );
+ isTrue = false;
+ }
+ }
+ // else if(ele.ask.indexOf('&')>0 && ele.ask.length>1){
+ // //鍒ゆ柇
+ // }
+ }
+ });
+ } catch (error) {
+ console.log(error);
+ isTrue = false;
+ }
+ }
+ return isTrue;
+ },
+ save0() {
+ console.log("editTable2===", this.editTable);
+ if (this.editTable.every((m) => m.value)) {
+ let sampleList = this.handleData(
+ this.HaveJson(this.sampleList),
+ this.handleAsk,
+ 1
+ );
+ if (sampleList.length === 0) {
+ this.$message.error("瑕佹眰鍊间负绌猴紝闇�瑕佸幓鏍囧噯搴撶淮鎶わ紒");
+ return;
+ }
+ this.saveMethod(sampleList);
+ } else {
+ this.$message.error("璇峰~鍐欒瘑鍒鍊�");
+ }
+ },
+ handleData(sampleList, calBack, type) {
+ let editTable = [];
+ let isTrue = true;
+ sampleList.forEach((item) => {
+ let obj = {
+ 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) {
+ let str = calBack(a.ask);
+ str &&
+ obj.symbolList.push({
+ symbolItem: str,
+ inspectionItem: a.inspectionItem,
+ });
+ } else if (type == 1) {
+ let arr = this.HaveJson(
+ 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);
+ if (ask) {
+ a.ask = ask;
+ }
+ let tell = this.handleTell(
+ a.tell,
+ arr[i].symbolItem,
+ arr[i].value
+ );
+ if (tell) {
+ a.tell = tell;
+ }
+ }
+ } else {
+ isTrue = false;
+ }
+ }
+ // arr.forEach(f => {
+ // if(a.ask){
+ // if(a.ask.includes(f.symbolItem)){
+ // let ask = calBack(a.ask, f.symbolItem,f.value)
+ // if (ask) {
+ // a.ask = ask
+ // }
+ // let tell = this.handleTell(a.tell, f.symbolItem,f.value)
+ // if (tell) {
+ // a.tell = tell
+ // }
+ // }
+ // }else{}
+ // })
+ }
+ }
+ });
+ }
+ // 鍏夌氦甯﹂」鐩�
+ if (item.bushing && item.bushing.length > 0) {
+ item.bushing.forEach((a) => {
+ if (a.fiber && a.fiber.length > 0) {
+ a.fiber.forEach((b) => {
+ if (b.productList && b.productList.length > 0) {
+ b.productList.forEach((c) => {
+ if (c.state == 1) {
+ if (type == 0) {
+ let str = calBack(c.ask);
+ str &&
+ obj.symbolList.push({
+ symbolItem: str,
+ inspectionItem: c.inspectionItem,
+ });
+ } 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 (ask) {
+ c.ask = ask;
+ }
+ let tell = this.handleTell(
+ c.tell,
+ f.symbolItem,
+ f.value
+ );
+ if (tell) {
+ c.tell = tell;
+ }
+ }
+ });
+ }
+ }
+ });
+ }
+ });
+ }
+ if (a.fibers && a.fibers.length > 0) {
+ a.fibers.forEach((b) => {
+ if (b.productList && b.productList.length > 0) {
+ b.productList.forEach((c) => {
+ if (c.state == 1) {
+ if (type == 0) {
+ let str = calBack(c.ask);
+ str &&
+ obj.symbolList.push({
+ symbolItem: str,
+ inspectionItem: c.inspectionItem,
+ });
+ } 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 (ask) {
+ c.ask = ask;
+ }
+ let tell = this.handleTell(
+ c.tell,
+ f.symbolItem,
+ f.value
+ );
+ if (tell) {
+ c.tell = tell;
+ }
+ }
+ });
+ }
+ }
+ });
+ }
+ if (b.fiber && b.fiber.length > 0) {
+ b.fiber.forEach((c) => {
+ if (c.productList && c.productList.length > 0) {
+ c.productList.forEach((d) => {
+ if (d.state == 1) {
+ if (type == 0) {
+ let str = calBack(d.ask);
+ str &&
+ obj.symbolList.push({
+ symbolItem: str,
+ inspectionItem: d.inspectionItem,
+ });
+ } 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 (ask) {
+ d.ask = ask;
+ }
+ let tell = this.handleTell(
+ d.tell,
+ f.symbolItem,
+ f.value
+ );
+ if (tell) {
+ d.tell = tell;
+ }
+ }
+ });
+ }
+ }
+ });
+ }
+ });
+ }
+ });
+ }
+ });
+ }
+ if (type == 0) {
+ editTable.push(obj);
+ }
+ });
+ if (type == 0) {
+ editTable.forEach((a) => {
+ a.symbolList.forEach((b) => {
+ let arr = a.symbolList.filter((c) => c.symbolItem == b.symbolItem);
+ b.inspectionItemList = arr.map((c) => c.inspectionItem).join(",");
+ });
+ });
+ editTable.forEach((a) => {
+ let mySet = new Set();
+ a.symbolList = a.symbolList.filter((b) => {
+ let num0 = mySet.size;
+ mySet.add(b.symbolItem);
+ let num1 = mySet.size;
+ if (num0 != num1) {
+ return true;
+ } else {
+ return false;
+ }
+ });
+ });
+ let editTableNew = [];
+ editTable.forEach((a) => {
+ a.symbolList.forEach((b) => {
+ let obj = {
+ sampleCode: a.sampleCode,
+ model: a.model,
+ symbolItem: b.symbolItem,
+ sampleId: a.sampleId,
+ sampleIdTwo: a.sampleId,
+ value: null,
+ inspectionItemList: b.inspectionItemList,
+ modelNum: a.modelNum,
+ };
+ editTableNew.push(obj);
+ });
+ });
+ return isTrue ? editTableNew : [];
+ } else {
+ return isTrue ? sampleList : [];
+ }
+ },
+ saveMethod(sampleList0) {
+ let sampleList = this.HaveJson(sampleList0);
+ sampleList.forEach((a) => {
+ a.insProduct.forEach((b) => {
+ delete b.bsmRow;
+ });
+ });
+ this.editTable.forEach((item) => {
+ sampleList.forEach((a) => {
+ if (item.sampleIdTwo == a.id) {
+ a.insProduct.forEach((b) => {
+ if (item.inspectionItemList == b.inspectionItem) {
+ b.ask = b.ask.replace(item.symbolItem, item.value);
+ this.$set(b, "specialValue", item.value);
+ }
+ });
+ }
+ });
+ });
+ console.log(this.sampleList);
+ console.log(this.fiberPairing);
+ this.saveLoad = true;
+ this.$axios
+ .post(this.$api.insOrder.addInsOrder, {
+ str: JSON.stringify({
+ insOrder: this.addObj,
+ list: JSON.stringify(
+ sampleList.map((a) => {
+ if (this.PROJECT === "瑁呭鐢电紗") {
+ if (a.modelNum) {
+ 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;
+ }
+ } else {
+ a.model =
+ a.model +
+ (a.modelNum == null ||
+ a.modelNum == "" ||
+ a.modelNum == "null"
+ ? ""
+ : "-" + a.modelNum);
+ }
+ } 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;
+ })
+ ),
+ pairing: JSON.stringify(this.bsm2Val2),
+ fiberPairing: JSON.stringify(this.fiberPairing),
+ }),
+ })
+ .then((res) => {
+ this.saveLoad = false;
+ if (res.code == 201) return;
+ this.$message.success("宸叉彁浜�");
+ this.bsm3Dia = false;
+ this.$parent.playOrder(0);
+ })
+ .catch((e) => {
+ this.saveLoad = false;
+ });
+ },
+ upInsOrderOfState(state) {
+ if (state == 1) {
+ //this.saveLoad = true
+ this.issuedDialogVisible = true;
+ this.$axios
+ .post(this.$api.insOrder.selectOrderManDay, {
+ id: this.currentId,
+ })
+ .then((ress) => {
+ this.distributeData.orderId = this.currentId;
+ this.distributeData.appointed = ress.data;
+ console.log("绾﹀畾鏃堕棿", this.distributeData.appointed);
+ });
+ setTimeout(() => {
+ this.issuedDialogVisible = true;
+ }, 1000);
+ // this.$axios.post(this.$api.insOrder.upInsOrderOfState, {
+ // state,
+ // id: this.currentId,
+ // companyId:this.addObj.companyId,
+ // laboratory:this.addObj.laboratory,
+ // company: this.addObj.company
+ // }, {
+ // headers: {
+ // 'Content-Type': 'application/json'
+ // }
+ // }).then(res => {
+ // this.saveLoad = false
+ // if (res.code == 201) return
+ // this.$message.success('鎻愪氦鎴愬姛')
+
+ // this.$parent.multipleSelection = [{id: this.currentId}]
+ // this.$parent.print()
+ // 濡傛灉绱ф�ョ▼搴︿负绱ф�ワ紝闇�瑕佺洿鎺ヤ笅鍙戜汉鍛�
+ // if (this.addObj.type == 2) {
+ // this.issuedDialogVisible = true;
+ // this.$axios.post(this.$api.insOrder.selectOrderManDay, {
+ // id: this.currentId
+ // }).then(ress => {
+ // this.distributeData.orderId = this.currentId
+ // this.distributeData.appointed = ress.data
+ // })
+ // } else {
+ // this.$parent.playOrder(0)
+ // }
+
+ // this.$axios.post(this.$api.insOrder.selectOrderManDay, {
+ // id: this.currentId
+ // }).then(ress => {
+ // this.distributeData.orderId = this.currentId
+ // this.distributeData.appointed = ress.data
+ // })
+ // setTimeout(() => {
+ // this.issuedDialogVisible = true;
+ // }, 1000)
+ // })
+ } else {
+ // 涓嶉�氳繃
+ this.noDialogVisible = true;
+ }
+ },
+ getLabelPrinting(currentId) {
+ this.$axios
+ .post(this.$api.insOrder.labelPrinting, {
+ ids: currentId,
+ })
+ .then((res) => {
+ //瀹℃牳閫氳繃锛岄粯璁ゅ彧鎵撳嵃绗竴涓牱鍝佹爣绛�
+ let firstSample = res.data[0];
+ let arr1 = [];
+ firstSample.insProduct.forEach((b) => {
+ arr1.push(b.inspectionItem);
+ });
+ firstSample.item = [...new Set(arr1)].join(",");
+ // arr.forEach((a) => {
+ // let arr1 = [];
+ // a.insProduct.forEach((b) => {
+ // arr1.push(b.inspectionItem);
+ // });
+ // a.item = [...new Set(arr1)].join(",");
+ // });
+ this.beginPrint(firstSample);
+ });
+ },
+ //寮�濮嬫爣绛炬墦鍗�
+ beginPrint(qrData) {
+ console.log("qrData", qrData);
+ if (qrData == null || qrData.code == null || qrData.code == "") {
+ return;
+ }
+ this.LODOP = getLodop();
+ this.LODOP.SET_LICENSES(
+ "鍗楅�氬競閼槼杞欢寮�鍙戞湁闄愬叕鍙�",
+ "60F8E5078AE17DEB340C94BC7E83CAFF",
+ "",
+ ""
+ );
+ this.LODOP.PRINT_INITA();
+ let qrStr =
+ "https://zttx-lims.ztt.cn:8021/lims/qr/qrScan?code=" +
+ qrData.id +
+ "&type=sample";
+ // this.LODOP.NEWPAGE()
+ // this.LODOP.SET_PRINT_PAGESIZE(0, 100, 360, '')
+ this.LODOP.SET_PRINT_MODE("PRINT_NOCOLLATE", 1);
+ this.LODOP.ADD_PRINT_BARCODE(2, 5, 80, 80, "QRCode", qrStr);
+ this.LODOP.ADD_PRINT_TEXT(5, 85, 60, 18, "鏍峰搧缂栧彿锛�");
+ this.LODOP.SET_PRINT_STYLEA(2, "FontSize", 5);
+ this.LODOP.ADD_PRINT_TEXT(5, 117, 280, 18, qrData.sampleCode);
+ this.LODOP.SET_PRINT_STYLEA(3, "FontSize", 5);
+ this.LODOP.ADD_PRINT_TEXT(15, 85, 60, 18, "濮旀墭鍗曞彿锛�");
+ this.LODOP.SET_PRINT_STYLEA(4, "FontSize", 5);
+ this.LODOP.ADD_PRINT_TEXT(15, 117, 280, 18, qrData.code);
+ this.LODOP.SET_PRINT_STYLEA(5, "FontSize", 5);
+ this.LODOP.ADD_PRINT_TEXT(25, 85, 60, 18, "瑙勬牸鍨嬪彿锛�");
+ this.LODOP.SET_PRINT_STYLEA(6, "FontSize", 5);
+ this.LODOP.ADD_PRINT_TEXT(25, 117, 280, 18, qrData.model);
+ this.LODOP.SET_PRINT_STYLEA(7, "FontSize", 5);
+ this.LODOP.ADD_PRINT_TEXT(35, 85, 60, 18, "鏍峰搧鍚嶇О锛�");
+ this.LODOP.SET_PRINT_STYLEA(8, "FontSize", 5);
+ this.LODOP.ADD_PRINT_TEXT(35, 117, 280, 18, qrData.sample);
+ this.LODOP.SET_PRINT_STYLEA(9, "FontSize", 5);
+ this.LODOP.ADD_PRINT_TEXT(45, 85, 60, 20, "妫�娴嬮」鐩細");
+ this.LODOP.SET_PRINT_STYLEA(10, "FontSize", 5);
+ this.LODOP.ADD_PRINT_TEXT(
+ 45,
+ 117,
+ 150,
+ 20,
+ qrData.item.length > 42
+ ? qrData.item.substring(0, 39) + "..."
+ : qrData.item
+ );
+ this.LODOP.SET_PRINT_STYLEA(11, "FontSize", 5);
+ this.LODOP.ADD_PRINT_TEXT(67, 85, 60, 18, "鏍峰搧鐘舵�侊細");
+ this.LODOP.SET_PRINT_STYLEA(12, "FontSize", 5);
+ let stateStr = "鈻㈠緟妫� 鈻㈠湪妫� 鈻㈠凡妫�";
+ let leaveStr =
+ qrData.isLeave && qrData.isLeave === 1 ? " 鈻g暀鏍�" : " 鈻㈢暀鏍�";
+ if (qrData.insState == 0) {
+ stateStr = "鈻e緟妫� 鈻㈠湪妫� 鈻㈠凡妫�";
+ } else if (qrData.insState == 1) {
+ stateStr = "鈻㈠緟妫� 鈻e湪妫� 鈻㈠凡妫�";
+ } else if (qrData.insState == 2) {
+ stateStr = "鈻㈠緟妫� 鈻㈠湪妫� 鈻e凡妫�";
+ }
+ this.LODOP.ADD_PRINT_TEXT(67, 117, 280, 18, stateStr + leaveStr);
+ this.LODOP.SET_PRINT_STYLEA(13, "FontSize", 5);
+ this.LODOP.PRINT();
+ // this.LODOP.PREVIEW()
+ },
+ // 涓嬪彂
+ submitForm2() {
+ if (
+ this.distributeData.appointed == null ||
+ this.distributeData.appointed == ""
+ ) {
+ this.$message.error("绾﹀畾鏃堕棿鏈~鍐�");
+ return;
+ }
+ if (
+ this.addObj.type == 2 &&
+ (this.distributeData.userId == null ||
+ this.distributeData.userId.length == 0)
+ ) {
+ this.$message.error("鎸囨淳浜哄憳鏈~鍐�");
+ return;
+ }
+ if (
+ this.distributeData.userId.length > 0 &&
+ (this.distributeData.sonLaboratory == null ||
+ this.distributeData.sonLaboratory == "")
+ ) {
+ this.$message.error("璇曢獙瀹ゆ湭濉啓");
+ return;
+ }
+ // let flag = true;
+ this.$axios
+ .post(
+ this.$api.insOrder.upInsOrderOfState,
+ {
+ state: 1,
+ id: this.currentId,
+ companyId: this.addObj.companyId,
+ laboratory: this.addObj.laboratory,
+ company: this.addObj.company,
+ isCreate: this.distributeData.isCreate,
+ },
+ {
+ headers: {
+ "Content-Type": "application/json",
+ },
+ }
+ )
+ .then((res) => {
+ // flag = false;
+
+ // if (flag) {
+ // this.$message.error("濮旀墭缂栧彿鐢熸垚澶辫触");
+ // return;
+ // }
+ this.upLoad = true;
+ this.$axios
+ .post(
+ this.$api.insOrder.upInsOrder,
+ {
+ orderId: this.distributeData.orderId,
+ appointed: this.distributeData.appointed,
+ userIdList: this.distributeData.userId,
+ sonLaboratory: this.distributeData.sonLaboratory,
+ },
+ {
+ headers: {
+ "Content-Type": "application/json",
+ },
+ }
+ )
+ .then((res) => {
+ if (res.code === 201) {
+ this.upLoad = false;
+ return;
+ }
+ this.$message.success("鎻愪氦鎴愬姛");
+ this.upLoad = false;
+ this.issuedDialogVisible = false;
+ this.$parent.playOrder(0);
+ //瀹℃牳閫氳繃鍚庯紝鑷姩鎵撳嵃浜岀淮鐮�
+ //TODO: 鐢靛姏璇曢獙瀹ゆ殏鏃朵笉鐢ㄦ爣绛炬墦鍗�
+ if (
+ this.sonLaboratoryList.filter((f) => f.value === "鐢靛姏璇曢獙瀹�")
+ .length === 0
+ ) {
+ this.$nextTick(() => {
+ this.getLabelPrinting(this.currentId);
+ });
+ }
+ })
+ .catch((e) => {
+ this.$message.error("鎻愪氦澶辫触");
+ this.upLoad = false;
+ });
+ });
+ },
+ getUserNow() {
+ this.$axios.get(this.$api.user.getUserNow).then((res) => {
+ let selects = res.data;
+ if (selects == null) return;
+ this.addObj.userId = selects.id;
+ this.addObj.company = selects.company;
+ this.addObj.custom = selects.name;
+ this.addObj.code = selects.code;
+ this.addObj.phone = selects.phone;
+ this.addObj.companyId = selects.departId;
+ this.addObj.production = "/";
+ this.addObj.productionEn = "/";
+ if (this.active == 1) {
+ this.selectInsOrderTemplate();
+ }
+ });
+ },
+ getProNum() {
+ this.sampleSelectionList.forEach((m, i) => {
+ Vue.set(
+ this.sampleSelectionList[i],
+ "proNum",
+ m.insProduct.filter((a) => a.state == 1).length
+ );
+ });
+ this.$refs.sampleTable.doLayout();
+ },
+ searchFilter() {
+ this.$refs.tree.filter(this.search);
+ },
+ nodeOpen(data, node, el) {
+ $($(el.$el).find(".node_i")[0]).attr(
+ "class",
+ "node_i el-icon-folder-opened"
+ );
+ },
+ nodeClose(data, node, el) {
+ $($(el.$el).find(".node_i")[0]).attr("class", "node_i el-icon-folder");
+ },
+ handleNodeClick(val, node, el) {
+ this.selectTree = "";
+ this.models = val.children;
+ this.getNodeParent(node);
+ let flag = false;
+ if (node.level == 3) {
+ if (node.data.children.length > 0) {
+ node.data.children.forEach((a) => {
+ let key = Object.keys(a);
+ if (!key.includes("level")) {
+ flag = true;
+ }
+ });
+ }
+ }
+ this.selectTree = this.selectTree.replace(" - ", "");
+ if (flag) {
+ this.selectTree = " - - " + this.selectTree;
+ }
+ console.log("00000", this.selectTree);
+ let data = this.selectTree.split(" - ");
+ let data2 = "";
+ for (let index = data.length - 1; index >= 0; index--) {
+ data2 += " - " + data[index];
+ }
+ this.selectTree = data2.replace(" - ", "");
+ },
+ getNodeParent(val) {
+ if (val.parent != null) {
+ if (val.data.children === null) {
+ this.selectTree += " - " + val.label + " - " + "";
+ } else {
+ this.selectTree += " - " + val.label;
+ }
+ this.getNodeParent(val.parent);
+ }
+ },
+ selectStandardTreeList() {
+ this.$axios
+ .get(this.$api.standardTree.selectStandardTreeList2)
+ .then((res) => {
+ this.list = res.data;
+ this.list.forEach((a) => {
+ this.expandedKeys.push(a.label);
+ });
+ });
+ },
+ filterNode(value, data) {
+ if (!value) return true;
+ return data.label.indexOf(value) !== -1;
+ },
+ activeStandardTree() {
+ let trees = this.selectTree.split(" - ");
+ if (trees.length < 3) {
+ this.$message.error("鏈�夋嫨瀵硅薄");
+ return;
+ }
+ this.addObj.factory = trees[0];
+ this.addObj.laboratory = trees[1];
+ this.addObj.sampleType = trees[2];
+ if (trees[3] === undefined || trees[3] === "" || trees[3] === "- ") {
+ this.addObj.sample = trees[2];
+ } else {
+ this.addObj.sample = trees[3];
+ }
+ this.addObj.model = trees[4] == undefined ? null : trees[4];
+ this.selectStandardTree = false;
+ this.sampleList = [];
+ for (var i = 0; i < this.addObj.sampleNum; i++) {
+ this.sample.joinName = null;
+ this.sample.joinModel = null;
+ this.sample.joinNum = 1;
+ this.sample.sample = this.addObj.sample;
+ this.sample.model = this.addObj.model;
+ this.sample.unit = this.addObj.unit;
+ this.sample.standardMethodListId = null;
+ this.sample.insProduct = [];
+ this.sample.id = this.count;
+ this.sample.childSampleList = [];
+ this.sample.insulating = null;
+ this.sample.sheath = null;
+ this.sampleList.push(this.HaveJson(this.sample));
+ this.count++;
+ }
+ this.$refs.sampleTable.doLayout();
+ // this.selectsStandardMethodByFLSSM()
+ },
+ selectsStandardMethodByFLSSM() {
+ this.methodLoad = true;
+ this.$axios
+ .post(this.$api.standardTree.selectsStandardMethodByFLSSM, {
+ tree: this.selectTree,
+ })
+ .then((res) => {
+ this.methodLoad = false;
+ try {
+ if (
+ res.data.standardMethodList.length == 0 &&
+ this.selectTree.split("-").length == 5
+ ) {
+ let arr = this.selectTree.split("-");
+ let arr0 = arr.slice(0, arr.length - 1);
+ let selectTree = arr0
+ .join("-")
+ .substring(0, arr0.join("-").length - 1);
+ this.$axios
+ .post(this.$api.standardTree.selectsStandardMethodByFLSSM, {
+ tree: selectTree,
+ })
+ .then((ress) => {
+ this.methods = ress.data.standardMethodList;
+ });
+ } else {
+ this.methods = res.data.standardMethodList;
+ }
+ } catch (e) {}
+ });
+ },
+ addStandardTree(currentValue, oldValue) {
+ if (this.selectTree == null) return;
+ //鍑忎竴涓牱鍝�
+ const absNum = Math.abs(currentValue - oldValue);
+ if (absNum == 1) {
+ if (currentValue < oldValue) {
+ this.sampleList.splice(currentValue, 1);
+ } else if (currentValue > oldValue) {
+ //鍔犱竴涓牱鍝�
+ //澶嶅埗绗竴涓牱鍝佷俊鎭�
+ let copySample = this.HaveJson(this.sampleList[0]);
+ copySample.id = parseInt(currentValue);
+ this.sampleList.push(copySample);
+ }
+ } else {
+ //鐩存帴杈撶殑鏁伴噺锛屽惊鐜敓鎴�
+ if (currentValue > oldValue) {
+ const num = currentValue - oldValue;
+ for (let i = 1; i <= num; i++) {
+ //澶嶅埗绗竴涓牱鍝佷俊鎭�
+ let copySample = this.HaveJson(this.sampleList[0]);
+ copySample.id = parseInt(oldValue + i);
+ this.sampleList.push(copySample);
+ }
+ } else if (oldValue > currentValue) {
+ const num = oldValue - currentValue;
+ this.sampleList.splice(currentValue, num);
+ }
+ }
+ // this.sampleList = []
+ // this.productList = []
+ // for (var i = 0; i < this.addObj.sampleNum; i++) {
+ // this.sample.joinName = null
+ // this.sample.joinModel = null
+ // this.sample.joinNum = 1
+ // this.sample.sample = this.addObj.sample
+ // this.sample.model = this.addObj.model
+ // this.sample.unit = this.addObj.unit
+ // this.sample.standardMethodListId = null
+ // this.sample.insProduct = []
+ // this.sample.id = parseInt(i+1)
+ // this.sample.childSampleList = []
+ // this.sample.insulating = null
+ // this.sample.sheath = null
+ // this.sampleList.push(this.HaveJson(this.sample))
+ // this.count++
+ // }
+ this.computationalPairing(this.sampleList.length);
+ this.bsm2Val2 = this.HaveJson(this.bsm2Val3);
+ },
+ selectSample(val) {
+ this.sampleIds = [];
+ val.forEach((a) => {
+ this.sampleIds.push(a.id);
+ });
+ this.sampleSelectionList = val;
+ console.log("selectSample", this.sampleList);
+ console.log("val", val);
+ },
+ delSample() {
+ this.sampleIds.forEach((a) => {
+ for (var i = 0; i < this.sampleList.length; i++) {
+ if (this.sampleList[i].id == a) {
+ this.sampleList.splice(i, 1);
+ i -= 1;
+ break;
+ }
+ }
+ });
+ this.$refs.sampleTable.doLayout();
+ },
+ selectProduct(val) {
+ this.productListSelected = val;
+ this.productIds = [];
+ val.forEach((a) => {
+ this.productIds.push(a.id);
+ });
+ console.log("selectChange", this.sampleList);
+ },
+ rowClick(row, column, event) {
+ this.currentMethod = row;
+ let obj = this.methods.find(
+ (a) => a.id == this.currentMethod.standardMethodListId
+ );
+ if (obj && obj.code == "濮旀墭瑕佹眰") {
+ this.isAskOnlyRead = true;
+ } else {
+ this.isAskOnlyRead = false;
+ }
+ this.sampleId = row.id;
+ if (this.active !== 1) {
+ this.sampleIds = [];
+ this.sampleSelectionList.forEach((ele) => {
+ if (ele.id == row.id) {
+ this.sampleIds.push(row.id);
+ }
+ });
+ }
+ this.productList = row.insProduct;
+ this.productList0 = JSON.parse(JSON.stringify(this.productList));
+ setTimeout(() => {
+ this.productList.forEach((a) => {
+ if (a.state == 1) {
+ this.toggleSelection(a);
+ } else {
+ this.$refs.productTable.toggleRowSelection(a, false);
+ }
+ });
+ }, 200);
+ },
+ toggleSelection(row) {
+ this.$refs.productTable.toggleRowSelection(row, true);
+ },
+ upProductSelect(selection, row) {
+ let list = this.productListSelected.filter(
+ (item) => item.inspectionItem == "鍏夌氦鎺ュご鎹熻��"
+ );
+ if (list.length > 0) {
+ this.fiberLoss = list.map(
+ (item) => item.inspectionItem + "" + item.inspectionItemSubclass
+ );
+ }
+ if (row.inspectionItem == "鍏夌氦鎺ュご鎹熻��") {
+ this.fiberLoss.push(
+ row.inspectionItem + "" + row.inspectionItemSubclass
+ );
+ }
+ let arr1 = [...new Set(this.fiberLoss)];
+ this.bsm1DiaList = [];
+ row.state = row.state == 1 ? 0 : 1;
+ if (row.section === null) {
+ row.section = "";
+ }
+ let arr = this.productList.filter(
+ (m) =>
+ m.state == 1 &&
+ row.section.includes(m.section) &&
+ m.ask &&
+ m.section.indexOf("[") == -1
+ );
+ if (
+ row.bsm === "1" &&
+ row.section !== "" &&
+ row.section !== null &&
+ row.state === 1 &&
+ arr.length == 0
+ ) {
+ if (row.section.indexOf("[") > -1) {
+ row.bsmRow = this.HaveJson(row);
+ }
+ row.bsm1 = true;
+ this.bsm1DiaList.push(row);
+ this.bsm1DiaAll = true;
+ } else if (
+ row.bsm === "1" &&
+ row.section !== "" &&
+ row.section !== null &&
+ row.state === 0 &&
+ arr.length == 0
+ ) {
+ row.bsm1 = false;
+ } else if (arr.length > 0) {
+ try {
+ row.bsmRow = this.HaveJson(row);
+ if (row.section.indexOf("[") > -1) {
+ row.section = arr[0].section;
+ row.bsm1Val = arr[0].section;
+ this.bsm1DiaList.push(row);
+ this.upBsmAll(row);
+ } else {
+ let section = arr[0].section;
+ let arr0 = JSON.parse(row.section);
+ let arr1 = JSON.parse(row.ask);
+ let arr2 = JSON.parse(row.manHour);
+ let arr3 = JSON.parse(row.price);
+ let arr4 = JSON.parse(row.tell);
+ let index = arr0.indexOf(section);
+ row.section = section;
+ row.ask = arr1[index];
+ row.manHour = arr2[index];
+ row.price = arr3[index];
+ row.tell = arr4[index];
+ }
+ // let section = arr[0].section;
+ // let arr0 = JSON.parse(row.section);
+ // let arr1 = JSON.parse(row.ask);
+ // let arr2 = JSON.parse(row.manHour);
+ // let arr3 = JSON.parse(row.price);
+ // let arr4 = JSON.parse(row.tell);
+ // let index = arr0.indexOf(section);
+ // row.section = section;
+ // row.ask = arr1[index];
+ // row.manHour = arr2[index];
+ // row.price = arr3[index];
+ // row.tell = arr4[index];
+ } catch (e) {}
+ }
+ if (
+ row.bsm === "1" &&
+ row.inspectionItem === "鍏夌氦鎺ュご鎹熻��" &&
+ this.sampleList.length > 1 &&
+ row.state === 1 &&
+ !this.isBsm2Val2
+ ) {
+ this.bsm1Dia = arr1.length == 3 ? true : false;
+ this.bsm2 = this.bsm1Dia ? true : false;
+ //this.bsm2 = true;
+ // this.bsm1Dia = true;
+ if (this.bsm2Val2.length === 0) {
+ this.bsm2Val =
+ ((this.sampleList.length - 1) * this.sampleList.length) / 2;
+ this.computationalPairing(this.sampleList.length);
+ this.bsm2Val2 = this.HaveJson(this.bsm2Val3);
+ }
+ } else if (
+ row.bsm === "1" &&
+ row.inspectionItem === "鍏夌氦鎺ュご鎹熻��" &&
+ row.state === 1 &&
+ this.sampleList.length > 1
+ ) {
+ this.bsm2 = false;
+ } else if (
+ row.bsm === "1" &&
+ row.inspectionItem === "鍏夌氦鎺ュご鎹熻��" &&
+ this.sampleList.length < 2
+ ) {
+ this.$message.error("鏍峰搧鏁伴噺涓嶈冻澶熻繘琛岄厤瀵规搷浣�");
+ row.state = row.state == 1 ? 0 : 1;
+ this.$refs.productTable.toggleRowSelection(row, false);
+ return;
+ }
+ /* if (row.ask.includes('D')&&row.state === 1) {
+ this.bsmRow3 = null;
+ row.rts = ''
+ this.bsm3Val = ''
+ this.bsm3Dia = true
+ this.bsmRow3 = row
+ }else{
+ this.bsm3Dia = false
+ } */
+ this.sampleList.map((item) => {
+ if (this.sampleIds.indexOf(item.id) > -1) {
+ item.insProduct.map((m) => {
+ if (m.id == row.id) {
+ m.state = row.state;
+ }
+ return m;
+ });
+ }
+ return item;
+ });
+ const select = this.selectTree.split(" - ");
+ if (
+ row.inspectionItem === "娓╁害寰幆" &&
+ select[2] === "鍏夌紗" &&
+ row.state === 1 &&
+ this.isAskOnlyRead
+ ) {
+ this.circulateShow = true;
+ return;
+ } else if (
+ row.inspectionItem === "娓╁害寰幆" &&
+ select[2] === "鍏夌紗" &&
+ row.state === 0
+ ) {
+ this.circulateShow = false;
+ }
+ if (
+ (row.inspectionItem === "娓╁崌璇曢獙" ||
+ row.inspectionItem === "鐑惊鐜�") &&
+ row.state === 1
+ ) {
+ // console.log('row---', row)
+ this.temperatureTitle = `${row.inspectionItem}瑕佹眰濉啓`;
+ this.isShowInput = row.inspectionItem === "鐑惊鐜�";
+ this.temId = row.id;
+ // this.temperatureShow = true;
+ this.spliceTemperatureTest();
+ return;
+ } else if (
+ (row.inspectionItem === "娓╁崌璇曢獙" ||
+ row.inspectionItem === "鐑惊鐜�") &&
+ row.state === 0
+ ) {
+ this.temperatureShow = false;
+ }
+ if (
+ row.inspectionItem === "鍗曟牴鍨傜洿鐕冪儳" &&
+ select[2] === "鍏夌紗" &&
+ row.state === 1
+ ) {
+ this.singleVerticalCombustionNum++;
+ if (this.singleVerticalCombustionNum > 1) {
+ this.openSingleVerticalCombustionDialog();
+ return;
+ }
+ } else if (
+ row.inspectionItem === "鍗曟牴鍨傜洿鐕冪儳" &&
+ select[2] === "鍏夌紗" &&
+ row.state === 0
+ ) {
+ this.singleVerticalCombustionNum--;
+ }
+ this.changeProductList0();
+ this.currentMethod.insProduct = this.productList0;
+ this.getProNum();
+ console.log("upProductSelect", this.sampleList);
+ },
+ searchProject() {
+ this.$axios
+ .post(this.$api.enums.selectEnumByCategory, {
+ category: "鍏夌氦椤圭洰",
+ })
+ .then((res) => {
+ this.opticalProject = res.data;
+ });
+ },
+ permute(nums) {
+ const result = [];
+
+ function backtrack(temp, nums) {
+ if (temp.length === 2) {
+ result.push([...temp]);
+ return;
+ }
+ for (let i = 0; i < nums.length; i++) {
+ if (temp.includes(nums[i])) continue;
+ // 閬垮厤閲嶅鏁板瓧
+ if (temp.length > 0 && nums[i] < temp[temp.length - 1]) continue; // 瑙勫畾椤哄簭锛岄伩鍏嶉噸澶嶇粍鍚�
+ temp.push(nums[i]);
+ backtrack(temp, nums);
+ temp.pop();
+ }
+ }
+ backtrack([], nums);
+ return result;
+ },
+ computationalPairing(n) {
+ const nums = [];
+ for (let i = 1; i <= n; i++) {
+ nums.push(i);
+ }
+ this.bsm2Val3 = this.HaveJson(this.permute(nums));
+ },
+ tableRowClassName({ row, rowIndex }) {
+ if (row.state === 0) {
+ return "";
+ }
+ return "warning-row";
+ },
+ selectInsOrderTemplate() {
+ this.$axios
+ .get(
+ this.$api.insOrder.selectInsOrderTemplate +
+ "?company=" +
+ this.addObj.company
+ )
+ .then((res) => {
+ if (res.code == 201) return;
+ this.templates = res.data;
+ });
+ },
+ // 鍒犻櫎妯℃澘--璋冪敤鎺ュ彛
+ handleDelete(row) {
+ this.$confirm("鏄惁鍒犻櫎褰撳墠鏁版嵁?", "璀﹀憡", {
+ confirmButtonText: "纭畾",
+ cancelButtonText: "鍙栨秷",
+ type: "warning",
+ })
+ .then(() => {
+ this.$axios
+ .post(this.$api.insOrder.delInsOrderTemplate, {
+ id: row.id,
+ })
+ .then((res) => {
+ if (res.code === 201) {
+ return;
+ }
+ this.$message.success("鍒犻櫎鎴愬姛");
+ this.selectInsOrderTemplate();
+ })
+ .catch((e) => {
+ this.$message.error("鍒犻櫎澶辫触");
+ });
+ })
+ .catch(() => {});
+ },
+ // 淇濆瓨妯℃澘
+ addTemplateDia() {
+ if (this.templateName) {
+ this.templateLoading = true;
+ this.$axios
+ .post(
+ this.$api.insOrder.addInsOrderTemplate,
+ {
+ name: this.templateName,
+ thing: JSON.stringify({
+ addObj: this.addObj,
+ sampleList: this.sampleList,
+ selectTree: this.selectTree,
+ }),
+ },
+ {
+ headers: {
+ "Content-Type": "application/json",
+ },
+ }
+ )
+ .then((res) => {
+ if (res.code == 201) return;
+ this.templateLoading = false;
+ this.templateDia = false;
+ this.$message.success("淇濆瓨鎴愬姛");
+ this.selectInsOrderTemplate();
+ this.templateName = "";
+ });
+ } else {
+ this.$message.error("璇峰~鍐欐ā鏉垮悕绉�");
+ }
+ },
+ // 鏌ヨ妯℃澘
+ selectInsOrderTemplateById(e) {
+ this.$axios
+ .post(this.$api.insOrder.selectInsOrderTemplateById + "?id=" + e)
+ .then((res) => {
+ if (res.code == 201) return;
+ // let obj = JSON.parse(res.data)
+ let obj = res.data;
+ console.log(obj);
+ //鍒跺崟浜鸿缃负褰撳墠鐧诲綍鐢ㄦ埛
+ let user = JSON.parse(localStorage.getItem("user"));
+ obj.addObj.custom = user.name;
+ obj.addObj.userId = user.userId;
+ this.addObj = obj.addObj;
+ this.sampleList = obj.sampleList;
+ this.selectTree = obj.selectTree;
+ //榛樿閫変腑绗竴涓牱鍝�
+ this.$nextTick(() => {
+ if (this.sampleList.length > 0) {
+ this.rowClick(this.sampleList[0]);
+ }
+ });
+ });
+ },
+ delSampleAndProduct() {
+ this.sampleList.splice(scope.$index, 1);
+ this.productList = [];
+ },
+ selectDictForUnit() {
+ getDicts("sys_unit")
+ .then((res) => {
+ if (res.code === 200) {
+ this.units = res.data;
+ }
+ })
+ .catch((error) => {
+ console.error(error);
+ });
+ },
+ //鏌ヨ
+ selectDictForOrderType() {
+ getDicts("check_type1")
+ .then((res) => {
+ if (res.code === 200) {
+ this.orderType = res.data;
+ if (res.data.length > 0) {
+ this.addObj.orderType = res.data[0].dictValue;
+ }
+ }
+ })
+ .catch((error) => {
+ console.error(error);
+ });
+ },
+ selectDictForSampleForm() {
+ getDicts("form_type")
+ .then((res) => {
+ if (res.code === 200) {
+ this.formType = res.data;
+ if (this.formType.length > 0) {
+ this.addObj.formType = this.formType[0].dictValue;
+ }
+ }
+ })
+ .catch((error) => {
+ console.error(error);
+ });
+ },
+ methodChange(val, row) {
+ if (val === null || val === "") return;
+ this.currentMethod = row;
+ let obj = this.methods.find(
+ (a) => a.id == this.currentMethod.standardMethodListId
+ );
+ if (obj && obj.code == "濮旀墭瑕佹眰") {
+ this.isAskOnlyRead = true;
+ } else {
+ this.isAskOnlyRead = false;
+ }
+ this.getProductLoad = true;
+ let selectTreeList = this.selectTree.split(" - ");
+ this.addObj.model &&
+ (selectTreeList[selectTreeList.length - 1] = this.addObj.model);
+ this.$axios
+ .post(
+ this.$api.standardTree.selectStandardProductList,
+ {
+ model:
+ (this.addObj.model ? this.addObj.model : row.model) +
+ "-" +
+ row.modelNum,
+ standardMethodListId: val,
+ factory: selectTreeList.join(" - "),
+ },
+ {
+ headers: {
+ "Content-Type": "application/json",
+ },
+ }
+ )
+ .then((res) => {
+ res.data.forEach((a) => {
+ a.state = 0;
+ });
+ row.insProduct = this.HaveJson(res.data);
+ this.productList = row.insProduct;
+ 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)
+ this.$nextTick(() => {
+ this.methodCount++;
+ this.getProductLoad = false;
+ if (this.sampleSelectionList.length == this.methodCount) {
+ this.standardLoading = false;
+ }
+ });
+ });
+ this.searchProject();
+ this.searchTemList();
+ },
+ //鎵归噺淇敼鏍囧噯鏂规硶
+ batchMethodChange(val, row) {
+ if (val === null || val === "") return;
+ this.currentMethod = row;
+ let obj = this.methods.find(
+ (a) => a.id == this.currentMethod.standardMethodListId
+ );
+ if (obj && obj.code == "濮旀墭瑕佹眰") {
+ this.isAskOnlyRead = true;
+ } else {
+ this.isAskOnlyRead = false;
+ }
+ this.getProductLoad = true;
+ let selectTreeList = this.selectTree.split(" - ");
+ this.addObj.model &&
+ (selectTreeList[selectTreeList.length - 1] = this.addObj.model);
+ this.$axios
+ .post(
+ this.$api.standardTree.selectStandardProductList,
+ {
+ model:
+ (this.addObj.model ? this.addObj.model : row.model) +
+ "-" +
+ row.modelNum,
+ standardMethodListId: val,
+ factory: selectTreeList.join(" - "),
+ },
+ {
+ headers: {
+ "Content-Type": "application/json",
+ },
+ }
+ )
+ .then((res) => {
+ res.data.forEach((a) => {
+ a.state = 0;
+ });
+ row.insProduct = this.HaveJson(res.data);
+ this.productList = row.insProduct;
+ 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)
+ this.$nextTick(() => {
+ this.methodCount++;
+ this.getProductLoad = false;
+ if (this.sampleSelectionList.length == this.methodCount) {
+ this.standardLoading = false;
+ }
+ });
+ });
+ this.searchProject();
+ this.searchTemList();
+ },
+ searchTemList() {
+ this.temperatureList = [];
+ this.$axios
+ .post(this.$api.enums.selectEnumByCategory, {
+ category: "鐢靛姏娓╁害寰幆妫�楠�",
+ })
+ .then((res) => {
+ if (res.data.length > 0) {
+ this.temperatureEngList = res.data;
+ res.data.forEach((item) => {
+ this.temperatureList.push(item.label);
+ });
+ }
+ });
+ },
+ changeModel() {
+ this.sampleList.forEach((a) => {
+ let obj = this.sampleIds.find((b) => b == a.id);
+ if (obj) {
+ a.model = this.model;
+ }
+ });
+ },
+ changeStandardMethodListId() {
+ this.methodCount = 0;
+ this.standardLoading = true;
+ for (let i = 0; i < this.sampleSelectionList.length; i++) {
+ let a = this.sampleSelectionList[i];
+ let obj = this.sampleIds.find((b) => b == a.id);
+ if (obj) {
+ a.standardMethodListId = this.standardMethodListId;
+ this.methodChange(this.standardMethodListId, a);
+ }
+ }
+ },
+ methodFocus() {
+ this.selectsStandardMethodByFLSSM();
+ },
+ handleChangeModel(e) {
+ this.productList = [];
+ let num = this.selectTree.split("-").length;
+ if (num != 5) {
+ this.selectTree = this.selectTree + " - " + e;
+ } else {
+ let arr = this.selectTree.split("-");
+ let arr0 = arr.slice(0, arr.length - 1);
+ this.selectTree = arr0.join("-") + "- " + e;
+ }
+ },
+ // 瑕佹眰鍊煎彉鍖栨椂
+ requestChange(e, row, type) {
+ //this.currentMethod 褰撳墠鏍峰搧id
+ this.sampleList.forEach((item) => {
+ if (item.id == this.currentMethod.id) {
+ item.insProduct.forEach((i) => {
+ if (i.id == row.id) {
+ i[type] = e;
+ }
+ });
+ }
+ });
+ let flag =
+ this.sampleSelectionList.filter((a) => a.id == this.currentMethod.id)
+ .length > 0
+ ? true
+ : false;
+ if (!flag) {
+ return;
+ }
+
+ // this.sampleSelectionList 鍕鹃�夌殑鏍峰搧
+ this.sampleSelectionList.forEach((item) => {
+ // 鍦╰his.sampleList鑾峰彇鍕鹃�夌殑鏍峰搧
+ this.sampleList.forEach((s) => {
+ if (s.id == item.id) {
+ // 閬嶅巻鍕鹃�夌殑鏍峰搧
+ if (s.insProduct.length > 0) {
+ s.insProduct.forEach((a) => {
+ if (a.id == row.id && a.state == 1) {
+ a[type] = e;
+ }
+ // if(a.id == row.id && a.state == 1) {
+ // a[type] = e
+ // }
+ });
+ }
+ }
+ });
+ });
+ // this.sampleList.map(item => {
+ // if (this.sampleIds.indexOf(item.id) > -1) {
+ // item.insProduct.map(m => {
+ // if (m.id == row.id) {
+ // m[type] = e;
+ // }
+ // return m;
+ // })
+ // }
+ // return item
+ // })
+ },
+ selectStandardMethods() {
+ this.$axios
+ .get(this.$api.standardTree.selectStandardMethodEnum)
+ .then((res) => {
+ this.methods = res.data;
+ });
+ },
+ selectable() {
+ if (this.active > 1) {
+ return false;
+ } else {
+ return true;
+ }
+ },
+ handleAll(e) {
+ console.log("e", e);
+ if (e.length > 0) {
+ this.productList.map((m) => {
+ if (e.find((a) => a.id == m.id)) {
+ m.state = 1;
+ }
+ return m;
+ });
+ } else {
+ this.productList.map((m) => {
+ m.state = 0;
+ return m;
+ });
+ }
+ this.bsmRow3 = [];
+ this.bsm1DiaList = [];
+ this.productList.forEach((p) => {
+ if (
+ p.bsm === "1" &&
+ p.section !== "" &&
+ p.section !== null &&
+ p.state === 1
+ ) {
+ if (p.section.indexOf("[") > -1) {
+ p.bsmRow = this.HaveJson(p);
+ }
+ p.bsm1 = true;
+ this.bsm1DiaList.push(p);
+ this.bsm1DiaAll = true;
+ } else if (
+ p.bsm === "1" &&
+ p.section !== "" &&
+ p.section !== null &&
+ p.state === 0
+ ) {
+ p.bsm1 = false;
+ }
+ if (
+ p.bsm === "1" &&
+ p.inspectionItem === "鍏夌氦鎺ュご鎹熻��" &&
+ this.sampleList.length > 1 &&
+ p.state === 1 &&
+ !this.isBsm2Val2
+ ) {
+ this.bsm2 = true;
+ this.bsm1Dia = true;
+ if (this.bsm2Val2.length === 0) {
+ this.bsm2Val =
+ ((this.sampleList.length - 1) * this.sampleList.length) / 2;
+ this.computationalPairing(this.sampleList.length);
+ this.bsm2Val2 = this.HaveJson(this.bsm2Val3);
+ }
+ } else if (
+ p.bsm === "1" &&
+ p.inspectionItem === "鍏夌氦鎺ュご鎹熻��" &&
+ p.state === 1 &&
+ this.sampleList.length > 1
+ ) {
+ this.bsm2 = false;
+ } else if (
+ p.bsm === "1" &&
+ p.inspectionItem === "鍏夌氦鎺ュご鎹熻��" &&
+ this.sampleList.length < 2
+ ) {
+ this.$message.error("鏍峰搧鏁伴噺涓嶈冻澶熻繘琛岄厤瀵规搷浣�");
+ this.$refs.productTable.clearSelection();
+ return;
+ }
+ const select = this.selectTree.split(" - ");
+ if (
+ p.inspectionItem === "娓╁害寰幆" &&
+ select[2] === "鍏夌紗" &&
+ p.state === 1 &&
+ this.isAskOnlyRead
+ ) {
+ this.circulateShow = true;
+ return;
+ } else if (
+ p.inspectionItem === "娓╁害寰幆" &&
+ select[2] === "鍏夌紗" &&
+ p.state === 0
+ ) {
+ this.circulateShow = false;
+ }
+ if (
+ (p.inspectionItem === "娓╁崌璇曢獙" || p.inspectionItem === "鐑惊鐜�") &&
+ p.state === 1
+ ) {
+ // console.log('p---', p)
+ this.temperatureTitle = `${p.inspectionItem}瑕佹眰濉啓`;
+ this.isShowInput = p.inspectionItem === "鐑惊鐜�";
+ this.temId = p.id;
+ this.spliceTemperatureTest();
+ // this.temperatureShow = true;
+ return;
+ } else if (
+ (p.inspectionItem === "娓╁崌璇曢獙" || p.inspectionItem === "鐑惊鐜�") &&
+ p.state === 0
+ ) {
+ this.temperatureShow = false;
+ }
+ if (
+ p.inspectionItem === "鍗曟牴鍨傜洿鐕冪儳" &&
+ select[2] === "鍏夌紗" &&
+ p.state === 1
+ ) {
+ this.singleVerticalCombustionNum++;
+ if (this.singleVerticalCombustionNum > 1) {
+ this.openSingleVerticalCombustionDialog();
+ return;
+ }
+ } else if (
+ p.inspectionItem === "鍗曟牴鍨傜洿鐕冪儳" &&
+ select[2] === "鍏夌紗" &&
+ p.state === 0
+ ) {
+ this.singleVerticalCombustionNum--;
+ }
+ /* if (p.ask.includes('RTS')&&p.state === 1) {
+ p.rts = ''
+ this.bsm3Val = ''
+ this.bsm3 = true
+ this.bsm3Dia = true
+ this.bsmRow3.push(p)
+ } */
+ });
+ if (e.length > 0) {
+ // this.sampleList.map(item => {
+ // if (item.id === this.currentMethod.id) {
+ // item.insProduct.map(m => {
+ // m.state = 1
+ // return m;
+ // })
+ // }
+ // })
+ console.log("aaa-----", this.sampleList);
+ this.sampleList.map((item) => {
+ console.log("this.sampleSelectionList-->", this.sampleSelectionList);
+ this.sampleSelectionList.forEach((ele) => {
+ if (ele.id == item.id) {
+ item.insProduct.map((m) => {
+ m.state = 1;
+ return m;
+ });
+ }
+ });
+ });
+ } else {
+ this.sampleList.map((item) => {
+ if (this.sampleIds.indexOf(item.id) > -1) {
+ item.insProduct.map((m) => {
+ m.state = 0;
+ return m;
+ });
+ }
+ return item;
+ });
+ }
+ this.changeProductList0();
+ this.currentMethod.insProduct = this.productList0;
+ this.getProNum();
+ this.$nextTick(() => {
+ this.$refs.productTable.doLayout();
+ });
+ },
+ submitTell() {
+ if (!this.tell) {
+ this.$message.error("璇疯緭鍏ヤ笉閫氳繃鍘熷洜");
+ return;
+ }
+ this.noLoading = true;
+ this.$axios
+ .post(
+ this.$api.insOrder.upInsOrderOfState,
+ {
+ state: 2,
+ id: this.currentId,
+ tell: this.tell,
+ },
+ {
+ headers: {
+ "Content-Type": "application/json",
+ },
+ }
+ )
+ .then((res) => {
+ this.noLoading = false;
+ this.tell = "";
+ if (res.code == 201) return;
+ this.$message.success("鎻愪氦鎴愬姛");
+ this.issuedDialogVisible = false;
+ this.$parent.playOrder(0);
+ });
+ },
+ selectEnumByCategoryForSonLaboratory() {
+ this.$axios
+ .post(this.$api.enums.selectEnumByCategory, {
+ category: "瀛愬疄楠屽",
+ })
+ .then((res) => {
+ this.factory = [];
+ res.data.forEach((a) => {
+ this.filters.push({
+ text: a.label,
+ value: a.value,
+ });
+ });
+ });
+ },
+ filterHandler(value, row, column) {
+ const property = column["property"];
+ return row[property] === value;
+ },
+ openConfig() {
+ if (this.active === 1) {
+ if (this.sampleIds.length === 0) {
+ this.$message.error("鏈�夋嫨鏍峰搧");
+ return;
+ }
+ this.configShow = true;
+ } else {
+ if (this.sampleId === null) {
+ this.$message.error("鏈�変腑鏍峰搧");
+ return;
+ }
+ this.sampleIds = [this.sampleId];
+ this.$axios
+ .post(this.$api.insBushing.selectBushingBySampleId, {
+ sampleId: this.sampleId,
+ })
+ .then((res) => {
+ if (res.data.length === 0) {
+ this.$message.error("璇ユ牱鍝佹病鏈夐厤缃厜绾�");
+ return;
+ }
+ for (var i in this.sampleList) {
+ if ((this.sampleList[i].id = this.sampleId)) {
+ this.sampleList[i].bushing = res.data;
+ break;
+ }
+ }
+ this.$nextTick(() => {
+ this.configShow = true;
+ });
+ });
+ }
+ },
+ openEquipConfig() {
+ if (this.active === 1) {
+ if (this.sampleIds.length === 0) {
+ this.$message.error("鏈�夋嫨鏍峰搧");
+ return;
+ }
+ this.equipConfigShow = true;
+ } else {
+ if (this.sampleId === null) {
+ this.$message.error("鏈�変腑鏍峰搧");
+ return;
+ }
+ // this.$axios.post(this.$api.insBushing.selectBushingBySampleId, {
+ // sampleId: this.sampleId
+ // }).then(res => {
+ // if (res.data.length === 0) {
+ // this.$message.error('璇ユ牱鍝佹病鏈夐厤缃厜绾�')
+ // return
+ // }
+ // for (var i in this.sampleList) {
+ // if (this.sampleList[i].id = this.sampleId) {
+ // this.sampleList[i].bushing = res.data
+ // break
+ // }
+ // }
+ // this.configShow = true
+ // })
+ }
+ },
+ openCableConfig() {
+ if (this.active === 1) {
+ if (this.sampleIds.length === 0) {
+ this.$message.error("鏈�夋嫨鏍峰搧");
+ return;
+ }
+ this.cableConfigShow = true;
+ } else {
+ if (this.sampleId === null) {
+ this.$message.error("鏈�変腑鏍峰搧");
+ return;
+ }
+ // this.$axios.post(this.$api.insBushing.selectBushingBySampleId, {
+ // sampleId: this.sampleId
+ // }).then(res => {
+ // if (res.data.length === 0) {
+ // this.$message.error('璇ユ牱鍝佹病鏈夐厤缃厜绾�')
+ // return
+ // }
+ // for (var i in this.sampleList) {
+ // if (this.sampleList[i].id = this.sampleId) {
+ // this.sampleList[i].bushing = res.data
+ // break
+ // }
+ // }
+ // this.configShow = true
+ // })
+ }
+ },
+ upBsm1(val) {
+ let sections = JSON.parse(this.bsmRow.section);
+ let asks = JSON.parse(this.bsmRow.ask);
+ let tells = JSON.parse(this.bsmRow.tell);
+ let manHours = JSON.parse(this.bsmRow.manHour);
+ let prices = JSON.parse(this.bsmRow.price);
+ for (var a in sections) {
+ if (val === sections[a]) {
+ this.productList.forEach((p) => {
+ if (p.id === this.bsmRow.id) {
+ p.section = sections[a];
+ p.ask = asks[a];
+ p.tell = tells[a];
+ p.manHour = manHours[a];
+ p.price = prices[a];
+ }
+ });
+ break;
+ }
+ }
+ },
+ upBsmAll(item) {
+ // console.log(1111,item,this.bsm1DiaList)
+ for (let i = 0; i < this.bsm1DiaList.length; i++) {
+ this.bsm1DiaList[i].bsm1Val = item.bsm1Val;
+ let sections = JSON.parse(this.bsm1DiaList[i].bsmRow.section);
+ let asks = JSON.parse(this.bsm1DiaList[i].bsmRow.ask);
+ let tells = JSON.parse(this.bsm1DiaList[i].bsmRow.tell);
+ let manHours = JSON.parse(this.bsm1DiaList[i].bsmRow.manHour);
+ let prices = JSON.parse(this.bsm1DiaList[i].bsmRow.price);
+ for (var a in sections) {
+ console.log(
+ this.bsm1DiaList[i].bsm1Val === sections[a],
+ "====",
+ this.bsm1DiaList[i],
+ "===="
+ );
+ if (this.bsm1DiaList[i].bsm1Val === sections[a]) {
+ this.productList.forEach((p) => {
+ if (p.id === this.bsm1DiaList[i].bsmRow.id) {
+ p.section = sections[a];
+ p.ask = asks[a];
+ p.tell = tells[a];
+ p.manHour = manHours[a];
+ p.price = prices[a];
+ }
+ });
+ this.sampleSelectionList.forEach((item) => {
+ item.insProduct.forEach((p) => {
+ if (p.id === this.bsm1DiaList[i].bsmRow.id) {
+ p.section = sections[a];
+ p.ask = asks[a];
+ p.tell = tells[a];
+ p.manHour = manHours[a];
+ p.price = prices[a];
+ }
+ });
+ });
+ break;
+ }
+ }
+ }
+ console.log("tthis.sampleSelectionList", this.sampleSelectionList);
+ console.log("this.sampleList", this.sampleList);
+ console.log("this.productList", this.productList);
+ this.changeProductList0();
+ this.currentMethod.insProduct = this.productList0;
+ },
+ save1() {
+ if (this.bsm1DiaList.length > 0) {
+ this.bsm1DiaList.forEach((item) => {
+ if (!item.bsm1Val) {
+ throw this.$message.error("鐗规畩椤圭洰蹇呴』澶勭悊");
+ }
+ });
+ }
+ if (this.bsm2) {
+ if (this.bsm2Val2.length === 0) {
+ this.$message.error("鐗规畩椤圭洰蹇呴』澶勭悊");
+ return;
+ }
+ console.log("this.bsm2Val2", this.bsm2Val2);
+ let set = new Set();
+ for (let i = 0; i < this.bsm2Val2.length; i++) {
+ let num0 = set.size;
+ set.add(JSON.stringify(this.bsm2Val2[i]));
+ let num1 = set.size;
+ if (num1 == num0) {
+ this.$message.error("鍏宠仈椤圭洰涓嶈兘閲嶅");
+ return;
+ }
+ set.add(JSON.stringify(this.bsm2Val2[i].reverse()));
+ let num2 = set.size;
+ if (num1 == num2) {
+ this.$message.error("鍏宠仈椤圭洰涓嶈兘閲嶅");
+ return;
+ }
+ }
+ this.isBsm2Val2 = true;
+ }
+ this.bsm1DiaAll = false;
+ },
+ save2() {
+ if (this.bsm1DiaList.length > 0) {
+ this.bsm1DiaList.forEach((item) => {
+ if (!item.bsm1Val) {
+ throw this.$message.error("鐗规畩椤圭洰蹇呴』澶勭悊");
+ }
+ });
+ }
+ if (this.bsm2) {
+ if (this.bsm2Val2.length === 0) {
+ this.$message.error("鐗规畩椤圭洰蹇呴』澶勭悊");
+ return;
+ }
+ let set = new Set();
+ for (let i = 0; i < this.bsm2Val2.length; i++) {
+ let num0 = set.size;
+ set.add(JSON.stringify(this.bsm2Val2[i]));
+ let num1 = set.size;
+ if (num1 == num0) {
+ this.$message.error("鍏宠仈椤圭洰涓嶈兘閲嶅");
+ return;
+ }
+ set.add(JSON.stringify(this.bsm2Val2[i].reverse()));
+ let num2 = set.size;
+ if (num1 == num2) {
+ this.$message.error("鍏宠仈椤圭洰涓嶈兘閲嶅");
+ return;
+ }
+ }
+ this.isBsm2Val2 = true;
+ }
+ this.bsm1Dia = false;
+ },
+ beforeClose(done) {
+ // if (this.bsm1) {
+ // if (this.bsm1Val === null || this.bsm1Val === '') {
+ // this.$message.error('鐗规畩椤圭洰蹇呴』澶勭悊')
+ // return
+ // }
+ // }
+ if (this.bsm1DiaList.length > 0) {
+ this.bsm1DiaList.forEach((item) => {
+ if (!item.bsm1Val) {
+ throw this.$message.error("鐗规畩椤圭洰蹇呴』澶勭悊");
+ }
+ });
+ }
+ if (this.bsm2) {
+ if (this.bsm2Val2.length === 0) {
+ this.$message.error("鐗规畩椤圭洰蹇呴』澶勭悊");
+ return;
+ }
+ let set = new Set();
+ for (let i = 0; i < this.bsm2Val2.length; i++) {
+ let num0 = set.size;
+ set.add(JSON.stringify(this.bsm2Val2[i]));
+ let num1 = set.size;
+ if (num1 == num0) {
+ this.$message.error("鍏宠仈椤圭洰涓嶈兘閲嶅");
+ return;
+ }
+ set.add(JSON.stringify(this.bsm2Val2[i].reverse()));
+ let num2 = set.size;
+ if (num1 == num2) {
+ this.$message.error("鍏宠仈椤圭洰涓嶈兘閲嶅");
+ return;
+ }
+ }
+ this.isBsm2Val2 = true;
+ }
+ // if(this.bsm3){
+ // if(!this.bsm3Val){
+ // this.$message.error('RST蹇呴』濉啓')
+ // return
+ // }else{
+ // if(Array.isArray(this.bsmRow3)){
+ // this.bsmRow3.forEach(item=>{
+ // item.rts = this.bsm3Val
+ // })
+ // }else{
+ // this.bsmRow3.rts = this.bsm3Val
+ // }
+ // }
+ // }
+ done();
+ },
+ beforeClose0(done) {
+ if (!this.bsm3Val) {
+ this.$message.error("RST蹇呴』濉啓");
+ return;
+ } else {
+ if (Array.isArray(this.bsmRow3)) {
+ this.bsmRow3.forEach((item) => {
+ item.rts = this.bsm3Val;
+ });
+ } else {
+ this.bsmRow3.rts = this.bsm3Val;
+ }
+ }
+ done();
+ },
+ getTotal(bushing, flag = true) {
+ this.totalArr = [];
+ this.total = 0;
+ // 灏嗛�変腑鐨勬牱鍝佹坊鍔燽ushing 娌℃湁鍕鹃�夊氨鏄叏閮� 琛ㄦ牸鐩戝惉璋冪敤涓嶈繘琛屽厜绾块厤缃殑璧嬪��
+ if (flag) {
+ if (this.sampleSelectionList.length > 0) {
+ +this.sampleSelectionList.forEach((item) => {
+ this.sampleList.forEach((a) => {
+ if (a.id == item.id) {
+ a.bushing = bushing;
+ }
+ });
+ });
+ } else {
+ this.sampleList.forEach((a) => {
+ a.bushing = bushing;
+ });
+ }
+ }
+ console.log("sampleSelectionList", this.sampleSelectionList);
+ console.log("this.sampleList", this.sampleList);
+ this.sampleList.forEach((item) => {
+ if (item.insProduct && item.insProduct.length > 0) {
+ item.insProduct.forEach((a) => {
+ this.totalArr.push(a);
+ });
+ }
+ if (item.bushing && item.bushing.length > 0) {
+ item.bushing.forEach((a) => {
+ if (a.fiber && a.fiber.length > 0) {
+ a.fiber.forEach((b) => {
+ if (b.productList && b.productList.length > 0) {
+ b.productList.forEach((c) => {
+ this.totalArr.push(c);
+ });
+ }
+ });
+ }
+ if (a.fibers && a.fibers.length > 0) {
+ a.fibers.forEach((b) => {
+ if (b.productList && b.productList.length > 0) {
+ b.productList.forEach((c) => {
+ this.totalArr.push(c);
+ });
+ }
+ if (b.fiber && b.fiber.length > 0) {
+ b.fiber.forEach((c) => {
+ if (c.productList && c.productList.length > 0) {
+ c.productList.forEach((d) => {
+ this.totalArr.push(d);
+ });
+ }
+ });
+ }
+ });
+ }
+ });
+ }
+ });
+ let mySet = new Set();
+ let arr0 = this.totalArr.filter((item) => {
+ if (item.state == 1) {
+ let num1 = mySet.size;
+ if (item.manHourGroup === "" || !item.manHourGroup) {
+ return true;
+ } else {
+ mySet.add(item.manHourGroup);
+ let num2 = mySet.size;
+ if (num2 > num1) {
+ return true;
+ } else {
+ return false;
+ }
+ }
+ }
+ });
+ arr0.forEach((item) => {
+ this.total += Number(item.price);
+ });
+ let arr1 = this.totalArr.filter((item) => item.state == 1);
+ let mySet0 = new Set();
+ this.sonLaboratoryList = [];
+ arr1.forEach((item) => {
+ let num1 = mySet0.size;
+ mySet0.add(item.sonLaboratory);
+ let num2 = mySet0.size;
+ if (num2 > num1) {
+ this.sonLaboratoryList.push({
+ label: item.sonLaboratory,
+ value: item.sonLaboratory,
+ });
+ }
+ });
+ },
+ bsm2Up(val) {
+ let list = [];
+ for (let a = 1; a < this.bsm2Val3.length + 1; a++) {
+ list.push(a);
+ }
+ let set = new Set();
+ let size1 = set.length;
+ while (set.size < val) {
+ set.add(Math.ceil(Math.random() * this.bsm2Val3.length));
+ }
+ this.bsm2Val2 = [];
+ for (let a of set) {
+ this.bsm2Val2.push(this.HaveJson(this.bsm2Val3[a - 1]));
+ }
+ },
+ changeUser() {
+ if (this.sonLaboratoryList.length > 0) {
+ this.distributeData.sonLaboratory = this.sonLaboratoryList[0].value;
+ }
+ },
+ },
+};
+</script>
+
<style scoped>
.ins_order_add {
width: 100%;
@@ -16,7 +4400,7 @@
}
.search {
- width: calc(100% - 40px);
+ height: 100%;
background-color: #fff;
padding: 5px 40px 5px 0;
}
@@ -34,7 +4418,7 @@
}
.search_input {
- width: calc(100% - 120px);
+ width: calc(100% - 20px);
}
.node_i {
@@ -131,12 +4515,16 @@
.ins_order_add .el-select .is-disabled .el-input__inner {
background: transparent !important;
}
+.company_input .el-form-item__content,
+.sample_input .el-form-item__content {
+ width: 72%;
+}
+.engineeringEn_input .el-form-item__content,
+.otcCode_input .el-form-item__content,
+.productionEn_input .el-form-item__content {
+ width: 65%;
+}
+.processing_input .el-form-item__content {
+ width: 60%;
+}
</style>
-
-<template>
- <div>add</div>
-</template>
-
-<script>
-export default {};
-</script>
diff --git a/src/views/business/inspectionOrder/fiberoptic-config-two.vue b/src/views/business/inspectionOrder/fiberoptic-config-readonly.vue
similarity index 100%
rename from src/views/business/inspectionOrder/fiberoptic-config-two.vue
rename to src/views/business/inspectionOrder/fiberoptic-config-readonly.vue
diff --git a/src/views/business/inspectionOrder/index.vue b/src/views/business/inspectionOrder/index.vue
index 3014481..7c68b70 100644
--- a/src/views/business/inspectionOrder/index.vue
+++ b/src/views/business/inspectionOrder/index.vue
@@ -14,14 +14,18 @@
<el-button size="medium" type="primary" @click="print"
>鏍囩鎵撳嵃</el-button
>
- <el-button size="medium" type="primary" @click="playOrder(1)"
+ <el-button
+ size="medium"
+ type="primary"
+ @click="playOrder(1)"
+ v-hasPermi="['business:order:add']"
>涓嬪崟</el-button
>
</el-col>
</el-row>
</div>
<basic-container>
- <div class="search" :style="`height: ${more ? 130 : 80}px;`">
+ <div class="search" :style="`height: ${more ? 100 : 50}px;`">
<el-row :gutter="10" style="width: 100%">
<el-col :span="20" style="display: flex; flex-wrap: wrap">
<div class="search_thing" style="width: 20%">
@@ -160,7 +164,7 @@
</div>
</basic-container>
<basic-container>
- <div style="width: 100%; height: 100%" v-show="active == 0">
+ <div v-show="active == 0">
<div class="table">
<ul class="tab">
<li
@@ -828,11 +832,15 @@
import vueQr from "vue-qr";
import getLodop from "@/utils/lodop";
import Add from "./add.vue";
+import { mapGetters } from "vuex";
export default {
components: {
limsTable,
Add,
vueQr,
+ },
+ computed: {
+ ...mapGetters(["permissions"]),
},
data() {
return {
@@ -1369,16 +1377,21 @@
beforeDestroy() {
window.removeEventListener("resize", this.getTableHeight);
},
+ watch: {
+ more() {
+ this.getTableHeight();
+ },
+ },
methods: {
//鑾峰彇琛ㄦ牸楂樺害
getTableHeight() {
- const otherHeight = 400; // 鍏朵綑楂樺害
- const tableH = 50; // 璺濈椤甸潰涓嬫柟鐨勯珮搴�
- const tableHeightDetil = window.innerHeight - tableH;
+ const otherHeight = this.more ? 430 : 380; // 鍏朵綑楂樺害
+ const tableBottom = 50; // 璺濈椤甸潰涓嬫柟鐨勯珮搴�
+ const tableHeightDetil = window.innerHeight - tableBottom;
if (tableHeightDetil <= 300) {
this.tableHeight = 200;
} else {
- this.tableHeight = window.innerHeight - tableH - otherHeight;
+ this.tableHeight = window.innerHeight - tableBottom - otherHeight;
}
},
getDictList() {
@@ -1649,9 +1662,8 @@
this.personList = res.data;
});
},
- refreshTable(e) {
- this.$refs["ValueTable"].selectList(e);
- this.queryCount = 0;
+ refreshTable() {
+ this.getList();
},
getTableData(newData) {
if (newData && newData.length == 1) {
@@ -2204,7 +2216,7 @@
this.deleteDialogVisible = false;
this.printLoading = false;
this.revokeData = [];
- this.refreshTable("page");
+ this.refreshTable();
this.$message.success("鎾ら攢鎴愬姛");
}
});
@@ -2252,7 +2264,7 @@
if (res.code === 200) {
this.printLoading = false;
this.deleteDialogVisible = false;
- this.refreshTable("page");
+ this.refreshTable();
this.$message.success("鏇存柊鎴愬姛");
}
});
@@ -2307,7 +2319,7 @@
if (res.code === 200) {
this.printLoading = false;
this.deleteDialogVisible = false;
- this.refreshTable("page");
+ this.refreshTable();
this.$message.success("鏇存柊鎴愬姛");
}
});
@@ -2391,7 +2403,7 @@
this.$message.success("淇敼鎴愬姛");
this.upLoad = false;
this.issuedDialogVisible = false;
- this.refreshTable("page");
+ this.refreshTable();
})
.catch((e) => {
this.$message.error("淇敼澶辫触");
@@ -2409,7 +2421,7 @@
if (res.code === 200) {
this.upLoad = false;
this.quashDialogVisible = false;
- this.refreshTable("page");
+ this.refreshTable();
this.$message.success("鏇存柊鎴愬姛");
}
});
@@ -2420,7 +2432,7 @@
if (res.code === 200) {
this.upLoad = false;
this.quashDialogVisible = false;
- this.refreshTable("page");
+ this.refreshTable();
this.$message.success("鏇存柊鎴愬姛");
}
});
@@ -2437,9 +2449,13 @@
},
// 涓嬪崟
playOrder(num) {
+ this.$router.push({
+ name: "addOrder",
+ params: {},
+ });
this.active = num;
this.examine = 0;
- this.refreshTable("page");
+ // this.refreshTable();
},
handleTab(m, i) {
this.tabIndex = i;
@@ -2489,9 +2505,6 @@
this.componentData.tagField.orderType.select = res.data;
});
},
- getStyle() {
- return "height: calc(100% - " + (this.more ? "94" : "44") + "px)";
- },
changeUser() {
if (this.sonLaboratoryList.length > 0) {
this.distributeData.sonLaboratory = this.sonLaboratoryList[0].value;
@@ -2509,7 +2522,7 @@
.search {
background-color: #fff;
- height: 80px;
+ height: 50px;
display: flex;
align-items: center;
overflow: hidden;
@@ -2543,7 +2556,7 @@
.tab {
list-style-type: none;
display: flex;
- margin-bottom: 12px;
+ /* margin-bottom: 12px; */
padding-inline-start: 0px;
}
--
Gitblit v1.9.3