Browse Source

修复审核通过报错

qinchaoyue 4 months ago
parent
commit
2d4597d84b

+ 51 - 0
src/Hotline.Application.Tests/Application/RedPackApplicationTest.cs

@@ -0,0 +1,51 @@
+using Hotline.Api.Controllers;
+using Hotline.Application.Snapshot;
+using Hotline.Identity.Accounts;
+using Hotline.Identity.Roles;
+using Hotline.Share.Dtos.Snapshot;
+using Hotline.Share.Enums.Snapshot;
+using Hotline.Snapshot.Interfaces;
+using Hotline.Users;
+using Microsoft.AspNetCore.Http;
+using Microsoft.Extensions.DependencyInjection;
+using Shouldly;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using XF.Domain.Repository;
+
+namespace Hotline.Application.Tests.Application;
+public class RedPackApplicationTest : TestBase
+{
+    private readonly IRedPackApplication _redPackApplication;
+    private readonly IRedPackRecordRepository _redPackRecordRepository;
+
+    public RedPackApplicationTest(IAccountRepository accountRepository, IRepository<Role> roleRepository, UserController userController, IServiceScopeFactory scopeFactory, IRepository<User> userRepository, IHttpContextAccessor httpContextAccessor, IThirdIdentiyService thirdIdentiyService, IThirdAccountRepository thirdAccountRepository, IRedPackApplication redPackApplication, IRedPackRecordRepository redPackRecordRepository) : base(accountRepository, roleRepository, userController, scopeFactory, userRepository, httpContextAccessor, thirdIdentiyService, thirdAccountRepository)
+    {
+        _redPackApplication = redPackApplication;
+        _redPackRecordRepository = redPackRecordRepository;
+    }
+
+    [Fact]
+    public async Task AuditRedPackAudit_Test()
+    {
+        var items = await _redPackApplication.GetRedPackAuditItemsAsync(new SnapshotOrderAuditItemsInDto(null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,null)).ToListAsync();
+        var audit = items.First();
+        var smsTemplate = await _redPackApplication.GetRedPackAuditSMSTemplateAsync(new GetRedPackAuditSMSTemplateInDto(audit.OrderId, ERedPackAuditStatus.Agree));
+        var inDto = new UpdateRedPackAuditInDto
+        {
+            Status = ERedPackAuditStatus.Agree,
+            Opinion = "单元测试" + DateTime.Now.ToShortDateString(),
+            SMSTemplateId = smsTemplate.First().Id,
+            IsSendSms = true,
+            RedPackAuditId = audit.Id,
+        };
+        await _redPackApplication.AuditRedPackAuditAsync(inDto);
+        var record = await _redPackRecordRepository.Queryable()
+            .Where(m => m.OrderId == audit.OrderId)
+            .FirstAsync();
+        record.ShouldNotBeNull();
+    }
+}

+ 11 - 0
src/Hotline.Share/Dtos/Snapshot/OrderDto.cs

@@ -457,6 +457,17 @@ public class GetRedPackAuditSMSTemplateOutDto
 
 public class GetRedPackAuditSMSTemplateInDto
 {
+    public GetRedPackAuditSMSTemplateInDto()
+    {
+        
+    }
+
+    public GetRedPackAuditSMSTemplateInDto(string id, ERedPackAuditStatus status)
+    {
+        OrderId = id;
+        Status = status;
+    }
+
     /// <summary>
     /// OrderId
     /// </summary>