diff --git a/sub-government-affairs-service/src/apis/system/dept.js b/sub-government-affairs-service/src/apis/system/dept.js new file mode 100644 index 0000000..e109ac7 --- /dev/null +++ b/sub-government-affairs-service/src/apis/system/dept.js @@ -0,0 +1,58 @@ +import request from '@/utils/axios'; + +/** + * @Title: 列表 + */ +export function GetEntityList(params = {}) { + return request('/system/dept/list', { + method: 'GET', + params, + }); +} + +/** + * @Title: 信息 + */ +export function GetEntity(id) { + return request(`/system/dept/list/exclude/${id}`, { + method: 'GET', + }); +} + +/** + * @Title: 新增 + */ +export function AddEntity(data = {}) { + return request('/system/dept', { + method: 'POST', + data, + }); +} + +/** + * @Title: 修改 + */ +export function UpdateEntity(data = {}) { + return request('/system/dept', { + method: 'PUT', + data, + }); +} + +/** + * @Title: 删除 + */ +export function DeleteEntity(params = {}) { + return request(`/system/dict/type/${params.id}`, { + method: 'DELETE', + }); +} + +/** + * @Title: 查询部门列表(排除节点) + */ +export function GetDeptExcludeChild(id) { + return request(`/system/dept/list/exclude/${id}`, { + method: 'GET', + }); +} diff --git a/sub-government-affairs-service/src/apis/system/dict.js b/sub-government-affairs-service/src/apis/system/dict.js new file mode 100644 index 0000000..ab163c6 --- /dev/null +++ b/sub-government-affairs-service/src/apis/system/dict.js @@ -0,0 +1,49 @@ +import request from '@/utils/axios'; + +/** + * @Title: 列表 + */ +export function GetEntityList(params = {}) { + return request('/system/dict/data/list', { + method: 'GET', + params, + }); +} + +/** + * @Title: 根据字典类型查询字典数据信息 + */ +export function GetDict(dictType) { + return request(`/system/dict/data/list/${dictType}`, { + method: 'GET', + }); +} + +/** + * @Title: 新增 + */ +export function AddEntity(data = {}) { + return request('/system/dict/data', { + method: 'POST', + data, + }); +} + +/** + * @Title: 修改 + */ +export function UpdateEntity(data = {}) { + return request('/system/dict/data', { + method: 'PUT', + data, + }); +} + +/** + * @Title: 删除 + */ +export function DeleteEntity(params = {}) { + return request(`/system/dict/data/${params.id}`, { + method: 'DELETE', + }); +} diff --git a/sub-government-affairs-service/src/apis/system/dictType.js b/sub-government-affairs-service/src/apis/system/dictType.js new file mode 100644 index 0000000..b43b9db --- /dev/null +++ b/sub-government-affairs-service/src/apis/system/dictType.js @@ -0,0 +1,58 @@ +import request from '@/utils/axios'; + +/** + * @Title: 列表 + */ +export function GetEntityList(params = {}) { + return request('/system/dict/type/list', { + method: 'GET', + params, + }); +} + +/** + * @Title: 信息 + */ +export function GetEntity(dictId) { + return request(`/system/dict/type/list/${dictId}`, { + method: 'GET', + }); +} + +/** + * @Title: 新增 + */ +export function AddEntity(data = {}) { + return request('/system/dict/type', { + method: 'POST', + data, + }); +} + +/** + * @Title: 修改 + */ +export function UpdateEntity(data = {}) { + return request('/system/dict/type', { + method: 'PUT', + data, + }); +} + +/** + * @Title: 删除 + */ +export function DeleteEntity(params = {}) { + return request(`/system/dict/type/${params.id}`, { + method: 'DELETE', + }); +} + +/** + * @Title: 获取字典选择框列表 + */ +export function GetEntityOption() { + return request('system/dict/type/optionselect', { + method: 'GET', + }); +} diff --git a/sub-government-affairs-service/src/router/index.js b/sub-government-affairs-service/src/router/index.js index 4b6872f..b1ca217 100644 --- a/sub-government-affairs-service/src/router/index.js +++ b/sub-government-affairs-service/src/router/index.js @@ -3,7 +3,7 @@ * @Author: zenghua.wang * @Date: 2023-06-20 11:48:41 * @LastEditors: zenghua.wang - * @LastEditTime: 2025-03-20 14:40:44 + * @LastEditTime: 2025-03-26 16:14:45 */ import { createRouter, createWebHistory } from 'vue-router'; import Layout from '@/layouts/index.vue'; @@ -13,6 +13,7 @@ import traceRouter from './modules/trace'; import productOperateMainRoutes from './modules/productOperateMain'; import inputSuppliesRoutes from './modules/inputSupplies'; import plantingAndBreedingRouter from './modules/plantingAndBreeding'; +import systemRouter from './modules/system'; export const constantRoutes = [ { @@ -47,6 +48,7 @@ export const constantRoutes = [ ...inputSuppliesRoutes, ...plantingAndBreedingRouter, ...traceRouter, + ...systemRouter, ]; /** diff --git a/sub-government-affairs-service/src/router/modules/system.js b/sub-government-affairs-service/src/router/modules/system.js new file mode 100644 index 0000000..34badff --- /dev/null +++ b/sub-government-affairs-service/src/router/modules/system.js @@ -0,0 +1,25 @@ +import Layout from '@/layouts/index.vue'; + +export default [ + { + path: '/sub-government-affairs-service/system', + name: 'system', + component: Layout, + redirect: '/sub-government-affairs-service/system-dict', + meta: { title: '系统管理', icon: 'Document' }, + children: [ + { + path: '/sub-government-affairs-service/system-dict-type', + component: () => import('@/views/system/dict/type.vue'), + name: 'system-dict-type', + meta: { title: '字典类型', icon: 'Document' }, + }, + { + path: '/sub-government-affairs-service/system-dict', + component: () => import('@/views/system/dict/index.vue'), + name: 'system-dict', + meta: { title: '字典管理', icon: 'Document' }, + }, + ], + }, +]; diff --git a/sub-government-affairs-service/src/utils/index.js b/sub-government-affairs-service/src/utils/index.js index fb825cc..34eb2bf 100644 --- a/sub-government-affairs-service/src/utils/index.js +++ b/sub-government-affairs-service/src/utils/index.js @@ -3,7 +3,7 @@ * @Author: zenghua.wang * @Date: 2022-02-23 21:12:37 * @LastEditors: zenghua.wang - * @LastEditTime: 2025-03-24 10:05:36 + * @LastEditTime: 2025-03-27 15:43:36 */ import lodash from 'lodash'; import dayjs from 'dayjs'; @@ -259,25 +259,30 @@ export const blobToJSON = (blob) => { * @param tree * @returns */ -export const getTree = (tree = []) => { - tree.forEach((item) => { - delete item.children; +export const getTree = (data, id = 'id', parentId = 'parentId', children = 'children') => { + data.forEach((item) => { + delete item[children]; }); + const map = {}; - tree.forEach((item) => { - map[item.id] = item; + data.forEach((item) => { + map[item[id]] = item; }); - const arr = []; - tree.forEach((item) => { - const parent = map[item.parentId]; + + const tree = []; + data.forEach((item) => { + const parent = map[item[parentId]]; if (parent) { - (parent.children || (parent.children = [])).push(item); + parent[children] = parent[children] || []; + parent[children].push(item); } else { - arr.push(item); + tree.push(item); } }); - return arr; + + return tree; }; + /** * @Title 获取路由中的参数 * @param name diff --git a/sub-government-affairs-service/src/views/system/dept/index.vue b/sub-government-affairs-service/src/views/system/dept/index.vue new file mode 100644 index 0000000..82169b5 --- /dev/null +++ b/sub-government-affairs-service/src/views/system/dept/index.vue @@ -0,0 +1,239 @@ + + diff --git a/sub-government-affairs-service/src/views/system/dict/index.vue b/sub-government-affairs-service/src/views/system/dict/index.vue new file mode 100644 index 0000000..fe3b860 --- /dev/null +++ b/sub-government-affairs-service/src/views/system/dict/index.vue @@ -0,0 +1,283 @@ + + diff --git a/sub-government-affairs-service/src/views/system/dict/type.vue b/sub-government-affairs-service/src/views/system/dict/type.vue new file mode 100644 index 0000000..94e0b9c --- /dev/null +++ b/sub-government-affairs-service/src/views/system/dict/type.vue @@ -0,0 +1,254 @@ + +