Yuebon.WebApi/Areas/Security/Controllers/APPController.cs

(开头部分) 4KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using Swashbuckle.AspNetCore.Annotations;
using Yuebon.Commons.Encrypt;

namespace Yuebon.WebApi.Areas.Security.Controllers;

/// <summary>
/// 应用管理接口
/// </summary>
[SwaggerTag("APP")]
[ApiController]
[Route("api/Security/[controller]")]
public class APPController : AreaApiController<APP, AppOutputDto, APPInputDto, IAPPService>
{
    IMediator _mediator;
    /// <summary>
    /// 构造函数
    /// </summary>
    /// <param name="_iService"></param>
    /// <param name="mediator"></param>
    public APPController(IAPPService _iService, IMediator mediator) : base(_iService)
    {
        iService = _iService;
        _mediator = mediator;
    }
    /// <summary>
    /// 新增前处理数据
    /// </summary>
    /// <param name="info"></param>
    protected override void OnBeforeInsert(APP info)
    {
        info.Id = IdGeneratorHelper.IdSnowflake();
        info.AppSecret = MD5Util.GetMD5_32(GuidUtils.NewGuidFormatN()).ToUpper();
        if (info.IsOpenAEKey)
        {
            info.EncodingAESKey = MD5Util.GetMD5_32(GuidUtils.NewGuidFormatN()).ToUpper();
        }
        info.CreatorTime = DateTime.Now;
        info.CreatorUserId = CurrentUser.UserId;
        info.CompanyId = CurrentUser.OrganizeId;
        info.DeptId = CurrentUser.DeptId;
        info.DeleteMark = false;
    }
    
    /// <summary>
    /// 在更新数据前对数据的修改操作
    /// </summary>
    /// <param name="info"></param>
    /// <returns></returns>
    protected override void OnBeforeUpdate(APP info)
    {
        if (info.IsOpenAEKey && string.IsNullOrEmpty(info.EncodingAESKey)){
            info.EncodingAESKey = MD5Util.GetMD5_32(GuidUtils.NewGuidFormatN()).ToUpper();
        }
        info.LastModifyUserId = CurrentUser.UserId;
        info.LastModifyTime = DateTime.Now;
    }

    /// <summary>
    /// 在软删除数据前对数据的修改操作
    /// </summary>
后面还有 99 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。