Commit 267ac48f authored by liudong1993's avatar liudong1993

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

parents d62bbc93 e3e32117
......@@ -351,5 +351,10 @@ namespace Edu.Model.Entity.Course
/// 适配上课时段ID (滚动开班)
/// </summary>
public int CourseTimeId { get; set; }
/// <summary>
/// 开发题库等级[多选,逗号分割]
/// </summary>
public string OpenBankLevel { get; set; }
}
}
\ No newline at end of file
......@@ -88,5 +88,10 @@ namespace Edu.Model.Entity.Exam
/// 是否复习
/// </summary>
public int IsReview { get; set; }
/// <summary>
/// 测评次数
/// </summary>
public int Times { get; set; }
}
}
......@@ -211,5 +211,15 @@ namespace Edu.Model.Entity.User
/// 创建时间
/// </summary>
public DateTime CreateTime { get; set; }
/// <summary>
/// 语培订单待收金额
/// </summary>
public decimal OrderNotMoney { get; set; }
/// <summary>
/// 留学订单待收金额
/// </summary>
public decimal StudyOrderNotMoney { get; set; }
}
}
......@@ -181,5 +181,15 @@ namespace Edu.Model.Entity.User
/// 创建时间
/// </summary>
public DateTime CreateTime { get; set; }
/// <summary>
/// 语培订单待收金额
/// </summary>
public decimal OrderNotMoney { get; set; }
/// <summary>
/// 留学订单待收金额
/// </summary>
public decimal StudyOrderNotMoney { get; set; }
}
}
......@@ -211,5 +211,15 @@ namespace Edu.Model.Entity.User
/// 创建时间
/// </summary>
public DateTime CreateTime { get; set; }
/// <summary>
/// 语培订单待收金额
/// </summary>
public decimal OrderNotMoney { get; set; }
/// <summary>
/// 留学订单待收金额
/// </summary>
public decimal StudyOrderNotMoney { get; set; }
}
}
......@@ -193,5 +193,15 @@ namespace Edu.Model.ViewModel.Course
/// 是否查询有上架(1-是)
/// </summary>
public int IsQuerySalePlat { get; set; }
/// <summary>
/// 开放题库等级列表
/// </summary>
public List<int> OpenBankLevelList { get; set; }
/// <summary>
/// 开发题库名称
/// </summary>
public List<string> OpenBankLevelNameList { get; set; }
}
}
\ No newline at end of file
......@@ -26,5 +26,10 @@ namespace Edu.Model.ViewModel.User
return Common.ConvertHelper.FormatDate2(this.Date);
}
}
/// <summary>
/// 查询待收金额不为0的数据
/// </summary>
public int IsQueryNotMoney { get; set; }
}
}
......@@ -25,5 +25,10 @@ namespace Edu.Model.ViewModel.User
return Common.ConvertHelper.FormatDate2(this.Date);
}
}
/// <summary>
/// 查询待收金额不为0的数据
/// </summary>
public int IsQueryNotMoney { get; set; }
}
}
......@@ -26,6 +26,11 @@ namespace Edu.Model.ViewModel.User
return Common.ConvertHelper.FormatDate2(this.Date);
}
}
/// <summary>
/// 查询待收金额不为0的数据
/// </summary>
public int IsQueryNotMoney { get; set; }
}
/// <summary>
......
......@@ -410,5 +410,10 @@ namespace Edu.Model.ViewModel.User
/// 客户状态(1-有效,2-无效)
/// </summary>
public int QStudentStatus { get; set; }
/// <summary>
/// 开发题库
/// </summary>
public string OpenBankLevel { get; set; }
}
}
\ No newline at end of file
......@@ -19,6 +19,7 @@ using System.Linq;
using System.Text.RegularExpressions;
using VT.FW.DB;
using Edu.Repository.Grade;
using Edu.Common.Enum.Question;
namespace Edu.Module.Course
{
......@@ -199,6 +200,7 @@ namespace Edu.Module.Course
}
}
var list = courseRepository.GetCoursePageListRepository(pageIndex, pageSize, out rowsCount, query);
var bankTypeList=EnumHelper.EnumToList(typeof(LevelTypeEnum));
if (list != null && list.Count > 0)
{
var ids = string.Join(",", list.Select(qitem => qitem.CourseId));
......@@ -219,6 +221,20 @@ namespace Edu.Module.Course
foreach (var item in list)
{
item.OpenBankLevelList = new List<int>();
if (!string.IsNullOrEmpty(item.OpenBankLevel))
{
item.OpenBankLevelList = Common.Plugin.JsonHelper.DeserializeObject<List<int>>(item.OpenBankLevel);
}
item.OpenBankLevelNameList = new List<string>();
if (item.OpenBankLevelList != null && item.OpenBankLevelList.Count > 0)
{
foreach (var bItem in item.OpenBankLevelList)
{
var tempBank = bankTypeList.Where(qitem => qitem.Id == bItem).FirstOrDefault();
item.OpenBankLevelNameList.Add(tempBank.Name);
}
}
item.PreferentialList = preferentialList?.Where(qitem => qitem.CourseId == item.CourseId)?.OrderBy(qitem => qitem.PriceDiscountType)?.ToList() ?? new List<RB_Course_Preferential_Extend>();
item.TeacherList = new List<RB_Teacher_ViewModel>();
if (item.TeacherIdList != null && item.TeacherIdList.Count > 0)
......@@ -264,6 +280,10 @@ namespace Edu.Module.Course
var clist = MallGoodsCategoryRepository.GetList(new RB_Goods_Category_Extend() { GoodsId = extModel.MallGoodsId, TenantId = Convert.ToInt32(Config.JHTenantId), MallBaseId = Convert.ToInt32(Config.JHMallBaseId) });
extModel.CategoryList = clist;
}
if (!string.IsNullOrEmpty(extModel.OpenBankLevel))
{
extModel.OpenBankLevelList = Common.Plugin.JsonHelper.DeserializeObject<List<int>>(extModel.OpenBankLevel);
}
}
return extModel;
}
......@@ -309,6 +329,7 @@ namespace Edu.Module.Course
{nameof(RB_Course_ViewModel.ScrollMinNum),model.ScrollMinNum },
{nameof(RB_Course_ViewModel.ScrollMaxNum),model.ScrollMaxNum },
{nameof(RB_Course_ViewModel.CourseTimeId),model.CourseTimeId },
{nameof(RB_Course_ViewModel.OpenBankLevel),model.OpenBankLevel },
};
flag = courseRepository.Update(fileds, new WhereHelper(nameof(RB_Course_ViewModel.CourseId), model.CourseId));
}
......
......@@ -2804,7 +2804,7 @@ namespace Edu.Module.Course
else
{
#region 验证电话是否已是他人客户
if (!string.IsNullOrEmpty(dmodel.Mobile))
if (!string.IsNullOrEmpty(dmodel.Mobile)&& dmodel.StudentId <= 0)
{
var slist = studentRepository.GetStudentListRepository(new RB_Student_ViewModel() { Group_Id = dmodel.Group_Id, StuTel = dmodel.Mobile, School_Id = -1 });
if (slist.Where(x => x.CustomerId != ordermodel.CustomerId).Any())
......
......@@ -119,9 +119,9 @@ namespace Edu.Module.Course
/// </summary>
/// <param name="dmodel"></param>
/// <returns></returns>
public List<RB_Order_ReturnComission_ViewModel> GetCommissionUserList(RB_Order_ReturnComission_ViewModel dmodel)
public List<RB_Order_ReturnComission_ViewModel> GetCommissionUserListModule(RB_Order_ReturnComission_ViewModel dmodel)
{
var list = order_ReturnComissionRepository.GetCommissionUserList(dmodel);
var list = order_ReturnComissionRepository.GetCommissionUserListRepository(dmodel);
if (list.Any())
{
//分成三个部门 内部人员 同行 学员
......
This diff is collapsed.
This diff is collapsed.
......@@ -649,9 +649,9 @@ namespace Edu.Module.User
/// </summary>
/// <param name="teacherIds"></param>
/// <returns></returns>
public List<RB_Student_ViewModel> GetStudentInfo(int Student_Id, int Group_Id)
public List<RB_Student_ViewModel> GetStudentInfoModule(int Student_Id, int Group_Id)
{
return studentRepository.GetStudentInfo(Student_Id, Group_Id);
return studentRepository.GetStudentInfoRepository(Student_Id, Group_Id);
}
/// <summary>
......
This diff is collapsed.
......@@ -159,7 +159,7 @@ where {where} order by r.Id desc";
/// </summary>
/// <param name="dmodel"></param>
/// <returns></returns>
public List<RB_Order_ReturnComission_ViewModel> GetCommissionUserList(RB_Order_ReturnComission_ViewModel demodel)
public List<RB_Order_ReturnComission_ViewModel> GetCommissionUserListRepository(RB_Order_ReturnComission_ViewModel demodel)
{
string where = $@" 1=1";
......@@ -204,8 +204,11 @@ where {where} order by r.Id desc";
where += $@" and r.{nameof(RB_Order_ReturnComission_ViewModel.Status)} in(1,2)";
}
string sql = $@" select r.OrderSourceType,r.OrderSourceId,r.SchoolId,count(0) as StudentCount,sum(r.CommissionMoeny) as CommissionMoeny
from RB_Order_ReturnComission r where {where} group by r.OrderSourceType,r.OrderSourceId,r.SchoolId";
string sql = $@"
select r.OrderSourceType,r.OrderSourceId,r.SchoolId,count(0) as StudentCount,sum(r.CommissionMoeny) as CommissionMoeny
from RB_Order_ReturnComission r
where {where}
group by r.OrderSourceType,r.OrderSourceId,r.SchoolId";
return Get<RB_Order_ReturnComission_ViewModel>(sql).ToList();
}
......
......@@ -492,16 +492,17 @@ where b.`Status`=0 and b.ClassStatus in(1,2) and a.status=0 and a.Account_Id={
/// </summary>
/// <param name="teacherIds"></param>
/// <returns></returns>
public List<RB_Student_ViewModel> GetStudentInfo(int Student_Id, int Group_Id)
public List<RB_Student_ViewModel> GetStudentInfoRepository(int Student_Id, int Group_Id)
{
var parameters = new DynamicParameters();
StringBuilder builder = new StringBuilder();
builder.AppendFormat($@"
SELECT s.*,sog.GuestId,o.OrderState,cou.CourseName,cou.CourseId,cou.B2BIcon,cou.B2BBackground,c.ClassName,c.ClassId,c.ClassScrollType,
case when og.TotalHours <= og.CompleteHours then 3 else
case when og.CompleteHours = 0 then 1 else
case when og.TotalHours > og.CompleteHours then 2 else 0 end end end as ClassStatus,
sch.SName,sch.SId,t.TeacherName,o.EnterID,og.TotalHours,og.CompleteHours, if((og.ValidClassHours-og.CompleteHours)<0,0,(og.ValidClassHours-og.CompleteHours)) as SurplusHours
case when og.TotalHours <= og.CompleteHours then 3 else
case when og.CompleteHours = 0 then 1 else
case when og.TotalHours > og.CompleteHours then 2 else 0 end end end as ClassStatus,
sch.SName,sch.SId,t.TeacherName,o.EnterID,og.TotalHours,og.CompleteHours, if((og.ValidClassHours-og.CompleteHours)<0,0,(og.ValidClassHours-og.CompleteHours)) as SurplusHours
,cou.OpenBankLevel
FROM rb_student as s LEFT JOIN rb_student_orderguest as sog on s.StuId=sog.Student_Id
LEFT JOIN rb_order_guest as og on og.Id=sog.GuestId
LEFT JOIN rb_order as o on og.OrderId=o.OrderId
......
......@@ -45,6 +45,10 @@ WHERE 1=1
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Student_Company_Extend.Times), query.Times);
}
if (query.IsQueryNotMoney == 1)
{
builder.AppendFormat(" AND (A.{0}<>0 OR A.{1}<>0) ", nameof(RB_Student_Company_Extend.OrderNotMoney), nameof(RB_Student_Company_Extend.StudyOrderNotMoney));
}
}
builder.AppendFormat(" ORDER BY A.{0} ASC ", nameof(RB_Student_Company_Extend.Id));
return Get<RB_Student_Company_Extend>(builder.ToString()).ToList();
......@@ -66,7 +70,7 @@ SELECT CONCAT(DATE_FORMAT(A.Date, '%Y-%m'),'-01') AS Date,A.YearStr,A.MonthStr,S
,SUM(A.ClassCCount) AS ClassCCount,SUM(A.ClassDCount) AS ClassDCount,SUM(A.CustomerCount) AS CustomerCount,SUM(A.B2CCount) AS B2CCount,SUM(A.TransCount) AS TransCount
,SUM(A.InnerCount) AS InnerCount,SUM(A.InvalidCount) AS InvalidCount,SUM(A.SuspectedCount) AS SuspectedCount,SUM(A.IntentionCount) AS IntentionCount
,SUM(A.InvitationCount) AS InvitationCount,SUM(A.NegotiationCount) AS NegotiationCount,SUM(A.ContractCount) AS ContractCount,SUM(A.OrderMoney) AS OrderMoney
,SUM(A.StudyOrderMoney) AS StudyOrderMoney
,SUM(A.StudyOrderMoney) AS StudyOrderMoney,SUM(A.OrderNotMoney) AS OrderNotMoney,SUM(A.StudyOrderNotMoney) AS StudyOrderNotMoney
FROM RB_Student_Company AS A
WHERE 1=1 AND A.Date<>'0001-01-01 00:00:00'
");
......@@ -109,7 +113,7 @@ SELECT CONCAT(A.YearStr,'-01','-01') AS Date,A.YearStr,SUM(A.PushCount) AS PushC
,SUM(A.ClassCCount) AS ClassCCount,SUM(A.ClassDCount) AS ClassDCount,SUM(A.CustomerCount) AS CustomerCount,SUM(A.B2CCount) AS B2CCount,SUM(A.TransCount) AS TransCount
,SUM(A.InnerCount) AS InnerCount,SUM(A.InvalidCount) AS InvalidCount,SUM(A.SuspectedCount) AS SuspectedCount,SUM(A.IntentionCount) AS IntentionCount
,SUM(A.InvitationCount) AS InvitationCount,SUM(A.NegotiationCount) AS NegotiationCount,SUM(A.ContractCount) AS ContractCount,SUM(A.OrderMoney) AS OrderMoney
,SUM(A.StudyOrderMoney) AS StudyOrderMoney
,SUM(A.StudyOrderMoney) AS StudyOrderMoney,SUM(A.OrderNotMoney) AS OrderNotMoney,SUM(A.StudyOrderNotMoney) AS StudyOrderNotMoney
FROM RB_Student_Company AS A
WHERE 1=1 AND A.Date<>'0001-01-01 00:00:00'
");
......
......@@ -43,6 +43,10 @@ WHERE 1=1
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Student_Market_Extend.Times), query.Times);
}
if (query.IsQueryNotMoney == 1)
{
builder.AppendFormat(" AND (A.{0}<>0 OR A.{1}<>0) ", nameof(RB_Student_Market_Extend.OrderNotMoney), nameof(RB_Student_Market_Extend.StudyOrderNotMoney));
}
}
builder.AppendFormat(" ORDER BY A.{0} ASC ", nameof(RB_Student_Static_Extend.Id));
return Get<RB_Student_Market_Extend>(builder.ToString()).ToList();
......@@ -63,6 +67,7 @@ WHERE 1=1
,SUM(A.OfficialAccount) AS OfficialAccount,SUM(A.TeacherRecommend) AS TeacherRecommend,SUM(A.ByteDance) AS ByteDance,SUM(A.ThirdPartyPlatform) AS ThirdPartyPlatform
,SUM(A.Other) AS Other,SUM(A.ClassACount) AS ClassACount,SUM(A.ClassBCount) AS ClassBCount,SUM(A.ClassCCount) AS ClassCCount,SUM(A.ClassDCount) AS ClassDCount
,SUM(A.InvalidCount) AS InvalidCount,SUM(A.ContractCount) AS ContractCount,SUM(A.OrderMoney) AS OrderMoney,SUM(A.StudyOrderMoney) AS StudyOrderMoney
,SUM(A.OrderNotMoney) AS OrderNotMoney,SUM(A.StudyOrderNotMoney) AS StudyOrderNotMoney
FROM RB_Student_Market AS A
WHERE 1=1 AND A.Date<>'0001-01-01 00:00:00'
");
......@@ -104,6 +109,7 @@ WHERE 1=1 AND A.Date<>'0001-01-01 00:00:00'
,SUM(A.OfficialAccount) AS OfficialAccount,SUM(A.TeacherRecommend) AS TeacherRecommend,SUM(A.ByteDance) AS ByteDance,SUM(A.ThirdPartyPlatform) AS ThirdPartyPlatform
,SUM(A.Other) AS Other,SUM(A.ClassACount) AS ClassACount,SUM(A.ClassBCount) AS ClassBCount,SUM(A.ClassCCount) AS ClassCCount,SUM(A.ClassDCount) AS ClassDCount
,SUM(A.InvalidCount) AS InvalidCount,SUM(A.ContractCount) AS ContractCount,SUM(A.OrderMoney) AS OrderMoney,SUM(A.StudyOrderMoney) AS StudyOrderMoney
,SUM(A.OrderNotMoney) AS OrderNotMoney,SUM(A.StudyOrderNotMoney) AS StudyOrderNotMoney
FROM RB_Student_Market AS A
WHERE 1=1 AND A.Date<>'0001-01-01 00:00:00'
");
......
......@@ -46,6 +46,10 @@ WHERE 1=1
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Student_Static_Extend.Times), query.Times);
}
if (query.IsQueryNotMoney == 1)
{
builder.AppendFormat(" AND (A.{0}<>0 OR A.{1}<>0) ", nameof(RB_Student_Static_Extend.OrderNotMoney), nameof(RB_Student_Static_Extend.StudyOrderNotMoney));
}
}
builder.AppendFormat(" ORDER BY A.{0} ASC ", nameof(RB_Student_Static_Extend.Id));
return Get<RB_Student_Static_Extend>(builder.ToString()).ToList();
......@@ -67,7 +71,7 @@ SELECT CONCAT(DATE_FORMAT(A.Date, '%Y-%m'),'-01') AS Date,A.YearStr,A.MonthStr,S
,SUM(A.ClassCCount) AS ClassCCount,SUM(A.ClassDCount) AS ClassDCount,SUM(A.CustomerCount) AS CustomerCount,SUM(A.B2CCount) AS B2CCount,SUM(A.TransCount) AS TransCount
,SUM(A.InnerCount) AS InnerCount,SUM(A.InvalidCount) AS InvalidCount,SUM(A.SuspectedCount) AS SuspectedCount,SUM(A.IntentionCount) AS IntentionCount
,SUM(A.InvitationCount) AS InvitationCount,SUM(A.NegotiationCount) AS NegotiationCount,SUM(A.ContractCount) AS ContractCount,SUM(A.OrderMoney) AS OrderMoney
,SUM(A.StudyOrderMoney) AS StudyOrderMoney
,SUM(A.StudyOrderMoney) AS StudyOrderMoney,SUM(A.OrderNotMoney) AS OrderNotMoney,SUM(A.StudyOrderNotMoney) AS StudyOrderNotMoney
FROM RB_Student_Static AS A
WHERE 1=1 AND A.Date<>'0001-01-01 00:00:00'
");
......@@ -110,7 +114,7 @@ SELECT CONCAT(A.YearStr,'-01','-01') AS Date,A.YearStr,SUM(A.PushCount) AS PushC
,SUM(A.ClassCCount) AS ClassCCount,SUM(A.ClassDCount) AS ClassDCount,SUM(A.CustomerCount) AS CustomerCount,SUM(A.B2CCount) AS B2CCount,SUM(A.TransCount) AS TransCount
,SUM(A.InnerCount) AS InnerCount,SUM(A.InvalidCount) AS InvalidCount,SUM(A.SuspectedCount) AS SuspectedCount,SUM(A.IntentionCount) AS IntentionCount
,SUM(A.InvitationCount) AS InvitationCount,SUM(A.NegotiationCount) AS NegotiationCount,SUM(A.ContractCount) AS ContractCount,SUM(A.OrderMoney) AS OrderMoney
,SUM(A.StudyOrderMoney) AS StudyOrderMoney
,SUM(A.StudyOrderMoney) AS StudyOrderMoney,SUM(A.OrderNotMoney) AS OrderNotMoney,SUM(A.StudyOrderNotMoney) AS StudyOrderNotMoney
FROM RB_Student_Static AS A
WHERE 1=1 AND A.Date<>'0001-01-01 00:00:00'
");
......
......@@ -83,7 +83,7 @@ namespace Edu.WebApi.Controllers.Applet
{
var appletUserInfo = base.AppletUserInfo;
//判断学员是否退学
var studentList = studentModule.GetStudentInfo(appletUserInfo.AccountId, appletUserInfo.Group_Id);
var studentList = studentModule.GetStudentInfoModule(appletUserInfo.AccountId, appletUserInfo.Group_Id);
if (studentList == null || !studentList.Any())
{
return ApiResult.Failed(message: $"很抱歉,由于你已经退学/已毕业,无法继续使用本系统", new { Error = 3 });
......@@ -216,12 +216,36 @@ namespace Edu.WebApi.Controllers.Applet
{
var appletUserInfo = base.AppletUserInfo;
//判断学员是否退学
var studentList = studentModule.GetStudentInfo(appletUserInfo.AccountId, appletUserInfo.Group_Id);
var studentList = studentModule.GetStudentInfoModule(appletUserInfo.AccountId, appletUserInfo.Group_Id);
List<int> BankTypeList = new List<int>();
//获取正在学习的班级 /未开班/已结班
RB_Student_ViewModel studentModel = new RB_Student_ViewModel();
if (studentList.Any())
{
foreach (var item in studentList)
{
if (!string.IsNullOrEmpty(item.OpenBankLevel))
{
try
{
var tempList = Common.Plugin.JsonHelper.DeserializeObject<List<int>>(item.OpenBankLevel);
if (tempList != null && tempList.Count > 0)
{
foreach (var sItem in tempList)
{
if (!BankTypeList.Contains(sItem))
{
BankTypeList.Add(sItem);
}
}
}
}
catch(Exception ex)
{
Common.Plugin.LogHelper.Write(ex, "GetIndexInfo_V2_OpenBankLevel");
}
}
}
studentModel = studentList.Where(x => x.ClassStatus == 2).FirstOrDefault();
if (studentModel == null || studentModel.StuId == 0)
{
......@@ -354,7 +378,8 @@ namespace Edu.WebApi.Controllers.Applet
studentModel.ClassScrollType,
ClassNext,
LearningGardenList,
Words
Words,
BankTypeList
});
}
......@@ -368,7 +393,7 @@ namespace Edu.WebApi.Controllers.Applet
{
var appletUserInfo = base.AppletUserInfo;
//判断学员是否退学
var studentList = studentModule.GetStudentInfo(appletUserInfo.AccountId, appletUserInfo.Group_Id);
var studentList = studentModule.GetStudentInfoModule(appletUserInfo.AccountId, appletUserInfo.Group_Id);
if (studentList == null || !studentList.Any())
{
return ApiResult.Failed(message: $"很抱歉,由于你已经退学,无法继续使用本系统", new { Error = 3 });
......@@ -412,7 +437,7 @@ namespace Edu.WebApi.Controllers.Applet
{
var appletUserInfo = base.AppletUserInfo;
//获取学生所有的课程
var studentList = studentModule.GetStudentInfo(appletUserInfo.AccountId, appletUserInfo.Group_Id);
var studentList = studentModule.GetStudentInfoModule(appletUserInfo.AccountId, appletUserInfo.Group_Id);
studentList = studentList.OrderByDescending(x => x.ClassStatus).ToList();
return ApiResult.Success("", studentList.Select(x => new
......
......@@ -85,7 +85,6 @@ namespace Edu.WebApi.Controllers.APP
[AllowAnonymous]
public ApiResult Login()
{
JObject jobj = JObject.Parse(RequestParm.Msg.ToString());
string account = jobj.GetStringValue("Account");
string password = jobj.GetStringValue("Password");
......@@ -123,7 +122,7 @@ namespace Edu.WebApi.Controllers.APP
}
//判断学员是否退学
var studentList = studentModule.GetStudentInfo(model.AccountId, model.Group_Id);
var studentList = studentModule.GetStudentInfoModule(model.AccountId, model.Group_Id);
RB_Student_ViewModel studentModel = new RB_Student_ViewModel();
//if (studentList == null || !studentList.Any())
//{
......@@ -313,7 +312,7 @@ namespace Edu.WebApi.Controllers.APP
}
//判断学员是否退学
var studentList = studentModule.GetStudentInfo(model.AccountId, model.Group_Id);
var studentList = studentModule.GetStudentInfoModule(model.AccountId, model.Group_Id);
//if (studentList == null || !studentList.Any())
//{
// return ApiResult.Failed(message: $"很抱歉,由于你已经退学,无法继续使用本系统", new { Error = 3 });
......
......@@ -438,6 +438,20 @@ namespace Edu.WebApi.Controllers.Course
{
Common.Plugin.LogHelper.Write(ex, "SetCourse");
}
List<int> BankLevelList = new List<int>();
string OpenBankLevelListStr = base.ParmJObj.GetStringValue("OpenBankLevelList");
if (!string.IsNullOrEmpty(OpenBankLevelListStr))
{
try
{
BankLevelList = JsonHelper.DeserializeObject<List<int>>(OpenBankLevelListStr);
}
catch (Exception ex)
{
Common.Plugin.LogHelper.Write(ex, "SetCourse");
}
}
extModel.OpenBankLevel = JsonHelper.Serialize(BankLevelList);
extModel.CreateTime = DateTime.Now;
extModel.CreateBy = base.UserInfo.Id;
extModel.UpdateBy = base.UserInfo.Id;
......@@ -453,8 +467,10 @@ namespace Edu.WebApi.Controllers.Course
extModel.OriginalPrice = oldModel.OriginalPrice;
}
bool flag = courseModule.SetCourseModule(extModel, out int courseId);
if (flag) {
if (extModel.IsScrollClass == 1) {
if (flag)
{
if (extModel.IsScrollClass == 1)
{
try
{
//创建当月虚拟班级
......
......@@ -77,16 +77,17 @@ namespace Edu.WebApi.Controllers.Customer
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult SetCustomerRemitState() {
public ApiResult SetCustomerRemitState()
{
var userInfo = base.UserInfo;
JObject parms = JObject.Parse(base.RequestParm.Msg.ToString());
int RemitId = parms.GetInt("RemitId", 0);
int State = parms.GetInt("State", 1);//状态 1审核通过 2审核驳回
string Remark = parms.GetStringValue("Remark");//备注
if (RemitId <= 0) {
if (RemitId <= 0)
{
return ApiResult.ParamIsNull("请传递提现ID");
}
string msg = customerRemitModule.SetCustomerRemitState(RemitId, State, Remark, userInfo);
if (msg == "")
{
......
......@@ -132,7 +132,7 @@ namespace Edu.WebApi.Controllers.Course
return ApiResult.ParamIsNull("请传递期数id");
}
var list = customerCommissionModule.GetCommissionUserList(dmodel);
var list = customerCommissionModule.GetCommissionUserListModule(dmodel);
if (dmodel.UserDept > 0)
{
list = list.Where(x => x.UserDept == dmodel.UserDept).ToList();
......@@ -341,15 +341,15 @@ namespace Edu.WebApi.Controllers.Course
{
financeConfig = new RB_Finance_Config_ViewModel();
}
var list = customerCommissionModule.GetCommissionUserList(dmodel);
if (list == null || !list.Any(x => x.OrderSourceType == Common.Enum.User.StuCreateTypeEnum.EmployeeInput))
var list = customerCommissionModule.GetCommissionUserListModule(dmodel);
if (list == null || !list.Any(x => x.OrderSourceType == StuCreateTypeEnum.EmployeeInput))
{
return ApiResult.Failed("暂无个人直客数据");
}
List<object> financeList = new List<object>();
foreach (var item in list.Where(x => x.OrderSourceType == Common.Enum.User.StuCreateTypeEnum.EmployeeInput).GroupBy(x => x.SchoolId))//先区分出校区
foreach (var item in list.Where(x => x.OrderSourceType == StuCreateTypeEnum.EmployeeInput).GroupBy(x => x.SchoolId))//先区分出校区
{
foreach (var deptItem in list.Where(x => x.SchoolId == item.Key && x.OrderSourceType == Common.Enum.User.StuCreateTypeEnum.EmployeeInput).GroupBy(x => x.UserDept))//区分出同一个校区不同部门
foreach (var deptItem in list.Where(x => x.SchoolId == item.Key && x.OrderSourceType == StuCreateTypeEnum.EmployeeInput).GroupBy(x => x.UserDept))//区分出同一个校区不同部门
{
var tempList = list.Where(x => x.SchoolId == item.Key && x.UserDept == deptItem.Key);
if (tempList != null && tempList.Any())
......@@ -433,7 +433,7 @@ namespace Edu.WebApi.Controllers.Course
msg = sign,
};
System.Threading.Tasks.Task.Run(() =>
SetFinance(resultInfo, dmodel.BatchId)
SetFinance(resultInfo, dmodel.BatchId)
);
return ApiResult.Success("财务单据生成中,请稍后刷新查看");
}
......
......@@ -1134,6 +1134,7 @@ namespace Edu.WebApi.Controllers.Exam
IsAnswer=base.ParmJObj.GetInt("IsAnswer"),
IsWrong=base.ParmJObj.GetInt("IsWrong"),
StudentAnswer=base.ParmJObj.GetStringValue("StudentAnswer"),
Times=base.ParmJObj.GetInt("Times"),
};
bool flag = courseExamModule.SetStudentPracticeModule(model);
return flag ? ApiResult.Success() : ApiResult.Failed();
......
......@@ -85,6 +85,9 @@ namespace Edu.WebApi.Timers
static System.Timers.Timer dealStudentProgressTimer;//处理学员上课进度
static System.Timers.Timer dealStudentNotMoneyTimer;//处理学员待收金额
public static void RunTimer()
{
timer1 = new System.Timers.Timer
......@@ -150,6 +153,13 @@ namespace Edu.WebApi.Timers
};
dealStudentProgressTimer.Elapsed += new System.Timers.ElapsedEventHandler(DealStudentProgressModule);
dealStudentProgressTimer.Enabled = true;
dealStudentNotMoneyTimer = new System.Timers.Timer()
{
Interval = (1000 * 60) * (60*4) //1小时检查一次
};
dealStudentNotMoneyTimer.Elapsed += new System.Timers.ElapsedEventHandler(DealStudentNotMoneyData);
dealStudentNotMoneyTimer.Enabled = true;
}
public static void RunStop()
......@@ -163,6 +173,7 @@ namespace Edu.WebApi.Timers
finishGuest.Enabled = false;
marketTimer.Enabled = false;
dealStudentProgressTimer.Enabled = false;
dealStudentNotMoneyTimer.Enabled = false;
}
/// <summary>
......@@ -177,6 +188,7 @@ namespace Edu.WebApi.Timers
private static int guestfinish_Timer = 0;
private static int marketconsultant_Timer = 0;
private static int dealstudentprogress_Timer = 0;
private static int dealStudentNotMoney_Timer = 0;
private static readonly string createMarkDataKey = "createMarkDataKey";
......@@ -239,6 +251,20 @@ namespace Edu.WebApi.Timers
}
}
/// <summary>
/// 定时更新学员统计待收金额
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
public static void DealStudentNotMoneyData(object sender, System.Timers.ElapsedEventArgs e)
{
if (Interlocked.Exchange(ref dealStudentNotMoney_Timer, 1) == 0)
{
studentStatModule.CalcStudentNotMoneyModule();
Interlocked.Exchange(ref dealStudentNotMoney_Timer, 0);
}
}
/// <summary>
/// 处理学员毕业状态
/// </summary>
......
......@@ -34,11 +34,11 @@
"MongoDBName": "Edu",
"WkHtmlToPdfPath": "D:/wkhtmltopdf/bin/",
"FinanceKey": "FinanceMallInsertToERPViitto2020",
"PaymentFinanceApi": "http://192.168.10.65:8083/api/Mall/InsertFinanceBatchForMallOut",
"IncomeFinanceApi": "http://192.168.10.65:8083/api/Mall/InsertFinanceBatchForMallIn",
"PaymentFinanceApi": "http://192.168.10.214/api/Mall/InsertFinanceBatchForMallOut",
"IncomeFinanceApi": "http://192.168.10.214/api/Mall/InsertFinanceBatchForMallIn",
"sTenpayNotifyUrl": "http://eduapi.oytour.com/api/WeChatPay/WxPayCallback", //下单回调地址
"sTenpayNotifyRefundUrl": "http://eduapi.oytour.com/api/WeChatPay/Refunds", //退款回调地址
"SellFinanceApi": "http://127.0.0.1/api/Mall/InsertFinanceBatchForEduOut",
"SellFinanceApi": "http://192.168.10.214/api/Mall/InsertFinanceBatchForEduOut",
"FinanceDateBase": "reborn_finance",
"EduDateBase": "reborn_edu",
"JHTenantId": "15",
......
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