Merge pull request 'main' (#1) from Admin.NET/Admin.NET.Pro:main into main
Reviewed-on: http://101.43.53.74:3000/362270511/Admin.NET.Pro/pulls/1
This commit is contained in:
commit
00ce696538
@ -18,9 +18,9 @@
|
||||
<PackageReference Include="AspectCore.Extensions.Reflection" Version="2.4.0" />
|
||||
<PackageReference Include="AspNetCoreRateLimit" Version="5.0.0" />
|
||||
<PackageReference Include="Elastic.Clients.Elasticsearch" Version="8.14.6" />
|
||||
<PackageReference Include="Furion.Extras.Authentication.JwtBearer" Version="4.9.4.4" />
|
||||
<PackageReference Include="Furion.Extras.ObjectMapper.Mapster" Version="4.9.4.4" />
|
||||
<PackageReference Include="Furion.Pure" Version="4.9.4.4" />
|
||||
<PackageReference Include="Furion.Extras.Authentication.JwtBearer" Version="4.9.4.5" />
|
||||
<PackageReference Include="Furion.Extras.ObjectMapper.Mapster" Version="4.9.4.5" />
|
||||
<PackageReference Include="Furion.Pure" Version="4.9.4.5" />
|
||||
<PackageReference Include="IPTools.China" Version="1.6.0" />
|
||||
<PackageReference Include="IPTools.International" Version="1.6.0" />
|
||||
<PackageReference Include="Magicodes.IE.Excel" Version="2.7.5.1" />
|
||||
@ -34,10 +34,10 @@
|
||||
<PackageReference Include="SixLabors.ImageSharp.Web" Version="3.1.2" />
|
||||
<PackageReference Include="SKIT.FlurlHttpClient.Wechat.Api" Version="3.3.0" />
|
||||
<PackageReference Include="SKIT.FlurlHttpClient.Wechat.TenpayV3" Version="3.6.0" />
|
||||
<PackageReference Include="SqlSugarCore" Version="5.1.4.160" />
|
||||
<PackageReference Include="SqlSugarCore" Version="5.1.4.162" />
|
||||
<PackageReference Include="SSH.NET" Version="2024.1.0" />
|
||||
<PackageReference Include="System.Linq.Dynamic.Core" Version="1.4.3" />
|
||||
<PackageReference Include="TencentCloudSDK.Sms" Version="3.0.1044" />
|
||||
<PackageReference Include="TencentCloudSDK.Sms" Version="3.0.1046" />
|
||||
<PackageReference Include="UAParser" Version="3.1.47" />
|
||||
<PackageReference Include="Yitter.IdGenerator" Version="1.0.14" />
|
||||
</ItemGroup>
|
||||
@ -45,7 +45,7 @@
|
||||
<ItemGroup Condition=" '$(TargetFramework)' == 'net6.0' ">
|
||||
<PackageReference Include="AspNet.Security.OAuth.Gitee" Version="6.0.15" />
|
||||
<PackageReference Include="AspNet.Security.OAuth.Weixin" Version="6.0.15" />
|
||||
<PackageReference Include="Lazy.Captcha.Core" Version="2.0.6" />
|
||||
<PackageReference Include="Lazy.Captcha.Core" Version="2.0.8" />
|
||||
<PackageReference Include="Microsoft.AspNetCore.DataProtection.StackExchangeRedis" Version="6.0.31" />
|
||||
<PackageReference Include="Microsoft.AspNetCore.SignalR.Protocols.NewtonsoftJson" Version="6.0.31" />
|
||||
<PackageReference Include="Microsoft.AspNetCore.SignalR.StackExchangeRedis" Version="6.0.31" />
|
||||
|
||||
@ -100,4 +100,9 @@ public class CacheConst
|
||||
/// 系统字典缓存
|
||||
/// </summary>
|
||||
public const string KeyDict = "sys_dict:";
|
||||
|
||||
/// <summary>
|
||||
/// Excel临时文件缓存
|
||||
/// </summary>
|
||||
public const string KeyExcelTemp = "sys_excel_temp:";
|
||||
}
|
||||
@ -70,7 +70,7 @@ public class EnumToDictJob : IJob
|
||||
});
|
||||
try
|
||||
{
|
||||
db.Ado.BeginTran();
|
||||
db.BeginTran();
|
||||
|
||||
if (uSysDictType.Count > 0)
|
||||
await db.Updateable(uSysDictType).ExecuteCommandAsync(stoppingToken);
|
||||
@ -78,11 +78,11 @@ public class EnumToDictJob : IJob
|
||||
if (uSysDictData.Count > 0)
|
||||
await db.Updateable(uSysDictData).ExecuteCommandAsync(stoppingToken);
|
||||
|
||||
db.Ado.CommitTran();
|
||||
db.CommitTran();
|
||||
}
|
||||
catch (Exception error)
|
||||
{
|
||||
db.Ado.RollbackTran();
|
||||
db.RollbackTran();
|
||||
Log.Error($"{context.Trigger.Description}更新枚举转换字典入库错误:" + _jsonSerializer.Serialize(error));
|
||||
throw new Exception($"{context.Trigger.Description}更新枚举转换字典入库错误");
|
||||
}
|
||||
@ -123,7 +123,7 @@ public class EnumToDictJob : IJob
|
||||
});
|
||||
try
|
||||
{
|
||||
db.Ado.BeginTran();
|
||||
db.BeginTran();
|
||||
|
||||
if (iDictType.Count > 0)
|
||||
await db.Insertable(iDictType).ExecuteCommandAsync(stoppingToken);
|
||||
@ -131,11 +131,11 @@ public class EnumToDictJob : IJob
|
||||
if (iDictData.Count > 0)
|
||||
await db.Insertable(iDictData).ExecuteCommandAsync(stoppingToken);
|
||||
|
||||
db.Ado.CommitTran();
|
||||
db.CommitTran();
|
||||
}
|
||||
catch (Exception error)
|
||||
{
|
||||
db.Ado.RollbackTran();
|
||||
db.RollbackTran();
|
||||
Log.Error($"{context.Trigger.Description}新增枚举转换字典入库错误:" + _jsonSerializer.Serialize(error));
|
||||
throw new Exception($"{context.Trigger.Description}新增枚举转换字典入库错误");
|
||||
}
|
||||
|
||||
@ -19,33 +19,34 @@ public class SysBaseApiSeedData : ISqlSugarEntitySeedData<SysBaseApi>
|
||||
{
|
||||
return new[]
|
||||
{
|
||||
new SysBaseApi { Id = 1300000000001, Route = "sysAuth/login" },
|
||||
new SysBaseApi { Id = 1300000000002, Route = "sysAuth/unLockScreen" },
|
||||
new SysBaseApi { Id = 1300000000003, Route = "sysAuth/userInfo" },
|
||||
new SysBaseApi { Id = 1300000000004, Route = "sysAuth/refreshToken" },
|
||||
new SysBaseApi { Id = 1300000000005, Route = "sysAuth/loginConfig" },
|
||||
new SysBaseApi { Id = 1300000000006, Route = "sysAuth/watermarkConfig" },
|
||||
new SysBaseApi { Id = 1300000000007, Route = "sysAuth/captcha" },
|
||||
new SysBaseApi { Id = 1300000000008, Route = "sysMenu/loginMenuTree" },
|
||||
new SysBaseApi { Id = 1300000000009, Route = "sysOAuth/signIn" },
|
||||
new SysBaseApi { Id = 1300000000010, Route = "sysOAuth/signInCallback" },
|
||||
new SysBaseApi { Id = 1300000000011, Route = "sysOnlineUser/page" },
|
||||
new SysBaseApi { Id = 1300000000012, Route = "sysOrg/list" },
|
||||
new SysBaseApi { Id = 1300000000013, Route = "sysPos/list" },
|
||||
new SysBaseApi { Id = 1300000000014, Route = "sysRole/page" },
|
||||
new SysBaseApi { Id = 1300000000015, Route = "sysRole/list" },
|
||||
new SysBaseApi { Id = 1300000000016, Route = "sysFile/uploadAvatar" },
|
||||
new SysBaseApi { Id = 1300000000017, Route = "sysFile/uploadSignature" },
|
||||
new SysBaseApi { Id = 1300000000018, Route = "sysUser/baseInfo" },
|
||||
new SysBaseApi { Id = 1300000000019, Route = "sysUser/changePwd" },
|
||||
new SysBaseApi { Id = 1300000000020, Route = "sysNotice/page" },
|
||||
new SysBaseApi { Id = 1300000000021, Route = "sysNotice/add" },
|
||||
new SysBaseApi { Id = 1300000000022, Route = "sysNotice/update" },
|
||||
new SysBaseApi { Id = 1300000000023, Route = "sysNotice/delete" },
|
||||
new SysBaseApi { Id = 1300000000024, Route = "sysNotice/public" },
|
||||
new SysBaseApi { Id = 1300000000025, Route = "sysNotice/setRead" },
|
||||
new SysBaseApi { Id = 1300000000026, Route = "sysNotice/pageReceived" },
|
||||
new SysBaseApi { Id = 1300000000027, Route = "sysNotice/unReadList" },
|
||||
new SysBaseApi { Id = 1300000000010, Route = "sysAuth/login" },
|
||||
new SysBaseApi { Id = 1300000000020, Route = "sysAuth/unLockScreen" },
|
||||
new SysBaseApi { Id = 1300000000030, Route = "sysAuth/userInfo" },
|
||||
new SysBaseApi { Id = 1300000000040, Route = "sysAuth/refreshToken" },
|
||||
new SysBaseApi { Id = 1300000000050, Route = "sysAuth/loginConfig" },
|
||||
new SysBaseApi { Id = 1300000000060, Route = "sysAuth/watermarkConfig" },
|
||||
new SysBaseApi { Id = 1300000000070, Route = "sysAuth/captcha" },
|
||||
new SysBaseApi { Id = 1300000000080, Route = "sysAuth/logout" },
|
||||
new SysBaseApi { Id = 1300000000090, Route = "sysMenu/loginMenuTree" },
|
||||
new SysBaseApi { Id = 1300000000100, Route = "sysOAuth/signIn" },
|
||||
new SysBaseApi { Id = 1300000000110, Route = "sysOAuth/signInCallback" },
|
||||
new SysBaseApi { Id = 1300000000120, Route = "sysOnlineUser/page" },
|
||||
new SysBaseApi { Id = 1300000000130, Route = "sysOrg/list" },
|
||||
new SysBaseApi { Id = 1300000000140, Route = "sysPos/list" },
|
||||
new SysBaseApi { Id = 1300000000150, Route = "sysRole/page" },
|
||||
new SysBaseApi { Id = 1300000000160, Route = "sysRole/list" },
|
||||
new SysBaseApi { Id = 1300000000170, Route = "sysFile/uploadAvatar" },
|
||||
new SysBaseApi { Id = 1300000000180, Route = "sysFile/uploadSignature" },
|
||||
new SysBaseApi { Id = 1300000000190, Route = "sysUser/baseInfo" },
|
||||
new SysBaseApi { Id = 1300000000200, Route = "sysUser/changePwd" },
|
||||
new SysBaseApi { Id = 1300000000210, Route = "sysNotice/page" },
|
||||
new SysBaseApi { Id = 1300000000220, Route = "sysNotice/add" },
|
||||
new SysBaseApi { Id = 1300000000230, Route = "sysNotice/update" },
|
||||
new SysBaseApi { Id = 1300000000240, Route = "sysNotice/delete" },
|
||||
new SysBaseApi { Id = 1300000000250, Route = "sysNotice/public" },
|
||||
new SysBaseApi { Id = 1300000000260, Route = "sysNotice/setRead" },
|
||||
new SysBaseApi { Id = 1300000000270, Route = "sysNotice/pageReceived" },
|
||||
new SysBaseApi { Id = 1300000000280, Route = "sysNotice/unReadList" },
|
||||
};
|
||||
}
|
||||
}
|
||||
@ -9,7 +9,7 @@ namespace Admin.NET.Core.Service;
|
||||
/// <summary>
|
||||
/// 系统域登录信息配置输入参数
|
||||
/// </summary>
|
||||
public class SysLdapInput : BasePageInput
|
||||
public class PageSysLdapInput : BasePageInput
|
||||
{
|
||||
/// <summary>
|
||||
/// 关键字查询
|
||||
|
||||
@ -27,7 +27,7 @@ public class SysLdapService : IDynamicApiController, ITransient
|
||||
/// <param name="input"></param>
|
||||
/// <returns></returns>
|
||||
[DisplayName("获取系统域登录配置分页列表")]
|
||||
public async Task<SqlSugarPagedList<SysLdap>> Page(SysLdapInput input)
|
||||
public async Task<SqlSugarPagedList<SysLdap>> Page(PageSysLdapInput input)
|
||||
{
|
||||
return await _sysLdapRep.AsQueryable()
|
||||
.WhereIF(!string.IsNullOrWhiteSpace(input.SearchKey), u => u.Host.Contains(input.SearchKey.Trim()))
|
||||
|
||||
@ -144,6 +144,10 @@ public class SysCacheService : IDynamicApiController, ISingleton
|
||||
[DisplayName("获取缓存值")]
|
||||
public object GetValue(string key)
|
||||
{
|
||||
// 若Key经过URL编码则进行解码
|
||||
if (Regex.IsMatch(key, @"%[0-9a-fA-F]{2}"))
|
||||
key = HttpUtility.UrlDecode(key);
|
||||
|
||||
return _cacheProvider.Cache == Cache.Default
|
||||
? _cacheProvider.Cache.Get<object>($"{_cacheOptions.Prefix}{key}")
|
||||
: _cacheProvider.Cache.Get<string>($"{_cacheOptions.Prefix}{key}");
|
||||
|
||||
@ -1,192 +1,192 @@
|
||||
// Admin.NET 项目的版权、商标、专利和其他相关权利均受相应法律法规的保护。使用本项目应遵守相关法律法规和许可证的要求。
|
||||
//
|
||||
// 本项目主要遵循 MIT 许可证和 Apache 许可证(版本 2.0)进行分发和使用。许可证位于源代码树根目录中的 LICENSE-MIT 和 LICENSE-APACHE 文件。
|
||||
//
|
||||
// 不得利用本项目从事危害国家安全、扰乱社会秩序、侵犯他人合法权益等法律法规禁止的活动!任何基于本项目二次开发而产生的一切法律纠纷和责任,我们不承担任何责任!
|
||||
|
||||
namespace Admin.NET.Core.Service;
|
||||
|
||||
/// <summary>
|
||||
/// 代码生成参数类
|
||||
/// </summary>
|
||||
public class CodeGenInput : BasePageInput
|
||||
{
|
||||
/// <summary>
|
||||
/// 作者姓名
|
||||
/// </summary>
|
||||
public virtual string AuthorName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 类名
|
||||
/// </summary>
|
||||
public virtual string ClassName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否移除表前缀
|
||||
/// </summary>
|
||||
public virtual string TablePrefix { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 库定位器名
|
||||
/// </summary>
|
||||
public virtual string ConfigId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据库名(保留字段)
|
||||
/// </summary>
|
||||
public virtual string DbName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据库类型
|
||||
/// </summary>
|
||||
public virtual string DbType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据库链接
|
||||
/// </summary>
|
||||
public virtual string ConnectionString { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 生成方式
|
||||
/// </summary>
|
||||
public virtual string GenerateType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据库表名
|
||||
/// </summary>
|
||||
public virtual string TableName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 命名空间
|
||||
/// </summary>
|
||||
public virtual string NameSpace { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 业务名(业务代码包名称)
|
||||
/// </summary>
|
||||
public virtual string BusName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 功能名(数据库表名称)
|
||||
/// </summary>
|
||||
public virtual string TableComment { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 菜单应用分类(应用编码)
|
||||
/// </summary>
|
||||
public virtual string MenuApplication { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否生成菜单
|
||||
/// </summary>
|
||||
public virtual bool GenerateMenu { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 菜单父级
|
||||
/// </summary>
|
||||
public virtual long? MenuPid { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 页面目录
|
||||
/// </summary>
|
||||
public virtual string PagePath { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 支持打印类型
|
||||
/// </summary>
|
||||
public virtual string PrintType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 打印模版名称
|
||||
/// </summary>
|
||||
public virtual string PrintName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否使用 Api Service
|
||||
/// </summary>
|
||||
public virtual bool IsApiService { get; set; }
|
||||
}
|
||||
|
||||
public class AddCodeGenInput : CodeGenInput
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据库表名
|
||||
/// </summary>
|
||||
[Required(ErrorMessage = "数据库表名不能为空")]
|
||||
public override string TableName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 业务名(业务代码包名称)
|
||||
/// </summary>
|
||||
[Required(ErrorMessage = "业务名不能为空")]
|
||||
public override string BusName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 命名空间
|
||||
/// </summary>
|
||||
[Required(ErrorMessage = "命名空间不能为空")]
|
||||
public override string NameSpace { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 作者姓名
|
||||
/// </summary>
|
||||
[Required(ErrorMessage = "作者姓名不能为空")]
|
||||
public override string AuthorName { get; set; }
|
||||
|
||||
///// <summary>
|
||||
///// 类名
|
||||
///// </summary>
|
||||
//[Required(ErrorMessage = "类名不能为空")]
|
||||
//public override string ClassName { get; set; }
|
||||
|
||||
///// <summary>
|
||||
///// 是否移除表前缀
|
||||
///// </summary>
|
||||
//[Required(ErrorMessage = "是否移除表前缀不能为空")]
|
||||
//public override string TablePrefix { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 生成方式
|
||||
/// </summary>
|
||||
[Required(ErrorMessage = "生成方式不能为空")]
|
||||
public override string GenerateType { get; set; }
|
||||
|
||||
///// <summary>
|
||||
///// 功能名(数据库表名称)
|
||||
///// </summary>
|
||||
//[Required(ErrorMessage = "数据库表名不能为空")]
|
||||
//public override string TableComment { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否生成菜单
|
||||
/// </summary>
|
||||
[Required(ErrorMessage = "是否生成菜单不能为空")]
|
||||
public override bool GenerateMenu { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否使用 Api Service
|
||||
/// </summary>
|
||||
public override bool IsApiService { get; set; }
|
||||
}
|
||||
|
||||
public class DeleteCodeGenInput
|
||||
{
|
||||
/// <summary>
|
||||
/// 代码生成器Id
|
||||
/// </summary>
|
||||
[Required(ErrorMessage = "代码生成器Id不能为空")]
|
||||
public long Id { get; set; }
|
||||
}
|
||||
|
||||
public class UpdateCodeGenInput : CodeGenInput
|
||||
{
|
||||
/// <summary>
|
||||
/// 代码生成器Id
|
||||
/// </summary>
|
||||
[Required(ErrorMessage = "代码生成器Id不能为空")]
|
||||
public long Id { get; set; }
|
||||
}
|
||||
|
||||
public class QueryCodeGenInput : DeleteCodeGenInput
|
||||
{
|
||||
// Admin.NET 项目的版权、商标、专利和其他相关权利均受相应法律法规的保护。使用本项目应遵守相关法律法规和许可证的要求。
|
||||
//
|
||||
// 本项目主要遵循 MIT 许可证和 Apache 许可证(版本 2.0)进行分发和使用。许可证位于源代码树根目录中的 LICENSE-MIT 和 LICENSE-APACHE 文件。
|
||||
//
|
||||
// 不得利用本项目从事危害国家安全、扰乱社会秩序、侵犯他人合法权益等法律法规禁止的活动!任何基于本项目二次开发而产生的一切法律纠纷和责任,我们不承担任何责任!
|
||||
|
||||
namespace Admin.NET.Core.Service;
|
||||
|
||||
/// <summary>
|
||||
/// 代码生成参数类
|
||||
/// </summary>
|
||||
public class PageCodeGenInput : BasePageInput
|
||||
{
|
||||
/// <summary>
|
||||
/// 作者姓名
|
||||
/// </summary>
|
||||
public virtual string AuthorName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 类名
|
||||
/// </summary>
|
||||
public virtual string ClassName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否移除表前缀
|
||||
/// </summary>
|
||||
public virtual string TablePrefix { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 库定位器名
|
||||
/// </summary>
|
||||
public virtual string ConfigId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据库名(保留字段)
|
||||
/// </summary>
|
||||
public virtual string DbName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据库类型
|
||||
/// </summary>
|
||||
public virtual string DbType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据库链接
|
||||
/// </summary>
|
||||
public virtual string ConnectionString { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 生成方式
|
||||
/// </summary>
|
||||
public virtual string GenerateType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据库表名
|
||||
/// </summary>
|
||||
public virtual string TableName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 命名空间
|
||||
/// </summary>
|
||||
public virtual string NameSpace { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 业务名(业务代码包名称)
|
||||
/// </summary>
|
||||
public virtual string BusName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 功能名(数据库表名称)
|
||||
/// </summary>
|
||||
public virtual string TableComment { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 菜单应用分类(应用编码)
|
||||
/// </summary>
|
||||
public virtual string MenuApplication { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否生成菜单
|
||||
/// </summary>
|
||||
public virtual bool GenerateMenu { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 菜单父级
|
||||
/// </summary>
|
||||
public virtual long? MenuPid { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 页面目录
|
||||
/// </summary>
|
||||
public virtual string PagePath { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 支持打印类型
|
||||
/// </summary>
|
||||
public virtual string PrintType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 打印模版名称
|
||||
/// </summary>
|
||||
public virtual string PrintName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否使用 Api Service
|
||||
/// </summary>
|
||||
public virtual bool IsApiService { get; set; }
|
||||
}
|
||||
|
||||
public class AddCodeGenInput : PageCodeGenInput
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据库表名
|
||||
/// </summary>
|
||||
[Required(ErrorMessage = "数据库表名不能为空")]
|
||||
public override string TableName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 业务名(业务代码包名称)
|
||||
/// </summary>
|
||||
[Required(ErrorMessage = "业务名不能为空")]
|
||||
public override string BusName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 命名空间
|
||||
/// </summary>
|
||||
[Required(ErrorMessage = "命名空间不能为空")]
|
||||
public override string NameSpace { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 作者姓名
|
||||
/// </summary>
|
||||
[Required(ErrorMessage = "作者姓名不能为空")]
|
||||
public override string AuthorName { get; set; }
|
||||
|
||||
///// <summary>
|
||||
///// 类名
|
||||
///// </summary>
|
||||
//[Required(ErrorMessage = "类名不能为空")]
|
||||
//public override string ClassName { get; set; }
|
||||
|
||||
///// <summary>
|
||||
///// 是否移除表前缀
|
||||
///// </summary>
|
||||
//[Required(ErrorMessage = "是否移除表前缀不能为空")]
|
||||
//public override string TablePrefix { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 生成方式
|
||||
/// </summary>
|
||||
[Required(ErrorMessage = "生成方式不能为空")]
|
||||
public override string GenerateType { get; set; }
|
||||
|
||||
///// <summary>
|
||||
///// 功能名(数据库表名称)
|
||||
///// </summary>
|
||||
//[Required(ErrorMessage = "数据库表名不能为空")]
|
||||
//public override string TableComment { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否生成菜单
|
||||
/// </summary>
|
||||
[Required(ErrorMessage = "是否生成菜单不能为空")]
|
||||
public override bool GenerateMenu { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否使用 Api Service
|
||||
/// </summary>
|
||||
public override bool IsApiService { get; set; }
|
||||
}
|
||||
|
||||
public class DeleteCodeGenInput
|
||||
{
|
||||
/// <summary>
|
||||
/// 代码生成器Id
|
||||
/// </summary>
|
||||
[Required(ErrorMessage = "代码生成器Id不能为空")]
|
||||
public long Id { get; set; }
|
||||
}
|
||||
|
||||
public class UpdateCodeGenInput : PageCodeGenInput
|
||||
{
|
||||
/// <summary>
|
||||
/// 代码生成器Id
|
||||
/// </summary>
|
||||
[Required(ErrorMessage = "代码生成器Id不能为空")]
|
||||
public long Id { get; set; }
|
||||
}
|
||||
|
||||
public class QueryCodeGenInput : DeleteCodeGenInput
|
||||
{
|
||||
}
|
||||
@ -37,7 +37,7 @@ public class SysCodeGenService : IDynamicApiController, ITransient
|
||||
/// <param name="input"></param>
|
||||
/// <returns></returns>
|
||||
[DisplayName("获取代码生成分页列表")]
|
||||
public async Task<SqlSugarPagedList<SysCodeGen>> Page(CodeGenInput input)
|
||||
public async Task<SqlSugarPagedList<SysCodeGen>> Page(PageCodeGenInput input)
|
||||
{
|
||||
return await _db.Queryable<SysCodeGen>()
|
||||
.WhereIF(!string.IsNullOrWhiteSpace(input.TableName), u => u.TableName.Contains(input.TableName.Trim()))
|
||||
|
||||
@ -121,4 +121,23 @@ public class SysCommonService : IDynamicApiController, ITransient
|
||||
}
|
||||
return apiList;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 下载标记错误的临时 Excel(全局)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
[DisplayName("下载标记错误的临时 Excel")]
|
||||
public async Task<IActionResult> DownloadErrorExcelTemp([FromQuery] string fileName = null)
|
||||
{
|
||||
var userId = App.User?.FindFirst(ClaimConst.UserId)?.Value;
|
||||
var resultStream = App.GetRequiredService<SysCacheService>().Get<MemoryStream>(CacheConst.KeyExcelTemp + userId);
|
||||
|
||||
if (resultStream == null)
|
||||
throw Oops.Oh("错误标记文件已过期。");
|
||||
|
||||
return await Task.FromResult(new FileStreamResult(resultStream, "application/octet-stream")
|
||||
{
|
||||
FileDownloadName = $"{(string.IsNullOrEmpty(fileName) ? "错误标记_" + DateTime.Now.ToString("yyyyMMddhhmmss") : fileName)}.xlsx"
|
||||
});
|
||||
}
|
||||
}
|
||||
@ -9,7 +9,7 @@ namespace Admin.NET.Core.Service;
|
||||
/// <summary>
|
||||
/// 开放接口身份输入参数
|
||||
/// </summary>
|
||||
public class OpenAccessInput : BasePageInput
|
||||
public class PageOpenAccessInput : BasePageInput
|
||||
{
|
||||
/// <summary>
|
||||
/// 身份标识
|
||||
|
||||
@ -54,7 +54,7 @@ public class SysOpenAccessService : IDynamicApiController, ITransient
|
||||
/// <param name="input"></param>
|
||||
/// <returns></returns>
|
||||
[DisplayName("获取开放接口身份分页列表")]
|
||||
public async Task<SqlSugarPagedList<OpenAccessOutput>> Page(OpenAccessInput input)
|
||||
public async Task<SqlSugarPagedList<OpenAccessOutput>> Page(PageOpenAccessInput input)
|
||||
{
|
||||
return await _sysOpenAccessRep.AsQueryable()
|
||||
.LeftJoin<SysUser>((u, a) => u.BindUserId == a.Id)
|
||||
|
||||
@ -27,7 +27,7 @@ public class SysRoleApiService : ITransient
|
||||
{
|
||||
await _sysRoleApiRep.DeleteAsync(u => u.RoleId == input.Id);
|
||||
|
||||
var roleApis = input.ApiList.Select(u => new SysRoleApi
|
||||
var roleApis = input.ApiList.Where(u => !string.IsNullOrWhiteSpace(u)).Select(u => new SysRoleApi
|
||||
{
|
||||
RoleId = input.Id,
|
||||
Route = u
|
||||
|
||||
@ -203,7 +203,44 @@ public static class CommonUtil
|
||||
foreach (var item in drErrorInfo.FieldErrors)
|
||||
message += $"\r\n{item.Key}:{item.Value}(文件第{drErrorInfo.RowIndex}行)";
|
||||
}
|
||||
message += "字段缺失:" + string.Join(",", res.TemplateErrors.Select(m => m.RequireColumnName).ToList());
|
||||
message += "\r\n字段缺失:" + string.Join(",", res.TemplateErrors.Select(m => m.RequireColumnName).ToList());
|
||||
throw Oops.Oh("导入异常:" + message);
|
||||
}
|
||||
return res.Data;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 导入Excel数据并错误标记
|
||||
/// </summary>
|
||||
/// <param name="file"></param>
|
||||
/// <returns></returns>
|
||||
public static async Task<ICollection<T>> ImportExcelData<T>([Required] IFormFile file, Func<ImportResult<T>, ImportResult<T>> importResultCallback = null) where T : class, new()
|
||||
{
|
||||
IImporter importer = new ExcelImporter();
|
||||
var resultStream = new MemoryStream();
|
||||
var res = await importer.Import<T>(file.OpenReadStream(), resultStream, importResultCallback);
|
||||
resultStream.Seek(0, SeekOrigin.Begin);
|
||||
var userId = App.User?.FindFirst(ClaimConst.UserId)?.Value;
|
||||
|
||||
App.GetRequiredService<SysCacheService>().Remove(CacheConst.KeyExcelTemp + userId);
|
||||
App.GetRequiredService<SysCacheService>().Set(CacheConst.KeyExcelTemp + userId, resultStream, TimeSpan.FromMinutes(5));
|
||||
|
||||
var message = string.Empty;
|
||||
if (res.HasError)
|
||||
{
|
||||
if (res.Exception != null)
|
||||
message += $"\r\n{res.Exception.Message}";
|
||||
foreach (DataRowErrorInfo drErrorInfo in res.RowErrors)
|
||||
{
|
||||
int rowNum = drErrorInfo.RowIndex;
|
||||
foreach (var item in drErrorInfo.FieldErrors)
|
||||
message += $"\r\n{item.Key}:{item.Value}(文件第{drErrorInfo.RowIndex}行)";
|
||||
}
|
||||
if (res.TemplateErrors.Count > 0)
|
||||
message += "\r\n字段缺失:" + string.Join(",", res.TemplateErrors.Select(m => m.RequireColumnName).ToList());
|
||||
|
||||
if (message.Length > 200)
|
||||
message = message.Substring(0, 200) + "...\r\n异常过多,建议下载错误标记文件查看详细错误信息并重新导入。";
|
||||
throw Oops.Oh("导入异常:" + message);
|
||||
}
|
||||
return res.Data;
|
||||
|
||||
@ -20,25 +20,25 @@
|
||||
<template>
|
||||
<div class="@(@Model.LowerClassName)-container" v-loading="options.loading">
|
||||
<el-card shadow="hover" :body-style="{ padding: '20px 20px 16px 10px', display: 'flex', width: '100%', height: '100%', alignItems: 'start' }">
|
||||
<el-form :model="state.queryParams" ref="queryForm" :show-message="false" :inlineMessage="true" label-width="auto" style="flex: 1 1 0%" @@submit.prevent="handleQuery(true)" >
|
||||
<el-form :model="state.queryParams" ref="queryForm" :show-message="false" :inlineMessage="true" label-width="auto" style="flex: 1 1 0%" @@submit.prevent="handleQuery" >
|
||||
<el-row :gutter="10">
|
||||
@if(Model.QueryWhetherList.Count > 0){
|
||||
<el-col class="mb5" :xs="24" :sm="12" :md="8" :lg="6" :xl="6">
|
||||
<el-form-item label="关键字" prop="searchKey">
|
||||
<el-input v-model="state.queryParams.searchKey" placeholder="请输入模糊查询关键字" clearable @@keyup.enter.native="handleQuery(true)" />
|
||||
<el-input v-model="state.queryParams.searchKey" placeholder="请输入模糊查询关键字" clearable @@keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
foreach (var column in Model.QueryWhetherList) {
|
||||
if(@column.EffectType == "Input" || @column.EffectType == "InputTextArea") {
|
||||
<el-col class="mb5" :xs="24" :sm="12" :md="8" :lg="6" :xl="6" v-if="state.showAdvanceQueryUI">
|
||||
<el-form-item label="@column.ColumnComment" prop="@(@column.LowerPropertyName)">
|
||||
<el-input v-model="state.queryParams.@(@column.LowerPropertyName)" placeholder="@column.ColumnComment" clearable @@keyup.enter.native="handleQuery(true)" />
|
||||
<el-input v-model="state.queryParams.@(@column.LowerPropertyName)" placeholder="@column.ColumnComment" clearable @@keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
} else if(@column.EffectType == "InputNumber") {
|
||||
<el-col class="mb5" :xs="24" :sm="12" :md="8" :lg="6" :xl="6" v-if="state.showAdvanceQueryUI">
|
||||
<el-form-item label="@column.ColumnComment">
|
||||
<el-input-number v-model="state.queryParams.@(@column.LowerPropertyName)" placeholder="请输入@(@column.ColumnComment)" clearable @@keyup.enter.native="handleQuery(true)" />
|
||||
<el-input-number v-model="state.queryParams.@(@column.LowerPropertyName)" placeholder="请输入@(@column.ColumnComment)" clearable @@keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
} else if(@column.EffectType == "fk") {
|
||||
@ -52,7 +52,7 @@
|
||||
} else if(@column.EffectType == "Select") {
|
||||
<el-col class="mb5" :xs="24" :sm="12" :md="8" :lg="6" :xl="6" v-if="state.showAdvanceQueryUI">
|
||||
<el-form-item label="@column.ColumnComment" prop="@(@column.LowerPropertyName)">
|
||||
<el-select v-model="state.queryParams.@(@column.LowerPropertyName)" filterable placeholder="请选择@(@column.ColumnComment)" clearable @@keyup.enter.native="handleQuery(true)" >
|
||||
<el-select v-model="state.queryParams.@(@column.LowerPropertyName)" filterable placeholder="请选择@(@column.ColumnComment)" clearable @@keyup.enter.native="handleQuery" >
|
||||
<el-option v-for="(item,index) in dl('@(@column.DictTypeCode)')" :key="index" :value="item.code" :label="`${item.name} [${item.code}] ${item.value}`" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
@ -60,7 +60,7 @@
|
||||
} else if(@column.EffectType == "EnumSelector") {
|
||||
<el-col class="mb5" :xs="24" :sm="12" :md="8" :lg="6" :xl="6" v-if="state.showAdvanceQueryUI">
|
||||
<el-form-item label="@column.ColumnComment" prop="@(@column.LowerPropertyName)">
|
||||
<el-select v-model="state.queryParams.@(@column.LowerPropertyName)" filterable placeholder="请选择@(@column.ColumnComment)" clearable @@keyup.enter.native="handleQuery(true)" >
|
||||
<el-select v-model="state.queryParams.@(@column.LowerPropertyName)" filterable placeholder="请选择@(@column.ColumnComment)" clearable @@keyup.enter.native="handleQuery" >
|
||||
<el-option v-for="(item,index) in dl('@(@column.DictTypeCode)')" :key="index" :value="item.value" :label="`${item.name} [${item.code}] ${item.value}`" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
@ -86,7 +86,7 @@
|
||||
<el-row>
|
||||
<el-col>
|
||||
<el-button-group>
|
||||
<el-button type="primary" icon="ele-Search" @@click="handleQuery(true)" v-auth="'@(@Model.LowerClassName):page'" :loading="options.loading"> 查询 </el-button>
|
||||
<el-button type="primary" icon="ele-Search" @@click="handleQuery" v-auth="'@(@Model.LowerClassName):page'" :loading="options.loading"> 查询 </el-button>
|
||||
<el-button icon="ele-Refresh" @@click="resetQuery" :loading="options.loading"> 重置 </el-button>
|
||||
<el-button icon="ele-ZoomIn" @@click="changeAdvanceQueryUI" v-if="!state.showAdvanceQueryUI" style="margin-left: 5px"> 高级查询 </el-button>
|
||||
<el-button icon="ele-ZoomOut" @@click="changeAdvanceQueryUI" v-if="state.showAdvanceQueryUI" style="margin-left: 5px"> 隐藏 </el-button>
|
||||
@ -96,7 +96,7 @@
|
||||
</el-card>
|
||||
|
||||
<el-card class="full-table" shadow="hover" style="margin-top: 5px">
|
||||
<vxe-grid ref="xGrid" class="xGrid-style" v-bind="options" @@sort-change="sortChange">
|
||||
<vxe-grid ref="xGrid" class="xGrid-style" v-bind="options" v-on="gridEvents">
|
||||
<template #toolbar_buttons>
|
||||
<el-button type="primary" icon="ele-Plus" @@click="handleAdd" v-auth="'@(@Model.LowerClassName):add'"> 新增 </el-button>
|
||||
</template>
|
||||
@ -154,11 +154,7 @@
|
||||
@:<template #row_@(@column.LowerPropertyName)="{ row }">
|
||||
@:<el-tag :type="dv('@(@column.DictTypeCode)', row.@(@column.LowerPropertyName))?.tagType"> {{dv('@(@column.DictTypeCode)', row.@column.LowerPropertyName)?.name}}</el-tag>
|
||||
@:</template>
|
||||
} else if(@column.EffectType == "DatePicker") {
|
||||
@:<template #row_@(@column.LowerPropertyName)="{ row }">
|
||||
@:<span>{{ formatDate(new Date(row.@(@column.LowerPropertyName)), 'YYYY-mm-dd HH:MM:SS') }}</span>
|
||||
@:</template>
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
<template #row_record="{ row }">
|
||||
@ -177,15 +173,6 @@
|
||||
<el-button icon="ele-Delete" size="small" text type="danger" @@click="handleDelete(row)" v-auth="'@(@Model.LowerClassName):delete'" :disabled="row.status === 1" />
|
||||
</el-tooltip>
|
||||
</template>
|
||||
<template #pager>
|
||||
<vxe-pager
|
||||
:loading="options.loading"
|
||||
v-model:current-page="state.tableParams.page"
|
||||
v-model:page-size="state.tableParams.pageSize"
|
||||
:total="state.tableParams.total"
|
||||
@@page-change="pageChange"
|
||||
/>
|
||||
</template>
|
||||
</vxe-grid>
|
||||
</el-card>
|
||||
|
||||
@ -198,8 +185,10 @@
|
||||
import { onMounted, reactive, ref } from 'vue';
|
||||
import { ElMessageBox, ElMessage } from "element-plus";
|
||||
import { auth } from '/@@/utils/authFunction';
|
||||
import { VxeGridInstance, VxePagerEvents, VxePagerDefines } from 'vxe-table';
|
||||
import { useVxeTable } from '/@@/hooks/vxeTableOptionsHook';
|
||||
|
||||
import { VxeGridInstance, VxeGridListeners, VxeGridPropTypes } from 'vxe-table';
|
||||
import { useVxeTable } from '/@@/hooks/useVxeTableOptionsHook';
|
||||
import { Local } from '/@@/utils/storage';
|
||||
|
||||
@if(@Model.TableField.Any(x=>x.EffectType == "ConstSelector")){
|
||||
@:import { codeToName, getConstType } from "/@@/utils/constHelper";
|
||||
@ -260,81 +249,82 @@ const state = reactive({
|
||||
}
|
||||
}
|
||||
},
|
||||
tableParams: {
|
||||
page: 1,
|
||||
pageSize: 50,
|
||||
field: 'id', // 默认的排序字段
|
||||
order: 'aes', // 排序方向
|
||||
descStr: 'desc', // 降序排序的关键字符
|
||||
total: 0 as any,
|
||||
localPageParam: {
|
||||
pageSize: 50 as number,
|
||||
defaultSort: { field: 'createTime', order: 'asc', descStr: 'desc' },
|
||||
},
|
||||
visible: false,
|
||||
title: '',
|
||||
});
|
||||
|
||||
// 本地存储参数
|
||||
const localPageParamKey = 'localPageParam:@(@Model.LowerClassName)';
|
||||
|
||||
// 改变高级查询的控件显示状态
|
||||
const changeAdvanceQueryUI = () => {
|
||||
state.showAdvanceQueryUI = !state.showAdvanceQueryUI;
|
||||
};
|
||||
|
||||
// 表格参数配置
|
||||
const options = useVxeTable<@(@Model.ClassName)>({
|
||||
id: '@(@Model.ClassName)',
|
||||
name: '@(@Model.BusName)',
|
||||
columns: [
|
||||
{ type: 'seq', title: '序号', width: 60, fixed: 'left' },
|
||||
@foreach (var column in Model.TableField) {
|
||||
var whethersortable =column.WhetherSortable == "Y" ? "sortable: true" : "sortable: false";
|
||||
if(@column.WhetherTable == "Y") {
|
||||
if(@column.EffectType == "Upload" || @column.EffectType == "fk" || @column.EffectType == "ApiTreeSelect" || @column.EffectType == "Switch" || @column.EffectType == "ConstSelector") {
|
||||
if(@column.EffectType == "Upload") {
|
||||
@:{ field: '@column.LowerPropertyName', title: '@column.ColumnComment', minWidth: 100, showOverflow: 'tooltip', slots: { default: 'row_@column.LowerPropertyName' }, @whethersortable },
|
||||
} else if(@column.EffectType == "fk") {
|
||||
@:{ field: '@column.LowerPropertyName', title: '@column.ColumnComment', minWidth: 100, showOverflow: 'tooltip', slots: { default: 'row_@column.LowerPropertyName' }, @whethersortable },
|
||||
} else if(@column.EffectType == "ApiTreeSelect") {
|
||||
@:{ field: '@column.LowerPropertyName', title: '@column.ColumnComment', minWidth: 100, showOverflow: 'tooltip', slots: { default: 'row_@column.LowerPropertyName' }, @whethersortable },
|
||||
} else if(@column.EffectType == "Switch") {
|
||||
@:{ field: '@column.LowerPropertyName', title: '@column.ColumnComment', minWidth: 100, showOverflow: 'tooltip', slots: { default: 'row_@column.LowerPropertyName' }, @whethersortable },
|
||||
} else if(@column.EffectType == "ConstSelector") {
|
||||
@:{ field: '@column.LowerPropertyName', title: '@column.ColumnComment', minWidth: 100, showOverflow: 'tooltip', slots: { default: 'row_@column.LowerPropertyName' }, @whethersortable },
|
||||
}
|
||||
} else if(@column.EffectType == "Select") {
|
||||
@:{ field: '@column.LowerPropertyName', title: '@column.ColumnComment', minWidth: 100, showOverflow: 'tooltip', slots: { default: 'row_@column.LowerPropertyName' }, @whethersortable },
|
||||
} else if(@column.EffectType == "EnumSelector") {
|
||||
@:{ field: '@column.LowerPropertyName', title: '@column.ColumnComment', minWidth: 100, showOverflow: 'tooltip', slots: { default: 'row_@column.LowerPropertyName' }, @whethersortable },
|
||||
} else if(@column.EffectType == "DatePicker") {
|
||||
@:{ field: '@column.LowerPropertyName', title: '@column.ColumnComment', minWidth: 100, showOverflow: 'tooltip', slots: { default: 'row_@column.LowerPropertyName' }, @whethersortable },
|
||||
} else {
|
||||
@:{ field: '@column.LowerPropertyName', title: '@column.ColumnComment', minWidth: 100, showOverflow: 'tooltip', @whethersortable},
|
||||
}
|
||||
}
|
||||
}
|
||||
{ field: '', title: '修改记录', width: 100, showOverflow: 'tooltip', slots: { default: 'row_record' } },
|
||||
{ title: '操作', fixed: 'right', width: 180, showOverflow: true, slots: { default: 'row_buttons' } },
|
||||
],
|
||||
enableExport: auth('@(@Model.LowerClassName):export'),
|
||||
searchCallback: () => handleQuery(),
|
||||
queryAllCallback: () => fetchData({ pageSize: 99999 }),
|
||||
});
|
||||
const options = useVxeTable<@(@Model.ClassName)>(
|
||||
{
|
||||
id: '@(@Model.ClassName)',
|
||||
name: '@(@Model.BusName)',
|
||||
columns: [
|
||||
{ type: 'seq', title: '序号', width: 60, fixed: 'left' },
|
||||
@foreach (var column in Model.TableField) {
|
||||
var whethersortable =column.WhetherSortable == "Y" ? "sortable: true" : "sortable: false";
|
||||
if(@column.WhetherTable == "Y") {
|
||||
if(@column.EffectType == "Upload" || @column.EffectType == "fk" || @column.EffectType == "ApiTreeSelect" || @column.EffectType == "Switch" || @column.EffectType == "ConstSelector") {
|
||||
if(@column.EffectType == "Upload") {
|
||||
@:{ field: '@column.LowerPropertyName', title: '@column.ColumnComment', minWidth: 100, showOverflow: 'tooltip', slots: { default: 'row_@column.LowerPropertyName' }, @whethersortable },
|
||||
} else if(@column.EffectType == "fk") {
|
||||
@:{ field: '@column.LowerPropertyName', title: '@column.ColumnComment', minWidth: 100, showOverflow: 'tooltip', slots: { default: 'row_@column.LowerPropertyName' }, @whethersortable },
|
||||
} else if(@column.EffectType == "ApiTreeSelect") {
|
||||
@:{ field: '@column.LowerPropertyName', title: '@column.ColumnComment', minWidth: 100, showOverflow: 'tooltip', slots: { default: 'row_@column.LowerPropertyName' }, @whethersortable },
|
||||
} else if(@column.EffectType == "Switch") {
|
||||
@:{ field: '@column.LowerPropertyName', title: '@column.ColumnComment', minWidth: 100, showOverflow: 'tooltip', slots: { default: 'row_@column.LowerPropertyName' }, @whethersortable },
|
||||
} else if(@column.EffectType == "ConstSelector") {
|
||||
@:{ field: '@column.LowerPropertyName', title: '@column.ColumnComment', minWidth: 100, showOverflow: 'tooltip', slots: { default: 'row_@column.LowerPropertyName' }, @whethersortable },
|
||||
}
|
||||
} else if(@column.EffectType == "Select") {
|
||||
@:{ field: '@column.LowerPropertyName', title: '@column.ColumnComment', minWidth: 100, showOverflow: 'tooltip', slots: { default: 'row_@column.LowerPropertyName' }, @whethersortable },
|
||||
} else if(@column.EffectType == "EnumSelector") {
|
||||
@:{ field: '@column.LowerPropertyName', title: '@column.ColumnComment', minWidth: 100, showOverflow: 'tooltip', slots: { default: 'row_@column.LowerPropertyName' }, @whethersortable },
|
||||
} else if(@column.EffectType == "DatePicker") {
|
||||
@:{ field: '@column.LowerPropertyName', title: '@column.ColumnComment', minWidth: 100, showOverflow: 'tooltip', formatter: ({ cellValue }) => formatDate(new Date(cellValue), 'YYYY-mm-dd HH:MM:SS'), @whethersortable },
|
||||
} else {
|
||||
@:{ field: '@column.LowerPropertyName', title: '@column.ColumnComment', minWidth: 100, showOverflow: 'tooltip', @whethersortable},
|
||||
}
|
||||
}
|
||||
}
|
||||
{ field: '', title: '修改记录', width: 100, showOverflow: 'tooltip', slots: { default: 'row_record' } },
|
||||
{ title: '操作', fixed: 'right', width: 180, showOverflow: true, slots: { default: 'row_buttons' } },
|
||||
],
|
||||
},
|
||||
// vxeGrid配置参数(此处可覆写任何参数),参考vxe-table官方文档
|
||||
{
|
||||
// 代理配置
|
||||
proxyConfig: { autoLoad: true, ajax: { query: ({ page, sort }) => handleQueryApi(page, sort) } },
|
||||
// 排序配置
|
||||
sortConfig: { defaultSort: Local.get(localPageParamKey)?.defaultSort || state.localPageParam.defaultSort },
|
||||
// 分页配置
|
||||
pagerConfig: { pageSize: Local.get(localPageParamKey)?.pageSize || state.localPageParam.pageSize },
|
||||
// 工具栏配置
|
||||
toolbarConfig: { export: false },
|
||||
// 行设置
|
||||
rowConfig: { height: 80 },
|
||||
}
|
||||
);
|
||||
|
||||
// 页面初始化
|
||||
onMounted(async () => {
|
||||
await handleQuery();
|
||||
});
|
||||
|
||||
// 查询操作
|
||||
const handleQuery = async (reset = false) => {
|
||||
options.loading = true;
|
||||
if (reset) state.tableParams.page = 1;
|
||||
var res = await fetchData(null);
|
||||
xGrid.value?.loadData(res.data.result?.items ?? []);
|
||||
state.tableParams.total = res.data.result?.total;
|
||||
options.loading = false;
|
||||
};
|
||||
|
||||
// 获取数据
|
||||
const fetchData = async (tableParams: any) => {
|
||||
let params = Object.assign(state.queryParams, state.tableParams, tableParams);
|
||||
// 查询api
|
||||
const handleQueryApi = async (page: VxeGridPropTypes.ProxyAjaxQueryPageParams, sort: VxeGridPropTypes.ProxyAjaxQuerySortCheckedParams) => {
|
||||
const params = Object.assign(state.queryParams, { page: page.currentPage, pageSize: page.pageSize, field: sort.field, order: sort.order, descStr: 'desc' }) as @(@Model.ClassName)Input;
|
||||
@if (@Model.IsApiService) {
|
||||
@:return getAPI(@(@Model.ClassName)Api).api@(@Model.ClassName)PagePost(params);
|
||||
} else {
|
||||
@ -342,29 +332,20 @@ const fetchData = async (tableParams: any) => {
|
||||
}
|
||||
};
|
||||
|
||||
// 查询操作
|
||||
const handleQuery = async (reset = false) => {
|
||||
await xGrid.value?.commitProxy('query');
|
||||
};
|
||||
|
||||
// 重置操作
|
||||
const resetQuery = () => {
|
||||
const resetQuery = async () => {
|
||||
state.queryParams.searchKey = undefined,
|
||||
@if(Model.QueryWhetherList.Count > 0) {
|
||||
@foreach (var column in Model.QueryWhetherList) {
|
||||
@:state.queryParams.@(@column.LowerPropertyName) = undefined,
|
||||
}
|
||||
}
|
||||
handleQuery(true);
|
||||
};
|
||||
|
||||
// 改变页码序号或页面容量
|
||||
const pageChange: VxePagerEvents.PageChange = ({ currentPage, pageSize }: VxePagerDefines.PageChangeEventParams) => {
|
||||
state.tableParams.page = currentPage;
|
||||
state.tableParams.pageSize = pageSize;
|
||||
handleQuery();
|
||||
};
|
||||
|
||||
// 列排序
|
||||
const sortChange = (options: any) => {
|
||||
state.tableParams.field = options.field;
|
||||
state.tableParams.order = options.order;
|
||||
handleQuery();
|
||||
await xGrid.value?.commitProxy('reload');
|
||||
};
|
||||
|
||||
// 打开新增页面
|
||||
@ -419,6 +400,20 @@ const handleDelete = (row: any) => {
|
||||
.catch(() => {});
|
||||
};
|
||||
|
||||
// 表格事件
|
||||
const gridEvents: VxeGridListeners<@(@Model.ClassName)> = {
|
||||
// 只对 pager-config 配置时有效,分页发生改变时会触发该事件
|
||||
async pageChange({ pageSize }) {
|
||||
state.localPageParam.pageSize = pageSize;
|
||||
Local.set(localPageParamKey, state.localPageParam);
|
||||
},
|
||||
// 当排序条件发生变化时会触发该事件
|
||||
async sortChange({ field, order }) {
|
||||
state.localPageParam.defaultSort = { field: field, order: order!, descStr: 'desc' };
|
||||
Local.set(localPageParamKey, state.localPageParam);
|
||||
},
|
||||
};
|
||||
|
||||
@foreach (var column in Model.QueryWhetherList) {
|
||||
@if(@column.EffectType == "fk") {
|
||||
@:const @LowerFirstLetter(@column.FkEntityName)@(@column.PropertyName)DropdownList = ref<any>([]);
|
||||
|
||||
@ -36,10 +36,12 @@ public class DingTalkConst
|
||||
/// 主部门Id
|
||||
/// </summary>
|
||||
public const string DeptId = "sys00-mainDeptId";
|
||||
|
||||
/// <summary>
|
||||
/// 主部门
|
||||
/// </summary>
|
||||
public const string Dept = "sys00-mainDept";
|
||||
|
||||
/// <summary>
|
||||
/// 职位
|
||||
/// </summary>
|
||||
|
||||
@ -73,23 +73,25 @@ public class DingTalkUser : EntityBase
|
||||
[SugarColumn(ColumnDescription = "工号", Length = 16)]
|
||||
[MaxLength(16)]
|
||||
public string? JobNumber { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 主部门Id
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "主部门Id", Length = 16)]
|
||||
[MaxLength(16)]
|
||||
public string? DeptId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 主部门
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "主部门", Length = 16)]
|
||||
[MaxLength(16)]
|
||||
public string? Dept { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 职位
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "职位", Length = 16)]
|
||||
[MaxLength(16)]
|
||||
public string? Position { get; set; }
|
||||
|
||||
}
|
||||
@ -43,7 +43,7 @@ public class DingTalkService : IDynamicApiController, IScoped
|
||||
/// <param name="access_token"></param>
|
||||
/// <param name="input"></param>
|
||||
/// <returns></returns>
|
||||
[DisplayName("获取在职员工列表")]
|
||||
[HttpPost, DisplayName("获取在职员工列表")]
|
||||
public async Task<DingTalkBaseResponse<GetDingTalkCurrentEmployeesListOutput>> GetDingTalkCurrentEmployeesList(string access_token, [Required] GetDingTalkCurrentEmployeesListInput input)
|
||||
{
|
||||
return await _dingTalkApi.GetDingTalkCurrentEmployeesList(access_token, input);
|
||||
@ -55,7 +55,7 @@ public class DingTalkService : IDynamicApiController, IScoped
|
||||
/// <param name="access_token"></param>
|
||||
/// <param name="input"></param>
|
||||
/// <returns></returns>
|
||||
[DisplayName("获取员工花名册字段信息")]
|
||||
[HttpPost, DisplayName("获取员工花名册字段信息")]
|
||||
public async Task<DingTalkBaseResponse<List<DingTalkEmpRosterFieldVo>>> GetDingTalkCurrentEmployeesRosterList(string access_token, [Required] GetDingTalkCurrentEmployeesRosterListInput input)
|
||||
{
|
||||
return await _dingTalkApi.GetDingTalkCurrentEmployeesRosterList(access_token, input);
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
// Admin.NET 项目的版权、商标、专利和其他相关权利均受相应法律法规的保护。使用本项目应遵守相关法律法规和许可证的要求。
|
||||
// Admin.NET 项目的版权、商标、专利和其他相关权利均受相应法律法规的保护。使用本项目应遵守相关法律法规和许可证的要求。
|
||||
//
|
||||
// 本项目主要遵循 MIT 许可证和 Apache 许可证(版本 2.0)进行分发和使用。许可证位于源代码树根目录中的 LICENSE-MIT 和 LICENSE-APACHE 文件。
|
||||
//
|
||||
@ -10,6 +10,7 @@ namespace Admin.NET.Plugin.GoView;
|
||||
/// GoView 项目表
|
||||
/// </summary>
|
||||
[SugarTable(null, "GoView 项目表")]
|
||||
[SysTable]
|
||||
public class GoViewPro : EntityTenant
|
||||
{
|
||||
/// <summary>
|
||||
|
||||
@ -10,6 +10,7 @@ namespace Admin.NET.Plugin.GoView;
|
||||
/// GoView 项目数据表
|
||||
/// </summary>
|
||||
[SugarTable(null, "GoView 项目数据表")]
|
||||
[SysTable]
|
||||
public class GoViewProData : EntityTenant
|
||||
{
|
||||
/// <summary>
|
||||
|
||||
@ -24,7 +24,7 @@
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Rezero.Api" Version="1.7.8" />
|
||||
<PackageReference Include="Rezero.Api" Version="1.7.9" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
"name": "admin.net.pro",
|
||||
"type": "module",
|
||||
"version": "2.4.33",
|
||||
"lastBuildTime": "2024.07.10",
|
||||
"lastBuildTime": "2024.07.12",
|
||||
"description": "Admin.NET 站在巨人肩膀上的 .NET 通用权限开发框架",
|
||||
"author": "zuohuaijun",
|
||||
"license": "MIT",
|
||||
@ -31,7 +31,7 @@
|
||||
"echarts": "^5.5.1",
|
||||
"echarts-gl": "^2.0.9",
|
||||
"echarts-wordcloud": "^2.1.0",
|
||||
"element-plus": "^2.7.6",
|
||||
"element-plus": "^2.7.7",
|
||||
"exceljs": "^4.4.0",
|
||||
"ezuikit": "^1.0.0",
|
||||
"ezuikit-js": "^8.0.5",
|
||||
@ -68,8 +68,8 @@
|
||||
"vue-signature-pad": "^3.0.2",
|
||||
"vue3-tree-org": "^4.2.2",
|
||||
"vuedraggable": "4.0.3",
|
||||
"vxe-pc-ui": "^4.0.58",
|
||||
"vxe-table": "^4.7.47",
|
||||
"vxe-pc-ui": "^4.0.64",
|
||||
"vxe-table": "^4.7.49",
|
||||
"vxe-table-plugin-element": "^4.0.4",
|
||||
"vxe-table-plugin-export-xlsx": "^4.0.5",
|
||||
"xe-utils": "^3.5.28",
|
||||
@ -93,7 +93,7 @@
|
||||
"less": "^4.2.0",
|
||||
"prettier": "^3.3.2",
|
||||
"rollup-plugin-visualizer": "^5.12.0",
|
||||
"sass": "^1.77.7",
|
||||
"sass": "^1.77.8",
|
||||
"terser": "^5.31.2",
|
||||
"typescript": "^5.5.3",
|
||||
"vite": "^5.3.3",
|
||||
|
||||
@ -26,8 +26,8 @@ import { AdminResultListTableOutput } from '../models';
|
||||
import { AdminResultObject } from '../models';
|
||||
import { AdminResultSqlSugarPagedListSysCodeGen } from '../models';
|
||||
import { AdminResultSysCodeGen } from '../models';
|
||||
import { CodeGenInput } from '../models';
|
||||
import { DeleteCodeGenInput } from '../models';
|
||||
import { PageCodeGenInput } from '../models';
|
||||
import { SysCodeGen } from '../models';
|
||||
import { UpdateCodeGenInput } from '../models';
|
||||
/**
|
||||
@ -328,11 +328,11 @@ export const SysCodeGenApiAxiosParamCreator = function (configuration?: Configur
|
||||
/**
|
||||
*
|
||||
* @summary 获取代码生成分页列表 🔖
|
||||
* @param {CodeGenInput} [body]
|
||||
* @param {PageCodeGenInput} [body]
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
apiSysCodeGenPagePost: async (body?: CodeGenInput, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
||||
apiSysCodeGenPagePost: async (body?: PageCodeGenInput, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
||||
const localVarPath = `/api/sysCodeGen/page`;
|
||||
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
||||
const localVarUrlObj = new URL(localVarPath, 'https://example.com');
|
||||
@ -661,11 +661,11 @@ export const SysCodeGenApiFp = function(configuration?: Configuration) {
|
||||
/**
|
||||
*
|
||||
* @summary 获取代码生成分页列表 🔖
|
||||
* @param {CodeGenInput} [body]
|
||||
* @param {PageCodeGenInput} [body]
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
async apiSysCodeGenPagePost(body?: CodeGenInput, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<AdminResultSqlSugarPagedListSysCodeGen>>> {
|
||||
async apiSysCodeGenPagePost(body?: PageCodeGenInput, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<AdminResultSqlSugarPagedListSysCodeGen>>> {
|
||||
const localVarAxiosArgs = await SysCodeGenApiAxiosParamCreator(configuration).apiSysCodeGenPagePost(body, options);
|
||||
return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {
|
||||
const axiosRequestArgs :AxiosRequestConfig = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};
|
||||
@ -799,11 +799,11 @@ export const SysCodeGenApiFactory = function (configuration?: Configuration, bas
|
||||
/**
|
||||
*
|
||||
* @summary 获取代码生成分页列表 🔖
|
||||
* @param {CodeGenInput} [body]
|
||||
* @param {PageCodeGenInput} [body]
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
async apiSysCodeGenPagePost(body?: CodeGenInput, options?: AxiosRequestConfig): Promise<AxiosResponse<AdminResultSqlSugarPagedListSysCodeGen>> {
|
||||
async apiSysCodeGenPagePost(body?: PageCodeGenInput, options?: AxiosRequestConfig): Promise<AxiosResponse<AdminResultSqlSugarPagedListSysCodeGen>> {
|
||||
return SysCodeGenApiFp(configuration).apiSysCodeGenPagePost(body, options).then((request) => request(axios, basePath));
|
||||
},
|
||||
/**
|
||||
@ -924,12 +924,12 @@ export class SysCodeGenApi extends BaseAPI {
|
||||
/**
|
||||
*
|
||||
* @summary 获取代码生成分页列表 🔖
|
||||
* @param {CodeGenInput} [body]
|
||||
* @param {PageCodeGenInput} [body]
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
* @memberof SysCodeGenApi
|
||||
*/
|
||||
public async apiSysCodeGenPagePost(body?: CodeGenInput, options?: AxiosRequestConfig) : Promise<AxiosResponse<AdminResultSqlSugarPagedListSysCodeGen>> {
|
||||
public async apiSysCodeGenPagePost(body?: PageCodeGenInput, options?: AxiosRequestConfig) : Promise<AxiosResponse<AdminResultSqlSugarPagedListSysCodeGen>> {
|
||||
return SysCodeGenApiFp(this.configuration).apiSysCodeGenPagePost(body, options).then((request) => request(this.axios, this.basePath));
|
||||
}
|
||||
/**
|
||||
|
||||
@ -23,8 +23,8 @@ import { AdminResultListSysLdap } from '../models';
|
||||
import { AdminResultSqlSugarPagedListSysLdap } from '../models';
|
||||
import { AdminResultSysLdap } from '../models';
|
||||
import { DeleteSysLdapInput } from '../models';
|
||||
import { PageSysLdapInput } from '../models';
|
||||
import { SyncSysLdapInput } from '../models';
|
||||
import { SysLdapInput } from '../models';
|
||||
import { UpdateSysLdapInput } from '../models';
|
||||
/**
|
||||
* SysLdapApi - axios parameter creator
|
||||
@ -226,11 +226,11 @@ export const SysLdapApiAxiosParamCreator = function (configuration?: Configurati
|
||||
/**
|
||||
*
|
||||
* @summary 获取系统域登录配置分页列表 🔖
|
||||
* @param {SysLdapInput} [body]
|
||||
* @param {PageSysLdapInput} [body]
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
apiSysLdapPagePost: async (body?: SysLdapInput, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
||||
apiSysLdapPagePost: async (body?: PageSysLdapInput, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
||||
const localVarPath = `/api/sysLdap/page`;
|
||||
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
||||
const localVarUrlObj = new URL(localVarPath, 'https://example.com');
|
||||
@ -482,11 +482,11 @@ export const SysLdapApiFp = function(configuration?: Configuration) {
|
||||
/**
|
||||
*
|
||||
* @summary 获取系统域登录配置分页列表 🔖
|
||||
* @param {SysLdapInput} [body]
|
||||
* @param {PageSysLdapInput} [body]
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
async apiSysLdapPagePost(body?: SysLdapInput, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<AdminResultSqlSugarPagedListSysLdap>>> {
|
||||
async apiSysLdapPagePost(body?: PageSysLdapInput, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<AdminResultSqlSugarPagedListSysLdap>>> {
|
||||
const localVarAxiosArgs = await SysLdapApiAxiosParamCreator(configuration).apiSysLdapPagePost(body, options);
|
||||
return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {
|
||||
const axiosRequestArgs :AxiosRequestConfig = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};
|
||||
@ -586,11 +586,11 @@ export const SysLdapApiFactory = function (configuration?: Configuration, basePa
|
||||
/**
|
||||
*
|
||||
* @summary 获取系统域登录配置分页列表 🔖
|
||||
* @param {SysLdapInput} [body]
|
||||
* @param {PageSysLdapInput} [body]
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
async apiSysLdapPagePost(body?: SysLdapInput, options?: AxiosRequestConfig): Promise<AxiosResponse<AdminResultSqlSugarPagedListSysLdap>> {
|
||||
async apiSysLdapPagePost(body?: PageSysLdapInput, options?: AxiosRequestConfig): Promise<AxiosResponse<AdminResultSqlSugarPagedListSysLdap>> {
|
||||
return SysLdapApiFp(configuration).apiSysLdapPagePost(body, options).then((request) => request(axios, basePath));
|
||||
},
|
||||
/**
|
||||
@ -679,12 +679,12 @@ export class SysLdapApi extends BaseAPI {
|
||||
/**
|
||||
*
|
||||
* @summary 获取系统域登录配置分页列表 🔖
|
||||
* @param {SysLdapInput} [body]
|
||||
* @param {PageSysLdapInput} [body]
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
* @memberof SysLdapApi
|
||||
*/
|
||||
public async apiSysLdapPagePost(body?: SysLdapInput, options?: AxiosRequestConfig) : Promise<AxiosResponse<AdminResultSqlSugarPagedListSysLdap>> {
|
||||
public async apiSysLdapPagePost(body?: PageSysLdapInput, options?: AxiosRequestConfig) : Promise<AxiosResponse<AdminResultSqlSugarPagedListSysLdap>> {
|
||||
return SysLdapApiFp(this.configuration).apiSysLdapPagePost(body, options).then((request) => request(this.axios, this.basePath));
|
||||
}
|
||||
/**
|
||||
|
||||
@ -22,7 +22,7 @@ import { AdminResultSqlSugarPagedListOpenAccessOutput } from '../models';
|
||||
import { AdminResultString } from '../models';
|
||||
import { DeleteOpenAccessInput } from '../models';
|
||||
import { GenerateSignatureInput } from '../models';
|
||||
import { OpenAccessInput } from '../models';
|
||||
import { PageOpenAccessInput } from '../models';
|
||||
import { UpdateOpenAccessInput } from '../models';
|
||||
/**
|
||||
* SysOpenAccessApi - axios parameter creator
|
||||
@ -177,11 +177,11 @@ export const SysOpenAccessApiAxiosParamCreator = function (configuration?: Confi
|
||||
/**
|
||||
*
|
||||
* @summary 获取开放接口身份分页列表 🔖
|
||||
* @param {OpenAccessInput} [body]
|
||||
* @param {PageOpenAccessInput} [body]
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
apiSysOpenAccessPagePost: async (body?: OpenAccessInput, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
||||
apiSysOpenAccessPagePost: async (body?: PageOpenAccessInput, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
||||
const localVarPath = `/api/sysOpenAccess/page`;
|
||||
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
||||
const localVarUrlObj = new URL(localVarPath, 'https://example.com');
|
||||
@ -367,11 +367,11 @@ export const SysOpenAccessApiFp = function(configuration?: Configuration) {
|
||||
/**
|
||||
*
|
||||
* @summary 获取开放接口身份分页列表 🔖
|
||||
* @param {OpenAccessInput} [body]
|
||||
* @param {PageOpenAccessInput} [body]
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
async apiSysOpenAccessPagePost(body?: OpenAccessInput, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<AdminResultSqlSugarPagedListOpenAccessOutput>>> {
|
||||
async apiSysOpenAccessPagePost(body?: PageOpenAccessInput, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<AdminResultSqlSugarPagedListOpenAccessOutput>>> {
|
||||
const localVarAxiosArgs = await SysOpenAccessApiAxiosParamCreator(configuration).apiSysOpenAccessPagePost(body, options);
|
||||
return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {
|
||||
const axiosRequestArgs :AxiosRequestConfig = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};
|
||||
@ -447,11 +447,11 @@ export const SysOpenAccessApiFactory = function (configuration?: Configuration,
|
||||
/**
|
||||
*
|
||||
* @summary 获取开放接口身份分页列表 🔖
|
||||
* @param {OpenAccessInput} [body]
|
||||
* @param {PageOpenAccessInput} [body]
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
async apiSysOpenAccessPagePost(body?: OpenAccessInput, options?: AxiosRequestConfig): Promise<AxiosResponse<AdminResultSqlSugarPagedListOpenAccessOutput>> {
|
||||
async apiSysOpenAccessPagePost(body?: PageOpenAccessInput, options?: AxiosRequestConfig): Promise<AxiosResponse<AdminResultSqlSugarPagedListOpenAccessOutput>> {
|
||||
return SysOpenAccessApiFp(configuration).apiSysOpenAccessPagePost(body, options).then((request) => request(axios, basePath));
|
||||
},
|
||||
/**
|
||||
@ -519,12 +519,12 @@ export class SysOpenAccessApi extends BaseAPI {
|
||||
/**
|
||||
*
|
||||
* @summary 获取开放接口身份分页列表 🔖
|
||||
* @param {OpenAccessInput} [body]
|
||||
* @param {PageOpenAccessInput} [body]
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
* @memberof SysOpenAccessApi
|
||||
*/
|
||||
public async apiSysOpenAccessPagePost(body?: OpenAccessInput, options?: AxiosRequestConfig) : Promise<AxiosResponse<AdminResultSqlSugarPagedListOpenAccessOutput>> {
|
||||
public async apiSysOpenAccessPagePost(body?: PageOpenAccessInput, options?: AxiosRequestConfig) : Promise<AxiosResponse<AdminResultSqlSugarPagedListOpenAccessOutput>> {
|
||||
return SysOpenAccessApiFp(this.configuration).apiSysOpenAccessPagePost(body, options).then((request) => request(this.axios, this.basePath));
|
||||
}
|
||||
/**
|
||||
|
||||
@ -17,9 +17,14 @@ import { Configuration } from '../configuration';
|
||||
// Some imports not used depending on template conditions
|
||||
// @ts-ignore
|
||||
import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';
|
||||
import { AdminResultCreatePayTransactionOutput } from '../models';
|
||||
import { AdminResultGetRefundDomesticRefundByOutRefundNumberResponse } from '../models';
|
||||
import { AdminResultObject } from '../models';
|
||||
import { AdminResultSqlSugarPagedListSysWechatPay } from '../models';
|
||||
import { AdminResultSysWechatPay } from '../models';
|
||||
import { AdminResultWechatPayOutput } from '../models';
|
||||
import { PageSysWechatPayInput } from '../models';
|
||||
import { RefundRequestInput } from '../models';
|
||||
import { WechatPayParaInput } from '../models';
|
||||
import { WechatPayTransactionInput } from '../models';
|
||||
/**
|
||||
@ -76,6 +81,54 @@ export const SysWechatPayApiAxiosParamCreator = function (configuration?: Config
|
||||
options: localVarRequestOptions,
|
||||
};
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 获取支付记录列表(分页)
|
||||
* @param {PageSysWechatPayInput} [body] PageSysWechatPayInput
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
apiSysWechatPayPagePost: async (body?: PageSysWechatPayInput, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
||||
const localVarPath = `/api/sysWechatPay/page`;
|
||||
// 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 微信支付成功回调(商户直连) 🔖
|
||||
@ -259,6 +312,104 @@ export const SysWechatPayApiAxiosParamCreator = function (configuration?: Config
|
||||
options: localVarRequestOptions,
|
||||
};
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 微信支付订单号查询(校正) https://api.mch.weixin.qq.com/v3/pay/transactions/id/{transaction_id}
|
||||
* @param {string} transactionId
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
apiSysWechatPayPayTransactionByIdTransactionIdGet: async (transactionId: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
||||
// verify required parameter 'transactionId' is not null or undefined
|
||||
if (transactionId === null || transactionId === undefined) {
|
||||
throw new RequiredError('transactionId','Required parameter transactionId was null or undefined when calling apiSysWechatPayPayTransactionByIdTransactionIdGet.');
|
||||
}
|
||||
const localVarPath = `/api/sysWechatPay/payTransactionById/{transactionId}`
|
||||
.replace(`{${"transactionId"}}`, encodeURIComponent(String(transactionId)));
|
||||
// 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 商户订单号查询(校正) https://api.mch.weixin.qq.com/v3/pay/transactions/out-trade-no/{out_trade_no}
|
||||
* @param {string} outTradeNumber
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
apiSysWechatPayPayTransactionByOutTradeNumberOutTradeNumberGet: async (outTradeNumber: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
||||
// verify required parameter 'outTradeNumber' is not null or undefined
|
||||
if (outTradeNumber === null || outTradeNumber === undefined) {
|
||||
throw new RequiredError('outTradeNumber','Required parameter outTradeNumber was null or undefined when calling apiSysWechatPayPayTransactionByOutTradeNumberOutTradeNumberGet.');
|
||||
}
|
||||
const localVarPath = `/api/sysWechatPay/payTransactionByOutTradeNumber/{outTradeNumber}`
|
||||
.replace(`{${"outTradeNumber"}}`, encodeURIComponent(String(outTradeNumber)));
|
||||
// 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 微信支付统一下单获取Id(商户直连) 🔖
|
||||
@ -302,6 +453,103 @@ export const SysWechatPayApiAxiosParamCreator = function (configuration?: Config
|
||||
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 查询单笔退款(通过商户退款单号) https://pay.weixin.qq.com/docs/merchant/apis/mini-program-payment/query-by-out-refund-no.html
|
||||
* @param {string} outRefundNumber
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
apiSysWechatPayRefundByOutRefundNumberOutRefundNumberGet: async (outRefundNumber: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
||||
// verify required parameter 'outRefundNumber' is not null or undefined
|
||||
if (outRefundNumber === null || outRefundNumber === undefined) {
|
||||
throw new RequiredError('outRefundNumber','Required parameter outRefundNumber was null or undefined when calling apiSysWechatPayRefundByOutRefundNumberOutRefundNumberGet.');
|
||||
}
|
||||
const localVarPath = `/api/sysWechatPay/refundByOutRefundNumber/{outRefundNumber}`
|
||||
.replace(`{${"outRefundNumber"}}`, encodeURIComponent(String(outRefundNumber)));
|
||||
// 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 退款申请 https://pay.weixin.qq.com/docs/merchant/apis/mini-program-payment/create.html
|
||||
* @param {RefundRequestInput} [body]
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
apiSysWechatPayRefundPost: async (body?: RefundRequestInput, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
||||
const localVarPath = `/api/sysWechatPay/refund`;
|
||||
// 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,
|
||||
@ -330,6 +578,20 @@ export const SysWechatPayApiFp = function(configuration?: Configuration) {
|
||||
return axios.request(axiosRequestArgs);
|
||||
};
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 获取支付记录列表(分页)
|
||||
* @param {PageSysWechatPayInput} [body] PageSysWechatPayInput
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
async apiSysWechatPayPagePost(body?: PageSysWechatPayInput, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<AdminResultSqlSugarPagedListSysWechatPay>>> {
|
||||
const localVarAxiosArgs = await SysWechatPayApiAxiosParamCreator(configuration).apiSysWechatPayPagePost(body, options);
|
||||
return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {
|
||||
const axiosRequestArgs :AxiosRequestConfig = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};
|
||||
return axios.request(axiosRequestArgs);
|
||||
};
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 微信支付成功回调(商户直连) 🔖
|
||||
@ -377,13 +639,41 @@ export const SysWechatPayApiFp = function(configuration?: Configuration) {
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
async apiSysWechatPayPayPartnerTransactionPost(body?: WechatPayTransactionInput, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<AdminResultObject>>> {
|
||||
async apiSysWechatPayPayPartnerTransactionPost(body?: WechatPayTransactionInput, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<AdminResultCreatePayTransactionOutput>>> {
|
||||
const localVarAxiosArgs = await SysWechatPayApiAxiosParamCreator(configuration).apiSysWechatPayPayPartnerTransactionPost(body, options);
|
||||
return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {
|
||||
const axiosRequestArgs :AxiosRequestConfig = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};
|
||||
return axios.request(axiosRequestArgs);
|
||||
};
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 微信支付订单号查询(校正) https://api.mch.weixin.qq.com/v3/pay/transactions/id/{transaction_id}
|
||||
* @param {string} transactionId
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
async apiSysWechatPayPayTransactionByIdTransactionIdGet(transactionId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<AdminResultWechatPayOutput>>> {
|
||||
const localVarAxiosArgs = await SysWechatPayApiAxiosParamCreator(configuration).apiSysWechatPayPayTransactionByIdTransactionIdGet(transactionId, options);
|
||||
return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {
|
||||
const axiosRequestArgs :AxiosRequestConfig = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};
|
||||
return axios.request(axiosRequestArgs);
|
||||
};
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 商户订单号查询(校正) https://api.mch.weixin.qq.com/v3/pay/transactions/out-trade-no/{out_trade_no}
|
||||
* @param {string} outTradeNumber
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
async apiSysWechatPayPayTransactionByOutTradeNumberOutTradeNumberGet(outTradeNumber: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<AdminResultWechatPayOutput>>> {
|
||||
const localVarAxiosArgs = await SysWechatPayApiAxiosParamCreator(configuration).apiSysWechatPayPayTransactionByOutTradeNumberOutTradeNumberGet(outTradeNumber, options);
|
||||
return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {
|
||||
const axiosRequestArgs :AxiosRequestConfig = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};
|
||||
return axios.request(axiosRequestArgs);
|
||||
};
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 微信支付统一下单获取Id(商户直连) 🔖
|
||||
@ -391,13 +681,41 @@ export const SysWechatPayApiFp = function(configuration?: Configuration) {
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
async apiSysWechatPayPayTransactionPost(body?: WechatPayTransactionInput, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<AdminResultObject>>> {
|
||||
async apiSysWechatPayPayTransactionPost(body?: WechatPayTransactionInput, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<AdminResultCreatePayTransactionOutput>>> {
|
||||
const localVarAxiosArgs = await SysWechatPayApiAxiosParamCreator(configuration).apiSysWechatPayPayTransactionPost(body, options);
|
||||
return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {
|
||||
const axiosRequestArgs :AxiosRequestConfig = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};
|
||||
return axios.request(axiosRequestArgs);
|
||||
};
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 查询单笔退款(通过商户退款单号) https://pay.weixin.qq.com/docs/merchant/apis/mini-program-payment/query-by-out-refund-no.html
|
||||
* @param {string} outRefundNumber
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
async apiSysWechatPayRefundByOutRefundNumberOutRefundNumberGet(outRefundNumber: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<AdminResultGetRefundDomesticRefundByOutRefundNumberResponse>>> {
|
||||
const localVarAxiosArgs = await SysWechatPayApiAxiosParamCreator(configuration).apiSysWechatPayRefundByOutRefundNumberOutRefundNumberGet(outRefundNumber, options);
|
||||
return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {
|
||||
const axiosRequestArgs :AxiosRequestConfig = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};
|
||||
return axios.request(axiosRequestArgs);
|
||||
};
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 退款申请 https://pay.weixin.qq.com/docs/merchant/apis/mini-program-payment/create.html
|
||||
* @param {RefundRequestInput} [body]
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
async apiSysWechatPayRefundPost(body?: RefundRequestInput, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<void>>> {
|
||||
const localVarAxiosArgs = await SysWechatPayApiAxiosParamCreator(configuration).apiSysWechatPayRefundPost(body, options);
|
||||
return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {
|
||||
const axiosRequestArgs :AxiosRequestConfig = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};
|
||||
return axios.request(axiosRequestArgs);
|
||||
};
|
||||
},
|
||||
}
|
||||
};
|
||||
|
||||
@ -417,6 +735,16 @@ export const SysWechatPayApiFactory = function (configuration?: Configuration, b
|
||||
async apiSysWechatPayGenerateParametersForJsapiPayPost(body?: WechatPayParaInput, options?: AxiosRequestConfig): Promise<AxiosResponse<AdminResultObject>> {
|
||||
return SysWechatPayApiFp(configuration).apiSysWechatPayGenerateParametersForJsapiPayPost(body, options).then((request) => request(axios, basePath));
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 获取支付记录列表(分页)
|
||||
* @param {PageSysWechatPayInput} [body] PageSysWechatPayInput
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
async apiSysWechatPayPagePost(body?: PageSysWechatPayInput, options?: AxiosRequestConfig): Promise<AxiosResponse<AdminResultSqlSugarPagedListSysWechatPay>> {
|
||||
return SysWechatPayApiFp(configuration).apiSysWechatPayPagePost(body, options).then((request) => request(axios, basePath));
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 微信支付成功回调(商户直连) 🔖
|
||||
@ -452,9 +780,29 @@ export const SysWechatPayApiFactory = function (configuration?: Configuration, b
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
async apiSysWechatPayPayPartnerTransactionPost(body?: WechatPayTransactionInput, options?: AxiosRequestConfig): Promise<AxiosResponse<AdminResultObject>> {
|
||||
async apiSysWechatPayPayPartnerTransactionPost(body?: WechatPayTransactionInput, options?: AxiosRequestConfig): Promise<AxiosResponse<AdminResultCreatePayTransactionOutput>> {
|
||||
return SysWechatPayApiFp(configuration).apiSysWechatPayPayPartnerTransactionPost(body, options).then((request) => request(axios, basePath));
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 微信支付订单号查询(校正) https://api.mch.weixin.qq.com/v3/pay/transactions/id/{transaction_id}
|
||||
* @param {string} transactionId
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
async apiSysWechatPayPayTransactionByIdTransactionIdGet(transactionId: string, options?: AxiosRequestConfig): Promise<AxiosResponse<AdminResultWechatPayOutput>> {
|
||||
return SysWechatPayApiFp(configuration).apiSysWechatPayPayTransactionByIdTransactionIdGet(transactionId, options).then((request) => request(axios, basePath));
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 商户订单号查询(校正) https://api.mch.weixin.qq.com/v3/pay/transactions/out-trade-no/{out_trade_no}
|
||||
* @param {string} outTradeNumber
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
async apiSysWechatPayPayTransactionByOutTradeNumberOutTradeNumberGet(outTradeNumber: string, options?: AxiosRequestConfig): Promise<AxiosResponse<AdminResultWechatPayOutput>> {
|
||||
return SysWechatPayApiFp(configuration).apiSysWechatPayPayTransactionByOutTradeNumberOutTradeNumberGet(outTradeNumber, options).then((request) => request(axios, basePath));
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 微信支付统一下单获取Id(商户直连) 🔖
|
||||
@ -462,9 +810,29 @@ export const SysWechatPayApiFactory = function (configuration?: Configuration, b
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
async apiSysWechatPayPayTransactionPost(body?: WechatPayTransactionInput, options?: AxiosRequestConfig): Promise<AxiosResponse<AdminResultObject>> {
|
||||
async apiSysWechatPayPayTransactionPost(body?: WechatPayTransactionInput, options?: AxiosRequestConfig): Promise<AxiosResponse<AdminResultCreatePayTransactionOutput>> {
|
||||
return SysWechatPayApiFp(configuration).apiSysWechatPayPayTransactionPost(body, options).then((request) => request(axios, basePath));
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 查询单笔退款(通过商户退款单号) https://pay.weixin.qq.com/docs/merchant/apis/mini-program-payment/query-by-out-refund-no.html
|
||||
* @param {string} outRefundNumber
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
async apiSysWechatPayRefundByOutRefundNumberOutRefundNumberGet(outRefundNumber: string, options?: AxiosRequestConfig): Promise<AxiosResponse<AdminResultGetRefundDomesticRefundByOutRefundNumberResponse>> {
|
||||
return SysWechatPayApiFp(configuration).apiSysWechatPayRefundByOutRefundNumberOutRefundNumberGet(outRefundNumber, options).then((request) => request(axios, basePath));
|
||||
},
|
||||
/**
|
||||
*
|
||||
* @summary 退款申请 https://pay.weixin.qq.com/docs/merchant/apis/mini-program-payment/create.html
|
||||
* @param {RefundRequestInput} [body]
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
*/
|
||||
async apiSysWechatPayRefundPost(body?: RefundRequestInput, options?: AxiosRequestConfig): Promise<AxiosResponse<void>> {
|
||||
return SysWechatPayApiFp(configuration).apiSysWechatPayRefundPost(body, options).then((request) => request(axios, basePath));
|
||||
},
|
||||
};
|
||||
};
|
||||
|
||||
@ -486,6 +854,17 @@ export class SysWechatPayApi extends BaseAPI {
|
||||
public async apiSysWechatPayGenerateParametersForJsapiPayPost(body?: WechatPayParaInput, options?: AxiosRequestConfig) : Promise<AxiosResponse<AdminResultObject>> {
|
||||
return SysWechatPayApiFp(this.configuration).apiSysWechatPayGenerateParametersForJsapiPayPost(body, options).then((request) => request(this.axios, this.basePath));
|
||||
}
|
||||
/**
|
||||
*
|
||||
* @summary 获取支付记录列表(分页)
|
||||
* @param {PageSysWechatPayInput} [body] PageSysWechatPayInput
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
* @memberof SysWechatPayApi
|
||||
*/
|
||||
public async apiSysWechatPayPagePost(body?: PageSysWechatPayInput, options?: AxiosRequestConfig) : Promise<AxiosResponse<AdminResultSqlSugarPagedListSysWechatPay>> {
|
||||
return SysWechatPayApiFp(this.configuration).apiSysWechatPayPagePost(body, options).then((request) => request(this.axios, this.basePath));
|
||||
}
|
||||
/**
|
||||
*
|
||||
* @summary 微信支付成功回调(商户直连) 🔖
|
||||
@ -525,9 +904,31 @@ export class SysWechatPayApi extends BaseAPI {
|
||||
* @throws {RequiredError}
|
||||
* @memberof SysWechatPayApi
|
||||
*/
|
||||
public async apiSysWechatPayPayPartnerTransactionPost(body?: WechatPayTransactionInput, options?: AxiosRequestConfig) : Promise<AxiosResponse<AdminResultObject>> {
|
||||
public async apiSysWechatPayPayPartnerTransactionPost(body?: WechatPayTransactionInput, options?: AxiosRequestConfig) : Promise<AxiosResponse<AdminResultCreatePayTransactionOutput>> {
|
||||
return SysWechatPayApiFp(this.configuration).apiSysWechatPayPayPartnerTransactionPost(body, options).then((request) => request(this.axios, this.basePath));
|
||||
}
|
||||
/**
|
||||
*
|
||||
* @summary 微信支付订单号查询(校正) https://api.mch.weixin.qq.com/v3/pay/transactions/id/{transaction_id}
|
||||
* @param {string} transactionId
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
* @memberof SysWechatPayApi
|
||||
*/
|
||||
public async apiSysWechatPayPayTransactionByIdTransactionIdGet(transactionId: string, options?: AxiosRequestConfig) : Promise<AxiosResponse<AdminResultWechatPayOutput>> {
|
||||
return SysWechatPayApiFp(this.configuration).apiSysWechatPayPayTransactionByIdTransactionIdGet(transactionId, options).then((request) => request(this.axios, this.basePath));
|
||||
}
|
||||
/**
|
||||
*
|
||||
* @summary 商户订单号查询(校正) https://api.mch.weixin.qq.com/v3/pay/transactions/out-trade-no/{out_trade_no}
|
||||
* @param {string} outTradeNumber
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
* @memberof SysWechatPayApi
|
||||
*/
|
||||
public async apiSysWechatPayPayTransactionByOutTradeNumberOutTradeNumberGet(outTradeNumber: string, options?: AxiosRequestConfig) : Promise<AxiosResponse<AdminResultWechatPayOutput>> {
|
||||
return SysWechatPayApiFp(this.configuration).apiSysWechatPayPayTransactionByOutTradeNumberOutTradeNumberGet(outTradeNumber, options).then((request) => request(this.axios, this.basePath));
|
||||
}
|
||||
/**
|
||||
*
|
||||
* @summary 微信支付统一下单获取Id(商户直连) 🔖
|
||||
@ -536,7 +937,29 @@ export class SysWechatPayApi extends BaseAPI {
|
||||
* @throws {RequiredError}
|
||||
* @memberof SysWechatPayApi
|
||||
*/
|
||||
public async apiSysWechatPayPayTransactionPost(body?: WechatPayTransactionInput, options?: AxiosRequestConfig) : Promise<AxiosResponse<AdminResultObject>> {
|
||||
public async apiSysWechatPayPayTransactionPost(body?: WechatPayTransactionInput, options?: AxiosRequestConfig) : Promise<AxiosResponse<AdminResultCreatePayTransactionOutput>> {
|
||||
return SysWechatPayApiFp(this.configuration).apiSysWechatPayPayTransactionPost(body, options).then((request) => request(this.axios, this.basePath));
|
||||
}
|
||||
/**
|
||||
*
|
||||
* @summary 查询单笔退款(通过商户退款单号) https://pay.weixin.qq.com/docs/merchant/apis/mini-program-payment/query-by-out-refund-no.html
|
||||
* @param {string} outRefundNumber
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
* @memberof SysWechatPayApi
|
||||
*/
|
||||
public async apiSysWechatPayRefundByOutRefundNumberOutRefundNumberGet(outRefundNumber: string, options?: AxiosRequestConfig) : Promise<AxiosResponse<AdminResultGetRefundDomesticRefundByOutRefundNumberResponse>> {
|
||||
return SysWechatPayApiFp(this.configuration).apiSysWechatPayRefundByOutRefundNumberOutRefundNumberGet(outRefundNumber, options).then((request) => request(this.axios, this.basePath));
|
||||
}
|
||||
/**
|
||||
*
|
||||
* @summary 退款申请 https://pay.weixin.qq.com/docs/merchant/apis/mini-program-payment/create.html
|
||||
* @param {RefundRequestInput} [body]
|
||||
* @param {*} [options] Override http request option.
|
||||
* @throws {RequiredError}
|
||||
* @memberof SysWechatPayApi
|
||||
*/
|
||||
public async apiSysWechatPayRefundPost(body?: RefundRequestInput, options?: AxiosRequestConfig) : Promise<AxiosResponse<void>> {
|
||||
return SysWechatPayApiFp(this.configuration).apiSysWechatPayRefundPost(body, options).then((request) => request(this.axios, this.basePath));
|
||||
}
|
||||
}
|
||||
|
||||
@ -203,4 +203,12 @@ export interface AddCodeGenInput {
|
||||
* @memberof AddCodeGenInput
|
||||
*/
|
||||
generateMenu: boolean;
|
||||
|
||||
/**
|
||||
* 是否使用 Api Service
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof AddCodeGenInput
|
||||
*/
|
||||
isApiService?: boolean;
|
||||
}
|
||||
|
||||
@ -12,6 +12,7 @@
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { SysUser } from './sys-user';
|
||||
/**
|
||||
*
|
||||
*
|
||||
@ -92,6 +93,12 @@ export interface AddOpenAccessInput {
|
||||
*/
|
||||
bindTenantId?: number;
|
||||
|
||||
/**
|
||||
* @type {SysUser}
|
||||
* @memberof AddOpenAccessInput
|
||||
*/
|
||||
bindUser?: SysUser;
|
||||
|
||||
/**
|
||||
* 身份标识
|
||||
*
|
||||
|
||||
@ -0,0 +1,69 @@
|
||||
/* 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.
|
||||
*/
|
||||
|
||||
import { CreatePayTransactionOutput } from './create-pay-transaction-output';
|
||||
/**
|
||||
* 全局返回结果
|
||||
*
|
||||
* @export
|
||||
* @interface AdminResultCreatePayTransactionOutput
|
||||
*/
|
||||
export interface AdminResultCreatePayTransactionOutput {
|
||||
|
||||
/**
|
||||
* 状态码
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof AdminResultCreatePayTransactionOutput
|
||||
*/
|
||||
code?: number;
|
||||
|
||||
/**
|
||||
* 类型success、warning、error
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AdminResultCreatePayTransactionOutput
|
||||
*/
|
||||
type?: string | null;
|
||||
|
||||
/**
|
||||
* 错误信息
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AdminResultCreatePayTransactionOutput
|
||||
*/
|
||||
message?: string | null;
|
||||
|
||||
/**
|
||||
* @type {CreatePayTransactionOutput}
|
||||
* @memberof AdminResultCreatePayTransactionOutput
|
||||
*/
|
||||
result?: CreatePayTransactionOutput;
|
||||
|
||||
/**
|
||||
* 附加数据
|
||||
*
|
||||
* @type {any}
|
||||
* @memberof AdminResultCreatePayTransactionOutput
|
||||
*/
|
||||
extras?: any | null;
|
||||
|
||||
/**
|
||||
* 时间
|
||||
*
|
||||
* @type {Date}
|
||||
* @memberof AdminResultCreatePayTransactionOutput
|
||||
*/
|
||||
time?: Date;
|
||||
}
|
||||
@ -0,0 +1,69 @@
|
||||
/* 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.
|
||||
*/
|
||||
|
||||
import { GetRefundDomesticRefundByOutRefundNumberResponse } from './get-refund-domestic-refund-by-out-refund-number-response';
|
||||
/**
|
||||
* 全局返回结果
|
||||
*
|
||||
* @export
|
||||
* @interface AdminResultGetRefundDomesticRefundByOutRefundNumberResponse
|
||||
*/
|
||||
export interface AdminResultGetRefundDomesticRefundByOutRefundNumberResponse {
|
||||
|
||||
/**
|
||||
* 状态码
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof AdminResultGetRefundDomesticRefundByOutRefundNumberResponse
|
||||
*/
|
||||
code?: number;
|
||||
|
||||
/**
|
||||
* 类型success、warning、error
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AdminResultGetRefundDomesticRefundByOutRefundNumberResponse
|
||||
*/
|
||||
type?: string | null;
|
||||
|
||||
/**
|
||||
* 错误信息
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AdminResultGetRefundDomesticRefundByOutRefundNumberResponse
|
||||
*/
|
||||
message?: string | null;
|
||||
|
||||
/**
|
||||
* @type {GetRefundDomesticRefundByOutRefundNumberResponse}
|
||||
* @memberof AdminResultGetRefundDomesticRefundByOutRefundNumberResponse
|
||||
*/
|
||||
result?: GetRefundDomesticRefundByOutRefundNumberResponse;
|
||||
|
||||
/**
|
||||
* 附加数据
|
||||
*
|
||||
* @type {any}
|
||||
* @memberof AdminResultGetRefundDomesticRefundByOutRefundNumberResponse
|
||||
*/
|
||||
extras?: any | null;
|
||||
|
||||
/**
|
||||
* 时间
|
||||
*
|
||||
* @type {Date}
|
||||
* @memberof AdminResultGetRefundDomesticRefundByOutRefundNumberResponse
|
||||
*/
|
||||
time?: Date;
|
||||
}
|
||||
@ -0,0 +1,69 @@
|
||||
/* 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.
|
||||
*/
|
||||
|
||||
import { SqlSugarPagedListSysWechatPay } from './sql-sugar-paged-list-sys-wechat-pay';
|
||||
/**
|
||||
* 全局返回结果
|
||||
*
|
||||
* @export
|
||||
* @interface AdminResultSqlSugarPagedListSysWechatPay
|
||||
*/
|
||||
export interface AdminResultSqlSugarPagedListSysWechatPay {
|
||||
|
||||
/**
|
||||
* 状态码
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof AdminResultSqlSugarPagedListSysWechatPay
|
||||
*/
|
||||
code?: number;
|
||||
|
||||
/**
|
||||
* 类型success、warning、error
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AdminResultSqlSugarPagedListSysWechatPay
|
||||
*/
|
||||
type?: string | null;
|
||||
|
||||
/**
|
||||
* 错误信息
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AdminResultSqlSugarPagedListSysWechatPay
|
||||
*/
|
||||
message?: string | null;
|
||||
|
||||
/**
|
||||
* @type {SqlSugarPagedListSysWechatPay}
|
||||
* @memberof AdminResultSqlSugarPagedListSysWechatPay
|
||||
*/
|
||||
result?: SqlSugarPagedListSysWechatPay;
|
||||
|
||||
/**
|
||||
* 附加数据
|
||||
*
|
||||
* @type {any}
|
||||
* @memberof AdminResultSqlSugarPagedListSysWechatPay
|
||||
*/
|
||||
extras?: any | null;
|
||||
|
||||
/**
|
||||
* 时间
|
||||
*
|
||||
* @type {Date}
|
||||
* @memberof AdminResultSqlSugarPagedListSysWechatPay
|
||||
*/
|
||||
time?: Date;
|
||||
}
|
||||
83
Web/src/api-services/models/amount.ts
Normal file
83
Web/src/api-services/models/amount.ts
Normal file
@ -0,0 +1,83 @@
|
||||
/* 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.
|
||||
*/
|
||||
|
||||
import { From } from './from';
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @export
|
||||
* @interface Amount
|
||||
*/
|
||||
export interface Amount {
|
||||
|
||||
/**
|
||||
* @type {number}
|
||||
* @memberof Amount
|
||||
*/
|
||||
total?: number;
|
||||
|
||||
/**
|
||||
* @type {number}
|
||||
* @memberof Amount
|
||||
*/
|
||||
refund?: number;
|
||||
|
||||
/**
|
||||
* @type {string}
|
||||
* @memberof Amount
|
||||
*/
|
||||
currency?: string | null;
|
||||
|
||||
/**
|
||||
* @type {number}
|
||||
* @memberof Amount
|
||||
*/
|
||||
payerTotal?: number;
|
||||
|
||||
/**
|
||||
* @type {number}
|
||||
* @memberof Amount
|
||||
*/
|
||||
payerRefund?: number;
|
||||
|
||||
/**
|
||||
* @type {number}
|
||||
* @memberof Amount
|
||||
*/
|
||||
settlementTotal?: number;
|
||||
|
||||
/**
|
||||
* @type {number}
|
||||
* @memberof Amount
|
||||
*/
|
||||
settlementRefund?: number;
|
||||
|
||||
/**
|
||||
* @type {number}
|
||||
* @memberof Amount
|
||||
*/
|
||||
discountRefund?: number;
|
||||
|
||||
/**
|
||||
* @type {Array<From>}
|
||||
* @memberof Amount
|
||||
*/
|
||||
from?: Array<From> | null;
|
||||
|
||||
/**
|
||||
* @type {number}
|
||||
* @memberof Amount
|
||||
*/
|
||||
refundFee?: number | null;
|
||||
}
|
||||
34
Web/src/api-services/models/create-pay-transaction-output.ts
Normal file
34
Web/src/api-services/models/create-pay-transaction-output.ts
Normal file
@ -0,0 +1,34 @@
|
||||
/* 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 CreatePayTransactionOutput
|
||||
*/
|
||||
export interface CreatePayTransactionOutput {
|
||||
|
||||
/**
|
||||
* @type {string}
|
||||
* @memberof CreatePayTransactionOutput
|
||||
*/
|
||||
prepayId?: string | null;
|
||||
|
||||
/**
|
||||
* @type {string}
|
||||
* @memberof CreatePayTransactionOutput
|
||||
*/
|
||||
outTradeNumber?: string | null;
|
||||
}
|
||||
@ -42,6 +42,8 @@ export enum DbType {
|
||||
NUMBER_21 = 21,
|
||||
NUMBER_22 = 22,
|
||||
NUMBER_23 = 23,
|
||||
NUMBER_24 = 24,
|
||||
NUMBER_25 = 25,
|
||||
NUMBER_900 = 900
|
||||
}
|
||||
|
||||
|
||||
34
Web/src/api-services/models/from.ts
Normal file
34
Web/src/api-services/models/from.ts
Normal file
@ -0,0 +1,34 @@
|
||||
/* 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 From
|
||||
*/
|
||||
export interface From {
|
||||
|
||||
/**
|
||||
* @type {number}
|
||||
* @memberof From
|
||||
*/
|
||||
amount?: number;
|
||||
|
||||
/**
|
||||
* @type {string}
|
||||
* @memberof From
|
||||
*/
|
||||
account?: string | null;
|
||||
}
|
||||
@ -0,0 +1,114 @@
|
||||
/* 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.
|
||||
*/
|
||||
|
||||
import { Amount } from './amount';
|
||||
import { Promotion } from './promotion';
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @export
|
||||
* @interface GetRefundDomesticRefundByOutRefundNumberResponse
|
||||
*/
|
||||
export interface GetRefundDomesticRefundByOutRefundNumberResponse {
|
||||
|
||||
/**
|
||||
* @type {string}
|
||||
* @memberof GetRefundDomesticRefundByOutRefundNumberResponse
|
||||
*/
|
||||
code?: string | null;
|
||||
|
||||
/**
|
||||
* @type {string}
|
||||
* @memberof GetRefundDomesticRefundByOutRefundNumberResponse
|
||||
*/
|
||||
message?: string | null;
|
||||
|
||||
/**
|
||||
* @type {{ [key: string]: any; }}
|
||||
* @memberof GetRefundDomesticRefundByOutRefundNumberResponse
|
||||
*/
|
||||
detail?: { [key: string]: any; } | null;
|
||||
|
||||
/**
|
||||
* @type {string}
|
||||
* @memberof GetRefundDomesticRefundByOutRefundNumberResponse
|
||||
*/
|
||||
refundId?: string | null;
|
||||
|
||||
/**
|
||||
* @type {string}
|
||||
* @memberof GetRefundDomesticRefundByOutRefundNumberResponse
|
||||
*/
|
||||
outRefundNo?: string | null;
|
||||
|
||||
/**
|
||||
* @type {string}
|
||||
* @memberof GetRefundDomesticRefundByOutRefundNumberResponse
|
||||
*/
|
||||
transactionId?: string | null;
|
||||
|
||||
/**
|
||||
* @type {string}
|
||||
* @memberof GetRefundDomesticRefundByOutRefundNumberResponse
|
||||
*/
|
||||
outTradeNo?: string | null;
|
||||
|
||||
/**
|
||||
* @type {string}
|
||||
* @memberof GetRefundDomesticRefundByOutRefundNumberResponse
|
||||
*/
|
||||
channel?: string | null;
|
||||
|
||||
/**
|
||||
* @type {string}
|
||||
* @memberof GetRefundDomesticRefundByOutRefundNumberResponse
|
||||
*/
|
||||
userReceivedAccount?: string | null;
|
||||
|
||||
/**
|
||||
* @type {string}
|
||||
* @memberof GetRefundDomesticRefundByOutRefundNumberResponse
|
||||
*/
|
||||
fundsAccount?: string | null;
|
||||
|
||||
/**
|
||||
* @type {string}
|
||||
* @memberof GetRefundDomesticRefundByOutRefundNumberResponse
|
||||
*/
|
||||
status?: string | null;
|
||||
|
||||
/**
|
||||
* @type {Date}
|
||||
* @memberof GetRefundDomesticRefundByOutRefundNumberResponse
|
||||
*/
|
||||
successTime?: Date | null;
|
||||
|
||||
/**
|
||||
* @type {Date}
|
||||
* @memberof GetRefundDomesticRefundByOutRefundNumberResponse
|
||||
*/
|
||||
createTime?: Date;
|
||||
|
||||
/**
|
||||
* @type {Amount}
|
||||
* @memberof GetRefundDomesticRefundByOutRefundNumberResponse
|
||||
*/
|
||||
amount?: Amount;
|
||||
|
||||
/**
|
||||
* @type {Array<Promotion>}
|
||||
* @memberof GetRefundDomesticRefundByOutRefundNumberResponse
|
||||
*/
|
||||
promotionDetail?: Array<Promotion> | null;
|
||||
}
|
||||
58
Web/src/api-services/models/goods-detail.ts
Normal file
58
Web/src/api-services/models/goods-detail.ts
Normal file
@ -0,0 +1,58 @@
|
||||
/* 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 GoodsDetail
|
||||
*/
|
||||
export interface GoodsDetail {
|
||||
|
||||
/**
|
||||
* @type {string}
|
||||
* @memberof GoodsDetail
|
||||
*/
|
||||
merchantGoodsId?: string | null;
|
||||
|
||||
/**
|
||||
* @type {string}
|
||||
* @memberof GoodsDetail
|
||||
*/
|
||||
wechatpayGoodsId?: string | null;
|
||||
|
||||
/**
|
||||
* @type {string}
|
||||
* @memberof GoodsDetail
|
||||
*/
|
||||
goodsName?: string | null;
|
||||
|
||||
/**
|
||||
* @type {number}
|
||||
* @memberof GoodsDetail
|
||||
*/
|
||||
unitPrice?: number;
|
||||
|
||||
/**
|
||||
* @type {number}
|
||||
* @memberof GoodsDetail
|
||||
*/
|
||||
refundAmount?: number;
|
||||
|
||||
/**
|
||||
* @type {number}
|
||||
* @memberof GoodsDetail
|
||||
*/
|
||||
refundQuantity?: number;
|
||||
}
|
||||
@ -19,9 +19,11 @@ export * from './add-sys-ldap-input';
|
||||
export * from './add-tenant-input';
|
||||
export * from './add-user-input';
|
||||
export * from './admin-result-boolean';
|
||||
export * from './admin-result-create-pay-transaction-output';
|
||||
export * from './admin-result-data-set';
|
||||
export * from './admin-result-data-table';
|
||||
export * from './admin-result-dictionary-string-string';
|
||||
export * from './admin-result-get-refund-domestic-refund-by-out-refund-number-response';
|
||||
export * from './admin-result-iaction-result';
|
||||
export * from './admin-result-int32';
|
||||
export * from './admin-result-int64';
|
||||
@ -82,6 +84,7 @@ export * from './admin-result-sql-sugar-paged-list-sys-online-user';
|
||||
export * from './admin-result-sql-sugar-paged-list-sys-plugin';
|
||||
export * from './admin-result-sql-sugar-paged-list-sys-print';
|
||||
export * from './admin-result-sql-sugar-paged-list-sys-region';
|
||||
export * from './admin-result-sql-sugar-paged-list-sys-wechat-pay';
|
||||
export * from './admin-result-sql-sugar-paged-list-tenant-output';
|
||||
export * from './admin-result-sql-sugar-paged-list-user-output';
|
||||
export * from './admin-result-string';
|
||||
@ -101,6 +104,7 @@ export * from './admin-result-visual-db-table';
|
||||
export * from './admin-result-wechat-pay-output';
|
||||
export * from './admin-result-wx-open-id-output';
|
||||
export * from './admin-result-wx-phone-output';
|
||||
export * from './amount';
|
||||
export * from './api-output';
|
||||
export * from './assembly';
|
||||
export * from './base-api-input';
|
||||
@ -114,13 +118,13 @@ export * from './card-type-enum';
|
||||
export * from './change-pwd-input';
|
||||
export * from './cluster-status';
|
||||
export * from './code-gen-config';
|
||||
export * from './code-gen-input';
|
||||
export * from './column-ouput';
|
||||
export * from './column-relation';
|
||||
export * from './compare-info';
|
||||
export * from './const-output';
|
||||
export * from './constructor-info';
|
||||
export * from './create-entity-input';
|
||||
export * from './create-pay-transaction-output';
|
||||
export * from './create-seed-data-input';
|
||||
export * from './culture-info';
|
||||
export * from './culture-level-enum';
|
||||
@ -179,10 +183,13 @@ export * from './field-attributes';
|
||||
export * from './field-info';
|
||||
export * from './file-input';
|
||||
export * from './file-output';
|
||||
export * from './from';
|
||||
export * from './gen-auth-url-input';
|
||||
export * from './gender-enum';
|
||||
export * from './generate-signature-input';
|
||||
export * from './generic-parameter-attributes';
|
||||
export * from './get-refund-domestic-refund-by-out-refund-number-response';
|
||||
export * from './goods-detail';
|
||||
export * from './http-method-enum';
|
||||
export * from './iaction-result';
|
||||
export * from './icomponent';
|
||||
@ -225,8 +232,8 @@ export * from './notice-user-status-enum';
|
||||
export * from './number-format-info';
|
||||
export * from './oauth-user-input';
|
||||
export * from './oauth-user-output';
|
||||
export * from './open-access-input';
|
||||
export * from './open-access-output';
|
||||
export * from './page-code-gen-input';
|
||||
export * from './page-config-input';
|
||||
export * from './page-dict-data-input';
|
||||
export * from './page-dict-type-input';
|
||||
@ -236,6 +243,7 @@ export * from './page-job-trigger-record-input';
|
||||
export * from './page-log-input';
|
||||
export * from './page-notice-input';
|
||||
export * from './page-online-user-input';
|
||||
export * from './page-open-access-input';
|
||||
export * from './page-plugin-input';
|
||||
export * from './page-pos-input';
|
||||
export * from './page-pos-output';
|
||||
@ -243,6 +251,8 @@ export * from './page-print-input';
|
||||
export * from './page-region-input';
|
||||
export * from './page-role-input';
|
||||
export * from './page-role-output';
|
||||
export * from './page-sys-ldap-input';
|
||||
export * from './page-sys-wechat-pay-input';
|
||||
export * from './page-tenant-input';
|
||||
export * from './page-user-input';
|
||||
export * from './parameter-attributes';
|
||||
@ -250,8 +260,10 @@ export * from './parameter-info';
|
||||
export * from './platform-type-enum';
|
||||
export * from './pos-output';
|
||||
export * from './print-type-enum';
|
||||
export * from './promotion';
|
||||
export * from './property-attributes';
|
||||
export * from './property-info';
|
||||
export * from './refund-request-input';
|
||||
export * from './reset-pwd-user-input';
|
||||
export * from './role-api-input';
|
||||
export * from './role-input';
|
||||
@ -290,6 +302,7 @@ export * from './sql-sugar-paged-list-sys-online-user';
|
||||
export * from './sql-sugar-paged-list-sys-plugin';
|
||||
export * from './sql-sugar-paged-list-sys-print';
|
||||
export * from './sql-sugar-paged-list-sys-region';
|
||||
export * from './sql-sugar-paged-list-sys-wechat-pay';
|
||||
export * from './sql-sugar-paged-list-tenant-output';
|
||||
export * from './sql-sugar-paged-list-user-output';
|
||||
export * from './status-enum';
|
||||
@ -311,7 +324,6 @@ export * from './sys-job-detail';
|
||||
export * from './sys-job-trigger';
|
||||
export * from './sys-job-trigger-record';
|
||||
export * from './sys-ldap';
|
||||
export * from './sys-ldap-input';
|
||||
export * from './sys-log-diff';
|
||||
export * from './sys-log-ex';
|
||||
export * from './sys-log-op';
|
||||
|
||||
@ -30,12 +30,6 @@ export interface MemberInfo {
|
||||
*/
|
||||
memberType?: MemberTypes;
|
||||
|
||||
/**
|
||||
* @type {string}
|
||||
* @memberof MemberInfo
|
||||
*/
|
||||
name?: string | null;
|
||||
|
||||
/**
|
||||
* @type {Type}
|
||||
* @memberof MemberInfo
|
||||
@ -48,6 +42,12 @@ export interface MemberInfo {
|
||||
*/
|
||||
reflectedType?: Type;
|
||||
|
||||
/**
|
||||
* @type {string}
|
||||
* @memberof MemberInfo
|
||||
*/
|
||||
name?: string | null;
|
||||
|
||||
/**
|
||||
* @type {Module}
|
||||
* @memberof MemberInfo
|
||||
|
||||
@ -12,6 +12,7 @@
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { SysUser } from './sys-user';
|
||||
/**
|
||||
*
|
||||
*
|
||||
@ -116,6 +117,12 @@ export interface OpenAccessOutput {
|
||||
*/
|
||||
bindUserId?: number;
|
||||
|
||||
/**
|
||||
* @type {SysUser}
|
||||
* @memberof OpenAccessOutput
|
||||
*/
|
||||
bindUser?: SysUser;
|
||||
|
||||
/**
|
||||
* 绑定用户账号
|
||||
*
|
||||
|
||||
@ -16,15 +16,15 @@
|
||||
* 代码生成参数类
|
||||
*
|
||||
* @export
|
||||
* @interface CodeGenInput
|
||||
* @interface PageCodeGenInput
|
||||
*/
|
||||
export interface CodeGenInput {
|
||||
export interface PageCodeGenInput {
|
||||
|
||||
/**
|
||||
* 当前页码
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof CodeGenInput
|
||||
* @memberof PageCodeGenInput
|
||||
*/
|
||||
page?: number;
|
||||
|
||||
@ -32,7 +32,7 @@ export interface CodeGenInput {
|
||||
* 页码容量
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof CodeGenInput
|
||||
* @memberof PageCodeGenInput
|
||||
*/
|
||||
pageSize?: number;
|
||||
|
||||
@ -40,7 +40,7 @@ export interface CodeGenInput {
|
||||
* 排序字段
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof CodeGenInput
|
||||
* @memberof PageCodeGenInput
|
||||
*/
|
||||
field?: string | null;
|
||||
|
||||
@ -48,7 +48,7 @@ export interface CodeGenInput {
|
||||
* 排序方向
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof CodeGenInput
|
||||
* @memberof PageCodeGenInput
|
||||
*/
|
||||
order?: string | null;
|
||||
|
||||
@ -56,7 +56,7 @@ export interface CodeGenInput {
|
||||
* 降序排序
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof CodeGenInput
|
||||
* @memberof PageCodeGenInput
|
||||
*/
|
||||
descStr?: string | null;
|
||||
|
||||
@ -64,7 +64,7 @@ export interface CodeGenInput {
|
||||
* 作者姓名
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof CodeGenInput
|
||||
* @memberof PageCodeGenInput
|
||||
*/
|
||||
authorName?: string | null;
|
||||
|
||||
@ -72,7 +72,7 @@ export interface CodeGenInput {
|
||||
* 类名
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof CodeGenInput
|
||||
* @memberof PageCodeGenInput
|
||||
*/
|
||||
className?: string | null;
|
||||
|
||||
@ -80,7 +80,7 @@ export interface CodeGenInput {
|
||||
* 是否移除表前缀
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof CodeGenInput
|
||||
* @memberof PageCodeGenInput
|
||||
*/
|
||||
tablePrefix?: string | null;
|
||||
|
||||
@ -88,7 +88,7 @@ export interface CodeGenInput {
|
||||
* 库定位器名
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof CodeGenInput
|
||||
* @memberof PageCodeGenInput
|
||||
*/
|
||||
configId?: string | null;
|
||||
|
||||
@ -96,7 +96,7 @@ export interface CodeGenInput {
|
||||
* 数据库名(保留字段)
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof CodeGenInput
|
||||
* @memberof PageCodeGenInput
|
||||
*/
|
||||
dbName?: string | null;
|
||||
|
||||
@ -104,7 +104,7 @@ export interface CodeGenInput {
|
||||
* 数据库类型
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof CodeGenInput
|
||||
* @memberof PageCodeGenInput
|
||||
*/
|
||||
dbType?: string | null;
|
||||
|
||||
@ -112,7 +112,7 @@ export interface CodeGenInput {
|
||||
* 数据库链接
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof CodeGenInput
|
||||
* @memberof PageCodeGenInput
|
||||
*/
|
||||
connectionString?: string | null;
|
||||
|
||||
@ -120,7 +120,7 @@ export interface CodeGenInput {
|
||||
* 生成方式
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof CodeGenInput
|
||||
* @memberof PageCodeGenInput
|
||||
*/
|
||||
generateType?: string | null;
|
||||
|
||||
@ -128,7 +128,7 @@ export interface CodeGenInput {
|
||||
* 数据库表名
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof CodeGenInput
|
||||
* @memberof PageCodeGenInput
|
||||
*/
|
||||
tableName?: string | null;
|
||||
|
||||
@ -136,7 +136,7 @@ export interface CodeGenInput {
|
||||
* 命名空间
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof CodeGenInput
|
||||
* @memberof PageCodeGenInput
|
||||
*/
|
||||
nameSpace?: string | null;
|
||||
|
||||
@ -144,7 +144,7 @@ export interface CodeGenInput {
|
||||
* 业务名(业务代码包名称)
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof CodeGenInput
|
||||
* @memberof PageCodeGenInput
|
||||
*/
|
||||
busName?: string | null;
|
||||
|
||||
@ -152,7 +152,7 @@ export interface CodeGenInput {
|
||||
* 功能名(数据库表名称)
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof CodeGenInput
|
||||
* @memberof PageCodeGenInput
|
||||
*/
|
||||
tableComment?: string | null;
|
||||
|
||||
@ -160,7 +160,7 @@ export interface CodeGenInput {
|
||||
* 菜单应用分类(应用编码)
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof CodeGenInput
|
||||
* @memberof PageCodeGenInput
|
||||
*/
|
||||
menuApplication?: string | null;
|
||||
|
||||
@ -168,7 +168,7 @@ export interface CodeGenInput {
|
||||
* 是否生成菜单
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof CodeGenInput
|
||||
* @memberof PageCodeGenInput
|
||||
*/
|
||||
generateMenu?: boolean;
|
||||
|
||||
@ -176,7 +176,7 @@ export interface CodeGenInput {
|
||||
* 菜单父级
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof CodeGenInput
|
||||
* @memberof PageCodeGenInput
|
||||
*/
|
||||
menuPid?: number | null;
|
||||
|
||||
@ -184,7 +184,7 @@ export interface CodeGenInput {
|
||||
* 页面目录
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof CodeGenInput
|
||||
* @memberof PageCodeGenInput
|
||||
*/
|
||||
pagePath?: string | null;
|
||||
|
||||
@ -192,7 +192,7 @@ export interface CodeGenInput {
|
||||
* 支持打印类型
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof CodeGenInput
|
||||
* @memberof PageCodeGenInput
|
||||
*/
|
||||
printType?: string | null;
|
||||
|
||||
@ -200,7 +200,15 @@ export interface CodeGenInput {
|
||||
* 打印模版名称
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof CodeGenInput
|
||||
* @memberof PageCodeGenInput
|
||||
*/
|
||||
printName?: string | null;
|
||||
|
||||
/**
|
||||
* 是否使用 Api Service
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof PageCodeGenInput
|
||||
*/
|
||||
isApiService?: boolean;
|
||||
}
|
||||
@ -16,15 +16,15 @@
|
||||
* 开放接口身份输入参数
|
||||
*
|
||||
* @export
|
||||
* @interface OpenAccessInput
|
||||
* @interface PageOpenAccessInput
|
||||
*/
|
||||
export interface OpenAccessInput {
|
||||
export interface PageOpenAccessInput {
|
||||
|
||||
/**
|
||||
* 当前页码
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof OpenAccessInput
|
||||
* @memberof PageOpenAccessInput
|
||||
*/
|
||||
page?: number;
|
||||
|
||||
@ -32,7 +32,7 @@ export interface OpenAccessInput {
|
||||
* 页码容量
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof OpenAccessInput
|
||||
* @memberof PageOpenAccessInput
|
||||
*/
|
||||
pageSize?: number;
|
||||
|
||||
@ -40,7 +40,7 @@ export interface OpenAccessInput {
|
||||
* 排序字段
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof OpenAccessInput
|
||||
* @memberof PageOpenAccessInput
|
||||
*/
|
||||
field?: string | null;
|
||||
|
||||
@ -48,7 +48,7 @@ export interface OpenAccessInput {
|
||||
* 排序方向
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof OpenAccessInput
|
||||
* @memberof PageOpenAccessInput
|
||||
*/
|
||||
order?: string | null;
|
||||
|
||||
@ -56,7 +56,7 @@ export interface OpenAccessInput {
|
||||
* 降序排序
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof OpenAccessInput
|
||||
* @memberof PageOpenAccessInput
|
||||
*/
|
||||
descStr?: string | null;
|
||||
|
||||
@ -64,7 +64,7 @@ export interface OpenAccessInput {
|
||||
* 身份标识
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof OpenAccessInput
|
||||
* @memberof PageOpenAccessInput
|
||||
*/
|
||||
accessKey?: string | null;
|
||||
}
|
||||
@ -16,15 +16,15 @@
|
||||
* 系统域登录信息配置输入参数
|
||||
*
|
||||
* @export
|
||||
* @interface SysLdapInput
|
||||
* @interface PageSysLdapInput
|
||||
*/
|
||||
export interface SysLdapInput {
|
||||
export interface PageSysLdapInput {
|
||||
|
||||
/**
|
||||
* 当前页码
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof SysLdapInput
|
||||
* @memberof PageSysLdapInput
|
||||
*/
|
||||
page?: number;
|
||||
|
||||
@ -32,7 +32,7 @@ export interface SysLdapInput {
|
||||
* 页码容量
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof SysLdapInput
|
||||
* @memberof PageSysLdapInput
|
||||
*/
|
||||
pageSize?: number;
|
||||
|
||||
@ -40,7 +40,7 @@ export interface SysLdapInput {
|
||||
* 排序字段
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof SysLdapInput
|
||||
* @memberof PageSysLdapInput
|
||||
*/
|
||||
field?: string | null;
|
||||
|
||||
@ -48,7 +48,7 @@ export interface SysLdapInput {
|
||||
* 排序方向
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof SysLdapInput
|
||||
* @memberof PageSysLdapInput
|
||||
*/
|
||||
order?: string | null;
|
||||
|
||||
@ -56,7 +56,7 @@ export interface SysLdapInput {
|
||||
* 降序排序
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof SysLdapInput
|
||||
* @memberof PageSysLdapInput
|
||||
*/
|
||||
descStr?: string | null;
|
||||
|
||||
@ -64,7 +64,7 @@ export interface SysLdapInput {
|
||||
* 关键字查询
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof SysLdapInput
|
||||
* @memberof PageSysLdapInput
|
||||
*/
|
||||
searchKey?: string | null;
|
||||
|
||||
@ -72,7 +72,7 @@ export interface SysLdapInput {
|
||||
* 主机
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof SysLdapInput
|
||||
* @memberof PageSysLdapInput
|
||||
*/
|
||||
host?: string | null;
|
||||
}
|
||||
102
Web/src/api-services/models/page-sys-wechat-pay-input.ts
Normal file
102
Web/src/api-services/models/page-sys-wechat-pay-input.ts
Normal file
@ -0,0 +1,102 @@
|
||||
/* 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 PageSysWechatPayInput
|
||||
*/
|
||||
export interface PageSysWechatPayInput {
|
||||
|
||||
/**
|
||||
* 当前页码
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof PageSysWechatPayInput
|
||||
*/
|
||||
page?: number;
|
||||
|
||||
/**
|
||||
* 页码容量
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof PageSysWechatPayInput
|
||||
*/
|
||||
pageSize?: number;
|
||||
|
||||
/**
|
||||
* 排序字段
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof PageSysWechatPayInput
|
||||
*/
|
||||
field?: string | null;
|
||||
|
||||
/**
|
||||
* 排序方向
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof PageSysWechatPayInput
|
||||
*/
|
||||
order?: string | null;
|
||||
|
||||
/**
|
||||
* 降序排序
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof PageSysWechatPayInput
|
||||
*/
|
||||
descStr?: string | null;
|
||||
|
||||
/**
|
||||
* order_id
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof PageSysWechatPayInput
|
||||
*/
|
||||
orderId?: number | null;
|
||||
|
||||
/**
|
||||
* order_status
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof PageSysWechatPayInput
|
||||
*/
|
||||
orderStatus?: number | null;
|
||||
|
||||
/**
|
||||
* out_trade_number
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof PageSysWechatPayInput
|
||||
*/
|
||||
outTradeNumber?: string | null;
|
||||
|
||||
/**
|
||||
* success_time范围
|
||||
*
|
||||
* @type {Array<Date>}
|
||||
* @memberof PageSysWechatPayInput
|
||||
*/
|
||||
successTimeRange?: Array<Date> | null;
|
||||
|
||||
/**
|
||||
* expire_time范围
|
||||
*
|
||||
* @type {Array<Date>}
|
||||
* @memberof PageSysWechatPayInput
|
||||
*/
|
||||
expireTimeRange?: Array<Date> | null;
|
||||
}
|
||||
59
Web/src/api-services/models/promotion.ts
Normal file
59
Web/src/api-services/models/promotion.ts
Normal file
@ -0,0 +1,59 @@
|
||||
/* 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.
|
||||
*/
|
||||
|
||||
import { GoodsDetail } from './goods-detail';
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @export
|
||||
* @interface Promotion
|
||||
*/
|
||||
export interface Promotion {
|
||||
|
||||
/**
|
||||
* @type {string}
|
||||
* @memberof Promotion
|
||||
*/
|
||||
promotionId?: string | null;
|
||||
|
||||
/**
|
||||
* @type {string}
|
||||
* @memberof Promotion
|
||||
*/
|
||||
scope?: string | null;
|
||||
|
||||
/**
|
||||
* @type {string}
|
||||
* @memberof Promotion
|
||||
*/
|
||||
type?: string | null;
|
||||
|
||||
/**
|
||||
* @type {number}
|
||||
* @memberof Promotion
|
||||
*/
|
||||
amount?: number;
|
||||
|
||||
/**
|
||||
* @type {number}
|
||||
* @memberof Promotion
|
||||
*/
|
||||
refundAmount?: number;
|
||||
|
||||
/**
|
||||
* @type {Array<GoodsDetail>}
|
||||
* @memberof Promotion
|
||||
*/
|
||||
goodsDetail?: Array<GoodsDetail> | null;
|
||||
}
|
||||
126
Web/src/api-services/models/refund-request-input.ts
Normal file
126
Web/src/api-services/models/refund-request-input.ts
Normal file
@ -0,0 +1,126 @@
|
||||
/* 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 RefundRequestInput
|
||||
*/
|
||||
export interface RefundRequestInput {
|
||||
|
||||
/**
|
||||
* 商户订单号(原支付交易对应的付款单号)
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof RefundRequestInput
|
||||
*/
|
||||
outTradeNumber?: string | null;
|
||||
|
||||
/**
|
||||
* 原订单金额(分)
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof RefundRequestInput
|
||||
*/
|
||||
total?: number;
|
||||
|
||||
/**
|
||||
* 退款金额(分)
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof RefundRequestInput
|
||||
*/
|
||||
refund?: number;
|
||||
|
||||
/**
|
||||
* 退款原因
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof RefundRequestInput
|
||||
*/
|
||||
reason?: string | null;
|
||||
|
||||
/**
|
||||
* 关联的商户订单号
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof RefundRequestInput
|
||||
*/
|
||||
orderId?: number;
|
||||
|
||||
/**
|
||||
* 关联的商户订单状态(或者为第几次支付,有些订单涉及多次支付,比如先付预付款,后补尾款)
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof RefundRequestInput
|
||||
*/
|
||||
orderStatus?: number;
|
||||
|
||||
/**
|
||||
* 关联的商户商品编码
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof RefundRequestInput
|
||||
*/
|
||||
merchantGoodsId?: string | null;
|
||||
|
||||
/**
|
||||
* 关联的商户商品名称
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof RefundRequestInput
|
||||
*/
|
||||
goodsName?: string | null;
|
||||
|
||||
/**
|
||||
* 关联的商户商品单价
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof RefundRequestInput
|
||||
*/
|
||||
unitPrice?: number;
|
||||
|
||||
/**
|
||||
* 关联的商户商品退款金额
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof RefundRequestInput
|
||||
*/
|
||||
refundAmount?: number;
|
||||
|
||||
/**
|
||||
* 关联的商户商品退货数量
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof RefundRequestInput
|
||||
*/
|
||||
refundQuantity?: number;
|
||||
|
||||
/**
|
||||
* 附加数据
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof RefundRequestInput
|
||||
*/
|
||||
attachment?: string | null;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof RefundRequestInput
|
||||
*/
|
||||
remark?: string | null;
|
||||
}
|
||||
@ -0,0 +1,79 @@
|
||||
/* 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.
|
||||
*/
|
||||
|
||||
import { SysWechatPay } from './sys-wechat-pay';
|
||||
/**
|
||||
* 分页泛型集合
|
||||
*
|
||||
* @export
|
||||
* @interface SqlSugarPagedListSysWechatPay
|
||||
*/
|
||||
export interface SqlSugarPagedListSysWechatPay {
|
||||
|
||||
/**
|
||||
* 页码
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof SqlSugarPagedListSysWechatPay
|
||||
*/
|
||||
page?: number;
|
||||
|
||||
/**
|
||||
* 页容量
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof SqlSugarPagedListSysWechatPay
|
||||
*/
|
||||
pageSize?: number;
|
||||
|
||||
/**
|
||||
* 总条数
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof SqlSugarPagedListSysWechatPay
|
||||
*/
|
||||
total?: number;
|
||||
|
||||
/**
|
||||
* 总页数
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof SqlSugarPagedListSysWechatPay
|
||||
*/
|
||||
totalPages?: number;
|
||||
|
||||
/**
|
||||
* 当前页集合
|
||||
*
|
||||
* @type {Array<SysWechatPay>}
|
||||
* @memberof SqlSugarPagedListSysWechatPay
|
||||
*/
|
||||
items?: Array<SysWechatPay> | null;
|
||||
|
||||
/**
|
||||
* 是否有上一页
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof SqlSugarPagedListSysWechatPay
|
||||
*/
|
||||
hasPrevPage?: boolean;
|
||||
|
||||
/**
|
||||
* 是否有下一页
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof SqlSugarPagedListSysWechatPay
|
||||
*/
|
||||
hasNextPage?: boolean;
|
||||
}
|
||||
@ -211,4 +211,12 @@ export interface SysCodeGen {
|
||||
* @memberof SysCodeGen
|
||||
*/
|
||||
printName?: string | null;
|
||||
|
||||
/**
|
||||
* 是否使用 Api Service
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof SysCodeGen
|
||||
*/
|
||||
isApiService?: boolean;
|
||||
}
|
||||
|
||||
@ -84,6 +84,22 @@ export interface SysWechatPay {
|
||||
*/
|
||||
isDelete?: boolean;
|
||||
|
||||
/**
|
||||
* 关联的商户订单号
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof SysWechatPay
|
||||
*/
|
||||
orderId?: number;
|
||||
|
||||
/**
|
||||
* 关联的商户订单状态(或者为第几次支付,有些订单涉及多次支付,比如先付预付款,后补尾款)
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof SysWechatPay
|
||||
*/
|
||||
orderStatus?: number;
|
||||
|
||||
/**
|
||||
* 微信商户号
|
||||
*
|
||||
|
||||
@ -204,6 +204,14 @@ export interface UpdateCodeGenInput {
|
||||
*/
|
||||
printName?: string | null;
|
||||
|
||||
/**
|
||||
* 是否使用 Api Service
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof UpdateCodeGenInput
|
||||
*/
|
||||
isApiService?: boolean;
|
||||
|
||||
/**
|
||||
* 代码生成器Id
|
||||
*
|
||||
|
||||
@ -12,6 +12,7 @@
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { SysUser } from './sys-user';
|
||||
/**
|
||||
*
|
||||
*
|
||||
@ -92,6 +93,12 @@ export interface UpdateOpenAccessInput {
|
||||
*/
|
||||
bindTenantId?: number;
|
||||
|
||||
/**
|
||||
* @type {SysUser}
|
||||
* @memberof UpdateOpenAccessInput
|
||||
*/
|
||||
bindUser?: SysUser;
|
||||
|
||||
/**
|
||||
* 身份标识
|
||||
*
|
||||
|
||||
@ -28,6 +28,30 @@ export interface WechatPayOutput {
|
||||
*/
|
||||
openId?: string | null;
|
||||
|
||||
/**
|
||||
* 商户(支付交易)单号,微信唯一
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof WechatPayOutput
|
||||
*/
|
||||
outTradeNumber?: string | null;
|
||||
|
||||
/**
|
||||
* 关联的商户(商品交易)订单号
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof WechatPayOutput
|
||||
*/
|
||||
orderId?: number;
|
||||
|
||||
/**
|
||||
* 关联的商户订单状态(或者为第几次支付,有些订单涉及多次支付,比如先付预付款,后补尾款)
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof WechatPayOutput
|
||||
*/
|
||||
orderStatus?: number;
|
||||
|
||||
/**
|
||||
* 订单金额
|
||||
*
|
||||
@ -51,4 +75,36 @@ export interface WechatPayOutput {
|
||||
* @memberof WechatPayOutput
|
||||
*/
|
||||
goodsTag?: string | null;
|
||||
|
||||
/**
|
||||
* 支付发起时间
|
||||
*
|
||||
* @type {Date}
|
||||
* @memberof WechatPayOutput
|
||||
*/
|
||||
createTime?: Date;
|
||||
|
||||
/**
|
||||
* 支付完成时间
|
||||
*
|
||||
* @type {Date}
|
||||
* @memberof WechatPayOutput
|
||||
*/
|
||||
successTime?: Date;
|
||||
|
||||
/**
|
||||
* 交易状态(支付成功后,微信返回)
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof WechatPayOutput
|
||||
*/
|
||||
tradeState?: string | null;
|
||||
|
||||
/**
|
||||
* 交易状态描述(支付成功后,微信返回)
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof WechatPayOutput
|
||||
*/
|
||||
tradeStateDescription?: string | null;
|
||||
}
|
||||
|
||||
@ -59,4 +59,20 @@ export interface WechatPayTransactionInput {
|
||||
* @memberof WechatPayTransactionInput
|
||||
*/
|
||||
goodsTag?: string | null;
|
||||
|
||||
/**
|
||||
* 关联的商户订单号
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof WechatPayTransactionInput
|
||||
*/
|
||||
orderId?: number;
|
||||
|
||||
/**
|
||||
* 关联的商户订单付款状态(或者为第几次支付,有些订单涉及多次支付,比如先付预付款,后补尾款)
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof WechatPayTransactionInput
|
||||
*/
|
||||
orderStatus?: number;
|
||||
}
|
||||
|
||||
@ -79,8 +79,9 @@ const onColumnsAsideMenuClick = async (v: RouteItem) => {
|
||||
if (route.path.startsWith(redirect)) mittBus.emit('setSendColumnsChildren', setSendChildren(redirect));
|
||||
else router.push(redirect);
|
||||
} else {
|
||||
if (!v.children) {
|
||||
if (!v.children || v.children?.length === 0) {
|
||||
router.push(path);
|
||||
onColumnsAsideDown(v.k);
|
||||
} else {
|
||||
// 显示子级菜单
|
||||
const resData: MittMenu = setSendChildren(path);
|
||||
@ -92,7 +93,7 @@ const onColumnsAsideMenuClick = async (v: RouteItem) => {
|
||||
|
||||
// 一个路由设置自动收起菜单
|
||||
// https://gitee.com/lyt-top/vue-next-admin/issues/I6HW7H
|
||||
if (!v.children) themeConfig.value.isCollapse = true;
|
||||
if (!v.children || v.children?.length === 0) themeConfig.value.isCollapse = true;
|
||||
else if (v.children.length > 1) themeConfig.value.isCollapse = false;
|
||||
};
|
||||
// 鼠标移入时,显示当前的子级菜单
|
||||
|
||||
@ -132,8 +132,7 @@ export const useUserInfo = defineStore('userInfo', {
|
||||
|
||||
// 根据字典类型和代码取字典项
|
||||
getDictItemByCode(typePCode: string, val: string) {
|
||||
if(val!=undefined)
|
||||
{
|
||||
if (val != undefined) {
|
||||
val = val.toString();
|
||||
if (val) {
|
||||
const _val = val.toString();
|
||||
|
||||
@ -5,8 +5,8 @@
|
||||
<el-icon size="16" style="margin-right: 3px; display: inline; vertical-align: middle"> <ele-Postcard /> </el-icon>简介(About)
|
||||
</h4>
|
||||
<span class="text">
|
||||
基于 .NET6 (Furion/SqlSugar) 实现的通用权限开发框架,前端采用
|
||||
Vue3+Element-plus+Vite5,整合众多优秀技术和框架,模块插件式开发。集成多租户、缓存、数据校验、鉴权、事件总线、动态API、通讯、远程请求、任务调度、打印等众多黑科技。代码结构简单清晰,注释详尽,易于上手与二次开发,即便是复杂业务逻辑也能迅速实现,真正实现“开箱即用”。
|
||||
🔥基于 .NET 6/8 (Furion/SqlSugar) 实现的通用权限开发框架,前端采用
|
||||
Vue3/Element-plus,代码简洁、易扩展。整合最新技术,模块插件式开发,前后端分离,开箱即用。集成多租户、缓存、数据校验、鉴权、事件总线、动态API、通讯、远程请求、任务调度、打印等众多黑科技。让开发更简单、更通用、更流行!
|
||||
</span>
|
||||
</div>
|
||||
|
||||
|
||||
@ -7,6 +7,10 @@
|
||||
<span> {{ props.title }} </span>
|
||||
</div>
|
||||
</template>
|
||||
<div style="color: red; padding: 15px 15px; background: #faecd8; margin-bottom: 10px">
|
||||
<el-icon style="transform: translateY(2px)"><ele-Bell /></el-icon>
|
||||
<span> 如果是在前端生成的实体/表(在生成表选择项里面找不到),请重启后台服务后再进行代码生成。 </span>
|
||||
</div>
|
||||
<el-form :model="state.ruleForm" ref="ruleFormRef" label-width="auto">
|
||||
<el-row :gutter="10">
|
||||
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
|
||||
@ -54,6 +58,14 @@
|
||||
</el-col>
|
||||
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
|
||||
<el-form-item label="生成表" prop="tableName" :rules="[{ required: true, message: '生成表不能为空', trigger: 'blur' }]">
|
||||
<template v-slot:label>
|
||||
<div>
|
||||
生成表
|
||||
<el-tooltip raw-content content="如果是在前端生成的实体/表(在生成表选择项里面找不到),请重启后台服务后再进行代码生成。" placement="top">
|
||||
<SvgIcon name="fa fa-question-circle-o" :size="16" />
|
||||
</el-tooltip>
|
||||
</div>
|
||||
</template>
|
||||
<el-select v-model="state.ruleForm.tableName" @change="tableChanged" value-key="value" filterable clearable class="w100">
|
||||
<el-option v-for="item in state.tableData" :key="item.entityName" :label="item.entityName + ' ( ' + item.tableName + ' ) [' + item.tableComment + ']'" :value="item" />
|
||||
</el-select>
|
||||
|
||||
@ -109,6 +109,7 @@ const state = reactive({
|
||||
allEnumSelector: [] as any,
|
||||
});
|
||||
|
||||
// 页面初始化
|
||||
onMounted(async () => {
|
||||
var res = await getAPI(SysDictDataApi).apiSysDictDataDataListCodeGet('code_gen_effect_type');
|
||||
state.effectTypeList = res.data.result;
|
||||
@ -140,6 +141,7 @@ onUnmounted(() => {
|
||||
mittBus.off('submitRefresh', () => {});
|
||||
mittBus.off('submitRefreshFk', () => {});
|
||||
});
|
||||
|
||||
// 控件类型改变
|
||||
const effectTypeChange = (data: any, index: number) => {
|
||||
let value = data.effectType;
|
||||
@ -190,8 +192,8 @@ function effectTypeEnable(data: any) {
|
||||
}
|
||||
|
||||
// 打开弹窗
|
||||
const openDialog = (addRow: any) => {
|
||||
handleQuery(addRow);
|
||||
const openDialog = async (addRow: any) => {
|
||||
await handleQuery(addRow);
|
||||
state.isShowDialog = true;
|
||||
};
|
||||
|
||||
|
||||
@ -5,12 +5,12 @@
|
||||
<el-row :gutter="10">
|
||||
<el-col class="mb5" :xs="24" :sm="12" :md="8" :lg="6" :xl="6">
|
||||
<el-form-item label="业务名" prop="busName">
|
||||
<el-input placeholder="业务名" clearable @keyup.enter="handleQuery" v-model="state.queryParams.busName" @keyup.enter.native="handleQuery(true)" />
|
||||
<el-input placeholder="业务名" clearable @keyup.enter="handleQuery" v-model="state.queryParams.busName" @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col class="mb5" :xs="24" :sm="12" :md="8" :lg="6" :xl="6">
|
||||
<el-form-item label="数据库表名" prop="tableName">
|
||||
<el-input placeholder="数据库表名" clearable @keyup.enter="handleQuery" v-model="state.queryParams.tableName" @keyup.enter.native="handleQuery(true)" />
|
||||
<el-input placeholder="数据库表名" clearable @keyup.enter="handleQuery" v-model="state.queryParams.tableName" @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@ -21,7 +21,7 @@
|
||||
<el-row>
|
||||
<el-col>
|
||||
<el-button-group>
|
||||
<el-button type="primary" icon="ele-Search" @click="handleQuery(true)" :loading="options.loading"> 查询 </el-button>
|
||||
<el-button type="primary" icon="ele-Search" @click="handleQuery" :loading="options.loading"> 查询 </el-button>
|
||||
<el-button icon="ele-Refresh" @click="resetQuery" :loading="options.loading"> 重置 </el-button>
|
||||
</el-button-group>
|
||||
</el-col>
|
||||
@ -29,7 +29,7 @@
|
||||
</el-card>
|
||||
|
||||
<el-card class="full-table" shadow="hover" style="margin-top: 5px">
|
||||
<vxe-grid ref="xGrid" class="xGrid-style" v-bind="options" @sort-change="sortChange">
|
||||
<vxe-grid ref="xGrid" class="xGrid-style" v-bind="options" v-on="gridEvents">
|
||||
<template #toolbar_buttons>
|
||||
<el-button type="primary" icon="ele-Plus" @click="handleAdd"> 新增 </el-button>
|
||||
</template>
|
||||
@ -62,15 +62,6 @@
|
||||
<el-button icon="ele-Cpu" text type="primary" @click="handleGenerate(row)">生成</el-button>
|
||||
</el-tooltip>
|
||||
</template>
|
||||
<template #pager>
|
||||
<vxe-pager
|
||||
:loading="options.loading"
|
||||
v-model:current-page="state.tableParams.page"
|
||||
v-model:page-size="state.tableParams.pageSize"
|
||||
:total="state.tableParams.total"
|
||||
@page-change="pageChange"
|
||||
/>
|
||||
</template>
|
||||
</vxe-grid>
|
||||
</el-card>
|
||||
|
||||
@ -84,8 +75,9 @@
|
||||
import { onMounted, reactive, ref, defineAsyncComponent } from 'vue';
|
||||
import { ElMessageBox, ElMessage } from 'element-plus';
|
||||
import { auth } from '/@/utils/authFunction';
|
||||
import { VxeGridInstance, VxePagerEvents, VxePagerDefines } from 'vxe-table';
|
||||
import { useVxeTable } from '/@/hooks/vxeTableOptionsHook';
|
||||
import { VxeGridInstance, VxeGridListeners, VxeGridPropTypes } from 'vxe-table';
|
||||
import { useVxeTable } from '/@/hooks/useVxeTableOptionsHook';
|
||||
import { Local } from '/@/utils/storage';
|
||||
import { downloadByUrl } from '/@/utils/download';
|
||||
|
||||
import EditCodeGenDialog from './component/editCodeGenDialog.vue';
|
||||
@ -93,7 +85,7 @@ import CodeConfigDialog from './component/genConfigDialog.vue';
|
||||
|
||||
import { getAPI } from '/@/utils/axios-utils';
|
||||
import { SysCodeGenApi } from '/@/api-services/api';
|
||||
import { SysCodeGen } from '/@/api-services/models';
|
||||
import { SysCodeGen, PageCodeGenInput } from '/@/api-services/models';
|
||||
|
||||
const PreviewDialog = defineAsyncComponent(() => import('./component/previewDialog.vue'));
|
||||
const xGrid = ref<VxeGridInstance>();
|
||||
@ -110,90 +102,78 @@ const state = reactive({
|
||||
tableName: undefined,
|
||||
busName: undefined,
|
||||
},
|
||||
tableParams: {
|
||||
page: 1,
|
||||
pageSize: 50,
|
||||
field: 'id', // 默认的排序字段
|
||||
order: 'aes', // 排序方向
|
||||
descStr: 'desc', // 降序排序的关键字符
|
||||
total: 0 as any,
|
||||
localPageParam: {
|
||||
pageSize: 50 as number,
|
||||
defaultSort: { field: 'id', order: 'asc', descStr: 'desc' },
|
||||
},
|
||||
visible: false,
|
||||
title: '',
|
||||
applicationNamespaces: [] as Array<string>,
|
||||
});
|
||||
|
||||
// 本地存储参数
|
||||
const localPageParamKey = 'localPageParam:sysCodeGen';
|
||||
// 表格参数配置
|
||||
const options = useVxeTable<SysCodeGen>({
|
||||
id: 'sysCodeGen',
|
||||
name: '代码生成',
|
||||
columns: [
|
||||
// { type: 'checkbox', width: 40, fixed: 'left' },
|
||||
{ type: 'seq', title: '序号', width: 60, fixed: 'left' },
|
||||
{ field: 'configId', title: '库定位器', minWidth: 200, showOverflow: 'tooltip' },
|
||||
{ field: 'tableName', title: '表名称', minWidth: 200, showOverflow: 'tooltip' },
|
||||
{ field: 'busName', title: '业务名', minWidth: 200, showOverflow: 'tooltip' },
|
||||
{ field: 'nameSpace', title: '命名空间', minWidth: 200, showOverflow: 'tooltip' },
|
||||
{ field: 'authorName', title: '作者姓名', minWidth: 200, showOverflow: 'tooltip' },
|
||||
{ field: 'generateType', title: '生成方式', minWidth: 140, showOverflow: 'tooltip', slots: { default: 'row_generateType' } },
|
||||
{ title: '操作', fixed: 'right', width: 280, showOverflow: true, slots: { default: 'row_buttons' } },
|
||||
],
|
||||
enableExport: auth('sysCodeGen:export'),
|
||||
searchCallback: () => handleQuery(),
|
||||
queryAllCallback: () => fetchData({ pageSize: 99999 }),
|
||||
});
|
||||
const options = useVxeTable<SysCodeGen>(
|
||||
{
|
||||
id: 'sysCodeGen',
|
||||
name: '代码生成',
|
||||
columns: [
|
||||
// { type: 'checkbox', width: 40, fixed: 'left' },
|
||||
{ type: 'seq', title: '序号', width: 60, fixed: 'left' },
|
||||
{ field: 'configId', title: '库定位器', minWidth: 200, showOverflow: 'tooltip' },
|
||||
{ field: 'tableName', title: '表名称', minWidth: 200, showOverflow: 'tooltip' },
|
||||
{ field: 'busName', title: '业务名', minWidth: 200, showOverflow: 'tooltip' },
|
||||
{ field: 'nameSpace', title: '命名空间', minWidth: 200, showOverflow: 'tooltip' },
|
||||
{ field: 'authorName', title: '作者姓名', minWidth: 200, showOverflow: 'tooltip' },
|
||||
{ field: 'generateType', title: '生成方式', minWidth: 140, showOverflow: 'tooltip', slots: { default: 'row_generateType' } },
|
||||
{ title: '操作', fixed: 'right', width: 280, showOverflow: true, slots: { default: 'row_buttons' } },
|
||||
],
|
||||
},
|
||||
// vxeGrid配置参数(此处可覆写任何参数),参考vxe-table官方文档
|
||||
{
|
||||
// 代理配置
|
||||
proxyConfig: { autoLoad: true, ajax: { query: ({ page, sort }) => handleQueryApi(page, sort) } },
|
||||
// 排序配置
|
||||
sortConfig: { defaultSort: Local.get(localPageParamKey)?.defaultSort || state.localPageParam.defaultSort },
|
||||
// 分页配置
|
||||
pagerConfig: { pageSize: Local.get(localPageParamKey)?.pageSize || state.localPageParam.pageSize },
|
||||
// 工具栏配置
|
||||
toolbarConfig: { export: false },
|
||||
}
|
||||
);
|
||||
|
||||
// 页面初始化
|
||||
onMounted(async () => {
|
||||
state.localPageParam = Local.get(localPageParamKey) || state.localPageParam;
|
||||
await handleQuery();
|
||||
|
||||
// 获取命名空间集合
|
||||
let res = await getAPI(SysCodeGenApi).apiSysCodeGenApplicationNamespacesGet();
|
||||
state.applicationNamespaces = res.data.result as Array<string>;
|
||||
});
|
||||
|
||||
// 查询操作
|
||||
const handleQuery = async (reset = false) => {
|
||||
options.loading = true;
|
||||
if (reset) state.tableParams.page = 1;
|
||||
var res = await fetchData(null);
|
||||
xGrid.value?.loadData(res.data.result?.items ?? []);
|
||||
state.tableParams.total = res.data.result?.total;
|
||||
options.loading = false;
|
||||
};
|
||||
|
||||
// 获取数据
|
||||
const fetchData = async (tableParams: any) => {
|
||||
let params = Object.assign(state.queryParams, state.tableParams, tableParams);
|
||||
// 查询api
|
||||
const handleQueryApi = async (page: VxeGridPropTypes.ProxyAjaxQueryPageParams, sort: VxeGridPropTypes.ProxyAjaxQuerySortCheckedParams) => {
|
||||
const params = Object.assign(state.queryParams, { page: page.currentPage, pageSize: page.pageSize, field: sort.field, order: sort.order, descStr: 'desc' }) as PageCodeGenInput;
|
||||
return getAPI(SysCodeGenApi).apiSysCodeGenPagePost(params);
|
||||
};
|
||||
|
||||
// 查询操作
|
||||
const handleQuery = async () => {
|
||||
await xGrid.value?.commitProxy('query');
|
||||
};
|
||||
|
||||
// 重置操作
|
||||
const resetQuery = () => {
|
||||
const resetQuery = async () => {
|
||||
state.queryParams.busName = undefined;
|
||||
state.queryParams.tableName = undefined;
|
||||
handleQuery(true);
|
||||
};
|
||||
|
||||
const handleConfig = (row: any) => {
|
||||
CodeConfigRef.value?.openDialog(row);
|
||||
};
|
||||
|
||||
// 改变页码序号或页面容量
|
||||
const pageChange: VxePagerEvents.PageChange = ({ currentPage, pageSize }: VxePagerDefines.PageChangeEventParams) => {
|
||||
state.tableParams.page = currentPage;
|
||||
state.tableParams.pageSize = pageSize;
|
||||
handleQuery();
|
||||
};
|
||||
|
||||
// 列排序
|
||||
const sortChange = (options: any) => {
|
||||
state.tableParams.field = options.field;
|
||||
state.tableParams.order = options.order;
|
||||
handleQuery();
|
||||
await xGrid.value?.commitProxy('reload');
|
||||
};
|
||||
|
||||
// 打开新增页面
|
||||
const handleAdd = () => {
|
||||
state.title = '增加';
|
||||
state.title = '增加代码生成';
|
||||
EditCodeGenRef.value?.openDialog({
|
||||
authorName: 'Admin.NET',
|
||||
generateType: '200',
|
||||
@ -202,12 +182,13 @@ const handleAdd = () => {
|
||||
pagePath: 'main',
|
||||
nameSpace: state.applicationNamespaces[0],
|
||||
generateMenu: false,
|
||||
isApiService: false,
|
||||
});
|
||||
};
|
||||
|
||||
// 打开编辑页面
|
||||
const handleEdit = (row: any) => {
|
||||
state.title = '编辑';
|
||||
state.title = '编辑代码生成';
|
||||
EditCodeGenRef.value?.openDialog(row);
|
||||
};
|
||||
|
||||
@ -220,12 +201,31 @@ const handleDelete = (row: any) => {
|
||||
})
|
||||
.then(async () => {
|
||||
await getAPI(SysCodeGenApi).apiSysCodeGenDeletePost([{ id: row.id }]);
|
||||
handleQuery();
|
||||
await handleQuery();
|
||||
ElMessage.success('操作成功');
|
||||
})
|
||||
.catch(() => {});
|
||||
};
|
||||
|
||||
// 表格事件
|
||||
const gridEvents: VxeGridListeners<SysCodeGen> = {
|
||||
// 只对 pager-config 配置时有效,分页发生改变时会触发该事件
|
||||
async pageChange({ pageSize }) {
|
||||
state.localPageParam.pageSize = pageSize;
|
||||
Local.set(localPageParamKey, state.localPageParam);
|
||||
},
|
||||
// 当排序条件发生变化时会触发该事件
|
||||
async sortChange({ field, order }) {
|
||||
state.localPageParam.defaultSort = { field: field, order: order!, descStr: 'desc' };
|
||||
Local.set(localPageParamKey, state.localPageParam);
|
||||
},
|
||||
};
|
||||
|
||||
// 打开配置
|
||||
const handleConfig = (row: any) => {
|
||||
CodeConfigRef.value?.openDialog(row);
|
||||
};
|
||||
|
||||
// 开始生成代码
|
||||
const handleGenerate = (row: any) => {
|
||||
ElMessageBox.confirm(`确定要生成吗?`, '提示', {
|
||||
@ -236,7 +236,7 @@ const handleGenerate = (row: any) => {
|
||||
.then(async () => {
|
||||
var res = await getAPI(SysCodeGenApi).apiSysCodeGenRunLocalPost(row);
|
||||
if (res.data.result != null && res.data.result.url != null) downloadByUrl({ url: res.data.result.url });
|
||||
handleQuery();
|
||||
await handleQuery();
|
||||
ElMessage.success('操作成功');
|
||||
})
|
||||
.catch(() => {});
|
||||
|
||||
@ -104,4 +104,9 @@ export const dataTypeList = [
|
||||
hasLength: false,
|
||||
hasDecimalDigits: false,
|
||||
},
|
||||
{
|
||||
value: 'boolean',
|
||||
hasLength: false,
|
||||
hasDecimalDigits: false,
|
||||
},
|
||||
];
|
||||
|
||||
@ -32,7 +32,7 @@
|
||||
<el-button-group style="padding-left: 12px; padding-right: 12px">
|
||||
<el-button icon="ele-Plus" @click="showAddColumn"> 增加列 </el-button>
|
||||
<el-button icon="ele-Plus" @click="showGenDialog"> 生成实体 </el-button>
|
||||
<el-popover placement="bottom" title="温馨提示" :width="200" trigger="hover" content="如果是刚刚生成的实体,请重启服务后再生成种子">
|
||||
<el-popover placement="bottom" title="🔔提示" :width="220" trigger="hover" content="如果是刚刚生成的实体,请重启后台服务后再生成种子。">
|
||||
<template #reference>
|
||||
<el-button icon="ele-Plus" @click="showGenSeedDataDialog"> 生成种子 </el-button>
|
||||
</template>
|
||||
@ -81,7 +81,7 @@ import { onMounted, reactive, ref } from 'vue';
|
||||
import { ElMessageBox, ElMessage } from 'element-plus';
|
||||
import { useRouter } from 'vue-router';
|
||||
import { VxeGridInstance } from 'vxe-table';
|
||||
import { useVxeTable } from '/@/hooks/vxeTableOptionsHook';
|
||||
import { useVxeTable } from '/@/hooks/useVxeTableOptionsHook';
|
||||
|
||||
import EditTable from '/@/views/system/database/component/editTable.vue';
|
||||
import EditColumn from '/@/views/system/database/component/editColumn.vue';
|
||||
@ -118,54 +118,58 @@ const state = reactive({
|
||||
});
|
||||
|
||||
// 表格参数配置
|
||||
const options = useVxeTable<DbColumnOutput>({
|
||||
id: 'sysDatabase',
|
||||
name: '库表信息',
|
||||
columns: [
|
||||
// { type: 'checkbox', width: 40, fixed: 'left' },
|
||||
{ type: 'seq', title: '序号', width: 50, fixed: 'left' },
|
||||
{ field: 'dbColumnName', title: '字段名', minWidth: 200, showOverflow: 'tooltip' },
|
||||
{ field: 'dataType', title: '数据类型', minWidth: 120, showOverflow: 'tooltip' },
|
||||
{ field: 'isPrimarykey', title: '主键', minWidth: 70, slots: { default: 'row_isPrimarykey' } },
|
||||
{ field: 'isIdentity', title: '自增', minWidth: 70, slots: { default: 'row_isIdentity' } },
|
||||
{ field: 'isNullable', title: '可空', minWidth: 70, slots: { default: 'row_isNullable' } },
|
||||
{ field: 'length', title: '长度', minWidth: 80, showOverflow: 'tooltip' },
|
||||
{ field: 'decimalDigits', title: '精度', minWidth: 80, showOverflow: 'tooltip' },
|
||||
{ field: 'defaultValue', title: '默认值', minWidth: 80, showOverflow: 'tooltip' },
|
||||
{ field: 'columnDescription', title: '描述', minWidth: 200, showOverflow: 'tooltip' },
|
||||
{ title: '操作', fixed: 'right', width: 100, showOverflow: true, slots: { default: 'row_buttons' } },
|
||||
],
|
||||
enableExport: true,
|
||||
searchCallback: () => handleQueryColumn(),
|
||||
queryAllCallback: () => fetchData({ pageSize: 99999 }),
|
||||
});
|
||||
const options = useVxeTable<DbColumnOutput>(
|
||||
{
|
||||
id: 'sysDatabase',
|
||||
name: '库表信息',
|
||||
columns: [
|
||||
// { type: 'checkbox', width: 40, fixed: 'left' },
|
||||
{ type: 'seq', title: '序号', width: 50, fixed: 'left' },
|
||||
{ field: 'dbColumnName', title: '字段名', minWidth: 200, showOverflow: 'tooltip' },
|
||||
{ field: 'dataType', title: '数据类型', minWidth: 120, showOverflow: 'tooltip' },
|
||||
{ field: 'isPrimarykey', title: '主键', minWidth: 70, slots: { default: 'row_isPrimarykey' } },
|
||||
{ field: 'isIdentity', title: '自增', minWidth: 70, slots: { default: 'row_isIdentity' } },
|
||||
{ field: 'isNullable', title: '可空', minWidth: 70, slots: { default: 'row_isNullable' } },
|
||||
{ field: 'length', title: '长度', minWidth: 80, showOverflow: 'tooltip' },
|
||||
{ field: 'decimalDigits', title: '精度', minWidth: 80, showOverflow: 'tooltip' },
|
||||
{ field: 'defaultValue', title: '默认值', minWidth: 80, showOverflow: 'tooltip' },
|
||||
{ field: 'columnDescription', title: '描述', minWidth: 200, showOverflow: 'tooltip' },
|
||||
{ title: '操作', fixed: 'right', width: 100, showOverflow: true, slots: { default: 'row_buttons' } },
|
||||
],
|
||||
},
|
||||
// vxeGrid配置参数(此处可覆写任何参数),参考vxe-table官方文档
|
||||
{
|
||||
// 代理配置
|
||||
proxyConfig: { autoLoad: true, ajax: { query: () => handleQueryColumnApi() } },
|
||||
// 分页配置
|
||||
pagerConfig: { enabled: false },
|
||||
// 工具栏配置
|
||||
toolbarConfig: { export: true },
|
||||
}
|
||||
);
|
||||
|
||||
// 页面初始化
|
||||
onMounted(async () => {
|
||||
options.loading = true;
|
||||
var res = await getAPI(SysDatabaseApi).apiSysDatabaseListGet();
|
||||
let res = await getAPI(SysDatabaseApi).apiSysDatabaseListGet();
|
||||
state.dbData = res.data.result;
|
||||
options.loading = false;
|
||||
|
||||
let appNamesRes = await getAPI(SysCodeGenApi).apiSysCodeGenApplicationNamespacesGet();
|
||||
state.appNamespaces = appNamesRes.data.result as Array<string>;
|
||||
options.loading = false;
|
||||
});
|
||||
|
||||
// 查询操作
|
||||
const handleQueryColumn = async () => {
|
||||
// 查询列api
|
||||
const handleQueryColumnApi = async () => {
|
||||
if (state.tableName == '' || typeof state.tableName == 'undefined') {
|
||||
await xGrid.value?.loadData([]);
|
||||
options.loading = false;
|
||||
return;
|
||||
}
|
||||
options.loading = true;
|
||||
var res = await fetchData();
|
||||
await xGrid.value?.loadData(res.data.result ?? []);
|
||||
options.loading = false;
|
||||
return getAPI(SysDatabaseApi).apiSysDatabaseColumnListTableNameConfigIdGet(state.tableName, state.configId);
|
||||
};
|
||||
|
||||
// 获取数据
|
||||
const fetchData = async (tableParams?: any) => {
|
||||
return getAPI(SysDatabaseApi).apiSysDatabaseColumnListTableNameConfigIdGet(state.tableName, state.configId);
|
||||
// 查询列操作
|
||||
const handleQueryColumn = async () => {
|
||||
await xGrid.value?.commitProxy('query');
|
||||
};
|
||||
|
||||
// 增加表
|
||||
|
||||
@ -44,7 +44,7 @@
|
||||
<div>
|
||||
扫描触发器
|
||||
<el-tooltip raw-content content="此参数只在新增作业时生效<br/>扫描定义在作业上的触发器" placement="top">
|
||||
<SvgIcon name="fa fa-question-circle-o" :size="16" style="vertical-align: middle" />
|
||||
<SvgIcon name="fa fa-question-circle-o" :size="16" />
|
||||
</el-tooltip>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@ -95,7 +95,7 @@ import ModifyRecord from '/@/components/table/modifyRecord.vue';
|
||||
|
||||
import { getAPI } from '/@/utils/axios-utils';
|
||||
import { SysLdapApi } from '/@/api-services';
|
||||
import { SysLdap, SysLdapInput } from '/@/api-services/models';
|
||||
import { SysLdap, PageSysLdapInput } from '/@/api-services/models';
|
||||
|
||||
// 异步引用组件
|
||||
const PrintDialog = defineAsyncComponent(() => import('/@/views/system/print/component/hiprint/preview.vue'));
|
||||
@ -159,7 +159,7 @@ onMounted(async () => {
|
||||
|
||||
// 查询api
|
||||
const handleQueryApi = async (page: VxeGridPropTypes.ProxyAjaxQueryPageParams, sort: VxeGridPropTypes.ProxyAjaxQuerySortCheckedParams) => {
|
||||
const params = Object.assign(state.queryParams, { page: page.currentPage, pageSize: page.pageSize, field: sort.field, order: sort.order, descStr: 'desc' }) as SysLdapInput;
|
||||
const params = Object.assign(state.queryParams, { page: page.currentPage, pageSize: page.pageSize, field: sort.field, order: sort.order, descStr: 'desc' }) as PageSysLdapInput;
|
||||
return getAPI(SysLdapApi).apiSysLdapPagePost(params);
|
||||
};
|
||||
|
||||
|
||||
@ -130,6 +130,7 @@ const options = useVxeTable<SysMenu>(
|
||||
pagerConfig: { enabled: false },
|
||||
// 工具栏配置
|
||||
toolbarConfig: { export: false },
|
||||
// 树形配置
|
||||
treeConfig: { expandAll: false },
|
||||
}
|
||||
);
|
||||
|
||||
@ -71,7 +71,7 @@ import ModifyRecord from '/@/components/table/modifyRecord.vue';
|
||||
|
||||
import { getAPI } from '/@/utils/axios-utils';
|
||||
import { SysOpenAccessApi } from '/@/api-services/api';
|
||||
import { OpenAccessInput, OpenAccessOutput } from '/@/api-services/models';
|
||||
import { PageOpenAccessInput, OpenAccessOutput } from '/@/api-services/models';
|
||||
|
||||
const xGrid = ref<VxeGridInstance>();
|
||||
const editRef = ref<InstanceType<typeof EditOpenAccess>>();
|
||||
@ -128,7 +128,7 @@ onMounted(async () => {
|
||||
|
||||
// 查询api
|
||||
const handleQueryApi = async (page: VxeGridPropTypes.ProxyAjaxQueryPageParams, sort: VxeGridPropTypes.ProxyAjaxQuerySortCheckedParams) => {
|
||||
const params = Object.assign(state.queryParams, { page: page.currentPage, pageSize: page.pageSize, field: sort.field, order: sort.order, descStr: 'desc' }) as OpenAccessInput;
|
||||
const params = Object.assign(state.queryParams, { page: page.currentPage, pageSize: page.pageSize, field: sort.field, order: sort.order, descStr: 'desc' }) as PageOpenAccessInput;
|
||||
return getAPI(SysOpenAccessApi).apiSysOpenAccessPagePost(params);
|
||||
};
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user