FlexJobApi.Core/Models/UserServer/EnterpriseEmployees/Commands/SendInviteElectronSignSmsCommand.cs
@@ -22,5 +22,10 @@ /// Id /// </summary> public List<Guid> Ids { get; set; } /// <summary> /// 合同模板Id /// </summary> public Guid ContractTemplateId { get; set; } } } FlexJobApi.UserServer.Application/EnterpriseEmployees/Commands/EnterpriseEmployeesCommandHandler.cs
@@ -260,13 +260,6 @@ UserSignContractStatus = entity.UserSignContractStatus, }; await repEnterpriseEmployeeContract.InsertAsync(contract); //await mediator.Send(new SaveEnterpriseCostCommand //{ // EnterpriseId = logier.EnterpriseId!.Value, // ContractTemplateId = request.ContractTemplateId, // EnterpriseEmployeeContractId = contract.Id, // Type = EnumEnterpriseCostType.ElectronSign //}); await rep.UpdateAsync(entity); } return entities.Count; @@ -281,15 +274,46 @@ public async Task<int> Handle(SendInviteElectronSignSmsCommand request, CancellationToken cancellationToken) { var logier = JwtUtils.GetCurrentLogier(); await mediator.Send(new CheckContractTemplateCommand { Id = request.ContractTemplateId }, cancellationToken); var entities = await rep.AsQueryable() .Include(it => it.Enterprise) .Include(it => it.ContractTemplate) .Where(it => it.EnterpriseId == logier.EnterpriseId && request.Ids.Contains(it.Id) && it.UserSignContractStatus == EnumTaskUserSignContractStatus.Wait) && request.Ids.Contains(it.Id)) .ToListAsync(); foreach (var entity in entities) foreach (var id in request.Ids) { var entity = entities.FirstOrDefault(it => it.Id == id); if (entity == null) throw Oops.Oh(EnumErrorCodeType.s404, "灵工"); if (entity.UserSignContractStatus == null || entity.UserSignContractStatus == EnumTaskUserSignContractStatus.Refuse || entity.UserSignContractStatus == EnumTaskUserSignContractStatus.Stop) { entity.ContractTemplateId = request.ContractTemplateId; entity.UserSignContractStatus = EnumTaskUserSignContractStatus.Wait; entity.UserSignContractTime = null; entity.EnterpriseSignContractStatus = null; entity.EnterpriseSignContractTime = null; entity.ContractCode = $"{DateTime.Now:yyyyMMddHHmmss}{new Random(IDGen.NextID().GetHashCode()).Next(1000, 9999)}"; entity.ContractUrl = null; var contract = new EnterpriseEmployeeContract { EnterpriseEmployeeId = entity.Id, ContractTemplateId = entity.ContractTemplateId, ContractCode = entity.ContractCode, UserSignContractStatus = entity.UserSignContractStatus, }; await repEnterpriseEmployeeContract.InsertAsync(contract); await rep.UpdateAsync(entity); } if (entity.UserSignContractStatus == EnumTaskUserSignContractStatus.Wait) { var codeUrl = new SaveCodeUrlCommand { @@ -309,6 +333,8 @@ code = code }); } } return entities.Count; } FlexJobApi.Web.Entry/appsettings.json
@@ -2,15 +2,15 @@ "$schema": "https://gitee.com/dotnetchina/Furion/raw/v4/schemas/v4/furion-schema.json", "Environment": "Local", "ConnectionStrings": { "FlexJobApi": "Server=120.26.58.240; Database=Dev_FlexJobApi; User=bole;Password=Bole1472589;Encrypt=false;", "FlexJobApiLog": "Server=120.26.58.240; Database=Dev_FlexJobApiLog; User=bole;Password=Bole1472589;Encrypt=false;", "HumanResources": "Server=120.26.58.240; Database=Dev_12333; User=bole;Password=Bole1472589;Encrypt=false;", "SyncTarget": "Server=rm-bp1mt744021h1s6dg4o.sqlserver.rds.aliyuncs.com,2333; Database=Pro_FlexJobApi; User=bole;Password=Blcs20@%27;Encrypt=false;" //"FlexJobApi": "Server=rm-bp1mt744021h1s6dg4o.sqlserver.rds.aliyuncs.com,2333; Database=Pro_FlexJobApi; User=bole;Password=Blcs20@%27;Encrypt=false;", //"FlexJobApiLog": "Server=rm-bp1mt744021h1s6dg4o.sqlserver.rds.aliyuncs.com,2333; Database=Pro_FlexJobApiLog; User=bole;Password=Blcs20@%27;Encrypt=false;", //"HumanResources": "Server=rm-bp1mt744021h1s6dg4o.sqlserver.rds.aliyuncs.com,2333; Database=Pro_12333; User=bole;Password=Blcs20@%27;Encrypt=false;", //"FlexJobApi": "Server=120.26.58.240; Database=Dev_FlexJobApi; User=bole;Password=Bole1472589;Encrypt=false;", //"FlexJobApiLog": "Server=120.26.58.240; Database=Dev_FlexJobApiLog; User=bole;Password=Bole1472589;Encrypt=false;", //"HumanResources": "Server=120.26.58.240; Database=Dev_12333; User=bole;Password=Bole1472589;Encrypt=false;", //"SyncTarget": "Server=rm-bp1mt744021h1s6dg4o.sqlserver.rds.aliyuncs.com,2333; Database=Pro_FlexJobApi; User=bole;Password=Blcs20@%27;Encrypt=false;" "FlexJobApi": "Server=rm-bp1mt744021h1s6dg4o.sqlserver.rds.aliyuncs.com,2333; Database=Pro_FlexJobApi; User=bole;Password=Blcs20@%27;Encrypt=false;", "FlexJobApiLog": "Server=rm-bp1mt744021h1s6dg4o.sqlserver.rds.aliyuncs.com,2333; Database=Pro_FlexJobApiLog; User=bole;Password=Blcs20@%27;Encrypt=false;", "HumanResources": "Server=rm-bp1mt744021h1s6dg4o.sqlserver.rds.aliyuncs.com,2333; Database=Pro_12333; User=bole;Password=Blcs20@%27;Encrypt=false;", "SyncTarget": "Server=rm-bp1mt744021h1s6dg4o.sqlserver.rds.aliyuncs.com,2333; Database=Pro_FlexJobApi; User=bole;Password=Blcs20@%27;Encrypt=false;" }, "Consul": { "Address": "http://localhost:8500/",