You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
help_user/src/result.ts

204 lines
4.3 KiB

/**
* 返回信息
*/
import {JSONResponse, Result, TransformData} from "./interface";
import {ActivityDetail, PageProps, User, UserEdit, UserType} from "./entity";
/**
* 空body响应
*/
export enum SimpleMessage {
//操作失败
ok="ok",
//操作成功
fail="fail"
}
/**
* 空body响应
*/
export class EmptyBodyTransform extends TransformData<SimpleMessage, JSONResponse<SimpleMessage>>{
protected newObject(): JSONResponse<SimpleMessage> {
return new JSONResponse<SimpleMessage>();
}
}
export abstract class EmptyBodyDiffMsg<T> extends TransformData<T, JSONResponse<T>>{}
/**
* 注册响应信息
*/
export enum RegisterMessage {
//注册成功
ok = "ok",
//系统异常,注册失败
fail = "fail",
//用户id重复
user_repeat = "user_repeat",
//表单解析错误
form_parse_error = "form_parse_error"
}
/**
* 注册响应结果转换
*/
export class RegisterTransform extends EmptyBodyDiffMsg<RegisterMessage>{
protected newObject(): JSONResponse<RegisterMessage> {
return new JSONResponse<RegisterMessage>();
}
}
/**
* 登陆结果
*/
export enum LoginResMessage {
// 登陆成功
ok="ok",
// 账号或密码错误
valid_error="valid_error",
// 表单不合法,请联系管理员
form_error="form_error"
}
/**
* 登录响应实体
*/
export class LoginRes implements JSONResponse<LoginResMessage>{
userId?:string
userType?:UserType
timeScore?:number
customResult?: LoginResMessage;
result?: Result;
}
/**
* 登录响应数据转换
*/
export class LoginTransform extends TransformData<LoginResMessage,LoginRes>{
protected newObject(): LoginRes {
return new LoginRes();
}
protected transformBody(data: any) {
if(data.body!==null) {
this.target.userId = data.body.userId
this.target.userType = data.body.userType
this.target.timeScore = data.body.timeScore
}
}
}
/**
* 分页数据转换
*/
export enum PageDataMessage {
ok="ok",
fail="fail",
//空数据
empty="empty"
}
export abstract class PageDataRes extends JSONResponse<PageDataMessage>{
dataList?:any;
page?:PageProps;
}
export abstract class PageDataTransform<T extends PageDataRes> extends TransformData<PageDataMessage, T>{
protected transformBody(data: any) {
if(data.body!==null){
this.target.dataList=data.body.body
this.target.page={
currentPage:data.body.currentPage,
totalPage:data.body.totalPage,
pageSize:data.body.pageSize
}
}
}
}
/**
* 查询活动列表响应实体
*/
export class FindActivityRes extends PageDataRes{
dataList?:Array<Array<ActivityDetail>>
page?:PageProps
}
/**
* 活动列表数据转换
*/
export class FindActivityTransform extends PageDataTransform<FindActivityRes>{
protected newObject(): FindActivityRes {
return new FindActivityRes();
}
}
/**
* 用户信息实体
*/
export class FindUserRes extends PageDataRes{
dataList?:Array<Array<User>>
page?:PageProps
}
/**
* 用户数据转换
*/
export class FindUserTransform extends PageDataTransform<FindUserRes>{
protected newObject(): FindUserRes {
return new FindUserRes();
}
}
export class ActivityDetailRes extends JSONResponse<SimpleMessage>{
activity?:ActivityDetail
}
export class ActivityDetailTransform extends TransformData<SimpleMessage, ActivityDetailRes>{
protected newObject(): ActivityDetailRes {
return new ActivityDetailRes();
}
protected transformBody(data: any) {
this.target.activity=data.body
}
}
export class FindUserInfo extends JSONResponse<SimpleMessage>{
info?:UserEdit
}
export class FindUserInfoTransform extends TransformData<SimpleMessage, FindUserInfo>{
protected newObject(): FindUserInfo {
return new FindUserInfo();
}
protected transformBody(data: any) {
this.target.info=data.body
}
}
export enum ModifyPwdMessage {
ok='ok',
pwd_fail='pwd_fail',
fail='fail'
}
export class ModifyPwdTransform extends EmptyBodyDiffMsg<ModifyPwdMessage>{
protected newObject(): JSONResponse<ModifyPwdMessage> {
return new JSONResponse<ModifyPwdMessage>();
}
}