master
xiaochanghai 11 months ago
parent 030fdd1931
commit 1e58c8936d
  1. 3
      Tiobon.Core.Model/Base/Ghre/Ghre_Course.Dto.Base.cs
  2. 3
      Tiobon.Core.Model/Models/Ghre/Ghre_Course.cs
  3. 47
      Tiobon.Core.Services/Ghre/Ghre_CourseServices.cs
  4. 3
      Tiobon.Core.Services/Ghre/Ghre_ExamRecordServices.cs
  5. 7
      Tiobon.Core.Services/Ghre/Ghre_ExamServices.cs

@ -53,8 +53,7 @@ namespace Tiobon.Core.Model.Models
/// <summary>
/// 课件ID
/// </summary>
[Display(Name = "CourseWareId"), Description("课件ID"), MaxLength(2000, ErrorMessage = "课件ID 不能超过 2000 个字符")]
public string CourseWareId { get; set; }
public long? CourseWareId { get; set; }
/// <summary>
/// 标准课时

@ -55,8 +55,7 @@ namespace Tiobon.Core.Model.Models
/// <summary>
/// 课件ID
/// </summary>
[Display(Name = "CourseWareId"), Description("课件ID"), MaxLength(2000, ErrorMessage = "课件ID 不能超过 2000 个字符")]
public string CourseWareId { get; set; }
public long? CourseWareId { get; set; }
/// <summary>
/// 标准课时

@ -15,6 +15,7 @@ using Tiobon.Core.Common.UserManager;
using Tiobon.Core.Common.Helper;
using AgileObjects.AgileMapper;
using static Tiobon.Core.Model.Consts;
using MySqlX.XDevAPI.Common;
namespace Tiobon.Core.Services;
@ -379,7 +380,28 @@ public class Ghre_CourseServices : BaseServices<Ghre_Course, Ghre_CourseDto, Ins
//entity.SchoolId = teacher.SchoolId;
}
}
return await base.Add(entity);
var result = await base.Add(entity);
#region 课程ID 同步至课件
if (!entity.CourseWareId.IsNull())
{
var ware = await Db.Queryable<Ghre_CourseWare>().FirstAsync(x => x.Id == entity.CourseWareId);
if (!string.IsNullOrWhiteSpace(ware.CourseIds))
{
var courseIds2 = JsonConvert.DeserializeObject<List<long>>(ware.CourseIds);
if (!courseIds2.Any(x => x == result))
{
courseIds2.Add(result);
ware.CourseIds = JsonConvert.SerializeObject(courseIds2);
await Db.Updateable<Ghre_CourseWare>().SetColumns(it => it.CourseIds == ware.CourseIds).Where(it => it.Id == ware.Id).ExecuteCommandAsync();
}
}
}
#endregion
return result;
}
public override async Task<bool> Update(long Id, EditGhre_CourseInput editModel)
@ -420,7 +442,28 @@ public class Ghre_CourseServices : BaseServices<Ghre_Course, Ghre_CourseDto, Ins
}
editModel.IsOPen = editModel.IsOPenLabel;
return await base.Update(Id, editModel);
var result = await base.Update(Id, editModel);
#region 课程ID 同步至课件
if (!editModel.CourseWareId.IsNull())
{
var ware = await Db.Queryable<Ghre_CourseWare>().FirstAsync(x => x.Id == editModel.CourseWareId);
if (!string.IsNullOrWhiteSpace(ware.CourseIds))
{
var courseIds2 = JsonConvert.DeserializeObject<List<long>>(ware.CourseIds);
if (!courseIds2.Any(x => x == Id))
{
courseIds2.Add(Id);
ware.CourseIds = JsonConvert.SerializeObject(courseIds2);
await Db.Updateable<Ghre_CourseWare>().SetColumns(it => it.CourseIds == ware.CourseIds).Where(it => it.Id == ware.Id).ExecuteCommandAsync();
}
}
}
#endregion
return result;
}
#region 获取通用列表下拉

@ -377,6 +377,7 @@ public class Ghre_ExamRecordServices : BaseServices<Ghre_ExamRecord, Ghre_ExamRe
// }
//}
var staffId = GetStaffId();
if (await Db.Queryable<Ghre_StudyRecord>().AnyAsync(x => x.Id == id))
{
var examRecord = await Db.Queryable<Ghre_ExamRecord>().FirstAsync(x => x.StudyRecordId == id);
@ -429,7 +430,7 @@ public class Ghre_ExamRecordServices : BaseServices<Ghre_ExamRecord, Ghre_ExamRe
if (examRecordId == 0) examRecordId = id;
var records = await QueryFilterPage(body, $"Id='{examRecordId}'");
var records = await QueryFilterPage(body, $"Id='{examRecordId}' AND StaffId='{staffId}'");
if (!records.result.DT_TableDataT1.Any())
return ServiceResult<QueryExam>.OprateFailed("无效的考试ID!");

@ -18,7 +18,6 @@ using Tiobon.Core.Common.DB.Dapper;
using Tiobon.Core.Common.Helper;
using System.Data;
using static Tiobon.Core.Model.Consts;
using Org.BouncyCastle.Crypto;
namespace Tiobon.Core.Services;
@ -1124,7 +1123,7 @@ public class Ghre_ExamServices : BaseServices<Ghre_Exam, Ghre_ExamDto, InsertGhr
await _ghre_ExamStaffServices.Add(insertStaffs);
Db.Updateable<Ghre_ExamPaper>().SetColumns(it => it.LinkTimes == it.LinkTimes + 1).Where(it => it.Id == insert.ExamPaperId).ExecuteCommand();
await Db.Updateable<Ghre_ExamPaper>().SetColumns(it => it.LinkTimes == it.LinkTimes + 1).Where(it => it.Id == insert.ExamPaperId).ExecuteCommandAsync();
return ServiceResult<long>.OprateSuccess("添加成功!", id);
}
@ -1133,8 +1132,8 @@ public class Ghre_ExamServices : BaseServices<Ghre_Exam, Ghre_ExamDto, InsertGhr
var exam = await base.QueryById(id);
if (exam.ExamPaperId != pageData.ExamPaperId)
{
Db.Updateable<Ghre_ExamPaper>().SetColumns(it => it.LinkTimes == it.LinkTimes - 1).Where(it => it.Id == exam.ExamPaperId && it.LinkTimes > 0).ExecuteCommand();
Db.Updateable<Ghre_ExamPaper>().SetColumns(it => it.LinkTimes == it.LinkTimes + 1).Where(it => it.Id == pageData.ExamPaperId).ExecuteCommand();
await Db.Updateable<Ghre_ExamPaper>().SetColumns(it => it.LinkTimes == it.LinkTimes - 1).Where(it => it.Id == exam.ExamPaperId && it.LinkTimes > 0).ExecuteCommandAsync();
await Db.Updateable<Ghre_ExamPaper>().SetColumns(it => it.LinkTimes == it.LinkTimes + 1).Where(it => it.Id == pageData.ExamPaperId).ExecuteCommandAsync();
}
var insert = Mapper.Map(pageData).ToANew<EditGhre_ExamInput>();
await base.Update(id, insert);

Loading…
Cancel
Save