From 5352dfc3db2200df3dc5348e913e108f678adf5e Mon Sep 17 00:00:00 2001 From: zhengyuxuan <zhengyuxuan1995> Date: 星期二, 18 三月 2025 14:10:47 +0800 Subject: [PATCH] Merge branch 'master' of http://120.26.58.240:8888/r/LifePaymentApi --- LifePayment/LifePayment.Application.Contracts/Setting/OperateHistoryDto.cs | 74 ++++++ LifePayment/LifePayment.Host/LifePaymentServices.Application.Contracts.xml | 40 +++ LifePayment/LifePayment.Host/Cert/CSR文件.csr | 17 + LifePayment/LifePayment.Host/LifePaymentServiceHostModule.cs | 3 LifePayment/LifePayment.Domain.Shared/Enum/OperateHistory/OperateHistoryTypeEnum.cs | 153 +++++++++++++ LifePayment/LifePayment.Domain/Common/OperateHistory.cs | 35 +++ LifePayment/LifePayment.EntityFrameworkCore/LifePaymentServicesDbContext.cs | 3 LifePayment/LifePayment.Host/Cert/alipayCertPublicKey_RSA2.crt | 43 +++ LifePayment/LifePayment.Application/Setting/OperateHistoryService.cs | 75 ++++++ LifePayment/LifePayment.Application.Contracts/Setting/IOperateHistoryService.cs | 17 + LifePayment/LifePayment.Host/LifePayment.Host.csproj | 9 LifePayment/LifePayment.HttpApi/LifePay/OperateHistoryController.cs | 46 ++++ LifePayment/LifePayment.Host/Cert/appCertPublicKey_2021004171602214.crt | 23 ++ LifePayment/LifePayment.Host/Cert/alipayRootCert.crt | 88 ++++++++ LifePayment/LifePayment.Host/LifePaymentService.HttpApi.xml | 14 + 15 files changed, 639 insertions(+), 1 deletions(-) diff --git a/LifePayment/LifePayment.Application.Contracts/Setting/IOperateHistoryService.cs b/LifePayment/LifePayment.Application.Contracts/Setting/IOperateHistoryService.cs new file mode 100644 index 0000000..1276a73 --- /dev/null +++ b/LifePayment/LifePayment.Application.Contracts/Setting/IOperateHistoryService.cs @@ -0,0 +1,17 @@ +锘縰sing System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Volo.Abp.Application.Services; +using ZeroD.Util; + +namespace LifePayment.Application.Contracts +{ + public interface IOperateHistoryService : IApplicationService + { + Task<PageOutput<OperateHistoryDto>> GetOperateHistoryByRelationId(GetOperateHistoryInput input); + + Task<PageOutput<OperateHistoryDto>> GetOperateHistoryByType(QueryOperateHistoryByTypeInput input); + } +} diff --git a/LifePayment/LifePayment.Application.Contracts/Setting/OperateHistoryDto.cs b/LifePayment/LifePayment.Application.Contracts/Setting/OperateHistoryDto.cs new file mode 100644 index 0000000..2ec0153 --- /dev/null +++ b/LifePayment/LifePayment.Application.Contracts/Setting/OperateHistoryDto.cs @@ -0,0 +1,74 @@ +锘縰sing LifePayment.Domain.Shared; +using System; +using ZeroD.Util; + +namespace LifePayment.Application.Contracts +{ + public class OperateHistoryDto + { + /// <summary> + /// 鍏宠仈鍏崇郴ID + /// </summary> + public Guid RelationId { get; set; } + + /// <summary> + /// 琛ㄥ悕 + /// </summary> + public int? TableType { get; set; } + + /// <summary> + /// 鎿嶄綔 + /// </summary> + public string OperateName { get; set; } + + /// <summary> + /// 鎿嶄綔鍐呭 + /// </summary> + public string OperateContent { get; set; } + + /// <summary> + /// 鎿嶄綔浜� + /// </summary> + public string CreatorName { get; set; } + + /// <summary> + /// 鎿嶄綔鏃堕棿 + /// </summary> + public DateTime CreationTime { get; set; } + + /// <summary> + /// 鎿嶄綔缁嗚妭 + /// </summary> + public string OperateDetail { get; set; } + } + + public class GetOperateHistoryInput : PageInput + { + public Guid RelationId { get; set; } + + public string OperateName { get; set; } + } + + public class QueryOperateHistoryByTypeInput : PageInput + { + public Guid TypeId { get; set; } + + public OperateHistoryTypeEnum OperateHistoryType { get; set; } + } + + public class CreateOperateHistoryInput + { + /// <summary> + /// 鍏宠仈鍏崇郴ID + /// </summary> + public Guid RelationId { get; set; } + + public int? TableType { get; set; } + + public string OperateName { get; set; } + + public string OperateContent { get; set; } + + public string CreatorName { get; set; } + } +} diff --git a/LifePayment/LifePayment.Application/Setting/OperateHistoryService.cs b/LifePayment/LifePayment.Application/Setting/OperateHistoryService.cs new file mode 100644 index 0000000..6832ba0 --- /dev/null +++ b/LifePayment/LifePayment.Application/Setting/OperateHistoryService.cs @@ -0,0 +1,75 @@ +锘縰sing LifePayment.Application.Contracts; +using LifePayment.Domain.Models; +using LifePayment.Domain.Shared; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Linq.Dynamic.Core; +using System.Threading.Tasks; +using Volo.Abp.Application.Services; +using Volo.Abp.Domain.Repositories; +using ZeroD.Util; + +namespace LifePayment.Application +{ + public class OperateHistoryService : ApplicationService, IOperateHistoryService + { + private readonly IRepository<OperateHistory, Guid> _operateHistory; + + public OperateHistoryService( + IRepository<OperateHistory, Guid> operateHistory) + { + _operateHistory = operateHistory; + } + + public async Task<PageOutput<OperateHistoryDto>> GetOperateHistoryByRelationId(GetOperateHistoryInput input) + { + var query = _operateHistory.Where(r => r.RelationId == input.RelationId) + .WhereIf(input.OperateName.IsNotNullOrEmpty(), r => r.OperateName == input.OperateName) + .Select(r => new OperateHistoryDto + { + OperateName = r.OperateName, + RelationId = r.RelationId, + CreationTime = r.CreationTime, + CreatorName = r.CreatorName, + OperateContent = r.OperateContent, + TableType = r.TableType + }); + var result = await query.GetPageResult(input.PageModel); + + return result; + } + + public async Task<PageOutput<OperateHistoryDto>> GetOperateHistoryByType(QueryOperateHistoryByTypeInput input) + { + var query = _operateHistory.AsQueryable(); + + switch (input.OperateHistoryType) + { + + case OperateHistoryTypeEnum.AccountManage: + query = query.Where(x => x.UserId == input.TypeId + && LifePaymentConstant.LogsSpecies.AccountManageOperateNameList.Contains(x.OperateName)); + + break; + default: + query = query.Where(x => x.RelationId == input.TypeId); + + break; + } + + var result = await query.Select(r => + new OperateHistoryDto + { + OperateName = r.OperateName, + RelationId = r.RelationId, + CreationTime = r.CreationTime, + CreatorName = r.CreatorName, + OperateContent = r.OperateContent, + TableType = r.TableType + }) + .GetPageResult(input.PageModel); + return result; + } + } +} diff --git a/LifePayment/LifePayment.Domain.Shared/Enum/OperateHistory/OperateHistoryTypeEnum.cs b/LifePayment/LifePayment.Domain.Shared/Enum/OperateHistory/OperateHistoryTypeEnum.cs new file mode 100644 index 0000000..d96037a --- /dev/null +++ b/LifePayment/LifePayment.Domain.Shared/Enum/OperateHistory/OperateHistoryTypeEnum.cs @@ -0,0 +1,153 @@ +锘縰sing System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace LifePayment.Domain.Shared; + +public enum OperateHistoryTypeEnum +{ + /// <summary> + /// 璁よ瘉鐢ㄦ埛鏃ュ織 + /// </summary> + [Description("璁よ瘉鐢ㄦ埛鏃ュ織")] + CertifiedUser = 10, + + /// <summary> + /// 骞冲彴鐢ㄦ埛鏃ュ織 + /// </summary> + [Description("骞冲彴鐢ㄦ埛鏃ュ織")] + PlatformUser = 11, + + /// <summary> + /// 鐢ㄦ埛璁よ瘉瀹℃牳鏃ュ織 + /// </summary> + [Description("鐢ㄦ埛璁よ瘉瀹℃牳鏃ュ織")] + UserCertificationAudit = 12, + + /// <summary> + /// 鍏憡鏃ュ織 + /// </summary> + [Description("鍏憡鏃ュ織")] + SystemNotice = 13, + + /// <summary> + /// 璧勮绠$悊鏃ュ織 + /// </summary> + [Description("璧勮绠$悊鏃ュ織")] + InformationForManage = 14, + + /// <summary> + /// 璧勮瀹℃牳鏃ュ織 + /// </summary> + [Description("璧勮瀹℃牳鏃ュ織")] + InformationWaitForCheck = 15, + + /// <summary> + /// 閽卞寘寮�鎴锋棩蹇� + /// </summary> + [Description("閽卞寘寮�鎴锋棩蹇�")] + WalletAccountOpen = 16, + + /// <summary> + /// 杞处瀹℃牳瀵瑰崟鏃ュ織 + /// </summary> + [Description("杞处瀹℃牳瀵瑰崟鏃ュ織")] + WalletSingleTransfer = 17, + + /// <summary> + /// 鍏呭�煎鏍� + /// </summary> + [Description("鍏呭�煎鏍告棩蹇�")] + WalletRecharge = 18, + + /// <summary> + /// 璐︽埛绠$悊 + /// </summary> + [Description("璐︽埛绠$悊")] + AccountManage = 19, + + /// <summary> + /// 璁よ瘉绠$悊 + /// </summary> + [Description("璁よ瘉绠$悊")] + UserCertificationManage = 20, + + /// <summary> + /// 鎵归噺杞处瀹℃牳鏃ュ織 + /// </summary> + [Description("鎵归噺杞处瀹℃牳鏃ュ織")] + AuditWalletBatchTransfer = 21, + + /// <summary> + /// 琛屼笟鏈烘瀯瀹℃牳鏃ュ織 + /// </summary> + [Description("琛屼笟鏈烘瀯瀹℃牳鏃ュ織")] + IndustryBodyAudit = 22, + + /// <summary> + /// 琛屼笟閰嶅瀹℃牳鏃ュ織 + /// </summary> + [Description("琛屼笟閰嶅瀹℃牳鏃ュ織")] + IndustryMatingAudit = 23, + + /// <summary> + /// 鐢叉柟浼佷笟瀹℃牳鏃ュ織 + /// </summary> + [Description("鐢叉柟浼佷笟瀹℃牳鏃ュ織")] + FirstPartyCompanyAudit = 24, + + /// <summary> + /// 浜鸿祫鍏徃瀹℃牳鏃ュ織 + /// </summary> + [Description("浜鸿祫鍏徃瀹℃牳鏃ュ織")] + ParkOrHRAudit = 25, + + /// <summary> + /// 琛屼笟鏈烘瀯绠$悊鏃ュ織 + /// </summary> + [Description("琛屼笟鏈烘瀯绠$悊鏃ュ織")] + IndustryBodyManage = 26, + + /// <summary> + /// 琛屼笟閰嶅绠$悊鏃ュ織 + /// </summary> + [Description("琛屼笟閰嶅绠$悊鏃ュ織")] + IndustryMatingManage = 27, + + /// <summary> + /// 鐢叉柟浼佷笟绠$悊鏃ュ織 + /// </summary> + [Description("鐢叉柟浼佷笟绠$悊鏃ュ織")] + FirstPartyCompanyManage = 28, + + /// <summary> + /// 浜鸿祫鍏徃绠$悊鏃ュ織 + /// </summary> + [Description("浜鸿祫鍏徃绠$悊鏃ュ織")] + ParkOrHRManage = 29, + + /// <summary> + /// 瀹㈡埛绠$悊鏃ュ織 + /// </summary> + [Description("瀹㈡埛绠$悊鏃ュ織")] + CustomerManage = 30, + + /// <summary> + /// 濂栧姳閰嶇疆鏃ュ織 + /// </summary> + [Description("濂栧姳閰嶇疆鏃ュ織")] + ParkRewardManage = 31, + + /// <summary> + /// 瀹㈡埛妯℃澘鎿嶄綔鏃ュ織 + /// </summary> + [Description("瀹㈡埛妯℃澘鎿嶄綔鏃ュ織")] + CustomerContractTemplate = 32, + + LifePayOrder = 40, + + LifePayChannles = 42, +} diff --git a/LifePayment/LifePayment.Domain/Common/OperateHistory.cs b/LifePayment/LifePayment.Domain/Common/OperateHistory.cs new file mode 100644 index 0000000..1f8c168 --- /dev/null +++ b/LifePayment/LifePayment.Domain/Common/OperateHistory.cs @@ -0,0 +1,35 @@ +锘縰sing System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Volo.Abp.Domain.Entities.Auditing; + +namespace LifePayment.Domain.Models +{ + public class OperateHistory : CreationAuditedEntity<Guid> + { + /// <summary> + /// 鍏宠仈鍏崇郴ID + /// </summary> + public Guid RelationId { get; set; } + + public int? TableType { get; set; } + + public string OperateName { get; set; } + + public string OperateContent { get; set; } + + public string CreatorName { get; set; } + + /// <summary> + /// 鎿嶄綔缁嗚妭 + /// </summary> + public string OperateDetail { get; set; } + + /// <summary> + /// 鐢ㄦ埛id + /// </summary> + public Guid? UserId { get; set; } + } +} diff --git a/LifePayment/LifePayment.EntityFrameworkCore/LifePaymentServicesDbContext.cs b/LifePayment/LifePayment.EntityFrameworkCore/LifePaymentServicesDbContext.cs index 9fd8000..15260dc 100644 --- a/LifePayment/LifePayment.EntityFrameworkCore/LifePaymentServicesDbContext.cs +++ b/LifePayment/LifePayment.EntityFrameworkCore/LifePaymentServicesDbContext.cs @@ -28,8 +28,11 @@ public virtual DbSet<Role> Roles { get; set; } + public virtual DbSet<UserRole> UserRoles { get; set; } + public virtual DbSet<OperateHistory> OperateHistory { get; set; } + public virtual DbSet<LifePayChannles> LifePayChannles { get; set; } public virtual DbSet<LifePayAccount> LifePayAccount { get; set; } diff --git "a/LifePayment/LifePayment.Host/Cert/CSR\346\226\207\344\273\266.csr" "b/LifePayment/LifePayment.Host/Cert/CSR\346\226\207\344\273\266.csr" new file mode 100644 index 0000000..77a8817 --- /dev/null +++ "b/LifePayment/LifePayment.Host/Cert/CSR\346\226\207\344\273\266.csr" @@ -0,0 +1,17 @@ +-----BEGIN CERTIFICATE REQUEST----- +MIICsTCCAZkCAQAwbDEJMAcGA1UEBhMAMQkwBwYDVQQIEwAxCTAHBgNVBAcTADEz +MDEGA1UECgwq5a6B5rOi5Yib6IOc5L+h5oGv5oqA5pyv5pyN5Yqh5pyJ6ZmQ5YWs +5Y+4MQkwBwYDVQQLEwAxCTAHBgNVBAMTADCCASIwDQYJKoZIhvcNAQEBBQADggEP +ADCCAQoCggEBAKA6zoXnrah5BNUWGjYaID/4h1VxLRmVuAPySZ8KSbPuni136V3/ +3nLssKZQ6YHPwV0lBJw2pLVMHHi1zvL3SH/IdMvMqlsGHYMwtMRC2KU66Ct3ZTYk +oYFZFBHjF4vp9zIY6fTla6onoIAyN2BswwS2OFAFrFwnF5w/q/8SKU/JHlTLW/y6 +1Ji+Vy7wVXJ+TJCUwKHhbdfBEFzixTdfpXaWn/ZPosjNn24FwnOiJzUoBxkh2cIc +5vbfnBqjXdY7v50DfZR8Cgg0DzJ+nKK9pbD9Z7BH6R6dr3XzRHXHFUkWQf5HbRc1 +xFKUxc58/Psytg9EWvgdBtZ0sbrPcbA9x5sCAwEAAaAAMA0GCSqGSIb3DQEBBAUA +A4IBAQCcHGqNyh6q7iyImLTi1/VOhwyfphmwETsN/+KNjpkLZN+pUf9hcUsxRObV +JdcYKdO/WTGGsghBINieKdXGtBlx0wyyM0MADURstr4SWBsktrwunwyyhzufuipx +d4Wo7kC9hmtOxmJbgn/lXr6tZyTUzukWgEuU5Pxfi9DGPm58Z1fZjHdfuoboeD9n +mgHPfd+YbuVNSa9wOilBskw35xSLXnUU8tL3PLthHElg43bnbpUOeBvSZ+5uJ9KU +7zz/1HGOBMl7EY+wMwgpr/5WAKPoAucJU1NEOMKqSHwWfjUEtkeoq87Cij8B0zLt ++WRnGLDsL5vyunOz00uJccxhZlON +-----END CERTIFICATE REQUEST----- diff --git a/LifePayment/LifePayment.Host/Cert/alipayCertPublicKey_RSA2.crt b/LifePayment/LifePayment.Host/Cert/alipayCertPublicKey_RSA2.crt new file mode 100644 index 0000000..a8b7118 --- /dev/null +++ b/LifePayment/LifePayment.Host/Cert/alipayCertPublicKey_RSA2.crt @@ -0,0 +1,43 @@ +-----BEGIN CERTIFICATE----- +MIIDuDCCAqCgAwIBAgIQICQJCUhlwAIx+IQXPEEzhzANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UE +BhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmljYXRpb24gQXV0 +aG9yaXR5MTkwNwYDVQQDDDBBbnQgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IENs +YXNzIDIgUjEwHhcNMjQwOTA5MDYxMDM3WhcNMjkwOTA4MDYxMDM3WjCBmDELMAkGA1UEBhMCQ04x +MzAxBgNVBAoMKuWugeazouWIm+iDnOS/oeaBr+aKgOacr+acjeWKoeaciemZkOWFrOWPuDEPMA0G +A1UECwwGQWxpcGF5MUMwQQYDVQQDDDrmlK/ku5jlrp0o5Lit5Zu9Kee9kee7nOaKgOacr+aciemZ +kOWFrOWPuC0yMDg4MDUwNTQyMDQyMzAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA +h3ymDiC0//upxAEwekcap2S/soSgtxZsT+W+a/nOg1yF/IpJshpiAcj246BqihSD6q3CEjAYj80c +MnZJG/lfir/BRz1pGyCAKVWcyISj4DR+ADfehHa6XJh7BNMUhscKvB0SeFFL4HGUA/PgpnO/mEO5 +PKai3o8UzwQu/atEja5TCDUqSogrTkLrYq+Dlmjc8UQENuWUx0PlnwnLrYpx4hIC3PjzpDSy8FCO +maHVG1JHyv+Nxng2//szWD9l2LGx4F1qe5jsYAgfE3aP2U5ryggZAgejBTKu6kBTMslsCFJIesG4 +8OC3OGk0ZafVujUaGSrFbYQHZtUQkdiU1oVVGwIDAQABoxIwEDAOBgNVHQ8BAf8EBAMCA/gwDQYJ +KoZIhvcNAQELBQADggEBAG/AwOEBETOShrkCIW/ViAYf/UopgL6txP7laTbAbI/xLJyy657S/ESs +MBLTqzuRt2e5kVdZZAq/8Bs4jscEYoiTpDB0vmWXtvjYumKyINeRuIBqn2PIESrm34WrJATkvLpj +2QRioL+rU1eXq2rYBpryFa+QNkEPb7xU7uadYvnNsBrZB8OF8QVOssbhfCbRnIv8zaaQYd9iTXPa +7TQXwkudtamLry1x9F7J+icmoPfxa9i/yMiBm4YOD30LLBvS3YRXZCcVRxjgtv7/HQ4l4vNS0BTb +4Qj9k9X1IyjF2IJgfW5EoA/pvPs/ZXQzOgGzz0ncBMU4YqR3wlT/U3094UY= +-----END CERTIFICATE----- +-----BEGIN CERTIFICATE----- +MIIE4jCCAsqgAwIBAgIIYsSr5bKAMl8wDQYJKoZIhvcNAQELBQAwejELMAkGA1UEBhMCQ04xFjAU +BgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmljYXRpb24gQXV0aG9yaXR5MTEw +LwYDVQQDDChBbnQgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IFIxMB4XDTE4MDMy +MjE0MzQxNVoXDTM3MTEyNjE0MzQxNVowgYIxCzAJBgNVBAYTAkNOMRYwFAYDVQQKDA1BbnQgRmlu +YW5jaWFsMSAwHgYDVQQLDBdDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTE5MDcGA1UEAwwwQW50IEZp +bmFuY2lhbCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSBDbGFzcyAyIFIxMIIBIjANBgkqhkiG9w0B +AQEFAAOCAQ8AMIIBCgKCAQEAsLMfYaoRoPRbmDcAfXPCmKf43pWRN5yTXa/KJWO0l+mrgQvs89bA +NEvbDUxlkGwycwtwi5DgBuBgVhLliXu+R9CYgr2dXs8D8Hx/gsggDcyGPLmVrDOnL+dyeauheARZ +fA3du60fwEwwbGcVIpIxPa/4n3IS/ElxQa6DNgqxh8J9Xwh7qMGl0JK9+bALuxf7B541Gr4p0WEN +G8fhgjBV4w4ut9eQLOoa1eddOUSZcy46Z7allwowwgt7b5VFfx/P1iKJ3LzBMgkCK7GZ2kiLrL7R +iqV+h482J7hkJD+ardoc6LnrHO/hIZymDxok+VH9fVeUdQa29IZKrIDVj65THQIDAQABo2MwYTAf +BgNVHSMEGDAWgBRfdLQEwE8HWurlsdsio4dBspzhATAdBgNVHQ4EFgQUSqHkYINtUSAtDPnS8Xoy +oP9p7qEwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggIB +AIQ8TzFy4bVIVb8+WhHKCkKNPcJe2EZuIcqvRoi727lZTJOfYy/JzLtckyZYfEI8J0lasZ29wkTt +a1IjSo+a6XdhudU4ONVBrL70U8Kzntplw/6TBNbLFpp7taRALjUgbCOk4EoBMbeCL0GiYYsTS0mw +7xdySzmGQku4GTyqutIGPQwKxSj9iSFw1FCZqr4VP4tyXzMUgc52SzagA6i7AyLedd3tbS6lnR5B +L+W9Kx9hwT8L7WANAxQzv/jGldeuSLN8bsTxlOYlsdjmIGu/C9OWblPYGpjQQIRyvs4Cc/mNhrh+ +14EQgwuemIIFDLOgcD+iISoN8CqegelNcJndFw1PDN6LkVoiHz9p7jzsge8RKay/QW6C03KNDpWZ +EUCgCUdfHfo8xKeR+LL1cfn24HKJmZt8L/aeRZwZ1jwePXFRVtiXELvgJuM/tJDIFj2KD337iV64 +fWcKQ/ydDVGqfDZAdcU4hQdsrPWENwPTQPfVPq2NNLMyIH9+WKx9Ed6/WzeZmIy5ZWpX1TtTolo6 +OJXQFeItMAjHxW/ZSZTok5IS3FuRhExturaInnzjYpx50a6kS34c5+c8hYq7sAtZ/CNLZmBnBCFD +aMQqT8xFZJ5uolUaSeXxg7JFY1QsYp5RKvj4SjFwCGKJ2+hPPe9UyyltxOidNtxjaknOCeBHytOr +-----END CERTIFICATE----- diff --git a/LifePayment/LifePayment.Host/Cert/alipayRootCert.crt b/LifePayment/LifePayment.Host/Cert/alipayRootCert.crt new file mode 100644 index 0000000..76417c5 --- /dev/null +++ b/LifePayment/LifePayment.Host/Cert/alipayRootCert.crt @@ -0,0 +1,88 @@ +-----BEGIN CERTIFICATE----- +MIIBszCCAVegAwIBAgIIaeL+wBcKxnswDAYIKoEcz1UBg3UFADAuMQswCQYDVQQG +EwJDTjEOMAwGA1UECgwFTlJDQUMxDzANBgNVBAMMBlJPT1RDQTAeFw0xMjA3MTQw +MzExNTlaFw00MjA3MDcwMzExNTlaMC4xCzAJBgNVBAYTAkNOMQ4wDAYDVQQKDAVO +UkNBQzEPMA0GA1UEAwwGUk9PVENBMFkwEwYHKoZIzj0CAQYIKoEcz1UBgi0DQgAE +MPCca6pmgcchsTf2UnBeL9rtp4nw+itk1Kzrmbnqo05lUwkwlWK+4OIrtFdAqnRT +V7Q9v1htkv42TsIutzd126NdMFswHwYDVR0jBBgwFoAUTDKxl9kzG8SmBcHG5Yti +W/CXdlgwDAYDVR0TBAUwAwEB/zALBgNVHQ8EBAMCAQYwHQYDVR0OBBYEFEwysZfZ +MxvEpgXBxuWLYlvwl3ZYMAwGCCqBHM9VAYN1BQADSAAwRQIgG1bSLeOXp3oB8H7b +53W+CKOPl2PknmWEq/lMhtn25HkCIQDaHDgWxWFtnCrBjH16/W3Ezn7/U/Vjo5xI +pDoiVhsLwg== +-----END CERTIFICATE----- + +-----BEGIN CERTIFICATE----- +MIIF0zCCA7ugAwIBAgIIH8+hjWpIDREwDQYJKoZIhvcNAQELBQAwejELMAkGA1UE +BhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmlj +YXRpb24gQXV0aG9yaXR5MTEwLwYDVQQDDChBbnQgRmluYW5jaWFsIENlcnRpZmlj +YXRpb24gQXV0aG9yaXR5IFIxMB4XDTE4MDMyMTEzNDg0MFoXDTM4MDIyODEzNDg0 +MFowejELMAkGA1UEBhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNV +BAsMF0NlcnRpZmljYXRpb24gQXV0aG9yaXR5MTEwLwYDVQQDDChBbnQgRmluYW5j +aWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IFIxMIICIjANBgkqhkiG9w0BAQEF +AAOCAg8AMIICCgKCAgEAtytTRcBNuur5h8xuxnlKJetT65cHGemGi8oD+beHFPTk +rUTlFt9Xn7fAVGo6QSsPb9uGLpUFGEdGmbsQ2q9cV4P89qkH04VzIPwT7AywJdt2 +xAvMs+MgHFJzOYfL1QkdOOVO7NwKxH8IvlQgFabWomWk2Ei9WfUyxFjVO1LVh0Bp +dRBeWLMkdudx0tl3+21t1apnReFNQ5nfX29xeSxIhesaMHDZFViO/DXDNW2BcTs6 +vSWKyJ4YIIIzStumD8K1xMsoaZBMDxg4itjWFaKRgNuPiIn4kjDY3kC66Sl/6yTl +YUz8AybbEsICZzssdZh7jcNb1VRfk79lgAprm/Ktl+mgrU1gaMGP1OE25JCbqli1 +Pbw/BpPynyP9+XulE+2mxFwTYhKAwpDIDKuYsFUXuo8t261pCovI1CXFzAQM2w7H +DtA2nOXSW6q0jGDJ5+WauH+K8ZSvA6x4sFo4u0KNCx0ROTBpLif6GTngqo3sj+98 +SZiMNLFMQoQkjkdN5Q5g9N6CFZPVZ6QpO0JcIc7S1le/g9z5iBKnifrKxy0TQjtG +PsDwc8ubPnRm/F82RReCoyNyx63indpgFfhN7+KxUIQ9cOwwTvemmor0A+ZQamRe +9LMuiEfEaWUDK+6O0Gl8lO571uI5onYdN1VIgOmwFbe+D8TcuzVjIZ/zvHrAGUcC +AwEAAaNdMFswCwYDVR0PBAQDAgEGMAwGA1UdEwQFMAMBAf8wHQYDVR0OBBYEFF90 +tATATwda6uWx2yKjh0GynOEBMB8GA1UdIwQYMBaAFF90tATATwda6uWx2yKjh0Gy +nOEBMA0GCSqGSIb3DQEBCwUAA4ICAQCVYaOtqOLIpsrEikE5lb+UARNSFJg6tpkf +tJ2U8QF/DejemEHx5IClQu6ajxjtu0Aie4/3UnIXop8nH/Q57l+Wyt9T7N2WPiNq +JSlYKYbJpPF8LXbuKYG3BTFTdOVFIeRe2NUyYh/xs6bXGr4WKTXb3qBmzR02FSy3 +IODQw5Q6zpXj8prYqFHYsOvGCEc1CwJaSaYwRhTkFedJUxiyhyB5GQwoFfExCVHW +05ZFCAVYFldCJvUzfzrWubN6wX0DD2dwultgmldOn/W/n8at52mpPNvIdbZb2F41 +T0YZeoWnCJrYXjq/32oc1cmifIHqySnyMnavi75DxPCdZsCOpSAT4j4lAQRGsfgI +kkLPGQieMfNNkMCKh7qjwdXAVtdqhf0RVtFILH3OyEodlk1HYXqX5iE5wlaKzDop +PKwf2Q3BErq1xChYGGVS+dEvyXc/2nIBlt7uLWKp4XFjqekKbaGaLJdjYP5b2s7N +1dM0MXQ/f8XoXKBkJNzEiM3hfsU6DOREgMc1DIsFKxfuMwX3EkVQM1If8ghb6x5Y +jXayv+NLbidOSzk4vl5QwngO/JYFMkoc6i9LNwEaEtR9PhnrdubxmrtM+RjfBm02 +77q3dSWFESFQ4QxYWew4pHE0DpWbWy/iMIKQ6UZ5RLvB8GEcgt8ON7BBJeMc+Dyi +kT9qhqn+lw== +-----END CERTIFICATE----- + +-----BEGIN CERTIFICATE----- +MIICiDCCAgygAwIBAgIIQX76UsB/30owDAYIKoZIzj0EAwMFADB6MQswCQYDVQQG +EwJDTjEWMBQGA1UECgwNQW50IEZpbmFuY2lhbDEgMB4GA1UECwwXQ2VydGlmaWNh +dGlvbiBBdXRob3JpdHkxMTAvBgNVBAMMKEFudCBGaW5hbmNpYWwgQ2VydGlmaWNh +dGlvbiBBdXRob3JpdHkgRTEwHhcNMTkwNDI4MTYyMDQ0WhcNNDkwNDIwMTYyMDQ0 +WjB6MQswCQYDVQQGEwJDTjEWMBQGA1UECgwNQW50IEZpbmFuY2lhbDEgMB4GA1UE +CwwXQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxMTAvBgNVBAMMKEFudCBGaW5hbmNp +YWwgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgRTEwdjAQBgcqhkjOPQIBBgUrgQQA +IgNiAASCCRa94QI0vR5Up9Yr9HEupz6hSoyjySYqo7v837KnmjveUIUNiuC9pWAU +WP3jwLX3HkzeiNdeg22a0IZPoSUCpasufiLAnfXh6NInLiWBrjLJXDSGaY7vaokt +rpZvAdmjXTBbMAsGA1UdDwQEAwIBBjAMBgNVHRMEBTADAQH/MB0GA1UdDgQWBBRZ +4ZTgDpksHL2qcpkFkxD2zVd16TAfBgNVHSMEGDAWgBRZ4ZTgDpksHL2qcpkFkxD2 +zVd16TAMBggqhkjOPQQDAwUAA2gAMGUCMQD4IoqT2hTUn0jt7oXLdMJ8q4vLp6sg +wHfPiOr9gxreb+e6Oidwd2LDnC4OUqCWiF8CMAzwKs4SnDJYcMLf2vpkbuVE4dTH +Rglz+HGcTLWsFs4KxLsq7MuU+vJTBUeDJeDjdA== +-----END CERTIFICATE----- + +-----BEGIN CERTIFICATE----- +MIIDxTCCAq2gAwIBAgIUEMdk6dVgOEIS2cCP0Q43P90Ps5YwDQYJKoZIhvcNAQEF +BQAwajELMAkGA1UEBhMCQ04xEzARBgNVBAoMCmlUcnVzQ2hpbmExHDAaBgNVBAsM +E0NoaW5hIFRydXN0IE5ldHdvcmsxKDAmBgNVBAMMH2lUcnVzQ2hpbmEgQ2xhc3Mg +MiBSb290IENBIC0gRzMwHhcNMTMwNDE4MDkzNjU2WhcNMzMwNDE4MDkzNjU2WjBq +MQswCQYDVQQGEwJDTjETMBEGA1UECgwKaVRydXNDaGluYTEcMBoGA1UECwwTQ2hp +bmEgVHJ1c3QgTmV0d29yazEoMCYGA1UEAwwfaVRydXNDaGluYSBDbGFzcyAyIFJv +b3QgQ0EgLSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOPPShpV +nJbMqqCw6Bz1kehnoPst9pkr0V9idOwU2oyS47/HjJXk9Rd5a9xfwkPO88trUpz5 +4GmmwspDXjVFu9L0eFaRuH3KMha1Ak01citbF7cQLJlS7XI+tpkTGHEY5pt3EsQg +wykfZl/A1jrnSkspMS997r2Gim54cwz+mTMgDRhZsKK/lbOeBPpWtcFizjXYCqhw +WktvQfZBYi6o4sHCshnOswi4yV1p+LuFcQ2ciYdWvULh1eZhLxHbGXyznYHi0dGN +z+I9H8aXxqAQfHVhbdHNzi77hCxFjOy+hHrGsyzjrd2swVQ2iUWP8BfEQqGLqM1g +KgWKYfcTGdbPB1MCAwEAAaNjMGEwHQYDVR0OBBYEFG/oAMxTVe7y0+408CTAK8hA +uTyRMB8GA1UdIwQYMBaAFG/oAMxTVe7y0+408CTAK8hAuTyRMA8GA1UdEwEB/wQF +MAMBAf8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBBQUAA4IBAQBLnUTfW7hp +emMbuUGCk7RBswzOT83bDM6824EkUnf+X0iKS95SUNGeeSWK2o/3ALJo5hi7GZr3 +U8eLaWAcYizfO99UXMRBPw5PRR+gXGEronGUugLpxsjuynoLQu8GQAeysSXKbN1I +UugDo9u8igJORYA+5ms0s5sCUySqbQ2R5z/GoceyI9LdxIVa1RjVX8pYOj8JFwtn +DJN3ftSFvNMYwRuILKuqUYSHc2GPYiHVflDh5nDymCMOQFcFG3WsEuB+EYQPFgIU +1DHmdZcz7Llx8UOZXX2JupWCYzK1XhJb+r4hK5ncf/w8qGtYlmyJpxk3hr1TfUJX +Yf4Zr0fJsGuv +-----END CERTIFICATE----- \ No newline at end of file diff --git a/LifePayment/LifePayment.Host/Cert/appCertPublicKey_2021004171602214.crt b/LifePayment/LifePayment.Host/Cert/appCertPublicKey_2021004171602214.crt new file mode 100644 index 0000000..5c51322 --- /dev/null +++ b/LifePayment/LifePayment.Host/Cert/appCertPublicKey_2021004171602214.crt @@ -0,0 +1,23 @@ +-----BEGIN CERTIFICATE----- +MIIEpjCCA46gAwIBAgIQICQJGZ4C8uub1cYcy9fcxjANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UE +BhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmljYXRpb24gQXV0 +aG9yaXR5MTkwNwYDVQQDDDBBbnQgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IENs +YXNzIDEgUjEwHhcNMjQwOTE5MDE1NTU0WhcNMjkwOTE4MDE1NTU0WjBuMQswCQYDVQQGEwJDTjEz +MDEGA1UECgwq5a6B5rOi5Yib6IOc5L+h5oGv5oqA5pyv5pyN5Yqh5pyJ6ZmQ5YWs5Y+4MQ8wDQYD +VQQLDAZBbGlwYXkxGTAXBgNVBAMMEDIwODgwNTA1NDIwNDIzMDEwggEiMA0GCSqGSIb3DQEBAQUA +A4IBDwAwggEKAoIBAQCgOs6F562oeQTVFho2GiA/+IdVcS0ZlbgD8kmfCkmz7p4td+ld/95y7LCm +UOmBz8FdJQScNqS1TBx4tc7y90h/yHTLzKpbBh2DMLTEQtilOugrd2U2JKGBWRQR4xeL6fcyGOn0 +5WuqJ6CAMjdgbMMEtjhQBaxcJxecP6v/EilPyR5Uy1v8utSYvlcu8FVyfkyQlMCh4W3XwRBc4sU3 +X6V2lp/2T6LIzZ9uBcJzoic1KAcZIdnCHOb235wao13WO7+dA32UfAoINA8yfpyivaWw/WewR+ke +na9180R1xxVJFkH+R20XNcRSlMXOfPz7MrYPRFr4HQbWdLG6z3GwPcebAgMBAAGjggEpMIIBJTAf +BgNVHSMEGDAWgBRxB+IEYRbk5fJl6zEPyeD0PJrVkTAdBgNVHQ4EFgQULdtiYUNb4gMQ6z6BVDjw +ZeUYthwwQAYDVR0gBDkwNzA1BgdggRwBbgEBMCowKAYIKwYBBQUHAgEWHGh0dHA6Ly9jYS5hbGlw +YXkuY29tL2Nwcy5wZGYwDgYDVR0PAQH/BAQDAgbAMC8GA1UdHwQoMCYwJKAioCCGHmh0dHA6Ly9j +YS5hbGlwYXkuY29tL2NybDkzLmNybDBgBggrBgEFBQcBAQRUMFIwKAYIKwYBBQUHMAKGHGh0dHA6 +Ly9jYS5hbGlwYXkuY29tL2NhNi5jZXIwJgYIKwYBBQUHMAGGGmh0dHA6Ly9jYS5hbGlwYXkuY29t +OjgzNDAvMA0GCSqGSIb3DQEBCwUAA4IBAQBzK7WLZwwHwEPZXm6VHNaO6PfLEqJDEf6zz15VPBr/ +/yUGGHXReyfK5pHTh9EaFvNJTCWH/DHaUr0sf05w2bfxY3ZWCGFf6+qS+FqOq6V3AfXDphWlNSK9 +jS5/tJc89Hr33HW4btsLwpcEqTweN16l3n5oIaJ9Zfi7zRQtPyUaVrtKAyMt8WeZ1gq1qjAAMmjG +RHy9/LpihPemAhuKuPHpFPvksO7RAaKGlY42pg+LxdXLNECJR57rKiWKrrITDM16xJAOTBFK8caH +MdkDrdiA6z/LsrGwiNBYb7N7t40gPdCJoVIlP0qkrzpqGg+KxwYDLmYX5LlpPdP9Tfz5y/t9 +-----END CERTIFICATE----- \ No newline at end of file diff --git a/LifePayment/LifePayment.Host/LifePayment.Host.csproj b/LifePayment/LifePayment.Host/LifePayment.Host.csproj index 225879d..1969978 100644 --- a/LifePayment/LifePayment.Host/LifePayment.Host.csproj +++ b/LifePayment/LifePayment.Host/LifePayment.Host.csproj @@ -76,6 +76,15 @@ </ItemGroup> <ItemGroup> + <None Update="Cert\alipayCertPublicKey_RSA2.crt"> + <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> + </None> + <None Update="Cert\alipayRootCert.crt"> + <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> + </None> + <None Update="Cert\appCertPublicKey_2021004171602214.crt"> + <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> + </None> <None Update="LifePaymentServices.Application.Contracts.xml"> <CopyToOutputDirectory>Always</CopyToOutputDirectory> </None> diff --git a/LifePayment/LifePayment.Host/LifePaymentService.HttpApi.xml b/LifePayment/LifePayment.Host/LifePaymentService.HttpApi.xml index 5211c0f..882aa48 100644 --- a/LifePayment/LifePayment.Host/LifePaymentService.HttpApi.xml +++ b/LifePayment/LifePayment.Host/LifePaymentService.HttpApi.xml @@ -278,6 +278,20 @@ <param name="input"></param> <returns></returns> </member> + <member name="M:LifePayment.HttpApi.OperateHistoryController.GetOperateHistoryByRelationId(LifePayment.Application.Contracts.GetOperateHistoryInput)"> + <summary> + 鏌ヨ鏃ュ織 + </summary> + <param name="input"></param> + <returns></returns> + </member> + <member name="M:LifePayment.HttpApi.OperateHistoryController.GetOperateHistoryByType(LifePayment.Application.Contracts.QueryOperateHistoryByTypeInput)"> + <summary> + 鏍规嵁type鏌ヨ鏃ュ織 + </summary> + <param name="input"></param> + <returns></returns> + </member> <member name="M:LifePayment.HttpApi.UserRoleController.CreateBackClientUser(LifePayment.Application.Contracts.CreateBackClientUserInput)"> <summary> 鏂板鍚庡彴绠$悊璐︽埛 diff --git a/LifePayment/LifePayment.Host/LifePaymentServiceHostModule.cs b/LifePayment/LifePayment.Host/LifePaymentServiceHostModule.cs index f29bd19..332f441 100644 --- a/LifePayment/LifePayment.Host/LifePaymentServiceHostModule.cs +++ b/LifePayment/LifePayment.Host/LifePaymentServiceHostModule.cs @@ -54,7 +54,7 @@ //Configure<AliYunSMSSettingOptions>(configuration.GetSection("AliYunSMSSetting")); context.Services.AddAutoMapperObjectMapper(); - + ConfigurePays(context, configuration); context.Services.AddAuthentication("Bearer").AddIdentityServerAuthentication(options => { options.Authority = configuration["AuthServer:Authority"]; @@ -150,6 +150,7 @@ cacheOptions.GlobalCacheEntryOptions.SlidingExpiration = TimeSpan.FromMinutes(20); }); this.Configure<ACOOLYOption>(configuration.GetSection("ACOOLY")); + this.Configure<InformationOption>(configuration.GetSection("WeiXinCgi")); } public override void OnApplicationInitialization(ApplicationInitializationContext context) diff --git a/LifePayment/LifePayment.Host/LifePaymentServices.Application.Contracts.xml b/LifePayment/LifePayment.Host/LifePaymentServices.Application.Contracts.xml index 0e1ce92..5ce8457 100644 --- a/LifePayment/LifePayment.Host/LifePaymentServices.Application.Contracts.xml +++ b/LifePayment/LifePayment.Host/LifePaymentServices.Application.Contracts.xml @@ -1298,6 +1298,46 @@ 绾夸笅鏀粯姹囨鏈�鏅氭椂闂� </summary> </member> + <member name="P:LifePayment.Application.Contracts.OperateHistoryDto.RelationId"> + <summary> + 鍏宠仈鍏崇郴ID + </summary> + </member> + <member name="P:LifePayment.Application.Contracts.OperateHistoryDto.TableType"> + <summary> + 琛ㄥ悕 + </summary> + </member> + <member name="P:LifePayment.Application.Contracts.OperateHistoryDto.OperateName"> + <summary> + 鎿嶄綔 + </summary> + </member> + <member name="P:LifePayment.Application.Contracts.OperateHistoryDto.OperateContent"> + <summary> + 鎿嶄綔鍐呭 + </summary> + </member> + <member name="P:LifePayment.Application.Contracts.OperateHistoryDto.CreatorName"> + <summary> + 鎿嶄綔浜� + </summary> + </member> + <member name="P:LifePayment.Application.Contracts.OperateHistoryDto.CreationTime"> + <summary> + 鎿嶄綔鏃堕棿 + </summary> + </member> + <member name="P:LifePayment.Application.Contracts.OperateHistoryDto.OperateDetail"> + <summary> + 鎿嶄綔缁嗚妭 + </summary> + </member> + <member name="P:LifePayment.Application.Contracts.CreateOperateHistoryInput.RelationId"> + <summary> + 鍏宠仈鍏崇郴ID + </summary> + </member> <member name="P:LifePayment.Application.Contracts.CreateBackClientUserInput.Name"> <summary> 鍚嶇О diff --git a/LifePayment/LifePayment.HttpApi/LifePay/OperateHistoryController.cs b/LifePayment/LifePayment.HttpApi/LifePay/OperateHistoryController.cs new file mode 100644 index 0000000..96e2d8f --- /dev/null +++ b/LifePayment/LifePayment.HttpApi/LifePay/OperateHistoryController.cs @@ -0,0 +1,46 @@ +锘縰sing LifePayment.Application.Contracts; +using Microsoft.AspNetCore.Authorization; +using Microsoft.AspNetCore.Mvc; +using System.Threading.Tasks; +using Volo.Abp.AspNetCore.Mvc; +using Volo.Abp.Uow; +using ZeroD.Util; + +namespace LifePayment.HttpApi +{ + [Route("api/[controller]/[action]")] + [ApiController] + [Authorize] + public class OperateHistoryController : AbpController + { + private readonly IOperateHistoryService _operateHistoryService; + public OperateHistoryController( + IOperateHistoryService operateHistoryService) + { + _operateHistoryService = operateHistoryService; + } + /// <summary> + /// 鏌ヨ鏃ュ織 + /// </summary> + /// <param name="input"></param> + /// <returns></returns> + [HttpPost] + [UnitOfWork(IsDisabled = true)] + public async Task<PageOutput<OperateHistoryDto>> GetOperateHistoryByRelationId(GetOperateHistoryInput input) + { + return await _operateHistoryService.GetOperateHistoryByRelationId(input); + } + + /// <summary> + /// 鏍规嵁type鏌ヨ鏃ュ織 + /// </summary> + /// <param name="input"></param> + /// <returns></returns> + [HttpPost] + [UnitOfWork(IsDisabled = true)] + public async Task<PageOutput<OperateHistoryDto>> GetOperateHistoryByType(QueryOperateHistoryByTypeInput input) + { + return await _operateHistoryService.GetOperateHistoryByType(input); + } + } +} -- Gitblit v1.9.1