diff --git a/src/api/friendlink.js b/src/api/friendlink.js new file mode 100644 index 0000000..cb288c6 --- /dev/null +++ b/src/api/friendlink.js @@ -0,0 +1,77 @@ +import request from '@/utils/request' + +/** + * 获取友情链接列表 + * @param {Object} params - 查询参数 + * @returns {Promise} + */ +export function getFriendlinkList(params) { + return request({ + url: '/admin/friendlinks', + method: 'get', + params + }) +} + +/** + * 获取所有友情链接(下拉选择用) + * @returns {Promise} + */ +export function getAllFriendlinks() { + return request({ + url: '/admin/friendlinks/all', + method: 'get' + }) +} + +/** + * 添加友情链接 + * @param {Object} data - 链接数据 + * @returns {Promise} + */ +export function addFriendlink(data) { + return request({ + url: '/admin/friendlinks', + method: 'post', + data + }) +} + +/** + * 更新友情链接 + * @param {number} id - 链接ID + * @param {Object} data - 链接数据 + * @returns {Promise} + */ +export function updateFriendlink(id, data) { + return request({ + url: `/admin/friendlinks/${id}`, + method: 'put', + data + }) +} + +/** + * 删除友情链接 + * @param {number} id - 链接ID + * @returns {Promise} + */ +export function deleteFriendlink(id) { + return request({ + url: `/admin/friendlinks/${id}`, + method: 'delete' + }) +} + +/** + * 批量删除友情链接 + * @param {Array} ids - 链接ID数组 + * @returns {Promise} + */ +export function batchDeleteFriendlinks(ids) { + return request({ + url: '/admin/friendlinks/batchdelete', + method: 'post', + data: { ids } + }) +} diff --git a/src/utils/pathResolver.js b/src/utils/pathResolver.js index e3bfce2..e98ae83 100644 --- a/src/utils/pathResolver.js +++ b/src/utils/pathResolver.js @@ -15,15 +15,20 @@ Object.keys(viewsModules).forEach(relativePath => { // 统一去掉扩展名进行存储,方便各种格式匹配 const baseNoExt = relativePath.replace('../views/', '').replace('.vue', ''); + const baseWithExt = relativePath.replace('../views/', ''); // 1. 存储标准路径 pathMap.set(relativePath, viewsModules[relativePath]); // 2. 存储 @/views 路径 pathMap.set(relativePath.replace('../views', '@/views'), viewsModules[relativePath]); - // 3. 存储 /system/users 格式 + // 3. 存储 /system/users 格式(不带扩展名) pathMap.set(`/${baseNoExt}`, viewsModules[relativePath]); - // 4. 存储 system/users 格式 + // 4. 存储 system/users 格式(不带扩展名) pathMap.set(baseNoExt, viewsModules[relativePath]); + // 5. 存储 /system/users.vue 格式(带扩展名) + pathMap.set(`/${baseWithExt}`, viewsModules[relativePath]); + // 6. 存储 system/users.vue 格式(带扩展名) + pathMap.set(baseWithExt, viewsModules[relativePath]); }); /** diff --git a/src/views/apps/cms/friendlink/components/edit.vue b/src/views/apps/cms/friendlink/components/edit.vue new file mode 100644 index 0000000..2f3c830 --- /dev/null +++ b/src/views/apps/cms/friendlink/components/edit.vue @@ -0,0 +1,302 @@ + + + + + diff --git a/src/views/apps/cms/friendlink/index.vue b/src/views/apps/cms/friendlink/index.vue new file mode 100644 index 0000000..f9ca38f --- /dev/null +++ b/src/views/apps/cms/friendlink/index.vue @@ -0,0 +1,324 @@ + + + + +