diff --git a/src/api/dashboard.js b/src/api/dashboard.js new file mode 100644 index 0000000..d08f398 --- /dev/null +++ b/src/api/dashboard.js @@ -0,0 +1,59 @@ +import { getAction, postAction } from './manage' +// 获取检索历史数据 +const getSearchHistoryData = (params) => getAction('/home/lawsHomeNormalSearchHistory/page', params) +// 根据id删除检索历史 +const deleteSearchHistoryById = (params) => postAction('/home/lawsHomeNormalSearchHistory/delete', params) +// 批量删除检索历史 +const batchDeleteSearchHistory = (params) => postAction('/home/lawsHomeNormalSearchHistory/deleteBatch', params) +// 一般检索(标题)——资源类型改变获取下面筛选项统计数据 +const getSearchParamNum = (params) => getAction('/home/lawsHomeSearch/getNormalSearchTitleCount', params) +// 一般检索(标题)—— 查询 +const generalSearchTitleSearch = (params) => getAction('/home/lawsHomeSearch/getNormalSearchTitlePage', params) +// 一般检索(全文)——资源类型改变获取下面筛选项统计数据 +const getSearchParamNumFullText = (params) => getAction('/home/lawsHomeSearch/getNormalSearchAllCount', params) +// 一般检索(全文)—— 查询 +const generalSearchFullTextSearch = (params) => getAction('/home/lawsHomeSearch/getNormalSearchAllPage', params) + +// 国内标准的高级搜索,查询搜索条件 +const getDomesticStandardQuery = (params) => getAction('/laws/standard/domestic/getAdvancedQueryCondition', params) +// 国外标准的高级搜索,查询搜索条件 +const getOverseasStandardQuery = (params) => getAction('/laws/standard/overseas/getAdvancedQueryCondition', params) +// 企业标准的高级搜索,查询搜索条件 +const getEnterStandardQuery = (params) => getAction('/laws/standard/enterprise/getAdvancedQueryCondition', params) + +// 国内标准的高级搜索,查询列表数据 +const getDomesticStandardList = (params) => postAction('/laws/standard/domestic/getCommonPageNoPermissions', params) +// 国外标准的高级搜索,查询列表数据 +const getOverseasStandardList = (params) => postAction('/laws/standard/overseas/getCommonPageNoPermissions', params) +// 企标的高级搜索,查询列表数据 +const getEnterStandardList = (params) => postAction('/laws/standard/enterprise/getCommonPageNoPermissions', params) + +// 快捷入口-显示模块列表 +const getQuickEntryModuleList = (params) => getAction('/home/lawsHomeQuickAccess/queryMenuList', params) +// 快捷入口可选列表 +const getQuickEntryList = (params) => getAction('/home/lawsHomeQuickAccess/queryPermissionMenuList', params) +// 快捷入口-保存显示模块列表 +const saveQuickEntryModuleList = (params) => postAction('/home/lawsHomeQuickAccess/saveMenu', params) + +// 待办任务-列表 +const getTodoList = (params) => getAction('/home/lawsHomeBacklogTask/queryBacklogTaskList', params) + +export { + getSearchHistoryData, + deleteSearchHistoryById, + batchDeleteSearchHistory, + getSearchParamNum, + generalSearchTitleSearch, + getSearchParamNumFullText, + generalSearchFullTextSearch, + getDomesticStandardQuery, + getOverseasStandardQuery, + getEnterStandardQuery, + getDomesticStandardList, + getOverseasStandardList, + getEnterStandardList, + getQuickEntryModuleList, + getQuickEntryList, + saveQuickEntryModuleList, + getTodoList +} diff --git a/src/api/enterpriseStandardLibraryApi.js b/src/api/enterpriseStandardLibraryApi.js new file mode 100644 index 0000000..bd6243e --- /dev/null +++ b/src/api/enterpriseStandardLibraryApi.js @@ -0,0 +1,99 @@ +import { getAction, postAction } from './manage' + +// 获取表格头部数据 +const getEnterpriseStandardTableHeader = (params) => getAction('/laws/standard/enterprise/getCommonHeader', params) +// 获取搜索区域数据 +const getEnterpriseStandardSearchForm = (params) => getAction('/laws/standard/enterprise/getQueryCondition', params) +// 获取新增表单数据 +const getEnterpriseStandardAddForm = (params) => getAction('/laws/standard/enterprise/getFormModel', params) +// 根据id获取详情 +const getEnterpriseStandardInfoById = (params) => getAction('/laws/standard/enterprise/getByIdAndModule', params) +// 配置标准 +const allocationStandard = (params) => getAction('/laws/standard/enterprise/relatedStandard', params) +// 配置标准-获取可配置标准列表 +const allocationStandardList = (params) => getAction('/laws/standard/common/getStandardRightBox', params) +// 移出标准 +const shiftStandard = (params) => getAction('/laws/standard/enterprise/removeStandard', params) +// 获取左侧树列表 +const getTreeList = (params) => getAction('/laws/standard/lawsTreeNode/enterprise', params) +// 左侧树删除 +const deleteTreeNode = (params) => postAction('/laws/standard/lawsTreeNode/enterprise/delete', params) +// 临时权限设置 +const temporaryPermissionSet = (params) => postAction('/laws/standard/enterprise/tempPermission', params) +// 收藏企标 +const collectStandard = (params) => postAction('/personal/lawsStandardCollection/enterprise/add', params) +// 取消收藏企标 +const cancelCollectStandard = (params) => postAction('/personal/lawsStandardCollection/enterprise/delete', params) +// 分享企标 +const shareStandard = (params) => postAction('/personal/lawsStandardSharing/enterprise/add', params) +// 查询是否有查看详情的权限 +const isCanLookDetail = (params) => getAction('/laws/standard/enterprise/detailPermission', params) +// 企标级别映射列表获取 +const getStandardGradeClassification = (params) => getAction('/sys/lawsGrade/listWithoutPermission', params) +// 解除授权 +const cancelAuthor = (params) => getAction('/laws/standard/enterprise/revokeAuth', params) + +// 企标详情-获取更新记录 +const detailGetUpdateRecord = (params) => getAction('/laws/standard/enterprise/getUpdateRecordList', params) +// 企标详情-提交问题 +const detailSubmitQuestion = (params) => postAction('/laws/library/lawsProblemLibrary/addProblem/QB', params) +// 企标详情-企标评价 +const detailEvaluate = (standardId, params) => getAction('/laws/standard/enterprise/evaluateDetailForESInfo/' + `${standardId}`, params) + +// 企标评审会记录-设置优质标准 +const setQualityStandard = (params) => getAction('/enterprise/reviewMeeting/setQualityStandards', params) +// 获取评分详情 +const getScoreDetail = (id, params) => getAction('/enterprise/reviewMeeting/evaluateDetail/' + `${id}`, params) + +// 企标稽查-获取延期稽查数据 +const getDeferredCheck = (params) => getAction('/enterprise/inspect/delayInspect', params) +// 企标稽查-根据id获取稽查报告详情 +const getCheckReportById = (params) => getAction('/enterprise/inspect/inspectReport', params) +// 企标稽查-根据id获取整改计划 +const getRectificationPlanById = (params) => getAction('/enterprise/inspect/rectifyPlan', params) + +// 企标计划-根据id获取计划详情 +const getEnterpriseStandardPlanInfoById = (params) => getAction('/enterprise/plan/detail', params) +// 企标计划-分页获取(选择企标计划组件中用) +const getEnterpriseStandardPlanPage = (params) => getAction('/process/es/initChange/getESPList', params) +// 企标复审计划-分页获取(选择企标复审计划组件中用) +const getEnterpriseRecheckPlanPage = (params) => getAction('/enterprise/recheckPlan/page', params) + +// 企标复审计划-根据id获取数据 +const getEnterpriseRecheckPlanById = (id, params) => getAction(`/enterprise/recheckPlan/getById/${id}`, params) + +export { + getEnterpriseStandardTableHeader, + getEnterpriseStandardSearchForm, + getEnterpriseStandardAddForm, + getEnterpriseStandardInfoById, + allocationStandard, + allocationStandardList, + shiftStandard, + getTreeList, + deleteTreeNode, + temporaryPermissionSet, + collectStandard, + cancelCollectStandard, + shareStandard, + isCanLookDetail, + getStandardGradeClassification, + cancelAuthor, + + detailGetUpdateRecord, + detailSubmitQuestion, + detailEvaluate, + + setQualityStandard, + getScoreDetail, + + getDeferredCheck, + getCheckReportById, + getRectificationPlanById, + + getEnterpriseStandardPlanInfoById, + getEnterpriseStandardPlanPage, + getEnterpriseRecheckPlanPage, + + getEnterpriseRecheckPlanById +} diff --git a/src/api/standardRegulationLibraryApi.js b/src/api/standardRegulationLibraryApi.js new file mode 100644 index 0000000..d3602c3 --- /dev/null +++ b/src/api/standardRegulationLibraryApi.js @@ -0,0 +1,159 @@ +import { getAction, postAction } from './manage' + +// 国内法规标准-获取查询条件 +const getDomesticStandardSearchForm = (params) => getAction('/laws/standard/domestic/getQueryCondition', params) +// 国内法规标准-获取表单模型 +const getDomesticStandardFormModal = (params) => getAction('/laws/standard/domestic/getFormModel', params) +// 国内法规标准-获取信息 +const getDomesticStandardDocumentInfo = (params) => getAction('/laws/standard/domestic/getByIdAndModule', params) +// 国内法规标准-获取表头信息 +const getDomesticStandardTableHeader = (params) => getAction('/laws/standard/domestic/getCommonHeader', params) +// 国内标准法规-收藏 +const collectionDomesticStandard = (params) => postAction('/personal/lawsStandardCollection/domestic/add', params) +// 国内标准法规-取消收藏 +const cancelCollectionDomesticStandard = (params) => postAction('/personal/lawsStandardCollection/domestic/delete', params) +// 国内标准法规-分享 +const shareDomesticStandard = (params) => postAction('/personal/lawsStandardSharing/domestic/add', params) +// 国内标准-体系新增 +const addDomesticSystemTree = (params) => postAction('/laws/standard/lawsTreeNode/domestic/add', params) +// 国内标准-体系编辑 +const editDomesticSystemTree = (params) => postAction('/laws/standard/lawsTreeNode/domestic/edit', params) +// 国内标准-体系删除 +const deleteDomesticSystemTree = (params) => postAction('/laws/standard/lawsTreeNode/domestic/delete', params) +// 国内标准-配置标准 +const configDomesticStandard = (params) => getAction('/laws/standard/domestic/relatedStandard', params) +// 国内标准-移出标准 +const removeDomesticStandard = (params) => getAction('/laws/standard/domestic/removeStandard', params) +// 国内标准-获取体系树 +const getDomesticStandardTree = (params) => getAction('/laws/standard/lawsTreeNode/domestic', params) +// 国内标准-新增标准 +const addDomesticStandard = (params) => postAction('/laws/standard/domestic/commonAdd', params) +// 国内标准-编辑标准 +const editDomesticStandard = (params) => postAction('/laws/standard/domestic/commonEdit', params) +// 国内标准-配置标准-过滤没有选中体系的数据 +const getDomesticStandardNoSystem = (params) => getAction('/laws/standard/common/getStandardRightBox', params) +// 国内标准-获取详情信息 +const getDomesticStandardDetail = (params) => getAction('/laws/standard/domestic/getByIdAndModule', params) +// 国内标准-获取更新记录 +const getDomesticStandardUpdateRecord = (params) => getAction('/laws/standard/domestic/getUpdateRecordList', params) +// 国内标准-提交问题 +const submitDomesticQuestion = (params) => postAction('/laws/library/lawsProblemLibrary/addProblem/GB', params) + +// 海外标准-获取查询条件 +const getOverseasStandardSearchForm = (params) => getAction('/laws/standard/overseas/getQueryCondition', params) +// 海外标准-获取表单 +const getOverseasStandardForm = (params) => getAction('/laws/standard/overseas/getFormModel', params) +// 海外标准-获取信息 +const getOverseasStandardDocumentInfo = (params) => getAction('/laws/standard/overseas/getByIdAndModule', params) +// 海外标准-获取表头信息 +const getOverseasStandardTableHeader = (params) => getAction('/laws/standard/overseas/getCommonHeader', params) +// 海外标准-获取体系数据 +const getOverseasStandardSystem = (params) => getAction('/laws/standard/lawsTreeNode/overseas', params) +// 海外标准-收藏 +const collectionOverseasStandard = (params) => postAction('/personal/lawsStandardCollection/overseas/add', params) +// 海外标准-取消收藏 +const cancelCollectionOverseasStandard = (params) => postAction('/personal/lawsStandardCollection/overseas/delete', params) +// 海外标准-分享 +const shareOverseasStandard = (params) => postAction('/personal/lawsStandardSharing/overseas/add', params) +// 海外标准-体系删除 +const deleteOverseasStandardSystem = (params) => postAction('/laws/standard/lawsTreeNode/overseas/delete', params) +// 海外标准-体系新增 +const addOverseasStandardSystem = (params) => postAction('/laws/standard/lawsTreeNode/overseas/add', params) +// 海外标准-体系编辑 +const editOverseasStandardSystem = (params) => postAction('/laws/standard/lawsTreeNode/overseas/edit', params) +// 海外标准-配置标准 +const configOverseasStandard = (params) => getAction('/laws/standard/overseas/relatedStandard', params) +// 海外标准-移除标准 +const removeOverseasStandard = (params) => getAction('/laws/standard/overseas/removeStandard', params) +// 海外标准-添加标准 +const addOverseasStandard = (params) => postAction('/laws/standard/overseas/commonAdd', params) +// 海外标准-编辑标准 +const editOverseasStandard = (params) => postAction('/laws/standard/overseas/commonEdit', params) +// 海外标准-提出问题 +const submitOverseasQuestion = (params) => postAction('/laws/library/lawsProblemLibrary/addProblem/FB', params) + +// 动态消息-保存 +const saveDynamicMessage = (params) => postAction('/laws/standard/lawsNewsFeed/save', params) +// 动态消息-发布 +const releaseDynamicMessage = (params) => postAction('/laws/standard/lawsNewsFeed/release', params) +// 动态消息-通过id查询 +const getDynamicMessageById = (params) => getAction('/laws/standard/lawsNewsFeed/queryById', params) +// 动态消息-分享 +const shareDynamicMessageById = (params) => postAction('/personal/lawsStandardSharing/dynamicMessages/add', params) + +// 资料中心-新增 +const addProfileCenter = (params) => postAction('/laws/dataCenter/lawsDataCenterFile/add', params) +// 资料中心-编辑 +const editProfileCenter = (params) => postAction('/laws/dataCenter/lawsDataCenterFile/edit', params) +// 资料中心-新增同级 +const addProfileCenterTree = (params) => postAction('/laws/dataCenter/lawsDataCenterFolder/addBrother', params) +// 资料中心-新增子文件夹 +const addChildrenFolder = (params) => postAction('/laws/dataCenter/lawsDataCenterFolder/addChild', params) +// 资料中心-编辑树节点 +const editProfileCenterTree = (params) => postAction('/laws/dataCenter/lawsDataCenterFolder/edit', params) +// 资料中心-删除树节点 +const deleteProfileCenterTree = (params) => postAction('/laws/dataCenter/lawsDataCenterFolder/delete', params) +// 资料中心-获取树节点树 +const getProfileCenterTree = (params) => getAction('/laws/dataCenter/lawsDataCenterFolder/getTreeList', params) + +// 国标、海外、企标通用接口 +// 通过标准号获取信息 +const getStandardInfoByStandardNumber = (params) => getAction('/laws/standard/common/getInfoByStandardNo', params) + +export { + // 国内标准 + getDomesticStandardSearchForm, + getDomesticStandardFormModal, + getDomesticStandardDocumentInfo, + getDomesticStandardTableHeader, + collectionDomesticStandard, + cancelCollectionDomesticStandard, + shareDomesticStandard, + addDomesticSystemTree, + editDomesticSystemTree, + deleteDomesticSystemTree, + configDomesticStandard, + removeDomesticStandard, + getDomesticStandardTree, + addDomesticStandard, + editDomesticStandard, + getDomesticStandardNoSystem, + getDomesticStandardDetail, + getDomesticStandardUpdateRecord, + submitDomesticQuestion, + + // 海外标准 + getOverseasStandardSearchForm, + getOverseasStandardForm, + getOverseasStandardDocumentInfo, + getOverseasStandardTableHeader, + getOverseasStandardSystem, + collectionOverseasStandard, + cancelCollectionOverseasStandard, + shareOverseasStandard, + deleteOverseasStandardSystem, + editOverseasStandardSystem, + addOverseasStandardSystem, + configOverseasStandard, + removeOverseasStandard, + addOverseasStandard, + editOverseasStandard, + submitOverseasQuestion, + + // 动态消息 + saveDynamicMessage, + releaseDynamicMessage, + getDynamicMessageById, + shareDynamicMessageById, + + // 资料中心 + addProfileCenter, + editProfileCenter, + addProfileCenterTree, + addChildrenFolder, + editProfileCenterTree, + deleteProfileCenterTree, + getProfileCenterTree, + + getStandardInfoByStandardNumber +} diff --git a/src/assets/image/searchPageBack.png b/src/assets/image/searchPageBack.png new file mode 100644 index 0000000..59d86a4 Binary files /dev/null and b/src/assets/image/searchPageBack.png differ diff --git a/src/common/lang/dashboard/en.js b/src/common/lang/dashboard/en.js new file mode 100644 index 0000000..c186fa2 --- /dev/null +++ b/src/common/lang/dashboard/en.js @@ -0,0 +1,48 @@ +// 首页的所有翻译 +module.exports = { + // 一般检索 + generalSearch: { + advancedSearch: 'Advanced Search', + homePage: 'Home', + searchHistory: '检索历史', + queryCondition: 'Query Condition', + retrievalMode: 'Retrieval Mode', + resourceType: 'Resource Type', + standardClass: 'Standard Class', + dynamicType: 'Dynamic Type', + applicableVehicleType: 'Applicable Vehicle Type', + standardType: 'Standard Type', + state: 'State', + enterpriseStandardCode: 'Enterprise Standard Code', + standardState: 'Standard State', + standardGradeClassification: 'Standard Grade Classification', + all: 'All', + releaseDate: 'Release Date' + }, + // 高级搜索 + advancedSearch: { + standardNum: '标准号', + standardName: '标准名称', + releaseDate: '发布日期', + materialDate: '实施日期', + standardStatus: '标准状态' + }, + // 快捷入口 + quickEnter: { + quickEnter: '快捷入口', + menuManage: '菜单管理', + custom: '自定义', + optionModules: '可选模块', + personalDisplayModule: '个人展示模块', + itemUnit: '项', + itemsUnit: '项', + listEmpty: '列表为空', + pleaseEnterSearchContent: '请输入搜索内容', + maxSelectedNine: '最多选择9个模块' + }, + // 待办任务 + todoTask: { + todoTask: '待办任务', + more: '更多' + } +} diff --git a/src/common/lang/dashboard/zh.js b/src/common/lang/dashboard/zh.js new file mode 100644 index 0000000..336d98d --- /dev/null +++ b/src/common/lang/dashboard/zh.js @@ -0,0 +1,49 @@ +// 首页的所有翻译 +module.exports = { + // 一般检索 + generalSearch: { + advancedSearch: '高级搜索', + homePage: '首页', + searchHistory: '检索历史', + queryCondition: '查询条件', + retrievalMode: '检索方式', + resourceType: '资源类型', + standardClass: '标准类别', + dynamicType: '动力类型', + applicableVehicleType: '适用车辆类型', + standardType: '标准类型', + state: '状态', + enterpriseStandardCode: '企业标准代号', + standardState: '标准状态', + standardGradeClassification: '标准等级分类', + all: '全部', + releaseDate: '发布日期', + standardStatusSet: '标准状态设置' + }, + // 高级搜索 + advancedSearch: { + standardNum: '标准号', + standardName: '标准名称', + releaseDate: '发布日期', + materialDate: '实施日期', + standardStatus: '标准状态' + }, + // 快捷入口 + quickEnter: { + quickEnter: '快捷入口', + menuManage: '菜单管理', + custom: '自定义', + optionModules: '可选模块', + personalDisplayModule: '个人展示模块', + itemUnit: '项', + itemsUnit: '项', + listEmpty: '列表为空', + pleaseEnterSearchContent: '请输入搜索内容', + maxSelectedNine: '最多选择9个模块' + }, + // 待办任务 + todoTask: { + todoTask: '待办任务', + more: '更多' + } +} diff --git a/src/common/lang/en-us.js b/src/common/lang/en-us.js index 3c29402..82a78e4 100644 --- a/src/common/lang/en-us.js +++ b/src/common/lang/en-us.js @@ -1,3 +1,5 @@ +const dashboard = require('./dashboard/en') + module.exports = { pageTitle: { home: 'home', @@ -291,5 +293,8 @@ module.exports = { evaluationFeedback: '评估反馈', evaluator: '评估人', evaluationResult: '评估结果' - } + }, + + // 首页 + dashboard } diff --git a/src/common/lang/zh-cn.js b/src/common/lang/zh-cn.js index 5031678..2fec7c3 100644 --- a/src/common/lang/zh-cn.js +++ b/src/common/lang/zh-cn.js @@ -1,3 +1,5 @@ +const dashboard = require('./dashboard/zh') + module.exports = { pageTitle: { home: '首页', @@ -341,5 +343,8 @@ module.exports = { projectApproval: '项目审批', implementationDate: '实施日期', vehicleModel: '车型' - } + }, + + // 首页 + dashboard } diff --git a/src/enums/commonEnums.js b/src/enums/commonEnums.js index 61796fb..f1f0865 100644 --- a/src/enums/commonEnums.js +++ b/src/enums/commonEnums.js @@ -1,5 +1,31 @@ import EsEnums from './EsEnum' +// 国内标准状态 +export const StandardStatus = { + DRAFT: { text: '起草', value: '1' }, + SEEK_FOR_OPTIONS: { text: '征求意见', value: '2' }, + EXAMINE: { text: '审查', value: '2.1' }, + APPROVAL: { text: '报批', value: '3' }, + RELEASE: { text: '发布', value: '4' }, + BE_IMPLEMENTED_SOON: { text: '即将实施', value: '5' }, + CURRENTLY_EFFECTIVE: { text: '现行有效', value: '6' }, + ABOLISH: { text: '废止', value: '7' } +} + +// 企标状态 +export const EnterpriseStandardStatus = { + DRAFT: { text: '起草', value: '1' }, + SEEK_FOR_OPTIONS: { text: '征求意见', value: '2' }, + EXAMINE: { text: '审查', value: '3' }, + APPROVAL: { text: '报批', value: '4' }, + PRE_RELEASE: { text: '预发布', value: '5' }, + RELEASE: { text: '发布', value: '6' }, + TRIAL_OPERATION: { text: '试运行', value: '7' }, + CURRENTLY_EFFECTIVE: { text: '现行有效', value: '8' }, + ABOLISH: { text: '废止', value: '9' }, + ARCHIVE: { text: '封存', value: '10' } +} + export const YesOrNoEnum = new EsEnums({ NO: { name: '否', value: '0' }, YES: { name: '是', value: '1' } diff --git a/src/main.js b/src/main.js index b420494..35e3de5 100644 --- a/src/main.js +++ b/src/main.js @@ -82,7 +82,9 @@ new Vue({ console.log(' 非钉钉平台 不进行钉钉单点登录') return } - + this.$router.push({ path: '/search/generalSearch' }).catch((res) => { + console.log(res) + }) console.log('store.dispatch(\'DingLogin\')') store.dispatch('DingLogin').then().catch((e) => { Toast(e.message) diff --git a/src/utils/hasPermission.js b/src/utils/hasPermission.js new file mode 100644 index 0000000..a7e5589 --- /dev/null +++ b/src/utils/hasPermission.js @@ -0,0 +1,196 @@ +import { USER_AUTH, SYS_BUTTON_AUTH } from '@/store/mutation-types' + +const hasPermission = { + install (Vue) { + Vue.directive('has', { + inserted: (el, binding, vnode) => { + // console.time() + // 节点权限处理,如果命中则不进行全局权限处理 + if (!filterNodePermission(el, binding, vnode)) { + filterGlobalPermission(el, binding, vnode) + } + } + }) + } +} + +/** + * 流程节点权限控制 + */ +export function filterNodePermission (el, binding, vnode) { + const permissionList = [] + try { + const obj = vnode.context.$props.formData + if (obj) { + const bpmList = obj.permissionList + for (const bpm of bpmList) { + if (bpm.type + '' !== '2') { + permissionList.push(bpm) + } + } + } else { + return false + } + } catch (e) { + // console.log("页面权限异常----", e); + } + if (permissionList === null || permissionList === '' || permissionList === undefined || permissionList.length <= 0) { + // el.parentNode.removeChild(el) + return false + } + + console.log('流程节点页面权限--NODE--') + const permissions = [] + for (const item of permissionList) { + if (item.type + '' !== '2') { + permissions.push(item.action) + } + } + // console.log("页面权限----"+permissions); + // console.log("页面权限----"+binding.value); + if (!permissions.includes(binding.value)) { + // el.parentNode.removeChild(el) + return false + } else { + for (const item2 of permissionList) { + if (binding.value === item2.action) { + return true + } + } + } + return false +} + +/** + * 全局权限控制 + */ +export function filterGlobalPermission (el, binding) { + const permissionList = [] + const allPermissionList = [] + + // let authList = Vue.ls.get(USER_AUTH); + const authList = JSON.parse(sessionStorage.getItem(USER_AUTH) || '[]') + for (const auth of authList) { + if (auth.type + '' !== '2') { + permissionList.push(auth) + } + } + // console.log("页面权限--Global--",sessionStorage.getItem(SYS_BUTTON_AUTH)); + const allAuthList = JSON.parse(sessionStorage.getItem(SYS_BUTTON_AUTH) || '[]') + for (const gauth of allAuthList) { + if (gauth.type + '' !== '2') { + allPermissionList.push(gauth) + } + } + // 设置全局配置是否有命中 + let invalidFlag = false// 无效命中 + if (allPermissionList && allPermissionList.length > 0) { + for (const itemG of allPermissionList) { + if (binding.value === itemG.action) { + if (itemG.status + '' === '0') { + invalidFlag = true + break + } + } + } + } + if (invalidFlag) { + return + } + if (permissionList === null || permissionList === '' || permissionList === undefined || permissionList.length <= 0) { + el.parentNode.removeChild(el) + return + } + const permissions = [] + for (const item of permissionList) { + // 权限策略1显示2禁用 + if (item.type + '' !== '2') { + // update--begin--autor:wangshuai-----date:20200729------for:按钮权限,授权标识的提示信息是多个用逗号分隔逻辑处理 gitee#I1OUGU------- + if (item.action) { + if (item.action.includes(',')) { + const split = item.action.split(',') + for (let i = 0; i < split.length; i++) { + if (!split[i] || split[i].length === 0) { + continue + } + permissions.push(split[i]) + } + } else { + permissions.push(item.action) + } + } + // update--end--autor:wangshuai-----date:20200729------for:按钮权限,授权标识的提示信息是多个用逗号分隔逻辑处理 gitee#I1OUGU------ + } + } + if (!permissions.includes(binding.value)) { + el.parentNode.removeChild(el) + } +} + +/** + * 根据授权标识是否拥有该权限,用于tab页签的权限 + */ +export function isHasPermission (permissionIdentifier) { + const permissionList = [] + const allPermissionList = [] + + // let authList = Vue.ls.get(USER_AUTH); + const authList = JSON.parse(sessionStorage.getItem(USER_AUTH) || '[]') + for (const auth of authList) { + if (auth.type + '' !== '2') { + permissionList.push(auth) + } + } + // console.log("页面权限--Global--",sessionStorage.getItem(SYS_BUTTON_AUTH)); + const allAuthList = JSON.parse(sessionStorage.getItem(SYS_BUTTON_AUTH) || '[]') + for (const gauth of allAuthList) { + if (gauth.type + '' !== '2') { + allPermissionList.push(gauth) + } + } + // 设置全局配置是否有命中 + let invalidFlag = false// 无效命中 + if (allPermissionList && allPermissionList.length > 0) { + for (const itemG of allPermissionList) { + if (permissionIdentifier === itemG.action) { + if (itemG.status + '' === '0') { + invalidFlag = true + break + } + } + } + } + if (invalidFlag) { + return + } + if (permissionList === null || permissionList === '' || permissionList === undefined || permissionList.length <= 0) { + return false + } + const permissions = [] + for (const item of permissionList) { + // 权限策略1显示2禁用 + if (item.type + '' !== '2') { + // update--begin--autor:wangshuai-----date:20200729------for:按钮权限,授权标识的提示信息是多个用逗号分隔逻辑处理 gitee#I1OUGU------- + if (item.action) { + if (item.action.includes(',')) { + const split = item.action.split(',') + for (let i = 0; i < split.length; i++) { + if (!split[i] || split[i].length === 0) { + continue + } + permissions.push(split[i]) + } + } else { + permissions.push(item.action) + } + } + // update--end--autor:wangshuai-----date:20200729------for:按钮权限,授权标识的提示信息是多个用逗号分隔逻辑处理 gitee#I1OUGU------ + } + } + if (!permissions.includes(permissionIdentifier)) { + return false + } + return true +} + +export default hasPermission diff --git a/src/utils/kkFilePreview.js b/src/utils/kkFilePreview.js new file mode 100644 index 0000000..38eec74 --- /dev/null +++ b/src/utils/kkFilePreview.js @@ -0,0 +1,40 @@ +import Vue from 'vue' +import { USER_INFO } from '../store/mutation-types' +import { Base64 } from 'js-base64' +import md5 from 'md5' + +function fillZero (str) { + let realNum + if (str < 10) { + realNum = '0' + str + } else { + realNum = str + } + return realNum +} + +export function dealUrl (fileUrl) { + const userInfo = Vue.ls.get(USER_INFO) + // 获取当前时间 + const date = new Date() + const year = date.getFullYear() + const month = date.getMonth() + 1 + const day = date.getDate() + const hour = date.getHours() + const minute = date.getMinutes() + const second = date.getSeconds() + const time = `${year}${fillZero(month)}${fillZero(day)}${fillZero(hour)}${fillZero(minute)}${fillZero(second)}` + // 水印内容 + const watermarkTxt = `${userInfo.username} ${userInfo.realname} ${time}` + // 客户环境预览需要加的加密参数 + const watermarkSign = md5(watermarkTxt + 'cnhtc') + return `${window._CONFIG.onlinePreviewDomainURL}?url=${encodeURIComponent(Base64.encode(fileUrl))}&watermarkTxt=${encodeURIComponent(watermarkTxt)}&watermarkSign=${watermarkSign}` +} + +/** + * kkFile预览文件并添加水印 + * @param fileUrl + */ +export const kkFilePreview = (fileUrl) => { + window.open(dealUrl(fileUrl)) +} diff --git a/src/views/search/generalSearch.vue b/src/views/search/generalSearch.vue index ca473bf..4db65fc 100644 --- a/src/views/search/generalSearch.vue +++ b/src/views/search/generalSearch.vue @@ -1,13 +1,967 @@ - diff --git a/src/views/user/Login.vue b/src/views/user/Login.vue index 52d6adb..1ab2492 100644 --- a/src/views/user/Login.vue +++ b/src/views/user/Login.vue @@ -129,17 +129,17 @@ export default { }, loginSuccess () { Toast('登录成功') - const query = this.$route.query - if (query.redirect) { - console.log('redirect:', query) - this.$router.push({ path: query.redirect }).catch((res) => { - console.log(res) - }) - } else { - this.$router.push({ path: '/search/generalSearch' }).catch((res) => { - console.log(res) - }) - } + // const query = this.$route.query + // if (query.redirect) { + // console.log('redirect:', query) + // this.$router.push({ path: query.redirect }).catch((res) => { + // console.log(res) + // }) + // } else { + this.$router.push({ path: '/search/generalSearch' }).catch((res) => { + console.log(res) + }) + // } }, // 密码禁止粘贴 handleOperate () { diff --git a/vant.config.js b/vant.config.js index c76778c..2f0517a 100644 --- a/vant.config.js +++ b/vant.config.js @@ -9,6 +9,8 @@ module.exports = { 'nav-bar-icon-color': white, 'nav-bar-text-color': white, 'nav-bar-title-text-color': white, - 'nav-bar-background-color': primaryColor + 'nav-bar-background-color': primaryColor, + // 分页 + 'pagination-item-default-color': primaryColor } }