From 0bd64cdb66957d78202e96517d52cb100369b5af Mon Sep 17 00:00:00 2001 From: XiaoRuby <3114200645@qq.com> Date: 星期六, 09 九月 2023 14:51:22 +0800 Subject: [PATCH] Crunchy-09/09 --- src/components/view/record-content.vue | 1263 +++++++++++++++++++++++++++++++------------------------- 1 files changed, 693 insertions(+), 570 deletions(-) diff --git a/src/components/view/record-content.vue b/src/components/view/record-content.vue index 12b98b3..8c5976a 100644 --- a/src/components/view/record-content.vue +++ b/src/components/view/record-content.vue @@ -1,606 +1,729 @@ <style scoped> - .title .el-button { - height: 32px; - border: 1px solid rgba(190, 190, 190, 0.44); - box-shadow: 0px 2px 4px rgba(220, 220, 220, 0.41); - padding: 0 12px; - } +.title .el-button { + height: 32px; + border: 1px solid rgba(190, 190, 190, 0.44); + box-shadow: 0px 2px 4px rgba(220, 220, 220, 0.41); + padding: 0 12px; +} - .title { - margin-bottom: 10px; - padding: 0 20px; - } +.title { + margin-bottom: 10px; + padding: 0 20px; +} - .title * { - font-size: 16px; - } +.title * { + font-size: 16px; +} - .choose { - padding: 21px 24px; - display: flex; - align-items: center; - background-color: #fff; - border-bottom: 3px solid rgb(245, 247, 251); - } +.choose { + padding: 21px 24px; + display: flex; + align-items: center; + background-color: #fff; + border-bottom: 3px solid rgb(245, 247, 251); +} - .choose * { - font-size: 14px; - } +.choose * { + font-size: 14px; +} - .choose .el-button { - height: 32px; - border: 1px solid rgba(190, 190, 190, 0.44); - box-shadow: 0px 2px 4px rgba(220, 220, 220, 0.41); - padding: 0 12px; - } +.choose .el-button { + height: 32px; + border: 1px solid rgba(190, 190, 190, 0.44); + box-shadow: 0px 2px 4px rgba(220, 220, 220, 0.41); + padding: 0 12px; +} - .thing { - width: 100%; - height: calc(100% - 120px); - background-color: #fff; - display: flex; - } +.thing { + width: 100%; + height: calc(100% - 120px); + background-color: #fff; + display: flex; +} - .thing .left { - width: 295px; - height: calc(100% - 20px); - border-right: 3px solid rgb(245, 247, 251); - padding: 16px; - } +.thing .left { + width: 295px; + height: calc(100% - 20px); + border-right: 3px solid rgb(245, 247, 251); + padding: 16px; +} - .thing .left .custom-tree-node span { - font-size: 14px; - } +.thing .left .custom-tree-node span { + font-size: 14px; +} - .thing .left .custom-tree-node { - flex: 1; - display: flex; - align-items: center; - justify-content: space-between; - font-size: 14px; - padding-right: 8px; - } +.thing .left .custom-tree-node { + flex: 1; + display: flex; + align-items: center; + justify-content: space-between; + font-size: 14px; + padding-right: 8px; +} - .node_i { - color: orange; - } +.node_i { + color: orange; +} - .el-icon-delete { - display: none; - color: #004EA2; - } +.el-icon-delete { + display: none; + color: #004ea2; +} - .custom-tree-node:hover .el-icon-delete { - display: inline; - } +.custom-tree-node:hover .el-icon-delete { + display: inline; +} - .thing .right { - width: calc(100% - 305px); - height: calc(100% - 25px); - overflow: hidden; - padding: 10px; - } +.thing .right { + width: calc(100% - 305px); + height: calc(100% - 25px); + overflow: hidden; + padding: 10px; +} - .table_do { - color: #004ea0; - cursor: pointer; - } +.table_do { + color: #004ea0; + cursor: pointer; +} </style> <style> - .record_content .title .el-button * { - font-size: 14px; - } +.record_content .title .el-button * { + font-size: 14px; +} - .record_content .title .el-button--default { - color: #004EA2; - } +.record_content .title .el-button--default { + color: #004ea2; +} - .record_content .thing .left .el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content { - background: rgba(58, 124, 253, 0.2); - color: #004EA2; - } +.record_content + .thing + .left + .el-tree--highlight-current + .el-tree-node.is-current + > .el-tree-node__content { + background: rgba(58, 124, 253, 0.2); + color: #004ea2; +} - .record_content .el-tree-node__content { - height: 30px; - border-radius: 2px; - } +.record_content .el-tree-node__content { + height: 30px; + border-radius: 2px; +} </style> - <template> - <div class="record_content"> - <div class="title"> - <el-row> - <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-delete" @click="dels">鍒犻櫎</el-button> - </el-col> - </el-row> - </div> - <div class="choose"> - <span>绫诲瀷锛�</span> - <el-select v-model="search.type" size="small" @change="TYpe" placeholder="璇烽�夋嫨" style="width: 224px;margin-right: 30px;"> - <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> - <!-- <span>宸ュ簭锛�</span> + <div class="record_content"> + <div class="title"> + <el-row> + <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-delete" @click="dels">鍒犻櫎</el-button> + </el-col> + </el-row> + </div> + <div class="choose"> + <span>绫诲瀷锛�</span> + <el-select + v-model="search.type" + size="small" + @change="TYpe" + placeholder="璇烽�夋嫨" + style="width: 224px;margin-right: 30px;" + > + <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> + <!-- <span>宸ュ簭锛�</span> <el-select v-model="search.name" size="small" placeholder="璇烽�夋嫨" style="width: 224px;margin-right: 30px;"> <el-option v-for="(a, ai) in process" key="ai" :label="a.name" :value="a.id"></el-option> </el-select> <el-button size="mini" @click="clean()"><span>閲� 缃�</span></el-button> <el-button size="mini" type="primary" style="background: #004EA2;"><span>鏌� 璇�</span></el-button> --> - </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" - :key="upIndex"> - <div class="custom-tree-node" slot-scope="{ 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> - </div> - </el-tree> - </div> - <div class="right"> - <el-table :data="tableData" border style="width: 100%;overflow-y: auto;min-height: 100%" max-height="100%" - @selection-change="handleSelectionChange" default-expand-all> - <el-table-column type="selection" width="50"> - </el-table-column> - <el-table-column type="index" label="搴忓彿" width="70"> - </el-table-column> - <el-table-column prop="name" label="鍚嶇О"> - </el-table-column> - <el-table-column prop="unit" label="鍗曚綅"> - </el-table-column> - <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, scope.row)">鍒犻櫎</span> - </template> - </el-table-column> - </el-table> - </div> - </div> - <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="16" :offset="1"> - <template> - <el-select v-model="edit.type" 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="璇烽�夋嫨绫诲瀷" - @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" 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> - </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.unit" size="small" clearable></el-input> - </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.note" size="small" clearable></el-input> - </el-col> - </el-row> - </div> - <span slot="footer" class="dialog-footer"> - <el-button type="primary" @click="submitUpData">纭� 瀹�</el-button> - <el-button @click="upDia = false">鍙� 娑�</el-button> - </span> - </el-dialog> - <!-- 鏂板寮圭獥 --> - <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="form.type" 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="form.work" - @change="workevent" - placeholder="璇烽�夋嫨绫诲瀷" style="width: 480px;"> - <el-option - 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="form.craft" placeholder="璇烽�夋嫨绫诲瀷" style="width: 480px;"> - <el-option - 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.record"></el-input> - </el-form-item> - <el-form-item label="澶囨敞"> - <el-input v-model="form.remarks"></el-input> - </el-form-item> - <el-form-item label="鍗曚綅"> - <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="add">纭� 瀹�</el-button> - <el-button @click="dialogVisible = false">鍙� 娑�</el-button> - </span> - </el-dialog> + </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" + :key="upIndex" + > + <div class="custom-tree-node" slot-scope="{ 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> + </div> + </el-tree> + </div> + <div class="right"> + <el-table + :data="tableData" + border + style="width: 100%;overflow-y: auto;min-height: 100%" + max-height="100%" + @selection-change="handleSelectionChange" + default-expand-all + > + <el-table-column type="selection" width="50"> </el-table-column> + <el-table-column type="index" label="搴忓彿" width="70"> + </el-table-column> + <el-table-column prop="name" label="鍚嶇О"> </el-table-column> + <el-table-column prop="unit" label="鍗曚綅"> </el-table-column> + <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, scope.row)" + >鍒犻櫎</span + > + </template> + </el-table-column> + </el-table> + </div> + </div> + <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="16" :offset="1"> + <template> + <el-select + v-model="edit.type" + 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="璇烽�夋嫨绫诲瀷" + @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" + 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> + </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.unit" size="small" clearable></el-input> + </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.note" size="small" clearable></el-input> + </el-col> + </el-row> + </div> + <span slot="footer" class="dialog-footer"> + <el-button type="primary" @click="submitUpData">纭� 瀹�</el-button> + <el-button @click="upDia = false">鍙� 娑�</el-button> + </span> + </el-dialog> + <!-- 鏂板寮圭獥 --> + <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="form.type" + 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="form.work" + @change="workevent" + placeholder="璇烽�夋嫨绫诲瀷" + style="width: 480px;" + > + <el-option + 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="form.craft" + placeholder="璇烽�夋嫨绫诲瀷" + style="width: 480px;" + > + <el-option + 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.record"></el-input> + </el-form-item> + <el-form-item label="澶囨敞"> + <el-input v-model="form.remarks"></el-input> + </el-form-item> + <el-form-item label="鍗曚綅"> + <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="add">纭� 瀹�</el-button> + <el-button @click="dialogVisible = false">鍙� 娑�</el-button> + </span> + </el-dialog> - <!-- 淇敼寮圭獥 --> - <el-dialog title="宸ュ簭缂栬緫" :visible.sync="modifyVisible" 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> - </template> - </el-form-item> - <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> - </template> - </el-form-item> - <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> - </template> - </el-form-item> - <el-form-item label="璁板綍"> - <el-input v-model="form.record"></el-input> - </el-form-item> - <el-form-item label="澶囨敞"> - <el-input v-model="form.remarks"></el-input> - </el-form-item> - <el-form-item label="鍗曚綅"> - <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="modifyVisible = false">纭� 瀹�</el-button> - <el-button @click="modifyVisible = false">鍙� 娑�</el-button> - </span> - </el-dialog> - </div> + <!-- 淇敼寮圭獥 --> + <el-dialog title="宸ュ簭缂栬緫" :visible.sync="modifyVisible" 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> + </template> + </el-form-item> + <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> + </template> + </el-form-item> + <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> + </template> + </el-form-item> + <el-form-item label="璁板綍"> + <el-input v-model="form.record"></el-input> + </el-form-item> + <el-form-item label="澶囨敞"> + <el-input v-model="form.remarks"></el-input> + </el-form-item> + <el-form-item label="鍗曚綅"> + <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="modifyVisible = false" + >纭� 瀹�</el-button + > + <el-button @click="modifyVisible = false">鍙� 娑�</el-button> + </span> + </el-dialog> + </div> </template> <script> - export default { - data() { - return { - search: { - type: 0, - name: 2, - technology: 2 - }, - options:[], - value:{}, - craftapi:[], - form:{ - type:'', - work:'', - craft:'', - name:'', - record:'', - remarks:'', - unit:'', - }, - modifyVisible:false, - dialogVisible:false, - process: {}, - list: [], - checkTreeNode: {}, - tableData: [], - upIndex: 0, - selects: [], - delete:[], - typeselect:0, - upDia: false, - checkTreeNode:{ - id:2, - }, - upData:{}, - edit:{ - name:'', - note:'', - techFather:'', - techName:'', - type:'', - unit:'', - }, - upData: { - id: 0, - name: null, - unit: null, - thing: null - } - } - }, - mounted() { - this.selectAllleft() - this.selectjilu() - }, - methods: { - delQueById() { - this.$axios.get(this.$api.url.delQueById,) - }, - childrenClick() {}, - //鏂板 - workevent(val){ - console.log(val); - let idx = this.process.findIndex(el => el.name === val) - this.craftapi = this.process[idx].children - }, - 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" - } - }) - }, - 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" - } - } - ) - }, - add() { - this.dialogVisible = false - this.addRecord() - this.selectjilu() - this.form = {}; - }, - //缂栬緫 this.upData - selecRecord() { - this.$axios.get(this.$api.url.selecRecord,{ - params:{ - id:this.upData.id - } - }).then(res => { - this.edit = res.data[0] - // console.log(this.edit); - }) - }, - TYpe(val) { - this.typeselect = val - console.log(this.typeselect); - this.selectAllleft() - }, - //涓讳綋宸� - selectAllleft() { - this.$axios.get(this.$api.url.selectAllleft,{ - params:{type:this.typeselect} - }).then(res => { - this.list = res.data; - console.log(this.list); - this.selectDataList() - }) - }, - //selectjilu checkTreeNode - selectjilu() { - this.$axios.get(this.$api.url.selectjilu,{ - params:{id:this.checkTreeNode.id} - }).then(res => { - this.tableData = res.data; - console.log(this.tableData); - }) - }, - modify(){ - this.modifyVisible = true - }, - addend(){ - this.dialogVisible = true - this.chooseTechFath() - }, - filterNode(value, data) { - if (!value) return true; - return data.name.indexOf(value) !== -1; - }, - remove(node, data) { - this.$confirm("鏄惁鍒犻櫎", "璀﹀憡", { - type: "warning" - }).then(res => { - const parent = node.parent; - const children = parent.data.children || parent.data; - const index = children.findIndex(d => d.id === data.id); - children.splice(index, 1); - }).catch(e => {}) - }, - selectDataList() { - this.list.forEach(a => { - a.code = '[1]' - if (a.children != undefined) { - a.children.forEach(b => { - b.code = '[2]' - if (b.children != undefined) { - b.children.forEach(c => { - c.code = '[3]' - }) - } - }) - } - }) - this.upIndex++ - }, - handleNodeClick(data) { - this.checkTreeNode = data - this.selectjilu() - if(data.code=='[3]'){ - console.log(data); - } - }, - nodeOpen(data, node, el) { - $($(el.$el).find('.node_i')[0]).attr('class', 'node_i el-icon-folder-opened') - }, - nodeClose(data, node, el) { - $($(el.$el).find('.node_i')[0]).attr('class', 'node_i el-icon-folder') - }, - handleSelectionChange(val) { - this.selects = val; - }, - dels() { - this.selects.forEach(a => { - for (var b = 0; b < this.tableData.length; b++) { - if (this.tableData[b].id == a.id) { - this.tableData.splice(b, 1) - b-- - } - } - }) - let cc = this.selects.map(el => { - return el.id - }) - this.delete = cc.join(',') - console.log(this.delete); - this.delAllRecord() - this.$message.success('鍒犻櫎瀹屾垚') - }, - //鎵归噺鍒犻櫎 - delAllRecord() { - this.$axios.post(this.$api.url.delAllRecord,{ - ids:this.delete - }) - }, +export default { + data() { + return { + search: { + type: 0, + name: 2, + technology: 2 + }, + options: [], + value: {}, + craftapi: [], + form: { + type: "", + work: "", + craft: "", + name: "", + record: "", + remarks: "", + unit: "" + }, + modifyVisible: false, + dialogVisible: false, + process: {}, + list: [], + checkTreeNode: {}, + tableData: [], + upIndex: 0, + selects: [], + delete: [], + typeselect: 0, + upDia: false, + checkTreeNode: { + id: 2 + }, + upData: {}, + edit: { + name: "", + note: "", + techFather: "", + techName: "", + type: "", + unit: "" + }, + upData: { + id: 0, + name: null, + unit: null, + thing: null + } + }; + }, + mounted() { + this.selectAllleft(); + this.selectjilu(); + }, + methods: { + delQueById() { + this.$axios.get(this.$api.url.delQueById); + }, + childrenClick() {}, + //鏂板 + workevent(val) { + console.log(val); + let idx = this.process.findIndex(el => el.name === val); + this.craftapi = this.process[idx].children; + }, + 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" + } + } + ); + }, + 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" + } + } + ); + }, + add() { + this.dialogVisible = false; + this.addRecord(); + this.selectjilu(); + this.form = {}; + }, + //缂栬緫 this.upData + selecRecord() { + this.$axios + .get(this.$api.url.selecRecord, { + params: { + id: this.upData.id + } + }) + .then(res => { + this.edit = res.data[0]; + // console.log(this.edit); + }); + }, + TYpe(val) { + this.typeselect = val; + console.log(this.typeselect); + this.selectAllleft(); + }, + //涓讳綋宸� + selectAllleft() { + this.$axios + .get(this.$api.url.selectAllleft, { + params: { type: this.typeselect } + }) + .then(res => { + this.list = res.data; + console.log(this.list); + this.selectDataList(); + }); + }, + //selectjilu checkTreeNode + selectjilu() { + this.$axios + .get(this.$api.url.selectjilu, { + params: { id: this.checkTreeNode.id } + }) + .then(res => { + this.tableData = res.data; + console.log(this.tableData); + }); + }, + modify() { + this.modifyVisible = true; + }, + addend() { + this.dialogVisible = true; + this.chooseTechFath(); + }, + filterNode(value, data) { + if (!value) return true; + return data.name.indexOf(value) !== -1; + }, + remove(node, data) { + this.$confirm("鏄惁鍒犻櫎", "璀﹀憡", { + type: "warning" + }) + .then(res => { + const parent = node.parent; + const children = parent.data.children || parent.data; + const index = children.findIndex(d => d.id === data.id); + children.splice(index, 1); + }) + .catch(e => {}); + }, + selectDataList() { + this.list.forEach(a => { + a.code = "[1]"; + if (a.children != undefined) { + a.children.forEach(b => { + b.code = "[2]"; + if (b.children != undefined) { + b.children.forEach(c => { + c.code = "[3]"; + }); + } + }); + } + }); + this.upIndex++; + }, + handleNodeClick(data) { + this.checkTreeNode = data; + this.selectjilu(); + if (data.code == "[3]") { + console.log(data); + } + }, + nodeOpen(data, node, el) { + $($(el.$el).find(".node_i")[0]).attr( + "class", + "node_i el-icon-folder-opened" + ); + }, + nodeClose(data, node, el) { + $($(el.$el).find(".node_i")[0]).attr("class", "node_i el-icon-folder"); + }, + handleSelectionChange(val) { + this.selects = val; + }, + dels() { + this.selects.forEach(a => { + for (var b = 0; b < this.tableData.length; b++) { + if (this.tableData[b].id == a.id) { + this.tableData.splice(b, 1); + b--; + } + } + }); + let cc = this.selects.map(el => { + return el.id; + }); + this.delete = cc.join(","); + console.log(this.delete); + this.delAllRecord(); + this.$message.success("鍒犻櫎瀹屾垚"); + }, + //鎵归噺鍒犻櫎 + delAllRecord() { + this.$axios.post(this.$api.url.delAllRecord, { + ids: this.delete + }); + }, - //鍒犻櫎 - delQueById() { - this.$axios.post(this.$api.url.delQueById,{ - id:this.upData.id - }) - }, - deleteRow(index, rows) { - this.tableData.splice(index,1) - this.upData.id = rows.id - this.delQueById() - }, + //鍒犻櫎 + delQueById() { + this.$axios.post(this.$api.url.delQueById, { + id: this.upData.id + }); + }, + deleteRow(index, rows) { + this.tableData.splice(index, 1); + this.upData.id = rows.id; + this.delQueById(); + }, - upContent(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 - } - }) - this.$message.success('淇敼鎴愬姛') - this.upDia = false - } - } - } + upContent(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; + } + }); + this.$message.success("淇敼鎴愬姛"); + this.upDia = false; + } + } +}; </script> -- Gitblit v1.9.3