From 9c550e05a7ed8446123f3dcc57da8ecad0c0fdc2 Mon Sep 17 00:00:00 2001
From: Fixiaobai <fixiaobai@163.com>
Date: 星期四, 14 九月 2023 10:52:05 +0800
Subject: [PATCH] modified: src/components/view/technical.vue
---
src/components/view/record-content.vue | 332 ++++++++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 266 insertions(+), 66 deletions(-)
diff --git a/src/components/view/record-content.vue b/src/components/view/record-content.vue
index c6be046..921e8f3 100644
--- a/src/components/view/record-content.vue
+++ b/src/components/view/record-content.vue
@@ -46,6 +46,7 @@
height: calc(100% - 20px);
border-right: 3px solid rgb(245, 247, 251);
padding: 16px;
+ overflow-y: auto;
}
.thing .left .custom-tree-node span {
@@ -111,14 +112,14 @@
<div class="record_content">
<div class="title">
<el-row>
- <el-col :span="12" style="line-height: 32px;">璁板綍鍐呭缁存姢</el-col>
+ <el-col :span="12" style="line-height: 32px;">鐢熶骇璁板綍缁存姢</el-col>
<el-col :span="12" style="text-align: right;">
<el-button type="primary" icon="el-icon-plus" style="background: #004EA2;" @click="addend">鏂板</el-button>
- <el-button icon="el-icon-edit-outline" @click="modify">淇敼</el-button>
+ <!-- <el-button icon="el-icon-edit-outline" @click="modify">淇敼</el-button> -->
<el-button icon="el-icon-delete" @click="dels">鍒犻櫎</el-button>
</el-col>
</el-row>
- </div>
+ </div>
<div class="choose">
<span>绫诲瀷锛�</span>
<el-select v-model="search.type" size="small" @change="TYpe" placeholder="璇烽�夋嫨" style="width: 224px;margin-right: 30px;">
@@ -134,19 +135,22 @@
<el-button size="mini" @click="clean()"><span>閲� 缃�</span></el-button>
<el-button size="mini" type="primary" style="background: #004EA2;"><span>鏌�
璇�</span></el-button> -->
+ <!-- :style="{height: scrollerHeight,overflow:'auto',display: 'flex'}" -->
+
</div>
<div class="thing">
<div class="left">
- <el-input v-model="search.technology" suffix-icon="el-icon-search" placeholder="璇疯緭鍏ユ悳绱㈠唴瀹�" size="small" clearable @input="(val)=>$refs.tree.filter(val)"></el-input>
- <el-tree :data="list" ref="tree" :props="{children: 'children',label: 'name'}" node-key="id" default-expand-all
- @node-click="handleNodeClick" highlight-current @node-expand="nodeOpen" @node-collapse="nodeClose" :filter-node-method="filterNode"
+ <el-input v-model="search.technology" suffix-icon="el-icon-search" placeholder="璇疯緭鍏ユ悳绱㈠唴瀹�" size="small" clearable @input="query"></el-input>
+ <el-tree :data="list" ref="tree"
+ :props="{children: 'children',label: 'name'}" node-key="name" default-expand-all
+ @node-click="handleNodeClick" highlight-current
:key="upIndex">
<div class="custom-tree-node" slot-scope="{ node, data }">
- <span><i :class="`node_i ${data.code != '[3]'?'el-icon-folder-opened':'el-icon-tickets'}`"></i>
- {{data.code}} {{ data.name }}</span>
- <el-button type="text" size="mini" @click.stop="remove(node, data)">
+ <span><i :class="`node_i ${data.code != '[2]'?'el-icon-folder-opened':'el-icon-tickets'}`"></i>
+ {{ data.code }}{{ data.name }}</span>
+ <!-- <el-button type="text" size="mini" @click.stop="remove(node, data)">
<i class="el-icon-delete"></i>
- </el-button>
+ </el-button> -->
</div>
</el-tree>
</div>
@@ -157,16 +161,16 @@
</el-table-column>
<el-table-column type="index" label="搴忓彿" width="70">
</el-table-column>
- <el-table-column prop="name" label="鍚嶇О">
+ <el-table-column prop="name" label="璁板綍鍐呭">
</el-table-column>
<el-table-column prop="unit" label="鍗曚綅">
</el-table-column>
- <el-table-column prop="thing" label="澶囨敞">
+ <el-table-column prop="note" label="澶囨敞">
</el-table-column>
<el-table-column label="鎿嶄綔" width="130">
<template slot-scope="scope">
<span class="table_do" @click="upContent(scope.row)">缂栬緫 </span>
- <span class="table_do" @click="deleteRow(scope.$index, tableData)">鍒犻櫎</span>
+ <span class="table_do" @click="deleteRow(scope.$index, scope.row)">鍒犻櫎</span>
</template>
</el-table-column>
</el-table>
@@ -175,7 +179,54 @@
<el-dialog title="缂栬緫璁板綍鍐呭" :visible.sync="upDia" width="500px">
<div class="body">
<el-row style="line-height: 46px;">
- <el-col :span="4" style="font-size: 14px;text-align: right;">鍚嶇О:</el-col>
+ <el-col :span="4" style="font-size: 14px;text-align: right;">绫诲瀷:</el-col>
+ <el-col :span="16" :offset="1">
+ <template>
+ <el-select v-model="edit.type" disabled placeholder="璇烽�夋嫨" style="width: 310px;">
+ <el-option label="姗¤兌杩炴帴鍣�" :value="0"></el-option>
+ <el-option label="閲戝睘杩炴帴鍣�" :value="1"></el-option>
+ <el-option label="婀挎彃鎷旂數杩炴帴鍣�" :value="2"></el-option>
+ <el-option label="鍒嗘敮缁勪欢" :value="3"></el-option>
+ </el-select>
+ </template>
+ </el-col>
+ </el-row>
+ <el-row style="line-height: 46px;">
+ <el-col :span="4" style="font-size: 14px;text-align: right;">宸ュ簭:</el-col>
+ <el-col :span="16" :offset="1">
+ <template>
+ <el-select v-model="edit.techFather"
+ placeholder="璇烽�夋嫨"
+ disabled
+ @change="workevent"
+ style="width: 310px;">
+ <el-option
+ v-for="item in process"
+ :key="item.name"
+ :label="item.name"
+ :value="item.name">
+ </el-option>
+ </el-select>
+ </template>
+ </el-col>
+ </el-row>
+ <el-row style="line-height: 46px;">
+ <el-col :span="4" style="font-size: 14px;text-align: right;">宸ヨ壓:</el-col>
+ <el-col :span="16" :offset="1">
+ <template>
+ <el-select v-model="edit.techName" disabled placeholder="璇烽�夋嫨" style="width: 310px;">
+ <el-option
+ v-for="item in craftapi"
+ :key="item.id"
+ :label="item.name"
+ :value="item.id">
+ </el-option>
+ </el-select>
+ </template>
+ </el-col>
+ </el-row>
+ <el-row style="line-height: 46px;">
+ <el-col :span="4" style="font-size: 14px;text-align: right;">璁板綍鍐呭:</el-col>
<el-col :span="16" :offset="1">
<el-input v-model="upData.name" size="small" clearable></el-input>
</el-col>
@@ -189,7 +240,7 @@
<el-row style="line-height: 46px;">
<el-col :span="4" style="font-size: 14px;text-align: right;">澶囨敞:</el-col>
<el-col :span="16" :offset="1">
- <el-input v-model="upData.thing" size="small" clearable></el-input>
+ <el-input v-model="upData.note" size="small" clearable></el-input>
</el-col>
</el-row>
</div>
@@ -199,58 +250,58 @@
</span>
</el-dialog>
<!-- 鏂板寮圭獥 -->
- <el-dialog title="宸ュ簭鏂板" :visible.sync="dialogVisible" width="35%">
+ <el-dialog title="鐢熶骇璁板綍鏂板" :visible.sync="dialogVisible" width="35%">
<div>
<el-form ref="form" :model="form" label-width="80px">
<el-form-item label="绫诲瀷">
<template>
- <el-select v-model="value" placeholder="璇烽�夋嫨绫诲瀷" style="width: 480px;">
- <el-option
- v-for="item in options"
- :key="item.value"
- :label="item.label"
- :value="item.value">
- </el-option>
+ <el-select v-model="form.type" @change="edittype" placeholder="璇烽�夋嫨" style="width: 480px;">
+ <el-option label="姗¤兌杩炴帴鍣�" :value="0"></el-option>
+ <el-option label="閲戝睘杩炴帴鍣�" :value="1"></el-option>
+ <el-option label="婀挎彃鎷旂數杩炴帴鍣�" :value="2"></el-option>
+ <el-option label="鍒嗘敮缁勪欢" :value="3"></el-option>
</el-select>
</template>
</el-form-item>
<el-form-item label="宸ュ簭">
<template>
- <el-select v-model="value" placeholder="璇烽�夋嫨绫诲瀷" style="width: 480px;">
+ <el-select v-model="form.work"
+ @change="workevent"
+ placeholder="璇烽�夋嫨" style="width: 480px;">
<el-option
- v-for="item in options"
- :key="item.value"
- :label="item.label"
- :value="item.value">
+ v-for="item in process"
+ :key="item.name"
+ :label="item.name"
+ :value="item.name">
</el-option>
</el-select>
</template>
</el-form-item>
<el-form-item label="宸ヨ壓鍚嶇О">
<template>
- <el-select v-model="value" placeholder="璇烽�夋嫨绫诲瀷" style="width: 480px;">
+ <el-select v-model="form.craft" placeholder="璇烽�夋嫨" style="width: 480px;">
<el-option
- v-for="item in options"
- :key="item.value"
- :label="item.label"
- :value="item.value">
+ v-for="item in craftapi"
+ :key="item.id"
+ :label="item.name"
+ :value="item.id">
</el-option>
</el-select>
</template>
</el-form-item>
<el-form-item label="璁板綍">
- <el-input v-model="form.name"></el-input>
+ <el-input v-model="form.record"></el-input>
</el-form-item>
<el-form-item label="澶囨敞">
- <el-input v-model="form.vvvv"></el-input>
+ <el-input v-model="form.remarks"></el-input>
</el-form-item>
<el-form-item label="鍗曚綅">
- <el-input v-model="form.aaaa"></el-input>
+ <el-input v-model="form.unit"></el-input>
</el-form-item>
</el-form>
</div>
<span slot="footer" class="dialog-footer">
- <el-button type="primary" @click="dialogVisible = false">纭� 瀹�</el-button>
+ <el-button type="primary" @click="add">纭� 瀹�</el-button>
<el-button @click="dialogVisible = false">鍙� 娑�</el-button>
</span>
</el-dialog>
@@ -261,7 +312,7 @@
<el-form ref="form" :model="form" label-width="80px">
<el-form-item label="绫诲瀷">
<template>
- <el-select v-model="value" placeholder="璇烽�夋嫨绫诲瀷" style="width: 480px;">
+ <el-select v-model="value" placeholder="璇烽�夋嫨" style="width: 480px;">
<el-option
v-for="item in options"
:key="item.value"
@@ -273,7 +324,7 @@
</el-form-item>
<el-form-item label="宸ュ簭">
<template>
- <el-select v-model="value" placeholder="璇烽�夋嫨绫诲瀷" style="width: 480px;">
+ <el-select v-model="value" placeholder="璇烽�夋嫨" style="width: 480px;">
<el-option
v-for="item in options"
:key="item.value"
@@ -285,7 +336,7 @@
</el-form-item>
<el-form-item label="宸ヨ壓鍚嶇О">
<template>
- <el-select v-model="value" placeholder="璇烽�夋嫨绫诲瀷" style="width: 480px;">
+ <el-select v-model="value" placeholder="璇烽�夋嫨" style="width: 480px;">
<el-option
v-for="item in options"
:key="item.value"
@@ -296,13 +347,13 @@
</template>
</el-form-item>
<el-form-item label="璁板綍">
- <el-input v-model="form.name"></el-input>
+ <el-input v-model="form.record"></el-input>
</el-form-item>
<el-form-item label="澶囨敞">
- <el-input v-model="form.vvvv"></el-input>
+ <el-input v-model="form.remarks"></el-input>
</el-form-item>
<el-form-item label="鍗曚綅">
- <el-input v-model="form.aaaa"></el-input>
+ <el-input v-model="form.unit"></el-input>
</el-form-item>
</el-form>
</div>
@@ -320,51 +371,146 @@
return {
search: {
type: 0,
- name: 2,
- technology: 2
+ technology: null
},
options:[],
value:{},
- form:{},
+ craftapi:[],
+ form:{
+ type:'',
+ work:'',
+ craft:'',
+ name:'',
+ record:'',
+ remarks:'',
+ unit:'',
+ },
modifyVisible:false,
dialogVisible:false,
- process: [],
+ process: {},
list: [],
- checkTreeNode: {},
tableData: [],
upIndex: 0,
selects: [],
+ delete:[],
typeselect:0,
upDia: false,
- checkTreeNode:[],
- upData: {
- id: 0,
- name: null,
- unit: null,
- thing: null
- }
+ checkTreeNode:{
+ id:'',
+ },
+ upData:{
+ name:'',
+ unit:'',
+ note:'',
+ },
+ edit:{
+ name:'',
+ note:'',
+ techFather:'',
+ techName:'',
+ type:'',
+ unit:'',
+ },
}
},
mounted() {
this.selectAllleft()
+ this.selectjilu()
},
methods: {
+ delQueById() {
+ this.$axios.get(this.$api.url.delQueById,)
+ },
+ childrenClick() {},
TYpe(val) {
this.typeselect = val
console.log(this.typeselect);
this.selectAllleft()
},
+ edittype(val) {
+ this.typeselect = val
+ this.chooseTechFath()
+ },
+ //鏂板
+ workevent(val){
+ console.log(val);
+ let idx = this.process.findIndex(el => el.name === val)
+ this.craftapi = this.process[idx].children
+ console.log( this.craftapi);
+ },
+ chooseTechFath() {
+ this.$axios.get(this.$api.url.chooseTechFath,{
+ params:{type:this.typeselect}
+ }).then(res => {
+ this.process = res.data;
+ console.log(this.process);
+ }, {
+ headers: {
+ "Content-Type": "application/json"
+ }
+ }).then(res =>{
+
+ })
+ },
+ addRecord() {
+ this.$axios.post(this.$api.url.addRecord,{
+ name:this.form.record,
+ note:this.form.remarks,
+ techTemId:this.form.craft,
+ unit:this.form.unit,
+ }
+ , {
+ headers: {
+ "Content-Type": "application/json"
+ }
+ }
+ ).then(res =>{
+ this.selectjilu()
+ })
+ },
+ add() {
+ this.dialogVisible = false
+ this.addRecord()
+ this.form = {};
+ },
+ query() {
+ this.selectAllleft()
+ },
//涓讳綋宸�
selectAllleft() {
this.$axios.get(this.$api.url.selectAllleft,{
- params:{type:this.typeselect}
+ params:{type:this.typeselect,message:this.search.technology}
}).then(res => {
this.list = res.data;
- console.log(this.list);
+ this.selectDataList()
+ this.$nextTick(() => {
+ this.$refs.tree.setCurrentKey(this.list[0].children[0].name) // 榛樿閫変腑鑺傜偣绗竴涓�
+ })
+ console.log("=======");
+ console.log(this.list);
+ let one=this.list.filter(item=>{
+ return item.children.length>0
+ })[0]
+ console.log(one);
+ let name=one.children[0].id
+ console.log(name);
+ this.checkTreeNode.id = name
+ this.selectjiluStart(name)
+ this.selectDataList();
+ });
+ },
+ //榛樿
+ selectjiluStart(name) {
+ this.$axios.get(this.$api.url.selectjilu,{
+ params:{id:name}
+ }).then(res => {
+ this.tableData = res.data;
+ console.log(this.tableData);
})
},
//selectjilu checkTreeNode
selectjilu() {
+ console.log(this.checkTreeNode.id);
this.$axios.get(this.$api.url.selectjilu,{
params:{id:this.checkTreeNode.id}
}).then(res => {
@@ -377,6 +523,7 @@
},
addend(){
this.dialogVisible = true
+ this.chooseTechFath()
},
filterNode(value, data) {
if (!value) return true;
@@ -433,25 +580,78 @@
}
}
})
+ let cc = this.selects.map(el => {
+ return el.id
+ })
+ this.delete = cc.join(',')
+ console.log(this.delete);
+ this.delAllRecord()
this.$message.success('鍒犻櫎瀹屾垚')
},
- deleteRow(index, rows) {
- rows.splice(index, 1);
+ //鎵归噺鍒犻櫎
+ delAllRecord() {
+ this.$axios.post(this.$api.url.delAllRecord,{
+ ids:this.delete
+ })
},
+
+ //鍒犻櫎
+ delQueByIdapi() {
+ this.$axios.post(this.$api.url.delQueByIdapi,{
+ id:this.upData.id
+ })
+ },
+ deleteRow(index, rows) {
+ this.tableData.splice(index,1)
+ this.upData.id = rows.id
+ this.delQueByIdapi()
+ // this.selectjilu()
+ },
+ //缂栬緫
upContent(ob) {
- this.upData = this.HaveJson(ob)
+ this.upData = ob
+ // console.log(this.upData);
+ this.selecRecord()
+ // this.chooseTechFath()
this.upDia = true
},
- submitUpData() {
- this.tableData.forEach(a => {
- if (a.id == this.upData.id) {
- a.name = this.upData.name
- a.unit = this.upData.unit
- a.thing = this.upData.thing
+ selecRecord() {
+ this.$axios.get(this.$api.url.selecRecord,{
+ params:{
+ id:this.upData.id
}
+ }).then(res => {
+ this.edit = res.data[0]
})
+ },
+ writeRecordById() {
+ // console.log(this.upData.id);
+ this.$axios.post(this.$api.url.writeRecordById + '?id=' + this.upData.id,{
+ name:this.upData.name,
+ note:this.upData.note,
+ techTemId:this.edit.id,
+ unit:this.upData.unit
+ }, {
+ headers: {
+ "Content-Type": "application/json"
+ }
+ }).then(res => {
+ this.selectjilu()
+ })
+ },
+ submitUpData() {
+ this.writeRecordById()
this.$message.success('淇敼鎴愬姛')
+
this.upDia = false
+ // this.tableData.forEach(a => {
+ // if (a.id == this.upData.id) {
+ // a.name = this.upData.name
+ // a.unit = this.upData.unit
+ // a.thing = this.upData.thing
+ // }
+ // })
+ // console.log(this.upData);
}
}
}
--
Gitblit v1.9.3