using Edu.Common.Enum; using Edu.Model.Entity.Course; using Edu.Model.ViewModel.Course; using System; using System.Collections.Generic; using System.Linq; using System.Text; using VT.FW.DB.Dapper; namespace Edu.Repository.Course { /// /// 销售提成期数明细仓储层 /// public class RB_Sell_Commission_DetailsRepository : BaseRepository { /// /// 获取列表 /// /// /// public List GetList(RB_Sell_Commission_Details_ViewModel demodel) { string where = $@" 1=1"; if (demodel.Group_Id > 0) { where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.Group_Id)} ={demodel.Group_Id}"; } if (demodel.PeriodId > 0) { where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.PeriodId)} ={demodel.PeriodId}"; } if (demodel.UserId > 0) { where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.UserId)} ={demodel.UserId}"; } if (demodel.ClassId > 0) { where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.ClassId)} ={demodel.ClassId}"; } if (demodel.OrderId > 0) { where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.OrderId)} ={demodel.OrderId}"; } if (!string.IsNullOrEmpty(demodel.OrderIds)) { where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.OrderId)} in({demodel.OrderIds})"; } string sql = $@" select r.* from RB_Sell_Commission_Details r where {where} order by r.Id asc"; return Get(sql).ToList(); } /// /// 获取分页列表 /// /// /// /// /// /// public List GetPageList(int pageIndex,int pageSize,out long count, RB_Sell_Commission_Details_ViewModel demodel) { string where = $@" 1=1"; if (demodel.Group_Id > 0) { where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.Group_Id)} ={demodel.Group_Id}"; } if (demodel.School_Id >= 0) { where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.School_Id)} ={demodel.School_Id}"; } if (demodel.Depart_Id > 0) { where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.Depart_Id)} ={demodel.Depart_Id}"; } if (demodel.PeriodId > 0) { where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.PeriodId)} ={demodel.PeriodId}"; } if (demodel.UserId > 0) { where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.UserId)} ={demodel.UserId}"; } if (demodel.ClassId > 0) { where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.ClassId)} ={demodel.ClassId}"; } if (demodel.OrderId > 0) { where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.OrderId)} ={demodel.OrderId}"; } string sql = $@" select r.* from RB_Sell_Commission_Details r where {where} order by r.Id desc"; return GetPage(pageIndex, pageSize, out count, sql).ToList(); } /// /// 获取用户提成列表 /// /// /// public List GetSellCommissionUserList(RB_Sell_Commission_Details_ViewModel demodel) { string where = $@" 1=1"; if (demodel.Group_Id > 0) { where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.Group_Id)} ={demodel.Group_Id}"; } if (demodel.School_Id >= 0) { where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.School_Id)} ={demodel.School_Id}"; } if (demodel.PeriodId > 0) { where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.PeriodId)} ={demodel.PeriodId}"; } if (demodel.UserId > 0) { where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.UserId)} ={demodel.UserId}"; } if (demodel.ClassId > 0) { where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.ClassId)} ={demodel.ClassId}"; } if (demodel.OrderId > 0) { where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.OrderId)} ={demodel.OrderId}"; } string sql = $@" select r.UserId,r.Depart_Id,r.School_Id,sum(r.StudentCount) as StudentCount,sum(r.CurrentPeriodMoney + r.DeductionMoney) as CurrentPeriodMoney,sum(r.CurrentExtraMoney + r.DeductionExtraMoney) as CurrentExtraMoney from RB_Sell_Commission_Details r where {where} group by r.UserId,r.Depart_Id,r.School_Id"; return Get(sql).ToList(); } /// /// 获取每期校区对应提成 /// /// /// /// public List GetSchoolCommission(int schoolId, string periodsIds) { string sql = $@"select PeriodId,SUM(CurrentPeriodMoney + CurrentExtraMoney + CurrentExtraMoney + DeductionExtraMoney) as CurrentPeriodMoney from rb_sell_commission_details WHERE School_Id ={schoolId} and PeriodId in ({periodsIds}) GROUP BY PeriodId "; return Get(sql).ToList(); } /// /// 累计提成金额 /// /// /// public decimal GetSellCommissionStatistics(RB_Sell_Commission_Details_ViewModel demodel) { string where = $@" 1=1"; if (demodel.Group_Id > 0) { where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.Group_Id)} ={demodel.Group_Id}"; } if (demodel.School_Id >= 0) { where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.School_Id)} ={demodel.School_Id}"; } if (demodel.Depart_Id > 0) { where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.Depart_Id)} ={demodel.Depart_Id}"; } if (demodel.PeriodId > 0) { where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.PeriodId)} ={demodel.PeriodId}"; } if (demodel.UserId > 0) { where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.UserId)} ={demodel.UserId}"; } if (demodel.ClassId > 0) { where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.ClassId)} ={demodel.ClassId}"; } if (demodel.OrderId > 0) { where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.OrderId)} ={demodel.OrderId}"; } string sql = $@" select sum(r.CurrentPeriodMoney + r.CurrentExtraMoney + r.DeductionMoney + r.DeductionExtraMoney) from RB_Sell_Commission_Details r where {where}"; var obj = ExecuteScalar(sql); return obj == null ? 0 : Convert.ToDecimal(obj); } } }