Initial commit

This commit is contained in:
danshihao
2023-11-14 15:33:22 +08:00
commit 5ef2186398
48 changed files with 22347 additions and 0 deletions
+230
View File
@@ -0,0 +1,230 @@
import { getAction, httpAction, postAction, putAction } from '@/api/manage'
import Vue from 'vue'
import { UI_CACHE_DB_DICT_DATA } from '@/store/mutation-types'
// 角色管理
const addRole = (params) => postAction('/sys/role/add', params)
const editRole = (params) => postAction('/sys/role/edit', params)
const checkRoleCode = (params) => getAction('/sys/role/checkRoleCode', params)
const queryall = (params) => getAction('/sys/role/queryall', params)
// 用户管理
const addUser = (params) => postAction('/sys/user/add', params)
const editUser = (params) => postAction('/sys/user/edit', params)
const queryUserRole = (params) => getAction('/sys/user/queryUserRole', params)
const getUserList = (params) => getAction('/sys/user/page', params)
const frozenBatch = (params) => postAction('/sys/user/frozenBatch', params)
// 验证用户是否存在
const checkOnlyUser = (params) => getAction('/sys/user/checkOnlyUser', params)
// 改变密码
const changePassword = (params) => postAction('/sys/user/changePassword', params)
// 单点登录获取用户信息
const getSSOUserInfo = (params) => postAction('/iam/loginByOauth2', params)
// 权限管理
const addPermission = (params) => postAction('/sys/permission/add', params)
const editPermission = (params) => postAction('/sys/permission/edit', params)
const getPermissionList = (params) => getAction('/sys/permission/page', params)
const getSystemMenuList = (params) => getAction('/sys/permission/getSystemMenuList', params)
const getSystemSubmenu = (params) => getAction('/sys/permission/getSystemSubmenu', params)
const getSystemSubmenuBatch = (params) => getAction('/sys/permission/getSystemSubmenuBatch', params)
const queryTreeList = (params) => getAction('/sys/permission/queryTreeList', params)
const queryTreeListForRole = (params) => getAction('/sys/role/queryTreeList', params)
const queryListAsync = (params) => getAction('/sys/permission/queryListAsync', params)
const queryRolePermission = (params) => getAction('/sys/permission/queryRolePermission', params)
const saveRolePermission = (params) => postAction('/sys/permission/saveRolePermission', params)
const queryPermissionsByUser = () => getAction('/sys/permission/getUserPermissionByToken')
const loadAllRoleIds = (params) => getAction('/sys/permission/loadAllRoleIds', params)
const getPermissionRuleList = (params) => getAction('/sys/permission/getPermRuleListByPermId', params)
const queryPermissionRule = (params) => getAction('/sys/permission/queryPermissionRule', params)
// 部门管理
const queryDepartTreeList = (params) => getAction('/sys/sysDepart/queryTreeList', params)
const queryDepartTreeSync = (params) => getAction('/sys/sysDepart/queryDepartTreeSync', params)
const queryIdTree = (params) => getAction('/sys/sysDepart/queryIdTree', params)
const queryParentName = (params) => getAction('/sys/sysDepart/queryParentName', params)
const searchByKeywords = (params) => getAction('/sys/sysDepart/searchBy', params)
const deleteByDepartId = (params) => postAction('/sys/sysDepart/delete', params)
// 二级部门管理
const queryDepartPermission = (params) => getAction('/sys/permission/queryDepartPermission', params)
const saveDepartPermission = (params) => postAction('/sys/permission/saveDepartPermission', params)
const queryTreeListForDeptRole = (params) => getAction('/sys/sysDepartPermission/queryTreeListForDeptRole', params)
const queryDeptRolePermission = (params) => getAction('/sys/sysDepartPermission/queryDeptRolePermission', params)
const queryMyDepartTreeList = (params) => getAction('/sys/sysDepart/queryMyDeptTreeList', params)
// 日志管理
const deleteLog = (params) => postAction('/sys/log/delete', params)
const deleteLogList = (params) => postAction('/sys/log/deleteBatch', params)
// 数据字典
const addDict = (params) => postAction('/sys/dict/add', params)
const editDict = (params) => postAction('/sys/dict/edit', params)
const treeList = (params) => getAction('/sys/dict/treeList', params)
const queryDictName = (params) => getAction('/sys/dict/queryDictName', params)
const addDictItem = (params) => postAction('/sys/dictItem/add', params)
const editDictItem = (params) => postAction('/sys/dictItem/edit', params)
// 获得数据字典的树形格式数据
const getDictTreeList = (params) => getAction('/sys/dictItem/treeList', params)
// 获取能在form中使用的数据字典树形格式数据
const getFormDictTreeList = (params) => getAction('/sys/dictItem/treeListOption', params)
// 通过code值获取字典数据
const getDictByCode = (params) => getAction('/sys/dictItem/listByCodes', params)
// 字典标签专用(通过code获取字典数组)
export const ajaxGetDictItems = (code, params) => getAction(`/sys/dict/getDictItems/${code}`, params)
// 从缓存中获取字典配置
function getDictItemsFromCache (dictCode) {
if (Vue.ls.get(UI_CACHE_DB_DICT_DATA) && Vue.ls.get(UI_CACHE_DB_DICT_DATA)[dictCode] && Vue.ls.get(UI_CACHE_DB_DICT_DATA)[dictCode].length > 0) {
return Vue.ls.get(UI_CACHE_DB_DICT_DATA)[dictCode]
}
}
// 系统通告
const doReleaseData = (params) => getAction('/sys/annountCement/doReleaseData', params)
const doReovkeData = (params) => getAction('/sys/annountCement/doReovkeData', params)
// 获取系统访问量
const getLoginfo = (params) => getAction('/sys/loginfo', params)
const getVisitInfo = (params) => getAction('/sys/visitInfo', params)
// 根据部门主键查询用户信息
const queryUserByDepId = (params) => getAction('/sys/user/queryUserByDepId', params)
// 重复校验
const duplicateCheck = (params) => getAction('/sys/duplicate/check', params)
// 加载分类字典
const loadCategoryData = (params) => getAction('/sys/category/loadAllData', params)
const checkRuleByCode = (params) => getAction('/sys/checkRule/checkByCode', params)
// 加载我的通告信息
const getUserNoticeInfo = (params) => getAction('/sys/sysAnnouncementSend/getMyAnnouncementSend', params)
const getTransitURL = url => `/sys/common/transitRESTful?url=${encodeURIComponent(url)}`
// 中转HTTP请求
export const transitRESTful = {
get: (url, parameter) => getAction(getTransitURL(url), parameter),
post: (url, parameter) => postAction(getTransitURL(url), parameter),
put: (url, parameter) => putAction(getTransitURL(url), parameter),
http: (url, parameter) => httpAction(getTransitURL(url), parameter)
}
// 标签管理- 展示区域查询接口
const getShowAreaData = (params) => getAction('/tag/LawsArea/queryShowArea', params)
// 标签管理-展示区域管理-新增
const addAreaData = (params) => postAction('/tag/LawsArea/add', params)
// 标签管理-展示区域管理-编辑
const editAreaData = (params) => postAction('/tag/LawsArea/edit', params)
// 标签管理- 新增
const addTag = (params) => postAction('/tag/lawsTag/add', params)
// 标签管理- 编辑
const editTag = (params) => postAction('/tag/lawsTag/edit', params)
// 标签内容管理- 新增
const addCategoryItem = (params) => postAction('/sys/category/add', params)
const editCategoryItem = (params) => postAction('/sys/category/edit', params)
// 通过文件的id获取文件的相应信息
const getFileInfo = (params) => getAction('/sys/oss/file/queryById', params)
// 标准选择框,分页查询标准数据
const getStandardList = (params) => getAction('/laws/standard/common/getManyStandardSelectionBox', params)
// 内部工作组,左侧树查询
const getWorkGroupTreeList = (params) => getAction('/sys/lawsWorkingGroup/list', params)
// 企业级别映射管理,获取列表
const getEnterpriseLevelMapList = (params) => getAction('/sys/lawsGrade/list', params)
// ASMS接口管理-新增
const addAsmsInterface = (params) => postAction('/docking/asms/api/lawsAsmsOpenApi/add', params)
// ASMS接口管理-编辑
const editAsmsInterface = (params) => postAction('/docking/asms/api/lawsAsmsOpenApi/edit', params)
// ASMS接口管理-查看
const getAsmsInterfaceById = (params) => getAction('/docking/asms/api/lawsAsmsOpenApi/getInfoById', params)
// ASMS接口管理-同步
const syncAsmsInterface = (params) => getAction('/docking/asms/api/lawsAsmsOpenApi/syncBatch', params)
// ASMS接口管理-删除字典配置项
const batchDelDictItemAsmsInterface = (params) => getAction('/docking/asms/api/lawsAsmsOpenApi/removeDictItemBatch', params)
export {
addRole,
editRole,
checkRoleCode,
addUser,
editUser,
queryUserRole,
getUserList,
queryall,
frozenBatch,
checkOnlyUser,
changePassword,
getPermissionList,
addPermission,
editPermission,
queryTreeList,
queryListAsync,
queryRolePermission,
saveRolePermission,
queryPermissionsByUser,
loadAllRoleIds,
getPermissionRuleList,
queryPermissionRule,
queryDepartTreeList,
queryDepartTreeSync,
queryIdTree,
queryParentName,
searchByKeywords,
deleteByDepartId,
deleteLog,
deleteLogList,
addDict,
editDict,
treeList,
queryDictName,
addDictItem,
editDictItem,
getDictTreeList,
getFormDictTreeList,
getDictByCode,
doReleaseData,
doReovkeData,
getLoginfo,
getVisitInfo,
queryUserByDepId,
duplicateCheck,
queryTreeListForRole,
getSystemMenuList,
getSystemSubmenu,
getSystemSubmenuBatch,
loadCategoryData,
checkRuleByCode,
queryDepartPermission,
saveDepartPermission,
queryTreeListForDeptRole,
queryDeptRolePermission,
queryMyDepartTreeList,
getUserNoticeInfo,
getDictItemsFromCache,
getShowAreaData,
addAreaData,
editAreaData,
getFileInfo,
addTag,
editTag,
addCategoryItem,
editCategoryItem,
getStandardList,
getWorkGroupTreeList,
getEnterpriseLevelMapList,
getSSOUserInfo,
addAsmsInterface,
editAsmsInterface,
getAsmsInterfaceById,
syncAsmsInterface,
batchDelDictItemAsmsInterface
}
+10
View File
@@ -0,0 +1,10 @@
const api = {
Login: '/sys/login',
Logout: '/sys/logout',
ForgePassword: '/auth/forge-password',
Register: '/auth/register',
SendSms: '/account/sms',
// get my info
UserInfo: '/user/info'
}
export default api
+87
View File
@@ -0,0 +1,87 @@
import api from './index'
import { axios } from '@/utils/request'
/**
* login func
* parameter: {
* username: '',
* password: '',
* remember_me: true,
* captcha: '12345'
* }
* @param parameter
* @returns {*}
*/
export function login (parameter) {
return axios({
url: '/sys/login',
method: 'post',
data: parameter
})
}
export function phoneLogin (parameter) {
return axios({
url: '/sys/phoneLogin',
method: 'post',
data: parameter
})
}
export function getSmsCaptcha (parameter) {
return axios({
url: api.SendSms,
method: 'post',
data: parameter
})
}
// export function getInfo() {
// return axios({
// url: '/api/user/info',
// method: 'get',
// headers: {
// 'Content-Type': 'application/json;charset=UTF-8'
// }
// })
// }
export function logout (logoutToken) {
return axios({
url: '/sys/logout',
method: 'post',
headers: {
'Content-Type': 'application/json;charset=UTF-8',
'X-Access-Token': logoutToken
}
})
}
/**
* 第三方登录
* @param token
* @param thirdType
* @returns {*}
*/
export function thirdLogin (token, thirdType) {
return axios({
url: `/sys/thirdLogin/getLoginUser/${token}/${thirdType}`,
method: 'get',
headers: {
'Content-Type': 'application/json;charset=UTF-8'
}
})
}
/**
* 强退其他账号
* @returns {*}
* @param parameter
*/
export function forceLogout (parameter) {
return axios({
url: '/sys/online/forceLogout',
method: 'post',
data: parameter
})
}
+228
View File
@@ -0,0 +1,228 @@
import Vue from 'vue'
import { axios } from '@/utils/request'
import { ACCESS_TOKEN } from '@/store/mutation-types'
import signMd5Utils from '@/utils/encryption/signMd5Utils'
const api = {
user: '/mock/api/user',
role: '/mock/api/role',
service: '/mock/api/service',
permission: '/mock/api/permission',
permissionNoPager: '/mock/api/permission/no-pager'
}
export default api
// post
export function postAction (url, parameter) {
const sign = signMd5Utils.getSign(url, parameter)
// 将签名和时间戳,添加在请求接口 Header
const signHeader = { 'X-Sign': sign, 'X-TIMESTAMP': signMd5Utils.getDateTimeToString() }
return axios({
url: url,
method: 'post',
data: parameter,
headers: signHeader
})
}
// post method= {post | put}
export function httpAction (url, parameter, method) {
const sign = signMd5Utils.getSign(url, parameter)
// 将签名和时间戳,添加在请求接口 Header
const signHeader = { 'X-Sign': sign, 'X-TIMESTAMP': signMd5Utils.getDateTimeToString() }
return axios({
url: url,
method: method,
data: parameter,
headers: signHeader
})
}
// put
export function putAction (url, parameter) {
return axios({
url: url,
method: 'put',
data: parameter
})
}
// get
export function getAction (url, parameter) {
const sign = signMd5Utils.getSign(url, parameter)
// 将签名和时间戳,添加在请求接口 Header
const signHeader = { 'X-Sign': sign, 'X-TIMESTAMP': signMd5Utils.getDateTimeToString() }
return axios({
url: url,
method: 'get',
params: parameter,
headers: signHeader
})
}
// deleteAction
export function deleteAction (url, parameter) {
return axios({
url: url,
method: 'delete',
params: parameter
})
}
export function getUserList (parameter) {
return axios({
url: api.user,
method: 'get',
params: parameter
})
}
export function getRoleList (parameter) {
return axios({
url: api.role,
method: 'get',
params: parameter
})
}
export function getServiceList (parameter) {
return axios({
url: api.service,
method: 'get',
params: parameter
})
}
export function getPermissions (parameter) {
return axios({
url: api.permissionNoPager,
method: 'get',
params: parameter
})
}
export function saveService (parameter) {
return axios({
url: api.service,
method: 'post',
data: parameter
})
}
/**
* 下载文件 用于excel导出
* @param url
* @param parameter
* @returns {*}
*/
export function downFile (url, parameter) {
return axios({
url: url,
params: parameter,
method: 'get',
responseType: 'blob'
})
}
/**
* 下载文件 用于excel导出
* @param url
* @param parameter
* @returns {*}
*/
export function postDownFile (url, parameter) {
return axios({
url: url,
data: parameter,
method: 'post',
responseType: 'blob'
})
}
/**
* 下载文件
* @param url 文件路径
* @param fileName 文件名
* @param parameter
* @returns {*}
*/
export function downloadFile (url, fileName, parameter) {
return downFile(url, parameter).then((data) => {
if (!data || data.size === 0) {
Vue.prototype.$message.warning('文件下载失败')
return
}
if (typeof window.navigator.msSaveBlob !== 'undefined') {
window.navigator.msSaveBlob(new Blob([data]), fileName)
} else {
const url = window.URL.createObjectURL(new Blob([data]))
const link = document.createElement('a')
link.style.display = 'none'
link.href = url
link.setAttribute('download', fileName)
document.body.appendChild(link)
link.click()
document.body.removeChild(link) // 下载完成移除元素
window.URL.revokeObjectURL(url) // 释放掉blob对象
}
})
}
/**
* 文件上传 用于富文本上传图片
* @param url
* @param parameter
* @returns {*}
*/
export function uploadAction (url, parameter) {
return axios({
url: url,
data: parameter,
method: 'post',
headers: {
'Content-Type': 'multipart/form-data' // 文件上传
}
})
}
/**
* 获取文件服务访问路径
* @param avatar
* @param subStr
* @returns {*}
*/
export function getFileAccessHttpUrl (avatar, subStr) {
if (!subStr) subStr = 'http'
try {
if (avatar && avatar.startsWith(subStr)) {
return avatar
} else {
if (avatar && avatar.length > 0 && avatar.indexOf('[') === -1) {
const token = Vue.ls.get(ACCESS_TOKEN)
return window._CONFIG.staticDomainURL + '/' + avatar + '?token=' + token
}
}
} catch (err) {
console.log(err)
}
}
/**
* params传参的post
*/
export function postForParams (url, parameter) {
const sign = signMd5Utils.getSign(url, parameter)
// 将签名和时间戳,添加在请求接口 Header
const signHeader = { 'X-Sign': sign, 'X-TIMESTAMP': signMd5Utils.getDateTimeToString() }
return axios({
url: url,
method: 'post',
params: parameter,
headers: signHeader
})
}