sunpengfei
2025-08-15 49452eca97d0fa062d7180ab24d61f5e5f68c52c
feat:开发
2个文件已添加
10个文件已修改
666 ■■■■■ 已修改文件
FlexJobApi.Core/Entities/UserServer/Enterprises/Enterprise.cs 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
FlexJobApi.Core/Entities/UserServer/Users/User.cs 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
FlexJobApi.Core/Enums/Common/EnumErrorCodeType.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
FlexJobApi.Core/Enums/Users/EnumUserSource.cs 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
FlexJobApi.Core/FlexJobApi.Core.xml 231 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
FlexJobApi.Core/Models/UserServer/Users/Commands/SyncEnterpriseUserCommand.cs 197 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
FlexJobApi.Core/Utils/BaiduUtils/BaiduOcrBusinessLicenseResult.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
FlexJobApi.Core/Utils/BaiduUtils/BaiduOcrUtils.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
FlexJobApi.UserServer.Application/FlexJobApi.UserServer.Application.xml 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
FlexJobApi.UserServer.Application/Users/Commands/SyncEnterpriseUserCommandHandler.cs 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
FlexJobApi.UserServer.Application/Users/Commands/UserInfoCommandHandler.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
FlexJobApi.Web.Entry/appsettings.json 90 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
FlexJobApi.Core/Entities/UserServer/Enterprises/Enterprise.cs
@@ -88,7 +88,27 @@
        public DictionaryData IndustryType { get; set; }
        /// <summary>
        /// 主营业务
        /// 企业类型
        /// </summary>
        public string EnterpriseType { get; set; }
        /// <summary>
        /// 注册资本
        /// </summary>
        public string RegisteredCapital { get; set; }
        /// <summary>
        /// 成立日期
        /// </summary>
        public string EstablishmentDate { get; set; }
        /// <summary>
        /// 企业地址
        /// </summary>
        public string Address { get; set; }
        /// <summary>
        /// 经营范围
        /// </summary>
        public string MainBusiness { get; set; }
