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 | 147 ++++++++++++++++++++++++++++--------------------
1 files changed, 86 insertions(+), 61 deletions(-)
diff --git a/src/views/standardLibrary/index.vue b/src/views/standardLibrary/index.vue
index ea759e3..5277b3b 100644
--- a/src/views/standardLibrary/index.vue
+++ b/src/views/standardLibrary/index.vue
@@ -25,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"
@@ -44,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>
@@ -160,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,
@@ -198,14 +219,56 @@
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() {
- console.log(`output->鎵ц鍔沗, "鎵ц鍔�");
const { data } = await getMaterialList();
this.standardTree = data.map((item) => {
let name = null;
@@ -228,14 +291,11 @@
const treeOptions = JSON.parse(JSON.stringify(this.standardTree));
this.getDefault(treeOptions, 0);
this.formTypeOptions = treeOptions;
- console.log(`output->===========`, "===========");
this.$nextTick().then(() => {
const firstNode = document.querySelector(
".el-tree-node .el-tree-node__children .el-tree-node .el-tree-node__children .el-tree-node .el-tree-node__children .el-tree-node"
);
- console.log(`output->firstNode`, firstNode);
firstNode.click();
- // console.log(firstNode);
});
},
getDefault(arr, index) {
@@ -254,11 +314,10 @@
// 鏄瓙鑺傜偣
if (node.level === 4) {
this.getParentData(node.parent, node.data.name);
- console.log(`output->this.msg`, this.msg);
// 瀛樹笅閫変腑鑺傜偣
this.selectData = data;
- // eslint-disable-next-line prefer-const
- this.getTableByClick(data);
+ this.getTableByClick(data, this.versionValue);
+ this.initSelect();
}
if (!("children" in data)) {
return;
@@ -273,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) {
@@ -289,7 +349,6 @@
}
});
this.tableData = res.data;
- console.log(`output->this.tableData`, this.tableData);
this.selectDataList();
});
},
@@ -298,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 ? (
@@ -352,16 +410,14 @@
this.$message.error("娣诲姞澶辫触");
}
- console.log(res);
this.$message.success("娣诲姞鎴愬姛");
this.addTreeForm = {
addTypeArr: [],
};
this.getStandardTree();
- this.getTableByClick(this.selectData);
+ this.getTableByClick(this.selectData, this.versionValue);
},
changeCascader(data) {
- console.log(`output->----------`, data);
this.addTreeForm.addTypeArr = data;
},
closeAddTreeForm() {
@@ -408,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) {
@@ -431,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) {
@@ -492,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) => {
@@ -499,7 +521,7 @@
message: res.message,
type: "success",
});
- this.getTableByClick(this.selectData);
+ this.getTableByClick(this.selectData, this.versionValue);
});
},
async requiredOnfocus(scope) {
@@ -514,7 +536,7 @@
message: res.message,
type: "success",
});
- this.getTableByClick(this.selectData);
+ this.getTableByClick(this.selectData, this.versionValue);
});
},
},
@@ -650,6 +672,9 @@
width: 100%;
padding-bottom: 6px;
text-align: right;
+ .el-select {
+ margin-right: 10px;
+ }
}
.tipMsg {
float: left;
--
Gitblit v1.9.3