import req from '@/utils/request' import { saveAs } from 'file-saver' const { uc, form, portal, bpmModel, bpmRunTime, auth } = window.context export default { // 通过别名获取布局 getLayoutByAlias(alias) { const url = `${portal}/portal/sysIndexLayoutManage/sysIndexLayoutManage/v1/getByAlias?alias=${alias}` return req.get(url) }, // 前端门户保存布局 setLayoutConfig(data) { const url = `${portal}/portalUserLayoutConfig/v1/save` return req.post(url, data) }, getColumnByAlias(alias, cb) { req .get( portal + '/portal/sysIndexColumn/sysIndexColumn/v1/getByAlias?alias=' + alias ) .then((response) => { cb(response) }) }, batchGetColumnByAliases(aliases, cb) { req .post( portal + '/portal/sysIndexColumn/sysIndexColumn/v1/getDatasByAlias', aliases ) .then((response) => { cb(response) }) }, getColumnData(column, cb) { const reqUrl = column.dataFrom .replace('${bpmModel}', bpmModel) .replace('${bpmRunTime}', bpmRunTime) .replace('${portal}', portal) .replace('${uc}', uc) .replace('${form}', form) const requestType = column.requestType var reqParam = column.dataParam if (reqParam) { reqParam = eval('(' + reqParam + ')') var isMany = reqParam.length > 1 for (var i = 0; i < reqParam.length; i++) { var value = reqParam[i]['value'] var name = reqParam[i]['name'] if (requestType == 'POST') { try { value = JSON.parse(value) } catch (e) {} if (isMany) { reqParam[name] = value } else { reqParam = value } } else { reqUrl = i > 0 ? reqUrl + '&' + name + '=' + value : '?' + name + '=' + value } } } if (requestType == 'POST') { req.post(reqUrl, reqParam).then((response) => { cb(response.data) }) } else { req.get(reqUrl).then((response) => { cb(response.data) }) } }, vueFrontHome(cb) { req.get(portal + '/portal/main/v1/vueFrontHome').then((response) => { cb(response.value) }) }, } export function getTagList(data) { return request({ url: `${context.portal}/portal/sysTag/v1/query`, method: 'post', data, }) } export function saveTag(data) { return request({ url: `${context.portal}/portal/sysTag/v1/save`, method: 'post', data, }) } //文件图片接口地址 export function fileUrl(id) { return `${portal}/system/file/v1/downloadFile?fileId=${id}` } //图形验证码图片接口地址 export function getCaptchaImage() { const url = `${auth}/auth/captcha` + '?' + Math.random() return req.get(url) } //获取第三方二维码信息 export function getQrCodeInfo(tenantId) { const url = `${portal}/portal/sysExternalUnite/v1/getQrCodeInfo?tenantId=${tenantId}` return req.get(url) } // 获取新闻列表 export function getNewsList(id) { const url = `${portal}/portalNewsNotice/v1/getNews?classifyId=${id}` return req.get(url) } // 获取新闻详情 export function getNewsDetailById(id) { const url = `${portal}/portalNewsNotice/v1/getNewsById?id=${id}` return req.get(url) } export function getLongUrlByShortUrl(shortUrl) { const url = `${portal}/portal/shorturlManage/v1/getLongUrlByShortUrl?shortUrl=${shortUrl}` return req.get(url) } export function downloadFile(id, fileName) { const url = fileUrl(id) req({ url, method: 'get', responseType: 'arraybuffer', }).then((response) => { const blobData = new Blob([response.data]) saveAs(blobData, fileName) }) } export function wordPrint(data) { //String.fromCharCode.apply(null, new Uint8Array(resp.data)) return new Promise((resolve, reject) => { req({ url: `${portal}/system/file/v1/wordPrint`, method: 'post', data, responseType: 'arraybuffer', }).then((resp) => { resolve(String.fromCharCode.apply(null, new Uint8Array(resp.data))) }) }) } export function getFileById(fileId) { return req({ url: `${portal}/system/file/v1/${fileId}`, method: 'get', }) } // 查询用户设置的提醒消息 export function getCurrentUserPopup() { return req.get(portal + '/portal/portalSysPopup/v1/getCurrentUserPopup') } export function getSysProperties(alias) { return req.get(portal + '/sys/sysProperties/v1/getByAlias?alias=' + alias) } export function getColumnLayoutList(alias) { return req({ url: `${portal}/portal/sysIndexLayoutManage/sysIndexLayoutManage/v1/getByAlias?alias=${alias}`, method: 'get', }) } export function getSysMenuById(id) { return req({ url: `${portal}/sys/sysMenu/v1/getJson?id=${id}`, method: 'get', }) } // 根据token接口的入参获取票据 export function getUrlTicket(tokenApi) { return req({ url: `${portal}/portal/portalRestfulInterface/v1/urlTicket`, method: 'post', data: tokenApi, }) } //显示应用菜单 export function portalApp() { return req({ url: `${portal}/sys/sysMenu/v1/menus/right?alias=AppCenter,Message,EmailCenter`, method: 'get', }) }