123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115 |
- //using Microsoft.Extensions.Configuration;
- //using System;
- //using System.Collections.Generic;
- //using System.Linq;
- //using System.Net.Http;
- //using System.Text;
- //using System.Text.Json;
- //using System.Threading.Tasks;
- //using TEAMModelOS.SDK.DI;
- //using TEAMModelOS.SDK;
- //using Azure.Cosmos;
- //using TEAMModelOS.SDK.Models.Cosmos.School;
- //using TEAMModelOS.SDK.Models;
- //using TEAMModelOS.SDK.Extension;
- //using HTEXLib.COMM.Helpers;
- //using OpenXmlPowerTools;
- //namespace TEAMModelOS.FunctionV4.CosmosDB
- //{
- // public class TriggerVirtueImport
- // {
- // public static async Task Trigger(CoreAPIHttpService _coreAPIHttpService, AzureCosmosFactory _azureCosmos, AzureServiceBusFactory _serviceBus, AzureStorageFactory _azureStorage, DingDing _dingDing,
- // CosmosClient client, JsonElement input, TriggerData data, IHttpClientFactory _httpClient, IConfiguration _configuration)
- // {
- // VirtueImport virtueImport = input.ToObject<VirtueImport>();
- // if (virtueImport != null)
- // {
- // HashSet<string> ids = new HashSet<string>();
- // foreach (var x in virtueImport.students)
- // {
- // string id = $"{virtueImport.year}-{virtueImport.semesterId}-{x.id}";
- // ids.Add(id);
- // }
- // HashSet<OverallEducation> overallEducations = new HashSet<OverallEducation>();
- // string sql = $"select value c from c where c.id in ({string.Join(",", ids.Select(z => $"'{z}'"))}) and c.periodId='{virtueImport.periodId}' ";
- // var result = await client.GetContainer(Constant.TEAMModelOS, Constant.Student).GetList<OverallEducation>(sql, $"OverallEducation-{virtueImport.school}");
- // IEnumerable<string> notInDbIds = null;
- // if (result.list.IsNotEmpty())
- // {
- // notInDbIds = ids.Except(result.list.Select(x => x.id));
- // overallEducations = new HashSet<OverallEducation>(result.list);
- // }
- // else
- // {
- // notInDbIds = ids;
- // }
- // foreach (var y in virtueImport.students)
- // {
- // string id = $"{virtueImport.year}-{virtueImport.semesterId}-{y.id}";
- // var overallEducation = overallEducations.Where(z => z.id.Equals(id)).First();
- // if (overallEducation != null)
- // {
- // var exam = overallEducation.virtue.Find(f => f.examId.Equals(x.id));
- // if (exam != null)
- // {
- // var item = exam.itemScore.Find(f => f.id.Equals(x.id));
- // if (item != null)
- // {
- // item.name = y.name;
- // item.score = y.score;
- // item.type = virtueImport.type;
- // }
- // else
- // {
- // exam.itemScore.Add(new ItemScore { name = x.name, score = y.score, totalScore = x.items.Sum(b => b.score), type = virtueImport.type, id = x.id });
- // }
- // exam.examType = virtueImport.type;
- // exam.examDate = virtueImport.time;
- // exam.examName = virtueImport.name;
- // }
- // else
- // {
- // overallEducation.virtue.Add(new EducationScore
- // {
- // examName = virtueImport.name,
- // examId = virtueImport.id,
- // examDate = virtueImport.time,
- // examType = virtueImport.type,
- // itemScore = new List<ItemScore> { new ItemScore { name = x.name, score = y.score, totalScore = x.items.Sum(b => b.score), type = virtueImport.type, id = x.id } }
- // });
- // }
- // }
- // else
- // {
- // overallEducation = new OverallEducation
- // {
- // id = id,
- // code = $"OverallEducation-{virtueImport.school}",
- // pk = "OverallEducation",
- // periodId = virtueImport.periodId,
- // year = virtueImport.year,
- // semesterId = virtueImport.semesterId,
- // schoolCode = virtueImport.school,
- // studentId = y.id,
- // name = y.name,
- // classId = y.classId,
- // stuYear = y.stuYear,
- // virtue = new List<EducationScore> { new EducationScore {
- // examName=virtueImport.name,
- // examId=virtueImport.id,
- // examDate=virtueImport.time,
- // examType=virtueImport.type,
- // itemScore= new List<ItemScore>{ new ItemScore { name=x.name,score=y.score,totalScore=x.items.Sum(b=>b.score),type=virtueImport.type } }
- // }
- // }
- // };
- // overallEducations.Add(overallEducation);
- // }
- // }
- // }
- // }
- // }
- //}
|