12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- using System;
- using System.IO;
- using System.Threading.Tasks;
- using Microsoft.AspNetCore.Mvc;
- using Microsoft.Azure.WebJobs;
- using Microsoft.Azure.WebJobs.Extensions.Http;
- using Microsoft.AspNetCore.Http;
- using Microsoft.Extensions.Logging;
- using TEAMModelOS.SDK.DI;
- using Azure.Cosmos;
- using System.Text.Json;
- using System.Collections.Generic;
- using TEAMModelOS.SDK.Models;
- using TEAMModelOS.SDK.Extension;
- using TEAMModelOS.SDK;
- using TEAMModelOS.SDK.Models.Cosmos;
- using TEAMModelOS.SDK.Models.Cosmos.Common;
- using System.Linq;
- using TEAMModelOS.Services.Common;
- using TEAMModelOS.SDK.Models.Service;
- using HTEXLib.COMM.Helpers;
- namespace TEAMModelFunction
- {
- public class ScsApisHttpTrigger
- {
- private readonly AzureCosmosFactory _azureCosmos;
- private readonly DingDing _dingDing;
- private readonly AzureStorageFactory _azureStorage;
- private readonly AzureRedisFactory _azureRedis;
- private readonly ThirdApisService _thirdApisService;
- public static string Code { get; set; }
- public static Dictionary<string, object> parameterMap = null;
- public ScsApisHttpTrigger(AzureCosmosFactory azureCosmos, DingDing dingDing, AzureStorageFactory azureStorage, ThirdApisService thirdApisService
- , AzureRedisFactory azureRedis)
- {
- _azureCosmos = azureCosmos;
- _dingDing = dingDing;
- _azureStorage = azureStorage;
- _azureRedis = azureRedis;
- _thirdApisService = thirdApisService;
- }
- /// <summary>
- ///
- /// </summary>
- /// <param name="req"></param>
- /// <param name="log"></param>
- /// <returns></returns>
- [FunctionName("GetDiagnosisListByProject_V2")]
- public async Task<IActionResult> GetDiagnosisListByProject_V2([HttpTrigger(AuthorizationLevel.Anonymous, "post", Route = null)] HttpRequest req, ILogger log) {
- List<string> abilityNos = null;
- string data = await new StreamReader(req.Body).ReadToEndAsync();
- JsonElement accessConfig= data.ToObject<JsonElement>().GetProperty("accessConfig");
- JsonElement pxid = data.ToObject<JsonElement>().GetProperty("pxid");
- ScAccessConfig config = $"{accessConfig}".ToObject<ScAccessConfig>();
- Code = "GetDiagnosisListByProject_V2";
- parameterMap = new Dictionary<string, object>();
- parameterMap.Add("TrainComID", config.trainComID);
- //parameterMap.Add("ProjectID", "22");
- //parameterMap.Add("ProjectItemID", "22");
- parameterMap.Add("PXID", pxid);
- ScsResult result = new ScsResult { code = Code, title = "5.3.1.3通过项目编号获取学员测评能力项V2" };
- try
- {
- result = await _thirdApisService.Post(config.url, Code, config.passKey, config.privateKey, parameterMap);
- if (result.result)
- {
- List<ScDiagnosis> diagnoses = result.content.ToObject<List<ScDiagnosis>>();
- if (diagnoses != null)
- {
- abilityNos = diagnoses.Select(x => x.DiagnosisDicNum).ToList();
- }
- }
- return new OkObjectResult(abilityNos);
- }
- catch (Exception ex)
- {
- await _dingDing.SendBotMsg($"IES5.ScApisService:getDiagnosisListByProject_V2\n{ex.Message}{ex.StackTrace}\n{result.ToJsonString()}", GroupNames.成都开发測試群組);
- return new OkObjectResult(abilityNos);
- }
- }
- }
- }
|