From 5262f7b77aea5cf8c1543f48b34f311665d61518 Mon Sep 17 00:00:00 2001
From: sunpengfei <i@angelzzz.com>
Date: 星期五, 05 九月 2025 10:58:51 +0800
Subject: [PATCH] feat:开发

---
 FlexJobApi.UserServer.Application/EnterpriseEmployees/Commands/EnterpriseEmployeesCommandHandler.cs |   49 ++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 48 insertions(+), 1 deletions(-)

diff --git a/FlexJobApi.UserServer.Application/EnterpriseEmployees/Commands/EnterpriseEmployeesCommandHandler.cs b/FlexJobApi.UserServer.Application/EnterpriseEmployees/Commands/EnterpriseEmployeesCommandHandler.cs
index e807a1b..3b116af 100644
--- a/FlexJobApi.UserServer.Application/EnterpriseEmployees/Commands/EnterpriseEmployeesCommandHandler.cs
+++ b/FlexJobApi.UserServer.Application/EnterpriseEmployees/Commands/EnterpriseEmployeesCommandHandler.cs
@@ -39,7 +39,8 @@
             IRepository<ElectronSignSetting> repElectronSignSetting,
             IRepository<ContractTemplate> repContractTemplate,
             IRepository<EnterpriseCost> repEnterpriseCost,
-            IRepository<TaskInfoUser> repTaskInfoUser
+            IRepository<TaskInfoUser> repTaskInfoUser,
+            IRepository<CodeUrl> repCodeUrl
         ) :
         IRequestHandler<ImportEnterpriseEmployeesCommand, ImportEnterpriseEmployeesCommandResult>,
         IRequestHandler<EditEnterpriseEmployeeCommand, Guid>,
@@ -59,6 +60,7 @@
         private readonly IRepository<ContractTemplate> repContractTemplate = repContractTemplate;
         private readonly IRepository<EnterpriseCost> repEnterpriseCost = repEnterpriseCost;
         private readonly IRepository<TaskInfoUser> repTaskInfoUser = repTaskInfoUser;
+        private readonly IRepository<CodeUrl> repCodeUrl = repCodeUrl;
 
         /// <summary>
         /// 瀵煎叆鐏靛伐淇℃伅
@@ -311,6 +313,7 @@
         {
             var logier = JwtUtils.GetCurrentLogier();
             var entity = await rep.AsQueryable()
+                .Include(it => it.Enterprise)
                 .Include(it => it.ContractTemplate).ThenInclude(it => it.Values)
                 .Where(it => it.UserId == logier.Id && it.Id == request.Id)
                 .FirstOrDefaultAsync();
@@ -372,6 +375,28 @@
             model.SignContractLongUrl = model.SignContractLongUrl
                 .Replace("https://openapi.bestsign.info:443", "https://wx115.bestsign.info")
                 .Replace("https://openapi.bestsign.cn:443", "https://wx115.bestsign.cn");
+
+            if (entity.ContractTemplate.Access == EnumElectronSignAccess.AlipaySign)
+            {
+                var codeUrl = new SaveCodeUrlCommand
+                {
+                    Scene = EnumCodeUrlScene.ElectronSignUrl,
+                    Url = model.SignContractLongUrl,
+                    ExpiredTime = DateTime.Now.AddMonths(1)
+                };
+                var code = await mediator.Send(codeUrl);
+                await smsUtils.Send(new SendSmsModel
+                {
+                    PhoneNumber = entity.ContactPhoneNumber,
+                    TemplateCode = EnumSmsTemplateCode.ElectronSignUrl,
+                },
+                new
+                {
+                    name = entity.Enterprise.EnterpriseName,
+                    code = code
+                });
+            }
+
             return model;
         }
 
@@ -427,6 +452,28 @@
             model.SignContractLongUrl = model.SignContractLongUrl
                 .Replace("https://openapi.bestsign.info:443", "https://wx115.bestsign.info")
                 .Replace("https://openapi.bestsign.cn:443", "https://wx115.bestsign.cn");
+
+            if (entity.ContractTemplate.Access == EnumElectronSignAccess.AlipaySign)
+            {
+                var codeUrl = new SaveCodeUrlCommand
+                {
+                    Scene = EnumCodeUrlScene.ElectronSignUrl,
+                    Url = model.SignContractLongUrl,
+                    ExpiredTime = DateTime.Now.AddMonths(1)
+                };
+                var code = await mediator.Send(codeUrl);
+                await smsUtils.Send(new SendSmsModel
+                {
+                    PhoneNumber = entity.Enterprise.ContactPhoneNumber,
+                    TemplateCode = EnumSmsTemplateCode.ElectronSignUrl,
+                },
+                new
+                {
+                    name = entity.Name,
+                    code = code
+                });
+            }
+
             return model;
         }
 

--
Gitblit v1.9.1