From a5d01d5503750b6c95f9393d7cd4da880de6024c Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期一, 28 八月 2023 15:50:51 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.110.209:9001/r/lims-before
---
src/views/standardLibrary/index.vue | 153 +++++++++++++++++++++++++++++++--------------------
1 files changed, 93 insertions(+), 60 deletions(-)
diff --git a/src/views/standardLibrary/index.vue b/src/views/standardLibrary/index.vue
index f6eeba1..5277b3b 100644
--- a/src/views/standardLibrary/index.vue
+++ b/src/views/standardLibrary/index.vue
@@ -2,7 +2,10 @@
<div class="standard-library-main">
<div class="content-main">
<div class="library-bom" style="width: 300px">
- <el-input v-model="filterText" placeholder="杈撳叆鍏抽敭瀛楄繘琛岃繃婊�" />
+ <el-input
+ v-model="filterText"
+ placeholder="杈撳叆鍏抽敭瀛楄繘琛岃繃婊�"
+ ></el-input>
<el-button type="text">鍏ㄩ儴</el-button>
<el-tree
ref="tree"
@@ -22,6 +25,22 @@
<div class="table-header">
<div class="serve-btn">
<span class="tipMsg">{{ msg !== "" ? msg : "" }}</span>
+ <el-select
+ v-model="versionValue"
+ @change="changeSelect"
+ placeholder="璇烽�夋嫨鐗堟湰鍙�"
+ >
+ <el-option
+ v-for="item in options"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
+ </el-option>
+ </el-select>
+ <el-button type="primary" @click="addVersionFun"
+ >鏂板鐗堟湰鍙�</el-button
+ >
<el-button
type="primary"
icon="el-icon-plus"
@@ -41,13 +60,14 @@
<el-table
:data="tableData"
style="width: 100%; margin-bottom: 20px"
- row-key="name"
+ row-key="id"
border
height="calc(100vh - 250px)"
default-expand-all
ref="multipleTable"
@select="selectTr"
@select-all="selectAll"
+ @selection-change="handleSelectionChange"
:tree-props="{ children: 'children', hasChildren: 'hasChildren' }"
>
<el-table-column type="selection" label="搴忓彿"> </el-table-column>
@@ -157,12 +177,16 @@
addSpecifications,
deleteListApi,
blurUpdateApi,
+ getVersion,
+ addVersion,
} from "@/api/standardLibrary";
import { selectproductModelApi } from "@/api/basicData/index";
export default {
data() {
return {
+ options: [],
+ versionValue: "",
deleteList: [],
msg: "",
isAllSelect: false,
@@ -195,10 +219,53 @@
created() {
this.getStandardTree();
},
+ mounted() {},
methods: {
+ async initSelect() {
+ this.options = [];
+ this.versionValue = "";
+ const response = await getVersion({
+ specificationsId: this.selectData.id,
+ });
+ if (response.code === 200 && response.data.length > 0) {
+ this.getTableByClick(this.selectData, response.data[0]);
+ for (let i = 0; i < response.data.length; i++) {
+ this.options.push({
+ value: response.data[i],
+ label: "V" + response.data[i],
+ });
+ this.versionValue = response.data[0];
+ }
+ }
+ },
+ changeSelect() {
+ this.tableData = [];
+ this.getTableByClick(this.selectData, this.versionValue);
+ },
+ async insertVersion() {
+ const resp = await addVersion({ specificationsId: this.selectData.id });
+ if (resp.code === 200) {
+ this.initSelect();
+ this.$message({
+ type: "success",
+ message: resp.message,
+ });
+ }
+ },
+ addVersionFun() {
+ this.$confirm("纭娣诲姞鏂扮殑鐗堟湰鍙峰悧?", "鎻愮ず", {
+ confirmButtonText: "纭畾",
+ cancelButtonText: "鍙栨秷",
+ type: "warning",
+ })
+ .then(() => {
+ this.insertVersion();
+ })
+ .catch(() => {});
+ },
filterNode(value, data) {
if (!value) return true;
- return data.label.indexOf(value) !== -1;
+ return data.name.indexOf(value) !== -1;
},
// 鑾峰彇bom鏍戠殑鏍囧噯鏁版嵁
async getStandardTree() {
@@ -229,7 +296,6 @@
".el-tree-node .el-tree-node__children .el-tree-node .el-tree-node__children .el-tree-node .el-tree-node__children .el-tree-node"
);
firstNode.click();
- // console.log(firstNode);
});
},
getDefault(arr, index) {
@@ -250,8 +316,8 @@
this.getParentData(node.parent, node.data.name);
// 瀛樹笅閫変腑鑺傜偣
this.selectData = data;
- // eslint-disable-next-line prefer-const
- this.getTableByClick(data);
+ this.getTableByClick(data, this.versionValue);
+ this.initSelect();
}
if (!("children" in data)) {
return;
@@ -266,9 +332,10 @@
this.getParentData(node.parent, this.msg);
}
},
- async getTableByClick(data) {
+ async getTableByClick(data, versionVal) {
await getProductList({
specificationsId: data.id,
+ version: versionVal,
}).then((res) => {
res.data.forEach((i) => {
if (i.name === undefined) {
@@ -282,7 +349,6 @@
}
});
this.tableData = res.data;
- console.log(`output->this.tableData`, this.tableData);
this.selectDataList();
});
},
@@ -291,10 +357,9 @@
this.$router.push(`/standardLibrary/SpecificationDetails/${row.id}`);
},
renderContent(h, { node, data, store }) {
- // console.log('data', data)
- // console.log('node', node)
// 鍒ゆ柇鏄惁鏄埗鑺傜偣鎴栨枃浠跺す
const isFolder = "children" in data;
+ console.log(`output->data`, isFolder);
return (
<span class="tree-node">
{isFolder ? (
@@ -316,7 +381,6 @@
},
async subAddTreeForm() {
this.addTreeFormVisible = false;
- console.log(this.addTreeForm.addTypeArr.length);
let res = null;
try {
switch (this.addTreeForm.addTypeArr.length) {
@@ -346,14 +410,14 @@
this.$message.error("娣诲姞澶辫触");
}
- console.log(res);
this.$message.success("娣诲姞鎴愬姛");
- this.addTreeForm = {};
+ this.addTreeForm = {
+ addTypeArr: [],
+ };
this.getStandardTree();
- this.getTableByClick(this.selectData);
+ this.getTableByClick(this.selectData, this.versionValue);
},
changeCascader(data) {
- console.log(data);
this.addTreeForm.addTypeArr = data;
},
closeAddTreeForm() {
@@ -400,21 +464,6 @@
this.isAllSelect = !this.isAllSelect;
let data = this.tableData;
this.toggleSelect(data, this.isAllSelect, "all");
- // 鑷畾涔�
- if (this.isAllSelect) {
- val.forEach((i) => {
- if (i.id !== undefined) {
- this.deleteList.push(i.id);
- } else {
- i.children.forEach((c) => {
- this.deleteList.push(c.id);
- });
- }
- });
- } else {
- this.deleteList.splice(0, this.deleteList.length);
- }
- console.log(`output->this.`, this.deleteList);
},
//閫夋嫨鏌愯
selectTr(selection, row) {
@@ -423,34 +472,6 @@
this.isAllSelect = row.isChecked;
this.toggleSelect(row, row.isChecked, "tr");
});
-
- if (row.isChecked === true) {
- if (row.children !== undefined) {
- row.children.forEach((i) => {
- this.deleteList.push(i.id);
- });
- } else {
- this.deleteList.push(row.id);
- }
- } else if (row.isChecked === false) {
- if (row.children !== undefined) {
- row.children.forEach((i) => {
- this.deleteList.findIndex((c, index) => {
- if (c === i.id) {
- this.deleteList.splice(index, 1);
- return;
- }
- });
- });
- }
- this.deleteList.findIndex((c, index) => {
- if (c === row.id) {
- this.deleteList.splice(index, 1);
- return;
- }
- });
- }
- console.log(`output->this.deleteList`, this.deleteList);
},
//閫掑綊瀛愮骇
toggleSelect(data, flag, type) {
@@ -484,6 +505,15 @@
}
});
},
+ handleSelectionChange(val) {
+ this.deleteList = [];
+ val.forEach((v) => {
+ if (v.id !== undefined) {
+ this.deleteList.push(v.id);
+ }
+ });
+ console.log(`output->this.deleteList`, this.deleteList);
+ },
// 琛ㄦ牸鏍戝叏閮ㄩ�変腑閰嶇疆 缁撴潫
deleteListClick() {
deleteListApi(this.deleteList).then((res) => {
@@ -491,7 +521,7 @@
message: res.message,
type: "success",
});
- this.getTableByClick(this.selectData);
+ this.getTableByClick(this.selectData, this.versionValue);
});
},
async requiredOnfocus(scope) {
@@ -506,7 +536,7 @@
message: res.message,
type: "success",
});
- this.getTableByClick(this.selectData);
+ this.getTableByClick(this.selectData, this.versionValue);
});
},
},
@@ -642,6 +672,9 @@
width: 100%;
padding-bottom: 6px;
text-align: right;
+ .el-select {
+ margin-right: 10px;
+ }
}
.tipMsg {
float: left;
--
Gitblit v1.9.3