😎增加开启强制修改密码(未完待续)
This commit is contained in:
parent
fd37e38402
commit
15ff1a29c9
@ -65,4 +65,9 @@ public class ClaimConst
|
||||
/// 登录模式PC、APP
|
||||
/// </summary>
|
||||
public const string LoginMode = "LoginMode";
|
||||
|
||||
/// <summary>
|
||||
/// 最新密码修改时间
|
||||
/// </summary>
|
||||
public const string LastChangePasswordTime = "LastChangePasswordTime";
|
||||
}
|
||||
@ -81,6 +81,11 @@ public class ConfigConst
|
||||
/// </summary>
|
||||
public const string SysRegionSyncLevel = "sys_region_sync_level";
|
||||
|
||||
/// <summary>
|
||||
/// 开启强制修改密码
|
||||
/// </summary>
|
||||
public const string SysForceChangePassword = "sys_force_change_password";
|
||||
|
||||
/// <summary>
|
||||
/// Default 分组
|
||||
/// </summary>
|
||||
|
||||
@ -313,6 +313,12 @@ public partial class SysUser : EntityTenant
|
||||
[MaxLength(512)]
|
||||
public string? Signature { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 最新密码修改时间
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "最新密码修改时间")]
|
||||
public DateTime? LastChangePasswordTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 验证超级管理员类型,若账号类型为超级管理员则报错
|
||||
/// </summary>
|
||||
|
||||
@ -33,6 +33,8 @@ public class SysConfigSeedData : ISqlSugarEntitySeedData<SysConfig>
|
||||
new SysConfig{ Id=1300000000211, Name="域登录验证", Code=ConfigConst.SysDomainLogin, Value="False", SysFlag=YesNoEnum.Y, Remark="是否开启域登录验证", OrderNo=120, GroupCode=ConfigConst.SysDefaultGroup, CreateTime=DateTime.Parse("2022-02-10 00:00:00") },
|
||||
new SysConfig{ Id=1300000000221, Name="数据校验日志", Code=ConfigConst.SysValidationLog, Value="True", SysFlag=YesNoEnum.Y, Remark="是否数据校验日志", OrderNo=130, GroupCode=ConfigConst.SysDefaultGroup, CreateTime=DateTime.Parse("2022-02-10 00:00:00") },
|
||||
new SysConfig{ Id=1300000000231, Name="行政区域同步层级", Code=ConfigConst.SysRegionSyncLevel, Value="3", SysFlag=YesNoEnum.Y, Remark="行政区域同步层级 1-省级,2-市级,3-区县级,4-街道级,5-村级", OrderNo=140, GroupCode=ConfigConst.SysDefaultGroup, CreateTime=DateTime.Parse("2022-02-10 00:00:00") },
|
||||
new SysConfig{ Id=1300000000241, Name="开启强制修改密码", Code=ConfigConst.SysForceChangePassword, Value="True", SysFlag=YesNoEnum.Y, Remark="开启强制修改密码", OrderNo=150, GroupCode=ConfigConst.SysDefaultGroup, CreateTime=DateTime.Parse("2022-02-10 00:00:00") },
|
||||
|
||||
new SysConfig{ Id=1300000000301, Name="系统主标题", Code=ConfigConst.SysWebTitle, Value="Admin.NET.Pro", SysFlag=YesNoEnum.Y, Remark="系统主标题", OrderNo=300, GroupCode=ConfigConst.SysWebConfigGroup, CreateTime=DateTime.Parse("2022-02-10 00:00:00") },
|
||||
new SysConfig{ Id=1300000000311, Name="系统副标题", Code=ConfigConst.SysWebViceTitle, Value="Admin.NET.Pro", SysFlag=YesNoEnum.Y, Remark="系统副标题", OrderNo=310, GroupCode=ConfigConst.SysWebConfigGroup, CreateTime=DateTime.Parse("2022-02-10 00:00:00") },
|
||||
new SysConfig{ Id=1300000000321, Name="系统描述", Code=ConfigConst.SysWebViceDesc, Value="站在巨人肩膀上的 .NET 通用权限开发框架", SysFlag=YesNoEnum.Y, Remark="系统描述", OrderNo=320, GroupCode=ConfigConst.SysWebConfigGroup, CreateTime=DateTime.Parse("2022-02-10 00:00:00") },
|
||||
|
||||
@ -230,6 +230,7 @@ public class SysAuthService : IDynamicApiController, ITransient
|
||||
{ ClaimConst.OrgName, user.SysOrg?.Name },
|
||||
{ ClaimConst.OrgType, user.SysOrg?.Type },
|
||||
{ ClaimConst.LoginMode, loginMode },
|
||||
{ ClaimConst.LastChangePasswordTime, user.LastChangePasswordTime },
|
||||
}, tokenExpire);
|
||||
|
||||
// 生成刷新Token令牌
|
||||
|
||||
@ -20,10 +20,12 @@ import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } fr
|
||||
import { AddSubscribeMessageTemplateInput } from '../models';
|
||||
import { AdminResultGenerateQRImageOutput } from '../models';
|
||||
import { AdminResultObject } from '../models';
|
||||
import { AdminResultSysFile } from '../models';
|
||||
import { AdminResultWxOpenIdOutput } from '../models';
|
||||
import { AdminResultWxPhoneOutput } from '../models';
|
||||
import { GenerateQRImageInput } from '../models';
|
||||
import { SendSubscribeMessageInput } from '../models';
|
||||
import { SetNickNameInput } from '../models';
|
||||
import { WxOpenIdLoginInput } from '../models';
|
||||
/**
|
||||
* SysWxOpenApi - axios parameter creator
|
||||
@ -218,6 +220,170 @@ export const SysWxOpenApiAxiosParamCreator = function (configuration?: Configura
|
||||
options: localVarRequestOptions,
|
||||
};
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 设置小程序用户昵称
|
||||
* @param {SetNickNameInput} [body]
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
apiSysWxOpenSetNickNamePost: async (body?: SetNickNameInput, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
||||
const localVarPath = `/api/sysWxOpen/setNickName`;
|
||||
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
||||
const localVarUrlObj = new URL(localVarPath, 'https://example.com');
|
||||
let baseOptions;
|
||||
if (configuration) {
|
||||
baseOptions = configuration.baseOptions;
|
||||
}
|
||||
const localVarRequestOptions :AxiosRequestConfig = { method: 'POST', ...baseOptions, ...options};
|
||||
const localVarHeaderParameter = {} as any;
|
||||
const localVarQueryParameter = {} as any;
|
||||
|
||||
// authentication Bearer required
|
||||
// http bearer authentication required
|
||||
if (configuration && configuration.accessToken) {
|
||||
const accessToken = typeof configuration.accessToken === 'function'
|
||||
? await configuration.accessToken()
|
||||
: await configuration.accessToken;
|
||||
localVarHeaderParameter["Authorization"] = "Bearer " + accessToken;
|
||||
}
|
||||
|
||||
localVarHeaderParameter['Content-Type'] = 'application/json-patch+json';
|
||||
|
||||
const query = new URLSearchParams(localVarUrlObj.search);
|
||||
for (const key in localVarQueryParameter) {
|
||||
query.set(key, localVarQueryParameter[key]);
|
||||
}
|
||||
for (const key in options.params) {
|
||||
query.set(key, options.params[key]);
|
||||
}
|
||||
localVarUrlObj.search = (new URLSearchParams(query)).toString();
|
||||
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
||||
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
|
||||
const needsSerialization = (typeof body !== "string") || localVarRequestOptions.headers['Content-Type'] === 'application/json';
|
||||
localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || "");
|
||||
|
||||
return {
|
||||
url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,
|
||||
options: localVarRequestOptions,
|
||||
};
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 上传小程序头像
|
||||
* @param {string} [openId]
|
||||
* @param {Blob} [file]
|
||||
* @param {string} [fileType]
|
||||
* @param {string} [path]
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
apiSysWxOpenUploadAvatarPostForm: async (openId?: string, file?: Blob, fileType?: string, path?: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
||||
const localVarPath = `/api/sysWxOpen/uploadAvatar`;
|
||||
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
||||
const localVarUrlObj = new URL(localVarPath, 'https://example.com');
|
||||
let baseOptions;
|
||||
if (configuration) {
|
||||
baseOptions = configuration.baseOptions;
|
||||
}
|
||||
const localVarRequestOptions :AxiosRequestConfig = { method: 'POST', ...baseOptions, ...options};
|
||||
const localVarHeaderParameter = {} as any;
|
||||
const localVarQueryParameter = {} as any;
|
||||
const localVarFormParams = new FormData();
|
||||
|
||||
// authentication Bearer required
|
||||
// http bearer authentication required
|
||||
if (configuration && configuration.accessToken) {
|
||||
const accessToken = typeof configuration.accessToken === 'function'
|
||||
? await configuration.accessToken()
|
||||
: await configuration.accessToken;
|
||||
localVarHeaderParameter["Authorization"] = "Bearer " + accessToken;
|
||||
}
|
||||
|
||||
|
||||
if (openId !== undefined) {
|
||||
localVarFormParams.append('OpenId', openId as any);
|
||||
}
|
||||
|
||||
if (file !== undefined) {
|
||||
localVarFormParams.append('File', file as any);
|
||||
}
|
||||
|
||||
if (fileType !== undefined) {
|
||||
localVarFormParams.append('FileType', fileType as any);
|
||||
}
|
||||
|
||||
if (path !== undefined) {
|
||||
localVarFormParams.append('Path', path as any);
|
||||
}
|
||||
|
||||
localVarHeaderParameter['Content-Type'] = 'multipart/form-data';
|
||||
const query = new URLSearchParams(localVarUrlObj.search);
|
||||
for (const key in localVarQueryParameter) {
|
||||
query.set(key, localVarQueryParameter[key]);
|
||||
}
|
||||
for (const key in options.params) {
|
||||
query.set(key, options.params[key]);
|
||||
}
|
||||
localVarUrlObj.search = (new URLSearchParams(query)).toString();
|
||||
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
||||
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
|
||||
localVarRequestOptions.data = localVarFormParams;
|
||||
|
||||
return {
|
||||
url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,
|
||||
options: localVarRequestOptions,
|
||||
};
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 获取小程序用户信息
|
||||
* @param {string} openid
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
apiSysWxOpenUserInfoOpenidGet: async (openid: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
||||
// verify required parameter 'openid' is not null or undefined
|
||||
if (openid === null || openid === undefined) {
|
||||
throw new RequiredError('openid','Required parameter openid was null or undefined when calling apiSysWxOpenUserInfoOpenidGet.');
|
||||
}
|
||||
const localVarPath = `/api/sysWxOpen/userInfo/{openid}`
|
||||
.replace(`{${"openid"}}`, encodeURIComponent(String(openid)));
|
||||
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
||||
const localVarUrlObj = new URL(localVarPath, 'https://example.com');
|
||||
let baseOptions;
|
||||
if (configuration) {
|
||||
baseOptions = configuration.baseOptions;
|
||||
}
|
||||
const localVarRequestOptions :AxiosRequestConfig = { method: 'GET', ...baseOptions, ...options};
|
||||
const localVarHeaderParameter = {} as any;
|
||||
const localVarQueryParameter = {} as any;
|
||||
|
||||
// authentication Bearer required
|
||||
// http bearer authentication required
|
||||
if (configuration && configuration.accessToken) {
|
||||
const accessToken = typeof configuration.accessToken === 'function'
|
||||
? await configuration.accessToken()
|
||||
: await configuration.accessToken;
|
||||
localVarHeaderParameter["Authorization"] = "Bearer " + accessToken;
|
||||
}
|
||||
|
||||
const query = new URLSearchParams(localVarUrlObj.search);
|
||||
for (const key in localVarQueryParameter) {
|
||||
query.set(key, localVarQueryParameter[key]);
|
||||
}
|
||||
for (const key in options.params) {
|
||||
query.set(key, options.params[key]);
|
||||
}
|
||||
localVarUrlObj.search = (new URLSearchParams(query)).toString();
|
||||
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
||||
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
|
||||
|
||||
return {
|
||||
url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,
|
||||
options: localVarRequestOptions,
|
||||
};
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 验证签名 🔖
|
||||
@ -506,6 +672,51 @@ export const SysWxOpenApiFp = function(configuration?: Configuration) {
|
||||
return axios.request(axiosRequestArgs);
|
||||
};
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 设置小程序用户昵称
|
||||
* @param {SetNickNameInput} [body]
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
async apiSysWxOpenSetNickNamePost(body?: SetNickNameInput, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<void>>> {
|
||||
const localVarAxiosArgs = await SysWxOpenApiAxiosParamCreator(configuration).apiSysWxOpenSetNickNamePost(body, options);
|
||||
return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {
|
||||
const axiosRequestArgs :AxiosRequestConfig = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};
|
||||
return axios.request(axiosRequestArgs);
|
||||
};
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 上传小程序头像
|
||||
* @param {string} [openId]
|
||||
* @param {Blob} [file]
|
||||
* @param {string} [fileType]
|
||||
* @param {string} [path]
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
async apiSysWxOpenUploadAvatarPostForm(openId?: string, file?: Blob, fileType?: string, path?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<AdminResultSysFile>>> {
|
||||
const localVarAxiosArgs = await SysWxOpenApiAxiosParamCreator(configuration).apiSysWxOpenUploadAvatarPostForm(openId, file, fileType, path, options);
|
||||
return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {
|
||||
const axiosRequestArgs :AxiosRequestConfig = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};
|
||||
return axios.request(axiosRequestArgs);
|
||||
};
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 获取小程序用户信息
|
||||
* @param {string} openid
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
async apiSysWxOpenUserInfoOpenidGet(openid: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<AdminResultObject>>> {
|
||||
const localVarAxiosArgs = await SysWxOpenApiAxiosParamCreator(configuration).apiSysWxOpenUserInfoOpenidGet(openid, options);
|
||||
return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {
|
||||
const axiosRequestArgs :AxiosRequestConfig = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};
|
||||
return axios.request(axiosRequestArgs);
|
||||
};
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 验证签名 🔖
|
||||
@ -614,6 +825,39 @@ export const SysWxOpenApiFactory = function (configuration?: Configuration, base
|
||||
async apiSysWxOpenSendSubscribeMessagePost(body?: SendSubscribeMessageInput, options?: AxiosRequestConfig): Promise<AxiosResponse<AdminResultObject>> {
|
||||
return SysWxOpenApiFp(configuration).apiSysWxOpenSendSubscribeMessagePost(body, options).then((request) => request(axios, basePath));
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 设置小程序用户昵称
|
||||
* @param {SetNickNameInput} [body]
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
async apiSysWxOpenSetNickNamePost(body?: SetNickNameInput, options?: AxiosRequestConfig): Promise<AxiosResponse<void>> {
|
||||
return SysWxOpenApiFp(configuration).apiSysWxOpenSetNickNamePost(body, options).then((request) => request(axios, basePath));
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 上传小程序头像
|
||||
* @param {string} [openId]
|
||||
* @param {Blob} [file]
|
||||
* @param {string} [fileType]
|
||||
* @param {string} [path]
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
async apiSysWxOpenUploadAvatarPostForm(openId?: string, file?: Blob, fileType?: string, path?: string, options?: AxiosRequestConfig): Promise<AxiosResponse<AdminResultSysFile>> {
|
||||
return SysWxOpenApiFp(configuration).apiSysWxOpenUploadAvatarPostForm(openId, file, fileType, path, options).then((request) => request(axios, basePath));
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 获取小程序用户信息
|
||||
* @param {string} openid
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
async apiSysWxOpenUserInfoOpenidGet(openid: string, options?: AxiosRequestConfig): Promise<AxiosResponse<AdminResultObject>> {
|
||||
return SysWxOpenApiFp(configuration).apiSysWxOpenUserInfoOpenidGet(openid, options).then((request) => request(axios, basePath));
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 验证签名 🔖
|
||||
@ -711,6 +955,42 @@ export class SysWxOpenApi extends BaseAPI {
|
||||
public async apiSysWxOpenSendSubscribeMessagePost(body?: SendSubscribeMessageInput, options?: AxiosRequestConfig) : Promise<AxiosResponse<AdminResultObject>> {
|
||||
return SysWxOpenApiFp(this.configuration).apiSysWxOpenSendSubscribeMessagePost(body, options).then((request) => request(this.axios, this.basePath));
|
||||
}
|
||||
/**
|
||||
*
|
||||
* @summary 设置小程序用户昵称
|
||||
* @param {SetNickNameInput} [body]
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
* @memberof SysWxOpenApi
|
||||
*/
|
||||
public async apiSysWxOpenSetNickNamePost(body?: SetNickNameInput, options?: AxiosRequestConfig) : Promise<AxiosResponse<void>> {
|
||||
return SysWxOpenApiFp(this.configuration).apiSysWxOpenSetNickNamePost(body, options).then((request) => request(this.axios, this.basePath));
|
||||
}
|
||||
/**
|
||||
*
|
||||
* @summary 上传小程序头像
|
||||
* @param {string} [openId]
|
||||
* @param {Blob} [file]
|
||||
* @param {string} [fileType]
|
||||
* @param {string} [path]
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
* @memberof SysWxOpenApi
|
||||
*/
|
||||
public async apiSysWxOpenUploadAvatarPostForm(openId?: string, file?: Blob, fileType?: string, path?: string, options?: AxiosRequestConfig) : Promise<AxiosResponse<AdminResultSysFile>> {
|
||||
return SysWxOpenApiFp(this.configuration).apiSysWxOpenUploadAvatarPostForm(openId, file, fileType, path, options).then((request) => request(this.axios, this.basePath));
|
||||
}
|
||||
/**
|
||||
*
|
||||
* @summary 获取小程序用户信息
|
||||
* @param {string} openid
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
* @memberof SysWxOpenApi
|
||||
*/
|
||||
public async apiSysWxOpenUserInfoOpenidGet(openid: string, options?: AxiosRequestConfig) : Promise<AxiosResponse<AdminResultObject>> {
|
||||
return SysWxOpenApiFp(this.configuration).apiSysWxOpenUserInfoOpenidGet(openid, options).then((request) => request(this.axios, this.basePath));
|
||||
}
|
||||
/**
|
||||
*
|
||||
* @summary 验证签名 🔖
|
||||
|
||||
@ -399,6 +399,14 @@ export interface AddUserInput {
|
||||
*/
|
||||
signature?: string | null;
|
||||
|
||||
/**
|
||||
* 最新密码修改时间
|
||||
*
|
||||
* @type {Date}
|
||||
* @memberof AddUserInput
|
||||
*/
|
||||
lastChangePasswordTime?: Date | null;
|
||||
|
||||
/**
|
||||
* 账号
|
||||
*
|
||||
|
||||
@ -301,6 +301,7 @@ export * from './search';
|
||||
export * from './security-rule-set';
|
||||
export * from './send-subscribe-message-input';
|
||||
export * from './serialization-format';
|
||||
export * from './set-nick-name-input';
|
||||
export * from './signature-input';
|
||||
export * from './sm-key-pair-output';
|
||||
export * from './sms-verify-code-input';
|
||||
@ -370,6 +371,7 @@ export * from './sys-schedule';
|
||||
export * from './sys-user';
|
||||
export * from './sys-user-ext-org';
|
||||
export * from './sys-wechat-pay';
|
||||
export * from './sys-wx-open-upload-avatar-body';
|
||||
export * from './table-output';
|
||||
export * from './tenant-id-input';
|
||||
export * from './tenant-input';
|
||||
|
||||
38
Web/src/api-services/models/set-nick-name-input.ts
Normal file
38
Web/src/api-services/models/set-nick-name-input.ts
Normal file
@ -0,0 +1,38 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Admin.NET 通用权限开发平台
|
||||
* 让 .NET 开发更简单、更通用、更流行。整合最新技术,模块插件式开发,前后端分离,开箱即用。<br/><u><b><font color='FF0000'> 👮不得利用本项目从事危害国家安全、扰乱社会秩序、侵犯他人合法权益等法律法规禁止的活动!任何基于本项目二次开发而产生的一切法律纠纷和责任,我们不承担任何责任!</font></b></u>
|
||||
*
|
||||
* OpenAPI spec version: 1.0.0
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by the swagger code generator program.
|
||||
* https://github.com/swagger-api/swagger-codegen.git
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @export
|
||||
* @interface SetNickNameInput
|
||||
*/
|
||||
export interface SetNickNameInput {
|
||||
|
||||
/**
|
||||
* 小程序用户身份标识
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof SetNickNameInput
|
||||
*/
|
||||
openId: string;
|
||||
|
||||
/**
|
||||
* 昵称
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof SetNickNameInput
|
||||
*/
|
||||
nickName: string;
|
||||
}
|
||||
@ -413,4 +413,12 @@ export interface SysUser {
|
||||
* @memberof SysUser
|
||||
*/
|
||||
signature?: string | null;
|
||||
|
||||
/**
|
||||
* 最新密码修改时间
|
||||
*
|
||||
* @type {Date}
|
||||
* @memberof SysUser
|
||||
*/
|
||||
lastChangePasswordTime?: Date | null;
|
||||
}
|
||||
|
||||
@ -0,0 +1,54 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Admin.NET 通用权限开发平台
|
||||
* 让 .NET 开发更简单、更通用、更流行。整合最新技术,模块插件式开发,前后端分离,开箱即用。<br/><u><b><font color='FF0000'> 👮不得利用本项目从事危害国家安全、扰乱社会秩序、侵犯他人合法权益等法律法规禁止的活动!任何基于本项目二次开发而产生的一切法律纠纷和责任,我们不承担任何责任!</font></b></u>
|
||||
*
|
||||
* OpenAPI spec version: 1.0.0
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by the swagger code generator program.
|
||||
* https://github.com/swagger-api/swagger-codegen.git
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @export
|
||||
* @interface SysWxOpenUploadAvatarBody
|
||||
*/
|
||||
export interface SysWxOpenUploadAvatarBody {
|
||||
|
||||
/**
|
||||
* 小程序用户身份标识
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof SysWxOpenUploadAvatarBody
|
||||
*/
|
||||
openId: string;
|
||||
|
||||
/**
|
||||
* 文件
|
||||
*
|
||||
* @type {Blob}
|
||||
* @memberof SysWxOpenUploadAvatarBody
|
||||
*/
|
||||
file: Blob;
|
||||
|
||||
/**
|
||||
* 文件类型
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof SysWxOpenUploadAvatarBody
|
||||
*/
|
||||
fileType?: string;
|
||||
|
||||
/**
|
||||
* 文件路径
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof SysWxOpenUploadAvatarBody
|
||||
*/
|
||||
path?: string;
|
||||
}
|
||||
@ -399,6 +399,14 @@ export interface UpdateUserInput {
|
||||
*/
|
||||
signature?: string | null;
|
||||
|
||||
/**
|
||||
* 最新密码修改时间
|
||||
*
|
||||
* @type {Date}
|
||||
* @memberof UpdateUserInput
|
||||
*/
|
||||
lastChangePasswordTime?: Date | null;
|
||||
|
||||
/**
|
||||
* 账号
|
||||
*
|
||||
|
||||
@ -414,6 +414,14 @@ export interface UserOutput {
|
||||
*/
|
||||
signature?: string | null;
|
||||
|
||||
/**
|
||||
* 最新密码修改时间
|
||||
*
|
||||
* @type {Date}
|
||||
* @memberof UserOutput
|
||||
*/
|
||||
lastChangePasswordTime?: Date | null;
|
||||
|
||||
/**
|
||||
* 机构名称
|
||||
*
|
||||
|
||||
Loading…
Reference in New Issue
Block a user