浏览代码

优化企业开放平台接口

Li 3 年之前
父节点
当前提交
4cdd6fb66f

+ 10 - 34
TEAMModelBI/Controllers/BINormal/CompanyController.cs

@@ -117,40 +117,16 @@ namespace TEAMModelBI.Controllers.BINormal
                 //新增企业信息
                 if (string.IsNullOrEmpty(company.id))
                 {
-                    //company.id = Guid.NewGuid().ToString();
-                    CreateSchoolInfo createCompanyCode = new()
-                    {
-                        province = "",
-                        id = "",
-                        name = company.name,
-                        city = "",
-                        aname = "",
-                        createCount = 0,
-                    };
-
-                    //生成企业ID
-                    bool tempStaus = true;
-                    do
-                    {
-                        createCompanyCode = await SchoolCode.GenerateSchoolCode(createCompanyCode, _dingDing, _environment);
-                        var companyState = await cosmosClient.GetContainer("TEAMModelOS", "Normal").ReadItemStreamAsync($"{createCompanyCode.id}", new PartitionKey("Company"));
-                        if (companyState.Status != 200) tempStaus = false;
-                        else createCompanyCode.createCount = createCompanyCode.createCount >= 3 ? createCompanyCode.createCount = 3 : createCompanyCode.createCount += 1;
-                    } while (tempStaus);
-
-                    if (createCompanyCode.id != null)
-                    {
-                        company.id = createCompanyCode.id;
-                        company.code = "Company";
-                        company.salt = salt;
-                        company.password = string.IsNullOrWhiteSpace(company.password) ? Utils.HashedPassword("123456", salt) : Utils.HashedPassword(company.password, salt);//Password,若梦没有则是默认密码:123456
-                        company.createTime = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds();
-
-                        company.secretKey = JwtAuth.CreateBusinessJwtKeyBI(_option.Location, _option.JwtSecretKey, createCompanyCode.id);
-                        await cosmosClient.GetContainer("TEAMModelOS", "Normal").CreateItemAsync<Company>(company, new PartitionKey(company.code));
-                        strMsg.Append($"{company.name}【{company.id}】新增企业基础信息。");
-                        type = "company-add";
-                    }
+                    company.id = Guid.NewGuid().ToString();
+                    company.code = "Company";
+                    company.salt = salt;
+                    company.password = string.IsNullOrWhiteSpace(company.password) ? Utils.HashedPassword("123456", salt) : Utils.HashedPassword(company.password, salt);//Password,若梦没有则是默认密码:123456
+                    company.createTime = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds();
+                    company.jti = Guid.NewGuid().ToString();
+                    company.secretKey = JwtAuth.CreateBusinessJwtKeyBI(_option.Location, _option.JwtSecretKey, company.id, company.jti);
+                    await cosmosClient.GetContainer("TEAMModelOS", "Normal").CreateItemAsync<Company>(company, new PartitionKey(company.code));
+                    strMsg.Append($"{company.name}【{company.id}】新增企业基础信息。");
+                    type = "company-add";
                 }
                 //修改企业信息
                 else

+ 0 - 2
TEAMModelBI/Controllers/BITest/TestController.cs

@@ -30,8 +30,6 @@ using TEAMModelOS.SDK.Models.Cosmos.Common;
 using TEAMModelOS.SDK.Models.Service;
 using TEAMModelOS.SDK.Models.Table;
 
-using static TEAMModelBI.DI.BIAzureStorage.BIAzureStorageBlobExtensions;
-
 //.Net 6新的特性
 using System.Threading;
 using System.Reflection;

+ 2 - 1
TEAMModelBI/Tool/Extension/JwtAuth.cs

@@ -67,13 +67,14 @@ namespace TEAMModelBI.Models.Extension
         /// <param name="salt"></param>
         /// <param name="commpanyId"></param>
         /// <returns></returns>
-        public static string CreateBusinessJwtKeyBI(string issuser, string salt,string commpanyId)
+        public static string CreateBusinessJwtKeyBI(string issuser, string salt,string commpanyId,string jti)
         {
             var payload = new JwtPayload
             {
                 { JwtRegisteredClaimNames.Iss,issuser}, //发布站点
                 { JwtRegisteredClaimNames.Sub,commpanyId},      //企业ID
                 { JwtRegisteredClaimNames.Iat,DateTimeOffset.UtcNow.ToUnixTimeMilliseconds().ToString()},    //秘钥发布时间
+                { JwtRegisteredClaimNames.Jti,jti},  // 唯一标识符
             };
 
             // 建立加密的秘钥

+ 9 - 1
TEAMModelOS.SDK/Models/Cosmos/BI/Company.cs

@@ -31,6 +31,11 @@ namespace TEAMModelOS.SDK.Models.Cosmos.BI
         /// </summary>
         public string picture { get; set; }
 
+        /// <summary>
+        /// 秘钥生成
+        /// </summary>
+        public string jti { get; set; }
+
         /// <summary>
         /// 秘钥
         /// </summary>
@@ -51,7 +56,10 @@ namespace TEAMModelOS.SDK.Models.Cosmos.BI
         /// 密码
         /// </summary>
         public string password { get; set; }
-
+        /// <summary>
+        /// 企业的通知回调地址
+        /// </summary>
+        public string webhookDomain { get; set; }
         public string salt { get; set; }
         /// <summary>
         /// 创建时间