6 changed files with 392 additions and 0 deletions
-
86src/Shentun.Sms.Application.Contracts/SmsTasks/CreateSmsTaskDto.cs
-
88src/Shentun.Sms.Application.Contracts/SmsTasks/SmsTaskDto.cs
-
86src/Shentun.Sms.Application.Contracts/SmsTasks/UpdateSmsTaskDto.cs
-
131src/Shentun.Sms.Application/SmsTasks/SmsTaskAppService.cs
-
0src/Shentun.Sms.Application/SmsTypes/SmsTypeAppService.cs
-
1src/Shentun.Sms.HttpApi.Host/SmsHttpApiHostModule.cs
@ -0,0 +1,86 @@ |
|||||
|
using System; |
||||
|
using System.Collections.Generic; |
||||
|
using System.Text; |
||||
|
|
||||
|
namespace Shentun.Sms.SmsTasks |
||||
|
{ |
||||
|
public class CreateSmsTaskDto |
||||
|
{ |
||||
|
/// <summary>
|
||||
|
/// 短信类别ID
|
||||
|
/// </summary>
|
||||
|
public Guid SmsTypeId { get; set; } |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 人员ID
|
||||
|
/// </summary>
|
||||
|
public string PersonId { get; set; } |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 姓名
|
||||
|
/// </summary>
|
||||
|
public string PersonName { get; set; } |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 手机号国家代码
|
||||
|
/// </summary>
|
||||
|
public string CountryCode { get; set; } |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 手机号
|
||||
|
/// </summary>
|
||||
|
public string MobileTelephone { get; set; } |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 短信内容
|
||||
|
/// </summary>
|
||||
|
public string Content { get; set; } |
||||
|
|
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 应用ID
|
||||
|
/// </summary>
|
||||
|
public Guid SmsAppId { get; set; } |
||||
|
|
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 第三方系统唯一ID
|
||||
|
/// </summary>
|
||||
|
public string? ThirdId { get; set; } |
||||
|
|
||||
|
|
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 任务周期类别
|
||||
|
/// </summary>
|
||||
|
public char TaskCycleType { get; set; } |
||||
|
|
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 任务表达式
|
||||
|
/// </summary>
|
||||
|
public string? TaskCorn { get; set; } |
||||
|
|
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 停止执行时间
|
||||
|
/// </summary>
|
||||
|
public DateTime? StopTime { get; set; } |
||||
|
|
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 是否启用
|
||||
|
/// </summary>
|
||||
|
public char IsActive { get; set; } |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 发送者用户ID
|
||||
|
/// </summary>
|
||||
|
public string? SenderId { get; set; } |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 发送者用户名
|
||||
|
/// </summary>
|
||||
|
public string? SenderName { get; set; } |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,88 @@ |
|||||
|
using System; |
||||
|
using System.Collections.Generic; |
||||
|
using System.ComponentModel.DataAnnotations.Schema; |
||||
|
using System.ComponentModel.DataAnnotations; |
||||
|
using System.Text; |
||||
|
|
||||
|
namespace Shentun.Sms.SmsTasks |
||||
|
{ |
||||
|
public class SmsTaskDto : AuditedEntityGuidDtoName |
||||
|
{ |
||||
|
/// <summary>
|
||||
|
/// 短信类别ID
|
||||
|
/// </summary>
|
||||
|
public Guid SmsTypeId { get; set; } |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 人员ID
|
||||
|
/// </summary>
|
||||
|
public string PersonId { get; set; } |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 姓名
|
||||
|
/// </summary>
|
||||
|
public string PersonName { get; set; } |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 手机号国家代码
|
||||
|
/// </summary>
|
||||
|
public string CountryCode { get; set; } |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 手机号
|
||||
|
/// </summary>
|
||||
|
public string MobileTelephone { get; set; } |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 短信内容
|
||||
|
/// </summary>
|
||||
|
public string Content { get; set; } |
||||
|
|
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 应用ID
|
||||
|
/// </summary>
|
||||
|
public Guid SmsAppId { get; set; } |
||||
|
|
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 第三方系统唯一ID
|
||||
|
/// </summary>
|
||||
|
public string? ThirdId { get; set; } |
||||
|
|
||||
|
|
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 任务周期类别
|
||||
|
/// </summary>
|
||||
|
public char TaskCycleType { get; set; } |
||||
|
|
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 任务表达式
|
||||
|
/// </summary>
|
||||
|
public string? TaskCorn { get; set; } |
||||
|
|
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 停止执行时间
|
||||
|
/// </summary>
|
||||
|
public DateTime? StopTime { get; set; } |
||||
|
|
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 是否启用
|
||||
|
/// </summary>
|
||||
|
public char IsActive { get; set; } |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 发送者用户ID
|
||||
|
/// </summary>
|
||||
|
public string? SenderId { get; set; } |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 发送者用户名
|
||||
|
/// </summary>
|
||||
|
public string? SenderName { get; set; } |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,86 @@ |
|||||
|
using System; |
||||
|
using System.Collections.Generic; |
||||
|
using System.Text; |
||||
|
|
||||
|
namespace Shentun.Sms.SmsTasks |
||||
|
{ |
||||
|
public class UpdateSmsTaskDto |
||||
|
{ |
||||
|
/// <summary>
|
||||
|
/// 短信类别ID
|
||||
|
/// </summary>
|
||||
|
public Guid SmsTypeId { get; set; } |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 人员ID
|
||||
|
/// </summary>
|
||||
|
public string PersonId { get; set; } |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 姓名
|
||||
|
/// </summary>
|
||||
|
public string PersonName { get; set; } |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 手机号国家代码
|
||||
|
/// </summary>
|
||||
|
public string CountryCode { get; set; } |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 手机号
|
||||
|
/// </summary>
|
||||
|
public string MobileTelephone { get; set; } |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 短信内容
|
||||
|
/// </summary>
|
||||
|
public string Content { get; set; } |
||||
|
|
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 应用ID
|
||||
|
/// </summary>
|
||||
|
public Guid SmsAppId { get; set; } |
||||
|
|
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 第三方系统唯一ID
|
||||
|
/// </summary>
|
||||
|
public string? ThirdId { get; set; } |
||||
|
|
||||
|
|
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 任务周期类别
|
||||
|
/// </summary>
|
||||
|
public char TaskCycleType { get; set; } |
||||
|
|
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 任务表达式
|
||||
|
/// </summary>
|
||||
|
public string? TaskCorn { get; set; } |
||||
|
|
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 停止执行时间
|
||||
|
/// </summary>
|
||||
|
public DateTime? StopTime { get; set; } |
||||
|
|
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 是否启用
|
||||
|
/// </summary>
|
||||
|
public char IsActive { get; set; } |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 发送者用户ID
|
||||
|
/// </summary>
|
||||
|
public string? SenderId { get; set; } |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 发送者用户名
|
||||
|
/// </summary>
|
||||
|
public string? SenderName { get; set; } |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,131 @@ |
|||||
|
using Microsoft.AspNetCore.Mvc; |
||||
|
using Shentun.Sms.SmsTasks; |
||||
|
using System; |
||||
|
using System.Collections.Generic; |
||||
|
using System.Linq; |
||||
|
using System.Text; |
||||
|
using System.Threading.Tasks; |
||||
|
using Volo.Abp.Application.Services; |
||||
|
using Volo.Abp.Domain.Repositories; |
||||
|
using Volo.Abp.Identity; |
||||
|
|
||||
|
namespace Shentun.Sms.SmsTasks |
||||
|
{ |
||||
|
/// <summary>
|
||||
|
/// 短信任务计划
|
||||
|
/// </summary>
|
||||
|
public class SmsTaskAppService : ApplicationService |
||||
|
{ |
||||
|
private readonly IRepository<SmsTask, Guid> _smsTaskRepository; |
||||
|
private readonly IRepository<IdentityUser, Guid> _userRepository; |
||||
|
private readonly SmsTaskManager _smsTaskManager; |
||||
|
|
||||
|
public SmsTaskAppService( |
||||
|
SmsTaskManager smsTaskManager, |
||||
|
IRepository<SmsTask, Guid> smsTaskRepository, |
||||
|
IRepository<IdentityUser, Guid> userRepository |
||||
|
) |
||||
|
{ |
||||
|
_smsTaskManager = smsTaskManager; |
||||
|
_smsTaskRepository = smsTaskRepository; |
||||
|
_userRepository = userRepository; |
||||
|
} |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 获取应用对象
|
||||
|
/// </summary>
|
||||
|
/// <param name="id"></param>
|
||||
|
/// <returns></returns>
|
||||
|
[HttpGet("api/app/sms_task/get")] |
||||
|
public async Task<SmsTaskDto> GetAsync(Guid id) |
||||
|
{ |
||||
|
var userList = await _userRepository.GetListAsync(); |
||||
|
var entity = await _smsTaskRepository.GetAsync(id); |
||||
|
var entityDto = ObjectMapper.Map<SmsTask, SmsTaskDto>(entity); |
||||
|
entityDto.CreatorName = EntityHelper.GetUserName(userList, entityDto.CreatorId.Value); |
||||
|
entityDto.LastModifierName = EntityHelper.GetUserName(userList, entityDto.LastModifierId.Value); |
||||
|
return entityDto; |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 创建
|
||||
|
/// </summary>
|
||||
|
/// <returns></returns>
|
||||
|
[HttpPost("api/app/sms_task/create")] |
||||
|
public async Task CreateAsync(CreateSmsTaskDto input) |
||||
|
{ |
||||
|
DataHelper.CheckEntityIsNull(input, "", "参数有误"); |
||||
|
|
||||
|
var entity = new SmsTask(GuidGenerator.Create()) |
||||
|
{ |
||||
|
Content = input.Content, |
||||
|
CountryCode = input.CountryCode, |
||||
|
IsActive = input.IsActive, |
||||
|
MobileTelephone = input.MobileTelephone, |
||||
|
PersonId = input.PersonId, |
||||
|
PersonName = input.PersonName, |
||||
|
SenderId = input.SenderId, |
||||
|
SenderName = input.SenderName, |
||||
|
SmsAppId = input.SmsAppId, |
||||
|
SmsTypeId = input.SmsTypeId, |
||||
|
StopTime = input.StopTime, |
||||
|
TaskCorn = input.TaskCorn, |
||||
|
TaskCycleType = input.TaskCycleType, |
||||
|
ThirdId = input.ThirdId |
||||
|
}; |
||||
|
|
||||
|
entity = _smsTaskManager.CreateAsync(entity); |
||||
|
|
||||
|
await _smsTaskRepository.InsertAsync(entity); |
||||
|
|
||||
|
} |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 修改
|
||||
|
/// </summary>
|
||||
|
/// <returns></returns>
|
||||
|
[HttpPost("api/app/sms_task/update")] |
||||
|
public async Task UpdateAsync(Guid id, UpdateSmsTaskDto input) |
||||
|
{ |
||||
|
DataHelper.CheckEntityIsNull(input, "", "参数有误"); |
||||
|
|
||||
|
var entity = await _smsTaskRepository.GetAsync(id); |
||||
|
var sourceEntity = new SmsTask(GuidGenerator.Create()) |
||||
|
{ |
||||
|
Content = input.Content, |
||||
|
CountryCode = input.CountryCode, |
||||
|
IsActive = input.IsActive, |
||||
|
MobileTelephone = input.MobileTelephone, |
||||
|
PersonId = input.PersonId, |
||||
|
PersonName = input.PersonName, |
||||
|
SenderId = input.SenderId, |
||||
|
SenderName = input.SenderName, |
||||
|
SmsAppId = input.SmsAppId, |
||||
|
SmsTypeId = input.SmsTypeId, |
||||
|
StopTime = input.StopTime, |
||||
|
TaskCorn = input.TaskCorn, |
||||
|
TaskCycleType = input.TaskCycleType, |
||||
|
ThirdId = input.ThirdId |
||||
|
}; |
||||
|
|
||||
|
_smsTaskManager.UpdateAsync(sourceEntity, entity); |
||||
|
|
||||
|
await _smsTaskRepository.UpdateAsync(entity); |
||||
|
|
||||
|
|
||||
|
} |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 删除
|
||||
|
/// </summary>
|
||||
|
/// <returns></returns>
|
||||
|
[HttpPost("api/app/sms_task/delete")] |
||||
|
public async Task DeleteAsync(Guid id) |
||||
|
{ |
||||
|
await _smsTaskManager.CheckIsDeleteAsync(id); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
Write
Preview
Loading…
Cancel
Save
Reference in new issue