Commit e43cfeb2 authored by 黄奎's avatar 黄奎

页面修改

parent 4f1e298a
......@@ -343,5 +343,16 @@ namespace Edu.Model.Entity.Course
/// 状态(0-草稿,1-提交审核,2-审核通过,3-驳回,4-取消)
/// </summary>
public int Status { get; set; }
/// <summary>
/// 系统查询使用(1-正常,0-不查询)
/// </summary>
public int IsSystemUse { get; set; }
/// <summary>
/// 原合同编号
/// </summary>
public int SourceContractId { get; set; }
}
}
using Edu.Common.Enum.Sale;
using System;
using System.Collections.Generic;
using System.Text;
using VT.FW.DB;
namespace Edu.Model.Entity.Course
{
/// <summary>
/// 订单分拆关联信息实体类
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_Order_SplitDetails
{
/// <summary>
/// 主键
/// </summary>
public int Id { get; set; }
/// <summary>
/// 销售第一报名的订单编号
/// </summary>
public int OldOrderId { get; set; }
/// <summary>
/// 订单编号
/// </summary>
public int S_OrderId { get; set; }
/// <summary>
/// 订单报入类型
/// </summary>
public OrderJoinTypeEnum S_JoinType { get; set; }
/// <summary>
/// 订单班级编号
/// </summary>
public int S_ClassId { get; set; }
/// <summary>
/// 目标订单编号
/// </summary>
public int T_OrderId { get; set; }
/// <summary>
/// 目标订单报入类型
/// </summary>
public OrderJoinTypeEnum T_JoinType { get; set; }
/// <summary>
/// 目标订单班级编号
/// </summary>
public int T_ClassId { get; set; }
/// <summary>
/// 创建人
/// </summary>
public int CreateBy { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public DateTime CreateTime { get; set; }
}
}
\ No newline at end of file
using Edu.Model.Entity.Course;
using System;
using System.Collections.Generic;
using System.Text;
namespace Edu.Model.ViewModel.Course
{
/// <summary>
/// 订单分拆关联信息视图实体类
/// </summary>
public class RB_Order_SplitDetails_ViewModel : RB_Order_SplitDetails
{
/// <summary>
/// 原订单编号【查询使用,多个逗号分隔】
/// </summary>
public string Q_OldOrderIds { get; set; }
/// <summary>
/// 原订单班级名称
/// </summary>
public string S_ClassName { get; set; }
/// <summary>
/// 新订单班级名称
/// </summary>
public string T_ClassName { get; set; }
}
}
......@@ -206,6 +206,11 @@ namespace Edu.Model.ViewModel.Course
/// </summary>
public int OldGuestId { get; set; }
/// <summary>
/// 新订单学员的新总课时
/// </summary>
public int NewGuestTotalClassHours { get; set; }
/// <summary>
/// 学员编号【转班生成财务单据使用】
/// </summary>
......
......@@ -39,11 +39,6 @@ namespace Edu.Module.Course
/// </summary>
private readonly RB_GroupRepository groupRepository = new RB_GroupRepository();
/// <summary>
/// 校区仓储层对象
/// </summary>
private readonly RB_SchoolRepository schoolRepository = new RB_SchoolRepository();
/// <summary>
/// 订单仓储层对象
/// </summary>
......@@ -239,7 +234,9 @@ namespace Edu.Module.Course
}
model.School_Id = classModel?.School_Id ?? 0;
//生成合同编码
model.ContractNo = CreateContractNumModule(model.Group_Id, model.School_Id);
model.ContractNo = education_ContractRepository.CreateContractNumRepository(model.Group_Id, model.School_Id);
model.IsSystemUse = 1;
model.SourceContractId = 0;
var newId = education_ContractRepository.Insert(model);
model.Id = newId;
flag = newId > 0;
......@@ -247,23 +244,7 @@ namespace Edu.Module.Course
return flag;
}
/// <summary>
/// 生成合同编号
/// </summary>
/// <param name="GroupId"></param>
/// <returns></returns>
public string CreateContractNumModule(int GroupId, int schoolId)
{
var schoolModel = schoolRepository.GetEntity(schoolId);
string newContractNum = Common.Config.ContractDefaultTitle;
if (schoolModel != null && schoolModel.SId > 0)
{
newContractNum = schoolModel?.ContractTitle ?? Common.Config.ContractDefaultTitle;
}
var totalCount = education_ContractRepository.GetContractCount(new RB_Education_Contract_ViewModel() { Group_Id = GroupId });
string num = (totalCount + 1 + 18).ToString("D4");
return newContractNum + num;
}
/// <summary>
/// 获取详情
......
......@@ -164,6 +164,11 @@ namespace Edu.Module.Course
/// </summary>
private readonly RB_Visitor_ReserveRepository visitor_ReserveRepository = new RB_Visitor_ReserveRepository();
/// <summary>
/// 订单拆分仓储层对象
/// </summary>
private readonly RB_Order_SplitDetailsRepository splitDetailsRepository = new RB_Order_SplitDetailsRepository();
#region 日语培训
/// <summary>
......@@ -728,7 +733,7 @@ namespace Edu.Module.Course
}
#endregion
#region 续课订单和转班订单 添加学员名单
#region 续课订单和转班订单和分拆订单 添加学员名单
if (flag && demodel.OldGuestId > 0)
{
var oldGuestModel = order_GuestRepository.GetEntity(demodel.OldGuestId);
......@@ -779,6 +784,11 @@ namespace Edu.Module.Course
//原订单学员的剩余课时
guestModel.TotalHours = oldGuestModel.TotalHours - oldGuestModel.CompleteHours;
}
else if (demodel.JoinType == OrderJoinTypeEnum.SplitOrder)
{
//新订单新课程的【根据时间计算的有效课时】
guestModel.TotalHours = demodel.NewGuestTotalClassHours;
}
SetOrderGuestInfo(guestModel, out string Nmessage);
demodel.NewGuestId = guestModel.Id;
}
......
This diff is collapsed.
......@@ -26,10 +26,14 @@ SELECT A.*,IFNULL(B.CateName,'') AS CateName
FROM RB_Course AS A LEFT JOIN rb_course_category AS B ON A.CateId=B.CateId
WHERE 1=1
");
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Course_ViewModel.Group_Id), query.Group_Id);
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Course_ViewModel.Status), (int)DateStateEnum.Normal);
if (query != null)
{
if (query.Group_Id > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Course_ViewModel.Group_Id), query.Group_Id);
}
if (!string.IsNullOrWhiteSpace(query.CourseName))
{
builder.AppendFormat(" AND A.{0} LIKE @CourseName ", nameof(RB_Course_ViewModel.CourseName));
......@@ -39,7 +43,6 @@ WHERE 1=1
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Course_ViewModel.CateId), query.CateId);
}
if (!string.IsNullOrEmpty(query.QCourseIds))
{
builder.AppendFormat(" AND A.{0} IN({1}) ", nameof(RB_Course_ViewModel.CourseId), query.QCourseIds);
......
using Edu.Common.Enum;
using Edu.Model.Entity.Course;
using Edu.Model.ViewModel.Course;
using Edu.Repository.User;
using System;
using System.Collections.Generic;
using System.Linq;
......@@ -14,6 +15,29 @@ namespace Edu.Repository.Course
/// </summary>
public class RB_Education_ContractRepository : BaseRepository<RB_Education_Contract>
{
/// <summary>
/// 校区仓储层对象
/// </summary>
private readonly RB_SchoolRepository schoolRepository = new RB_SchoolRepository();
/// <summary>
/// 生成合同编号
/// </summary>
/// <param name="GroupId"></param>
/// <returns></returns>
public string CreateContractNumRepository(int GroupId, int schoolId)
{
var schoolModel = schoolRepository.GetEntity(schoolId);
string newContractNum = Common.Config.ContractDefaultTitle;
if (schoolModel != null && schoolModel.SId > 0)
{
newContractNum = schoolModel?.ContractTitle ?? Common.Config.ContractDefaultTitle;
}
var totalCount = GetContractCount(new RB_Education_Contract_ViewModel() { Group_Id = GroupId });
string num = (totalCount + 1 + 18).ToString("D4");
return newContractNum + num;
}
/// <summary>
/// 获取分页列表
/// </summary>
......@@ -89,7 +113,7 @@ namespace Edu.Repository.Course
public List<RB_Education_Contract_ViewModel> GetList(RB_Education_Contract_ViewModel demodel)
{
DynamicParameters parameters = new DynamicParameters();
string where = $@" 1=1";
string where = $@" 1=1 AND IsSystemUse=1 ";
if (demodel.Group_Id > 0)
{
where += $@" AND {nameof(RB_Education_Contract_ViewModel.Group_Id)} ={demodel.Group_Id}";
......@@ -106,6 +130,10 @@ namespace Edu.Repository.Course
{
where += $@" AND {nameof(RB_Education_Contract_ViewModel.OrderId)} IN({demodel.OrderIds})";
}
if (demodel.GuestId > 0)
{
where += $@" AND {nameof(RB_Education_Contract_ViewModel.GuestId)} IN({demodel.GuestId})";
}
if (!string.IsNullOrEmpty(demodel.GuestIds))
{
where += $@" AND {nameof(RB_Education_Contract_ViewModel.GuestId)} IN({demodel.GuestIds})";
......
......@@ -109,7 +109,7 @@ namespace Edu.Repository.Course
}
if (demodel.QEffectStatus == 1)
{
where += $@" AND (B.JoinType=1 OR (B.JoinType=2 AND B.EffectStatus IN(1) )) ";
where += $@" AND (B.JoinType=1 OR B.JoinType=3 OR B.JoinType=4 OR B.JoinType=5 OR (B.JoinType=2 AND B.EffectStatus IN(1) )) ";
}
string sql = $@"
......
using Edu.Model.Entity.Course;
using Edu.Model.ViewModel.Course;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Edu.Repository.Course
{
/// <summary>
/// 订单分拆关联信息仓储层
/// </summary>
public class RB_Order_SplitDetailsRepository : BaseRepository<RB_Order_SplitDetails>
{
/// <summary>
/// 获取订单拆分关联列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Order_SplitDetails_ViewModel> GetOrderSplitDetailsListRepository(RB_Order_SplitDetails_ViewModel query)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.*,IFNULL(B.ClassName,'') AS S_ClassName,IFNULL(C.ClassName,'') AS T_ClassName
FROM RB_Order_SplitDetails AS A LEFT JOIN RB_class AS B ON A.S_ClassId=B.ClassId
LEFT JOIN rb_class AS C ON A.T_ClassId=C.ClassId
WHERE 1=1
");
if (query != null)
{
if (query.OldOrderId > 0)
{
builder.AppendFormat(@" AND A.{0}={1} ", nameof(RB_Order_SplitDetails_ViewModel.OldOrderId), query.OldOrderId);
}
if (!string.IsNullOrEmpty(query.Q_OldOrderIds))
{
builder.AppendFormat(@" AND A.{0} IN({1}) ", nameof(RB_Order_SplitDetails_ViewModel.OldOrderId), query.Q_OldOrderIds);
}
}
return Get<RB_Order_SplitDetails_ViewModel>(builder.ToString()).ToList();
}
}
}
......@@ -776,7 +776,7 @@ namespace Edu.WebApi.Controllers.Course
List<object> guestList = new List<object>();
foreach (var item in orderGuestList.Where(x => x.GuestState == 1 || x.GuestState == 6 || ((x.GuestState == 5 || x.GuestState == 7) && x.ChangeEffectTime.HasValue && Convert.ToDateTime(Common.ConvertHelper.FormatDate(x.ChangeEffectTime)) >= data.ClassDate)))
{
if (item.JoinType == Common.Enum.Sale.OrderJoinTypeEnum.Normal || (item.JoinType == Common.Enum.Sale.OrderJoinTypeEnum.InsertClass && data.ClassDate >= Convert.ToDateTime(Common.ConvertHelper.FormatDate(item.EffectTime))))
if (item.JoinType == Common.Enum.Sale.OrderJoinTypeEnum.Normal|| item.JoinType == Common.Enum.Sale.OrderJoinTypeEnum.RenewOrder || (item.JoinType == Common.Enum.Sale.OrderJoinTypeEnum.InsertClass && data.ClassDate >= Convert.ToDateTime(Common.ConvertHelper.FormatDate(item.EffectTime))))
{
guestList.Add(new
{
......
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