FlexJobApi.Core/Entities/UserServer/Users/User.cs
@@ -260,6 +260,16 @@
        /// </summary>
        public List<EnterpriseUserCollect> EnterpriseUserCollects { get; set; }
        /// <summary>
        /// 数据来源
        /// </summary>
        public EnumDataSource? DataSource { get; set; }
        /// <summary>
        /// 数据来源Id
        /// </summary>
        public Guid? DataSourceId { get; set; }
        public void Configure(EntityTypeBuilder<User> entityBuilder, DbContext dbContext, Type dbContextLocator)
        {
            entityBuilder
FlexJobApi.Core/Enums/Common/EnumErrorCodeType.cs
@@ -26,7 +26,7 @@
        [ErrorCodeItemMetadata("{0}不存在")]
        s404 = 404,
        /// <summary>
        /// 该{0}已存在,请确认后再试
        /// {0}已存在,请确认后再试
        /// </summary>
        [ErrorCodeItemMetadata("{0}已存在,请确认后再试")]
        s405 = 405,
FlexJobApi.Core/Enums/Users/EnumUserSource.cs
New file
@@ -0,0 +1,19 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace FlexJobApi.Core
{
    /// <summary>
    /// 数据来源
    /// </summary>
    public enum EnumDataSource
    {
        /// <summary>
        /// 818
        /// </summary>
        HumanResources = 10
    }
}
FlexJobApi.Core/FlexJobApi.Core.xml
@@ -1244,9 +1244,29 @@
            所属行业
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.Enterprise.EnterpriseType">
            <summary>
            企业类型
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.Enterprise.RegisteredCapital">
            <summary>
            注册资本
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.Enterprise.EstablishmentDate">
            <summary>
            成立日期
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.Enterprise.Address">
            <summary>
            企业地址
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.Enterprise.MainBusiness">
            <summary>
            主营业务
            经营范围
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.Enterprise.Contacts">
@@ -2157,6 +2177,16 @@
            谁家企业收藏/联系我
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.User.DataSource">
            <summary>
            数据来源
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.User.DataSourceId">
            <summary>
            数据来源Id
            </summary>
        </member>
        <member name="T:FlexJobApi.Core.UserAuth">
            <summary>
            用户认证
@@ -2284,7 +2314,7 @@
        </member>
        <member name="F:FlexJobApi.Core.EnumErrorCodeType.s405">
            <summary>
            该{0}已存在,请确认后再试
            {0}已存在,请确认后再试
            </summary>
        </member>
        <member name="F:FlexJobApi.Core.EnumErrorCodeType.s406">
@@ -3140,6 +3170,16 @@
        <member name="F:FlexJobApi.Core.EnumUserRealMethod.Face">
            <summary>
            刷脸认证
            </summary>
        </member>
        <member name="T:FlexJobApi.Core.EnumDataSource">
            <summary>
            数据来源
            </summary>
        </member>
        <member name="F:FlexJobApi.Core.EnumDataSource.HumanResources">
            <summary>
            818
            </summary>
        </member>
        <member name="T:FlexJobApi.Core.EnumUserStatus">
@@ -8509,6 +8549,191 @@
            状态
            </summary>
        </member>
        <member name="T:FlexJobApi.Core.SyncEnterpriseUserCommand">
            <summary>
            同步企业用户
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommand.DataSource">
            <summary>
            数据来源
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommand.DataSourceId">
            <summary>
            数据来源Id
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommand.Password">
            <summary>
            密码
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommand.Name">
            <summary>
            姓名
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommand.UserName">
            <summary>
            用户名
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommand.PhoneNumber">
            <summary>
            手机号
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommand.Enterprise">
            <summary>
            企业
            </summary>
        </member>
        <member name="T:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise">
            <summary>
            同步企业用户
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.EnterpriseName">
            <summary>
            企业全称
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.SocietyCreditCode">
            <summary>
            统一社会信用代码
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.LicenseImage">
            <summary>
            营业执照照片
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.LegalPerson">
            <summary>
            法人姓名
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.LegalIdentity">
            <summary>
            法人身份证号
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.ProvinceCode">
            <summary>
            所在省份编号
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.CityCode">
            <summary>
            所在城市编号
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.IndustryTypeCode">
            <summary>
            所属行业编号
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.EnterpriseType">
            <summary>
            企业类型
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.RegisteredCapital">
            <summary>
            注册资本
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.EstablishmentDate">
            <summary>
            成立日期
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.Address">
            <summary>
            企业地址
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.MainBusiness">
            <summary>
            经营范围
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.Contacts">
            <summary>
            联系人
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.ContactPhoneNumber">
            <summary>
            联系电话
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.ContactEmail">
            <summary>
            联系邮箱
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.PayAccess">
            <summary>
            支付通道
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.BankName">
            <summary>
            开户总行
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.BankBranchName">
            <summary>
            开户支行
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.BankCard">
            <summary>
            银行账户
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.IsCheckedBankCard">
            <summary>
            是否已校验银行账户
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.RealAccess">
            <summary>
            实名通道
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.RealVerifyCost">
            <summary>
            实名费用
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.SignCost">
            <summary>
            签约费用
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.MergeSignCost">
            <summary>
            一口价
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.SmsAccess">
            <summary>
            短信通道
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.SmsCost">
            <summary>
            短信费用
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.SyncEnterpriseUserCommandEnterprise.IsReal">
            <summary>
            是否实名
            </summary>
        </member>
        <member name="T:FlexJobApi.Core.GetEnterpriseLoginInfoQuery">
            <summary>
            查询企业用户登录信息
@@ -9099,7 +9324,7 @@
            企业地址
            </summary>
        </member>
        <member name="P:FlexJobApi.Core.BaiduOcrBusinessLicenseResultModel.BusinessScope">
        <member name="P:FlexJobApi.Core.BaiduOcrBusinessLicenseResultModel.MainBusiness">
            <summary>
            经营范围
            </summary>
FlexJobApi.Core/Models/UserServer/Users/Commands/SyncEnterpriseUserCommand.cs
@@ -1,5 +1,8 @@
using System;
using Mapster;
using MediatR;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
@@ -9,8 +12,198 @@
    /// <summary>
    /// 同步企业用户
    /// </summary>
    public class SyncEnterpriseUserCommand
    [Resource([EnumResourceController.User])]
    public class SyncEnterpriseUserCommand : IRequest<Guid>
    {
        /// <summary>
        /// 数据来源
        /// </summary>
        public EnumDataSource? DataSource { get; set; }
        /// <summary>
        /// 数据来源Id
        /// </summary>
        public Guid? DataSourceId { get; set; }
        /// <summary>
        /// 密码
        /// </summary>
        public string Password { get; set; }
        /// <summary>
        /// 姓名
        /// </summary>
        public string Name { get; set; }
        /// <summary>
        /// 用户名
        /// </summary>
        public string UserName { get; set; }
        /// <summary>
        /// 手机号
        /// </summary>
        public string PhoneNumber { get; set; }
        /// <summary>
        /// 企业
        /// </summary>
        [AdaptIgnore]
        public SyncEnterpriseUserCommandEnterprise Enterprise { get; set; }
    }
    /// <summary>
    /// 同步企业用户
    /// </summary>
    public class SyncEnterpriseUserCommandEnterprise
    {
        /// <summary>
        /// 企业全称
        /// </summary>
        [Required]
        [MaxLength(128)]
        public string EnterpriseName { get; set; }
        /// <summary>
        /// 统一社会信用代码
        /// </summary>
        [Required]
        [MaxLength(18)]
        public string SocietyCreditCode { get; set; }
        /// <summary>
        /// 营业执照照片
        /// </summary>
        public string LicenseImage { get; set; }
        /// <summary>
        /// 法人姓名
        /// </summary>
        [MaxLength(32)]
        public string LegalPerson { get; set; }
        /// <summary>
        /// 法人身份证号
        /// </summary>
        [MaxLength(18)]
        public string LegalIdentity { get; set; }
        /// <summary>
        /// 所在省份编号
        /// </summary>
        public string ProvinceCode { get; set; }
        /// <summary>
        /// 所在城市编号
        /// </summary>
        public string CityCode { get; set; }
        /// <summary>
        /// 所属行业编号
        /// </summary>
        public string IndustryTypeCode { get; set; }
        /// <summary>
        /// 企业类型
        /// </summary>
        public string EnterpriseType { get; set; }
        /// <summary>
        /// 注册资本
        /// </summary>
        public string RegisteredCapital { get; set; }
        /// <summary>
        /// 成立日期
        /// </summary>
        public string EstablishmentDate { get; set; }
        /// <summary>
        /// 企业地址
        /// </summary>
        public string Address { get; set; }
        /// <summary>
        /// 经营范围
        /// </summary>
        public string MainBusiness { get; set; }
        /// <summary>
        /// 联系人
        /// </summary>
        [MaxLength(32)]
        public string Contacts { get; set; }
        /// <summary>
        /// 联系电话
        /// </summary>
        [MaxLength(11)]
        public string ContactPhoneNumber { get; set; }
        /// <summary>
        /// 联系邮箱
        /// </summary>
        public string ContactEmail { get; set; }
        /// <summary>
        /// 支付通道
        /// </summary>
        public EnumPayAccess? PayAccess { get; set; }
        /// <summary>
        /// 开户总行
        /// </summary>
        public string BankName { get; set; }
        /// <summary>
        /// 开户支行
        /// </summary>
        public string BankBranchName { get; set; }
        /// <summary>
        /// 银行账户
        /// </summary>
        [MaxLength(32)]
        public string BankCard { get; set; }
        /// <summary>
        /// 是否已校验银行账户
        /// </summary>
        public bool IsCheckedBankCard { get; set; }
        /// <summary>
        /// 实名通道
        /// </summary>
        public EnumRealAccess? RealAccess { get; set; }
        /// <summary>
        /// 实名费用
        /// </summary>
        public decimal? RealVerifyCost { get; set; }
        /// <summary>
        /// 签约费用
        /// </summary>
        public decimal? SignCost { get; set; }
        /// <summary>
        /// 一口价
        /// </summary>
        public decimal? MergeSignCost { get; set; }
        /// <summary>
        /// 短信通道
        /// </summary>
        public EnumSmsAccess? SmsAccess { get; set; }
        /// <summary>
        /// 短信费用
        /// </summary>
        public decimal SmsCost { get; set; }
        /// <summary>
        /// 是否实名
        /// </summary>
        public bool IsReal { get; set; }
    }
}
FlexJobApi.Core/Utils/BaiduUtils/BaiduOcrBusinessLicenseResult.cs
@@ -85,6 +85,6 @@
        /// <summary>
        /// 经营范围
        /// </summary>
        public string BusinessScope { get; set; }
        public string MainBusiness { get; set; }
    }
}
FlexJobApi.Core/Utils/BaiduUtils/BaiduOcrUtils.cs
@@ -61,7 +61,7 @@
                RegisteredCapital = result.WordsResult["注册资本"].Words,
                EstablishmentDate = result.WordsResult["成立日期"].Words,
                Address = result.WordsResult["地址"].Words,
                BusinessScope = result.WordsResult["经营范围"].Words,
                MainBusiness = result.WordsResult["经营范围"].Words,
            };
            return result;
        }
