Commit 929845ef authored by 黄奎's avatar 黄奎

页面修改

parent 9625dace
...@@ -99,6 +99,11 @@ namespace Edu.Model.ViewModel.Course ...@@ -99,6 +99,11 @@ namespace Edu.Model.ViewModel.Course
/// </summary> /// </summary>
public List<RB_Course_Preferential_Extend> PreferentialList { get; set; } public List<RB_Course_Preferential_Extend> PreferentialList { get; set; }
/// <summary>
/// 开课时间
/// </summary>
public string OpenTimeStr { get; set; }
/// <summary> /// <summary>
/// 开班开始时间 /// 开班开始时间
/// </summary> /// </summary>
......
...@@ -10,6 +10,11 @@ namespace Edu.Model.ViewModel.StudyAbroad ...@@ -10,6 +10,11 @@ namespace Edu.Model.ViewModel.StudyAbroad
/// </summary> /// </summary>
public class RB_StudyAbroad_ViewModel : RB_StudyAbroad public class RB_StudyAbroad_ViewModel : RB_StudyAbroad
{ {
/// <summary>
/// 校区名称
/// </summary>
public string SchoolName { get; set; }
/// <summary> /// <summary>
/// 供应商名称 /// 供应商名称
/// </summary> /// </summary>
......
...@@ -3,6 +3,7 @@ using Edu.Cache.User; ...@@ -3,6 +3,7 @@ using Edu.Cache.User;
using Edu.Common.API; using Edu.Common.API;
using Edu.Common.Enum; using Edu.Common.Enum;
using Edu.Common.Enum.Course; using Edu.Common.Enum.Course;
using Edu.Common.Enum.Sale;
using Edu.Common.Plugin; using Edu.Common.Plugin;
using Edu.Model.CacheModel; using Edu.Model.CacheModel;
using Edu.Model.ViewModel.Course; using Edu.Model.ViewModel.Course;
...@@ -28,30 +29,37 @@ namespace Edu.Module.Course ...@@ -28,30 +29,37 @@ namespace Edu.Module.Course
/// 订单 /// 订单
/// </summary> /// </summary>
private readonly RB_OrderRepository orderRepository = new RB_OrderRepository(); private readonly RB_OrderRepository orderRepository = new RB_OrderRepository();
/// <summary> /// <summary>
/// 订单备注 /// 订单备注
/// </summary> /// </summary>
private readonly RB_Order_RemarkRepository order_RemarkRepository = new RB_Order_RemarkRepository(); private readonly RB_Order_RemarkRepository order_RemarkRepository = new RB_Order_RemarkRepository();
/// <summary> /// <summary>
/// 客人 /// 客人
/// </summary> /// </summary>
private readonly RB_Order_GuestRepository order_GuestRepository = new RB_Order_GuestRepository(); private readonly RB_Order_GuestRepository order_GuestRepository = new RB_Order_GuestRepository();
/// <summary> /// <summary>
/// 用户日志 /// 用户日志
/// </summary> /// </summary>
private readonly RB_User_ChangeLogRepository changeLogRepository = new RB_User_ChangeLogRepository(); private readonly RB_User_ChangeLogRepository changeLogRepository = new RB_User_ChangeLogRepository();
/// <summary> /// <summary>
/// 班级 /// 班级
/// </summary> /// </summary>
private readonly RB_ClassRepository classRepository = new RB_ClassRepository(); private readonly RB_ClassRepository classRepository = new RB_ClassRepository();
/// <summary> /// <summary>
/// 阶梯价格 /// 阶梯价格
/// </summary> /// </summary>
private readonly RB_Class_StepPriceRepository class_StepPriceRepository = new RB_Class_StepPriceRepository(); private readonly RB_Class_StepPriceRepository class_StepPriceRepository = new RB_Class_StepPriceRepository();
/// <summary> /// <summary>
/// 订单阶梯价格 /// 订单阶梯价格
/// </summary> /// </summary>
private readonly RB_Order_StepPriceRepository order_StepPriceRepository = new RB_Order_StepPriceRepository(); private readonly RB_Order_StepPriceRepository order_StepPriceRepository = new RB_Order_StepPriceRepository();
/// <summary> /// <summary>
/// 课程计划 /// 课程计划
/// </summary> /// </summary>
...@@ -61,14 +69,17 @@ namespace Edu.Module.Course ...@@ -61,14 +69,17 @@ namespace Edu.Module.Course
/// 教师 /// 教师
/// </summary> /// </summary>
private readonly RB_TeacherRepository teacherRepository = new RB_TeacherRepository(); private readonly RB_TeacherRepository teacherRepository = new RB_TeacherRepository();
/// <summary> /// <summary>
/// 助教 /// 助教
/// </summary> /// </summary>
private readonly RB_AssistRepository assistRepository = new RB_AssistRepository(); private readonly RB_AssistRepository assistRepository = new RB_AssistRepository();
/// <summary> /// <summary>
/// 学生 /// 学生
/// </summary> /// </summary>
private readonly RB_StudentRepository studentRepository = new RB_StudentRepository(); private readonly RB_StudentRepository studentRepository = new RB_StudentRepository();
/// <summary> /// <summary>
/// 学生关联 /// 学生关联
/// </summary> /// </summary>
...@@ -78,6 +89,7 @@ namespace Edu.Module.Course ...@@ -78,6 +89,7 @@ namespace Edu.Module.Course
/// 账号 /// 账号
/// </summary> /// </summary>
private readonly RB_AccountRepository accountRepository = new RB_AccountRepository(); private readonly RB_AccountRepository accountRepository = new RB_AccountRepository();
/// <summary> /// <summary>
/// 合同 /// 合同
/// </summary> /// </summary>
...@@ -88,6 +100,11 @@ namespace Edu.Module.Course ...@@ -88,6 +100,11 @@ namespace Edu.Module.Course
/// </summary> /// </summary>
private readonly RB_StudyAbroadRepository studyAbroadRepository = new RB_StudyAbroadRepository(); private readonly RB_StudyAbroadRepository studyAbroadRepository = new RB_StudyAbroadRepository();
/// <summary>
/// 报价单仓储层对象
/// </summary>
private readonly RB_Course_OfferRepository course_OfferRepository = new RB_Course_OfferRepository();
#region 日语培训 #region 日语培训
...@@ -646,20 +663,39 @@ namespace Edu.Module.Course ...@@ -646,20 +663,39 @@ namespace Edu.Module.Course
/// <param name="orderId"></param> /// <param name="orderId"></param>
/// <param name="userInfo"></param> /// <param name="userInfo"></param>
/// <returns></returns> /// <returns></returns>
public bool CancelClassOrder(int orderId, UserInfo userInfo) [TransactionCallHandler]
public virtual bool CancelClassOrder(int orderId, UserInfo userInfo)
{
var orderModel = orderRepository.GetEntity(orderId);
Dictionary<string, object> keyValues = new Dictionary<string, object>()
{ {
Dictionary<string, object> keyValues = new Dictionary<string, object>() {
{ nameof(RB_Order_ViewModel.OrderState),OrderStateEnum.Cancel} { nameof(RB_Order_ViewModel.OrderState),OrderStateEnum.Cancel}
}; };
List<WhereHelper> wheres = new List<WhereHelper>() { if (orderModel.OfferId > 0)
new WhereHelper(){ {
keyValues.Add(nameof(RB_Order_ViewModel.OfferId), 0);
}
List<WhereHelper> wheres = new List<WhereHelper>()
{
new WhereHelper()
{
FiledName=nameof(RB_Order_ViewModel.OrderId), FiledName=nameof(RB_Order_ViewModel.OrderId),
FiledValue=orderId, FiledValue=orderId,
OperatorEnum=OperatorEnum.Equal OperatorEnum=OperatorEnum.Equal
} }
}; };
bool flag = orderRepository.Update(keyValues, wheres); bool flag = orderRepository.Update(keyValues, wheres);
if (flag) { if (flag)
{
if (orderModel.OfferId > 0)
{
Dictionary<string, object> offerFileds = new Dictionary<string, object>()
{
{ nameof(RB_Course_Offer_ViewModel.CustomerStatus),(int)CustomerStatusEnum.Cancel},
{ nameof(RB_Course_Offer_ViewModel.OrderId),0},
};
flag= course_OfferRepository.Update(offerFileds, new WhereHelper(nameof(RB_Course_Offer_ViewModel.Id), orderModel.OfferId));
}
//记录日志信息 //记录日志信息
changeLogRepository.Insert(new Model.Entity.Log.RB_User_ChangeLog() changeLogRepository.Insert(new Model.Entity.Log.RB_User_ChangeLog()
{ {
......
...@@ -119,8 +119,6 @@ namespace Edu.Module.Finance ...@@ -119,8 +119,6 @@ namespace Edu.Module.Finance
costlist = costtypeRepository.GetList(new RB_Costtype_Extend() { CostIds = string.Join(",", fdlist.Select(x => x.CostTypeId ?? 0)) }); costlist = costtypeRepository.GetList(new RB_Costtype_Extend() { CostIds = string.Join(",", fdlist.Select(x => x.CostTypeId ?? 0)) });
} }
walist = Finance_TemplateRepository.GetAgreeOrWaitList(new Rb_Workflow_Auditrecord() { AuditStatus = WFRrocessStatus.NotAudit }, fridStr); walist = Finance_TemplateRepository.GetAgreeOrWaitList(new Rb_Workflow_Auditrecord() { AuditStatus = WFRrocessStatus.NotAudit }, fridStr);
// tclist = GetTCIDANDTCNUMForBatch(list.Select(x => x.FrID).ToList());
volist = voucherRepository.GetList(new RB_Voucher_Extend() { FrIdStr = fridStr }); volist = voucherRepository.GetList(new RB_Voucher_Extend() { FrIdStr = fridStr });
} }
......
...@@ -142,6 +142,7 @@ namespace Edu.Module.StudyAbroad ...@@ -142,6 +142,7 @@ namespace Edu.Module.StudyAbroad
{ nameof(RB_StudyAbroad_ViewModel.SupplierId),model.SupplierId}, { nameof(RB_StudyAbroad_ViewModel.SupplierId),model.SupplierId},
{ nameof(RB_StudyAbroad_ViewModel.SupplierContract),model.SupplierContract}, { nameof(RB_StudyAbroad_ViewModel.SupplierContract),model.SupplierContract},
{ nameof(RB_StudyAbroad_ViewModel.Remark),model.Remark}, { nameof(RB_StudyAbroad_ViewModel.Remark),model.Remark},
{ nameof(RB_StudyAbroad_ViewModel.School_Id),model.School_Id},
}; };
flag = studyAbroadRepository.Update(fileds, new WhereHelper(nameof(RB_StudyAbroad_ViewModel.Id), model.Id)); flag = studyAbroadRepository.Update(fileds, new WhereHelper(nameof(RB_StudyAbroad_ViewModel.Id), model.Id));
} }
......
...@@ -410,7 +410,7 @@ where {where} ...@@ -410,7 +410,7 @@ where {where}
orderBy = " o.CreateTime desc"; orderBy = " o.CreateTime desc";
} }
string sql = $@" string sql = $@"
SELECT o.*,C.`Name` AS StudyName SELECT o.*,C.`Name` AS StudyName,C.School_Id AS ClassSchoolId
FROM RB_Order o LEFT JOIN rb_studyabroad c ON o.SourceId = c.Id FROM RB_Order o LEFT JOIN rb_studyabroad c ON o.SourceId = c.Id
WHERE {where} ORDER BY {orderBy} WHERE {where} ORDER BY {orderBy}
"; ";
......
...@@ -29,8 +29,9 @@ namespace Edu.Repository.StudyAbroad ...@@ -29,8 +29,9 @@ namespace Edu.Repository.StudyAbroad
var parameters = new DynamicParameters(); var parameters = new DynamicParameters();
StringBuilder builder = new StringBuilder(); StringBuilder builder = new StringBuilder();
builder.AppendFormat(@" builder.AppendFormat(@"
SELECT A.*,IFNULL(B.`Name`,'') AS SupplierName,IFNULL(B.ContractUrl,'') AS ContractUrl SELECT A.*,IFNULL(B.`Name`,'') AS SupplierName,IFNULL(B.ContractUrl,'') AS ContractUrl,IFNULL(c.SName,'') AS SchoolName
FROM RB_StudyAbroad AS A LEFT JOIN rb_supplier AS B ON A.SupplierId=B.Id FROM RB_StudyAbroad AS A LEFT JOIN rb_supplier AS B ON A.SupplierId=B.Id
LEFT JOIN rb_school AS C ON A.School_Id=C.SId
WHERE 1=1 WHERE 1=1
"); ");
builder.AppendFormat(" AND A.{0}={1}", nameof(RB_StudyAbroad_ViewModel.Status), (int)DateStateEnum.Normal); builder.AppendFormat(" AND A.{0}={1}", nameof(RB_StudyAbroad_ViewModel.Status), (int)DateStateEnum.Normal);
......
...@@ -471,10 +471,10 @@ namespace Edu.WebApi.Controllers.Course ...@@ -471,10 +471,10 @@ namespace Edu.WebApi.Controllers.Course
var userInfo = base.UserInfo; var userInfo = base.UserInfo;
JObject prams = JObject.Parse(RequestParm.Msg.ToString()); JObject prams = JObject.Parse(RequestParm.Msg.ToString());
int OrderId = prams.GetInt("OrderId", 0); int OrderId = prams.GetInt("OrderId", 0);
if (OrderId <= 0) { if (OrderId <= 0)
{
return ApiResult.ParamIsNull("订单号不存在"); return ApiResult.ParamIsNull("订单号不存在");
} }
bool flag = orderModule.CancelClassOrder(OrderId, userInfo); bool flag = orderModule.CancelClassOrder(OrderId, userInfo);
if (flag) if (flag)
{ {
......
...@@ -9,6 +9,7 @@ using Edu.Model.ViewModel.Course; ...@@ -9,6 +9,7 @@ using Edu.Model.ViewModel.Course;
using Edu.Model.ViewModel.Finance; using Edu.Model.ViewModel.Finance;
using Edu.Module.Course; using Edu.Module.Course;
using Edu.Module.Finance; using Edu.Module.Finance;
using Edu.Module.StudyAbroad;
using Edu.WebApi.Filter; using Edu.WebApi.Filter;
using Microsoft.AspNetCore.Cors; using Microsoft.AspNetCore.Cors;
using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc;
...@@ -24,9 +25,28 @@ namespace Edu.WebApi.Controllers.Finance ...@@ -24,9 +25,28 @@ namespace Edu.WebApi.Controllers.Finance
[EnableCors("AllowCors")] [EnableCors("AllowCors")]
public class FinanceController : BaseController public class FinanceController : BaseController
{ {
/// <summary>
/// 财务处理类对象
/// </summary>
private readonly FinanceModule financeModule = AOP.AOPHelper.CreateAOPObject<FinanceModule>(); private readonly FinanceModule financeModule = AOP.AOPHelper.CreateAOPObject<FinanceModule>();
/// <summary>
/// 订单处理类对象
/// </summary>
private readonly OrderModule orderModule = AOP.AOPHelper.CreateAOPObject<OrderModule>(); private readonly OrderModule orderModule = AOP.AOPHelper.CreateAOPObject<OrderModule>();
/// <summary>
/// 班级处理类对象
/// </summary>
private readonly ClassModule classModule = AOP.AOPHelper.CreateAOPObject<ClassModule>(); private readonly ClassModule classModule = AOP.AOPHelper.CreateAOPObject<ClassModule>();
/// <summary>
/// 留学就业处理类对象
/// </summary>
private readonly StudyAbroadModule studyAbroadModule = AOP.AOPHelper.CreateAOPObject<StudyAbroadModule>();
/// <summary>
/// 教务奖励处理类对象
/// </summary>
private readonly TeachingRewardsModule teachingRewardsModule = AOP.AOPHelper.CreateAOPObject<TeachingRewardsModule>(); private readonly TeachingRewardsModule teachingRewardsModule = AOP.AOPHelper.CreateAOPObject<TeachingRewardsModule>();
/// <summary> /// <summary>
...@@ -39,7 +59,7 @@ namespace Edu.WebApi.Controllers.Finance ...@@ -39,7 +59,7 @@ namespace Edu.WebApi.Controllers.Finance
int classId = base.ParmJObj.GetInt("ClassId", 0); int classId = base.ParmJObj.GetInt("ClassId", 0);
int schoolId = base.ParmJObj.GetInt("School_Id"); int schoolId = base.ParmJObj.GetInt("School_Id");
int SourceId = base.ParmJObj.GetInt("SourceId"); int SourceId = base.ParmJObj.GetInt("SourceId");
if (classId <= 0 && SourceId<=0) if (classId <= 0 && SourceId <= 0)
{ {
return ApiResult.Failed("班级Id不存在"); return ApiResult.Failed("班级Id不存在");
} }
...@@ -55,7 +75,7 @@ namespace Edu.WebApi.Controllers.Finance ...@@ -55,7 +75,7 @@ namespace Edu.WebApi.Controllers.Finance
//收入 //收入
decimal IncomeReceive = 0;//应收 decimal IncomeReceive = 0;//应收
decimal IncomeActual = 0;//实收 decimal IncomeActual = 0;//实收
var orderList = orderModule.GetClassOrderList_V2(classId, base.UserInfo.Group_Id,SourceId).Where(x => (int)x.OrderState < 3); var orderList = orderModule.GetClassOrderList_V2(classId, base.UserInfo.Group_Id, SourceId).Where(x => (int)x.OrderState < 3);
IncomeReceive = (orderList != null && orderList.Any()) ? orderList.Sum(x => x.PreferPrice) : 0; IncomeReceive = (orderList != null && orderList.Any()) ? orderList.Sum(x => x.PreferPrice) : 0;
IncomeActual = (orderList != null && orderList.Any()) ? orderList.Sum(x => x.Income) : 0; IncomeActual = (orderList != null && orderList.Any()) ? orderList.Sum(x => x.Income) : 0;
...@@ -83,8 +103,19 @@ namespace Edu.WebApi.Controllers.Finance ...@@ -83,8 +103,19 @@ namespace Edu.WebApi.Controllers.Finance
var meritsProfitList = teachingRewardsModule.GetTeachingPerfList(new RB_Teaching_Perf_ViewModel { Group_Id = base.UserInfo.Group_Id, ClassId = classId, School_Id = schoolId }); var meritsProfitList = teachingRewardsModule.GetTeachingPerfList(new RB_Teaching_Perf_ViewModel { Group_Id = base.UserInfo.Group_Id, ClassId = classId, School_Id = schoolId });
decimal MeritsProfit = (meritsProfitList != null && meritsProfitList.Any()) ? (meritsProfitList.Where(x => x.PerfState == Common.Enum.Course.PerfStateEnum.Confirmed).OrderByDescending(x => x.CreateTime).FirstOrDefault()?.Money ?? 0) : 0;//绩效提成 decimal MeritsProfit = (meritsProfitList != null && meritsProfitList.Any()) ? (meritsProfitList.Where(x => x.PerfState == Common.Enum.Course.PerfStateEnum.Confirmed).OrderByDescending(x => x.CreateTime).FirstOrDefault()?.Money ?? 0) : 0;//绩效提成
var classInfo = classModule.GetClassAndCourseListRepository(new Model.ViewModel.Course.RB_Class_ViewModel { Group_Id = base.UserInfo.Group_Id, ClassId = classId, School_Id = schoolId }).FirstOrDefault();
//项目信息
var projectInfo = new object();
if (classId > 0)
{
var classInfo = classModule.GetClassAndCourseListRepository(new Model.ViewModel.Course.RB_Class_ViewModel { Group_Id = base.UserInfo.Group_Id, ClassId = classId, School_Id = schoolId }).FirstOrDefault();
projectInfo = new { classInfo?.ClassName, classInfo?.CourseName, classInfo?.TeacherName, OpenTime = classInfo?.OpenTime.ToString("yyyy-MM-dd") };
}
else if (SourceId > 0)
{
var studyInfo = studyAbroadModule.GetStudyAbroadModule(SourceId);
projectInfo = new { ClassName = studyInfo?.Name, CourseName = "", TeacherName = "", OpenTime = "" };
}
var recultFiniceList = financeList.Select(x => new var recultFiniceList = financeList.Select(x => new
{ {
x.FrID, x.FrID,
...@@ -118,7 +149,7 @@ namespace Edu.WebApi.Controllers.Finance ...@@ -118,7 +149,7 @@ namespace Edu.WebApi.Controllers.Finance
var resultData = new var resultData = new
{ {
ClassFinance = new { classFinanceModel.ClassId, classFinanceModel.IsOpen, classFinanceModel.Group_Id, classFinanceModel.School_Id, classFinanceModel.FinanceId }, ClassFinance = new { classFinanceModel.ClassId, classFinanceModel.IsOpen, classFinanceModel.Group_Id, classFinanceModel.School_Id, classFinanceModel.FinanceId },
ClassInfo = new { classInfo.ClassName, classInfo.CourseName, classInfo.TeacherName, OpenTime = classInfo.OpenTime.ToString("yyyy-MM-dd") }, ClassInfo = projectInfo,
IncomeReceive, IncomeReceive,
IncomeActual, IncomeActual,
OtherIncomeReceive, OtherIncomeReceive,
...@@ -138,9 +169,6 @@ namespace Edu.WebApi.Controllers.Finance ...@@ -138,9 +169,6 @@ namespace Edu.WebApi.Controllers.Finance
return ApiResult.Success("", resultData); return ApiResult.Success("", resultData);
} }
/// <summary> /// <summary>
/// 用户信息下载 /// 用户信息下载
/// </summary> /// </summary>
...@@ -153,21 +181,23 @@ namespace Edu.WebApi.Controllers.Finance ...@@ -153,21 +181,23 @@ namespace Edu.WebApi.Controllers.Finance
int SourceId = base.ParmJObj.GetInt("SourceId"); int SourceId = base.ParmJObj.GetInt("SourceId");
List<ExcelDataSource> slist = new List<ExcelDataSource>(); List<ExcelDataSource> slist = new List<ExcelDataSource>();
string ExcelName = "用户列表" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".xls"; string ExcelName = "用户列表" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".xls";
if (classId <= 0) if (classId <= 0 && SourceId <= 0)
{ {
var byteData1 = ExcelTempLateHelper.ToExcelExtend(slist); var byteData1 = ExcelTempLateHelper.ToExcelExtend(slist);
return File(byteData1, "application/octet-stream", ExcelName); return File(byteData1, "application/octet-stream", ExcelName);
} }
RB_Finance_Extend model = new RB_Finance_Extend() { TCID = classId, OrderSource = OrderResourceEnum.Education, RB_Group_Id = base.UserInfo.Group_Id, FinanceType = 2 }; RB_Finance_Extend model = new RB_Finance_Extend() { TCID = classId, OrderSource = OrderResourceEnum.Education, RB_Group_Id = base.UserInfo.Group_Id, FinanceType = 2 };
if (SourceId > 0)
{
model.TCID = SourceId;
model.OrderSource = OrderResourceEnum.EducationStudy;
}
var financeList = financeModule.GetFinanceInfoList(model).Where(t => (t.Status == FinanceAuditStatus.InReview || t.Status == FinanceAuditStatus.Pass || t.Status == FinanceAuditStatus.CTemporary)).ToList(); var financeList = financeModule.GetFinanceInfoList(model).Where(t => (t.Status == FinanceAuditStatus.InReview || t.Status == FinanceAuditStatus.Pass || t.Status == FinanceAuditStatus.CTemporary)).ToList();
//收入 //收入
decimal IncomeReceive = 0;//应收 decimal IncomeReceive = 0;//应收
decimal IncomeActual = 0;//实收 decimal IncomeActual = 0;//实收
var orderList = orderModule.GetClassOrderList_V2(classId, base.UserInfo.Group_Id,SourceId).Where(x => (int)x.OrderState < 3); var orderList = orderModule.GetClassOrderList_V2(classId, base.UserInfo.Group_Id, SourceId).Where(x => (int)x.OrderState < 3);
IncomeReceive = (orderList != null && orderList.Any()) ? orderList.Sum(x => x.PreferPrice) : 0; IncomeReceive = (orderList != null && orderList.Any()) ? orderList.Sum(x => x.PreferPrice) : 0;
IncomeActual = (orderList != null && orderList.Any()) ? orderList.Sum(x => x.Income) : 0; IncomeActual = (orderList != null && orderList.Any()) ? orderList.Sum(x => x.Income) : 0;
...@@ -195,17 +225,52 @@ namespace Edu.WebApi.Controllers.Finance ...@@ -195,17 +225,52 @@ namespace Edu.WebApi.Controllers.Finance
var meritsProfitList = teachingRewardsModule.GetTeachingPerfList(new RB_Teaching_Perf_ViewModel { Group_Id = base.UserInfo.Group_Id, ClassId = classId, School_Id = schoolId }); var meritsProfitList = teachingRewardsModule.GetTeachingPerfList(new RB_Teaching_Perf_ViewModel { Group_Id = base.UserInfo.Group_Id, ClassId = classId, School_Id = schoolId });
decimal MeritsProfit = (meritsProfitList != null && meritsProfitList.Any()) ? (meritsProfitList.OrderByDescending(x => x.CreateTime).FirstOrDefault()?.Money ?? 0) : 0;//绩效提成 decimal MeritsProfit = (meritsProfitList != null && meritsProfitList.Any()) ? (meritsProfitList.OrderByDescending(x => x.CreateTime).FirstOrDefault()?.Money ?? 0) : 0;//绩效提成
var classInfo = classModule.GetClassAndCourseListRepository(new Model.ViewModel.Course.RB_Class_ViewModel { Group_Id = base.UserInfo.Group_Id, ClassId = classId, School_Id = schoolId }).FirstOrDefault();
string title = "班级情况";
string subtitle = "班级名称";
string thirdTitle = "课程名称:";
string fourTitle = "开班时间:";
//项目信息
var projectInfo = new RB_Class_ViewModel();
if (classId > 0)
{
var classInfo = classModule.GetClassAndCourseListRepository(new Model.ViewModel.Course.RB_Class_ViewModel { Group_Id = base.UserInfo.Group_Id, ClassId = classId, School_Id = schoolId }).FirstOrDefault();
projectInfo = new RB_Class_ViewModel()
{
ClassName= classInfo?.ClassName,
CourseName= classInfo?.CourseName,
TeacherName= classInfo?.TeacherName,
OpenTimeStr = classInfo?.OpenTime.ToString("yyyy-MM-dd")
};
}
else if (SourceId > 0)
{
var studyInfo = studyAbroadModule.GetStudyAbroadModule(SourceId);
projectInfo = new RB_Class_ViewModel
{
ClassName = studyInfo?.Name,
CourseName = "",
TeacherName = "",
OpenTimeStr = ""
};
title = (studyInfo?.Type ?? 0) ==1? "留学情况" : "就业情况";
subtitle = "项目名称";
thirdTitle = "";
fourTitle = "";
}
List<RB_Finance_Extend> financeReciveList = financeList.Where(t => t.Type == WFTempLateClassEnum.IN).ToList(); List<RB_Finance_Extend> financeReciveList = financeList.Where(t => t.Type == WFTempLateClassEnum.IN).ToList();
List<RB_Finance_Extend> financePayList = financeList.Where(t => t.Type == WFTempLateClassEnum.OUT).ToList(); List<RB_Finance_Extend> financePayList = financeList.Where(t => t.Type == WFTempLateClassEnum.OUT).ToList();
try try
{ {
ExcelDataSource teamBalance = new ExcelDataSource(50) ExcelDataSource teamBalance = new ExcelDataSource(50)
{ {
ExcelRows = new List<ExcelColumn>() { ExcelRows = new List<ExcelColumn>()
new ExcelColumn(value: "班级情况",colspan:2){ {
new ExcelColumn(value: title,colspan:2)
{
IsBold = true, IsBold = true,
CellWidth=30, CellWidth=30,
HAlignmentEnum= HAlignmentEnum.LEFT, HAlignmentEnum= HAlignmentEnum.LEFT,
...@@ -215,7 +280,8 @@ namespace Edu.WebApi.Controllers.Finance ...@@ -215,7 +280,8 @@ namespace Edu.WebApi.Controllers.Finance
IsBold = true, IsBold = true,
CellWidth=20, CellWidth=20,
HAlignmentEnum= HAlignmentEnum.LEFT HAlignmentEnum= HAlignmentEnum.LEFT
}, new ExcelColumn(value:"其他收入",colspan:2) },
new ExcelColumn(value:"其他收入",colspan:2)
{ {
IsBold = true, IsBold = true,
CellWidth=20, CellWidth=20,
...@@ -232,7 +298,8 @@ namespace Edu.WebApi.Controllers.Finance ...@@ -232,7 +298,8 @@ namespace Edu.WebApi.Controllers.Finance
IsBold = true, IsBold = true,
CellWidth=20, CellWidth=20,
HAlignmentEnum= HAlignmentEnum.LEFT HAlignmentEnum= HAlignmentEnum.LEFT
}, new ExcelColumn(value:"提成",colspan:2) },
new ExcelColumn(value:"提成",colspan:2)
{ {
IsBold = true, IsBold = true,
CellWidth=20, CellWidth=20,
...@@ -244,16 +311,17 @@ namespace Edu.WebApi.Controllers.Finance ...@@ -244,16 +311,17 @@ namespace Edu.WebApi.Controllers.Finance
ExcelDataSource firstRow = new ExcelDataSource(30) ExcelDataSource firstRow = new ExcelDataSource(30)
{ {
ExcelRows = new List<ExcelColumn>() { ExcelRows = new List<ExcelColumn>()
new ExcelColumn(value: $"班级名称:{classInfo.ClassName}",colspan:2){ {
new ExcelColumn(value: $"{subtitle}{projectInfo.ClassName}",colspan:2)
{
HAlignmentEnum= HAlignmentEnum.LEFT, HAlignmentEnum= HAlignmentEnum.LEFT,
}, },
new ExcelColumn(value:$"应收:¥{IncomeReceive}",colspan:2) new ExcelColumn(value:$"应收:¥{IncomeReceive}",colspan:2)
{ {
CellWidth=15, CellWidth=15,
HAlignmentEnum= HAlignmentEnum.LEFT HAlignmentEnum= HAlignmentEnum.LEFT
} },
,
new ExcelColumn(value:$"应收:¥{OtherIncomeReceive}",colspan:2) new ExcelColumn(value:$"应收:¥{OtherIncomeReceive}",colspan:2)
{ {
HAlignmentEnum= HAlignmentEnum.LEFT HAlignmentEnum= HAlignmentEnum.LEFT
...@@ -264,7 +332,8 @@ namespace Edu.WebApi.Controllers.Finance ...@@ -264,7 +332,8 @@ namespace Edu.WebApi.Controllers.Finance
new ExcelColumn(value:$"实际利润:¥{ProfitActual}",colspan:2) new ExcelColumn(value:$"实际利润:¥{ProfitActual}",colspan:2)
{ {
HAlignmentEnum= HAlignmentEnum.LEFT HAlignmentEnum= HAlignmentEnum.LEFT
}, new ExcelColumn(value:$"销售提成:¥{SaleCommission}",colspan:2) },
new ExcelColumn(value:$"销售提成:¥{SaleCommission}",colspan:2)
{ {
HAlignmentEnum= HAlignmentEnum.LEFT HAlignmentEnum= HAlignmentEnum.LEFT
} }
...@@ -273,27 +342,30 @@ namespace Edu.WebApi.Controllers.Finance ...@@ -273,27 +342,30 @@ namespace Edu.WebApi.Controllers.Finance
slist.Add(firstRow); slist.Add(firstRow);
ExcelDataSource secondRow = new ExcelDataSource(30) ExcelDataSource secondRow = new ExcelDataSource(30)
{ {
ExcelRows = new List<ExcelColumn>() { ExcelRows = new List<ExcelColumn>()
new ExcelColumn(value: $"课程名称:{classInfo.CourseName}",colspan:2){ {
new ExcelColumn(value: $"{thirdTitle}{projectInfo.CourseName}",colspan:2)
{
HAlignmentEnum= HAlignmentEnum.LEFT, HAlignmentEnum= HAlignmentEnum.LEFT,
}, },
new ExcelColumn(value:$"实收:¥{IncomeActual}",colspan:2) new ExcelColumn(value:$"实收:¥{IncomeActual}",colspan:2)
{ {
CellWidth=15, CellWidth=15,
HAlignmentEnum= HAlignmentEnum.LEFT HAlignmentEnum= HAlignmentEnum.LEFT
} },
,
new ExcelColumn(value:$"实收:¥{OtherIncomeActual}",colspan:2) new ExcelColumn(value:$"实收:¥{OtherIncomeActual}",colspan:2)
{ {
HAlignmentEnum= HAlignmentEnum.LEFT HAlignmentEnum= HAlignmentEnum.LEFT
}, new ExcelColumn(value:$"实付:¥{PayActual}",colspan:2) },
new ExcelColumn(value:$"实付:¥{PayActual}",colspan:2)
{ {
HAlignmentEnum= HAlignmentEnum.LEFT HAlignmentEnum= HAlignmentEnum.LEFT
}, },
new ExcelColumn(value:$"当前利润:¥{ProfitNow}",colspan:2) new ExcelColumn(value:$"当前利润:¥{ProfitNow}",colspan:2)
{ {
HAlignmentEnum= HAlignmentEnum.LEFT HAlignmentEnum= HAlignmentEnum.LEFT
}, new ExcelColumn(value:$"课时费:¥{TeacherProfitNow}",colspan:2) },
new ExcelColumn(value:$"课时费:¥{TeacherProfitNow}",colspan:2)
{ {
HAlignmentEnum= HAlignmentEnum.LEFT HAlignmentEnum= HAlignmentEnum.LEFT
} }
...@@ -302,20 +374,22 @@ namespace Edu.WebApi.Controllers.Finance ...@@ -302,20 +374,22 @@ namespace Edu.WebApi.Controllers.Finance
slist.Add(secondRow); slist.Add(secondRow);
ExcelDataSource thirdRow = new ExcelDataSource(30) ExcelDataSource thirdRow = new ExcelDataSource(30)
{ {
ExcelRows = new List<ExcelColumn>() { ExcelRows = new List<ExcelColumn>()
new ExcelColumn(value: $"开班时间:{classInfo.OpenTime:yyyy-MM-dd}",colspan:2){ {
new ExcelColumn(value: $"{fourTitle}{projectInfo.OpenTimeStr:yyyy-MM-dd}",colspan:2)
{
HAlignmentEnum= HAlignmentEnum.LEFT, HAlignmentEnum= HAlignmentEnum.LEFT,
}, },
new ExcelColumn(value:$"待收:¥{(IncomeReceive-IncomeActual)}",colspan:2) new ExcelColumn(value:$"待收:¥{(IncomeReceive-IncomeActual)}",colspan:2)
{ {
CellWidth=15, CellWidth=15,
HAlignmentEnum= HAlignmentEnum.LEFT HAlignmentEnum= HAlignmentEnum.LEFT
} },
,
new ExcelColumn(value:$"待收:¥{(OtherIncomeReceive-OtherIncomeActual)}",colspan:2) new ExcelColumn(value:$"待收:¥{(OtherIncomeReceive-OtherIncomeActual)}",colspan:2)
{ {
HAlignmentEnum= HAlignmentEnum.LEFT HAlignmentEnum= HAlignmentEnum.LEFT
}, new ExcelColumn(value:$"待付:¥{(PayReceive-PayActual)}",colspan:2) },
new ExcelColumn(value:$"待付:¥{(PayReceive-PayActual)}",colspan:2)
{ {
HAlignmentEnum= HAlignmentEnum.LEFT HAlignmentEnum= HAlignmentEnum.LEFT
}, },
...@@ -331,33 +405,38 @@ namespace Edu.WebApi.Controllers.Finance ...@@ -331,33 +405,38 @@ namespace Edu.WebApi.Controllers.Finance
slist.Add(thirdRow); slist.Add(thirdRow);
ExcelDataSource fourRow = new ExcelDataSource(30) ExcelDataSource fourRow = new ExcelDataSource(30)
{ {
ExcelRows = new List<ExcelColumn>() { ExcelRows = new List<ExcelColumn>()
new ExcelColumn(value: $"带课老师:{classInfo.TeacherName}",colspan:2){ {
new ExcelColumn(value: $"带课老师:{projectInfo.TeacherName}",colspan:2)
{
HAlignmentEnum= HAlignmentEnum.LEFT, HAlignmentEnum= HAlignmentEnum.LEFT,
}, },
new ExcelColumn(value:"",colspan:2) new ExcelColumn(value:"",colspan:2)
{ {
HAlignmentEnum= HAlignmentEnum.LEFT HAlignmentEnum= HAlignmentEnum.LEFT
} },
,
new ExcelColumn(value:"",colspan:2) new ExcelColumn(value:"",colspan:2)
{ {
HAlignmentEnum= HAlignmentEnum.LEFT HAlignmentEnum= HAlignmentEnum.LEFT
}, new ExcelColumn(value:"",colspan:2) },
new ExcelColumn(value:"",colspan:2)
{ {
HAlignmentEnum= HAlignmentEnum.LEFT HAlignmentEnum= HAlignmentEnum.LEFT
}, },
new ExcelColumn(value:"",colspan:2) new ExcelColumn(value:"",colspan:2)
{ {
HAlignmentEnum= HAlignmentEnum.LEFT HAlignmentEnum= HAlignmentEnum.LEFT
}, new ExcelColumn(value:"",colspan:2) },
new ExcelColumn(value:"",colspan:2)
{ {
HAlignmentEnum= HAlignmentEnum.LEFT HAlignmentEnum= HAlignmentEnum.LEFT
} }
} }
}; };
if (classId > 0)
{
slist.Add(fourRow); slist.Add(fourRow);
}
ExcelDataSource splitRow = new ExcelDataSource(40) ExcelDataSource splitRow = new ExcelDataSource(40)
{ {
ExcelRows = new List<ExcelColumn>() ExcelRows = new List<ExcelColumn>()
...@@ -367,8 +446,10 @@ namespace Edu.WebApi.Controllers.Finance ...@@ -367,8 +446,10 @@ namespace Edu.WebApi.Controllers.Finance
#region 收支列表 #region 收支列表
ExcelDataSource reciveRow = new ExcelDataSource(40) ExcelDataSource reciveRow = new ExcelDataSource(40)
{ {
ExcelRows = new List<ExcelColumn>() { ExcelRows = new List<ExcelColumn>()
new ExcelColumn(value: "收入",colspan:9){ {
new ExcelColumn(value: "收入",colspan:9)
{
IsBold = true, IsBold = true,
IsSetBorder =false, IsSetBorder =false,
HAlignmentEnum= HAlignmentEnum.LEFT, HAlignmentEnum= HAlignmentEnum.LEFT,
...@@ -379,8 +460,10 @@ namespace Edu.WebApi.Controllers.Finance ...@@ -379,8 +460,10 @@ namespace Edu.WebApi.Controllers.Finance
GenerateTeamBalanceSheet(slist, financeReciveList, WFTempLateClassEnum.IN); GenerateTeamBalanceSheet(slist, financeReciveList, WFTempLateClassEnum.IN);
ExcelDataSource payRow = new ExcelDataSource(40) ExcelDataSource payRow = new ExcelDataSource(40)
{ {
ExcelRows = new List<ExcelColumn>() { ExcelRows = new List<ExcelColumn>()
new ExcelColumn(value: "支出",colspan:9){ {
new ExcelColumn(value: "支出",colspan:9)
{
IsBold = true, IsBold = true,
IsSetBorder =false, IsSetBorder =false,
HAlignmentEnum= HAlignmentEnum.LEFT, HAlignmentEnum= HAlignmentEnum.LEFT,
...@@ -390,6 +473,7 @@ namespace Edu.WebApi.Controllers.Finance ...@@ -390,6 +473,7 @@ namespace Edu.WebApi.Controllers.Finance
slist.Add(payRow); slist.Add(payRow);
GenerateTeamBalanceSheet(slist, financePayList, WFTempLateClassEnum.OUT); GenerateTeamBalanceSheet(slist, financePayList, WFTempLateClassEnum.OUT);
#endregion #endregion
var byteData = ExcelTempLateHelper.ToExcelExtend(slist); var byteData = ExcelTempLateHelper.ToExcelExtend(slist);
return File(byteData, "application/octet-stream", ExcelName); return File(byteData, "application/octet-stream", ExcelName);
} }
...@@ -401,9 +485,6 @@ namespace Edu.WebApi.Controllers.Finance ...@@ -401,9 +485,6 @@ namespace Edu.WebApi.Controllers.Finance
} }
} }
/// <summary> /// <summary>
/// 添加修改班级收支设置 /// 添加修改班级收支设置
/// </summary> /// </summary>
...@@ -612,7 +693,6 @@ namespace Edu.WebApi.Controllers.Finance ...@@ -612,7 +693,6 @@ namespace Edu.WebApi.Controllers.Finance
#endregion #endregion
#region 报表查询 #region 报表查询
/// <summary> /// <summary>
...@@ -706,7 +786,8 @@ namespace Edu.WebApi.Controllers.Finance ...@@ -706,7 +786,8 @@ namespace Edu.WebApi.Controllers.Finance
string ClassState = "结课"; string ClassState = "结课";
if (item.ClassState == 1) { ClassState = "未开班"; } if (item.ClassState == 1) { ClassState = "未开班"; }
else if (item.ClassState == 2) { ClassState = "学习中"; } else if (item.ClassState == 2) { ClassState = "学习中"; }
if (item.Id == -1) { if (item.Id == -1)
{
ClassState = ""; ClassState = "";
} }
ExcelDataSource datarow = new ExcelDataSource() ExcelDataSource datarow = new ExcelDataSource()
......
...@@ -245,6 +245,8 @@ namespace Edu.WebApi.Controllers.StudyAbroad ...@@ -245,6 +245,8 @@ namespace Edu.WebApi.Controllers.StudyAbroad
item.Name, item.Name,
item.SupplierId, item.SupplierId,
item.SupplierName, item.SupplierName,
item.School_Id,
item.SchoolName,
SupplierContract=item.ContractUrl, SupplierContract=item.ContractUrl,
item.SuggestPrice, item.SuggestPrice,
item.SellPrice, item.SellPrice,
...@@ -471,6 +473,7 @@ namespace Edu.WebApi.Controllers.StudyAbroad ...@@ -471,6 +473,7 @@ namespace Edu.WebApi.Controllers.StudyAbroad
extModel.Name, extModel.Name,
extModel.SupplierId, extModel.SupplierId,
extModel.SupplierName, extModel.SupplierName,
extModel.School_Id,
SupplierContract= extModel.ContractUrl, SupplierContract= extModel.ContractUrl,
extModel.SuggestPrice, extModel.SuggestPrice,
extModel.SellPrice, extModel.SellPrice,
......
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