|
@@ -1383,12 +1383,87 @@ namespace TEAMModelOS.Controllers
|
|
|
if (!json.TryGetProperty("semesterData", out JsonElement semesterData)) {
|
|
|
return responseData = new() { code = RespondCode.ParamsError, msg = "semesterData为空!" };
|
|
|
}
|
|
|
-
|
|
|
- if(!$"{subjectId}".Equals("") && !$"{subjectId}".Equals("") && !$"{subjectId}".Equals("") && !$"{subjectId}".Equals(""))
|
|
|
+ if(!$"{subjectId}".Equals("subject_sport") && !$"{subjectId}".Equals("subject_virtue") && !$"{subjectId}".Equals("subject_labour")
|
|
|
+ && !$"{subjectId}".Equals("subject_music") && !$"{subjectId}".Equals("subject_painting"))
|
|
|
{
|
|
|
+ return responseData = new() { code = RespondCode.ParamsError, msg = "当前subjectId未开放画像业务!" };
|
|
|
+ }
|
|
|
+ return responseData = new() { code = RespondCode.Ok, msg = "成功" };
|
|
|
+ School schoolBase = await client.GetContainer(Constant.TEAMModelOS, Constant.School).ReadItemAsync<School>(school, new PartitionKey("Base"));
|
|
|
+ Period period= schoolBase.period.Find(x => x.id.Equals($"{periodId}"));
|
|
|
+ if (period == null)
|
|
|
+ {
|
|
|
+ return responseData = new() { code = RespondCode.NotFound, msg = "periodId不存在!" };
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ //是否需要创建科目
|
|
|
+ var bind = period.subjects.Find(x => x.bindId.Equals($"{subjectId}"));
|
|
|
+ if (bind == null)
|
|
|
+ {
|
|
|
+ string subjectName = "";
|
|
|
+ switch (true) {
|
|
|
+ case bool when $"{subjectId}".Equals("subject_sport") :
|
|
|
+ subjectName = "体育";
|
|
|
+ break;
|
|
|
+ case bool when $"{subjectId}".Equals("subject_virtue"):
|
|
|
+ subjectName = "德育";
|
|
|
+ break;
|
|
|
+ case bool when $"{subjectId}".Equals("subject_labour"):
|
|
|
+ subjectName = "劳动";
|
|
|
+ break;
|
|
|
+ case bool when $"{subjectId}".Equals("subject_music"):
|
|
|
+ subjectName = "音乐";
|
|
|
+ break;
|
|
|
+ case bool when $"{subjectId}".Equals("subject_painting"):
|
|
|
+ subjectName = "美术";
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ var subName = period.subjects.Find(z => z.name.Contains(subjectName));
|
|
|
+ if (subName != null)
|
|
|
+ {
|
|
|
+ subName.bindId = $"{subjectId}";
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ period.subjects.Add(new Subject { id= Guid.NewGuid().ToString(),name=subjectName,bindId=$"{subjectId}",type=1 });
|
|
|
+ }
|
|
|
+ await client.GetContainer(Constant.TEAMModelOS, Constant.School).ReplaceItemAsync<School>(schoolBase,school, new PartitionKey("Base"));
|
|
|
+ }
|
|
|
+ List<SemesterData> semesterDatas = semesterData.ToObject<List<SemesterData>>();
|
|
|
+ if (semesterDatas.Any()) {
|
|
|
+ semesterDatas.ForEach(data => {
|
|
|
+ if (!string.IsNullOrWhiteSpace(data.semesterId)) {
|
|
|
+ if (!period.semesters.Any()) {
|
|
|
+ period.semesters.Add(new Semester
|
|
|
+ {
|
|
|
+ id =Guid.NewGuid().ToString(),
|
|
|
+ name = "第一学期",
|
|
|
+ start = 1,
|
|
|
+ month = 9,
|
|
|
+ day = 1
|
|
|
+ }); period.semesters.Add(new Semester
|
|
|
+ {
|
|
|
+ id = Guid.NewGuid().ToString(),
|
|
|
+ name = "第二学期",
|
|
|
+ start = 0,
|
|
|
+ month = 3,
|
|
|
+ day = 1
|
|
|
+ });
|
|
|
+ }
|
|
|
+ var semester = period.semesters.Find(s => s.id.Equals(data.semesterId));
|
|
|
+ if (semester == null) {
|
|
|
+ if (data.semester > 0)
|
|
|
+ {
|
|
|
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ //无效的学期
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
}
|
|
|
- List<SemesterData> semesterDatas = semesterData.ToObject<List<SemesterData>>();
|
|
|
+
|
|
|
return responseData = new() { code = RespondCode.Ok, msg = "成功" };
|
|
|
} catch (Exception ex) {
|
|
|
await _dingDing.SendBotMsg($"OpenApi,{Environment.GetEnvironmentVariable("Option:Location")} OpenApiService/UpsertStudentPortrait() 参数:bizId:{bizId},school:{school},参数json:{json.ToJsonString()} \n {ex.Message}\n{ex.StackTrace}", GroupNames.成都开发測試群組);
|