FlexJobApi.UserServer.Application/FlexJobApi.UserServer.Application.xml
@@ -296,7 +296,7 @@
        </member>
        <member name="F:FlexJobApi.UserServer.Application.EnumUserErrorCodeType.u1010">
            <summary>
            该手机号已被注册
            手机号已被注册
            </summary>
        </member>
        <member name="F:FlexJobApi.UserServer.Application.EnumUserErrorCodeType.u1100">
@@ -687,6 +687,24 @@
            <param name="cancellationToken"></param>
            <returns></returns>
        </member>
        <member name="T:FlexJobApi.UserServer.Application.SyncEnterpriseUserCommandHandler">
            <summary>
            </summary>
        </member>
        <member name="M:FlexJobApi.UserServer.Application.SyncEnterpriseUserCommandHandler.#ctor(Furion.DatabaseAccessor.IRepository{FlexJobApi.Core.User},Furion.DatabaseAccessor.IRepository{FlexJobApi.Core.Enterprise})">
            <summary>
            </summary>
        </member>
        <member name="M:FlexJobApi.UserServer.Application.SyncEnterpriseUserCommandHandler.Handle(FlexJobApi.Core.SyncEnterpriseUserCommand,System.Threading.CancellationToken)">
            <summary>
            同步企业用户
            </summary>
            <param name="request"></param>
            <param name="cancellationToken"></param>
            <returns></returns>
        </member>
        <member name="T:FlexJobApi.UserServer.Application.UserInfos.Commands.UserInfoCommandHandler">
            <summary>
            用户信息命令处理器
