From f294efb8c01ad8b0704a92d51c14dbd55d898874 Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期四, 23 十月 2025 16:49:46 +0800
Subject: [PATCH] 拆分原材料和外购成品的业务流程(报检、下单、检验)
---
src/views/standard/standardLibrary/index.vue | 516 +++++++++++++++++++++++++++-----------------------------
1 files changed, 247 insertions(+), 269 deletions(-)
diff --git a/src/views/standard/standardLibrary/index.vue b/src/views/standard/standardLibrary/index.vue
index 713c062..37c25a7 100644
--- a/src/views/standard/standardLibrary/index.vue
+++ b/src/views/standard/standardLibrary/index.vue
@@ -1,192 +1,3 @@
-<style scoped>
-.standard {
- padding-top: 10px;
- display: flex;
- height: calc(100vh - 90px);
-}
-
-.left {
- width: 330px;
- height: calc(100% - 40px - 10px);
- background-color: white;
- padding: 15px;
-}
-
-.custom-tree-node {
- width: 100%;
- line-height: 32px;
-}
-
-.custom-tree-node .el-icon-delete {
- color: #3a7bfa;
- opacity: 0;
- font-size: 18px;
-}
-
-.custom-tree-node:hover .el-icon-delete {
- opacity: 1;
-}
-
-.custom-tree-node .el-icon-edit {
- color: #3a7bfa;
- opacity: 0;
- font-size: 18px;
-}
-
-.custom-tree-node:hover .el-icon-edit {
- opacity: 1;
-}
-
-.node_i {
- color: orange;
- font-size: 18px;
-}
-
-.right {
- margin-left: 5px;
- width: calc(100% - 350px);
- height: calc(100% - 40px);
-}
-
-.right .title {
- height: 34px;
- line-height: 34px;
- padding: 0 10px;
- background-color: white;
-}
-
-.standard_table {
- border-top: 1px solid #ebeef5;
- background-color: white;
-}
-
-.product_table {
- border-top: 1px solid #ebeef5;
- height: calc(100% - 235px);
- margin-top: 5px;
- background-color: white;
- user-select: none;
-}
-
-.product_table .el-table {
- height: calc(100% - 35px) !important;
-}
-
-.sort {
- width: 80% !important;
- overflow: hidden;
-}
-
->>>.el-table__body-wrapper {
- height: calc(100% - 46px) !important;
-}
-
->>>.header-class {
- height: 40px !important;
-}
-
->>>.header-class th.el-table__cell>.cell {
- line-height: 20px !important;
- padding-top: 0 !important;
- padding-bottom: 0 !important;
-}
-
->>>.el-table__row {
- height: 35px !important;
-}
-
-.search {
- border-bottom: 1px solid #ebeef5;
- margin-bottom: 16px;
- display: flex;
- align-items: center;
- box-sizing: border-box;
- padding-bottom: 10px;
-}
-
-.search-item {
- display: flex;
- align-items: center;
- flex-wrap: wrap;
-}
-
-.search-item .el-row {
- display: flex;
- align-items: center;
-}
-
-.search-item .el-col {
- margin-left: 0;
-}
-
-.more-edit .dialog-footer {
- position: absolute;
- top: 15px;
- right: 70px;
-}
-
->>>.is-disabled .el-textarea__inner {
- background: rgba(0, 0, 0, 0.05) !important;
-}
-
->>>.el-table__body-wrapper::-webkit-scrollbar {
- height: 14px;
- /* 璁剧疆婊氬姩鏉″搴� */
-}
-</style>
-<style>
-.standard .el-tree-node__content {
- height: 32px;
- font-size: 14px;
- border-radius: 2px;
-}
-
-.standard .el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content {
- color: #3a7bfa;
-}
-
-.standard .has-gutter .el-table__cell .cell {
- line-height: 34px;
- background-color: #f8f8f8;
-}
-
-.standard .has-gutter .el-table__cell {
- background-color: #fafafa !important;
-}
-
-.standard .standard_table .el-table__row .cell {
- font-size: 14px;
-}
-
-.standard .el-table .warning-row .cell {
- color: #bababa;
-}
-
-.standard .el-table-filter__list {
- max-height: 400px;
- overflow-y: auto;
-}
-
-.standard .el-upload {
- width: 100%;
-}
-
-.standard .el-upload-dragger {
- width: 100%;
-}
-
-.standard .handleBtn.is-disabled .el-upload:focus {
- color: #c0c4cc !important;
-}
-
-.standard .avatar-uploader .el-upload {
- height: 80px;
- display: flex;
- align-items: center;
- justify-content: center;
-}
-</style>
-
<template>
<div class="standard">
<div class="left">
@@ -208,38 +19,68 @@
scrollbar-width: none;
" @node-click="handleNodeClick"
@node-drop="handleDrop">
- <div slot-scope="{ node, data }" class="custom-tree-node">
- <el-row style="width: 100%">
- <el-col :class="{ sort: node.level > 3 }" :span="19" :title="data.label" style="text-align: left">
- <span>
- <i :class="`node_i ${data.children != undefined
- ? data.code === '[1]'
- ? 'el-icon-folder-opened'
- : 'el-icon-folder'
- : 'el-icon-tickets'
- }`"></i>
- {{ data.label }}
- </span>
- </el-col>
- <el-col v-if="
- checkPermi(['standard:standardLibrary:delStandardTree']) &&
- (node.data.children === null ||
- node.data.children === undefined)
- " :span="2" style="text-align: right">
- <el-button size="mini" type="text" @click.stop="editTreeName(node.data)">
+ <div slot-scope="{ node, data }" class="custom-tree-node" style="width: calc(100% - 15px)">
+ <div style="display: flex;align-items: center;flex-wrap: nowrap;flex-direction: row;justify-content: space-between;">
+ <div style="width: calc(100% - 50px);text-overflow: ellipsis;white-space: nowrap;"
+ :style="`overflow:${(node.data.children === null || node.data.children === undefined)?'clip':'visible'}`"
+ >
+ <i :class="`node_i ${data.children != undefined
+ ? data.code === '[1]'
+ ? 'el-icon-folder-opened'
+ : 'el-icon-folder'
+ : 'el-icon-tickets'
+ }`"></i>
+ {{data.label}}
+ </div>
+ <div v-if="(node.data.children === null || node.data.children === undefined)" style="width:50px">
+ <el-button v-if="checkPermi(['standard:standardLibrary:delStandardTree'])" size="mini" type="text" @click.stop="editTreeName(node.data)">
<i class="el-icon-edit"></i>
</el-button>
- </el-col>
- <el-col v-if="
- checkPermi(['standard:standardLibrary:delStandardTree']) &&
- (node.data.children === null ||
- node.data.children === undefined)
- " :span="2" style="text-align: right">
- <el-button size="mini" type="text" @click.stop="remove(node, data)">
+ <el-button style="margin-left: 0" size="mini" v-if="checkPermi(['standard:standardLibrary:delStandardTree'])" type="text" @click.stop="remove(node, data)">
<i class="el-icon-delete"></i>
</el-button>
- </el-col>
- </el-row>
+ </div>
+ </div>
+
+
+
+
+<!-- <div style="display: inline-block;width: calc(100% - 60px);text-overflow: ellipsis;white-space: nowrap;" :style="`overflow:${(node.data.children === null || node.data.children === undefined)?'clip':'visible'}`">-->
+<!-- <i :class="`node_i ${data.children != undefined-->
+<!-- ? data.code === '[1]'-->
+<!-- ? 'el-icon-folder-opened'-->
+<!-- : 'el-icon-folder'-->
+<!-- : 'el-icon-tickets'-->
+<!-- }`"></i>-->
+<!-- {{ data.label }}-->
+<!-- </div>-->
+<!-- <span v-if="(node.data.children === null || node.data.children === undefined)" style="text-align: right">-->
+<!-- <el-button style="width:20px" v-if="checkPermi(['standard:standardLibrary:delStandardTree'])" size="mini" type="text" @click.stop="editTreeName(node.data)">-->
+<!-- <i class="el-icon-edit"></i>-->
+<!-- </el-button>-->
+<!-- <el-button style="width:20px;margin-left: 0" size="mini" v-if="checkPermi(['standard:standardLibrary:delStandardTree'])" type="text" @click.stop="remove(node, data)">-->
+<!-- <i class="el-icon-delete"></i>-->
+<!-- </el-button>-->
+<!-- </span>-->
+<!-- <el-row style="width: 100%">-->
+<!-- <el-col :class="{ sort: node.level > 3 }" :span="19" :title="data.label" style="text-align: left">-->
+
+<!-- </el-col>-->
+<!-- <el-col v-if="-->
+<!-- checkPermi(['standard:standardLibrary:delStandardTree']) &&-->
+<!-- (node.data.children === null ||-->
+<!-- node.data.children === undefined)-->
+<!-- " :span="2" style="text-align: right">-->
+
+<!-- </el-col>-->
+<!-- <el-col v-if="-->
+<!-- checkPermi(['standard:standardLibrary:delStandardTree']) &&-->
+<!-- (node.data.children === null ||-->
+<!-- node.data.children === undefined)-->
+<!-- " :span="2" style="text-align: right">-->
+
+<!-- </el-col>-->
+<!-- </el-row>-->
</div>
</el-tree>
</div>
@@ -255,6 +96,7 @@
</el-row>
<el-row v-loading="tableLoad" class="standard_table">
<el-table ref="standard" :data="standardList" class="el-table" header-row-class-name="header-class" height="220"
+ :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border
highlight-current-row style="width: 100%; height: 220px !important" tooltip-effect="dark"
@row-click="rowClick">
<el-table-column label="鏍囧噯缂栧彿" prop="code" show-overflow-tooltip width="200">
@@ -270,7 +112,8 @@
</el-row>
<el-row v-loading="tableLoad2" class="product_table">
<el-table id="templateParamTable" ref="productTable" v-loading="productTableLoading" :data="productList"
- :fit="true" :row-class-name="tableRowClassName" border class="productTable"
+ :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border
+ :fit="true" :row-class-name="tableRowClassName" class="productTable"
header-row-class-name="header-class" height="100%" row-key="id" stripe style="width: 100%"
tooltip-effect="dark" @select="upProductSelect" @selection-change="handleSelectionChange"
@select-all="handleAll">
@@ -411,7 +254,8 @@
</el-dialog>
<el-dialog :close-on-click-modal="false" :visible.sync="sectionUpDia" title="鍖洪棿璁剧疆" width="80%">
<div class="body" style="padding: 5px 0">
- <el-table :data="sectionList" border height="350px" style="width: 100%">
+ <el-table :data="sectionList" border height="350px" style="width: 100%"
+ :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }">
<el-table-column align="center" label="搴忓彿" type="index" width="70">
</el-table-column>
<el-table-column align="center" label="鍖洪棿">
@@ -778,7 +622,6 @@
}
this.selectTree = data2.replace(" - ", "");
delStandardTree({ tree: this.selectTree }).then((res) => {
- if (res.code == 201) return;
this.$message.success("宸插垹闄�");
let arr = this.selectTree.split(" - ");
this.deleteStandard(this.list, arr[arr.length - 1]);
@@ -879,10 +722,6 @@
this.addLoad = true;
addStandardTree(this.addOb)
.then((res) => {
- if (res.code === 201) {
- this.addLoad = false;
- return;
- }
this.$message.success("娣诲姞鎴愬姛");
this.addDia = false;
this.list
@@ -916,10 +755,6 @@
this.updateLoad = true;
updateStandardTree(this.addOb)
.then((res) => {
- if (res.code === 201) {
- this.updateLoad = false;
- return;
- }
this.$message.success("娣诲姞鎴愬姛");
this.$tab.refreshPage();
// this.selectStandardTreeList();
@@ -953,10 +788,6 @@
ask: value,
}),
}).then((res) => {
- if (res.code == 201) {
- this.$message.error("鏈繚瀛�");
- return;
- }
this.$message.success("宸蹭繚瀛�");
});
},
@@ -967,10 +798,6 @@
tell: value,
}),
}).then((res) => {
- if (res.code == 201) {
- this.$message.error("鏈繚瀛�");
- return;
- }
this.$message.success("宸蹭繚瀛�");
});
},
@@ -982,10 +809,6 @@
methodS: value,
}),
}).then((res) => {
- if (res.code == 201) {
- this.$message.error("鏈繚瀛�");
- return;
- }
this.$message.success("宸蹭繚瀛�");
});
},
@@ -997,10 +820,6 @@
radius: value,
}),
}).then((res) => {
- if (res.code == 201) {
- this.$message.error("鏈繚瀛�");
- return;
- }
this.$message.success("宸蹭繚瀛�");
});
},
@@ -1011,10 +830,6 @@
price: value,
}),
}).then((res) => {
- if (res.code == 201) {
- this.$message.error("鏈繚瀛�");
- return;
- }
this.$message.success("宸蹭繚瀛�");
});
},
@@ -1025,10 +840,6 @@
manHour: value,
}),
}).then((res) => {
- if (res.code == 201) {
- this.$message.error("鏈繚瀛�");
- return;
- }
this.$message.success("宸蹭繚瀛�");
});
},
@@ -1039,10 +850,6 @@
templateId: value,
}),
}).then((res) => {
- if (res.code == 201) {
- this.$message.error("鏈繚瀛�");
- return;
- }
this.$message.success("宸蹭繚瀛�");
});
},
@@ -1123,11 +930,7 @@
state: row.state,
}),
}).then((res) => {
- if (res.code == 201) {
- this.$message.error("鏈繚瀛�");
- return;
- }
- // this.$message.success('宸蹭繚瀛�')
+ this.$message.success('宸蹭繚瀛�')
});
},
filterHandler(value) {
@@ -1277,10 +1080,6 @@
}),
}).then((res) => {
this.sectionLoad = false;
- if (res.code == 201) {
- this.$message.error("鏈繚瀛�");
- return;
- }
this.$message.success("宸蹭繚瀛�");
this.sectionUpDia = false;
});
@@ -1299,10 +1098,6 @@
},
}).then((res) => {
this.sectionLoad = false;
- if (res.code == 201) {
- this.$message.error("鏈繚瀛�");
- return;
- }
this.$message.success("宸蹭繚瀛�");
this.sectionUpDia = false;
this.currentPage0 = 1;
@@ -1442,3 +1237,186 @@
},
};
</script>
+<style scoped>
+.standard {
+ padding-top: 10px;
+ display: flex;
+ height: calc(100vh - 90px);
+}
+
+.left {
+ width: 330px;
+ height: calc(100% - 40px - 10px);
+ background-color: white;
+ padding: 15px;
+}
+
+.custom-tree-node {
+ width: 100%;
+ line-height: 32px;
+}
+
+.custom-tree-node .el-icon-delete {
+ color: #3a7bfa;
+ opacity: 0;
+ font-size: 18px;
+}
+
+.custom-tree-node:hover .el-icon-delete {
+ opacity: 1;
+}
+
+.custom-tree-node .el-icon-edit {
+ color: #3a7bfa;
+ opacity: 0;
+ font-size: 18px;
+}
+
+.custom-tree-node:hover .el-icon-edit {
+ opacity: 1;
+}
+
+.node_i {
+ color: orange;
+ font-size: 18px;
+}
+
+.right {
+ margin-left: 5px;
+ width: calc(100% - 350px);
+ height: calc(100% - 40px);
+}
+
+.right .title {
+ height: 34px;
+ line-height: 34px;
+ padding: 0 10px;
+ background-color: white;
+}
+
+.standard_table {
+ border-top: 1px solid #ebeef5;
+ background-color: white;
+}
+
+.product_table {
+ border-top: 1px solid #ebeef5;
+ height: calc(100% - 235px);
+ margin-top: 5px;
+ background-color: white;
+ user-select: none;
+}
+
+.product_table .el-table {
+ height: calc(100% - 35px) !important;
+}
+
+.sort {
+ width: 80% !important;
+ overflow: hidden;
+}
+
+>>>.el-table__body-wrapper {
+ height: calc(100% - 46px) !important;
+}
+
+>>>.header-class {
+ height: 40px !important;
+}
+
+>>>.header-class th.el-table__cell>.cell {
+ line-height: 20px !important;
+ padding-top: 0 !important;
+ padding-bottom: 0 !important;
+}
+
+>>>.el-table__row {
+ height: 35px !important;
+}
+
+.search {
+ border-bottom: 1px solid #ebeef5;
+ margin-bottom: 16px;
+ display: flex;
+ align-items: center;
+ box-sizing: border-box;
+ padding-bottom: 10px;
+}
+
+.search-item {
+ display: flex;
+ align-items: center;
+ flex-wrap: wrap;
+}
+
+.search-item .el-row {
+ display: flex;
+ align-items: center;
+}
+
+.search-item .el-col {
+ margin-left: 0;
+}
+
+.more-edit .dialog-footer {
+ position: absolute;
+ top: 15px;
+ right: 70px;
+}
+
+>>>.is-disabled .el-textarea__inner {
+ background: rgba(0, 0, 0, 0.05) !important;
+}
+</style>
+<style scoped>
+.standard .el-tree-node__content {
+ height: 32px;
+ font-size: 14px;
+ border-radius: 2px;
+}
+
+.standard .el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content {
+ color: #3a7bfa;
+}
+
+.standard .has-gutter .el-table__cell .cell {
+ line-height: 34px;
+ background-color: #f8f8f8;
+}
+
+.standard .has-gutter .el-table__cell {
+ background-color: #fafafa !important;
+}
+
+.standard .standard_table .el-table__row .cell {
+ font-size: 14px;
+}
+
+.standard .el-table .warning-row .cell {
+ color: #bababa;
+}
+
+.standard .el-table-filter__list {
+ max-height: 400px;
+ overflow-y: auto;
+}
+
+.standard .el-upload {
+ width: 100%;
+}
+
+.standard .el-upload-dragger {
+ width: 100%;
+}
+
+.standard .handleBtn.is-disabled .el-upload:focus {
+ color: #c0c4cc !important;
+}
+
+.standard .avatar-uploader .el-upload {
+ height: 80px;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+}
+</style>
--
Gitblit v1.9.3