From 191c452776f818fe2105ead9270ef8f1f3872b3e Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期六, 23 八月 2025 01:21:28 +0800
Subject: [PATCH] 修改机床导入提示信息
---
src/views/basesetting/machine.vue | 296 +++++++++++++++++++++++++++++++++++++++++++---------------
1 files changed, 218 insertions(+), 78 deletions(-)
diff --git a/src/views/basesetting/machine.vue b/src/views/basesetting/machine.vue
index ed759ad..1e95e38 100644
--- a/src/views/basesetting/machine.vue
+++ b/src/views/basesetting/machine.vue
@@ -1,44 +1,72 @@
<template>
- <basic-container>
- <avue-crud
- :addBtn="false"
- :option="option"
- :table-loading="loading"
- :data="data"
- ref="crud"
- v-model:search="search"
- v-model:page="mypage"
- @search-change="searchChange"
- @search-reset="searchReset"
- @current-change="currentChange"
- @size-change="sizeChange"
- @refresh-change="refreshChange"
- @on-load="onLoad"
- >
- <template #menu-left>
- <el-button type="primary" size="default" icon="el-icon-circle-plus" plain @click="handleExport">瀵煎嚭</el-button>
- <!-- <el-button type="primary" size="default" icon="el-icon-circle-plus" plain @click="handleView">瀵煎叆</el-button> -->
- <el-button type="primary" size="default" icon="el-icon-circle-plus" plain @click="handleAdd">鏂板</el-button>
- </template>
- <template #menu="scope">
- <el-button type="primary" text size="default" icon="el-icon-upload" @click.stop="handleEdit(scope.row, scope.index)">缂栬緫</el-button>
- <el-button type="primary" text size="default" icon="el-icon-upload" @click.stop="handleDel(scope.row, scope.index)">鍒犻櫎</el-button>
- <el-button type="primary" text size="default" icon="el-icon-upload" @click.stop="handleUp(scope.row, scope.index)">浜х敓鏈哄簥鍥炰紶鏈烘瀯鏍�</el-button>
- </template>
+ <el-row>
+ <el-col :span="5">
+ <div class="box">
+ <el-scrollbar>
+ <basic-container>
+ <avue-tree :option="treeOption" :data="treeData" @node-click="nodeClick" />
+ </basic-container>
+ </el-scrollbar>
+ </div>
+ </el-col>
+ <el-col :span="19">
+ <basic-container>
+ <avue-crud
+ :addBtn="false"
+ :option="option"
+ :table-loading="loading"
+ :data="data"
+ ref="crud"
+ v-model:search="search"
+ v-model:page="mypage"
+ @search-change="searchChange"
+ @search-reset="searchReset"
+ @current-change="currentChange"
+ @size-change="sizeChange"
+ @refresh-change="refreshChange"
+ @on-load="onLoad"
+ >
+ <template #menu-left>
+ <div class="menuLeft">
+ <el-button type="primary" size="default" icon="el-icon-circle-plus" plain @click="handleExport">瀵煎嚭</el-button>
+ <!-- <el-upload :show-file-list="false" class="upload-demo"
+ action="/api/blade-mdm/machine/import"
+ :on-change="handleChange">
+ <el-button type="primary" plain size="default">瀵煎叆</el-button>
+ </el-upload> -->
+ <el-button type="primary" plain @click="importAction">瀵煎叆</el-button>
+ <el-button type="primary" size="default" icon="el-icon-circle-plus" plain @click="handleAdd">鏂板</el-button>
+ </div>
- <template #status="{ row }">
- <span>{{ row.status=="1"?"鍚敤":"绂佺敤" }}</span>
- </template>
- </avue-crud>
+ </template>
+ <template #menu="scope">
+ <el-button type="primary" text size="default" icon="el-icon-edit" @click.stop="handleEdit(scope.row, scope.index)">缂栬緫</el-button>
+ <el-button type="primary" text size="default" icon="el-icon-delete" @click.stop="handleDel(scope.row, scope.index)">鍒犻櫎</el-button>
+ <!--
+ <el-button type="primary" text size="default" icon="el-icon-upload" @click.stop="handleUp(scope.row, scope.index)">浜х敓鏈哄簥鍥炰紶鏈烘瀯鏍�</el-button>
+ -->
+ </template>
- <el-dialog :title="machineTitle" append-to-body v-model="editBox" width="60%">
- <avue-form ref="editFormModal1" :option="editFormModal" v-model="editForm" @submit="formSubmit" @resetForm="resetForm">
- <template #ownerDept="{}">
- <el-tree-select v-model="editForm.ownerDept" :data="organizationTreeList"/>
- </template>
- </avue-form>
- </el-dialog>
- </basic-container>
+ <template #status="{ row }">
+ <span>{{ row.status=="1"?"鍚敤":"绂佺敤" }}</span>
+ </template>
+ </avue-crud>
+
+ <el-dialog :title="machineTitle" append-to-body v-model="editBox" width="60%">
+ <avue-form ref="editFormModal1" :option="editFormModal" v-model="editForm" @submit="formSubmit" @resetForm="resetForm">
+ <template #ownerDept="{}">
+ <el-tree-select v-model="editForm.ownerDept" :data="organizationTreeList" :props="treePropsConfig"/>
+ </template>
+ </avue-form>
+ </el-dialog>
+
+ <el-dialog title="" append-to-body v-model="excelBox" width="555px">
+ <avue-form :option="excelOption" v-model="excelForm" :upload-after="uploadAfter">
+ </avue-form>
+ </el-dialog>
+ </basic-container>
+ </el-col>
+ </el-row>
</template>
<script>
@@ -47,10 +75,66 @@
import NProgress from 'nprogress';
import { downloadXls } from '@/utils/util';
import 'nprogress/nprogress.css';
+import { getDeptLazyTree } from '@/api/system/dept';
export default {
data() {
var that = this;
return {
+ excelBox: false,
+ excelOption: {
+ submitBtn: false,
+ emptyBtn: false,
+ column: [
+ {
+ label: '鏂囦欢瀵煎叆',
+ prop: 'file',
+ type: 'upload',
+ drag: true,
+ loadText: '瀵煎叆涓紝璇风◢鍚�',
+ span: 24,
+ propsHttp: {
+ res: 'data',
+ },
+ data: {
+ },
+ tip: '',
+ action: '/blade-mdm/machine/import',
+ },
+ ],
+ },
+ excelForm: {},
+ treeOption: {
+ nodeKey: 'id',
+ lazy: true,
+ treeLoad: function (node, resolve) {
+ const parentId = node.level === 0 ? 0 : node.data.id;
+ getDeptLazyTree(parentId).then(res => {
+ resolve(
+ res.data.data.map(item => {
+ return {
+ ...item,
+ leaf: !item.hasChildren,
+ };
+ })
+ );
+ });
+ },
+ addBtn: false,
+ menu: false,
+ size: 'small',
+ props: {
+ labelText: '鏍囬',
+ label: 'title',
+ value: 'value',
+ children: 'children',
+ },
+ },
+ treeData: [],
+ treePropsConfig: {
+ value: 'id',
+ label: 'title',
+ children: 'children'
+ },
organizationTreeList: [],
machineTitle: "鏂板",
isAdd: true,
@@ -94,6 +178,7 @@
{
label: '鏈哄簥缁�',
prop: 'machineGroupName',
+ filterable:true,
search: true,
type: 'select',
dicUrl: '/blade-system/dict-biz/dictionary?code=machine_group',
@@ -177,6 +262,7 @@
{
label: '鎵�灞炴満搴婄粍',
prop: 'machineGroupCode',
+ filterable:true,
type: 'select',
span: 12,
dicUrl: '/blade-system/dict-biz/dictionary?code=machine_group',
@@ -202,12 +288,13 @@
{
label: '鎵�灞炵粍缁�',
prop: 'ownerDept',
+ type: 'tree',
span: 12,
rules: [
{
required: true,
message: '璇烽�夋嫨鎵�灞炵粍缁�',
- trigger: 'change'
+ trigger: 'click'
}
]
},
@@ -219,7 +306,7 @@
dataType: 'string',
},
{
- label: '绯荤粺鎺у埗',
+ label: '鎺у埗绯荤粺',
prop: 'controlSystem',
type: 'select',
span: 12,
@@ -240,11 +327,27 @@
}]
},
{
+ label: '绋嬪簭涓存椂鐩綍',
+ prop: 'progTempDir',
+ type: 'input',
+ span: 12,
+ dataType: 'string',
+ },
+ {
label: '绋嬪簭涓嬪彂鐩綍',
prop: 'progSendDir',
type: 'input',
span: 12,
dataType: 'string',
+ },
+ {
+ label: '涓嬪彂鐩綍淇濆瓨鏃堕棿',
+ prop: 'sendDirExpiryHours',
+ placeholder:"(灏忔椂)",
+ max:24,
+ min:1,
+ type: 'number',
+ span: 12,
},
{
label: '绋嬪簭鍥炰紶鐩綍',
@@ -253,6 +356,16 @@
span: 12,
dataType: 'string',
},
+ {
+ label: '鍥炰紶鐩綍淇濆瓨鏃堕棿',
+ prop: 'receiveDirExpiryHours',
+ max:24,
+ min:1,
+ placeholder:"(灏忔椂)",
+ type: 'number',
+ span: 12,
+ },
+
{
label: '澶囨敞',
prop: 'remark',
@@ -266,6 +379,33 @@
};
},
methods: {
+ importAction() {
+ this.excelBox = true;
+ },
+ uploadAfter(res, done, loading, column) {
+ window.console.log('res',res);
+ //console.log('res',res)
+ if(res.failure==0 && res.success>0){
+ //鏈夋垚鍔熺殑锛屽叧闂璇濇
+ this.excelBox = false;
+ this.$message.success(res.message);
+ this.onLoad(this.page);
+ //done();
+ }else{
+ //0鎴愬姛鐨勶紝浠呮彁绀�
+ this.$message.info("鎴愬姛"+res.success+",澶辫触"+res.failure+":"+res.message);
+ done();
+ }
+
+ },
+ handleChange(a,b,c) {
+ console.log(a,b,c);
+ },
+ nodeClick(data) {
+ this.treeDeptId = data.id;
+ this.mypage.current = 1;
+ this.onLoad(this.page);
+ },
handleAdd() {
this.machineTitle = "鏂板";
this.isAdd = true;
@@ -393,28 +533,31 @@
},
onLoad() {
- this.loading = true;
- var obj = {
- keyword: this.search.keyword,
- machineGroupCode: this.search.machineGroupName,
- current: this.mypage.current,
- size: this.mypage.size,
- }
- axios({
- url: '/blade-mdm/machine/page',
- method: 'get',
- params: obj,
- }).then(
- res => {
- const data = res.data.data;
- this.mypage.total = data.total;
- this.data = data.records;
- this.loading = false;
- },
- error => {
-
+ this.$nextTick(()=> {
+ this.loading = true;
+ var obj = {
+ keyword: this.search.keyword,
+ machineGroupCode: this.search.machineGroupName,
+ current: this.mypage.current,
+ size: this.mypage.size,
+ deptId: this.treeDeptId
}
- );
+ axios({
+ url: '/blade-mdm/machine/page',
+ method: 'get',
+ params: obj,
+ }).then(
+ res => {
+ const data = res.data.data;
+ this.mypage.total = data.total;
+ this.data = data.records;
+ this.loading = false;
+ },
+ error => {
+
+ }
+ );
+ })
},
traversalLabelValueToTree(tree) { //閬嶅巻鏁扮粍
return tree.map(node => {
@@ -432,26 +575,23 @@
});
}
},
- mounted() {
- //鍒ゆ柇鐗堟湰 0:娑夊瘑缃戯紝1:宸ユ帶缃戯紱//宸ユ帶缃�5涓紝娑夊瘑缃�4涓� 宸ユ帶缃戜笉鍋氫簡
- // 宸ユ帶缃戞槸/blade-mdm/system/dept/lazy-list
- // 娑夊瘑缃戞槸/blade-mdm/dept/lazy-list
- axios({url: '/blade-mdm/system/param/getValue?paramKey=networkType',method: 'get'}).then(res => {
- // if(res.data.data === "0") {
- // var aurl = "/blade-mdm/dept/lazy-list";
- // }else {
- // var aurl = "/blade-mdm/system/dept/lazy-list";
- // }
- var aurl = "/blade-mdm/system/dept/lazy-list";
- axios({url: aurl,method: 'get'}).then(resp => {
- this.organizationTreeList = this.traversalLabelValueToTree(resp.data.data);
- })
- }
- );
+ mounted() {
+ //鎵�灞炵粍缁� /api/blade-system/dept/tree
+ axios({url: '/blade-system/dept/tree',method: 'get'}).then(resp => {
+ this.organizationTreeList = this.traversalLabelValueToTree(resp.data.data);
+ })
}
};
</script>
<style lang="scss">
-
+.upload-demo {
+ display: inline-block;
+ margin-left: 6px;
+ margin-right: 6px;
+}
+.menuLeft {
+ display: flex;
+ align-items: center;
+}
</style>
--
Gitblit v1.9.3