Commit 825be94e authored by liudong1993's avatar liudong1993

用户管理

parent d38534dc
using Mall.Common.Plugin;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Mall.Common.Enum.User
{
/// <summary>
/// 用户导出选项枚举
/// </summary>
public enum UserExportEnum
{
/// <summary>
/// 所属平台
/// </summary>
[EnumField("所属平台")]
SSPT = 1,
/// <summary>
/// 用户ID
/// </summary>
[EnumField("用户ID")]
YHID = 2,
/// <summary>
/// 平台标识ID
/// </summary>
[EnumField("平台标识ID")]
PTBSID = 3,
/// <summary>
/// 昵称
/// </summary>
[EnumField("昵称")]
NC = 4,
/// <summary>
/// 绑定手机号
/// </summary>
[EnumField("绑定手机号")]
BDSJH = 5,
/// <summary>
/// 联系方式
/// </summary>
[EnumField("联系方式")]
LXFS = 6,
/// <summary>
/// 备注
/// </summary>
[EnumField("备注")]
BZ = 7,
/// <summary>
/// 加入时间
/// </summary>
[EnumField("加入时间")]
JRSJ = 8,
/// <summary>
/// 会员等级
/// </summary>
[EnumField("会员等级")]
HYDJ = 9,
/// <summary>
/// 订单数
/// </summary>
[EnumField("订单数")]
DDS = 10,
/// <summary>
/// 优惠卷总数
/// </summary>
[EnumField("优惠卷总数")]
YHJZS = 11,
/// <summary>
/// 卡卷总数
/// </summary>
[EnumField("卡卷总数")]
KJZS = 12,
/// <summary>
/// 积分
/// </summary>
[EnumField("积分")]
JF = 13,
/// <summary>
/// 余额
/// </summary>
[EnumField("余额")]
YE = 14,
/// <summary>
/// 总消费
/// </summary>
[EnumField("总消费")]
ZXF = 15
}
}
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_Member_Balance
{
/// <summary>
/// Id
/// </summary>
public int Id
{
get;
set;
}
/// <summary>
/// 用户id
/// </summary>
public int? UserId { get; set; }
/// <summary>
/// 类型 1增加 2减少
/// </summary>
public int? Type
{
get;
set;
}
/// <summary>
/// 充值金额
/// </summary>
public decimal? Balance
{
get;
set;
}
/// <summary>
/// Image
/// </summary>
public string Image
{
get;
set;
}
/// <summary>
/// 描述
/// </summary>
public string Description
{
get;
set;
}
/// <summary>
/// CreateDate
/// </summary>
public DateTime? CreateDate
{
get;
set;
}
/// <summary>
/// 商户号id
/// </summary>
public int TenantId
{
get;
set;
}
/// <summary>
/// 小程序id
/// </summary>
public int MallBaseId
{
get;
set;
}
}
}
......@@ -57,7 +57,7 @@ namespace Mall.Model.Entity.User
/// <summary>
/// 商户号
/// </summary>
public int? TenantId
public int TenantId
{
get;
set;
......@@ -78,5 +78,13 @@ namespace Mall.Model.Entity.User
get;
set;
}
/// <summary>
/// 删除状态
/// </summary>
public int? Status { get; set; }
/// <summary>
/// 小程序id
/// </summary>
public int MallBaseId { get; set; }
}
}
......@@ -46,6 +46,11 @@ namespace Mall.Model.Entity.User
get;
set;
}
/// <summary>
/// 启用 1是 2否
/// </summary>
public int? Enabled { get; set; }
/// <summary>
/// 状态
/// </summary>
......@@ -113,7 +118,7 @@ namespace Mall.Model.Entity.User
/// <summary>
/// 商户号
/// </summary>
public int? TenantId
public int TenantId
{
get;
set;
......@@ -134,5 +139,9 @@ namespace Mall.Model.Entity.User
get;
set;
}
/// <summary>
/// 小程序id
/// </summary>
public int MallBaseId { get; set; }
}
}
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_Member_Integral
{
/// <summary>
/// Id
/// </summary>
public int Id
{
get;
set;
}
/// <summary>
/// 用户id
/// </summary>
public int? UserId { get; set; }
/// <summary>
/// 类型 1增加 2减少
/// </summary>
public int? Type
{
get;
set;
}
/// <summary>
/// 积分
/// </summary>
public int? Integral
{
get;
set;
}
/// <summary>
/// Image
/// </summary>
public string Image
{
get;
set;
}
/// <summary>
/// 描述
/// </summary>
public string Description
{
get;
set;
}
/// <summary>
/// CreateDate
/// </summary>
public DateTime? CreateDate
{
get;
set;
}
/// <summary>
/// 商户号id
/// </summary>
public int TenantId
{
get;
set;
}
/// <summary>
/// 小程序id
/// </summary>
public int MallBaseId
{
get;
set;
}
}
}
......@@ -113,12 +113,16 @@ namespace Mall.Model.Entity.User
/// <summary>
/// 积分
/// </summary>
public decimal? Integral
public int? Integral
{
get;
set;
}
/// <summary>
/// 总消费
/// </summary>
public decimal? TotalConsumption { get; set; }
/// <summary>
/// CreateDate
/// </summary>
public DateTime? CreateDate
......@@ -161,7 +165,7 @@ namespace Mall.Model.Entity.User
/// <summary>
/// 商户号id
/// </summary>
public int? TenantId
public int TenantId
{
get;
set;
......@@ -174,5 +178,9 @@ namespace Mall.Model.Entity.User
get;
set;
}
/// <summary>
/// 小程序id
/// </summary>
public int MallBaseId { 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_Basics_Extend : RB_Distributor_Basics
{
}
}
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_Member_Balance_Extend : RB_Member_Balance
{
}
}
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_Member_Equity_Extend : RB_Member_Equity
{
/// <summary>
/// 等级ids
/// </summary>
public string GradeIds { 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_Member_Grade_Extend : RB_Member_Grade
{
/// <summary>
/// 等级ids
/// </summary>
public string GradeIds { get; set; }
/// <summary>
/// 权益列表
/// </summary>
public List<RB_Member_Equity_Extend> EquityList { 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_Member_Integral_Extend : RB_Member_Integral
{
}
}
......@@ -13,6 +13,14 @@ namespace Mall.Model.Extend.User
[DB(ConnectionName = "DefaultConnection")]
public class RB_Member_User_Extend : RB_Member_User
{
/// <summary>
/// 会员等级名称
/// </summary>
public string MemberGradeName { get; set; }
/// <summary>
/// 导出枚举ids
/// </summary>
public List<int> ExcelEnumIds { get; set; }
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Mall.Common;
using Mall.Common.Plugin;
using Mall.Model.Entity.User;
using Mall.Model.Extend.User;
using Mall.Repository;
using Mall.Repository.User;
namespace Mall.Module.User
......@@ -11,7 +16,27 @@ namespace Mall.Module.User
/// </summary>
public class UserModule
{
/// <summary>
/// 用户管理
/// </summary>
private readonly RB_Member_UserRepository member_UserRepository = new RB_Member_UserRepository();
/// <summary>
/// 会员等级
/// </summary>
private readonly RB_Member_GradeRepository member_GradeRepository = new RB_Member_GradeRepository();
/// <summary>
/// 会员权益
/// </summary>
private readonly RB_Member_EquityRepository member_EquityRepository = new RB_Member_EquityRepository();
/// <summary>
/// 用户积分
/// </summary>
private readonly RB_Member_IntegralRepository member_IntegralRepository = new RB_Member_IntegralRepository();
/// <summary>
/// 用户余额
/// </summary>
private readonly RB_Member_BalanceRepository member_BalanceRepository = new RB_Member_BalanceRepository();
/// <summary>
/// 获取用户分页列表
......@@ -22,7 +47,25 @@ namespace Mall.Module.User
/// <param name="dmodel"></param>
/// <returns></returns>
public List<RB_Member_User_Extend> GetMemberUserPageList(int pageIndex, int pageSize, out long count, RB_Member_User_Extend dmodel) {
return member_UserRepository.GetPageList(pageIndex, pageSize, out count, dmodel);
var list= member_UserRepository.GetPageList(pageIndex, pageSize, out count, dmodel);
if (list.Any()) {
List<RB_Member_Grade_Extend> gradeList = new List<RB_Member_Grade_Extend>();
if (list.Where(x => x.MemberGrade > 0).Any())
{
var gradeIds = string.Join(",", list.Where(x => x.MemberGrade > 0).Select(x => x.MemberGrade ?? 0));
gradeList = member_GradeRepository.GetList(new RB_Member_Grade_Extend() { GradeIds = gradeIds, TenantId = dmodel.TenantId, MallBaseId = dmodel.MallBaseId });
}
foreach (var item in list) {
if (item.MemberGrade > 0)
{
item.MemberGradeName = gradeList.Where(x => x.Id == item.MemberGrade).FirstOrDefault()?.Name ?? "";
}
else {
item.MemberGradeName = "普通会员";
}
}
}
return list;
}
/// <summary>
......@@ -32,7 +75,329 @@ namespace Mall.Module.User
/// <returns></returns>
public List<RB_Member_User_Extend> GetMemberUserList(RB_Member_User_Extend dmodel)
{
return member_UserRepository.GetList(dmodel);
var list = member_UserRepository.GetList(dmodel);
if (list.Any())
{
List<RB_Member_Grade_Extend> gradeList = new List<RB_Member_Grade_Extend>();
if (list.Where(x => x.MemberGrade > 0).Any())
{
var gradeIds = string.Join(",", list.Where(x => x.MemberGrade > 0).Select(x => x.MemberGrade ?? 0));
gradeList = member_GradeRepository.GetList(new RB_Member_Grade_Extend() { GradeIds = gradeIds, TenantId = dmodel.TenantId, MallBaseId = dmodel.MallBaseId });
}
foreach (var item in list)
{
if (item.MemberGrade > 0)
{
item.MemberGradeName = gradeList.Where(x => x.Id == item.MemberGrade).FirstOrDefault()?.Name ?? "";
}
else
{
item.MemberGradeName = "普通会员";
}
}
}
return list;
}
/// <summary>
/// 获取等级分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="count"></param>
/// <param name="dmodel"></param>
/// <returns></returns>
public List<RB_Member_Grade_Extend> GetMemberGradePageList(int pageIndex, int pageSize, out long count, RB_Member_Grade_Extend dmodel) {
var list = member_GradeRepository.GetPageList(pageIndex, pageSize, out count, dmodel);
if (list.Any()) {
string Ids = string.Join(",", list.Select(x => x.Id));
var elist = member_EquityRepository.GetList(new RB_Member_Equity_Extend() { GradeIds = Ids, TenantId = dmodel.TenantId, MallBaseId = dmodel.MallBaseId });
foreach (var item in list) {
item.EquityList = elist.Where(x => x.GradeId == item.Id).ToList();
}
}
return list;
}
/// <summary>
/// 获取会员等级列表
/// </summary>
/// <param name="dmodel"></param>
/// <returns></returns>
public List<RB_Member_Grade_Extend> GetMemberGradeList(RB_Member_Grade_Extend dmodel)
{
var list = member_GradeRepository.GetList(dmodel);
if (list.Any())
{
string Ids = string.Join(",", list.Select(x => x.Id));
var elist = member_EquityRepository.GetList(new RB_Member_Equity_Extend() { GradeIds = Ids, TenantId = dmodel.TenantId, MallBaseId = dmodel.MallBaseId });
foreach (var item in list)
{
item.EquityList = elist.Where(x => x.GradeId == item.Id).ToList();
}
}
return list;
}
/// <summary>
/// 新增会员等级
/// </summary>
/// <param name="demodel"></param>
/// <returns></returns>
public bool SetMemberGradeInfo(RB_Member_Grade_Extend demodel)
{
var trans = member_GradeRepository.DbTransaction;
try
{
if (demodel.Id > 0)
{
Dictionary<string, object> files = new Dictionary<string, object>() {
{ nameof(RB_Member_Grade.BackgroundImage),demodel.BackgroundImage},
{ nameof(RB_Member_Grade.Discount),demodel.Discount},
{ nameof(RB_Member_Grade.Enabled),demodel.Enabled},
{ nameof(RB_Member_Grade.Grade),demodel.Grade},
{ nameof(RB_Member_Grade.Icon),demodel.Icon},
{ nameof(RB_Member_Grade.IsAutoUpGrade),demodel.IsAutoUpGrade},
{ nameof(RB_Member_Grade.IsMemberBuy),demodel.IsMemberBuy},
{ nameof(RB_Member_Grade.MemberBuyMoney),demodel.MemberBuyMoney},
{ nameof(RB_Member_Grade.MemberSpecification),demodel.MemberSpecification},
{ nameof(RB_Member_Grade.Name),demodel.Name},
{ nameof(RB_Member_Grade.UpGradeMoney),demodel.UpGradeMoney},
{ nameof(RB_Member_Grade.UpdateDate),demodel.UpdateDate},
};
List<WhereHelper> wheres = new List<WhereHelper>() {
new WhereHelper(){
FiledName=nameof(RB_Member_Grade.Id),
FiledValue=demodel.Id,
OperatorEnum=OperatorEnum.Equal
}
};
bool flag = member_GradeRepository.Update(files, wheres, trans);
if (flag) {
var elist = member_EquityRepository.GetList(new RB_Member_Equity_Extend() { GradeId = demodel.Id });
List<RB_Member_Equity_Extend> InsertList = new List<RB_Member_Equity_Extend>();
List<RB_Member_Equity_Extend> UpdateList = new List<RB_Member_Equity_Extend>();
List<RB_Member_Equity_Extend> DeleteList = new List<RB_Member_Equity_Extend>();
if (demodel.EquityList != null && demodel.EquityList.Any()) {
InsertList = demodel.EquityList.Where(x => x.Id == 0).ToList();
UpdateList = demodel.EquityList.Where(x => elist.Select(y => y.Id).Contains(x.Id)).ToList();
DeleteList = elist.Where(x => !demodel.EquityList.Select(y => y.Id).Contains(x.Id)).ToList();
}
foreach (var item in InsertList) {
member_EquityRepository.Insert(new RB_Member_Equity()
{
Content = item.Content,
CreateDate = demodel.CreateDate,
GradeId = demodel.Id,
Id = 0,
Image = Config.GetFilePath(item.Image),
MallBaseId = demodel.MallBaseId,
Status = 0,
TenantId = demodel.TenantId,
Title = item.Title,
UpdateDate = demodel.CreateDate
}, trans);
}
foreach (var item in UpdateList) {
Dictionary<string, object> cols = new Dictionary<string, object>() {
{ nameof(RB_Member_Equity.Content),item.Content},
{ nameof(RB_Member_Equity.Image),Config.GetFilePath(item.Image)},
{ nameof(RB_Member_Equity.Title),item.Title},
{ nameof(RB_Member_Equity.UpdateDate),demodel.UpdateDate},
};
List<WhereHelper> wheres1 = new List<WhereHelper>() {
new WhereHelper(){
FiledName=nameof(RB_Member_Equity.Id),
FiledValue=item.Id,
OperatorEnum=OperatorEnum.Equal
}
};
member_EquityRepository.Update(cols, wheres1, trans);
}
foreach (var item in DeleteList) {
Dictionary<string, object> cols = new Dictionary<string, object>() {
{ nameof(RB_Member_Equity.Status),1},
{ nameof(RB_Member_Equity.UpdateDate),demodel.UpdateDate},
};
List<WhereHelper> wheres1 = new List<WhereHelper>() {
new WhereHelper(){
FiledName=nameof(RB_Member_Equity.Id),
FiledValue=item.Id,
OperatorEnum=OperatorEnum.Equal
}
};
member_EquityRepository.Update(cols, wheres1, trans);
}
}
member_GradeRepository.DBSession.Commit();
return flag;
}
else
{
int Id = member_GradeRepository.Insert(demodel, trans);
bool flag = Id > 0;
if (flag)
{
//插入权益
if (demodel.EquityList != null && demodel.EquityList.Any())
{
foreach (var item in demodel.EquityList)
{
member_EquityRepository.Insert(new Model.Entity.User.RB_Member_Equity()
{
Content = item.Content,
CreateDate = demodel.CreateDate,
GradeId = Id,
Id = 0,
Image = Config.GetFilePath(item.Image),
MallBaseId = demodel.MallBaseId,
Status = 0,
TenantId = demodel.TenantId,
Title = item.Title,
UpdateDate = demodel.CreateDate
}, trans);
}
}
}
member_GradeRepository.DBSession.Commit();
return flag;
}
}
catch (Exception ex)
{
LogHelper.Write(ex, "SetMemberGradeInfo");
member_GradeRepository.DBSession.Rollback();
return false;
}
}
/// <summary>
/// 删除会员等级
/// </summary>
/// <param name="gradeId"></param>
/// <param name="uid"></param>
/// <returns></returns>
public bool DelMemberGradeInfo(int gradeId, string uid)
{
Dictionary<string, object> cols = new Dictionary<string, object>() {
{ nameof(RB_Member_Grade.Status),1},
{ nameof(RB_Member_Grade.UpdateDate),DateTime.Now},
};
List<WhereHelper> wheres1 = new List<WhereHelper>() {
new WhereHelper(){
FiledName=nameof(RB_Member_Grade.Id),
FiledValue=gradeId,
OperatorEnum=OperatorEnum.Equal
},
new WhereHelper(){
FiledName=nameof(RB_Member_Grade.TenantId),
FiledValue=Convert.ToInt32(uid),
OperatorEnum=OperatorEnum.Equal
}
};
return member_GradeRepository.Update(cols, wheres1);
}
/// <summary>
/// 获取积分分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="count"></param>
/// <param name="demodel"></param>
/// <returns></returns>
public List<RB_Member_Integral_Extend> GetMemberIntegralPageList(int pageIndex, int pageSize, out long count, RB_Member_Integral_Extend demodel)
{
return member_IntegralRepository.GetPageList(pageIndex, pageSize, out count, demodel);
}
/// <summary>
/// 保存积分
/// </summary>
/// <param name="demodel"></param>
/// <returns></returns>
public bool SetMemberIntegralInfo(RB_Member_Integral_Extend demodel)
{
var umodel = member_UserRepository.GetEntity(demodel.UserId);
int Integral = 0;
if (demodel.Type == 1)
{
Integral = (umodel.Integral ?? 0) + (demodel.Integral ?? 0);
}
else {
Integral = (umodel.Integral ?? 0) - (demodel.Integral ?? 0);
}
if (Integral < 0) {
Integral = 0;
}
Dictionary<string, object> keys = new Dictionary<string, object>() {
{ nameof(RB_Member_User.Integral),Integral}
};
List<WhereHelper> wheres = new List<WhereHelper>() {
new WhereHelper(){
FiledName=nameof(RB_Member_User.Id),
FiledValue=demodel.UserId,
OperatorEnum=OperatorEnum.Equal
}
};
bool flag = member_UserRepository.Update(keys, wheres);
if (flag)
{
return member_IntegralRepository.Insert(demodel) > 0;
}
return false;
}
/// <summary>
/// 获取余额分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="count"></param>
/// <param name="demodel"></param>
/// <returns></returns>
public List<RB_Member_Balance_Extend> GetMemberBalancePageList(int pageIndex, int pageSize, out long count, RB_Member_Balance_Extend demodel)
{
return member_BalanceRepository.GetPageList(pageIndex, pageSize, out count, demodel);
}
/// <summary>
/// 保存余额充值
/// </summary>
/// <param name="demodel"></param>
/// <returns></returns>
public bool SetMemberBalanceInfo(RB_Member_Balance_Extend demodel)
{
var umodel = member_UserRepository.GetEntity(demodel.UserId);
decimal Balance = 0;
if (demodel.Type == 1)
{
Balance = (umodel.Balance ?? 0) + (demodel.Balance ?? 0);
}
else
{
Balance = (umodel.Balance ?? 0) - (demodel.Balance ?? 0);
}
if (Balance < 0)
{
Balance = 0;
}
Dictionary<string, object> keys = new Dictionary<string, object>() {
{ nameof(RB_Member_User.Balance),Balance}
};
List<WhereHelper> wheres = new List<WhereHelper>() {
new WhereHelper(){
FiledName=nameof(RB_Member_User.Id),
FiledValue=demodel.UserId,
OperatorEnum=OperatorEnum.Equal
}
};
bool flag = member_UserRepository.Update(keys, wheres);
if (flag)
{
return member_BalanceRepository.Insert(demodel) > 0;
}
return false;
}
}
}
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_Member_BalanceRepository : RepositoryBase<RB_Member_Balance>
{
/// <summary>
/// 分页列表
/// </summary>
/// <param name="pageIndex">页码</param>
/// <param name="pageSize">每页显示条数</param>
/// <param name="rowCount">总条数</param>
/// <param name="dmodel">查询条件</param>
/// <returns></returns>
public List<RB_Member_Balance_Extend> GetPageList(int pageIndex, int pageSize, out long rowCount, RB_Member_Balance_Extend dmodel)
{
string where = " 1=1 ";
if (dmodel.TenantId > 0) {
where += $@" and {nameof(RB_Member_Balance.TenantId)}={dmodel.TenantId}";
}
if (dmodel.MallBaseId > 0) {
where += $@" and {nameof(RB_Member_Balance.MallBaseId)}={dmodel.MallBaseId}";
}
if (dmodel.Id > 0) {
where += $@" and {nameof(RB_Member_Balance.Id)}={dmodel.Id}";
}
if (dmodel.Type > 0) {
where += $@" and {nameof(RB_Member_Balance.Type)}={dmodel.Type}";
}
if (dmodel.UserId > 0) {
where += $@" and {nameof(RB_Member_Balance.UserId)}={dmodel.UserId}";
}
string sql = $@"select * from RB_Member_Balance where {where} order by Id desc";
return GetPage<RB_Member_Balance_Extend>(pageIndex, pageSize, out rowCount, sql).ToList();
}
/// <summary>
/// 获取列表
/// </summary>
/// <param name="dmodel"></param>
/// <returns></returns>
public List<RB_Member_Balance_Extend> GetList(RB_Member_Balance_Extend dmodel)
{
string where = " 1=1 ";
if (dmodel.TenantId > 0)
{
where += $@" and {nameof(RB_Member_Balance.TenantId)}={dmodel.TenantId}";
}
if (dmodel.MallBaseId > 0)
{
where += $@" and {nameof(RB_Member_Balance.MallBaseId)}={dmodel.MallBaseId}";
}
if (dmodel.Id > 0)
{
where += $@" and {nameof(RB_Member_Balance.Id)}={dmodel.Id}";
}
if (dmodel.Type > 0)
{
where += $@" and {nameof(RB_Member_Balance.Type)}={dmodel.Type}";
}
if (dmodel.UserId > 0)
{
where += $@" and {nameof(RB_Member_Balance.UserId)}={dmodel.UserId}";
}
string sql = $@"select * from RB_Member_Balance where {where} order by Id desc";
return Get<RB_Member_Balance_Extend>(sql).ToList();
}
}
}
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_Member_EquityRepository : RepositoryBase<RB_Member_Equity>
{
/// <summary>
/// 分页列表
/// </summary>
/// <param name="pageIndex">页码</param>
/// <param name="pageSize">每页显示条数</param>
/// <param name="rowCount">总条数</param>
/// <param name="dmodel">查询条件</param>
/// <returns></returns>
public List<RB_Member_Equity_Extend> GetPageList(int pageIndex, int pageSize, out long rowCount, RB_Member_Equity_Extend dmodel)
{
string where = $" 1=1 and {nameof(RB_Member_Equity.Status)}=0";
if (dmodel.TenantId > 0) {
where += $@" and {nameof(RB_Member_Equity.TenantId)}={dmodel.TenantId}";
}
if (dmodel.MallBaseId > 0)
{
where += $@" and {nameof(RB_Member_Equity.MallBaseId)}={dmodel.MallBaseId}";
}
if (!string.IsNullOrEmpty(dmodel.Title)) {
where += $@" and {nameof(RB_Member_Equity.Title)} like '%{dmodel.Title}%'";
}
if (dmodel.GradeId > 0) {
where += $@" and {nameof(RB_Member_Equity.GradeId)} ={dmodel.GradeId}";
}
string sql = $@"select * from RB_Member_Equity where {where} order by Id desc";
return GetPage<RB_Member_Equity_Extend>(pageIndex, pageSize, out rowCount, sql).ToList();
}
/// <summary>
/// 获取列表
/// </summary>
/// <param name="dmodel"></param>
/// <returns></returns>
public List<RB_Member_Equity_Extend> GetList(RB_Member_Equity_Extend dmodel)
{
string where = $" 1=1 and {nameof(RB_Member_Equity.Status)}=0";
if (dmodel.TenantId > 0)
{
where += $@" and {nameof(RB_Member_Equity.TenantId)}={dmodel.TenantId}";
}
if (dmodel.MallBaseId > 0)
{
where += $@" and {nameof(RB_Member_Equity.MallBaseId)}={dmodel.MallBaseId}";
}
if (!string.IsNullOrEmpty(dmodel.Title))
{
where += $@" and {nameof(RB_Member_Equity.Title)} like '%{dmodel.Title}%'";
}
if (dmodel.GradeId > 0)
{
where += $@" and {nameof(RB_Member_Equity.GradeId)} ={dmodel.GradeId}";
}
if (!string.IsNullOrEmpty(dmodel.GradeIds)) {
where += $@" and {nameof(RB_Member_Equity.GradeId)} in({dmodel.GradeIds})";
}
string sql = $@"select * from RB_Member_Equity where {where} order by Id desc";
return Get<RB_Member_Equity_Extend>(sql).ToList();
}
}
}
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_Member_GradeRepository : RepositoryBase<RB_Member_Grade>
{
/// <summary>
/// 分页列表
/// </summary>
/// <param name="pageIndex">页码</param>
/// <param name="pageSize">每页显示条数</param>
/// <param name="rowCount">总条数</param>
/// <param name="dmodel">查询条件</param>
/// <returns></returns>
public List<RB_Member_Grade_Extend> GetPageList(int pageIndex, int pageSize, out long rowCount, RB_Member_Grade_Extend dmodel)
{
string where = $" 1=1 and {nameof(RB_Member_Grade.Status)}=0 ";
if (dmodel.TenantId > 0) {
where += $@" and {nameof(RB_Member_Grade.TenantId)}={dmodel.TenantId}";
}
if (dmodel.MallBaseId > 0)
{
where += $@" and {nameof(RB_Member_Grade.MallBaseId)}={dmodel.MallBaseId}";
}
if (dmodel.Grade > 0) {
where += $@" and {nameof(RB_Member_Grade.Grade)} ={(int)dmodel.Grade}";
}
if (!string.IsNullOrEmpty(dmodel.Name)) {
where += $@" and {nameof(RB_Member_Grade.Name)} like '%{dmodel.Name}%'";
}
if (dmodel.Enabled > 0) {
where += $@" and {nameof(RB_Member_Grade.Enabled)} ={(int)dmodel.Enabled}";
}
string sql = $@"select * from RB_Member_Grade where {where} order by Id desc";
return GetPage<RB_Member_Grade_Extend>(pageIndex, pageSize, out rowCount, sql).ToList();
}
/// <summary>
/// 获取列表
/// </summary>
/// <param name="dmodel"></param>
/// <returns></returns>
public List<RB_Member_Grade_Extend> GetList(RB_Member_Grade_Extend dmodel)
{
string where = $" 1=1 and {nameof(RB_Member_Grade.Status)}=0 ";
if (dmodel.TenantId > 0)
{
where += $@" and {nameof(RB_Member_Grade.TenantId)}={dmodel.TenantId}";
}
if (dmodel.MallBaseId > 0)
{
where += $@" and {nameof(RB_Member_Grade.MallBaseId)}={dmodel.MallBaseId}";
}
if (dmodel.Grade > 0)
{
where += $@" and {nameof(RB_Member_Grade.Grade)} ={(int)dmodel.Grade}";
}
if (!string.IsNullOrEmpty(dmodel.Name))
{
where += $@" and {nameof(RB_Member_Grade.Name)} like '%{dmodel.Name}%'";
}
if (dmodel.Enabled > 0)
{
where += $@" and {nameof(RB_Member_Grade.Enabled)} ={(int)dmodel.Enabled}";
}
string sql = $@"select * from RB_Member_Grade where {where} order by Id desc";
return Get<RB_Member_Grade_Extend>(sql).ToList();
}
}
}
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_Member_IntegralRepository : RepositoryBase<RB_Member_Integral>
{
/// <summary>
/// 分页列表
/// </summary>
/// <param name="pageIndex">页码</param>
/// <param name="pageSize">每页显示条数</param>
/// <param name="rowCount">总条数</param>
/// <param name="dmodel">查询条件</param>
/// <returns></returns>
public List<RB_Member_Integral_Extend> GetPageList(int pageIndex, int pageSize, out long rowCount, RB_Member_Integral_Extend dmodel)
{
string where = " 1=1 ";
if (dmodel.TenantId > 0) {
where += $@" and {nameof(RB_Member_Integral.TenantId)}={dmodel.TenantId}";
}
if (dmodel.MallBaseId > 0) {
where += $@" and {nameof(RB_Member_Integral.MallBaseId)}={dmodel.MallBaseId}";
}
if (dmodel.Id > 0) {
where += $@" and {nameof(RB_Member_Integral.Id)}={dmodel.Id}";
}
if (dmodel.Type > 0) {
where += $@" and {nameof(RB_Member_Integral.Type)}={dmodel.Type}";
}
if (dmodel.UserId > 0) {
where += $@" and {nameof(RB_Member_Integral.UserId)}={dmodel.UserId}";
}
string sql = $@"select * from RB_Member_Integral where {where} order by Id desc";
return GetPage<RB_Member_Integral_Extend>(pageIndex, pageSize, out rowCount, sql).ToList();
}
/// <summary>
/// 获取列表
/// </summary>
/// <param name="dmodel"></param>
/// <returns></returns>
public List<RB_Member_Integral_Extend> GetList(RB_Member_Integral_Extend dmodel)
{
string where = " 1=1 ";
if (dmodel.TenantId > 0)
{
where += $@" and {nameof(RB_Member_Integral.TenantId)}={dmodel.TenantId}";
}
if (dmodel.MallBaseId > 0)
{
where += $@" and {nameof(RB_Member_Integral.MallBaseId)}={dmodel.MallBaseId}";
}
if (dmodel.Id > 0)
{
where += $@" and {nameof(RB_Member_Integral.Id)}={dmodel.Id}";
}
if (dmodel.Type > 0)
{
where += $@" and {nameof(RB_Member_Integral.Type)}={dmodel.Type}";
}
if (dmodel.UserId > 0)
{
where += $@" and {nameof(RB_Member_Integral.UserId)}={dmodel.UserId}";
}
string sql = $@"select * from RB_Member_Integral where {where} order by Id desc";
return Get<RB_Member_Integral_Extend>(sql).ToList();
}
}
}
......@@ -27,6 +27,12 @@ namespace Mall.Repository.User
if (dmodel.TenantId > 0) {
where += $@" and {nameof(RB_Member_User.TenantId)}={dmodel.TenantId}";
}
if (dmodel.MallBaseId > 0) {
where += $@" and {nameof(RB_Member_User.MallBaseId)}={dmodel.MallBaseId}";
}
if (dmodel.Id > 0) {
where += $@" and {nameof(RB_Member_User.Id)}={dmodel.Id}";
}
if (!string.IsNullOrEmpty(dmodel.Name)) {
where += $@" and {nameof(RB_Member_User.Name)} like '%{dmodel.Name}%'";
}
......@@ -63,6 +69,10 @@ select * from RB_Member_User where {where} order by CreateDate desc
{
where += $@" and {nameof(RB_Member_User.TenantId)}={dmodel.TenantId}";
}
if (dmodel.MallBaseId > 0)
{
where += $@" and {nameof(RB_Member_User.MallBaseId)}={dmodel.MallBaseId}";
}
if (!string.IsNullOrEmpty(dmodel.Name))
{
where += $@" and {nameof(RB_Member_User.Name)} like '%{dmodel.Name}%'";
......
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Mall.Common.API;
using Mall.Model.Extend.User;
using Mall.Module.User;
using Mall.WebApi.Filter;
using Microsoft.AspNetCore.Cors;
using Microsoft.AspNetCore.Mvc;
using Newtonsoft.Json;
using Mall.Common.Plugin;
using Mall.Common.Enum.User;
using Mall.CacheManager.User;
using Newtonsoft.Json.Linq;
using Mall.Common;
namespace Mall.WebApi.Controllers.MallBase
{
[Route("api/[controller]/[action]")]
[ApiExceptionFilter]
[ApiController]
[EnableCors("AllowCors")]
public class UserController : BaseController
{
private readonly UserModule userModule = new UserModule();
#region 用户管理
/// <summary>
/// 获取用户分页列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetMemberUserPageList()
{
var parms = RequestParm;
ResultPageModel pagelist = JsonConvert.DeserializeObject<ResultPageModel>(parms.msg.ToString());
RB_Member_User_Extend demodel = JsonConvert.DeserializeObject<RB_Member_User_Extend>(parms.msg.ToString());
demodel.TenantId = Convert.ToInt32(parms.uid);
var list = userModule.GetMemberUserPageList(pagelist.pageIndex, pagelist.pageSize, out long count, demodel);
pagelist.count = Convert.ToInt32(count);
pagelist.pageData = list.Select(x => new
{
x.Id,
x.AliasName,
x.Balance,
x.Blacklist,
x.CardVolumeNum,
x.ContactWay,
x.CouponsNum,
x.Integral,
x.TotalConsumption,
x.MemberGrade,
x.MemberGradeName,
x.Moblie,
x.Name,
x.OpenId,
x.OrderNum,
x.Photo,
x.Remark,
x.Source,
SourceName = x.Source.GetEnumName(),
x.TenantId,
CreateDate = x.CreateDate.HasValue ? x.CreateDate.Value.ToString("yyyy-MM-dd") : ""
});
return ApiResult.Success("", pagelist);
}
/// <summary>
/// 用户信息下载
/// </summary>
[HttpPost]
public FileContentResult GetMemberUserListToExcel()
{
var parms = RequestParm;
RB_Member_User_Extend demodel = JsonConvert.DeserializeObject<RB_Member_User_Extend>(parms.msg.ToString());
string ExcelName = "用户列表" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".xls";
List<ExcelDataSource> slist = new List<ExcelDataSource>();
if (demodel.ExcelEnumIds == null || !demodel.ExcelEnumIds.Any())
{
var byteData1 = ExcelTempLateHelper.ToExcelExtend(slist);
return File(byteData1, "application/octet-stream", ExcelName);
}
var Enumlist = EnumHelper.GetEnumList(typeof(UserExportEnum));
ExcelDataSource header = new ExcelDataSource()
{
ExcelRows = new List<ExcelColumn>(30) {
new ExcelColumn(value: "序号") { CellWidth = 15, HAlignmentEnum = HAlignmentEnum.CENTER, VAlignmentEnum = VAlignmentEnum.CENTER }
}
};
foreach (var item in demodel.ExcelEnumIds)
{
var Name = Enumlist.Where(x => x.Value == item.ToString()).FirstOrDefault().Key ?? "";
header.ExcelRows.Add(new ExcelColumn(value: Name) { CellWidth = 15, HAlignmentEnum = HAlignmentEnum.CENTER, VAlignmentEnum = VAlignmentEnum.CENTER });
}
slist.Add(header);
try
{
demodel.TenantId = Convert.ToInt32(parms.uid);
var list = userModule.GetMemberUserList(demodel);
#region 组装数据
int Num = 0;
foreach (var item in list)
{
Num++;
ExcelDataSource datarow = new ExcelDataSource()
{
ExcelRows = new List<ExcelColumn>(30) {
new ExcelColumn(value:Num.ToString()){ },
}
};
foreach (var qitem in demodel.ExcelEnumIds)
{
switch (qitem)
{
case 1:
datarow.ExcelRows.Add(new ExcelColumn(value: item.Source.GetEnumName()) { }); break;
case 2:
datarow.ExcelRows.Add(new ExcelColumn(value: item.Id.ToString()) { }); break;
case 3:
datarow.ExcelRows.Add(new ExcelColumn(value: item.OpenId) { }); break;
case 4:
datarow.ExcelRows.Add(new ExcelColumn(value: (item.AliasName ?? "") != "" ? item.AliasName : item.Name) { }); break;
case 5:
datarow.ExcelRows.Add(new ExcelColumn(value: item.Moblie) { }); break;
case 6:
datarow.ExcelRows.Add(new ExcelColumn(value: item.ContactWay) { }); break;
case 7:
datarow.ExcelRows.Add(new ExcelColumn(value: item.Remark) { }); break;
case 8:
datarow.ExcelRows.Add(new ExcelColumn(value: item.CreateDate.Value.ToString("yyyy-MM-dd HH:mm:ss")) { }); break;
case 9:
datarow.ExcelRows.Add(new ExcelColumn(value: item.MemberGradeName) { }); break;
case 10:
datarow.ExcelRows.Add(new ExcelColumn(value: (item.OrderNum ?? 0).ToString()) { }); break;
case 11:
datarow.ExcelRows.Add(new ExcelColumn(value: (item.CouponsNum ?? 0).ToString()) { }); break;
case 12:
datarow.ExcelRows.Add(new ExcelColumn(value: (item.CardVolumeNum ?? 0).ToString()) { }); break;
case 13:
datarow.ExcelRows.Add(new ExcelColumn(value: (item.Integral ?? 0).ToString()) { }); break;
case 14:
datarow.ExcelRows.Add(new ExcelColumn(value: (item.Balance ?? 0).ToString()) { }); break;
case 15:
datarow.ExcelRows.Add(new ExcelColumn(value: (item.TotalConsumption ?? 0).ToString()) { }); break;
}
}
slist.Add(datarow);
}
#endregion
var byteData = ExcelTempLateHelper.ToExcelExtend(slist);
return File(byteData, "application/octet-stream", ExcelName);
}
catch (Exception ex)
{
LogHelper.Write(ex, string.Format("GetFileFromWebApi_requestData: {0}", JsonHelper.Serialize(RequestParm)));
var byteData1 = ExcelTempLateHelper.ToExcelExtend(slist);
return File(byteData1, "application/octet-stream", ExcelName);
}
}
/// <summary>
/// 获取用户下载枚举列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetMemberUserExcelEnumList() {
var list = EnumHelper.GetEnumList(typeof(UserExportEnum));
return ApiResult.Success("", list.Select(x => new
{
Name = x.Key,
Id = Convert.ToInt32(x.Value)
}));
}
/// <summary>
/// 获取用户平台枚举列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetMemberUserSourceEnumList()
{
var list = EnumHelper.GetEnumList(typeof(UserSourceEnum));
return ApiResult.Success("", list.Select(x => new
{
Name = x.Key,
Id = Convert.ToInt32(x.Value)
}));
}
/// <summary>
/// 获取会员等级分页列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetMemberGradePageList() {
var parms = RequestParm;
ResultPageModel pagelist = JsonConvert.DeserializeObject<ResultPageModel>(parms.msg.ToString());
RB_Member_Grade_Extend demodel = JsonConvert.DeserializeObject<RB_Member_Grade_Extend>(parms.msg.ToString());
demodel.TenantId = Convert.ToInt32(parms.uid);
var list = userModule.GetMemberGradePageList(pagelist.pageIndex, pagelist.pageSize, out long count, demodel);
pagelist.count = Convert.ToInt32(count);
pagelist.pageData = list.Select(x => new
{
x.Id,
x.Name,
x.Grade,
x.BackgroundImage,
x.Discount,
x.Enabled,
EquityList= x.EquityList.Select(x=>new {
x.Id,
x.Content,
x.Image,
x.Title
}),
x.Icon,
x.IsAutoUpGrade,
x.IsMemberBuy,
x.MemberBuyMoney,
x.MemberSpecification,
x.TenantId,
TenantName = UserReidsCache.GetUserLoginInfo(x.TenantId)?.Name ?? "",
x.UpGradeMoney,
CreateDate = x.CreateDate.HasValue ? x.CreateDate.Value.ToString("yyyy-MM-dd") : ""
});
return ApiResult.Success("", pagelist);
}
/// <summary>
/// 获取会员等级列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetMemberGradeList()
{
var parms = RequestParm;
RB_Member_Grade_Extend demodel = JsonConvert.DeserializeObject<RB_Member_Grade_Extend>(parms.msg.ToString());
demodel.TenantId = Convert.ToInt32(parms.uid);
var list = userModule.GetMemberGradeList(demodel);
return ApiResult.Success("", list.Select(x=>new {
x.Id,
x.Grade,
x.Name,
x.Icon,
x.BackgroundImage
}));
}
/// <summary>
/// 新增会员等级
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult SetMemberGradeInfo() {
var parms = RequestParm;
RB_Member_Grade_Extend demodel = JsonConvert.DeserializeObject<RB_Member_Grade_Extend>(parms.msg.ToString());
if (demodel.MallBaseId <= 0) {
return ApiResult.ParamIsNull("请传递小程序");
}
if ((demodel.Grade ?? 0) <= 0) {
return ApiResult.ParamIsNull("请传递等级");
}
if (string.IsNullOrEmpty(demodel.Name)) {
return ApiResult.ParamIsNull("请输入等级名称");
}
if ((demodel.Discount ?? 0) <= 0)
{
return ApiResult.ParamIsNull("请输入折扣率");
}
if ((demodel.Enabled ?? 0) <= 0) {
return ApiResult.ParamIsNull("请选择会员状态");
}
if (string.IsNullOrEmpty(demodel.Icon)) {
return ApiResult.ParamIsNull("请选择会员图标");
}
if (string.IsNullOrEmpty(demodel.BackgroundImage))
{
return ApiResult.ParamIsNull("请选择会员背景图");
}
if (demodel.IsAutoUpGrade == 1)
{
if ((demodel.UpGradeMoney ?? 0) <= 0)
{
return ApiResult.ParamIsNull("请输入累计完成订单金额");
}
}
else {
demodel.IsAutoUpGrade = 2;
demodel.UpGradeMoney = 0;
}
if (demodel.IsMemberBuy == 1)
{
if ((demodel.MemberBuyMoney ?? 0) <= 0)
{
return ApiResult.ParamIsNull("请输入会员购买价格");
}
}
else {
demodel.IsMemberBuy = 2;
demodel.MemberBuyMoney = 0;
}
demodel.Icon = Config.GetFilePath(demodel.Icon);
demodel.BackgroundImage = Config.GetFilePath(demodel.BackgroundImage);
demodel.CreateDate = DateTime.Now;
demodel.UpdateDate = DateTime.Now;
demodel.Status = 0;
demodel.TenantId = Convert.ToInt32(parms.uid);
bool flag = userModule.SetMemberGradeInfo(demodel);
if (flag)
{
return ApiResult.Success();
}
else {
return ApiResult.Failed();
}
}
/// <summary>
/// 删除会员等级
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult DelMemberGradeInfo() {
JObject parms = JObject.Parse(RequestParm.msg.ToString());
int GradeId = parms.GetInt("GradeId", 0);
if (GradeId <= 0) {
return ApiResult.Failed("请传递参数");
}
bool flag = userModule.DelMemberGradeInfo(GradeId, RequestParm.uid);
if (flag)
{
return ApiResult.Success();
}
else {
return ApiResult.Failed();
}
}
/// <summary>
/// 获取会用户积分分页列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetMemberIntegralPageList()
{
var parms = RequestParm;
ResultPageModel pagelist = JsonConvert.DeserializeObject<ResultPageModel>(parms.msg.ToString());
RB_Member_Integral_Extend demodel = JsonConvert.DeserializeObject<RB_Member_Integral_Extend>(parms.msg.ToString());
demodel.TenantId = Convert.ToInt32(parms.uid);
List<RB_Member_Integral_Extend> list = userModule.GetMemberIntegralPageList(pagelist.pageIndex, pagelist.pageSize, out long count, demodel);
pagelist.count = Convert.ToInt32(count);
pagelist.pageData = list.Select(x => new
{
x.Id,
x.Type,
x.Description,
x.Image,
x.Integral,
x.UserId,
x.TenantId,
TenantName = UserReidsCache.GetUserLoginInfo(x.TenantId)?.Name ?? "",
CreateDate = x.CreateDate.HasValue ? x.CreateDate.Value.ToString("yyyy-MM-dd") : ""
});
return ApiResult.Success("", pagelist);
}
/// <summary>
/// 新增积分
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult SetMemberIntegralInfo() {
var parms = RequestParm;
RB_Member_Integral_Extend demodel = JsonConvert.DeserializeObject<RB_Member_Integral_Extend>(parms.msg.ToString());
if (demodel.MallBaseId <= 0) {
return ApiResult.ParamIsNull("请传递小程序id");
}
if ((demodel.UserId ?? 0) <= 0) {
return ApiResult.ParamIsNull("请传递用户id");
}
if (demodel.Type != 1 && demodel.Type != 2) {
return ApiResult.ParamIsNull("请选择充值/扣除");
}
if ((demodel.Integral ?? 0) <= 0) {
return ApiResult.ParamIsNull("请输入积分数");
}
demodel.Description = demodel.Description ?? "";
demodel.Image = Config.GetFilePath(demodel.Image);
demodel.TenantId = Convert.ToInt32(parms.uid);
demodel.CreateDate = DateTime.Now;
bool flag = userModule.SetMemberIntegralInfo(demodel);
if (flag)
{
return ApiResult.Success();
}
else {
return ApiResult.Failed();
}
}
/// <summary>
/// 获取会用户余额分页列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetMemberBalancePageList()
{
var parms = RequestParm;
ResultPageModel pagelist = JsonConvert.DeserializeObject<ResultPageModel>(parms.msg.ToString());
RB_Member_Balance_Extend demodel = JsonConvert.DeserializeObject<RB_Member_Balance_Extend>(parms.msg.ToString());
demodel.TenantId = Convert.ToInt32(parms.uid);
List<RB_Member_Balance_Extend> list = userModule.GetMemberBalancePageList(pagelist.pageIndex, pagelist.pageSize, out long count, demodel);
pagelist.count = Convert.ToInt32(count);
pagelist.pageData = list.Select(x => new
{
x.Id,
x.Type,
x.Description,
x.Image,
x.Balance,
x.UserId,
x.TenantId,
TenantName = UserReidsCache.GetUserLoginInfo(x.TenantId)?.Name ?? "",
CreateDate = x.CreateDate.HasValue ? x.CreateDate.Value.ToString("yyyy-MM-dd") : ""
});
return ApiResult.Success("", pagelist);
}
/// <summary>
/// 新增余额
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult SetMemberBalanceInfo()
{
var parms = RequestParm;
RB_Member_Balance_Extend demodel = JsonConvert.DeserializeObject<RB_Member_Balance_Extend>(parms.msg.ToString());
if (demodel.MallBaseId <= 0)
{
return ApiResult.ParamIsNull("请传递小程序id");
}
if ((demodel.UserId ?? 0) <= 0)
{
return ApiResult.ParamIsNull("请传递用户id");
}
if (demodel.Type != 1 && demodel.Type != 2)
{
return ApiResult.ParamIsNull("请选择充值/扣除");
}
if ((demodel.Balance ?? 0) <= 0)
{
return ApiResult.ParamIsNull("请输入金额");
}
demodel.Description = demodel.Description ?? "";
demodel.Image = Config.GetFilePath(demodel.Image);
demodel.TenantId = Convert.ToInt32(parms.uid);
demodel.CreateDate = DateTime.Now;
bool flag = userModule.SetMemberBalanceInfo(demodel);
if (flag)
{
return ApiResult.Success();
}
else
{
return ApiResult.Failed();
}
}
#endregion
}
}
\ 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