/* Options: Date: 2026-02-04 10:25:58 Version: 6.110 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://etc-api.vsmlab.vn //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: CreateAccountSignature.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; abstract class IResponseRequest { int? code; String? message; } class AccountSignature implements IConvertible { int? id; int? accountId; // @StringLength(50) String? provider; // @StringLength(200) String? serialNumber; // @StringLength(255) String? displayName; bool? isDefault; bool? isDeleted; DateTime? createdAt; DateTime? updatedAt; AccountSignature({this.id,this.accountId,this.provider,this.serialNumber,this.displayName,this.isDefault,this.isDeleted,this.createdAt,this.updatedAt}); AccountSignature.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['id']; accountId = json['accountId']; provider = json['provider']; serialNumber = json['serialNumber']; displayName = json['displayName']; isDefault = json['isDefault']; isDeleted = json['isDeleted']; createdAt = JsonConverters.fromJson(json['createdAt'],'DateTime',context!); updatedAt = JsonConverters.fromJson(json['updatedAt'],'DateTime',context!); return this; } Map toJson() => { 'id': id, 'accountId': accountId, 'provider': provider, 'serialNumber': serialNumber, 'displayName': displayName, 'isDefault': isDefault, 'isDeleted': isDeleted, 'createdAt': JsonConverters.toJson(createdAt,'DateTime',context!), 'updatedAt': JsonConverters.toJson(updatedAt,'DateTime',context!) }; getTypeName() => "AccountSignature"; TypeContext? context = _ctx; } class AccountSignatureResponse implements IResponseRequest, IConvertible { AccountSignature? data; int? code; String? message; AccountSignatureResponse({this.data,this.code,this.message}); AccountSignatureResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { data = JsonConverters.fromJson(json['data'],'AccountSignature',context!); code = json['code']; message = json['message']; return this; } Map toJson() => { 'data': JsonConverters.toJson(data,'AccountSignature',context!), 'code': code, 'message': message }; getTypeName() => "AccountSignatureResponse"; TypeContext? context = _ctx; } /** * Create new Account Signature (evn_ca,vt) for current user */ // @Route("/account-signature/create", "POST") class CreateAccountSignature implements IReturn, IPost, IConvertible { /** * Provider: evn_ca, vt (ViettelCA) */ // @ApiMember(Description="Provider: evn_ca, vt (ViettelCA)") String? provider; String? serialNumber; String? displayName; bool? isDefault; CreateAccountSignature({this.provider,this.serialNumber,this.displayName,this.isDefault}); CreateAccountSignature.fromJson(Map json) { fromMap(json); } fromMap(Map json) { provider = json['provider']; serialNumber = json['serialNumber']; displayName = json['displayName']; isDefault = json['isDefault']; return this; } Map toJson() => { 'provider': provider, 'serialNumber': serialNumber, 'displayName': displayName, 'isDefault': isDefault }; createResponse() => AccountSignatureResponse(); getResponseTypeName() => "AccountSignatureResponse"; getTypeName() => "CreateAccountSignature"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'etc_api.vsmlab.vn', types: { 'IResponseRequest': TypeInfo(TypeOf.Interface), 'AccountSignature': TypeInfo(TypeOf.Class, create:() => AccountSignature()), 'AccountSignatureResponse': TypeInfo(TypeOf.Class, create:() => AccountSignatureResponse()), 'CreateAccountSignature': TypeInfo(TypeOf.Class, create:() => CreateAccountSignature()), });