Commit 82707095 authored by 吴春's avatar 吴春

Merge branch 'master' of http://gitlab.oytour.com/Kui2/education

parents 2da3c2c5 fd3c08dd
using Edu.Model.Entity.EduTask; using Edu.Model.Entity.EduTask;
using Edu.Model.ViewModel.Course;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Text; using System.Text;
...@@ -133,7 +134,6 @@ namespace Edu.Model.ViewModel.EduTask ...@@ -133,7 +134,6 @@ namespace Edu.Model.ViewModel.EduTask
/// </summary> /// </summary>
public class AllChangePlanItem public class AllChangePlanItem
{ {
/// <summary> /// <summary>
/// 总课时 /// 总课时
/// </summary> /// </summary>
...@@ -178,49 +178,9 @@ namespace Edu.Model.ViewModel.EduTask ...@@ -178,49 +178,9 @@ namespace Edu.Model.ViewModel.EduTask
/// </summary> /// </summary>
public List<ClassTimeItem> DefaultTimeList { get; set; } public List<ClassTimeItem> DefaultTimeList { get; set; }
/// <summary> /// <summary>
/// 排课方式(1-周,2-月,3-固定日期,4-约课) /// 排课方式(1-周,2-月,3-固定日期,4-约课)
/// </summary> /// </summary>
public Common.Enum.Course.ClassStyleEnum ClassStyle { get; set; } public Common.Enum.Course.ClassStyleEnum ClassStyle { get; set; }
}
///<summary>
/// 上课时间配置项
/// </summary>
public class ClassTimeItem
{
/// <summary>
/// 上课日期【ClassStyle:1-周(1,2...);2和3(具体日期);4(暂无)】
/// </summary>
public List<string> DateList { get; set; }
/// <summary>
/// 具体上课时间
/// </summary>
public List<TimeItem> TimeList { get; set; }
}
/// <summary>
/// 上课时间对象
/// </summary>
public class TimeItem
{
/// <summary>
/// 开始时间
/// </summary>
public string StartTime { get; set; }
/// <summary>
/// 结束时间
/// </summary>
public string EndTime { get; set; }
/// <summary>
/// 消耗课时
/// </summary>
public decimal TimeHour { get; set; }
} }
} }
This diff is collapsed.
This diff is collapsed.
...@@ -76,10 +76,10 @@ WHERE 1=1 ...@@ -76,10 +76,10 @@ WHERE 1=1
{ {
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Room_ViewModel.Group_Id), query.Group_Id); builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Room_ViewModel.Group_Id), query.Group_Id);
} }
if (query.School_Id > 0) //if (query.School_Id > 0)
{ //{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Room_ViewModel.School_Id), query.School_Id); // builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Room_ViewModel.School_Id), query.School_Id);
} //}
if (!string.IsNullOrEmpty(query.RoomName)) if (!string.IsNullOrEmpty(query.RoomName))
{ {
builder.AppendFormat(" AND A.{0} LIKE @RoomName ", nameof(RB_Class_Room_ViewModel.RoomName)); builder.AppendFormat(" AND A.{0} LIKE @RoomName ", nameof(RB_Class_Room_ViewModel.RoomName));
......
...@@ -6,6 +6,7 @@ using System.Text; ...@@ -6,6 +6,7 @@ using System.Text;
using System.Linq; using System.Linq;
using Edu.Common.Enum.Course; using Edu.Common.Enum.Course;
using System.Threading.Tasks; using System.Threading.Tasks;
using Edu.Model.ViewModel.Course;
namespace Edu.Repository.EduTask namespace Edu.Repository.EduTask
{ {
...@@ -180,9 +181,7 @@ WHERE 1=1 ...@@ -180,9 +181,7 @@ WHERE 1=1
); );
} }
} }
} }
else if (model.ChangeType == 4)//取消课程 else if (model.ChangeType == 4)//取消课程
{ {
var oldPlanList = class_TimeRepository.GetClassTimeListRepository(new Edu.Model.ViewModel.Course.RB_Class_Time_ViewModel() var oldPlanList = class_TimeRepository.GetClassTimeListRepository(new Edu.Model.ViewModel.Course.RB_Class_Time_ViewModel()
...@@ -211,11 +210,11 @@ WHERE 1=1 ...@@ -211,11 +210,11 @@ WHERE 1=1
} }
if (deletePlanList != null && deletePlanList.Any()) if (deletePlanList != null && deletePlanList.Any())
{ {
builder.AppendFormat(" update RB_Class_Plan SET Status=1 where ClassPlanId in({0});", string.Join(",", deletePlanList.Select(x => x))); builder.AppendFormat(" UPDATE RB_Class_Plan SET Status=1 WHERE ClassPlanId IN({0});", string.Join(",", deletePlanList.Select(x => x)));
} }
if (deletePlanTimeList != null && deletePlanTimeList.Any()) if (deletePlanTimeList != null && deletePlanTimeList.Any())
{ {
builder.AppendFormat(" DELETE FROM rb_class_time where classtimeId in({0});", string.Join(",", deletePlanTimeList.Select(x => x))); builder.AppendFormat(" DELETE FROM rb_class_time WHERE classtimeId IN({0});", string.Join(",", deletePlanTimeList.Select(x => x)));
} }
} }
} }
...@@ -268,7 +267,7 @@ WHERE 1=1 ...@@ -268,7 +267,7 @@ WHERE 1=1
} }
//班级上课计划列表 //班级上课计划列表
List<Model.ViewModel.Course.RB_Class_Plan_ViewModel> classPlanList = new List<Model.ViewModel.Course.RB_Class_Plan_ViewModel>(); List<RB_Class_Plan_ViewModel> classPlanList = new List<RB_Class_Plan_ViewModel>();
if (allChangePlanModel.ClassHours > 0) if (allChangePlanModel.ClassHours > 0)
{ {
var srartDate = Convert.ToDateTime(allChangePlanModel.OpenTimeStr); var srartDate = Convert.ToDateTime(allChangePlanModel.OpenTimeStr);
...@@ -282,14 +281,14 @@ WHERE 1=1 ...@@ -282,14 +281,14 @@ WHERE 1=1
var newDate = srartDate.AddDays(i); var newDate = srartDate.AddDays(i);
foreach (var item in allChangePlanModel.WeekDayList) foreach (var item in allChangePlanModel.WeekDayList)
{ {
var planModel = new Model.ViewModel.Course.RB_Class_Plan_ViewModel() var planModel = new RB_Class_Plan_ViewModel()
{ {
ClassId = model.ClassId, ClassId = model.ClassId,
ClassPlanId = 0, ClassPlanId = 0,
ClassRoomId = allChangePlanModel.ClassRoomId, ClassRoomId = allChangePlanModel.ClassRoomId,
Group_Id = model.Group_Id, Group_Id = model.Group_Id,
School_Id = model.School_Id, School_Id = model.School_Id,
PlanTimeList = new List<Model.ViewModel.Course.RB_Class_Time_ViewModel>(), PlanTimeList = new List<RB_Class_Time_ViewModel>(),
TeacherId = allChangePlanModel.TeacherId, TeacherId = allChangePlanModel.TeacherId,
ClassDate = newDate ClassDate = newDate
}; };
...@@ -405,14 +404,14 @@ WHERE 1=1 ...@@ -405,14 +404,14 @@ WHERE 1=1
{ {
foreach (var item in allChangePlanModel.WeekDayList) foreach (var item in allChangePlanModel.WeekDayList)
{ {
var planModel = new Model.ViewModel.Course.RB_Class_Plan_ViewModel() var planModel = new RB_Class_Plan_ViewModel()
{ {
ClassId = model.ClassId, ClassId = model.ClassId,
ClassPlanId = 0, ClassPlanId = 0,
ClassRoomId = allChangePlanModel.ClassRoomId, ClassRoomId = allChangePlanModel.ClassRoomId,
Group_Id = model.Group_Id, Group_Id = model.Group_Id,
School_Id = model.School_Id, School_Id = model.School_Id,
PlanTimeList = new List<Model.ViewModel.Course.RB_Class_Time_ViewModel>(), PlanTimeList = new List<RB_Class_Time_ViewModel>(),
TeacherId = allChangePlanModel.TeacherId, TeacherId = allChangePlanModel.TeacherId,
ClassDate = Convert.ToDateTime(item) ClassDate = Convert.ToDateTime(item)
}; };
...@@ -433,7 +432,6 @@ WHERE 1=1 ...@@ -433,7 +432,6 @@ WHERE 1=1
Task.Run(() => Task.Run(() =>
{ {
if (oldPlanList != null && oldPlanList.Any())//删除剩余的排课日期和时间 if (oldPlanList != null && oldPlanList.Any())//删除剩余的排课日期和时间
{ {
string ids = string.Join(",", oldPlanList.Select(qitem => qitem.ClassPlanId)); string ids = string.Join(",", oldPlanList.Select(qitem => qitem.ClassPlanId));
...@@ -491,14 +489,14 @@ WHERE 1=1 ...@@ -491,14 +489,14 @@ WHERE 1=1
{ {
if (model.ChangeType == 2) if (model.ChangeType == 2)
{ {
builder.AppendFormat(" update RB_Class_Plan SET TeacherId={0} where DATE_FORMAT(ClassDate,'%Y-%m-%d')>=DATE_FORMAT('{1}','%Y-%m-%d')", allChangePlanModel.TeacherId, model.TakeEffectTime.Value.ToString("yyyy-MM-dd")); builder.AppendFormat(" UPDATE RB_Class_Plan SET TeacherId={0} WHERE DATE_FORMAT(ClassDate,'%Y-%m-%d')>=DATE_FORMAT('{1}','%Y-%m-%d')", allChangePlanModel.TeacherId, model.TakeEffectTime.Value.ToString("yyyy-MM-dd"));
string tIds = allChangePlanModel.TeacherId.ToString(); string tIds = allChangePlanModel.TeacherId.ToString();
var teacherList = teacherRepository.GetTeacherListRepository(new Model.ViewModel.User.RB_Teacher_ViewModel() { QTIds = tIds }); var teacherList = teacherRepository.GetTeacherListRepository(new Model.ViewModel.User.RB_Teacher_ViewModel() { QTIds = tIds });
logContent += string.Format("全局将讲师修改为【{0}】.", (teacherList?.Where(qitem => qitem.TId == allChangePlanModel.TeacherId)?.FirstOrDefault()?.TeacherName ?? "")); logContent += string.Format("全局将讲师修改为【{0}】.", (teacherList?.Where(qitem => qitem.TId == allChangePlanModel.TeacherId)?.FirstOrDefault()?.TeacherName ?? ""));
} }
else if (model.ChangeType == 3) else if (model.ChangeType == 3)
{ {
builder.AppendFormat(" update RB_Class_Plan SET ClassRoomId={0} where DATE_FORMAT(ClassDate,'%Y-%m-%d')>=DATE_FORMAT('{1}','%Y-%m-%d')", allChangePlanModel.ClassRoomId, model.TakeEffectTime.Value.ToString("yyyy-MM-dd")); builder.AppendFormat(" UPDATE RB_Class_Plan SET ClassRoomId={0} WHERE DATE_FORMAT(ClassDate,'%Y-%m-%d')>=DATE_FORMAT('{1}','%Y-%m-%d')", allChangePlanModel.ClassRoomId, model.TakeEffectTime.Value.ToString("yyyy-MM-dd"));
string roomIds = allChangePlanModel.ClassRoomId.ToString(); string roomIds = allChangePlanModel.ClassRoomId.ToString();
var roomList = class_RoomRepository.GetClassRoomListRepository(new Edu.Model.ViewModel.Course.RB_Class_Room_ViewModel() { QRoomIds = roomIds }); var roomList = class_RoomRepository.GetClassRoomListRepository(new Edu.Model.ViewModel.Course.RB_Class_Room_ViewModel() { QRoomIds = roomIds });
logContent += string.Format("全局将教室修改为【{0}】.", (roomList?.Where(qitem => qitem.RoomId == allChangePlanModel.ClassRoomId)?.FirstOrDefault()?.RoomName ?? "")); logContent += string.Format("全局将教室修改为【{0}】.", (roomList?.Where(qitem => qitem.RoomId == allChangePlanModel.ClassRoomId)?.FirstOrDefault()?.RoomName ?? ""));
...@@ -506,7 +504,7 @@ WHERE 1=1 ...@@ -506,7 +504,7 @@ WHERE 1=1
} }
else if (model.ChangeType == 4) else if (model.ChangeType == 4)
{ {
var oldPlanList = class_PlanRepository.GetClassPlanListRepository(new Edu.Model.ViewModel.Course.RB_Class_Plan_ViewModel() var oldPlanList = class_PlanRepository.GetClassPlanListRepository(new RB_Class_Plan_ViewModel()
{ {
ClassId = model.ClassId, ClassId = model.ClassId,
StartTime = model.TakeEffectTime.Value.ToString("yyyy-MM-dd") StartTime = model.TakeEffectTime.Value.ToString("yyyy-MM-dd")
...@@ -515,8 +513,8 @@ WHERE 1=1 ...@@ -515,8 +513,8 @@ WHERE 1=1
{ {
if (oldPlanList != null && oldPlanList.Any()) if (oldPlanList != null && oldPlanList.Any())
{ {
builder.AppendFormat(" update RB_Class_Plan SET Status=1 where ClassPlanId in({0});", string.Join(",", oldPlanList.Select(x => x.ClassPlanId))); builder.AppendFormat(" UPDATE RB_Class_Plan SET Status=1 WHERE ClassPlanId IN({0});", string.Join(",", oldPlanList.Select(x => x.ClassPlanId)));
builder.AppendFormat(" DELETE FROM rb_class_time where ClassPlanId in({0});", string.Join(",", oldPlanList.Select(x => x.ClassPlanId))); builder.AppendFormat(" DELETE FROM rb_class_time WHERE ClassPlanId IN({0});", string.Join(",", oldPlanList.Select(x => x.ClassPlanId)));
} }
} }
} }
...@@ -531,7 +529,7 @@ WHERE 1=1 ...@@ -531,7 +529,7 @@ WHERE 1=1
classLogRepository.AddClassLogRepository( classLogRepository.AddClassLogRepository(
new Model.Entity.Log.RB_Class_Log() new Model.Entity.Log.RB_Class_Log()
{ {
LogType = Common.Enum.Course.ClassLogTypeEnum.Class, LogType = ClassLogTypeEnum.Class,
LogContent = logContent, LogContent = logContent,
ClassId = model.ClassId, ClassId = model.ClassId,
Group_Id = model.Group_Id, Group_Id = model.Group_Id,
...@@ -551,13 +549,13 @@ WHERE 1=1 ...@@ -551,13 +549,13 @@ WHERE 1=1
/// <param name="classTimeList"></param> /// <param name="classTimeList"></param>
/// <param name="model"></param> /// <param name="model"></param>
/// <returns></returns> /// <returns></returns>
private decimal CalcDayClassHoursModule(List<TimeItem> timeList, List<Model.ViewModel.Course.RB_Class_Time_ViewModel> classTimeList, int ClassHourMinute, int BasicMinutes) private decimal CalcDayClassHoursModule(List<TimeItem> timeList, List<RB_Class_Time_ViewModel> classTimeList, int ClassHourMinute, int BasicMinutes)
{ {
decimal dayClassHours = 0; decimal dayClassHours = 0;
decimal dayMinutes = 0; decimal dayMinutes = 0;
foreach (var sItem in timeList) foreach (var sItem in timeList)
{ {
var timeModel = new Model.ViewModel.Course.RB_Class_Time_ViewModel() var timeModel = new RB_Class_Time_ViewModel()
{ {
StartTime = sItem.StartTime, StartTime = sItem.StartTime,
EndTime = sItem.EndTime, EndTime = sItem.EndTime,
...@@ -584,6 +582,5 @@ WHERE 1=1 ...@@ -584,6 +582,5 @@ WHERE 1=1
} }
return dayClassHours; return dayClassHours;
} }
} }
} }
\ No newline at end of file
...@@ -40,10 +40,10 @@ WHERE 1=1 ...@@ -40,10 +40,10 @@ WHERE 1=1
{ {
builder.AppendFormat(" AND a.{0}={1} ", nameof(RB_Account_ViewModel.AccountType), (int)query.AccountType); builder.AppendFormat(" AND a.{0}={1} ", nameof(RB_Account_ViewModel.AccountType), (int)query.AccountType);
} }
if (query.School_Id > 0) //if (query.School_Id > 0)
{ //{
builder.AppendFormat(" AND a.{0}={1} ", nameof(RB_Account_ViewModel.School_Id), query.School_Id); // builder.AppendFormat(" AND a.{0}={1} ", nameof(RB_Account_ViewModel.School_Id), query.School_Id);
} //}
if (query.Group_Id > 0) if (query.Group_Id > 0)
{ {
builder.AppendFormat(" AND a.{0}={1} ", nameof(RB_Account_ViewModel.Group_Id), query.Group_Id); builder.AppendFormat(" AND a.{0}={1} ", nameof(RB_Account_ViewModel.Group_Id), query.Group_Id);
......
...@@ -49,21 +49,18 @@ namespace Edu.WebApi.Controllers.EduTask ...@@ -49,21 +49,18 @@ namespace Edu.WebApi.Controllers.EduTask
MoveType = base.ParmJObj.GetInt("MoveType"), MoveType = base.ParmJObj.GetInt("MoveType"),
Remarks = base.ParmJObj.GetStringValue("Remarks") Remarks = base.ParmJObj.GetStringValue("Remarks")
}; };
if (model.ClassId <= 0) if (model.ClassId <= 0)
{ {
return ApiResult.ParamIsNull(message: "请选择要调整的班级!"); return ApiResult.ParamIsNull(message: "请选择要调整的班级!");
} }
var classModel = classModule.GetClassModule(model.ClassId); var classModel = classModule.GetClassModule(model.ClassId);
string receiptFile = string.Empty; string receiptFile = string.Empty;
try try
{ {
List<string> receiptFileList = Common.Plugin.JsonHelper.DeserializeObject<List<string>>(base.ParmJObj.GetStringValue("ReceiptFileList")); List<string> receiptFileList = JsonHelper.DeserializeObject<List<string>>(base.ParmJObj.GetStringValue("ReceiptFileList"));
if (receiptFileList == null || !receiptFileList.Any()) if (receiptFileList == null || !receiptFileList.Any())
{ {
receiptFile = ""; receiptFile = "";
//return ApiResult.Failed("附件必须上传");
} }
else else
{ {
...@@ -71,8 +68,8 @@ namespace Edu.WebApi.Controllers.EduTask ...@@ -71,8 +68,8 @@ namespace Edu.WebApi.Controllers.EduTask
} }
if (model.MoveType == 1) if (model.MoveType == 1)
{ {
model.OldChangePlanItemList = Common.Plugin.JsonHelper.DeserializeObject<List<ChangePlanItem>>(base.ParmJObj.GetStringValue("OldChangePlanItemList")); model.OldChangePlanItemList = JsonHelper.DeserializeObject<List<ChangePlanItem>>(base.ParmJObj.GetStringValue("OldChangePlanItemList"));
model.NewChangePlanItemList = Common.Plugin.JsonHelper.DeserializeObject<List<ChangePlanItem>>(base.ParmJObj.GetStringValue("NewChangePlanItemList")); model.NewChangePlanItemList = JsonHelper.DeserializeObject<List<ChangePlanItem>>(base.ParmJObj.GetStringValue("NewChangePlanItemList"));
} }
else else
{ {
...@@ -85,7 +82,6 @@ namespace Edu.WebApi.Controllers.EduTask ...@@ -85,7 +82,6 @@ namespace Edu.WebApi.Controllers.EduTask
} }
model.TakeEffectTime = Convert.ToDateTime(takeEffectTime); model.TakeEffectTime = Convert.ToDateTime(takeEffectTime);
} }
model.AllChangePlanModel = Common.Plugin.JsonHelper.DeserializeObject<AllChangePlanItem>(base.ParmJObj.GetStringValue("AllChangePlanItem")); model.AllChangePlanModel = Common.Plugin.JsonHelper.DeserializeObject<AllChangePlanItem>(base.ParmJObj.GetStringValue("AllChangePlanItem"));
} }
} }
...@@ -93,7 +89,9 @@ namespace Edu.WebApi.Controllers.EduTask ...@@ -93,7 +89,9 @@ namespace Edu.WebApi.Controllers.EduTask
{ {
Common.Plugin.LogHelper.Write(ex, "SetChangeClassPlan"); Common.Plugin.LogHelper.Write(ex, "SetChangeClassPlan");
} }
if (model.MoveType == 1)//固定日期 List<TimeItem> timeList = new List<TimeItem>();
//固定日期
if (model.MoveType == 1)
{ {
if (model.ChangeType == 1)//调课 if (model.ChangeType == 1)//调课
{ {
...@@ -101,6 +99,7 @@ namespace Edu.WebApi.Controllers.EduTask ...@@ -101,6 +99,7 @@ namespace Edu.WebApi.Controllers.EduTask
{ {
return ApiResult.Failed("排课原次数与现有次数不一致"); return ApiResult.Failed("排课原次数与现有次数不一致");
} }
} }
else if (model.ChangeType == 2) else if (model.ChangeType == 2)
{ {
...@@ -116,8 +115,31 @@ namespace Edu.WebApi.Controllers.EduTask ...@@ -116,8 +115,31 @@ namespace Edu.WebApi.Controllers.EduTask
return ApiResult.Failed("请选择教室"); return ApiResult.Failed("请选择教室");
} }
} }
//固定日期上课计划验证冲突
timeList = new List<TimeItem>();
foreach (var item in model.NewChangePlanItemList)
{
foreach (var subItem in item.PlanTimeList)
{
timeList.Add(new TimeItem
{
StartTime = Common.ConvertHelper.FormatDate(item.ClassDate) + " " + subItem.StartTime + ":00",
EndTime = Common.ConvertHelper.FormatDate(item.ClassDate) + " " + subItem.EndTime + ":00",
});
}
}
if (timeList != null && timeList.Count > 0)
{
//var objList = changeClassPlanModule.GetRepeatListModule(model.ClassId, model.NewChangePlanItemList, timeList);
//if (objList != null && objList.Count > 0)
//{
// return ApiResult.Failed("存在上课计划冲突的数据!", data: objList);
//}
}
} }
else //全局修改 //全局修改
else
{ {
if (model.ChangeType == 1) if (model.ChangeType == 1)
{ {
...@@ -203,6 +225,11 @@ namespace Edu.WebApi.Controllers.EduTask ...@@ -203,6 +225,11 @@ namespace Edu.WebApi.Controllers.EduTask
{ {
return ApiResult.Failed("班级信息不存在"); return ApiResult.Failed("班级信息不存在");
} }
//var dateList = changeClassPlanModule.GetAllDateAndTimeRepeatListModule(model.ClassId, model.AllChangePlanModel,base.UserInfo);
//if (dateList != null && dateList.Count > 0)
//{
// return ApiResult.Failed("存在上课计划冲突的数据!", data: dateList);
//}
} }
else if (model.ChangeType == 2) else if (model.ChangeType == 2)
{ {
...@@ -210,6 +237,11 @@ namespace Edu.WebApi.Controllers.EduTask ...@@ -210,6 +237,11 @@ namespace Edu.WebApi.Controllers.EduTask
{ {
return ApiResult.Failed("请选择老师"); return ApiResult.Failed("请选择老师");
} }
//var teacherlist = changeClassPlanModule.GetAllRepeatListModule(model.ClassId, Common.ConvertHelper.FormatDate(model.TakeEffectTime), TeacherId: model.AllChangePlanModel.TeacherId);
//if (teacherlist != null && teacherlist.Count > 0)
//{
// return ApiResult.Failed("存在上课计划冲突的数据!", data: teacherlist);
//}
} }
else if (model.ChangeType == 3) else if (model.ChangeType == 3)
{ {
...@@ -217,6 +249,11 @@ namespace Edu.WebApi.Controllers.EduTask ...@@ -217,6 +249,11 @@ namespace Edu.WebApi.Controllers.EduTask
{ {
return ApiResult.Failed("请选择教室"); return ApiResult.Failed("请选择教室");
} }
//var classroomlist = changeClassPlanModule.GetAllRepeatListModule(model.ClassId, Common.ConvertHelper.FormatDate(model.TakeEffectTime), ClassRoomId: model.AllChangePlanModel.ClassRoomId);
//if (classroomlist != null && classroomlist.Count > 0)
//{
// return ApiResult.Failed("存在上课计划冲突的数据!", data: classroomlist);
//}
} }
} }
if (model.OldChangePlanItemList != null && model.OldChangePlanItemList.Any()) if (model.OldChangePlanItemList != null && model.OldChangePlanItemList.Any())
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment