Commit e6d5154e authored by liudong1993's avatar liudong1993

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

parents 9d67ccb2 de9a3ccb
...@@ -117,7 +117,7 @@ namespace Edu.Model.Entity.Course ...@@ -117,7 +117,7 @@ namespace Edu.Model.Entity.Course
public decimal RenewSlPrice { get; set; } public decimal RenewSlPrice { get; set; }
/// <summary> /// <summary>
/// 上架端口(1-内部销售,2-学员App,3-网课端) /// 上架端口(1-内部销售,2-学员App,3-网课端,4-小程序
/// </summary> /// </summary>
public string Saleplat { get; set; } public string Saleplat { get; set; }
......
...@@ -247,5 +247,11 @@ namespace Edu.Model.ViewModel.Course ...@@ -247,5 +247,11 @@ namespace Edu.Model.ViewModel.Course
/// 上课计划id /// 上课计划id
/// </summary> /// </summary>
public int ClassPlanId { get; set; } public int ClassPlanId { get; set; }
/// <summary>
/// 合同总课时
/// </summary>
public int ContractTotalHours { get; set; }
} }
} }
\ No newline at end of file
using Edu.AOP.CustomerAttribute; using Edu.AOP.CustomerAttribute;
using Edu.Cache.User;
using Edu.Common.Enum; using Edu.Common.Enum;
using Edu.Common.Enum.Course; using Edu.Common.Enum.Course;
using Edu.Common.Plugin; using Edu.Common.Plugin;
...@@ -1279,7 +1280,7 @@ namespace Edu.Module.Course ...@@ -1279,7 +1280,7 @@ namespace Edu.Module.Course
/// </summary> /// </summary>
/// <param name="classId">班级编号</param> /// <param name="classId">班级编号</param>
/// <returns></returns> /// <returns></returns>
public object GetClassStudentListModule(int classId, int school_Id, int group_Id, int ClassTimeId, int QEffectStatus = 0) public object GetClassStudentListModule(int classId, int school_Id, int group_Id, int ClassTimeId, int QEffectStatus = 0,int QNoFinish=0)
{ {
List<object> list = new List<object>(); List<object> list = new List<object>();
var orderStudentList = order_GuestRepository.GetOrderGuestListRepository(new RB_Order_Guest_ViewModel() var orderStudentList = order_GuestRepository.GetOrderGuestListRepository(new RB_Order_Guest_ViewModel()
...@@ -1302,6 +1303,10 @@ namespace Edu.Module.Course ...@@ -1302,6 +1303,10 @@ namespace Edu.Module.Course
var classTimeModel = class_TimeRepository.GetClassTimeList_V2(new RB_Class_Time_ViewModel { ClassTimeId = ClassTimeId, Group_Id = group_Id }).FirstOrDefault(); var classTimeModel = class_TimeRepository.GetClassTimeList_V2(new RB_Class_Time_ViewModel { ClassTimeId = ClassTimeId, Group_Id = group_Id }).FirstOrDefault();
orderStudentList = orderStudentList.Where(x => x.GuestState == 1 || x.GuestState == 6 || ((x.GuestState == 5 || x.GuestState == 7) && x.ChangeEffectTime.HasValue && Convert.ToDateTime(Common.ConvertHelper.FormatDate(x.ChangeEffectTime)) >= Convert.ToDateTime(Common.ConvertHelper.FormatDate(classTimeModel.NewPlanDateTime)))).ToList(); orderStudentList = orderStudentList.Where(x => x.GuestState == 1 || x.GuestState == 6 || ((x.GuestState == 5 || x.GuestState == 7) && x.ChangeEffectTime.HasValue && Convert.ToDateTime(Common.ConvertHelper.FormatDate(x.ChangeEffectTime)) >= Convert.ToDateTime(Common.ConvertHelper.FormatDate(classTimeModel.NewPlanDateTime)))).ToList();
} }
if (QNoFinish == 1)
{
orderStudentList = orderStudentList.Where(qitem => qitem.GuestState == 1&&(qitem.TotalHours-qitem.CompleteHours)>0).ToList();
}
if (orderStudentList != null && orderStudentList.Count > 0) if (orderStudentList != null && orderStudentList.Count > 0)
{ {
foreach (var item in orderStudentList) foreach (var item in orderStudentList)
...@@ -1321,6 +1326,8 @@ namespace Edu.Module.Course ...@@ -1321,6 +1326,8 @@ namespace Edu.Module.Course
CreateTimeStr = Common.ConvertHelper.FormatTime(item.CreateTime), CreateTimeStr = Common.ConvertHelper.FormatTime(item.CreateTime),
item.Mobile, item.Mobile,
item.OrderId, item.OrderId,
EnterName= UserReidsCache.GetUserLoginInfo(item.EnterID)?.AccountName??"",
item.ContractTotalHours,
item.TotalHours, item.TotalHours,
item.CompleteHours, item.CompleteHours,
item.ValidClassHours, item.ValidClassHours,
......
...@@ -157,7 +157,13 @@ namespace Edu.Module.Course ...@@ -157,7 +157,13 @@ namespace Edu.Module.Course
var amodel = alist.Where(x => x.Id == item.CreateBy).FirstOrDefault(); var amodel = alist.Where(x => x.Id == item.CreateBy).FirstOrDefault();
item.CreateByName = amodel?.AccountName ?? ""; item.CreateByName = amodel?.AccountName ?? "";
item.CreateByPhoto = amodel?.UserIcon ?? ""; item.CreateByPhoto = amodel?.UserIcon ?? "";
if (item.Status == 1)
if (item.Status == 0)
{
item.SchoolStatusStr = "草稿";
item.AdminStatusStr = "草稿";
}
else if (item.Status == 1)
{ {
item.SchoolStatusStr = "待审核"; item.SchoolStatusStr = "待审核";
item.AdminStatusStr = "待审核"; item.AdminStatusStr = "待审核";
...@@ -218,6 +224,91 @@ namespace Edu.Module.Course ...@@ -218,6 +224,91 @@ namespace Edu.Module.Course
} }
/// <summary>
/// 获取合同分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="count"></param>
/// <param name="dmodel"></param>
/// <returns></returns>
public List<RB_Education_Contract_ViewModel> GetEducationContractPageListModule_V3(int pageIndex, int pageSize, out long count, RB_Education_Contract_ViewModel dmodel)
{
var list = education_ContractRepository.GetEducationContractPageListRepository(pageIndex, pageSize, out count, dmodel);
if (list != null && list.Count > 0)
{
var userIds = string.Join(",", list.Select(x => x.CreateBy).Distinct());
var alist = accountRepository.GetAccountListExtRepository(new Model.ViewModel.User.RB_Account_ViewModel() { QIds = userIds });
foreach (var item in list)
{
var amodel = alist.Where(x => x.Id == item.CreateBy).FirstOrDefault();
item.CreateByName = amodel?.AccountName ?? "";
item.CreateByPhoto = amodel?.UserIcon ?? "";
if (item.Status == 0)
{
item.SchoolStatusStr = "草稿";
item.AdminStatusStr = "草稿";
}
else if (item.Status == 1)
{
item.SchoolStatusStr = "待审核";
item.AdminStatusStr = "待审核";
}
else if (item.Status == 2)
{
item.SchoolStatusStr = "审核通过";
item.AdminStatusStr = "审核通过";
}
else if (item.Status == 3)
{
if (item.AuditEmpId > 0 && item.SchoolManageEmpId > 0)
{
if (item.SchoolManageAuditDate.HasValue)
{
item.SchoolStatusStr = "审核通过";
item.AdminStatusStr = "驳回";
}
else
{
if (item.AuditDate > item.SchoolManageAuditDate)
{
item.SchoolStatusStr = "审核通过";
item.AdminStatusStr = "驳回";
}
else
{
item.SchoolStatusStr = "驳回";
item.AdminStatusStr = "";
}
}
}
else if (item.SchoolManageEmpId > 0)
{
item.SchoolStatusStr = "驳回";
item.AdminStatusStr = "";
}
else
{
item.SchoolStatusStr = "";
item.AdminStatusStr = "驳回";
}
}
else if (item.Status == 4)
{
item.SchoolStatusStr = "合同已取消";
item.AdminStatusStr = "合同已取消";
}
else if (item.Status == 5)
{
item.SchoolStatusStr = "审核通过";
item.AdminStatusStr = "待审核";
}
}
}
return list;
}
/// <summary> /// <summary>
/// 获取分页列表 /// 获取分页列表
...@@ -240,7 +331,12 @@ namespace Edu.Module.Course ...@@ -240,7 +331,12 @@ namespace Edu.Module.Course
var amodel = alist.Where(x => x.Id == item.CreateBy).FirstOrDefault(); var amodel = alist.Where(x => x.Id == item.CreateBy).FirstOrDefault();
item.CreateByName = amodel?.AccountName ?? ""; item.CreateByName = amodel?.AccountName ?? "";
item.CreateByPhoto = amodel?.UserIcon ?? ""; item.CreateByPhoto = amodel?.UserIcon ?? "";
if (item.Status == 1) if (item.Status == 0)
{
item.SchoolStatusStr = "草稿";
item.AdminStatusStr = "草稿";
}
else if (item.Status == 1)
{ {
item.SchoolStatusStr = "待审核"; item.SchoolStatusStr = "待审核";
item.AdminStatusStr = "待审核"; item.AdminStatusStr = "待审核";
......
...@@ -97,7 +97,14 @@ namespace Edu.Repository.Course ...@@ -97,7 +97,14 @@ namespace Edu.Repository.Course
} }
if (demodel.Status >= 0) if (demodel.Status >= 0)
{ {
where += $@" AND {nameof(RB_Education_Contract_ViewModel.Status)} ={demodel.Status}"; if (demodel.Status == 5)
{
where += $@" AND {nameof(RB_Education_Contract_ViewModel.Status)} in(2,5)";
}
else
{
where += $@" AND {nameof(RB_Education_Contract_ViewModel.Status)} ={demodel.Status}";
}
} }
} }
string sql = $@" SELECT * FROM RB_Education_Contract WHERE {where} ORDER BY Id DESC "; string sql = $@" SELECT * FROM RB_Education_Contract WHERE {where} ORDER BY Id DESC ";
...@@ -322,7 +329,8 @@ left join {datebaseStr}.rb_tradeway t on f.FrID = t.FinanceId ...@@ -322,7 +329,8 @@ left join {datebaseStr}.rb_tradeway t on f.FrID = t.FinanceId
{ {
where += $@" AND {nameof(RB_Education_Contract_ViewModel.Status)} in( {demodel.SelectEexamineStatus})"; where += $@" AND {nameof(RB_Education_Contract_ViewModel.Status)} in( {demodel.SelectEexamineStatus})";
} }
else { else
{
where += $@" AND {nameof(RB_Education_Contract_ViewModel.Status)} NOT IN(0,4) "; where += $@" AND {nameof(RB_Education_Contract_ViewModel.Status)} NOT IN(0,4) ";
} }
//if (demodel.IsAduit == 0) //if (demodel.IsAduit == 0)
...@@ -351,6 +359,79 @@ left join {datebaseStr}.rb_tradeway t on f.FrID = t.FinanceId ...@@ -351,6 +359,79 @@ left join {datebaseStr}.rb_tradeway t on f.FrID = t.FinanceId
return GetPage<RB_Education_Contract_ViewModel>(pageIndex, pageSize, out rowsCount, sql, parameters).ToList(); return GetPage<RB_Education_Contract_ViewModel>(pageIndex, pageSize, out rowsCount, sql, parameters).ToList();
} }
/// <summary>
/// 获取分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="demodel"></param>
/// <param name="orderIds"></param>
/// <returns></returns>
public List<RB_Education_Contract_ViewModel> GetEducationContractPageListRepository_V3(int pageIndex, int pageSize, out long rowsCount, RB_Education_Contract_ViewModel demodel)
{
DynamicParameters parameters = new DynamicParameters();
string where = $@" 1=1";
if (demodel.Group_Id > 0)
{
where += $@" AND {nameof(RB_Education_Contract_ViewModel.Group_Id)} ={demodel.Group_Id}";
}
if (demodel.School_Id > 0)
{
where += $@" AND {nameof(RB_Education_Contract_ViewModel.School_Id)} ={demodel.School_Id}";
}
if (demodel.OrderId > 0)
{
where += $@" AND {nameof(RB_Education_Contract_ViewModel.OrderId)} ={demodel.OrderId}";
}
if (demodel.CType > 0)
{
where += $@" AND {nameof(RB_Education_Contract_ViewModel.CType)} ={(int)demodel.CType}";
}
if (!string.IsNullOrEmpty(demodel.ContractNo))
{
where += $@" AND {nameof(RB_Education_Contract_ViewModel.ContractNo)} LIKE @ContractNo ";
parameters.Add("ContractNo", "%" + demodel.ContractNo.Trim() + "%");
}
if (!string.IsNullOrEmpty(demodel.StudentName))
{
where += $@" AND {nameof(RB_Education_Contract_ViewModel.StudentName)} LIKE @StudentName ";
parameters.Add("StudentName", "%" + demodel.StudentName.Trim() + "%");
}
if (demodel.IsAduit == 1)
{
if (demodel.Status >= 0)
{
if (demodel.Status == 5)
{
where += $@" AND {nameof(RB_Education_Contract_ViewModel.Status)} in( 5,2)";
}
else
{
where += $@" AND {nameof(RB_Education_Contract_ViewModel.Status)} ={demodel.Status}";
}
}
else
{
where += $@" AND {nameof(RB_Education_Contract_ViewModel.Status)} NOT IN(0,4) ";
}
}
else
{
if (demodel.CreateBy > 0)
{
where += $@" AND {nameof(RB_Education_Contract_ViewModel.CreateBy)} ={demodel.CreateBy}";
}
if (demodel.Status >= 0)
{
where += $@" AND {nameof(RB_Education_Contract_ViewModel.Status)} ={demodel.Status}";
}
}
string sql = $@" SELECT * FROM RB_Education_Contract WHERE {where} ORDER BY Id DESC ";
return GetPage<RB_Education_Contract_ViewModel>(pageIndex, pageSize, out rowsCount, sql, parameters).ToList();
}
} }
} }
...@@ -114,17 +114,17 @@ namespace Edu.Repository.Course ...@@ -114,17 +114,17 @@ namespace Edu.Repository.Course
string sql = $@" string sql = $@"
SELECT A.*,IFNULL(B.JoinType,0) AS JoinType,IFNULL(B.TargetJoinType,0) AS TargetJoinType,IFNULL(B.StartClassHours,0) AS StartClassHours SELECT A.*,IFNULL(B.JoinType,0) AS JoinType,IFNULL(B.TargetJoinType,0) AS TargetJoinType,IFNULL(B.StartClassHours,0) AS StartClassHours
,IFNULL(C.CourseName,'') AS CourseName,B.EffectStatus,B.EffectTime,B.UpOrderId,B.OrderType,B.CourseId,B.IsRenewOrder,B.RenewOrderId ,IFNULL(C.CourseName,'') AS CourseName,B.EffectStatus,B.EffectTime,B.UpOrderId,B.OrderType,B.CourseId,B.IsRenewOrder,B.RenewOrderId,B.EnterID
,sc.StopClassEffectTime,B.SourceOrderId,B.TargetOrderId ,sc.StopClassEffectTime,B.SourceOrderId,B.TargetOrderId,IFNULL(D.FirstClassHours,0)+IFNULL(D.SecondClassHours,0)+IFNULL(D.ThirdClassHours,0) AS ContractTotalHours
FROM RB_Order_Guest AS A LEFT JOIN rb_order AS B ON A.OrderId=B.OrderId FROM RB_Order_Guest AS A LEFT JOIN rb_order AS B ON A.OrderId=B.OrderId
LEFT JOIN rb_course AS C ON (B.CourseId=C.CourseId AND B.CourseId>0 AND B.OrderType=1) LEFT JOIN rb_course AS C ON (B.CourseId=C.CourseId AND B.CourseId>0 AND B.OrderType=1)
LEFT JOIN (SELECT OrderGuestId,MAX(TakeEffectTime) as StopClassEffectTime from rb_student_stopclass where IsAuditThrough=1 GROUP BY OrderGuestId) as sc on sc.OrderGuestId=a.Id LEFT JOIN (SELECT OrderGuestId,MAX(TakeEffectTime) as StopClassEffectTime from rb_student_stopclass where IsAuditThrough=1 GROUP BY OrderGuestId) as sc on sc.OrderGuestId=a.Id
LEFT JOIN rb_education_contract AS D ON A.OrderId=D.OrderId AND A.Id=D.GuestId AND D.IsSystemUse=1
WHERE 1=1 and A.Status=0 {where}"; WHERE 1=1 and A.Status=0 {where}";
return Get<RB_Order_Guest_ViewModel>(sql).ToList(); return Get<RB_Order_Guest_ViewModel>(sql).ToList();
} }
/// <summary> /// <summary>
/// 获取分页列表 /// 获取分页列表
/// </summary> /// </summary>
......
...@@ -107,7 +107,7 @@ WHERE 1=1 ...@@ -107,7 +107,7 @@ WHERE 1=1
{ {
//待我审批 //待我审批
case Common.Enum.Course.EduReceiptConditionEnum.WaitAgree: case Common.Enum.Course.EduReceiptConditionEnum.WaitAgree:
builder.AppendFormat(" AND EXISTS (SELECT 1 FROM rb_education_record WHERE ConditionId=A.Id AND AuditStatus=1 AND AuditEmId={0}) ", query.CreateBy); builder.AppendFormat(" AND A.VerifyStatus NOT IN(6) AND EXISTS (SELECT 1 FROM rb_education_record WHERE ConditionId=A.Id AND AuditStatus=1 AND AuditEmId={0}) ", query.CreateBy);
break; break;
//已审批的 //已审批的
case Common.Enum.Course.EduReceiptConditionEnum.Agree: case Common.Enum.Course.EduReceiptConditionEnum.Agree:
......
...@@ -104,6 +104,14 @@ WHERE 1=1 AND A.Status=0 AND A.Id IN(SELECT Action_Id FROM rb_role_functionpermi ...@@ -104,6 +104,14 @@ WHERE 1=1 AND A.Status=0 AND A.Id IN(SELECT Action_Id FROM rb_role_functionpermi
/// <returns></returns> /// <returns></returns>
public bool CheckUserFunctionRepository(string actionCode, string postIds) public bool CheckUserFunctionRepository(string actionCode, string postIds)
{ {
if (string.IsNullOrEmpty(actionCode))
{
return false;
}
if (string.IsNullOrEmpty(postIds))
{
return false;
}
int result = 0; int result = 0;
StringBuilder builder = new StringBuilder(); StringBuilder builder = new StringBuilder();
builder.AppendFormat(@" builder.AppendFormat(@"
......
...@@ -726,8 +726,8 @@ namespace Edu.WebApi.Controllers.Course ...@@ -726,8 +726,8 @@ namespace Edu.WebApi.Controllers.Course
var classId = base.ParmJObj.GetInt("ClassId"); var classId = base.ParmJObj.GetInt("ClassId");
var schoolId = 0; var schoolId = 0;
int QEffectStatus = base.ParmJObj.GetInt("QEffectStatus"); int QEffectStatus = base.ParmJObj.GetInt("QEffectStatus");
int QNoFinish = base.ParmJObj.GetInt("QNoFinish");
var data = classModule.GetClassStudentListModule(classId, schoolId, base.UserInfo.Group_Id, 0, QEffectStatus: QEffectStatus); var data = classModule.GetClassStudentListModule(classId, schoolId, base.UserInfo.Group_Id, 0, QEffectStatus: QEffectStatus, QNoFinish: QNoFinish);
return ApiResult.Success(data: data); return ApiResult.Success(data: data);
} }
......
...@@ -110,7 +110,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -110,7 +110,7 @@ namespace Edu.WebApi.Controllers.Course
}; };
dmodel.Group_Id = userInfo.Group_Id; dmodel.Group_Id = userInfo.Group_Id;
dmodel.CreateBy = userInfo.Id; dmodel.CreateBy = userInfo.Id;
var list = educationContractModule.GetEducationContractPageListModule(pageModel.PageIndex, pageModel.PageSize, out long count, dmodel); var list = educationContractModule.GetEducationContractPageListModule_V3(pageModel.PageIndex, pageModel.PageSize, out long count, dmodel);
pageModel.Count = Convert.ToInt32(count); pageModel.Count = Convert.ToInt32(count);
pageModel.PageData = list.Select(x => new pageModel.PageData = list.Select(x => new
{ {
......
...@@ -85,6 +85,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -85,6 +85,7 @@ namespace Edu.WebApi.Controllers.Course
item.ClassNo, item.ClassNo,
item.CouseId, item.CouseId,
item.FinishTimeStr, item.FinishTimeStr,
item.OrderStudentCount,
}); });
} }
pageModel.Count = rowsCount; pageModel.Count = rowsCount;
......
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