From b46e6d2306515f94bf77c06e8d80ac76267e3ddb Mon Sep 17 00:00:00 2001
From: gaoshp <291585735@qq.com>
Date: 星期日, 02 六月 2024 21:44:23 +0800
Subject: [PATCH] 搜索

---
 src/views/console/bom-list/index.vue |  246 +++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 205 insertions(+), 41 deletions(-)

diff --git a/src/views/console/bom-list/index.vue b/src/views/console/bom-list/index.vue
index 31029aa..f6aaf40 100644
--- a/src/views/console/bom-list/index.vue
+++ b/src/views/console/bom-list/index.vue
@@ -1,47 +1,50 @@
 <template>
-	<div class="rolePage">
+	<div class="bomPage">
 		<div class="roleContainer">
-			<div class="roleContainer-title">浜у搧鍒楄〃</div>
-			<el-input v-model="keyword" prefix-icon="el-icon-search" placeholder="杈撳叆鎼滅储鍐呭" clearable @keyup.enter="searchBtn"></el-input>
-			<ul>
-				<li v-for="(item,index) in leftData" @click="changeTabaleLi(item,index)">
-					<span :class="{active: item.active}">{{item.roleName}}</span>
+			<div class="bomContainer-title">浜у搧鍒楄〃</div>
+			<el-input v-model="keyword" size="small" prefix-icon="el-icon-search" placeholder="杈撳叆鎼滅储鍐呭" clearable @keyup.enter="searchBtn"></el-input>
+			<ul class="left-ul">
+				<li v-for="(item,index) in leftData" :class="{active: item.active}" @click="changeTabaleLi(index)">
+					<span>銆恵{item.code}}銆憑{item.name}}</span>
 				</li>
 			</ul>
 		</div>
-		<div class="role-main-tabs">
-			<div class="role-main-header">
-				<div class="roleContainer-title">BOM娓呭崟</div>
-				<div>
-					<div>BOM鐗堟湰</div>
-					<div>
-						<span>浜у搧鍚嶇О</span>
-						<span>浜у搧缂栧彿</span>
+		<div class="bom-main-tabs">
+			<div class="bom-main-header">
+				<div class="bomContainer-title">BOM娓呭崟</div>
+				<div style="padding: 20px;border-bottom: 1px solid #dee;">
+					<div class="main-info">
+						<div class="main-info-title">BOM 鐗堟湰</div>
+						<div class="main-info-tooltip">
+							<div class="main-info-item"><span style="background-color: yellow"></span><span>鏈畾鐗�</span></div>
+							<div class="main-info-item"><span style="background-color: #b7c9f3"></span><span>宸插畾鐗�</span></div>
+						</div>
+					</div>
+					<div class="main-info-conent">
+						<span>浜у搧鍚嶇О<span>{{info.name}}</span></span>
+						<span>浜у搧缂栧彿<span>{{info.code}}</span></span>
 					</div>
 					<div>
-						<span>鏈畾鐗�</span>
-						<span>宸插畾鐗�</span>
-					</div>
-					<div>
-						娣诲姞鏂扮増鏈�
+						<el-button type="primary" @click="addVis">娣诲姞鏂扮増鏈�</el-button>
 					</div>
 				</div>
 			</div>
-			<el-tabs tab-position="top">
-				<div>
-					<div>BOM娓呭崟鍒楄〃</div>
+			<div class="bom-main-content">
+				<div class="main-content-left">
+					<div class="bomContainer-title">BOM娓呭崟鍒楄〃</div>
+					<div></div>
 				</div>
-				<div>
+				<div class="main-content-right">
 					<ul>
-						<li>鐗╂枡缂栧彿</li>
-						<li>鐗╂枡鍚嶇О</li>
-						<li>瑙勬牸</li>
-						<li>璁¢噺鍗曚綅</li>
-						<li>鐗╂枡绫诲瀷</li>
-						<li>鐗╂枡灞炴��</li>
-						<li>鏄惁蹇呮</li>
-						<li>棰濆畾搴撳瓨</li>
-						<li>瀹夊叏搴撳瓨</li>
+						<li>鐗╂枡缂栧彿<span>-</span></li>
+						<li>鐗╂枡鍚嶇О<span>-</span></li>
+						<li>瑙勬牸<span>-</span></li>
+						<li>璁¢噺鍗曚綅<span>-</span></li>
+						<li>鐗╂枡绫诲瀷<span>-</span></li>
+						<li>鐗╂枡灞炴��<span>-</span></li>
+						<li>鏄惁蹇呮<span>-</span></li>
+						<li>棰濆畾搴撳瓨<span>-</span></li>
+						<li>瀹夊叏搴撳瓨<span>-</span></li>
 					</ul>
 					<el-table ref="multipleTableRef0" :data="tableData" border style="width: 100%" class="multipleTableRef">
 						<el-table-column prop="name" label="宸ュ簭缂栧彿"></el-table-column>
@@ -51,44 +54,205 @@
 						<el-table-column prop="standardModel" label="鍥哄畾鑰楁崯"></el-table-column>
 						<el-table-column fixed="right" label="鎿嶄綔" width="200px">
 							<template #default="scope">
-								<el-button text type="primary" size="small" @click="table_edit(scope.row, scope.$index)">缂栬緫</el-button>
+								<!-- <el-button text type="primary" size="small" @click="table_edit(scope.row, scope.$index)">缂栬緫</el-button>
 								<el-button text type="primary" size="small" @click="table_edit(scope.row, scope.$index)">鍒锋柊</el-button>