FlexJobApi.UserServer.Application/Users/Commands/SyncEnterpriseUserCommandHandler.cs
New file
@@ -0,0 +1,70 @@
using FlexJobApi.Core;
using Furion.DatabaseAccessor;
using Furion.FriendlyException;
using Mapster;
using MediatR;
using Microsoft.EntityFrameworkCore;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace FlexJobApi.UserServer.Application
{
    /// <summary>
    ///
    /// </summary>
    public class SyncEnterpriseUserCommandHandler(
            IRepository<User> repUser,
            IRepository<Enterprise> repEnterprise
        ) :
        IRequestHandler<SyncEnterpriseUserCommand, Guid>
    {
        private readonly IRepository<User> repUser = repUser;
        private readonly IRepository<Enterprise> repEnterprise = repEnterprise;
        /// <summary>
        /// 同步企业用户
        /// </summary>
        /// <param name="request"></param>
        /// <param name="cancellationToken"></param>
        /// <returns></returns>
        public async Task<Guid> Handle(SyncEnterpriseUserCommand request, CancellationToken cancellationToken)
        {
            var enterprise = await repEnterprise.AsQueryable()
                .Where(it => it.SocietyCreditCode == request.Enterprise.SocietyCreditCode)
                .FirstOrDefaultAsync(cancellationToken);
            if (enterprise == null)
            {
                enterprise = new Enterprise();
                request.Enterprise.Adapt(enterprise);
                await repEnterprise.InsertAsync(enterprise);
            }
            else
            {
                request.Enterprise.Adapt(enterprise);
                await repEnterprise.UpdateAsync(enterprise);
            }
            var user = await repUser.AsQueryable()
                .Where(it => it.Type == EnumUserType.Enterprise && it.EnterpriseId == enterprise.Id && it.UserName == request.UserName)
                .FirstOrDefaultAsync(cancellationToken);
            if (user == null)
            {
                var exist = await repUser.AsQueryable().AsNoTracking()
                    .AnyAsync(it => it.Type == EnumUserType.Enterprise && it.UserName == request.UserName);
                if (exist)
                    throw Oops.Oh(EnumErrorCodeType.s405, "账号");
                user = new User();
                request.Adapt(user);
                await repUser.InsertAsync(user);
            }
            else
            {
                request.Adapt(user);
                await repUser.UpdateAsync(user);
            }
            return user.Id;
        }
    }
}
FlexJobApi.UserServer.Application/Users/Commands/UserInfoCommandHandler.cs
@@ -62,5 +62,6 @@
            await rep.UpdateAsync(entity);
            return entity.UserRoles.Count;
        }
    }
}
FlexJobApi.Web.Entry/appsettings.json
@@ -42,57 +42,57 @@
      "RoleSessionName": "SessionTest",
      "Policy": "{\"Version\":\"1\",\"Statement\":[{\"Effect\":\"Allow\",\"Action\":\"oss:PutObject\",\"Resource\":[\"acs:oss:*:*:waterdroptest2/*\",\"acs:oss:*:*:parkmanagement/*\",\"acs:oss:*:*:jurenlian/*\"]}]}",
      "DurationSeconds": 3600
    },
    "SMS": {
      "Enable": true,
      "AccessKeyId": "LTAI5tMS7qz1duiyncCqxB8H",
      "AccessSecret": "TEHSXK6f6Njg0v0MSFkrjURofdjuKQ",
      "Version": "2017-05-25",
      "SignName": "818数字人力资产平台",
      "RegionId": "cn-hangzhou",
      "TemplateCodes": {
        //818平台短信验证码 验证码:${code},请于5分钟内填写,请勿泄露,若非本人操作请忽略。
        "VerifyCode": "SMS_471100021",
        //818平台登录/注册 验证码${code},用户您好,您正在进行平台登录/注册,验证码10分钟内有效。
        "LoginOrRegister": "SMS_472170005",
        //818账号开通(管理端)尊敬的用户您好,人力无忧账号已开通,账号:${account},密码:${pwd},请登录网址 https://admin.81812333.com
        "CreateOperationAccount": "SMS_471970028",
        //818手机号码修改 验证码${code},您正在进行修改手机号码操作,请勿泄露,若非本人操作请忽略。
        "UpdateUserPhoneNumber": "SMS_471100097",
        //818手机号换绑 尊敬的用户您好,818平台${code}的账户绑定手机号成功修改为${account},你可以使用该手机号登录,登录网址 https://www.81812333.com
        "UpdateUserPhoneNumberNotice": "SMS_471925037",
        //818重置密码 验证码${code},您正在进行重置密码操作,请勿泄露,若非本人操作请忽略。
        "ResetUserPhoneNumber": "SMS_471240080",
        //818平台密码重置(通知) 您好,您的密码已重置,账号:${account},密码:${password},请妥善保存
        "ResetPasswordNotice": "SMS_476790229",
        //账号修改 尊敬的用户您好: 您的818平台账号成功修改为${account}您可以使用该账号进行登录,登录网址:https://www.81812333.com
        "ChangeUserName": "SMS_475895109",
        //818账号开通 尊敬的用户您好,您的账号:${account},初始密码:${password},请妥善保存,您可使用账号密码登录并修改密码,登录网址 https://www.81812333.com
        "CreateAccountNotice": "SMS_471980029",
        //手机号解绑 尊敬的用户您好:818平台${account}的账号与${number}已解绑,你可以登录网址:https://www.81812333.com重新绑定手机号。
        "UnbindingUserPhoneNumber": "SMS_475840188",
        //解绑邮箱 尊敬的用户您好:818平台${account}的账号与${mail}已解绑,你可以登录网址:https://www.81812333.com重新绑定邮箱。
        "UnbindingUserEmail": "SMS_475875117",
        //818实名认证 验证码${code},您正在进行实名认证操作,请勿泄露,若非本人操作请忽略。
        "UserCertificationAudit": "SMS_471230080",
        //申请数字证书 验证码${code},用户您好,您正在申请数字证书,验证码10分钟内有效。
        "ApplyUserCertificate": "SMS_475345383",
        //电子签 ${unit_name}请您点击签约t.81812333.com/Inter/${code}
        "UserElectronSign": "SMS_476485061",
        //818钱包开通 验证码${code},用户您好,您正在进行平台钱包开通,该验证码5分钟内有效,请勿泄露于他人。
        "BankWalletAccountOpen": "SMS_473860301"
      }
    }
  },
  "Baidu": {
    "Ocr": {
      "Key": "Htx3y6eFnlW92WvHx9aW44f8",
      "Secret": "k1rDa3vjVtArrQio9LtR5AjqARSw45WO"
    }
  },
  "SMS": {
    "Enable": true,
    "AccessKeyId": "LTAI5tMS7qz1duiyncCqxB8H",
    "AccessSecret": "TEHSXK6f6Njg0v0MSFkrjURofdjuKQ",
    "Version": "2017-05-25",
    "SignName": "818数字人力资产平台",
    "RegionId": "cn-hangzhou",
    "TemplateCodes": {
      //818平台短信验证码 验证码:${code},请于5分钟内填写,请勿泄露,若非本人操作请忽略。
      "VerifyCode": "SMS_471100021",
      //818平台登录/注册 验证码${code},用户您好,您正在进行平台登录/注册,验证码10分钟内有效。
      "LoginOrRegister": "SMS_472170005",
      //818账号开通(管理端)尊敬的用户您好,人力无忧账号已开通,账号:${account},密码:${pwd},请登录网址 https://admin.81812333.com
      "CreateOperationAccount": "SMS_471970028",
      //818手机号码修改 验证码${code},您正在进行修改手机号码操作,请勿泄露,若非本人操作请忽略。
      "UpdateUserPhoneNumber": "SMS_471100097",
      //818手机号换绑 尊敬的用户您好,818平台${code}的账户绑定手机号成功修改为${account},你可以使用该手机号登录,登录网址 https://www.81812333.com
      "UpdateUserPhoneNumberNotice": "SMS_471925037",
      //818重置密码 验证码${code},您正在进行重置密码操作,请勿泄露,若非本人操作请忽略。
      "ResetUserPhoneNumber": "SMS_471240080",
      //818平台密码重置(通知) 您好,您的密码已重置,账号:${account},密码:${password},请妥善保存
      "ResetPasswordNotice": "SMS_476790229",
      //账号修改 尊敬的用户您好: 您的818平台账号成功修改为${account}您可以使用该账号进行登录,登录网址:https://www.81812333.com
      "ChangeUserName": "SMS_475895109",
      //818账号开通 尊敬的用户您好,您的账号:${account},初始密码:${password},请妥善保存,您可使用账号密码登录并修改密码,登录网址 https://www.81812333.com
      "CreateAccountNotice": "SMS_471980029",
      //手机号解绑 尊敬的用户您好:818平台${account}的账号与${number}已解绑,你可以登录网址:https://www.81812333.com重新绑定手机号。
      "UnbindingUserPhoneNumber": "SMS_475840188",
      //解绑邮箱 尊敬的用户您好:818平台${account}的账号与${mail}已解绑,你可以登录网址:https://www.81812333.com重新绑定邮箱。
      "UnbindingUserEmail": "SMS_475875117",
      //818实名认证 验证码${code},您正在进行实名认证操作,请勿泄露,若非本人操作请忽略。
      "UserCertificationAudit": "SMS_471230080",
      //申请数字证书 验证码${code},用户您好,您正在申请数字证书,验证码10分钟内有效。
      "ApplyUserCertificate": "SMS_475345383",
      //电子签 ${unit_name}请您点击签约t.81812333.com/Inter/${code}
      "UserElectronSign": "SMS_476485061",
      //818钱包开通 验证码${code},用户您好,您正在进行平台钱包开通,该验证码5分钟内有效,请勿泄露于他人。
      "BankWalletAccountOpen": "SMS_473860301"
    }
  }
}