master
xiaochanghai 1 month ago
parent 7c71643c6d
commit 8ee089e0a5
  1. 69
      Tiobon.Core.Services/Ghre/Ghre_SurveyServices.cs

@ -200,43 +200,46 @@ public class Ghre_SurveyServices : BaseServices<Ghre_Survey, Ghre_SurveyDto, Ins
public async Task<ServiceResult<Ghre_SurveyExtend>> QueryESSData(long id, long? openClassId = null)
{
long? feedbackId = null;
if (await Db.Queryable<Ghre_OpenClassFeedback>().Where(x => x.Source == "ParentTeacher" && (x.Id == id || x.Id == openClassId)).AnyAsync())
{
var feedback = await Db.Queryable<Ghre_OpenClassFeedback>().Where(x => x.Source == "ParentTeacher" && (x.Id == id || x.Id == openClassId)).FirstAsync();
feedbackId = feedback.Id;
openClassId = feedback.OpenClassId;
id = feedback.SurveyId.Value;
}
else
if (openClassId != null)
{
if (!await Db.Queryable<Ghre_OpenClassFeedback>()
.Where(x => x.Source == "Trainee"
&& (x.SurveyId == id || x.Id == openClassId)
&& x.OpenClassId == openClassId).AnyAsync())
if (await Db.Queryable<Ghre_OpenClassFeedback>().Where(x => x.Source == "ParentTeacher" && (x.Id == id || x.Id == openClassId)).AnyAsync())
{
var openClass = await Db.Queryable<Ghre_OpenClass>().Where(x => x.Id == openClassId).FirstAsync();
var feedback = new Ghre_OpenClassFeedback()
var feedback = await Db.Queryable<Ghre_OpenClassFeedback>().Where(x => x.Source == "ParentTeacher" && (x.Id == id || x.Id == openClassId)).FirstAsync();
feedbackId = feedback.Id;
openClassId = feedback.OpenClassId;
id = feedback.SurveyId.Value;
}
else
{
if (!await Db.Queryable<Ghre_OpenClassFeedback>()
.Where(x => x.Source == "Trainee"
&& (x.SurveyId == id || x.Id == openClassId)
&& x.OpenClassId == openClassId).AnyAsync())
{
OpenClassId = openClassId,
SurveyId = id,
StaffId = App.User.StaffId,
Source = "Trainee",
EffectiveTime = DateTime.Now,
ExpiryTime = DateTime.MaxValue,
TeacherId = openClass.TeacherId,
CourseBeginTime = openClass.StartTime,
CourseEndTime = openClass.EndTime,
CourseId = openClass.LinkId,
Status = "N",
Score = 0
};
feedbackId = await Db.Insertable(feedback).ExecuteReturnSnowflakeIdAsync();
var openClass = await Db.Queryable<Ghre_OpenClass>().Where(x => x.Id == openClassId).FirstAsync();
var feedback = new Ghre_OpenClassFeedback()
{
OpenClassId = openClassId,
SurveyId = id,
StaffId = App.User.StaffId,
Source = "Trainee",
EffectiveTime = DateTime.Now,
ExpiryTime = DateTime.MaxValue,
TeacherId = openClass.TeacherId,
CourseBeginTime = openClass.StartTime,
CourseEndTime = openClass.EndTime,
CourseId = openClass.LinkId,
Status = "N",
Score = 0
};
feedbackId = await Db.Insertable(feedback).ExecuteReturnSnowflakeIdAsync();
}
else feedbackId = await Db.Queryable<Ghre_OpenClassFeedback>()
.Where(x => x.Source == "Trainee"
&& (x.SurveyId == id || x.Id == openClassId)
&& x.OpenClassId == openClassId).Select(x => x.Id).FirstAsync();
}
else feedbackId = await Db.Queryable<Ghre_OpenClassFeedback>()
.Where(x => x.Source == "Trainee"
&& (x.SurveyId == id || x.Id == openClassId)
&& x.OpenClassId == openClassId).Select(x => x.Id).FirstAsync();
}
var entity = await base.QueryById(id);

Loading…
Cancel
Save