Commit 6975fd29 authored by 黄奎's avatar 黄奎

新增页面

parent 99397062
......@@ -256,5 +256,107 @@ namespace Mall.Model.Entity.User
get;
set;
}
#region 会员中心配置
/// <summary>
/// 会员中心默认背景
/// </summary>
public string DefaultBgImg
{
get;
set;
}
/// <summary>
/// 会员中心普通用户背景
/// </summary>
public string MemberBgImg
{
get;
set;
}
/// <summary>
/// 会员中心Vip背景
/// </summary>
public string VipBgImg
{
get;
set;
}
/// <summary>
/// 会员中心头像样式类型(1-头像靠左,2-头像居中,3-头像内嵌)
/// </summary>
public int? HeadStyle
{
get;
set;
}
/// <summary>
/// 会员中心头像样式字符串
/// </summary>
public string HeadStyleStr
{
get;
set;
}
/// <summary>
/// 是否显示收藏夹(0-显示,1-不显示)
/// </summary>
public int? IsShowFavorite
{
get;
set;
}
/// <summary>
/// 是否显示订单栏(0-显示,1-不显示)
/// </summary>
public int? IsShowOrderNav
{
get;
set;
}
/// <summary>
/// 是否显示账户栏(0-显示,1-不显示)
/// </summary>
public int? IsShowAccountNav
{
get;
set;
}
/// <summary>
/// 是否显示菜单栏(0-显示,1-不显示)
/// </summary>
public int? IsShowMenuNav
{
get;
set;
}
/// <summary>
/// 菜单栏标题
/// </summary>
public string MenuNavTitle
{
get;
set;
}
/// <summary>
/// 菜单栏样式(0-列表,1-九宫格)
/// </summary>
public int? MenuNavStyle
{
get;
set;
}
#endregion
}
}
using Mall.Common.AOP;
using System;
using System.Collections.Generic;
using System.Text;
namespace Mall.Model.Entity.User
{
/// <summary>
/// 小程序用户中心配置实体类
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_MiniProgram_UserCenterConfig
{
/// <summary>
/// 主键Id
/// </summary>
public int Id { get; set; }
/// <summary>
/// 商户Id
/// </summary>
public int TenantId { get; set; }
/// <summary>
/// 小程序Id
/// </summary>
public int MallBaseId { get; set; }
/// <summary>
/// 默认背景图
/// </summary>
public string DefaultBgImg { get; set; }
/// <summary>
/// 普通用户背景
/// </summary>
public string MemberBgImg { get; set; }
/// <summary>
/// 会员中心背景
/// </summary>
public string VipBgImg { get; set; }
/// <summary>
/// 头像样式类型(1-头像靠左,2-头像居中,3-头像内嵌)
/// </summary>
public int HeadStyle { get; set; }
/// <summary>
/// 头像样式字符串
/// </summary>
public string HeadStyleStr { get; set; }
/// <summary>
/// 是否显示收藏夹(0-显示,1-不显示)
/// </summary>
public int IsShowFavorite { get; set; }
/// <summary>
/// 我的收藏图片
/// </summary>
public string MyFavoriteImg { get; set; }
/// <summary>
/// 我的足迹图片
/// </summary>
public string MyFootPrintImg { get; set; }
/// <summary>
/// 是否显示订单栏(0-显示,1-不显示)
/// </summary>
public int IsShowOrderNav { get; set; }
/// <summary>
/// 待付款图片
/// </summary>
public string NoPayImg { get; set; }
/// <summary>
/// 待发货图片
/// </summary>
public string NoDeliveryImg { get; set; }
/// <summary>
/// 待收货图片
/// </summary>
public string NoReciveImg { get; set; }
/// <summary>
/// 待评价图片
/// </summary>
public string NoEvaluation { get; set; }
/// <summary>
/// 售后图片
/// </summary>
public string AfterSales { get; set; }
/// <summary>
/// 是否显示账户栏(0-显示,1-不显示)
/// </summary>
public int IsShowAccountNav { get; set; }
/// <summary>
/// 积分自定义名称
/// </summary>
public string IntegralName { get; set; }
/// <summary>
/// 积分图片
/// </summary>
public string IntegralImg { get; set; }
/// <summary>
/// 余额自定义名称
/// </summary>
public string BalanceName { get; set; }
/// <summary>
/// 余额自定义图片
/// </summary>
public string BalanceImg { get; set; }
/// <summary>
/// 优惠券自定义名称
/// </summary>
public string CouponsName { get; set; }
/// <summary>
/// 优惠券自定义图片
/// </summary>
public string CouponsImg { get; set; }
/// <summary>
/// 卡券名称
/// </summary>
public string CardName { get; set; }
/// <summary>
/// 卡券图片
/// </summary>
public string CardImg { get; set; }
/// <summary>
/// 是否显示菜单栏(0-显示,1-不显示)
/// </summary>
public int IsShowMenuNav { get; set; }
/// <summary>
/// 菜单栏标题
/// </summary>
public string MenuNavTitle { get; set; }
/// <summary>
/// 菜单栏样式(0-列表,1-九宫格)
/// </summary>
public int MenuNavStyle { get; set; }
/// <summary>
/// 菜单栏JSON数据
/// </summary>
public string MenuNavJson { get; set; }
}
}
......@@ -65,5 +65,25 @@ namespace Mall.Model.Extend.User
/// 底部导航列表
/// </summary>
public List<RB_Miniprogram_Bottomnav_Extend> BottomTagList { get; set; }
/// <summary>
/// 小程序用户中心【收藏、足迹】菜单列表
/// </summary>
public List<RB_MiniProgram_UserCenterMenu_Extend> FavoriteFootMenuList { get; set; }
/// <summary>
/// 小程序用户中心【订单】菜单列表
/// </summary>
public List<RB_MiniProgram_UserCenterMenu_Extend> OrderMenuList { get; set; }
/// <summary>
/// 小程序用户中心【账户】菜单列表
/// </summary>
public List<RB_MiniProgram_UserCenterMenu_Extend> AccountMenuList { get; set; }
/// <summary>
/// 小程序用户中心【自定义】菜单列表
/// </summary>
public List<RB_MiniProgram_UserCenterMenu_Extend> SelfMenuList { get; set; }
}
}
using Mall.Common.AOP;
using System;
using System.Collections.Generic;
using System.Text;
namespace Mall.Model.Extend.User
{
/// <summary>
/// 小程序用户中心配置扩展实体类
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_MiniProgram_UserCenterConfig_Extend : Model.Entity.User.RB_MiniProgram_UserCenterConfig
{
}
}
......@@ -22,6 +22,11 @@ namespace Mall.Module.User
/// </summary>
private Repository.User.RB_Miniprogram_BottomnavRepository bottomnavRepository = new Repository.User.RB_Miniprogram_BottomnavRepository();
/// <summary>
/// 用户中心仓储层对象
/// </summary>
private Repository.User.RB_MiniProgram_UserCenterMenuRepository centerMenuRepository = new Repository.User.RB_MiniProgram_UserCenterMenuRepository();
/// <summary>
/// 根据查询条件获取小程序列表
......@@ -113,7 +118,7 @@ namespace Mall.Module.User
/// </summary>
/// <param name="extModel"></param>
/// <returns></returns>
public bool SetMiniProgramMallTagModule(RB_MiniProgram_Extend extModel,bool isUpdateBasic=true)
public bool SetMiniProgramMallTagModule(RB_MiniProgram_Extend extModel, bool isUpdateBasic = true)
{
bool flag = false;
if (extModel.MallBaseId > 0)
......@@ -193,8 +198,9 @@ namespace Mall.Module.User
/// </summary>
/// <param name="MallBaseId">小程序Id</param>
/// <param name="isGetNav">是否获取顶部底部配置+底部标签导航(0-不获取,1-获取)</param>
/// <param name="isGetUserCenterMenu">是否获取用户中心菜单</param>
/// <returns></returns>
public RB_MiniProgram_Extend GetMiniProgramModule(object MallBaseId,int isGetNav=0)
public RB_MiniProgram_Extend GetMiniProgramModule(object MallBaseId, int isGetNav = 0,bool isGetUserCenterMenu=false)
{
RB_MiniProgram_Extend extModel = programRepository.GetEntity<RB_MiniProgram_Extend>(MallBaseId);
if (extModel == null)
......@@ -209,6 +215,17 @@ namespace Mall.Module.User
extModel.BottomTagList.FirstOrDefault().IsActive = true;
}
}
if (isGetUserCenterMenu)
{
var menuList = centerMenuRepository.GetListExtRepository(new RB_MiniProgram_UserCenterMenu_Extend() { MallBaseId = extModel.MallBaseId });
if (menuList != null && menuList.Count > 0)
{
extModel.FavoriteFootMenuList = menuList?.Where(qitem => qitem.MenuType == 1)?.ToList();
extModel.OrderMenuList = menuList?.Where(qitem => qitem.MenuType == 3)?.ToList();
extModel.AccountMenuList = menuList?.Where(qitem => qitem.MenuType == 2)?.ToList();
extModel.SelfMenuList = menuList?.Where(qitem => qitem.MenuType == 4)?.ToList();
}
}
return extModel;
}
......@@ -334,5 +351,135 @@ namespace Mall.Module.User
}
return flag;
}
/// <summary>
/// 小程序用户中心配置
/// </summary>
/// <param name="extModel"></param>
/// <returns></returns>
public bool SetMiniUserCenterConfigModule(RB_MiniProgram_Extend extModel)
{
bool flag = false;
if (extModel.MallBaseId > 0)
{
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{ nameof(RB_MiniProgram_Extend.DefaultBgImg),extModel.DefaultBgImg},
{ nameof(RB_MiniProgram_Extend.MemberBgImg),extModel.MemberBgImg},
{ nameof(RB_MiniProgram_Extend.VipBgImg),extModel.VipBgImg},
{ nameof(RB_MiniProgram_Extend.HeadStyle),extModel.HeadStyle},
{ nameof(RB_MiniProgram_Extend.HeadStyleStr),extModel.HeadStyleStr},
{ nameof(RB_MiniProgram_Extend.IsShowFavorite),extModel.IsShowFavorite},
{ nameof(RB_MiniProgram_Extend.IsShowOrderNav),extModel.IsShowOrderNav},
{ nameof(RB_MiniProgram_Extend.IsShowAccountNav),extModel.IsShowAccountNav},
{ nameof(RB_MiniProgram_Extend.IsShowMenuNav),extModel.IsShowMenuNav},
{ nameof(RB_MiniProgram_Extend.MenuNavTitle),extModel.MenuNavTitle},
{ nameof(RB_MiniProgram_Extend.MenuNavStyle),extModel.MenuNavStyle},
};
if (extModel.FavoriteFootMenuList != null && extModel.FavoriteFootMenuList.Count > 0)
{
foreach (var item in extModel.FavoriteFootMenuList)
{
item.MallBaseId = extModel.MallBaseId;
if (item.DetailId > 0)
{
Dictionary<string, object> detailesFileds = new Dictionary<string, object>()
{
{ nameof(RB_MiniProgram_UserCenterMenu_Extend.MenuType),item.MenuType},
{ nameof(RB_MiniProgram_UserCenterMenu_Extend.MenuName),item.MenuName},
{ nameof(RB_MiniProgram_UserCenterMenu_Extend.MenuIcon),item.MenuIcon},
{ nameof(RB_MiniProgram_UserCenterMenu_Extend.MenuUrl),item.MenuUrl},
};
flag = centerMenuRepository.Update(detailesFileds, new WhereHelper(nameof(RB_MiniProgram_UserCenterMenu_Extend.DetailId), item.DetailId));
}
else
{
flag = centerMenuRepository.Insert(item) > 0;
}
}
}
if (extModel.OrderMenuList != null && extModel.OrderMenuList.Count > 0)
{
foreach (var item in extModel.OrderMenuList)
{
item.MallBaseId = extModel.MallBaseId;
if (item.DetailId > 0)
{
Dictionary<string, object> detailesFileds = new Dictionary<string, object>()
{
{ nameof(RB_MiniProgram_UserCenterMenu_Extend.MenuType),item.MenuType},
{ nameof(RB_MiniProgram_UserCenterMenu_Extend.MenuName),item.MenuName},
{ nameof(RB_MiniProgram_UserCenterMenu_Extend.MenuIcon),item.MenuIcon},
{ nameof(RB_MiniProgram_UserCenterMenu_Extend.MenuUrl),item.MenuUrl},
};
flag = centerMenuRepository.Update(detailesFileds, new WhereHelper(nameof(RB_MiniProgram_UserCenterMenu_Extend.DetailId), item.DetailId));
}
else
{
flag = centerMenuRepository.Insert(item) > 0;
}
}
}
if (extModel.AccountMenuList != null && extModel.AccountMenuList.Count > 0)
{
foreach (var item in extModel.AccountMenuList)
{
item.MallBaseId = extModel.MallBaseId;
if (item.DetailId > 0)
{
Dictionary<string, object> detailesFileds = new Dictionary<string, object>()
{
{ nameof(RB_MiniProgram_UserCenterMenu_Extend.MenuType),item.MenuType},
{ nameof(RB_MiniProgram_UserCenterMenu_Extend.MenuName),item.MenuName},
{ nameof(RB_MiniProgram_UserCenterMenu_Extend.MenuIcon),item.MenuIcon},
{ nameof(RB_MiniProgram_UserCenterMenu_Extend.MenuUrl),item.MenuUrl},
};
flag = centerMenuRepository.Update(detailesFileds, new WhereHelper(nameof(RB_MiniProgram_UserCenterMenu_Extend.DetailId), item.DetailId));
}
else
{
flag = centerMenuRepository.Insert(item) > 0;
}
}
}
if (extModel.SelfMenuList != null && extModel.SelfMenuList.Count > 0)
{
foreach (var item in extModel.SelfMenuList)
{
item.MallBaseId = extModel.MallBaseId;
if (item.DetailId > 0)
{
Dictionary<string, object> detailesFileds = new Dictionary<string, object>()
{
{ nameof(RB_MiniProgram_UserCenterMenu_Extend.MenuType),item.MenuType},
{ nameof(RB_MiniProgram_UserCenterMenu_Extend.MenuName),item.MenuName},
{ nameof(RB_MiniProgram_UserCenterMenu_Extend.MenuIcon),item.MenuIcon},
{ nameof(RB_MiniProgram_UserCenterMenu_Extend.MenuUrl),item.MenuUrl},
};
flag = centerMenuRepository.Update(detailesFileds, new WhereHelper(nameof(RB_MiniProgram_UserCenterMenu_Extend.DetailId), item.DetailId));
}
else
{
flag = centerMenuRepository.Insert(item) > 0;
}
}
}
flag = programRepository.Update(fileds, new WhereHelper(nameof(RB_MiniProgram_Extend.MallBaseId), extModel.MallBaseId));
}
return flag;
}
/// <summary>
/// 删除小程序用户中心自定义菜单
/// </summary>
/// <param name="DetailId"></param>
/// <returns></returns>
public bool RemoveMiniUserCenterMenuModule(object DetailId)
{
bool flag = false;
flag = centerMenuRepository.Delete(DetailId) > 0;
return flag;
}
}
}
using System;
using System.Collections.Generic;
using System.Text;
using Mall.Model.Extend.User;
using Mall.Repository;
using Mall.Repository.User;
namespace Mall.Module.User
{
/// <summary>
/// 小程序用户中心配置处理类
/// </summary>
public class MiniProgramUserCenterConfigModule
{
/// <summary>
/// 小程序用户中心配置仓储层对象
/// </summary>
private RB_MiniProgram_UserCenterConfigRepository configRepository = new RB_MiniProgram_UserCenterConfigRepository();
/// <summary>
/// 根据查询条件获取小程序用户中心配置实体
/// </summary>
/// <param name="query">查询条件</param>
/// <returns></returns>
public RB_MiniProgram_UserCenterConfig_Extend GetUserCenterConfigModule(RB_MiniProgram_UserCenterConfig_Extend query)
{
var extModel = configRepository.GetEntityExtRepository(query);
if (extModel == null)
{
extModel = new RB_MiniProgram_UserCenterConfig_Extend();
}
return extModel;
}
/// <summary>
/// 添加修改用户中心配置信息
/// </summary>
/// <param name="extModel"></param>
/// <returns></returns>
public bool SetMiniUserCenterConfigModule(RB_MiniProgram_UserCenterConfig_Extend extModel)
{
bool flag = false;
if (extModel.Id > 0)
{
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{ nameof(RB_MiniProgram_UserCenterConfig_Extend.DefaultBgImg),extModel.DefaultBgImg},
{ nameof(RB_MiniProgram_UserCenterConfig_Extend.MemberBgImg),extModel.MemberBgImg},
{ nameof(RB_MiniProgram_UserCenterConfig_Extend.VipBgImg),extModel.VipBgImg},
{ nameof(RB_MiniProgram_UserCenterConfig_Extend.HeadStyle),extModel.HeadStyle},
{ nameof(RB_MiniProgram_UserCenterConfig_Extend.HeadStyleStr),extModel.HeadStyleStr},
{ nameof(RB_MiniProgram_UserCenterConfig_Extend.IsShowFavorite),extModel.IsShowFavorite},
{ nameof(RB_MiniProgram_UserCenterConfig_Extend.MyFavoriteImg),extModel.MyFavoriteImg},
{ nameof(RB_MiniProgram_UserCenterConfig_Extend.MyFootPrintImg),extModel.MyFootPrintImg},
{ nameof(RB_MiniProgram_UserCenterConfig_Extend.IsShowOrderNav),extModel.IsShowOrderNav},
{ nameof(RB_MiniProgram_UserCenterConfig_Extend.NoPayImg),extModel.NoPayImg},
{ nameof(RB_MiniProgram_UserCenterConfig_Extend.NoDeliveryImg),extModel.NoDeliveryImg},
{ nameof(RB_MiniProgram_UserCenterConfig_Extend.NoReciveImg),extModel.NoReciveImg},
{ nameof(RB_MiniProgram_UserCenterConfig_Extend.NoEvaluation),extModel.NoEvaluation},
{ nameof(RB_MiniProgram_UserCenterConfig_Extend.AfterSales),extModel.AfterSales},
{ nameof(RB_MiniProgram_UserCenterConfig_Extend.IsShowAccountNav),extModel.IsShowAccountNav},
{ nameof(RB_MiniProgram_UserCenterConfig_Extend.IntegralName),extModel.IntegralName},
{ nameof(RB_MiniProgram_UserCenterConfig_Extend.IntegralImg),extModel.IntegralImg},
{ nameof(RB_MiniProgram_UserCenterConfig_Extend.BalanceName),extModel.BalanceName},
{ nameof(RB_MiniProgram_UserCenterConfig_Extend.BalanceImg),extModel.BalanceImg},
{ nameof(RB_MiniProgram_UserCenterConfig_Extend.CouponsName),extModel.CouponsName},
{ nameof(RB_MiniProgram_UserCenterConfig_Extend.CouponsImg),extModel.CouponsImg},
{ nameof(RB_MiniProgram_UserCenterConfig_Extend.CardName),extModel.CardName},
{ nameof(RB_MiniProgram_UserCenterConfig_Extend.CardImg),extModel.CardImg},
{ nameof(RB_MiniProgram_UserCenterConfig_Extend.IsShowMenuNav),extModel.IsShowMenuNav},
{ nameof(RB_MiniProgram_UserCenterConfig_Extend.MenuNavTitle),extModel.MenuNavTitle},
{ nameof(RB_MiniProgram_UserCenterConfig_Extend.MenuNavStyle),extModel.MenuNavStyle},
{ nameof(RB_MiniProgram_UserCenterConfig_Extend.MenuNavJson),extModel.MenuNavJson},
};
flag = configRepository.Update(fileds, new WhereHelper(nameof(RB_MiniProgram_UserCenterConfig_Extend.Id), extModel.Id));
}
else
{
int NewId = configRepository.Insert(extModel);
extModel.Id = NewId;
flag = NewId > 0;
}
return flag;
}
}
}
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_MiniProgram_UserCenterConfigRepository : RepositoryBase<RB_MiniProgram_UserCenterConfig>
{
/// <summary>
/// 根据查询条件获取小程序用户中心配置实体
/// </summary>
/// <param name="query">查询条件</param>
/// <returns></returns>
public RB_MiniProgram_UserCenterConfig_Extend GetEntityExtRepository(RB_MiniProgram_UserCenterConfig_Extend query)
{
StringBuilder builder = new StringBuilder();
builder.Append(" SELECT * FROM RB_MiniProgram_UserCenterConfig WHERE 1=1 ");
if (query != null)
{
if (query.TenantId > 0)
{
builder.AppendFormat(" AND TenantId={0} ", query.TenantId);
}
if (query.MallBaseId > 0)
{
builder.AppendFormat(" AND MallBaseId={0} ", query.MallBaseId);
}
if (query.Id > 0)
{
builder.AppendFormat(" AND Id={0} ", query.Id);
}
}
return Get<RB_MiniProgram_UserCenterConfig_Extend>(builder.ToString()).FirstOrDefault();
}
}
}
......@@ -57,10 +57,7 @@ namespace Mall.WebApi.Controllers.User
/// </summary>
private Module.User.PosterModule posterModule = new Module.User.PosterModule();
/// <summary>
/// 用户中心配置类对象
/// </summary>
private Module.User.MiniProgramUserCenterConfigModule userCenterConfigModule = new Module.User.MiniProgramUserCenterConfigModule();
#region 商户信息
/// <summary>
......@@ -789,10 +786,10 @@ namespace Mall.WebApi.Controllers.User
/// <returns></returns>
public ApiResult SetMiniUserCenterConfig()
{
var extModel = JsonConvert.DeserializeObject<RB_MiniProgram_UserCenterConfig_Extend>(RequestParm.msg.ToString());
var extModel = JsonConvert.DeserializeObject<RB_MiniProgram_Extend>(RequestParm.msg.ToString());
extModel.TenantId = RequestParm.TenantId;
extModel.MallBaseId = RequestParm.MallBaseId;
var flag = userCenterConfigModule.SetMiniUserCenterConfigModule(extModel);
var flag = programModule.SetMiniUserCenterConfigModule(extModel);
return flag ? ApiResult.Success() : ApiResult.Failed();
}
......@@ -802,12 +799,24 @@ namespace Mall.WebApi.Controllers.User
/// <returns></returns>
public ApiResult GetUserCenterConfig()
{
var extModel = JsonConvert.DeserializeObject<RB_MiniProgram_UserCenterConfig_Extend>(RequestParm.msg.ToString());
var extModel = JsonConvert.DeserializeObject<RB_MiniProgram_Extend>(RequestParm.msg.ToString());
extModel.TenantId = RequestParm.TenantId;
extModel.MallBaseId = RequestParm.MallBaseId;
var result = userCenterConfigModule.GetUserCenterConfigModule(extModel);
var result = programModule.GetMiniProgramModule(extModel,isGetUserCenterMenu:true);
return ApiResult.Success(data: result);
}
/// <summary>
/// 删除用户中心自定义菜单
/// </summary>
/// <returns></returns>
public ApiResult RemoveMiniUserCenterMenu()
{
JObject parms = JObject.Parse(RequestParm.msg.ToString());
var DetailId = parms.GetInt("DetailId", 0);
var flag = programModule.RemoveMiniUserCenterMenuModule(DetailId);
return flag ? ApiResult.Success() : 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