Commit 0cd8aaa5 authored by liudong1993's avatar liudong1993

解决冲突

parents 459087dd 94bf5c80
......@@ -104,5 +104,11 @@ namespace Edu.Common.Enum.Finance
/// </summary>
[EnumField("教育")]
Education = 17,
/// <summary>
/// 教育留学
/// </summary>
[EnumField("教育留学")]
EducationStudy = 18,
}
}
using Edu.Common.Plugin;
namespace Edu.Common.Enum.Sale
{
/// <summary>
/// 报价单类型
/// </summary>
public enum OfferTypeEnum
{
/// <summary>
/// 课程
/// </summary>
[EnumField("课程")]
Course = 1,
/// <summary>
/// 留学
/// </summary>
[EnumField("留学")]
Studyabroad =2,
/// <summary>
/// 就业
/// </summary>
[EnumField("就业")]
Employment =3,
}
}
using Edu.Common.Plugin;
using System;
using System.Collections.Generic;
using System.Text;
namespace Edu.Common.Enum.Sale
{
/// <summary>
/// 订单类型枚举
/// </summary>
public enum OrderTypeEnum
{
/// <summary>
/// 班级课程订单
/// </summary>
[EnumField("班级课程订单")]
CourseOrder = 1,
/// <summary>
/// 留学订单
/// </summary>
[EnumField("留学就业订单")]
StudyabroadOrder = 2,
}
}
using Edu.Common.Plugin;
namespace Edu.Common.Enum.Sale
{
/// <summary>
/// 供应商类型枚举
/// </summary>
public enum SupplierTypeEnum
{
/// <summary>
/// 私塾
/// </summary>
[EnumField("私塾")]
PrivateSchool = 1,
/// <summary>
/// 语言学校
/// </summary>
[EnumField("语言学校")]
LanguageSchool = 2,
/// <summary>
/// 研究生项目
/// </summary>
[EnumField("研究生项目")]
GraduatePrograms = 3,
/// <summary>
/// 就业
/// </summary>
[EnumField("就业")]
ObtainEmployment = 4,
/// <summary>
/// 别科
/// </summary>
[EnumField("别科")]
OtherBranches = 5,
}
}
......@@ -131,5 +131,10 @@ namespace Edu.Model.Entity.Course
/// 申请改价原因
/// </summary>
public string ApplyReason { get; set; }
/// <summary>
/// 报价单类型
/// </summary>
public OfferTypeEnum OfferType { get; set; }
}
}
......@@ -21,7 +21,7 @@ namespace Edu.Model.Entity.Course
public int OfferId { get; set; }
/// <summary>
/// 课程编号
/// 课程编号/留学就业产品编号
/// </summary>
public int CourseId { get; set; }
......
using Edu.Common.Enum;
using Edu.Common.Enum.Course;
using Edu.Common.Enum.Sale;
using System;
using VT.FW.DB;
......@@ -153,5 +154,15 @@ namespace Edu.Model.Entity.Course
/// 报价单id
/// </summary>
public int OfferId { get; set; }
/// <summary>
/// 订单类型
/// </summary>
public OrderTypeEnum OrderType { get; set; }
/// <summary>
/// 来源编号(OrderType=1,SourceId=0),(OrderType=2,SourceId=留学就业产品对应编号)
/// </summary>
public int SourceId { get; set; }
}
}
using Edu.Common.Enum;
using Edu.Common.Enum.Sale;
using System;
using VT.FW.DB;
......@@ -19,7 +20,7 @@ namespace Edu.Model.Entity.StudyAbroad
/// <summary>
/// 供应商类型
/// </summary>
public int Type { get; set; }
public SupplierTypeEnum Type { get; set; }
/// <summary>
/// 供应商名称
......@@ -80,5 +81,20 @@ namespace Edu.Model.Entity.StudyAbroad
/// 删除状态(0-正常,1-禁用)
/// </summary>
public DateStateEnum Status { get; set; }
/// <summary>
/// 返佣类型(0-百分比,1-固定金额)
/// </summary>
public int CommissionType { get; set; }
/// <summary>
/// 返佣值
/// </summary>
public decimal CommissionMoney { get; set; }
/// <summary>
/// 合同地址
/// </summary>
public string ContractUrl { get; set; }
}
}
......@@ -151,5 +151,15 @@ namespace Edu.Model.ViewModel.Course
/// 班级最新计划时间
/// </summary>
public DateTime? ClassDate { get; set; }
/// <summary>
/// 报名截止日期开始
/// </summary>
public string JoinStartTime { get; set; }
/// <summary>
/// 报名截止日期结束
/// </summary>
public string JoinEndTime { get; set; }
}
}
\ No newline at end of file
......@@ -56,6 +56,11 @@ namespace Edu.Model.ViewModel.Course
/// </summary>
public string CustomerStatusName { get { return Common.Plugin.EnumHelper.ToName(this.CustomerStatus); } }
/// <summary>
/// 报价单类型名称
/// </summary>
public string OfferTypeName { get { return Common.Plugin.EnumHelper.ToName(this.OfferType); } }
/// <summary>
/// 创建时间--开始
/// </summary>
......
......@@ -110,5 +110,10 @@ namespace Edu.Model.ViewModel.Course
/// 取消人数
/// </summary>
public int CancelNum { get; set; }
/// <summary>
/// 留学就业产品名称
/// </summary>
public string StudyName { get; set; }
}
}
\ No newline at end of file
......@@ -50,8 +50,24 @@ namespace Edu.Model.ViewModel.StudyAbroad
/// </summary>
public int AuditType { get; set; }
/// <summary>
/// 审核状态
/// </summary>
public int AuditState { get; set; }
/// <summary>
/// 审核人
/// </summary>
public int AuditManId { get; set; }
/// <summary>
/// 供应商上传合同
/// </summary>
public string ContractUrl { get; set; }
/// <summary>
/// 留学就业编号查询使用
/// </summary>
public string QIds { get; set; }
}
}
......@@ -79,5 +79,10 @@ namespace Edu.Model.ViewModel.User
/// 直接主管 (OKR专用)
/// </summary>
public int DirectSupervisor { get; set; }
/// <summary>
/// 密码
/// </summary>
public string Password { get; set; }
}
}
\ No newline at end of file
......@@ -109,5 +109,10 @@ namespace Edu.Model.ViewModel.User
/// 直接主管 (OKR专用)
/// </summary>
public int DirectSupervisor { get; set; }
/// <summary>
/// 密码
/// </summary>
public string Password { get; set; }
}
}
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -4,6 +4,7 @@ using Edu.Common.Plugin;
using Edu.Model.ViewModel.Course;
using Edu.Repository.Course;
using Edu.Repository.Log;
using Edu.Repository.StudyAbroad;
using Edu.Repository.User;
using System;
using System.Collections.Generic;
......@@ -48,6 +49,16 @@ namespace Edu.Module.Course
/// </summary>
private readonly CourseModule courseModule = new CourseModule();
/// <summary>
/// 留学就业仓储层对象
/// </summary>
private readonly RB_StudyAbroadRepository studyAbroadRepository = new RB_StudyAbroadRepository();
/// <summary>
/// 留学就业价格仓储层对象
/// </summary>
private readonly RB_StudyaBroad_PreferentialRepository studyaBroad_PreferentialRepository = new RB_StudyaBroad_PreferentialRepository();
/// <summary>
/// 获取报价单分页列表
/// </summary>
......@@ -61,11 +72,12 @@ namespace Edu.Module.Course
var list= course_OfferRepository.GetCourseOfferPageRepository(pageIndex, pageSize, out rowsCount, query);
if (query.IsGetDetails == 1 && list != null && list.Count > 0)
{
string ids = string.Join(",", list.Select(qitem => qitem.Id));
//报价单编号
string offids = string.Join(",", list.Select(qitem => qitem.Id));
var detailsList = new List<RB_Course_OfferDetails_ViewModel>();
if (!string.IsNullOrEmpty(ids))
if (!string.IsNullOrEmpty(offids))
{
detailsList = GetCourseOfferDetailsListModule(new RB_Course_OfferDetails_ViewModel() { QOfferIds = ids });
detailsList = GetCourseOfferDetailsListModule(new RB_Course_OfferDetails_ViewModel() { QOfferIds = offids });
}
foreach (var item in list)
{
......@@ -207,12 +219,12 @@ namespace Edu.Module.Course
}
/// <summary>
/// 获取课程报价单实体
/// </summary>
/// <param name="Id"></param>
/// <returns></returns>
public RB_Course_Offer_ViewModel GetCourseOfferModule(object Id)
/// <summary>
/// 获取课程报价单实体
/// </summary>
/// <param name="Id"></param>
/// <returns></returns>
public RB_Course_Offer_ViewModel GetCourseOfferModule(object Id)
{
var model = course_OfferRepository.GetEntity<RB_Course_Offer_ViewModel>(Id);
if (model != null)
......@@ -222,18 +234,45 @@ namespace Edu.Module.Course
{
string ids = string.Join(",", model.OfferDetails.Select(qitem => qitem.CourseId));
List<RB_Course_ViewModel> courseList = new List<RB_Course_ViewModel>();
if (!string.IsNullOrEmpty(ids))
if (model.OfferType == OfferTypeEnum.Course)
{
courseList= courseModule.GetCourseListModule(new RB_Course_ViewModel()
if (!string.IsNullOrEmpty(ids))
{
IsQPrice = 1,
QCourseIds = ids,
Group_Id=model.Group_Id,
});
courseList = courseModule.GetCourseListModule(new RB_Course_ViewModel()
{
IsQPrice = 1,
QCourseIds = ids,
Group_Id = model.Group_Id,
});
}
foreach (var item in model.OfferDetails)
{
item.SourceData = courseList?.Where(qitem => qitem.CourseId == item.CourseId)?.FirstOrDefault() ?? new RB_Course_ViewModel();
}
}
foreach (var item in model.OfferDetails)
else
{
item.SourceData = courseList?.Where(qitem => qitem.CourseId == item.CourseId)?.FirstOrDefault() ?? new RB_Course_ViewModel();
var studyList = studyAbroadRepository.GetStudyAbroadListRepository(new Model.ViewModel.StudyAbroad.RB_StudyAbroad_ViewModel()
{
QIds = ids
});
if (studyList != null && studyList.Count > 0)
{
string studyIds = string.Join(",", studyList.Select(qitem => qitem.Id));
var detailsList = studyaBroad_PreferentialRepository.GetStudyaBroadPreferentialListRepostory(new Model.ViewModel.StudyAbroad.RB_StudyaBroad_Preferential_ViewModel()
{
QStudyabroadIds = studyIds
});
foreach (var item in studyList)
{
item.PreferentialList = detailsList?.Where(qitem => qitem.StudyabroadId == item.Id)?.ToList() ?? new List<Model.ViewModel.StudyAbroad.RB_StudyaBroad_Preferential_ViewModel>();
}
}
foreach (var item in model.OfferDetails)
{
item.SourceData = studyList?.Where(qitem => qitem.Id == item.CourseId)?.FirstOrDefault() ?? new Model.ViewModel.StudyAbroad.RB_StudyAbroad_ViewModel();
}
}
}
}
......@@ -342,8 +381,18 @@ namespace Edu.Module.Course
Unit_Price = uPrice,
UpdateBy = offerModel.CreateBy,
UpdateTime = DateTime.Now,
OfferId = offerId
OfferId = offerId,
};
if (offerModel.OfferType == OfferTypeEnum.Course)
{
orderModel.OrderType = OrderTypeEnum.CourseOrder;
orderModel.SourceId = 0;
}
else
{
orderModel.OrderType = OrderTypeEnum.StudyabroadOrder;
orderModel.SourceId = item.CourseId;
}
int OrderId = orderRepository.Insert(orderModel);
orderModel.OrderId = OrderId;
flag = OrderId > 0;
......
This diff is collapsed.
......@@ -56,6 +56,37 @@ namespace Edu.Module.StudyAbroad
return list;
}
/// <summary>
/// 获取留学就业审核分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_StudyAbroad_ViewModel> GetStudyAbroadAuditPageModule(int pageIndex, int pageSize, out long rowsCount, RB_StudyAbroad_ViewModel query)
{
var list = studyAbroadRepository.GetStudyAbroadAuditPageRepository(pageIndex, pageSize, out rowsCount, query);
if (list != null && list.Count > 0)
{
string ids = string.Join(",", list.Select(qitem => qitem.Id));
List<RB_StudyaBroad_Preferential_ViewModel> preferentialList = new List<RB_StudyaBroad_Preferential_ViewModel>();
if (query.IsQPrice == 1)
{
preferentialList = GetStudyaBroadPreferentialListModule(new RB_StudyaBroad_Preferential_ViewModel()
{
QStudyabroadIds = ids
});
}
foreach (var item in list)
{
item.PreferentialList = preferentialList?.Where(qitem => qitem.StudyabroadId == item.Id)?.ToList() ?? new List<RB_StudyaBroad_Preferential_ViewModel>();
}
}
return list;
}
/// <summary>
/// 获取留学就业列表
/// </summary>
......
......@@ -56,6 +56,9 @@ namespace Edu.Module.StudyAbroad
{ nameof(RB_Supplier_ViewModel.LinkTel),model.LinkTel},
{ nameof(RB_Supplier_ViewModel.LinkAddress),model.LinkAddress},
{ nameof(RB_Supplier_ViewModel.Remark),model.Remark},
{ nameof(RB_Supplier_ViewModel.CommissionType),model.CommissionType},
{ nameof(RB_Supplier_ViewModel.CommissionMoney),model.CommissionMoney},
{ nameof(RB_Supplier_ViewModel.ContractUrl),model.ContractUrl},
};
flag = supplierRepository.Update(fileds, new WhereHelper(nameof(RB_Supplier_ViewModel.Id), model.Id));
}
......
......@@ -166,6 +166,7 @@ namespace Edu.Module.User
Email=extModel.Email,
DirectSupervisor = extModel.DirectSupervisor,
ManagerAccount=extModel.Account,
Password=extModel.Password,
});
break;
case Common.Enum.User.AccountTypeEnum.Teacher:
......@@ -195,6 +196,7 @@ namespace Edu.Module.User
Email=extModel.Email,
DirectSupervisor = extModel.DirectSupervisor,
TeacherAccount=extModel.Account,
Password=extModel.Password,
});
break;
case Common.Enum.User.AccountTypeEnum.Assist:
......@@ -223,6 +225,7 @@ namespace Edu.Module.User
Email=extModel.Email,
DirectSupervisor=extModel.DirectSupervisor,
AssistAccount=extModel.Account,
Password=extModel.Password,
});
break;
}
......
......@@ -291,6 +291,16 @@ WHERE 1=1
{
builder.AppendFormat(" AND A.{0} <='{1} 23:59:59' ", nameof(RB_Class_ViewModel.OpenTime), query.EndTime);
}
//报名截止日期开始
if (!string.IsNullOrEmpty(query.JoinStartTime))
{
builder.AppendFormat(" AND A.{0} >='{1}' ", nameof(RB_Class_ViewModel.EndOrderTime), query.JoinStartTime);
}
//报名截止日期结束
if (!string.IsNullOrEmpty(query.JoinEndTime))
{
builder.AppendFormat(" AND A.{0} <='{1} 23:59:59' ", nameof(RB_Class_ViewModel.EndOrderTime), query.JoinEndTime);
}
if (query.Q_CanApply == 1)
{
builder.AppendFormat(" AND (IFNULL(A.ClassPersion,0)-IFNULL(t.GuestNum,0))>0 ");
......
......@@ -23,8 +23,16 @@ namespace Edu.Repository.Course
var parameters = new DynamicParameters();
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.*,IFNULL(B.CourseName,'') AS CourseName,IFNULL(B.SellPrice,0) AS SellPrice
FROM RB_Course_OfferDetails AS A LEFT JOIN rb_course AS B ON A.CourseId=B.CourseId
SELECT * FROM
(
SELECT A.*,IFNULL(C.CourseName,'') AS CourseName,IFNULL(C.SellPrice,0) AS SellPrice
FROM RB_Course_OfferDetails AS A INNER JOIN rb_course_offer AS B ON A.OfferId=B.Id
INNER JOIN rb_course AS C ON (A.CourseId=C.CourseId AND B.OfferType=1 )
UNION ALL
SELECT A.*,IFNULL(C.`Name`,'') AS CourseName,IFNULL(C.SellPrice,0) AS SellPrice
FROM RB_Course_OfferDetails AS A INNER JOIN rb_course_offer AS B ON A.OfferId=B.Id
INNER JOIN rb_studyabroad AS C ON (A.CourseId=C.Id AND B.OfferType<>1)
) AS A
WHERE 1=1
");
if (query == null)
......@@ -33,10 +41,6 @@ WHERE 1=1
}
else
{
if (query.CourseId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Course_OfferDetails_ViewModel.CourseId), query.CourseId);
}
if (query.OfferId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Course_OfferDetails_ViewModel.OfferId), query.OfferId);
......
......@@ -100,6 +100,10 @@ WHERE 1=1
builder.AppendFormat(" AND A.{0} LIKE @CustomerTel ", nameof(RB_Course_Offer_ViewModel.CustomerTel));
parameters.Add("CustomerTel", "%" + query.CustomerTel.Trim() + "%");
}
if (query.OfferType > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Course_Offer_ViewModel.OfferType), (int)query.OfferType);
}
}
builder.AppendFormat(" ORDER BY A.{0} DESC ", nameof(RB_Course_Offer_ViewModel.Id));
return GetPage<RB_Course_Offer_ViewModel>(pageIndex, pageSize, out rowsCount, builder.ToString(), parameters).ToList();
......@@ -160,6 +164,10 @@ WHERE 1=1
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Course_Offer_ViewModel.CustomerStatus), query.CustomerStatus);
}
if (query.OfferType > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Course_Offer_ViewModel.OfferType), (int)query.OfferType);
}
}
return Get<RB_Course_Offer_ViewModel>(builder.ToString(), parameters).ToList();
}
......
This diff is collapsed.
using Edu.Common.Enum;
using Edu.Common.Enum.Sale;
using Edu.Model.Entity.StudyAbroad;
using Edu.Model.ViewModel.StudyAbroad;
using System;
......@@ -28,7 +29,7 @@ namespace Edu.Repository.StudyAbroad
var parameters = new DynamicParameters();
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.*,IFNULL(B.`Name`,'') AS SupplierName
SELECT A.*,IFNULL(B.`Name`,'') AS SupplierName,IFNULL(B.ContractUrl,'') AS ContractUrl
FROM RB_StudyAbroad AS A LEFT JOIN rb_supplier AS B ON A.SupplierId=B.Id
WHERE 1=1
");
......@@ -52,38 +53,72 @@ WHERE 1=1
{
builder.AppendFormat(" AND A.{0}={1}", nameof(RB_StudyAbroad_ViewModel.Type), query.Type);
}
//部门主管审核
if (query.AuditType == 1)
if (query.SaleState > 0)
{
//待审核
if (query.AuditState == 1)
{
builder.AppendFormat(" AND A.SaleState=2 AND A.DirectorStatus=0 AND A.DirectorId={0} ", query.AuditManId);
}
//已审核
else
{
builder.AppendFormat(" AND A.DirectorStatus>0 AND A.DirectorId={0} ", query.AuditManId);
}
}
//部门负责人审核
else if (query.AuditType == 2)
builder.AppendFormat(" AND A.{0}={1}", nameof(RB_StudyAbroad_ViewModel.SaleState),(int)query.SaleState);
}
return GetPage<RB_StudyAbroad_ViewModel>(pageIndex, pageSize, out rowsCount, builder.ToString(), parameters).ToList();
}
}
/// <summary>
/// 获取留学就业审核分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_StudyAbroad_ViewModel> GetStudyAbroadAuditPageRepository(int pageIndex, int pageSize, out long rowsCount, RB_StudyAbroad_ViewModel query)
{
rowsCount = 0;
var parameters = new DynamicParameters();
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.*,IFNULL(B.`Name`,'') AS SupplierName,IFNULL(B.ContractUrl,'') AS ContractUrl
FROM RB_StudyAbroad AS A LEFT JOIN rb_supplier AS B ON A.SupplierId=B.Id
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.SaleState), (int)SaleStateEnum.NoPerfect);
if (query == null)
{
return new List<RB_StudyAbroad_ViewModel>();
}
else
{
if (query.Group_Id > 0)
{
//待审核
if (query.AuditState == 1)
{
builder.AppendFormat(" AND A.SaleState=2 AND A.DirectorId>0 AND A.DirectorStatus=1 AND A.ManagerStatus=0 AND A.ManagerId={0} ", query.AuditManId);
}
//已审核
else
{
builder.AppendFormat(" AND A.ManagerStatus>0 AND A.ManagerId={0} ", query.AuditManId);
}
builder.AppendFormat(" AND A.{0}={1}", nameof(RB_StudyAbroad_ViewModel.Group_Id), query.Group_Id);
}
if (query.SaleState > 0)
if (!string.IsNullOrEmpty(query.Name))
{
builder.AppendFormat(" AND A.{0}={1}", nameof(RB_StudyAbroad_ViewModel.SaleState),(int)query.SaleState);
builder.AppendFormat(" AND A.{0} LIKE @Name ", nameof(RB_StudyAbroad_ViewModel.Name));
parameters.Add("Name", "%" + query.Name.Trim() + "%");
}
if (query.Type > 0)
{
builder.AppendFormat(" AND A.{0}={1}", nameof(RB_StudyAbroad_ViewModel.Type), query.Type);
}
//待审核
if (query.AuditState == 1)
{
builder.AppendFormat(@" AND (
(A.SaleState=2 AND A.DirectorId>0 AND A.DirectorStatus=1 AND A.ManagerStatus=0 AND A.ManagerId={0})
OR (A.SaleState=2 AND A.DirectorStatus=0 AND A.DirectorId={0})
) ", query.AuditManId);
}
//已审核
else if(query.AuditState == 2)
{
builder.AppendFormat(@" AND (
(A.ManagerStatus>0 AND A.ManagerId={0})
OR (A.DirectorStatus>0 AND A.DirectorId={0})
)", query.AuditManId);
}
return GetPage<RB_StudyAbroad_ViewModel>(pageIndex, pageSize, out rowsCount, builder.ToString(), parameters).ToList();
}
}
......@@ -118,6 +153,14 @@ WHERE 1=1
builder.AppendFormat(" AND A.{0} LIKE @Name ", nameof(RB_StudyAbroad_ViewModel.Name));
parameters.Add("Name", "%" + query.Name.Trim() + "%");
}
if (query.SaleState > 0)
{
builder.AppendFormat(" AND A.{0}={1}", nameof(RB_StudyAbroad_ViewModel.SaleState), (int)query.SaleState);
}
if (!string.IsNullOrEmpty(query.QIds))
{
builder.AppendFormat(" AND A.{0} IN({1}) ", nameof(RB_StudyAbroad_ViewModel.Id), query.QIds);
}
return Get<RB_StudyAbroad_ViewModel>(builder.ToString(), parameters).ToList();
}
}
......@@ -132,7 +175,7 @@ WHERE 1=1
var parameters = new DynamicParameters();
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.*,IFNULL(B.`Name`,'') AS SupplierName
SELECT A.*,IFNULL(B.`Name`,'') AS SupplierName,IFNULL(B.ContractUrl,'') AS ContractUrl
FROM RB_StudyAbroad AS A LEFT JOIN rb_supplier AS B ON A.SupplierId=B.Id
WHERE 1=1
");
......
......@@ -48,6 +48,10 @@ WHERE 1=1
builder.AppendFormat(" AND A.{0} LIKE @Name ", nameof(RB_Supplier_ViewModel.Name));
parameters.Add("Name", "%" + query.Name.Trim() + "%");
}
if (query.Type > 0)
{
builder.AppendFormat(" AND A.{0}={1}", nameof(RB_Supplier_ViewModel.Type),(int)query.Type);
}
return GetPage<RB_Supplier_ViewModel>(pageIndex, pageSize, out rowsCount, builder.ToString(), parameters).ToList();
}
}
......@@ -82,6 +86,10 @@ WHERE 1=1
builder.AppendFormat(" AND A.{0} LIKE @Name ", nameof(RB_Supplier_ViewModel.Name));
parameters.Add("Name", "%" + query.Name.Trim() + "%");
}
if (query.Type > 0)
{
builder.AppendFormat(" AND A.{0}={1}", nameof(RB_Supplier_ViewModel.Type), (int)query.Type);
}
return Get<RB_Supplier_ViewModel>(builder.ToString(), parameters).ToList();
}
}
......
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -28,6 +28,18 @@ namespace Edu.WebApi.Controllers.Course
private readonly CourseOfferModule courseOfferModule = AOP.AOPHelper.CreateAOPObject<CourseOfferModule>();
#region 课程报价单管理
/// <summary>
/// 获取报价单类型列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetOfferTypeList()
{
var list = Common.Plugin.EnumHelper.EnumToList(typeof(OfferTypeEnum));
return ApiResult.Success(data: list);
}
/// <summary>
/// 获取课程报价单分页列表
/// </summary>
......@@ -49,7 +61,8 @@ namespace Edu.WebApi.Controllers.Course
SerialNum = base.ParmJObj.GetStringValue("SerialNum"),
IsGetDetails = base.ParmJObj.GetInt("IsGetDetails"),
CustomerName = base.ParmJObj.GetStringValue("CustomerName"),
CustomerTel = base.ParmJObj.GetStringValue("CustomerTel")
CustomerTel = base.ParmJObj.GetStringValue("CustomerTel"),
OfferType = (OfferTypeEnum)base.ParmJObj.GetInt("OfferType"),
};
query.Group_Id = base.UserInfo.Group_Id;
query.School_Id = base.UserInfo.School_Id;
......@@ -94,6 +107,8 @@ namespace Edu.WebApi.Controllers.Course
qitem.CustomerTel,
qitem.JoinNum,
qitem.OrderIdList,
qitem.OfferType,
qitem.OfferTypeName,
});
return ApiResult.Success(data: pageModel);
}
......@@ -107,7 +122,8 @@ namespace Edu.WebApi.Controllers.Course
{
var query = new RB_Course_Offer_ViewModel()
{
Name = base.ParmJObj.GetStringValue("Name")
Name = base.ParmJObj.GetStringValue("Name"),
OfferType = (OfferTypeEnum)base.ParmJObj.GetInt("OfferType"),
};
query.Group_Id = base.UserInfo.Group_Id;
query.School_Id = base.UserInfo.School_Id;
......@@ -136,7 +152,8 @@ namespace Edu.WebApi.Controllers.Course
CustomerInfo = base.ParmJObj.GetStringValue("CustomerInfo"),
CustomerName = base.ParmJObj.GetStringValue("CustomerName"),
CustomerTel = base.ParmJObj.GetStringValue("CustomerTel"),
JoinNum = base.ParmJObj.GetInt("JoinNum")
JoinNum = base.ParmJObj.GetInt("JoinNum"),
OfferType=(OfferTypeEnum)base.ParmJObj.GetInt("OfferType"),
};
try
{
......@@ -227,7 +244,9 @@ namespace Edu.WebApi.Controllers.Course
CreateTime = Common.ConvertHelper.FormatDate2(extModel?.CreateTime),
CreateByName,
CreateTel,
CreateWeChatNo
CreateWeChatNo,
extModel?.OfferType,
extModel?.OfferTypeName,
};
return ApiResult.Success(data: obj);
}
......@@ -297,6 +316,7 @@ namespace Edu.WebApi.Controllers.Course
public ApiResult OfferTransOrder()
{
var offerId = base.ParmJObj.GetInt("OfferId", 0);
int OfferType = base.ParmJObj.GetInt("OfferType", 0);
if (offerId <= 0)
{
return ApiResult.ParamIsNull("请传递报价单编号!");
......@@ -315,11 +335,15 @@ namespace Edu.WebApi.Controllers.Course
return ApiResult.ParamIsNull("请传递报价单详情!");
}
string message = "";
foreach (var item in detailsList)
//报价单类型为课程
if (OfferType == 1)
{
if (item.ClassId <= 0)
foreach (var item in detailsList)
{
message += string.Format("、请选择【{0}】的班级", item.CourseName);
if (item.ClassId <= 0)
{
message += string.Format("、请选择【{0}】的班级", item.CourseName);
}
}
}
if (!string.IsNullOrEmpty(message))
......
......@@ -30,7 +30,7 @@ namespace Edu.WebApi.Controllers.Finance
private readonly TeachingRewardsModule teachingRewardsModule = AOP.AOPHelper.CreateAOPObject<TeachingRewardsModule>();
/// <summary>
/// 获取班级收支明细
/// 获取班级/留学就业收支明细
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
......@@ -38,18 +38,24 @@ namespace Edu.WebApi.Controllers.Finance
{
int classId = base.ParmJObj.GetInt("ClassId", 0);
int schoolId = base.ParmJObj.GetInt("School_Id");
if (classId <= 0)
int SourceId = base.ParmJObj.GetInt("SourceId");
if (classId <= 0 && SourceId<=0)
{
return ApiResult.Failed("班级Id不存在");
}
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();
//收入
decimal IncomeReceive = 0;//应收
decimal IncomeActual = 0;//实收
var orderList = orderModule.GetClassOrderList_V2(classId, base.UserInfo.Group_Id).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;
IncomeActual = (orderList != null && orderList.Any()) ? orderList.Sum(x => x.Income) : 0;
......@@ -128,7 +134,6 @@ namespace Edu.WebApi.Controllers.Finance
OtherFiniceReciveList = recultFiniceList.Where(t => t.Type == WFTempLateClassEnum.IN && t.OrderID <= 0),//其他收入
OtherFinicePayList = recultFiniceList.Where(t => t.Type == WFTempLateClassEnum.OUT),//其他支出
//退费,班级费用(书本,房租等),提成,课时费确定 在弄
};
return ApiResult.Success("", resultData);
}
......@@ -145,6 +150,7 @@ namespace Edu.WebApi.Controllers.Finance
{
int classId = base.ParmJObj.GetInt("ClassId", 0);
int schoolId = base.ParmJObj.GetInt("School_Id");
int SourceId = base.ParmJObj.GetInt("SourceId");
List<ExcelDataSource> slist = new List<ExcelDataSource>();
string ExcelName = "用户列表" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".xls";
if (classId <= 0)
......@@ -153,7 +159,7 @@ namespace Edu.WebApi.Controllers.Finance
return File(byteData1, "application/octet-stream", ExcelName);
}
#region 数据信息
RB_Finance_Extend model = new RB_Finance_Extend() { TCID = classId, OrderSource = OrderResourceEnum.Education, RB_Group_Id = base.UserInfo.Group_Id, FinanceType = 2 };
var financeList = financeModule.GetFinanceInfoList(model).Where(t => (t.Status == FinanceAuditStatus.InReview || t.Status == FinanceAuditStatus.Pass || t.Status == FinanceAuditStatus.CTemporary)).ToList();
......@@ -161,7 +167,7 @@ namespace Edu.WebApi.Controllers.Finance
//收入
decimal IncomeReceive = 0;//应收
decimal IncomeActual = 0;//实收
var orderList = orderModule.GetClassOrderList_V2(classId, base.UserInfo.Group_Id).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;
IncomeActual = (orderList != null && orderList.Any()) ? orderList.Sum(x => x.Income) : 0;
......@@ -193,26 +199,6 @@ namespace Edu.WebApi.Controllers.Finance
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();
//var recultFiniceList = financeList.Select(x => new
//{
// x.FrID,
// x.Type,
// x.TCID,
// x.OrderID,
// x.Money,
// x.PayMoney,
// AirTotalMoney = x.AirTotalMoney ?? 0,
// AirTotalPayMoney = x.AirTotalPayMoney ?? 0,
// CostTypeList = x.CostTypeList.Distinct().ToList(),
// x.OrderSource,
// AuditList = x.AuditList.Select(t => new { t.AuditEmId, t.AuditEmName, AuditDate = t.AuditDate.HasValue ? t.AuditDate.Value.ToString("yyyy/MM/dd") : "" }),
// StatusStr = EnumHelper.ToName(x.Status.Value),
// x.RB_CreateByName,
// CreateDate = x.CreateDate.Value.ToString("yyyy-MM-dd"),
// TradeDate = x.TradeDate.HasValue ? x.TradeDate.Value.ToString("yyyy-MM-dd") : "",
// TradeWayList = x.BankList?.Select(y => new { y.AccountType, y.Alias, y.BankNo, TypeName = EnumHelper.ToName(y.Type), y.CurrencyName, y.OriginalMoney, y.Money, y.Rate })
//});
#endregion
try
{
......@@ -772,7 +758,6 @@ namespace Edu.WebApi.Controllers.Finance
}
/// <summary>
/// 获取简易报表列表
/// </summary>
......
......@@ -46,6 +46,7 @@ namespace Edu.WebApi.Controllers.StudyAbroad
var query = new RB_Supplier_ViewModel()
{
Name = base.ParmJObj.GetStringValue("Name"),
Type=(SupplierTypeEnum)base.ParmJObj.GetInt("Type"),
};
query.Group_Id = base.UserInfo.Group_Id;
List<object> result = new List<object>();
......@@ -64,12 +65,16 @@ namespace Edu.WebApi.Controllers.StudyAbroad
{
item.Id,
item.Type,
TypeName=Common.Plugin.EnumHelper.ToName(item.Type),
item.Name,
item.LinkMan,
item.LinkTel,
item.LinkAddress,
item.Remark,
item.CreateByName,
item.CommissionType,
item.CommissionMoney,
item.ContractUrl,
CreateTimeStr = Common.ConvertHelper.FormatTime(item.CreateTime),
item.UpdateByName,
UpdateTimeStr = Common.ConvertHelper.FormatTime(item.UpdateTime),
......@@ -92,6 +97,7 @@ namespace Edu.WebApi.Controllers.StudyAbroad
var query = new RB_Supplier_ViewModel()
{
Name = base.ParmJObj.GetStringValue("Name"),
Type = (SupplierTypeEnum)base.ParmJObj.GetInt("Type"),
};
query.Group_Id = base.UserInfo.Group_Id;
query.School_Id = base.UserInfo.School_Id;
......@@ -121,7 +127,7 @@ namespace Edu.WebApi.Controllers.StudyAbroad
var extModel = new RB_Supplier_ViewModel()
{
Id = base.ParmJObj.GetInt("Id"),
Type = base.ParmJObj.GetInt("Type"),
Type =(SupplierTypeEnum)base.ParmJObj.GetInt("Type"),
Name = base.ParmJObj.GetStringValue("Name"),
LinkMan = base.ParmJObj.GetStringValue("LinkMan"),
LinkTel = base.ParmJObj.GetStringValue("LinkTel"),
......@@ -133,6 +139,9 @@ namespace Edu.WebApi.Controllers.StudyAbroad
UpdateTime = DateTime.Now,
Group_Id = this.UserInfo.Group_Id,
School_Id = base.ParmJObj.GetInt("School_Id"),
CommissionMoney=base.ParmJObj.GetDecimal("CommissionMoney"),
CommissionType=base.ParmJObj.GetInt("CommissionType"),
ContractUrl=base.ParmJObj.GetStringValue("ContractUrl")
};
bool flag = supplierModule.SetSupplierModule(extModel);
return flag ? ApiResult.Success() : ApiResult.Failed();
......@@ -156,6 +165,9 @@ namespace Edu.WebApi.Controllers.StudyAbroad
LinkTel = extModel?.LinkTel ?? "",
LinkAddress = extModel?.LinkAddress ?? "",
Remark = extModel?.Remark ?? "",
CommissionType = extModel?.CommissionType ?? 0,
CommissionMoney = extModel?.CommissionMoney ?? 0,
ContractUrl=extModel?.ContractUrl??""
};
return ApiResult.Success(data: obj);
}
......@@ -172,6 +184,17 @@ namespace Edu.WebApi.Controllers.StudyAbroad
var flag = supplierModule.RemoveSupplierModule(Id, Status);
return flag ? ApiResult.Success() : ApiResult.Failed();
}
/// <summary>
/// 获取供应商类型列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetSupplierType()
{
var list = Common.Plugin.EnumHelper.EnumToList(typeof(SupplierTypeEnum));
return ApiResult.Success(data: list);
}
#endregion
#region 留学就业管理
......@@ -194,7 +217,6 @@ namespace Edu.WebApi.Controllers.StudyAbroad
SaleState=(SaleStateEnum)base.ParmJObj.GetInt("SaleState"),
AuditState=base.ParmJObj.GetInt("AuditState"),
};
query.AuditManId = base.UserInfo.Id;
query.Group_Id = base.UserInfo.Group_Id;
List<object> result = new List<object>();
var list = studyAbroadModule.GetStudyAbroadPageModule(pageModel.PageIndex, pageModel.PageSize, out long rowsCount, query);
......@@ -223,7 +245,7 @@ namespace Edu.WebApi.Controllers.StudyAbroad
item.Name,
item.SupplierId,
item.SupplierName,
item.SupplierContract,
SupplierContract=item.ContractUrl,
item.SuggestPrice,
item.SellPrice,
item.Remark,
......@@ -251,6 +273,81 @@ namespace Edu.WebApi.Controllers.StudyAbroad
return ApiResult.Success(data: pageModel);
}
/// <summary>
/// 获取留学就业审核分页列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetStudyAbroadAuditPage()
{
var pageModel = Common.Plugin.JsonHelper.DeserializeObject<ResultPageModel>(RequestParm.Msg.ToString());
var query = new RB_StudyAbroad_ViewModel()
{
Name = base.ParmJObj.GetStringValue("Name"),
Type = base.ParmJObj.GetInt("Type"),
SupplierId = base.ParmJObj.GetInt("SupplierId"),
IsQPrice = base.ParmJObj.GetInt("IsQPrice"),
AuditType = base.ParmJObj.GetInt("AuditType"),
AuditState = base.ParmJObj.GetInt("AuditState"),
};
query.AuditManId = base.UserInfo.Id;
query.Group_Id = base.UserInfo.Group_Id;
List<object> result = new List<object>();
var list = studyAbroadModule.GetStudyAbroadAuditPageModule(pageModel.PageIndex, pageModel.PageSize, out long rowsCount, query);
foreach (var item in list)
{
if (item.CreateBy > 0)
{
item.CreateByName = UserReidsCache.GetUserLoginInfo(item.CreateBy)?.AccountName ?? "";
}
if (item.UpdateBy > 0)
{
item.UpdateByName = UserReidsCache.GetUserLoginInfo(item.UpdateBy)?.AccountName ?? "";
}
if (item.DirectorId > 0)
{
item.DirectorName = UserReidsCache.GetUserLoginInfo(item.DirectorId)?.AccountName ?? "";
}
if (item.ManagerId > 0)
{
item.ManagerName = UserReidsCache.GetUserLoginInfo(item.ManagerId)?.AccountName ?? "";
}
result.Add(new
{
item.Id,
item.Type,
item.Name,
item.SupplierId,
item.SupplierName,
SupplierContract = item.ContractUrl,
item.SuggestPrice,
item.SellPrice,
item.Remark,
item.SaleState,
SaleStateName = Common.Plugin.EnumHelper.ToName(item.SaleState),
item.CreateByName,
CreateTimeStr = Common.ConvertHelper.FormatTime(item.CreateTime),
item.UpdateByName,
UpdateTimeStr = Common.ConvertHelper.FormatTime(item.UpdateTime),
item.PreferentialList,
item.DirectorName,
item.DirectorId,
item.DirectorStatus,
item.DirectorOpinion,
DirectorAuditTime = Common.ConvertHelper.FormatTime(item.DirectorAuditTime),
item.ManagerName,
item.ManagerId,
item.ManagerStatus,
item.ManagerOpinion,
ManagerAuditTime = Common.ConvertHelper.FormatTime(item.ManagerAuditTime),
});
}
pageModel.Count = rowsCount;
pageModel.PageData = result;
return ApiResult.Success(data: pageModel);
}
/// <summary>
/// 获取留学就业列表
/// </summary>
......@@ -264,7 +361,8 @@ namespace Edu.WebApi.Controllers.StudyAbroad
{
Name = base.ParmJObj.GetStringValue("Name"),
Type = base.ParmJObj.GetInt("Type"),
IsQPrice = base.ParmJObj.GetInt("IsQPrice")
IsQPrice = base.ParmJObj.GetInt("IsQPrice"),
SaleState=(SaleStateEnum)base.ParmJObj.GetInt("SaleState"),
};
query.Group_Id = base.UserInfo.Group_Id;
query.School_Id = base.UserInfo.School_Id;
......@@ -373,7 +471,7 @@ namespace Edu.WebApi.Controllers.StudyAbroad
extModel.Name,
extModel.SupplierId,
extModel.SupplierName,
extModel.SupplierContract,
SupplierContract= extModel.ContractUrl,
extModel.SuggestPrice,
extModel.SellPrice,
extModel.Remark,
......
......@@ -758,8 +758,17 @@ namespace Edu.WebApi.Controllers.User
School_Id = base.ParmJObj.GetInt("School_Id"),
Email = base.ParmJObj.GetStringValue("Email"),
DirectSupervisor=base.ParmJObj.GetInt("DirectSupervisor"),
Account=base.ParmJObj.GetStringValue("Account")
Account=base.ParmJObj.GetStringValue("Account"),
Password=base.ParmJObj.GetStringValue("Password"),
};
if (!string.IsNullOrEmpty(extModel.Password.Trim()))
{
extModel.Password = Common.DES.Encrypt(extModel.Password.Trim());
}
else
{
extModel.Password = Common.DES.Encrypt(Common.Config.DefaultPwd);
}
extModel.CreateBy = base.UserInfo.Id;
extModel.CreateTime = DateTime.Now;
extModel.UpdateBy = base.UserInfo.Id;
......
@echo off
dotnet publish -o F:\վ\edu_publish -c realease
iisreset /STOP
dotnet publish E:\Work\Git\Edu_Api\Edu.WebApi\Edu.WebApi.csproj -o E:\publish\edu.oytour.com -c realease
iisreset /START
exit
\ No newline at end of file
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