From 8b8b0c54a1d9a164b652bed0bd47144b40884d41 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E5=BF=97=E5=BC=BA?= <357099073@qq.com> Date: Fri, 7 Nov 2025 17:38:59 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=AD=97=E5=85=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pc/src/api/dict.js | 108 +++++ pc/src/components/CommonAside.vue | 206 +++++----- pc/src/views/system/dict/index.vue | 616 +++++++++++++++++++++++++++++ server/controllers/dict.go | 511 ++++++++++++++++++++++++ server/models/dict.go | 58 +++ server/models/permission.go | 52 ++- server/models/user.go | 12 +- server/routers/router.go | 8 + server/services/dict.go | 373 +++++++++++++++++ server/sql/dict_tables.sql | 45 +++ 10 files changed, 1892 insertions(+), 97 deletions(-) create mode 100644 pc/src/api/dict.js create mode 100644 pc/src/views/system/dict/index.vue create mode 100644 server/controllers/dict.go create mode 100644 server/models/dict.go create mode 100644 server/services/dict.go create mode 100644 server/sql/dict_tables.sql diff --git a/pc/src/api/dict.js b/pc/src/api/dict.js new file mode 100644 index 0000000..c67a952 --- /dev/null +++ b/pc/src/api/dict.js @@ -0,0 +1,108 @@ +import request from '@/utils/request' + +// 获取字典类型列表 +export function getDictTypes(params) { + return request({ + url: '/api/dict/types', + method: 'get', + params + }) +} + +// 根据ID获取字典类型 +export function getDictTypeById(id) { + return request({ + url: `/api/dict/types/${id}`, + method: 'get' + }) +} + +// 添加字典类型 +export function addDictType(data) { + return request({ + url: '/api/dict/types', + method: 'post', + data + }) +} + +// 更新字典类型 +export function updateDictType(id, data) { + return request({ + url: `/api/dict/types/${id}`, + method: 'put', + data + }) +} + +// 删除字典类型 +export function deleteDictType(id) { + return request({ + url: `/api/dict/types/${id}`, + method: 'delete' + }) +} + +// 获取字典项列表 +export function getDictItems(params) { + return request({ + url: '/api/dict/items', + method: 'get', + params + }) +} + +// 根据ID获取字典项 +export function getDictItemById(id) { + return request({ + url: `/api/dict/items/${id}`, + method: 'get' + }) +} + +// 添加字典项 +export function addDictItem(data) { + return request({ + url: '/api/dict/items', + method: 'post', + data + }) +} + +// 更新字典项 +export function updateDictItem(id, data) { + return request({ + url: `/api/dict/items/${id}`, + method: 'put', + data + }) +} + +// 删除字典项 +export function deleteDictItem(id) { + return request({ + url: `/api/dict/items/${id}`, + method: 'delete' + }) +} + +// 根据字典编码获取字典项(用于业务查询) +export function getDictItemsByCode(code, includeDisabled = false) { + return request({ + url: `/api/dict/items/code/${code}`, + method: 'get', + params: { + include_disabled: includeDisabled ? '1' : '0' + } + }) +} + +// 批量更新字典项排序 +export function batchUpdateDictItemSort(data) { + return request({ + url: '/api/dict/items/sort', + method: 'put', + data + }) +} + diff --git a/pc/src/components/CommonAside.vue b/pc/src/components/CommonAside.vue index 489969d..131fff6 100644 --- a/pc/src/components/CommonAside.vue +++ b/pc/src/components/CommonAside.vue @@ -1,9 +1,11 @@