-								<el-button text type="primary" size="small" @click="table_edit(scope.row, scope.$index)">鍒犻櫎</el-button>
+								<el-button text type="primary" size="small" @click="table_edit(scope.row, scope.$index)">鍒犻櫎</el-button> -->
 							</template>
 						</el-table-column>
 					</el-table>
 				</div>
-			</el-tabs>
+			</div>
 		</div>
+		<el-dialog title="" v-model="visible" :width="360" class="visible-model">
+	        <el-form :model="routeForm" :rules="routeRules" ref="dialogForm" label-width="120px"
+	            label-position="center">
+	            <el-row>
+	                <el-col :span="24">
+	                    <el-form-item label="宸ヨ壓璺嚎鐗堟湰" prop="test">
+	                        <el-select v-model="routeForm.test" style="width: 100%" placeholder="璇烽�夋嫨">
+								<el-option v-for="item in testList" :key="item.id" :label="item.title" :value="item.id"/>
+							</el-select>
+	                    </el-form-item>
+	                </el-col>
+	            </el-row>
+	        </el-form>
+	        <template #footer>
+	            <el-button @click="visible = false">鍙栨秷</el-button>
+	            <el-button type="primary" :loading="isSaveing" @click="routeSubmit">纭畾</el-button>
+	        </template>
+	    </el-dialog>
 	</div>
 </template>
 
 <script>
 	export default {
 		name: 'BOM',
-		components: {
-			
-		},
+		components: {},
 		data() {
 			return {
+				testList: [],
+				routeForm: {
+					test: ""
+				},
+				routeRules: {
+					test: [
+						{ required: true, message: "璇烽�夋嫨宸ヨ壓璺嚎鐗堟湰" }
+					]
+				},
+				visible: false,
 				leftData: [],
 				dialog: {
 					save: false,
 					permission: false
 				},
+				info: {},
 				tableData: []
 			}
 		},
 		mounted(){
-
+			this.getLeftTree();
 		},
 		methods: {
+			routeSubmit() {
+				this.$refs.dialogForm.validate(async (valid) => {
+					if (valid) {
+						// this.$HTTP.post("/api/blade-system/data-scope/submit",obj).then(res=> {
+						// 	this.isSaveing = false;
+						// 	if(res.code == 200) {
+						// 		this.$emit('success', this.addDictForm, this.mode);
+						// 		this.visible = false;
+						// 		this.$message.success("鎿嶄綔鎴愬姛");
+						// 	}else {
+						// 		this.$alert(res.message, "鎻愮ず", {type: 'error'});
+						// 	}
+						// })
+					}else{
+						return false;
+					}
+				})
+			},
 			searchBtn() {},
-			
+			addVis() {
+				this.visible = true;
+			},
+			changeTabaleLi(index) {
+				this.leftData.forEach(item=> {
+					item.active = false;
+				})
+				this.leftData[index].active = true;
+				this.info = this.leftData[index];
+			},
+			getLeftTree() {
+				this.$HTTP.get("/api/blade-cps/product/tree").then(res=> {
+					if(res.code == 200) {
+						this.leftData = res.data;
+					}
+				})
+			}
 		}
 	}
 </script>
 
 <style scoped>
-
+.bomPage {
+	display: flex;
+    min-height: 100%;
+    margin: 8px;
+}
+.bomContainer-title {
+	font-size: 16px;
+    text-align: center;
+    height: 38px;
+    line-height: 38px;
+    border-bottom: 1px solid #e2e2e2;
+    background-color: #409eff;
+    color: #fff;
+    border-radius: 2px 2px 0 0;
+    margin-bottom: 12px;
+}
+.roleContainer {
+	width: 240px;
+    margin-right: 8px;
+    padding: 4px;
+    background-color: #fff;
+}
+.bom-main-tabs {
+	flex: 1;
+    padding: 8px;
+    background-color: #fff;
+}
+.left-ul {
+	margin-top: 12px;
+	padding-left:30px;
+	padding-right:30px;
+}
+.left-ul li {
+	padding: 6px 6px;
+	list-style: none;
+	cursor: pointer;
+	margin-bottom: 6px;
+}
+.left-ul .active {
+	background-color: #7ab3ee;
+	display: inline-block;
+	width: 100%;
+}
+.left-ul li:hover {
+	background-color: #eff4f9;
+}
+.main-info {
+	display: flex;
+    justify-content: space-between;
+}
+.main-info-title {
+	font-size: 14px;
+    padding-left: 8px;
+    border-left: 2px solid #7ab3ee;
+}
+.main-info-tooltip {
+	display: flex;
+    font-size: 12px;
+}
+.main-info-item {
+	margin-right: 8px;
+}
+.main-info-item span:nth-child(1) {
+	width: 10px;
+    height: 10px;
+    border-radius: 50%;
+    margin-right: 4px;
+    display: inline-block;
+}
+.main-info-conent {
+	display: flex;
+    margin: 8px 0px 12px;
+}
+.main-info-conent > span {
+	margin-right: 12px;
+	font-size: 14px;
+}
+.main-info-conent > span span {
+	margin-left:12px;
+}
+.bom-main-content {
+	display: flex;
+}
+.main-content-left {
+	width: 320px;
+}
+.main-content-right {
+	flex: 1;
+}
+.main-content-right ul {
+	padding: 12px 30px;
+}
+.main-content-right ul li {
+	width: 50%;
+	float: left;
+	list-style: none;
+	margin-bottom:12px;
+}
+.main-content-right ul li span {
+	margin-left:12px;
+}
 </style>

--
Gitblit v1.9.3