提交 9e315d7a 编写于 作者: KK's avatar KK

工具服务类 基类

上级 b7d4bd06
import { Store } from 'vuex';
/**
* 功能服务基类
*
* @export
* @class UtilService
*/
export default class UtilService {
/**
* Vue 状态管理器
*
* @private
* @type {(any | null)}
* @memberof UtilService
*/
private $store: Store<any> | null = null;
/**
* 模型标识属性
*
* @memberof UtilService
*/
protected modelIdField: string = "";
/**
* 模型存储属性
*
* @memberof UtilService
*/
protected modelField: string = "";
/**
* 应用标识属性
*
* @memberof UtilService
*/
protected appIdField: string = "";
/**
* 用户标识属性
*
* @memberof UtilService
*/
protected userIdField: string = "";
/**
* 存储实体Name
*
* @memberof UtilService
*/
protected stoageEntityName:string ="";
/**
* 存储实体Id
*
* @memberof UtilService
*/
protected stoageEntityKey:string ="";
/**
* Creates an instance of UtilService.
*
* @param {*} [opts={}]
* @memberof UtilService
*/
constructor(opts: any = {}) {
this.$store = opts.$store;
this.initBasicParam();
}
/**
* 获取状态管理器
*
* @returns {(any | null)}
* @memberof UtilService
*/
public getStore(): Store<any> | null {
return this.$store;
}
/**
* 初始化基础参数
*
* @returns {(any | null)}
* @memberof UtilService
*/
public initBasicParam(){
console.log("UtilService初始化参数未实现");
}
/**
* 获取功能服务
*
* @protected
* @param {string} name 功能实体名称
* @returns {Promise<any>}
* @memberof UtilService
*/
public getService(name: string): Promise<any> {
return (window as any)['utilServiceRegister'].getService(name);
}
/**
* 处理请求参数
*
* @param context 应用上下文
* @param data 传入模型数据
* @param isloading 是否加载
* @memberof UtilService
*/
protected handlePreParam(context:any,data:any ={}){
let tempContext:Object = {};
let tempData:Object = {};
if(context.modelid){
Object.defineProperty(tempContext,this.modelIdField,{
value: context.modelid,
writable: true,
enumerable: true,
configurable: true
});
Object.defineProperty(tempContext,this.stoageEntityName,{
value: context.modelid,
writable: true,
enumerable: true,
configurable: true
});
Object.defineProperty(tempData,this.modelIdField,{
value: context.modelid,
writable: true,
enumerable: true,
configurable: true
});
Object.defineProperty(tempData,this.stoageEntityKey,{
value: context.modelid,
writable: true,
enumerable: true,
configurable: true
});
}
Object.defineProperty(tempData,this.modelField,{
value: data,
writable: true,
enumerable: true,
configurable: true
});
return {context:tempContext,data:tempData};
}
/**
* 获取模型数据
*
* @param context 应用上下文
* @param data 传入模型数据
* @param isloading 是否加载
* @memberof UtilService
*/
protected loadModelData(context: any = {},data: any = {}, isloading?: boolean):Promise<any>{
return Promise.resolve(null);
}
/**
* 保存模型数据
*
* @param context 应用上下文
* @param data 传入模型数据
* @param isloading 是否加载
* @memberof UtilService
*/
protected saveModelData(context: any = {},data: any = {}, isloading?: boolean):Promise<any>{
return Promise.resolve(null);
}
}
\ No newline at end of file
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册