| | |
| | | /*********************************************************************** |
| | | * Project: CoreCms |
| | | * ProjectName: 核心内容管理系统 |
| | | * Web: https://www.corecms.net |
| | | * Author: 大灰灰 |
| | | * Email: jianweie@163.com |
| | | * CreateTime: 2021/1/31 21:45:10 |
| | | * Project: baifenBinfa |
| | | * ProjectName: 百分兵法管理系统 |
| | | * Web: http://chuanyin.com |
| | | * Author: |
| | | * Email: |
| | | * CreateTime: 202403/02 |
| | | * Description: 暂无 |
| | | ***********************************************************************/ |
| | | |
| | |
| | | using CoreCms.Net.Model.ViewModels.DTO.Distribution; |
| | | using CoreCms.Net.Model.ViewModels.UI; |
| | | using SqlSugar; |
| | | using static CoreCms.Net.Configuration.GlobalEnumVars; |
| | | |
| | | namespace CoreCms.Net.IServices |
| | | { |
| | | /// <summary> |
| | | /// 分销商表 服务工厂接口 |
| | | /// 经销商表 服务工厂接口 |
| | | /// </summary> |
| | | public interface ICoreCmsDistributionServices : IBaseServices<CoreCmsDistribution> |
| | | { |
| | | /// <summary> |
| | | /// 获取分销商信息 |
| | | /// 获取经销商信息 |
| | | /// </summary> |
| | | /// <param name="userId">用户id</param> |
| | | /// <param name="checkStatus">是否检查满足条件</param> |
| | |
| | | Task<WebApiCallBack> GetGradeAndCommission(int userId); |
| | | |
| | | |
| | | //检查是否可以成为分销商 |
| | | //检查是否可以成为经销商 |
| | | Task CheckCondition(Dictionary<string, DictionaryKeyValues> allConfigs, CoreCmsDistribution info, |
| | | int userId = 0); |
| | | |
| | |
| | | Expression<Func<CoreCmsDistribution, object>> orderByExpression, OrderByType orderByType, int pageIndex = 1, |
| | | int pageSize = 20, bool blUseNoLock = false); |
| | | #endregion |
| | | /// <summary> |
| | | /// 统计到当前时间未统计业绩 |
| | | /// </summary> |
| | | /// <param name="UserId"></param> |
| | | /// <returns> |
| | | /// decimal 当前统计金额 |
| | | /// DateTime 结算时间 |
| | | /// </returns> |
| | | Task<(decimal,DateTime?, DateTime?)> AchievementTotal(int UserId); |
| | | /// <summary> |
| | | /// 计算当次结算应该的提成额度 |
| | | /// </summary> |
| | | /// <param name="AttributeTotal"></param> |
| | | /// <returns></returns> |
| | | Task<decimal> AchievementBonus(decimal AttributeTotal); |
| | | /// <summary> |
| | | /// 结算绩效奖励 |
| | | /// </summary> |
| | | /// <param name="UserId">用户ID</param> |
| | | /// <returns></returns> |
| | | Task<bool> SettledAchievement(int UserId); |
| | | /// <summary> |
| | | /// 创建一个经销商业绩单 |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | Task<bool> CreateDistributionAchievementOrder(CreateDAOrderInParam Parma); |
| | | |
| | | |
| | | /// <summary> |
| | | /// 结算所有供应商的绩效奖励 |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | Task<bool> SettledAllAchievement(); |
| | | |
| | | /// <summary> |
| | | /// 获取经销商推广费 |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | List<DistributionRankingDTO> QueryAchievement(int UserId); |
| | | } |
| | | /// <summary> |
| | | /// 创建经销商订单业绩输出参数 |
| | | /// </summary> |
| | | public class CreateDAOrderInParam |
| | | { |
| | | /// <summary> |
| | | /// 父级ID |
| | | /// </summary> |
| | | public int UserID { get; set; } |
| | | /// <summary> |
| | | /// 资源ID |
| | | /// </summary> |
| | | public string OderId { get; set; } |
| | | /// <summary> |
| | | /// 资源类型 |
| | | /// </summary> |
| | | public UserBalanceSourceTypes SourceTypes { get; set; } |
| | | /// <summary> |
| | | /// 金额 |
| | | /// </summary> |
| | | public decimal Money { get; set; } |
| | | |
| | | |
| | | |
| | | |
| | | } |
| | | } |