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) public async Task<ServiceResult<Ghre_SurveyExtend>> QueryESSData(long id, long? openClassId = null)
{ {
long? feedbackId = null; long? feedbackId = null;
if (await Db.Queryable<Ghre_OpenClassFeedback>().Where(x => x.Source == "ParentTeacher" && (x.Id == id || x.Id == openClassId)).AnyAsync()) if (openClassId != null)
{
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>() if (await Db.Queryable<Ghre_OpenClassFeedback>().Where(x => x.Source == "ParentTeacher" && (x.Id == id || x.Id == openClassId)).AnyAsync())
.Where(x => x.Source == "Trainee"
&& (x.SurveyId == id || x.Id == openClassId)
&& x.OpenClassId == openClassId).AnyAsync())
{ {
var feedback = await Db.Queryable<Ghre_OpenClassFeedback>().Where(x => x.Source == "ParentTeacher" && (x.Id == id || x.Id == openClassId)).FirstAsync();
var openClass = await Db.Queryable<Ghre_OpenClass>().Where(x => x.Id == openClassId).FirstAsync(); feedbackId = feedback.Id;
var feedback = new Ghre_OpenClassFeedback() 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, var openClass = await Db.Queryable<Ghre_OpenClass>().Where(x => x.Id == openClassId).FirstAsync();
StaffId = App.User.StaffId, var feedback = new Ghre_OpenClassFeedback()
Source = "Trainee", {
EffectiveTime = DateTime.Now, OpenClassId = openClassId,
ExpiryTime = DateTime.MaxValue, SurveyId = id,
TeacherId = openClass.TeacherId, StaffId = App.User.StaffId,
CourseBeginTime = openClass.StartTime, Source = "Trainee",
CourseEndTime = openClass.EndTime, EffectiveTime = DateTime.Now,
CourseId = openClass.LinkId, ExpiryTime = DateTime.MaxValue,
Status = "N", TeacherId = openClass.TeacherId,
Score = 0 CourseBeginTime = openClass.StartTime,
}; CourseEndTime = openClass.EndTime,
feedbackId = await Db.Insertable(feedback).ExecuteReturnSnowflakeIdAsync(); 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); var entity = await base.QueryById(id);

Loading…
Cancel
Save