ed-frame-vue
Version:
easydata 基础组件
91 lines (85 loc) • 3.79 kB
JavaScript
import {getAction, postAction, uploadAction} from './index'
import Vue from "vue";
/**
* @name DefaultUrl
* @type {{init: string, selectData: string, deleteData: string, uploadUrl: string, uploadLocalUrl: string, updateData: string, page: string, insertData: string, updateDataList: string}}
* @description 公共请求地址
*/
export const DefaultUrl = {
page: "/easydata/view/selectDataPage",
init: "/easydata/view/controls",
selectData: '/easydata/view/selectData',
deleteData: '/easydata/view/deleteData',
insertData: '/easydata/view/insertData',
updateData: '/easydata/view/updateData',
updateDataList: '/easydata/view/updateDataList',
uploadUrl: '/easydata/common/upload',
uploadLocalUrl: '/sys/common/uploadLocal',
downloadUrl: '/admin-api/infra/file/',
selectDataList: "/easydata/dataOperator/selectDataList",
getTreeData: '/admin/base/tree/getData',
getDictItemsByType: '/easydata/dict/getDictItemsByType',
getDictList: '/easydata/dict/getDictList',
//直接操作数据库,不是通过视图
insertDataByObj: '/easydata/dataOperator/insertData',
//直接操作数据库,不是通过视图
updateDataByObj: '/easydata/dataOperator/updateData',
exportDataList: '/easydata/view/exportDataList',
}
/**
* @name TempType
* @type {{view: string, save: string}}
* @description 模板类型
*/
export const TempType = {
save: 'save',
view: 'view',
}
/** 分页查询列表数据 */
export const pageQueryList = (viewModel, url = DefaultUrl.page) => postAction(url, viewModel);
/** 初始化数据源控件 */
export const initControls = (dataSourceName, viewId = 'default') => getAction(DefaultUrl.init, {
dataSourceName,
viewId
})
/** 条件查询一条数据 */
export const getOneData = (viewModel, url = DefaultUrl.selectData) => postAction(url, viewModel);
/** 根据id删除数据 */
export const deleteDataById = (id, dataSourceName) => postAction(DefaultUrl.deleteData, {id, dataSourceName});
/** 新增一条数据 */
export const insertData = (viewModel, url = DefaultUrl.insertData) => postAction(url, viewModel);
/** 更新一条数据 */
export const updateData = (viewModel, url = DefaultUrl.updateData) => postAction(url, viewModel);
/** 更新多条数据 */
export const updateDataList = (viewModel, url = DefaultUrl.updateDataList) => postAction(url, viewModel);
/** 上传文件地址 */
export const uploadFile = (param, url = DefaultUrl.uploadUrl) => uploadAction(url, param);
/** 上传文件到本地, 比如数据源导入等 */
export const uploadLocalFile = (param, url = DefaultUrl.uploadLocalUrl) => uploadAction(url, param);
/** 根据type获取码表得item */
export const getDictItemByType = (param, url = DefaultUrl.getDictItemsByType) => getAction(url, param);
/** 获取所有得码表type支持传类型筛选 */
export const getDictList = (param, url = DefaultUrl.getDictList) => getAction(url, param);
export const selectDataList = (param, url = DefaultUrl.selectDataList) => postAction(url, param);
export const insertDataByObj = (param, url = DefaultUrl.insertDataByObj) => postAction(url, param);
export const updateDataByObj = (param, url = DefaultUrl.updateDataByObj) => postAction(url, param);
/**
* 获取文件服务访问路径
* @param avatar
* @param subStr
* @returns {*}
*/
export const getFileAccessHttpUrl = (avatar, subStr) => {
if (!subStr) subStr = 'http'
try {
if (avatar && avatar.startsWith(subStr)) {
return avatar;
} else {
if (avatar && avatar.length > 0 && avatar.indexOf('[') === -1) {
return Vue.prototype.$EdFrame.BASE_API + avatar;
}
}
} catch (err) {
console.log(err);
}
}