Commit 9b472457 authored by liudong1993's avatar liudong1993

粉象返佣

parent 0c072646
using Mall.Common.AOP;
using Mall.Common.Enum.User;
using System;
using System.Collections.Generic;
using System.Text;
namespace Mall.Model.Entity.User
{
/// <summary>
/// 粉象返佣等级表实体
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_Distributor_FXGrade
{
/// <summary>
/// Id
/// </summary>
public int Id
{
get;
set;
}
/// <summary>
/// 等级
/// </summary>
public int? Grade
{
get;
set;
}
/// <summary>
/// GradeName
/// </summary>
public string GradeName
{
get;
set;
}
/// <summary>
/// 是否普通会员 1是 2否
/// </summary>
public int? IsGuest
{
get;
set;
}
/// <summary>
/// 返佣比例
/// </summary>
public decimal? CommissionRatio
{
get;
set;
}
/// <summary>
/// 同级返佣比例
/// </summary>
public decimal? SiblingRatio
{
get;
set;
}
/// <summary>
/// 可以拿同级返佣的数量
/// </summary>
public int? SiblingRebatesNum
{
get;
set;
}
/// <summary>
/// 是否可以购买 1是 2否
/// </summary>
public int? IsCanBuy
{
get;
set;
}
/// <summary>
/// 购买价格
/// </summary>
public decimal? BuyMoney
{
get;
set;
}
/// <summary>
/// 是否可以自动升级 1是 2否
/// </summary>
public int? IsUpgrade
{
get;
set;
}
/// <summary>
/// 升级所需下级数量
/// </summary>
public int? UpgradeNum
{
get;
set;
}
/// <summary>
/// 升级所需下级等级id
/// </summary>
public int? UpgradeId
{
get;
set;
}
/// <summary>
/// 删除状态
/// </summary>
public int? Status
{
get;
set;
}
/// <summary>
/// 商户号
/// </summary>
public int TenantId
{
get;
set;
}
/// <summary>
/// 小程序id
/// </summary>
public int MallBaseId
{
get;
set;
}
/// <summary>
/// CreateDate
/// </summary>
public DateTime? CreateDate
{
get;
set;
}
/// <summary>
/// UpdateDate
/// </summary>
public DateTime? UpdateDate
{
get;
set;
}
}
}
using Mall.Common.AOP;
using System;
using System.Collections.Generic;
using System.Text;
using Mall.Model.Entity.User;
namespace Mall.Model.Extend.User
{
/// <summary>
/// 粉象返佣等级表扩展实体
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_Distributor_FXGrade_Extend : RB_Distributor_FXGrade
{
/// <summary>
/// ids
/// </summary>
public string GradeIds { get; set; }
}
}
......@@ -136,6 +136,13 @@ namespace Mall.Module.User
/// 会员购买仓储层
/// </summary>
private RB_Member_BuyRepository memberBuyRepository = new RB_Member_BuyRepository();
/// <summary>
/// 粉象返佣等级
/// </summary>
private RB_Distributor_FXGradeRepository distributor_FXGradeRepository = new RB_Distributor_FXGradeRepository();
#region 基础配置
......@@ -2252,7 +2259,7 @@ namespace Mall.Module.User
}
return flag;
}
}
/// <summary>
/// 设置打款备注
......@@ -4371,6 +4378,123 @@ namespace Mall.Module.User
#endregion
#region 粉象返佣
/// <summary>
/// 获取粉象分销等级分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="count"></param>
/// <param name="demodel"></param>
/// <returns></returns>
public List<RB_Distributor_FXGrade_Extend> GetFXDistributorGradePageList(int pageIndex, int pageSize, out long count, RB_Distributor_FXGrade_Extend demodel)
{
return distributor_FXGradeRepository.GetPageList(pageIndex, pageSize, out count, demodel);
}
/// <summary>
/// 获取等级列表
/// </summary>
/// <param name="demodel"></param>
/// <returns></returns>
public List<RB_Distributor_FXGrade_Extend> GetFXDistributorGradeList(RB_Distributor_FXGrade_Extend demodel)
{
return distributor_FXGradeRepository.GetList(demodel);
}
/// <summary>
/// 新增修改粉象等级
/// </summary>
/// <param name="demodel"></param>
/// <returns></returns>
public bool SetFXDistributorGradeInfo(RB_Distributor_FXGrade_Extend demodel)
{
if (demodel.Id > 0)
{
Dictionary<string, object> keyValues = new Dictionary<string, object>() {
{ nameof(RB_Distributor_FXGrade.Grade),demodel.Grade},
{ nameof(RB_Distributor_FXGrade.GradeName),demodel.GradeName},
{ nameof(RB_Distributor_FXGrade.IsGuest),demodel.IsGuest},
{ nameof(RB_Distributor_FXGrade.CommissionRatio),demodel.CommissionRatio},
{ nameof(RB_Distributor_FXGrade.SiblingRatio),demodel.SiblingRatio},
{ nameof(RB_Distributor_FXGrade.SiblingRebatesNum),demodel.SiblingRebatesNum},
{ nameof(RB_Distributor_FXGrade.IsCanBuy),demodel.IsCanBuy},
{ nameof(RB_Distributor_FXGrade.BuyMoney),demodel.BuyMoney},
{ nameof(RB_Distributor_FXGrade.IsUpgrade),demodel.IsUpgrade},
{ nameof(RB_Distributor_FXGrade.UpgradeNum),demodel.UpgradeNum},
{ nameof(RB_Distributor_FXGrade.UpgradeId),demodel.UpgradeId},
{ nameof(RB_Distributor_FXGrade.UpdateDate),demodel.UpdateDate},
};
List<WhereHelper> wheres = new List<WhereHelper>() {
new WhereHelper(){
FiledName=nameof(RB_Distributor_HPGradeInfo.Id),
FiledValue=demodel.Id,
OperatorEnum=OperatorEnum.Equal
}
};
return distributor_FXGradeRepository.Update(keyValues, wheres);
}
else
{
return distributor_FXGradeRepository.Insert(demodel) > 0;
}
}
/// <summary>
/// 删除粉象等级
/// </summary>
/// <param name="gradeId"></param>
/// <param name="tenantId"></param>
/// <param name="mallBaseId"></param>
/// <returns></returns>
public bool DelFXDistributorGradeInfo(int gradeId, int tenantId, int mallBaseId)
{
Dictionary<string, object> keyValues = new Dictionary<string, object>() {
{ nameof(RB_Distributor_FXGrade.Status),1},
{ nameof(RB_Distributor_FXGrade.UpdateDate),DateTime.Now},
};
List<WhereHelper> wheres = new List<WhereHelper>() {
new WhereHelper(){
FiledName=nameof(RB_Distributor_HPGradeInfo.Id),
FiledValue=gradeId,
OperatorEnum=OperatorEnum.Equal
},
new WhereHelper(){
FiledName=nameof(RB_Distributor_HPGradeInfo.TenantId),
FiledValue=tenantId,
OperatorEnum=OperatorEnum.Equal
},
new WhereHelper(){
FiledName=nameof(RB_Distributor_HPGradeInfo.MallBaseId),
FiledValue=mallBaseId,
OperatorEnum=OperatorEnum.Equal
}
};
return distributor_FXGradeRepository.Update(keyValues, wheres);
}
/// <summary>
/// 获取视图查询
/// </summary>
/// <param name="tenantId"></param>
/// <param name="mallBaseId"></param>
/// <returns></returns>
public ApiResult GetFXDistributorGradeView(int tenantId, int mallBaseId)
{
var list = distributor_FXGradeRepository.GetList(new RB_Distributor_FXGrade_Extend() { TenantId = tenantId, MallBaseId = mallBaseId });
if (list.Any())
{
return ApiResult.Success();
}
else {
return ApiResult.Failed("没有数据");
}
}
#endregion
#region ERP查询用户返佣
/// <summary>
......
using System;
using System.Collections.Generic;
using System.Text;
using Mall.Model.Entity.User;
using Mall.Model.Extend.User;
using System.Linq;
namespace Mall.Repository.User
{
/// <summary>
/// 粉象返佣等级仓储层
/// </summary>
public class RB_Distributor_FXGradeRepository : RepositoryBase<RB_Distributor_FXGrade>
{
/// <summary>
/// 分页列表
/// </summary>
/// <param name="pageIndex">页码</param>
/// <param name="pageSize">每页显示条数</param>
/// <param name="rowCount">总条数</param>
/// <param name="dmodel">查询条件</param>
/// <returns></returns>
public List<RB_Distributor_FXGrade_Extend> GetPageList(int pageIndex, int pageSize, out long rowCount, RB_Distributor_FXGrade_Extend dmodel)
{
string where = $@" 1=1 and {nameof(RB_Distributor_FXGrade.Status)}=0";
if (dmodel.TenantId > 0) {
where += $@" and {nameof(RB_Distributor_FXGrade.TenantId)}={dmodel.TenantId}";
}
if (dmodel.MallBaseId > 0) {
where += $@" and {nameof(RB_Distributor_FXGrade.MallBaseId)}={dmodel.MallBaseId}";
}
if (dmodel.Id > 0) {
where += $@" and {nameof(RB_Distributor_FXGrade.Id)}={dmodel.Id}";
}
if (dmodel.Grade > 0) {
where += $@" and {nameof(RB_Distributor_FXGrade.Grade)}={dmodel.Grade}";
}
if (!string.IsNullOrEmpty(dmodel.GradeName)) {
where += $@" and {nameof(RB_Distributor_FXGrade.GradeName)} like '%{dmodel.GradeName}%'";
}
string sql = $@"select * from RB_Distributor_FXGrade where {where} order by Id desc";
return GetPage<RB_Distributor_FXGrade_Extend>(pageIndex, pageSize, out rowCount, sql).ToList();
}
/// <summary>
/// 获取列表
/// </summary>
/// <param name="dmodel"></param>
/// <returns></returns>
public List<RB_Distributor_FXGrade_Extend> GetList(RB_Distributor_FXGrade_Extend dmodel)
{
string where = $@" 1=1 and {nameof(RB_Distributor_FXGrade.Status)}=0";
if (dmodel.TenantId > 0)
{
where += $@" and {nameof(RB_Distributor_FXGrade.TenantId)}={dmodel.TenantId}";
}
if (dmodel.MallBaseId > 0)
{
where += $@" and {nameof(RB_Distributor_FXGrade.MallBaseId)}={dmodel.MallBaseId}";
}
if (dmodel.Id > 0)
{
where += $@" and {nameof(RB_Distributor_FXGrade.Id)}={dmodel.Id}";
}
if (!string.IsNullOrEmpty(dmodel.GradeIds))
{
where += $@" and {nameof(RB_Distributor_FXGrade.Id)} in({dmodel.GradeIds})";
}
if (dmodel.Grade > 0)
{
where += $@" and {nameof(RB_Distributor_FXGrade.Grade)}={dmodel.Grade}";
}
if (!string.IsNullOrEmpty(dmodel.GradeName))
{
where += $@" and {nameof(RB_Distributor_FXGrade.GradeName)} like '%{dmodel.GradeName}%'";
}
if (dmodel.IsGuest > 0)
{
where += $@" and {nameof(RB_Distributor_FXGrade.IsGuest)}={dmodel.IsGuest}";
}
string sql = $@"select * from RB_Distributor_FXGrade where {where} order by Grade asc";
return Get<RB_Distributor_FXGrade_Extend>(sql).ToList();
}
}
}
......@@ -2626,6 +2626,149 @@ namespace Mall.WebApi.Controllers.User
#endregion
#region 粉象返佣
/// <summary>
/// 获取粉象分销等级信息列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetFXDistributorGradePageList()
{
var parms = RequestParm;
ResultPageModel pagelist = JsonConvert.DeserializeObject<ResultPageModel>(parms.msg.ToString());
RB_Distributor_FXGrade_Extend demodel = JsonConvert.DeserializeObject<RB_Distributor_FXGrade_Extend>(parms.msg.ToString());
demodel.TenantId = Convert.ToInt32(parms.uid);
demodel.MallBaseId = parms.MallBaseId;
var list = userModule.GetFXDistributorGradePageList(pagelist.pageIndex, pagelist.pageSize, out long count, demodel);
pagelist.count = Convert.ToInt32(count);
pagelist.pageData = list.Select(x => new
{
x.Id,
x.Grade,
x.GradeName,
x.IsGuest,
x.CommissionRatio,
x.SiblingRatio,
x.SiblingRebatesNum,
x.IsCanBuy,
x.BuyMoney,
x.IsUpgrade,
x.UpgradeNum,
x.UpgradeId,
UpdateDate = x.UpdateDate.HasValue ? x.UpdateDate.Value.ToString("yyyy-MM-dd") : ""
});
return ApiResult.Success("", pagelist);
}
/// <summary>
/// 获取粉象分销等级信息列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetFXDistributorGradeList()
{
var parms = RequestParm;
RB_Distributor_FXGrade_Extend demodel = JsonConvert.DeserializeObject<RB_Distributor_FXGrade_Extend>(parms.msg.ToString());
demodel.TenantId = Convert.ToInt32(parms.uid);
demodel.MallBaseId = parms.MallBaseId;
var list = userModule.GetFXDistributorGradeList(demodel);
return ApiResult.Success("", list.Select(x => new
{
x.Id,
x.Grade,
x.GradeName
}));
}
/// <summary>
/// 新增修改等级
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult SetFXDistributorGradeInfo()
{
var req = RequestParm;
RB_Distributor_FXGrade_Extend demodel = JsonConvert.DeserializeObject<RB_Distributor_FXGrade_Extend>(req.msg.ToString());
if (string.IsNullOrEmpty(demodel.GradeName))
{
return ApiResult.ParamIsNull("等级名称");
}
if ((demodel.Grade ?? 0) <= 0)
{
return ApiResult.ParamIsNull("请选择等级");
}
if ((demodel.CommissionRatio ?? 0) <= 0) {
return ApiResult.ParamIsNull("请传递返佣比例");
}
if ((demodel.SiblingRatio ?? 0) <= 0) {
return ApiResult.ParamIsNull("请传递同级返佣比例");
}
demodel.TenantId = req.TenantId;
demodel.MallBaseId = req.MallBaseId;
demodel.Status = 0;
demodel.IsGuest ??= 2;
demodel.SiblingRebatesNum ??= 1;
demodel.IsCanBuy ??= 2;
demodel.BuyMoney ??= 0;
demodel.IsUpgrade ??= 0;
demodel.UpgradeNum ??= 0;
demodel.UpgradeId ??= 0;
demodel.CreateDate = DateTime.Now;
demodel.UpdateDate = DateTime.Now;
bool flag = userModule.SetFXDistributorGradeInfo(demodel);
if (flag)
{
return ApiResult.Success();
}
else
{
return ApiResult.Failed();
}
}
/// <summary>
/// 删除等级
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult DelFXDistributorGradeInfo()
{
var req = RequestParm;
JObject parms = JObject.Parse(req.msg.ToString());
int GradeId = parms.GetInt("GradeId", 0);
if (GradeId <= 0)
{
return ApiResult.ParamIsNull();
}
bool flag = userModule.DelFXDistributorGradeInfo(GradeId, req.TenantId, req.MallBaseId);
if (flag)
{
return ApiResult.Success();
}
else
{
return ApiResult.Failed();
}
}
/// <summary>
/// 获取粉象粉象视图查看
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetFXDistributorGradeView() {
var req = RequestParm;
return userModule.GetFXDistributorGradeView(req.TenantId, req.MallBaseId);
}
#endregion
#region 后台获取小程序码
/// <summary>
......
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