From 6516ed63ff4128d1b3b52c00537539be369ce6ee Mon Sep 17 00:00:00 2001
From: Junjie <540245094@qq.com>
Date: 星期二, 02 七月 2024 16:28:03 +0800
Subject: [PATCH] #
---
zy-asrs-admin/src/views/system/dept/index.vue | 261 +++++++++++++++++++++
zy-asrs-wms/src/main/java/com/zy/asrs/wms/utils/CodeBuilder.java | 4
zy-asrs-admin/src/views/system/menu/index.vue | 61 +++-
zy-asrs-admin/src/views/system/user/index.vue | 200 ++++++++--------
zy-asrs-admin/src/locales/en_US.js | 27 ++
zy-asrs-wms/src/main/java/dept.sql | 9
zy-asrs-admin/src/views/system/dept/edit.vue | 118 +++++++++
zy-asrs-admin/src/views/system/menu/edit.vue | 40 ++
8 files changed, 594 insertions(+), 126 deletions(-)
diff --git a/zy-asrs-admin/src/locales/en_US.js b/zy-asrs-admin/src/locales/en_US.js
index 56c5dbc..3cf6b4f 100644
--- a/zy-asrs-admin/src/locales/en_US.js
+++ b/zy-asrs-admin/src/locales/en_US.js
@@ -147,4 +147,31 @@
'db.sys_role.create_time':'CreateTime',
'db.sys_role.update_time':'UpdateTime',
'db.sys_role.memo':'Memo',
+ '':'',
+ '':'',
+ '':'',
+ '':'',
+ '':'',
+ '':'',
+ 'db.sys_menu.name':'Name',
+ 'db.sys_menu.route':'Route',
+ 'db.sys_menu.status':'Status',
+ 'db.sys_menu.create_time':'CreateTime',
+ 'db.sys_menu.update_time':'UpdateTime',
+ 'db.sys_menu.type':'Type',
+ 'db.sys_menu.authority':'Authority',
+ 'db.sys_menu.icon':'Icon',
+ 'db.sys_menu.sort':'Sort',
+ '':'',
+ '':'',
+ '':'',
+ '':'',
+ '':'',
+ '':'',
+ 'db.sys_dept.name':'Name',
+ 'db.sys_dept.leader':'Leader',
+ 'db.sys_dept.status':'Status',
+ 'db.sys_dept.update_time':'UpdateTime',
+ 'db.sys_dept.update_by':'UpdateBy',
+ 'db.sys_dept.sort':'Sort',
};
\ No newline at end of file
diff --git a/zy-asrs-admin/src/views/system/dept/edit.vue b/zy-asrs-admin/src/views/system/dept/edit.vue
new file mode 100644
index 0000000..b7b5ee0
--- /dev/null
+++ b/zy-asrs-admin/src/views/system/dept/edit.vue
@@ -0,0 +1,118 @@
+<script setup>
+import { ref, nextTick } from 'vue';
+import { get, post, postBlob, postForm } from '@/utils/request.js'
+import { formatMessage } from '@/utils/localeUtils.js';
+import { message } from 'ant-design-vue';
+
+const submitButton = ref(null);
+const isSave = ref(true);
+const open = ref(false);
+const initFormData = {}
+let formData = ref(initFormData);
+const treeData = ref(null);
+
+const emit = defineEmits(['tableReload'])
+
+const handleOk = (e) => {
+ nextTick(() => {
+ setTimeout(() => {
+ submitButton.value.$el.click();
+ }, 100);
+ });
+};
+
+const onFinish = values => {
+ // console.log('Success:', values);
+ open.value = false;
+ post(isSave.value ? '/api/dept/save' : '/api/dept/update', formData.value).then((resp) => {
+ let result = resp.data;
+ if (result.code === 200) {
+ message.success(formatMessage('page.update.success', '鏇存柊鎴愬姛'));
+ } else {
+ message.error(result.msg);
+ }
+ emit('tableReload', 'reload')
+ })
+};
+const onFinishFailed = errorInfo => {
+ console.log('Failed:', errorInfo);
+};
+
+const UserQueryList = ref(null);
+UserQuery();
+function UserQuery() {
+ postForm('/api/user/query', {}).then(resp => {
+ let result = resp.data;
+ UserQueryList.value = result.data;
+ })
+}
+
+
+defineExpose({
+ open,
+ formData,
+ initFormData,
+ treeData,
+ isSave,
+})
+
+</script>
+
+<script>
+export default {
+ name: '閮ㄩ棬绠$悊-edit'
+}
+</script>
+
+<template>
+ <div>
+ <a-modal v-model:open="open"
+ :title="isSave ? formatMessage('page.add', '娣诲姞') : formatMessage('page.edit', '缂栬緫')" @ok="handleOk"
+ style="width: 600px;">
+ <a-form :model="formData" name="formTable" :label-col="{ span: 8 }" :wrapper-col="{ span: 16 }"
+ style="display: flex;justify-content: space-between;flex-wrap: wrap;" autocomplete="off"
+ @finish="onFinish" @finishFailed="onFinishFailed">
+ <a-form-item label="涓婄骇閮ㄩ棬" name="parentId" style="width: 250px;"
+ :rules="[{ required: true, message: '涓婄骇鑿滃崟涓嶈兘涓虹┖!' }]">
+ <a-tree-select v-model:value="formData.parentId" show-search style="width: 100%"
+ :dropdown-style="{ maxHeight: '400px', overflow: 'auto' }" :placeholder="formatMessage('page.input', '璇疯緭鍏�')"
+ allow-clea tree-data-simple-mode :tree-data="treeData" tree-node-filter-prop="name"
+ :field-names="{
+ children: 'children',
+ label: 'name',
+ value: 'id',
+ }">
+ <template #title="{ value: id, name }">
+ {{ name }}
+ </template>
+ </a-tree-select>
+ </a-form-item>
+ <a-form-item label="閮ㄩ棬鍚嶇О" name="name" style="width: 250px;" :rules="[{ required: true }]">
+ <a-input v-model:value="formData.name" />
+ </a-form-item>
+ <a-form-item label="璐熻矗浜�" name="leader" style="width: 250px;">
+ <a-input v-model:value="formData.leader" />
+ </a-form-item>
+ <a-form-item label="鎺掑簭" name="sort" style="width: 250px;">
+ <a-input v-model:value="formData.sort" />
+ </a-form-item>
+ <a-form-item label="鐘舵��" name="status" style="width: 250px;">
+ <a-select v-model:value="formData.status" :options="[
+ { label: '姝e父', value: 1 },
+ { label: '绂佺敤', value: 0 },
+ ]">
+ </a-select>
+ </a-form-item>
+ <a-form-item label="澶囨敞" name="memo" style="width: 250px;">
+ <a-input v-model:value="formData.memo" />
+ </a-form-item>
+ <a-form-item>
+ <a-button type="primary" html-type="submit" ref="submitButton"
+ style="visibility: hidden;">Submit</a-button>
+ </a-form-item>
+ </a-form>
+ </a-modal>
+ </div>
+</template>
+
+<style></style>
diff --git a/zy-asrs-admin/src/views/system/dept/index.vue b/zy-asrs-admin/src/views/system/dept/index.vue
new file mode 100644
index 0000000..235c238
--- /dev/null
+++ b/zy-asrs-admin/src/views/system/dept/index.vue
@@ -0,0 +1,261 @@
+<script setup>
+import { getCurrentInstance, ref, computed, reactive } from 'vue';
+import { useRouter } from "vue-router";
+import { get, post, postBlob } from '@/utils/request.js'
+import { message, Modal } from 'ant-design-vue';
+import { logout } from '@/config.js';
+import EditView from './edit.vue'
+import { formatMessage } from '@/utils/localeUtils.js';
+const context = getCurrentInstance()?.appContext.config.globalProperties;
+
+const router = useRouter();
+
+const TABLE_KEY = 'table-dept';
+let currentPage = 1;
+let pageSize = 10;
+const searchInput = ref("")
+const editChild = ref(null)
+
+let tableData = ref([]);
+getPage();
+
+const columns = [
+ {
+ title: formatMessage('db.sys_dept.name', '鍚嶇О'),
+ dataIndex: 'name',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_dept.parent_id', '涓婄骇閮ㄩ棬'),
+ dataIndex: 'parentId',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_dept.parent_name', '涓婄骇閮ㄩ棬鍚�'),
+ dataIndex: 'parentName',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_dept.path', '鍏宠仈璺緞'),
+ dataIndex: 'path',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_dept.path_name', '鍏宠仈璺緞鍚�'),
+ dataIndex: 'pathName',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_dept.full_name', '鍏ㄧО'),
+ dataIndex: 'fullName',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_dept.brief', '绠�杩�'),
+ dataIndex: 'brief',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_dept.code', '鏍囪瘑'),
+ dataIndex: 'code',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_dept.type', '绫诲瀷'),
+ dataIndex: 'type',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_dept.leader', '璐熻矗浜�'),
+ dataIndex: 'leader',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_dept.count', '鏁伴噺'),
+ dataIndex: 'count',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_dept.sort', '鎺掑簭'),
+ dataIndex: 'sort',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_dept.status', '鐘舵��'),
+ dataIndex: 'status$',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_dept.create_time', '娣诲姞鏃堕棿'),
+ dataIndex: 'createTime$',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_dept.create_by', '娣诲姞浜哄憳'),
+ dataIndex: 'createBy$',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_dept.update_time', '淇敼鏃堕棿'),
+ dataIndex: 'updateTime$',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_dept.update_by', '淇敼浜哄憳'),
+ dataIndex: 'updateBy$',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_dept.memo', '澶囨敞'),
+ dataIndex: 'memo',
+ width: 140,
+ },
+
+ {
+ title: formatMessage('common.operation', '鎿嶄綔'),
+ name: 'oper',
+ dataIndex: 'oper',
+ key: 'oper',
+ width: 140,
+ },
+];
+
+const state = reactive({
+ selectedRowKeys: [],
+ loading: false,
+});
+const hasSelected = computed(() => state.selectedRowKeys.length > 0);
+const start = () => {
+ state.loading = true;
+ // ajax request after empty completing
+ setTimeout(() => {
+ state.loading = false;
+ state.selectedRowKeys = [];
+ }, 1000);
+};
+const onSelectChange = selectedRowKeys => {
+ // console.log('selectedRowKeys changed: ', selectedRowKeys);
+ state.selectedRowKeys = selectedRowKeys;
+};
+
+function getPage() {
+ post('/api/dept/tree', {
+ current: currentPage,
+ pageSize: pageSize,
+ condition: searchInput.value
+ }).then((resp) => {
+ let result = resp.data;
+ if (result.code == 200) {
+ let data = result.data;
+ tableData.value = data;
+
+ editChild.value.treeData = [{
+ id: 0,
+ name: '鏍圭洰褰�',
+ children: data
+ }];
+ } else if (result.code === 401) {
+ message.error(result.msg);
+ logout()
+ } else {
+ message.error(result.msg);
+ }
+ })
+}
+
+const handleEdit = (item) => {
+ editChild.value.open = true;
+ editChild.value.formData = item == null ? editChild.value.initFormData : JSON.parse(JSON.stringify(item));
+ editChild.value.isSave = item == null;
+}
+
+const handleDel = (rows) => {
+ Modal.confirm({
+ title: formatMessage('page.delete', '鍒犻櫎'),
+ content: formatMessage('page.delete.confirm', '纭畾鍒犻櫎璇ラ」鍚楋紵'),
+ maskClosable: true,
+ onOk: async () => {
+ const hide = message.loading(formatMessage('common.loading', '璇锋眰涓�'));
+ try {
+ post('/api/dept/remove/' + rows.map((row) => row.id).join(','), {}).then(resp => {
+ let result = resp.data;
+ if (result.code === 200) {
+ message.success(result.msg);
+ } else {
+ message.error(result.msg);
+ }
+ getPage()
+ hide()
+ })
+ } catch (error) {
+ message.error(formatMessage('common.fail', '璇锋眰澶辫触'));
+ }
+ },
+ });
+}
+
+const handleExport = async (intl) => {
+ postBlob('/api/dept/export', {}).then(result => {
+ const blob = new Blob([result.data], { type: 'application/vnd.ms-excel' });
+ window.location.href = window.URL.createObjectURL(blob);
+ return true;
+ })
+};
+
+const onSearch = () => {
+ // console.log('search');
+ getPage()
+}
+
+const onPageChange = (page, size) => {
+ currentPage = page;
+ pageSize = size;
+ getPage();
+}
+
+function handleTableReload(value) {
+ getPage()
+}
+
+</script>
+
+<script>
+export default {
+ name: '閮ㄩ棬绠$悊'
+}
+</script>
+
+<template>
+ <div>
+ <EditView ref="editChild" @tableReload="handleTableReload" />
+ <div class="table-header">
+ <a-input-search v-model:value="searchInput" :placeholder="formatMessage('page.input', '璇疯緭鍏�')"
+ style="width: 200px;" @search="onSearch" />
+ <div class="table-header-right">
+ <a-button @click="handleEdit(null)" type="primary">{{ formatMessage('page.add', '娣诲姞') }}</a-button>
+ <a-button @click="handleExport">{{ formatMessage('page.export', '瀵煎嚭') }}</a-button>
+ </div>
+ </div>
+
+ <a-table :row-selection="{ selectedRowKeys: state.selectedRowKeys, onChange: onSelectChange }"
+ :data-source="tableData" :defaultExpandAllRows="false" key="menu" rowKey="id">
+ <a-table-column :title="formatMessage('db.sys_dept.name', '閮ㄩ棬鍚嶇О')" key="name" data-index="name" />
+ <a-table-column :title="formatMessage('db.sys_dept.leader', '璐熻矗浜�')" key="leader" data-index="leader" />
+ <a-table-column :title="formatMessage('db.sys_dept.sort', '鎺掑簭')" key="sort" data-index="sort" />
+ <a-table-column :title="formatMessage('db.sys_dept.status', '鐘舵��')" key="status$" data-index="status$" />
+ <a-table-column :title="formatMessage('db.sys_dept.update_time', '淇敼鏃堕棿')" key="updateTime$" data-index="updateTime$" />
+ <a-table-column :title="formatMessage('db.sys_dept.update_by', '淇敼浜哄憳')" key="updateBy$" data-index="updateBy$" />
+ <a-table-column :title="formatMessage('common.operation', '鎿嶄綔')" key="oper" data-index="oper">
+ <template #default="{ record }">
+ <div style="display: flex;justify-content: space-evenly;">
+ <a-button type="link" primary @click="handleEdit(record)">{{ formatMessage('page.edit', '缂栬緫') }}</a-button>
+ <a-button type="link" danger @click="handleDel([record])">{{ formatMessage('page.delete', '鍒犻櫎')
+ }}</a-button>
+ </div>
+ </template>
+ </a-table-column>
+ </a-table>
+ </div>
+</template>
+
+<style></style>
diff --git a/zy-asrs-admin/src/views/system/menu/edit.vue b/zy-asrs-admin/src/views/system/menu/edit.vue
index 32e143f..628c9a9 100644
--- a/zy-asrs-admin/src/views/system/menu/edit.vue
+++ b/zy-asrs-admin/src/views/system/menu/edit.vue
@@ -1,12 +1,16 @@
<script setup>
-import { getCurrentInstance, ref, computed, reactive, watch } from 'vue';
+import { getCurrentInstance, ref, nextTick } from 'vue';
import { get, post } from '@/utils/request.js'
import * as Icons from "@ant-design/icons-vue";
+import { formatMessage } from '@/utils/localeUtils.js';
+import { message } from 'ant-design-vue';
const context = getCurrentInstance()?.appContext.config.globalProperties;
const components = {
...Icons,
};
+const submitButton = ref(null);
+const isSave = ref(true);
const open = ref(false);
const initFormData = {
name: null
@@ -17,16 +21,25 @@
const emit = defineEmits(['tableReload'])
const handleOk = (e) => {
- open.value = false;
- console.log(formData.value);
- post('/api/menu/update', formData.value).then((result) => {
- console.log(result);
- emit('tableReload', 'reload')
- })
+ nextTick(() => {
+ setTimeout(() => {
+ submitButton.value.$el.click();
+ }, 100);
+ });
};
const onFinish = values => {
- console.log('Success:', values);
+ // console.log('Success:', values);
+ open.value = false;
+ post(isSave.value ? '/api/menu/save' : '/api/menu/update', formData.value).then((resp) => {
+ let result = resp.data;
+ if (result.code === 200) {
+ message.success(formatMessage('page.update.success', '鏇存柊鎴愬姛'));
+ } else {
+ message.error(result.msg);
+ }
+ emit('tableReload', 'reload')
+ })
};
const onFinishFailed = errorInfo => {
console.log('Failed:', errorInfo);
@@ -37,6 +50,7 @@
formData,
initFormData,
treeData,
+ isSave,
})
</script>
@@ -49,14 +63,16 @@
<template>
<div>
- <a-modal v-model:open="open" :title="formData == null ? '娣诲姞' : '缂栬緫'" @ok="handleOk" style="width: 600px;">
+ <a-modal v-model:open="open"
+ :title="isSave ? formatMessage('page.add', '娣诲姞') : formatMessage('page.edit', '缂栬緫')" @ok="handleOk"
+ style="width: 600px;">
<a-form :model="formData" name="menu" :label-col="{ span: 8 }" :wrapper-col="{ span: 16 }"
style="display: flex;justify-content: space-between;flex-wrap: wrap;" autocomplete="off"
@finish="onFinish" @finishFailed="onFinishFailed">
<a-form-item label="涓婄骇鑿滃崟" name="parentId" style="width: 250px;"
:rules="[{ required: true, message: '涓婄骇鑿滃崟涓嶈兘涓虹┖!' }]">
<a-tree-select v-model:value="formData.parentId" show-search style="width: 100%"
- :dropdown-style="{ maxHeight: '400px', overflow: 'auto' }" placeholder="Please select"
+ :dropdown-style="{ maxHeight: '400px', overflow: 'auto' }" :placeholder="formatMessage('page.input', '璇疯緭鍏�')"
allow-clea tree-data-simple-mode :tree-data="treeData" tree-node-filter-prop="name"
:field-names="{
children: 'children',
@@ -97,6 +113,10 @@
{ label: '姝e父', value: 1 },
]"></a-select>
</a-form-item>
+ <a-form-item>
+ <a-button type="primary" html-type="submit" ref="submitButton"
+ style="visibility: hidden;">Submit</a-button>
+ </a-form-item>
</a-form>
</a-modal>
</div>
diff --git a/zy-asrs-admin/src/views/system/menu/index.vue b/zy-asrs-admin/src/views/system/menu/index.vue
index 6fb0a91..f2054c7 100644
--- a/zy-asrs-admin/src/views/system/menu/index.vue
+++ b/zy-asrs-admin/src/views/system/menu/index.vue
@@ -3,6 +3,9 @@
import { get, post } from '@/utils/request.js'
import * as Icons from "@ant-design/icons-vue";
import EditView from './edit.vue'
+import { message, Modal } from 'ant-design-vue';
+import { formatMessage } from '@/utils/localeUtils.js';
+import { logout } from '@/config.js';
const context = getCurrentInstance()?.appContext.config.globalProperties;
const components = {
...Icons,
@@ -54,8 +57,11 @@
name: '鏍圭洰褰�',
children: data
}];
+ } else if (result.code === 401) {
+ message.error(result.msg);
+ logout()
} else {
-
+ message.error(result.msg);
}
})
}
@@ -63,6 +69,32 @@
const handleEdit = (item) => {
editChild.value.open = true;
editChild.value.formData = item == null ? editChild.value.initFormData : item;
+ editChild.value.isSave = item == null;
+}
+
+const handleDel = (rows) => {
+ Modal.confirm({
+ title: formatMessage('page.delete', '鍒犻櫎'),
+ content: formatMessage('page.delete.confirm', '纭畾鍒犻櫎璇ラ」鍚楋紵'),
+ maskClosable: true,
+ onOk: async () => {
+ const hide = message.loading(formatMessage('common.loading', '璇锋眰涓�'));
+ try {
+ post('/api/menu/remove/' + rows.map((row) => row.id).join(','), {}).then(resp => {
+ let result = resp.data;
+ if (result.code === 200) {
+ message.success(result.msg);
+ } else {
+ message.error(result.msg);
+ }
+ getPage()
+ hide()
+ })
+ } catch (error) {
+ message.error(formatMessage('common.fail', '璇锋眰澶辫触'));
+ }
+ },
+ });
}
const handleExport = async (intl) => {
@@ -96,35 +128,36 @@
<div class="table-header">
<a-input-search v-model:value="searchInput" placeholder="璇疯緭鍏�" style="width: 200px;" @search="onSearch" />
<div class="table-header-right">
- <a-button @click="handleEdit(null)" type="primary">娣诲姞</a-button>
- <a-button @click="handleExport">瀵煎嚭</a-button>
+ <a-button @click="handleEdit(null)" type="primary">{{ formatMessage('page.add', '娣诲姞') }}</a-button>
+ <a-button @click="handleExport">{{ formatMessage('page.export', '瀵煎嚭') }}</a-button>
</div>
</div>
<a-table :row-selection="{ selectedRowKeys: state.selectedRowKeys, onChange: onSelectChange }"
:data-source="tableData" :defaultExpandAllRows="false" key="menu" rowKey="id">
- <a-table-column title="鑿滃崟鍚嶇О" key="name" data-index="name" />
- <a-table-column title="璺敱鍦板潃" key="route" data-index="route" />
- <a-table-column title="绫诲瀷" key="type" data-index="type$">
+ <a-table-column :title="formatMessage('db.sys_menu.name', '鑿滃崟鍚嶇О')" key="name" data-index="name" />
+ <a-table-column :title="formatMessage('db.sys_menu.route', '璺敱鍦板潃')" key="route" data-index="route" />
+ <a-table-column :title="formatMessage('db.sys_menu.type', '绫诲瀷')" key="type" data-index="type$">
<template #default="{ record }">
<span>
<a-tag :color="typeMap[record.type].color">{{ record.type$ }}</a-tag>
</span>
</template>
</a-table-column>
- <a-table-column title="鏉冮檺鏍囪瘑" key="authority" data-index="authority" />
- <a-table-column title="鑿滃崟鍥炬爣" key="icon" data-index="icon">
+ <a-table-column :title="formatMessage('db.sys_menu.authority', '鏉冮檺鏍囪瘑')" key="authority" data-index="authority" />
+ <a-table-column :title="formatMessage('db.sys_menu.icon', '鑿滃崟鍥炬爣')" key="icon" data-index="icon">
<template #default="{ record }">
<component :is="components[ref(record.icon).value]" />
</template>
</a-table-column>
- <a-table-column title="鎺掑簭" key="sort" data-index="sort" />
- <a-table-column title="鐘舵��" key="status$" data-index="status$" />
- <a-table-column title="淇敼鏃堕棿" key="updateTime$" data-index="updateTime$" />
- <a-table-column title="鎿嶄綔" key="oper" data-index="oper">
+ <a-table-column :title="formatMessage('db.sys_menu.sort', '鎺掑簭')" key="sort" data-index="sort" />
+ <a-table-column :title="formatMessage('db.sys_menu.status', '鐘舵��')" key="status$" data-index="status$" />
+ <a-table-column :title="formatMessage('db.sys_menu.update_time', '淇敼鏃堕棿')" key="updateTime$" data-index="updateTime$" />
+ <a-table-column :title="formatMessage('common.operation', '鎿嶄綔')" key="oper" data-index="oper">
<template #default="{ record }">
<div style="display: flex;justify-content: space-evenly;">
- <a-button type="link" primary @click="handleEdit(record)">缂栬緫</a-button>
- <a-button type="link" danger>鍒犻櫎</a-button>
+ <a-button type="link" primary @click="handleEdit(record)">{{ formatMessage('page.edit', '缂栬緫') }}</a-button>
+ <a-button type="link" danger @click="handleDel([record])">{{ formatMessage('page.delete', '鍒犻櫎')
+ }}</a-button>
</div>
</template>
</a-table-column>
diff --git a/zy-asrs-admin/src/views/system/user/index.vue b/zy-asrs-admin/src/views/system/user/index.vue
index d87f625..222d914 100644
--- a/zy-asrs-admin/src/views/system/user/index.vue
+++ b/zy-asrs-admin/src/views/system/user/index.vue
@@ -20,106 +20,106 @@
getPage();
const columns = [
- {
- title: formatMessage('db.sys_user.username', '璐﹀彿'),
- dataIndex: 'username',
- width: 140,
- },
- {
- title: formatMessage('db.sys_user.password', '瀵嗙爜'),
- dataIndex: 'password',
- width: 140,
- },
- {
- title: formatMessage('db.sys_user.nickname', '鏄电О'),
- dataIndex: 'nickname',
- width: 140,
- },
- {
- title: formatMessage('db.sys_user.avatar', '澶村儚'),
- dataIndex: 'avatar',
- width: 140,
- },
- {
- title: formatMessage('db.sys_user.code', '宸ュ彿'),
- dataIndex: 'code',
- width: 140,
- },
- {
- title: formatMessage('db.sys_user.sex', '鎬у埆'),
- dataIndex: 'sex$',
- width: 140,
- },
- {
- title: formatMessage('db.sys_user.phone', '鎵嬫満鍙�'),
- dataIndex: 'phone',
- width: 140,
- },
- {
- title: formatMessage('db.sys_user.email', '閭'),
- dataIndex: 'email',
- width: 140,
- },
- {
- title: formatMessage('db.sys_user.email_verified', '閭楠岃瘉'),
- dataIndex: 'emailVerified$',
- width: 140,
- },
- {
- title: formatMessage('db.sys_user.dept_id', '鎵�灞為儴闂�'),
- dataIndex: 'deptId$',
- width: 140,
- },
- {
- title: formatMessage('db.sys_user.real_name', '鐪熷疄濮撳悕'),
- dataIndex: 'realName',
- width: 140,
- },
- {
- title: formatMessage('db.sys_user.id_card', '韬唤璇佸彿'),
- dataIndex: 'idCard',
- width: 140,
- },
- {
- title: formatMessage('db.sys_user.birthday', '鍑虹敓鏃ユ湡'),
- dataIndex: 'birthday',
- width: 140,
- },
- {
- title: formatMessage('db.sys_user.introduction', '涓汉绠�浠�'),
- dataIndex: 'introduction',
- width: 140,
- },
- {
- title: formatMessage('db.sys_user.status', '鐘舵��'),
- dataIndex: 'status$',
- width: 140,
- },
- {
- title: formatMessage('db.sys_user.create_time', '娣诲姞鏃堕棿'),
- dataIndex: 'createTime$',
- width: 140,
- },
- {
- title: formatMessage('db.sys_user.create_by', '娣诲姞浜哄憳'),
- dataIndex: 'createBy$',
- width: 140,
- },
- {
- title: formatMessage('db.sys_user.update_time', '淇敼鏃堕棿'),
- dataIndex: 'updateTime$',
- width: 140,
- },
- {
- title: formatMessage('db.sys_user.update_by', '淇敼浜哄憳'),
- dataIndex: 'updateBy$',
- width: 140,
- },
- {
- title: formatMessage('db.sys_user.memo', '澶囨敞'),
- dataIndex: 'memo',
- width: 140,
- },
+ {
+ title: formatMessage('db.sys_user.username', '璐﹀彿'),
+ dataIndex: 'username',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_user.password', '瀵嗙爜'),
+ dataIndex: 'password',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_user.nickname', '鏄电О'),
+ dataIndex: 'nickname',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_user.avatar', '澶村儚'),
+ dataIndex: 'avatar',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_user.code', '宸ュ彿'),
+ dataIndex: 'code',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_user.sex', '鎬у埆'),
+ dataIndex: 'sex$',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_user.phone', '鎵嬫満鍙�'),
+ dataIndex: 'phone',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_user.email', '閭'),
+ dataIndex: 'email',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_user.email_verified', '閭楠岃瘉'),
+ dataIndex: 'emailVerified$',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_user.dept_id', '鎵�灞為儴闂�'),
+ dataIndex: 'deptId$',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_user.real_name', '鐪熷疄濮撳悕'),
+ dataIndex: 'realName',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_user.id_card', '韬唤璇佸彿'),
+ dataIndex: 'idCard',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_user.birthday', '鍑虹敓鏃ユ湡'),
+ dataIndex: 'birthday',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_user.introduction', '涓汉绠�浠�'),
+ dataIndex: 'introduction',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_user.status', '鐘舵��'),
+ dataIndex: 'status$',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_user.create_time', '娣诲姞鏃堕棿'),
+ dataIndex: 'createTime$',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_user.create_by', '娣诲姞浜哄憳'),
+ dataIndex: 'createBy$',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_user.update_time', '淇敼鏃堕棿'),
+ dataIndex: 'updateTime$',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_user.update_by', '淇敼浜哄憳'),
+ dataIndex: 'updateBy$',
+ width: 140,
+ },
+ {
+ title: formatMessage('db.sys_user.memo', '澶囨敞'),
+ dataIndex: 'memo',
+ width: 140,
+ },
{
title: formatMessage('common.operation', '鎿嶄綔'),
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/utils/CodeBuilder.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/utils/CodeBuilder.java
index 711137a..fb90abb 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/utils/CodeBuilder.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/utils/CodeBuilder.java
@@ -22,8 +22,8 @@
// generator.username="sa";
// generator.password="Zoneyung@zy56$";
- generator.table="sys_user_login";
- generator.tableName="鐧诲綍鏃ュ織";
+ generator.table="sys_dept";
+ generator.tableName="閮ㄩ棬绠$悊";
generator.packagePath="com.zy.asrs.wms.system";
generator.build();
diff --git a/zy-asrs-wms/src/main/java/dept.sql b/zy-asrs-wms/src/main/java/dept.sql
new file mode 100644
index 0000000..10d1a49
--- /dev/null
+++ b/zy-asrs-wms/src/main/java/dept.sql
@@ -0,0 +1,9 @@
+-- save dept record
+-- mysql
+insert into `sys_menu` ( `name`, `parent_id`, `route`, `component`, `type`, `sort`, `host_id`, `status`) values ( '閮ㄩ棬绠$悊绠$悊', '0', '/system/dept', '/system/dept', '0' , '0', '1' , '1');
+
+insert into `sys_menu` ( `name`, `parent_id`, `type`, `authority`, `sort`, `host_id`, `status`) values ( '鏌ヨ閮ㄩ棬绠$悊', '', '1', 'system:dept:list', '0', '1', '1');
+insert into `sys_menu` ( `name`, `parent_id`, `type`, `authority`, `sort`, `host_id`, `status`) values ( '娣诲姞閮ㄩ棬绠$悊', '', '1', 'system:dept:save', '1', '1', '1');
+insert into `sys_menu` ( `name`, `parent_id`, `type`, `authority`, `sort`, `host_id`, `status`) values ( '淇敼閮ㄩ棬绠$悊', '', '1', 'system:dept:update', '2', '1', '1');
+insert into `sys_menu` ( `name`, `parent_id`, `type`, `authority`, `sort`, `host_id`, `status`) values ( '鍒犻櫎閮ㄩ棬绠$悊', '', '1', 'system:dept:remove', '3', '1', '1');
+
--
Gitblit v1.9.1