/***********************************************************************
* Project: baifenBinfa
* ProjectName: 百分兵法管理系统
* Web: http://chuanyin.com
* Author:
* Email:
* CreateTime: 202403/02
* Description: 暂无
***********************************************************************/
using System;
using System.Collections.Generic;
using System.Linq.Expressions;
using System.Threading.Tasks;
using CoreCms.Net.Configuration;
using CoreCms.Net.Model.Entities;
using CoreCms.Net.Model.FromBody;
using CoreCms.Net.Model.ViewModels.Basics;
using CoreCms.Net.Model.ViewModels.DTO;
using CoreCms.Net.Model.ViewModels.UI;
using SqlSugar;
namespace CoreCms.Net.IServices
{
///
/// 用户表 服务工厂接口
///
public interface ICoreCmsUserServices : IBaseServices
{
///
/// 更新余额
///
///
///
///
///
Task UpdateBalance(int id, decimal money, string memo);
///
/// 更新积分
///
///
///
Task UpdatePiont(FMUpdateUserPoint entity);
///
/// 获取用户的积分
///
/// 用户序列
/// 订单金额
/// 货品序列
/// 购物车类型
///
Task GetUserPoint(int userId, decimal orderMoney, int[] ids, int cartType);
///
/// //修改用户密码,如果用户之前没有密码,那么就不校验原密码
///
Task ChangePassword(int userId, string newPwd, string password = "");
///
/// 绑定上级
///
///
///
///
Task SetMyInvite(int superiorId, int userId);
///
/// 获取我的上级邀请人
///
///
///
Task GetMyInvite(int userId);
///
/// 获取下级推广用户数量
///
/// 父类序列
/// 1获取1级,其他为2级
/// 当月
///
Task QueryChildCountAsync(int parentId, int type = 1, bool thisMonth = false);
///
/// 忘记密码,找回密码
///
///
///
///
///
Task ForgetPassword(string mobile, string code, string newPwd);
///
/// 手机短信验证码登陆,同时兼有手机短信注册的功能,还有第三方账户绑定的功能
///
/// 实体数据
/// 登录方式(1普通,2短信,3微信小程序拉取手机号)
///
///
Task SmsLogin(FMWxAccountCreate entity,
int loginType = (int)GlobalEnumVars.LoginType.WeChatPhoneNumber, int platform = (int)GlobalEnumVars.CoreShopSystemCategory.Api);
///
/// 根据条件查询分页数据
///
/// 判断集合
/// 排序方式
/// 当前页面索引
/// 分布大小
///
///
Task> QueryPageAsync(Expression> predicate,
Expression> orderByExpression, OrderByType orderByType, int pageIndex = 1,
int pageSize = 20);
///
/// 按天统计新会员
///
///
Task> Statistics(int day);
///
/// 按天统计当天下单活跃会员
///
///
Task> StatisticsOrder(int day);
///
/// 当关闭分销和代理的时候走个人邀请好友分佣
///
///
///
Task InviteCommission(string orderId);
}
}