Commit 4c4bd695 authored by 黄奎's avatar 黄奎

页面修改

parent 3241642d
......@@ -269,6 +269,11 @@ namespace Edu.Model.ViewModel.User
/// </summary>
public int ConsultantId { get; set; }
/// <summary>
/// 课程顾问编号【逗号分隔】
/// </summary>
public string ConsultantIds { get; set; }
/// <summary>
/// 渠道名称
/// </summary>
......@@ -431,6 +436,11 @@ namespace Edu.Model.ViewModel.User
/// </summary>
public int HeadTeacherId { get; set; }
/// <summary>
/// 班主任【逗号分隔】
/// </summary>
public string HeadTeacherIds { get; set; }
/// <summary>
/// 查询类型(1-课程顾问,2-老师,3-市场)
/// </summary>
......
......@@ -399,14 +399,17 @@ where sog.Status =0 and o.Group_Id ={group_Id} and o.OrderState <>3 and IFNULL(o
{
DynamicParameters parameters = new DynamicParameters();
string where = " 1=1 and s.Status =0 and c.CourseId <>1";//排除内部班课程
if (demodel.Group_Id > 0) {
if (demodel.Group_Id > 0)
{
where += $" and s.{nameof(RB_Student_ViewModel.Group_Id)} ={demodel.Group_Id}";
}
if (!string.IsNullOrEmpty(demodel.StuName)) {
if (!string.IsNullOrEmpty(demodel.StuName))
{
where += $" and s.{nameof(RB_Student_ViewModel.StuName)} like @StuName";
parameters.Add("StuName", "%" + demodel.StuName + "%");
}
if (!string.IsNullOrEmpty(demodel.StuRealMobile)) {
if (!string.IsNullOrEmpty(demodel.StuRealMobile))
{
where += $" and s.{nameof(RB_Student_ViewModel.StuRealMobile)} like @StuRealMobile";
parameters.Add("StuRealMobile", "%" + demodel.StuRealMobile + "%");
}
......@@ -460,10 +463,18 @@ where sog.Status =0 and o.Group_Id ={group_Id} and o.OrderState <>3 and IFNULL(o
{
where += $@" AND s.StuId IN (SELECT StuId FROM rb_student_assist WHERE AssistId ={demodel.ConsultantId} AND `Status`=0)";
}
if (!string.IsNullOrEmpty(demodel.ConsultantIds))
{
where += $@" AND s.StuId IN (SELECT StuId FROM rb_student_assist WHERE AssistId IN({demodel.ConsultantIds}) AND `Status`=0)";
}
if (demodel.HeadTeacherId > 0)
{
where += $@" AND s.StuId IN (SELECT StuId FROM rb_student_assist WHERE AssistId ={demodel.HeadTeacherId} AND `Status`=0 AND AssistType=4)";
}
if (!string.IsNullOrEmpty(demodel.HeadTeacherIds))
{
where += $@" AND s.StuId IN (SELECT StuId FROM rb_student_assist WHERE AssistId IN({demodel.HeadTeacherIds}) AND `Status`=0 AND AssistType=4)";
}
if (demodel.CourseId > 0)
{
where += $" and o.CourseId ={demodel.CourseId}";
......
......@@ -42,6 +42,11 @@ namespace Edu.WebApi.Controllers.User
/// </summary>
private readonly OKRPeriodModule okrPeriodModule = new OKRPeriodModule();
/// <summary>
/// 员工处理类
/// </summary>
private readonly EmployeeModule employeeModule = new EmployeeModule();
#region 学员跟进
/// <summary>
......@@ -51,8 +56,8 @@ namespace Edu.WebApi.Controllers.User
[HttpPost]
public ApiResult GetStudentFollowUpPageList()
{
var userInfo = base.UserInfo;
ResultPageModel pmodel = JsonHelper.DeserializeObject<ResultPageModel>(base.RequestParm.Msg.ToString());
var userInfo = base.UserInfo;
RB_Student_ViewModel demodel = new RB_Student_ViewModel()
{
BelongType = base.ParmJObj.GetInt("BelongType"),
......@@ -73,9 +78,9 @@ namespace Edu.WebApi.Controllers.User
StuType = base.ParmJObj.GetInt("StuType"),
WeChatNo = base.ParmJObj.GetStringValue("WeChatNo"),
StuPurpose = base.ParmJObj.GetInt("StuPurpose"),
HeadTeacherId=base.ParmJObj.GetInt("HeadTeacherId"),
QueryTpye=base.ParmJObj.GetInt("QueryTpye"),
AdvisorStatus=base.ParmJObj.GetInt("AdvisorStatus"),
HeadTeacherId = base.ParmJObj.GetInt("HeadTeacherId"),
QueryTpye = base.ParmJObj.GetInt("QueryTpye"),
AdvisorStatus = base.ParmJObj.GetInt("AdvisorStatus"),
};
string schoolId = base.ParmJObj.GetStringValue("School_Id");
if (schoolId != "-1")
......@@ -88,58 +93,70 @@ namespace Edu.WebApi.Controllers.User
demodel.CreateIds = Common.Plugin.JsonHelper.DeserializeObject<List<int>>(CreateIds);
}
demodel.Group_Id = userInfo.Group_Id;
if (demodel.IsQueryMyStu == 1)
{
demodel.CreateBy = base.UserInfo.Id;
}
else if (demodel.BelongType == 1)
//市场部
if (demodel.QueryTpye == 3)
{
if (base.UserInfo.IsMarket == 1)
demodel.BelongType = 1;
var markerUserList = employeeModule.GetEmployeeListModule(new Employee_ViewModel()
{
if (base.UserInfo.IsManager == 0)
{
demodel.CreateBy = base.UserInfo.Id;
}
else if (base.UserInfo.IsManager == 1)
{
var tempList = okrPeriodModule.GetOKRPersonalDimensionListModule(base.UserInfo.Group_Id, base.UserInfo.Id, base.UserInfo.DeptId);
string QCreateBys = "";
if (tempList != null && tempList.Count > 0)
{
foreach (var jItem in tempList)
{
JObject jObj = JObject.Parse(JsonHelper.Serialize(jItem));
QCreateBys += jObj.GetStringValue("Id") + ",";
}
}
int qCreateBy = base.ParmJObj.GetInt("CreateBy");
if (qCreateBy > 0)
{
QCreateBys = qCreateBy.ToString();
}
if (!string.IsNullOrEmpty(QCreateBys))
{
demodel.QCreateBys = QCreateBys.TrimStart(',').TrimEnd(',');
}
}
UserRole = UserRoleEnum.MarketPersion,
IsLeave = 1
});
string QCreateBys = "";
QCreateBys = string.Join(",", markerUserList?.Select(qitem => qitem.Id));
//普通市场人员
if (base.UserInfo.IsMarket == 1 && base.UserInfo.IsManager == 0)
{
demodel.CreateBy = base.UserInfo.Id;
}
else
int qCreateBy = base.ParmJObj.GetInt("CreateBy");
if (qCreateBy > 0)
{
demodel.BelongType = 0;
QCreateBys = qCreateBy.ToString();
}
if (!string.IsNullOrEmpty(QCreateBys))
{
demodel.QCreateBys = QCreateBys.TrimStart(',').TrimEnd(',');
}
}
else if (demodel.BelongType > 1)
{
demodel.CreateBy = base.UserInfo.Id;
//课程顾问部
if (demodel.QueryTpye == 1)
{
demodel.BelongType = 0;
//string adviserStr = "";
//var adviserList = employeeModule.GetEmployeeListModule(new Employee_ViewModel()
//{
// IsLeave=1,
// UserRole = UserRoleEnum.CourseConsultant
//});
//adviserStr = string.Join(",", adviserList?.Select(qitem => qitem.Id));
//if (demodel.ConsultantId <= 0 &&!string.IsNullOrEmpty(adviserStr))
//{
// demodel.ConsultantIds = adviserStr;
//}
}
var list = studentStatModule.GetStudentFollowUpPageModule(pmodel.PageIndex, pmodel.PageSize, out long count, demodel);
if (demodel.QueryTpye == 2)
{
//string teacherStr = "";
//var teacherList = employeeModule.GetEmployeeListModule(new Employee_ViewModel()
//{
// IsLeave = 1,
// AccountType = AccountTypeEnum.Teacher
//});
//teacherStr = string.Join(",", teacherList?.Select(qitem => qitem.Id));
//if (demodel.HeadTeacherId <= 0 && !string.IsNullOrEmpty(teacherStr))
//{
// demodel.HeadTeacherIds = teacherStr;
//}
}
var list = studentStatModule.GetStudentFollowUpPageModule(pmodel.PageIndex, pmodel.PageSize, out long count,demodel);
pmodel.Count = count;
pmodel.PageData = list;
return ApiResult.Success("", pmodel);
}
/// <summary>
/// 下载学员跟进信息
/// </summary>
......@@ -149,6 +166,7 @@ namespace Edu.WebApi.Controllers.User
public FileContentResult DownLoadStudentFollowUp()
{
List<ExcelDataSource> slist = new List<ExcelDataSource>();
var userInfo = base.UserInfo;
RB_Student_ViewModel demodel = new RB_Student_ViewModel()
{
BelongType = base.ParmJObj.GetInt("BelongType"),
......@@ -170,7 +188,7 @@ namespace Edu.WebApi.Controllers.User
WeChatNo = base.ParmJObj.GetStringValue("WeChatNo"),
StuPurpose = base.ParmJObj.GetInt("StuPurpose"),
HeadTeacherId = base.ParmJObj.GetInt("HeadTeacherId"),
QueryTpye=base.ParmJObj.GetInt("QueryTpye"),
QueryTpye = base.ParmJObj.GetInt("QueryTpye"),
AdvisorStatus = base.ParmJObj.GetInt("AdvisorStatus"),
};
string schoolId = base.ParmJObj.GetStringValue("School_Id");
......@@ -183,53 +201,65 @@ namespace Edu.WebApi.Controllers.User
{
demodel.CreateIds = Common.Plugin.JsonHelper.DeserializeObject<List<int>>(CreateIds);
}
demodel.Group_Id = base.UserInfo.Group_Id;
if (demodel.IsQueryMyStu == 1)
{
demodel.CreateBy = base.UserInfo.Id;
}
else if (base.UserInfo.IsMarket == 1)
demodel.Group_Id = userInfo.Group_Id;
//市场部
if (demodel.QueryTpye == 3)
{
if (base.UserInfo.IsManager == 0)
demodel.BelongType = 1;
var markerUserList = employeeModule.GetEmployeeListModule(new Employee_ViewModel()
{
demodel.CreateBy = base.UserInfo.Id;
}
else if (base.UserInfo.IsManager == 1)
UserRole = UserRoleEnum.MarketPersion,
IsLeave = 1
});
string QCreateBys = "";
QCreateBys = string.Join(",", markerUserList?.Select(qitem => qitem.Id));
//普通市场人员
if (base.UserInfo.IsMarket == 1 && base.UserInfo.IsManager == 0)
{
var tempList = okrPeriodModule.GetOKRPersonalDimensionListModule(base.UserInfo.Group_Id, base.UserInfo.Id, base.UserInfo.DeptId);
string QCreateBys = "";
if (tempList != null && tempList.Count > 0)
{
foreach (var jItem in tempList)
{
JObject jObj = JObject.Parse(JsonHelper.Serialize(jItem));
QCreateBys += jObj.GetStringValue("Id") + ",";
}
}
int qCreateBy = base.ParmJObj.GetInt("CreateBy");
if (qCreateBy > 0)
{
QCreateBys = qCreateBy.ToString();
}
if (!string.IsNullOrEmpty(QCreateBys))
{
demodel.QCreateBys = QCreateBys.TrimStart(',').TrimEnd(',');
}
demodel.CreateBy = base.UserInfo.Id;
}
}
else
{
if (demodel.BelongType == 1)
int qCreateBy = base.ParmJObj.GetInt("CreateBy");
if (qCreateBy > 0)
{
demodel.BelongType = 0;//暂先查全部
QCreateBys = qCreateBy.ToString();
}
if (demodel.BelongType > 1)
if (!string.IsNullOrEmpty(QCreateBys))
{
demodel.CreateBy = base.UserInfo.Id;
demodel.QCreateBys = QCreateBys.TrimStart(',').TrimEnd(',');
}
}
//课程顾问部
if (demodel.QueryTpye == 1)
{
demodel.BelongType = 0;
//string adviserStr = "";
//var adviserList = employeeModule.GetEmployeeListModule(new Employee_ViewModel()
//{
// IsLeave=1,
// UserRole = UserRoleEnum.CourseConsultant
//});
//adviserStr = string.Join(",", adviserList?.Select(qitem => qitem.Id));
//if (demodel.ConsultantId <= 0 &&!string.IsNullOrEmpty(adviserStr))
//{
// demodel.ConsultantIds = adviserStr;
//}
}
if (demodel.QueryTpye == 2)
{
//string teacherStr = "";
//var teacherList = employeeModule.GetEmployeeListModule(new Employee_ViewModel()
//{
// IsLeave = 1,
// AccountType = AccountTypeEnum.Teacher
//});
//teacherStr = string.Join(",", teacherList?.Select(qitem => qitem.Id));
//if (demodel.HeadTeacherId <= 0 && !string.IsNullOrEmpty(teacherStr))
//{
// demodel.HeadTeacherIds = teacherStr;
//}
}
var list = studentStatModule.GetStudentFollowUpPageModule(1, 1000000, out long count, demodel);
var QueryTpye = base.ParmJObj.GetInt("QueryTpye");
string excelName = "学员跟踪.xls";
try
{
......@@ -249,13 +279,13 @@ namespace Edu.WebApi.Controllers.User
header.ExcelRows.Add(new ExcelColumn("结课时间") { CellWidth = 15, Rowspan = 2 });
header.ExcelRows.Add(new ExcelColumn("当前级别") { CellWidth = 15, Rowspan = 2 });
header.ExcelRows.Add(new ExcelColumn("生日") { CellWidth = 15, Rowspan = 2 });
if (demodel.QueryTpye!=2)
if (QueryTpye!=2)
{
header.ExcelRows.Add(new ExcelColumn("客户来源") { CellWidth = 15, Rowspan = 2 });
}
header.ExcelRows.Add(new ExcelColumn("学习目的") { CellWidth = 15, Rowspan = 2 });
if (demodel.QueryTpye != 2)
if (QueryTpye != 2)
{
header.ExcelRows.Add(new ExcelColumn("关联来源人") { CellWidth = 15, Rowspan = 2 });
header.ExcelRows.Add(new ExcelColumn("收客渠道") { CellWidth = 15, Rowspan = 2 });
......@@ -263,7 +293,7 @@ namespace Edu.WebApi.Controllers.User
header.ExcelRows.Add(new ExcelColumn("负责人") { CellWidth = 15, Rowspan = 2 });
header.ExcelRows.Add(new ExcelColumn("合同状态") { CellWidth = 15, Rowspan = 2 });
if (demodel.QueryTpye != 2)
if (QueryTpye != 2)
{
header.ExcelRows.Add(new ExcelColumn("期望达成协议日期") { CellWidth = 15, Rowspan = 2 });
header.ExcelRows.Add(new ExcelColumn("目前状态") { CellWidth = 15, Rowspan = 2 });
......@@ -286,7 +316,7 @@ namespace Edu.WebApi.Controllers.User
new ExcelColumn(),
}
};
if (demodel.QueryTpye != 2)
if (QueryTpye != 2)
{
subHeader.ExcelRows.Add(new ExcelColumn());
subHeader.ExcelRows.Add(new ExcelColumn());
......@@ -295,7 +325,7 @@ namespace Edu.WebApi.Controllers.User
subHeader.ExcelRows.Add(new ExcelColumn());
}
subHeader.ExcelRows.Add(new ExcelColumn());
if (demodel.QueryTpye != 2)
if (QueryTpye != 2)
{
subHeader.ExcelRows.Add(new ExcelColumn());
subHeader.ExcelRows.Add(new ExcelColumn());
......@@ -348,12 +378,12 @@ namespace Edu.WebApi.Controllers.User
columns.Add(new ExcelColumn(item.GraduationTime));
columns.Add(new ExcelColumn(item.JapanBaseInfo));
columns.Add(new ExcelColumn(item.StuBirthStr));
if (demodel.QueryTpye != 2)
if (QueryTpye != 2)
{
columns.Add(new ExcelColumn(item.CreateTypeName));
}
columns.Add(new ExcelColumn(item.StuPurposeName));
if (demodel.QueryTpye != 2)
if (QueryTpye != 2)
{
columns.Add(new ExcelColumn(item.StuSourceIdName));
columns.Add(new ExcelColumn(item.StuChannelName));
......
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