Commit 69019936 authored by liudong1993's avatar liudong1993
parents 9d3d507a bfeb420f
......@@ -106,7 +106,7 @@ namespace Mall.Model.Entity.MarketingCenter
/// <summary>
/// 领取方式设置2-领劵中心
/// 领取方式设置1-领劵中心
/// </summary>
public int PickupCenter { 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_Article
{
/// <summary>
/// 文章编号
/// </summary>
public int Id
{
get;
set;
}
/// <summary>
/// 文章标题
/// </summary>
public string Title
{
get;
set;
}
/// <summary>
/// 排序
/// </summary>
public int? SortNum
{
get;
set;
}
/// <summary>
/// 禁用状态(0-禁用,1-启用)
/// </summary>
public int? IsDisable
{
get;
set;
}
/// <summary>
/// 文章内容
/// </summary>
public string Content
{
get;
set;
}
/// <summary>
/// 商户号Id
/// </summary>
public int? TenantId
{
get;
set;
}
/// <summary>
/// 小程序Id
/// </summary>
public int? MallBaseId
{
get;
set;
}
/// <summary>
/// 创建时间
/// </summary>
public DateTime? CreateDate
{
get;
set;
}
/// <summary>
/// 删除状态
/// </summary>
public int? Status
{
get;
set;
}
}
}
......@@ -371,5 +371,11 @@ namespace Mall.Model.Entity.User
/// </summary>
public int LivePlayerPlugin { get; set; }
/// <summary>
/// 发布时填写的版本号
/// </summary>
public string Version { 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_Stores
{
/// <summary>
/// 门店编号
/// </summary>
public int Id
{
get;
set;
}
/// <summary>
/// 门店名称
/// </summary>
public string Name
{
get;
set;
}
/// <summary>
/// 门店电话
/// </summary>
public string Tel
{
get;
set;
}
/// <summary>
/// 门店地址
/// </summary>
public string Address
{
get;
set;
}
/// <summary>
/// 门店经度纬度
/// </summary>
public string LngLat
{
get;
set;
}
/// <summary>
/// 门店评分
/// </summary>
public int? Score
{
get;
set;
}
/// <summary>
/// 门店介绍
/// </summary>
public string Intro
{
get;
set;
}
/// <summary>
/// 门店封面图
/// </summary>
public string CoverImg
{
get;
set;
}
/// <summary>
/// 门店轮播图
/// </summary>
public string NavImg
{
get;
set;
}
/// <summary>
/// 营业开始时间
/// </summary>
public string StartTime
{
get;
set;
}
/// <summary>
/// 营业结束时间
/// </summary>
public string EndTime
{
get;
set;
}
/// <summary>
/// 是否全天营业(1-是)
/// </summary>
public int? IsAllDay
{
get;
set;
}
/// <summary>
/// 商户号Id
/// </summary>
public int? TenantId
{
get;
set;
}
/// <summary>
/// 小程序Id
/// </summary>
public int? MallBaseId
{
get;
set;
}
/// <summary>
/// 创建时间
/// </summary>
public DateTime? CreateDate
{
get;
set;
}
/// <summary>
/// 删除状态
/// </summary>
public int? Status
{
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_Topic_Type
{
/// <summary>
/// 专题分类编号
/// </summary>
public int Id
{
get;
set;
}
/// <summary>
/// 专题分类名称
/// </summary>
public string TopicName
{
get;
set;
}
/// <summary>
/// 排序
/// </summary>
public int? SortNum
{
get;
set;
}
/// <summary>
/// 禁用状态(0-禁用,1-启用)
/// </summary>
public int? IsDisable
{
get;
set;
}
/// <summary>
/// 商户号Id
/// </summary>
public int? TenantId
{
get;
set;
}
/// <summary>
/// 小程序Id
/// </summary>
public int? MallBaseId
{
get;
set;
}
/// <summary>
/// 创建时间
/// </summary>
public DateTime? CreateDate
{
get;
set;
}
/// <summary>
/// 删除状态
/// </summary>
public int? Status
{
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_Video
{
/// <summary>
/// 视频编号
/// </summary>
public int Id
{
get;
set;
}
/// <summary>
/// 视频标题
/// </summary>
public string Title
{
get;
set;
}
/// <summary>
/// 视频来源(1-源地址,2-腾讯)
/// </summary>
public int? SourceType
{
get;
set;
}
/// <summary>
/// 视频链接
/// </summary>
public string VedioUrl
{
get;
set;
}
/// <summary>
/// 视频封面图
/// </summary>
public string VedioCoverImg
{
get;
set;
}
/// <summary>
/// 视频详情介绍
/// </summary>
public string VedioIntro
{
get;
set;
}
/// <summary>
/// 排序
/// </summary>
public int? SortNum { get; set; }
/// <summary>
/// 商户号Id
/// </summary>
public int? TenantId
{
get;
set;
}
/// <summary>
/// 小程序Id
/// </summary>
public int? MallBaseId
{
get;
set;
}
/// <summary>
/// 创建时间
/// </summary>
public DateTime? CreateDate
{
get;
set;
}
/// <summary>
/// 删除状态
/// </summary>
public int? Status
{
get;
set;
}
}
}
......@@ -19,10 +19,12 @@ namespace Mall.Model.Extend.MarketingCenter
public List<RB_DiscountCoupon_Product_Extend> ProductList { get; set; }
/// <summary>
/// 发放优惠券的时候会员id
/// 发放优惠券的时候会员ids
/// </summary>
public string UserIds { get; set; }
/// <summary>
/// 发放数量
/// </summary>
......@@ -36,5 +38,13 @@ namespace Mall.Model.Extend.MarketingCenter
/// 会员等级
/// </summary>
public int[] MemberLevelList { get; set; }
/// <summary>
/// 发放优惠券的时候会员id
/// </summary>
public int UserId { get; set; }
}
}
......@@ -17,5 +17,16 @@ namespace Mall.Model.Extend.MarketingCenter
/// 关联信息(商品图片/分类名称)
/// </summary>
public string Relevance { get; set; }
/// <summary>
/// 商品价格(下单获取优惠券)
/// </summary>
public decimal GoodsPrice { get; set; }
/// <summary>
/// 商品分类id
/// </summary>
public int[] GoodsClassId { get; set; }
}
}
......@@ -1056,4 +1056,652 @@ namespace Mall.Model.Extend.MarketingCenter
/// </summary>
public string openType { get; set; }
}
/// <summary>
/// 拼团插件
/// </summary>
public class pintuanItem
{
public string buttonColor { get; set; }
public int listStyle { get; set; }
public int textStyle { get; set; }
public int fill { get; set; }
public string goodsCoverProportion { get; set; }
public int goodsStyle { get; set; }
public bool showGoodsName { get; set; }
public bool showBuyBtn { get; set; }
public int buyBtnStyle { get; set; }
/// <summary>
/// 去拼团
/// </summary>
public string buyBtnText { get; set; }
public bool showGoodsTag { get; set; }
public bool customizeGoodsTag { get; set; }
public string goodsTagPicUrl { get; set; }
public bool showImg { get; set; }
/// <summary>
/// backgroundColor
/// </summary>
public string backgroundColor { get; set; }
/// <summary>
/// backgroundPicUrl
/// </summary>
public string backgroundPicUrl { get; set; }
public int position { get; set; }
public int mode { get; set; }
public int backgroundHeight { get; set; }
public int backgroundWidth { get; set; }
public List<pingtuanGoodsItem> list { get; set; }
}
public class pingtuanGoodsItem
{
public int id { get; set; }
/// <summary>
/// 演示商品名称
/// </summary>
public string name { get; set; }
/// <summary>
/// CoverImage
/// </summary>
public string CoverImage { get; set; }
/// <summary>
/// price
/// </summary>
public decimal price { get; set; }
/// <summary>
/// pintuanPrice
/// </summary>
public decimal pintuanPrice { get; set; }
public int peopleNum { get; set; }
}
/// <summary>
/// 预约插件
/// </summary>
public class bookingItem
{
public string buttonColor { get; set; }
public List<bookingGoodsItem> list { get; set; }
public int listStyle { get; set; }
public int fill { get; set; }
public string goodsCoverProportion { get; set; }
public int goodsStyle { get; set; }
public int textStyle { get; set; }
public bool showGoodsName { get; set; }
public bool showBuyBtn { get; set; }
public int buyBtnStyle { get; set; }
/// <summary>
/// 预约
/// </summary>
public string buyBtnText { get; set; }
public bool showGoodsTag { get; set; }
public bool customizeGoodsTag { get; set; }
/// <summary>
/// goodsTagPicUrl
/// </summary>
public string goodsTagPicUrl { get; set; }
public bool showImg { get; set; }
/// <summary>
/// backgroundColor
/// </summary>
public string backgroundColor { get; set; }
/// <summary>
/// backgroundPicUrl
/// </summary>
public string backgroundPicUrl { get; set; }
public int position { get; set; }
public int mode { get; set; }
public int backgroundHeight { get; set; }
public int backgroundWidth { get; set; }
}
/// <summary>
/// 预约商品详情
/// </summary>
public class bookingGoodsItem
{
public int id { get; set; }
/// <summary>
/// 演示商品名称
/// </summary>
public string name { get; set; }
/// <summary>
/// CoverImage
/// </summary>
public string CoverImage { get; set; }
/// <summary>
/// price
/// </summary>
public decimal price { get; set; }
}
/// <summary>
/// 砍价插件
/// </summary>
public class bargainItem
{
public string buttonColor { get; set; }
public List<bargainGoodsItem> list { get; set; }
public int listStyle { get; set; }
public int fill { get; set; }
public string goodsCoverProportion { get; set; }
public int goodsStyle { get; set; }
public int textStyle { get; set; }
public bool showGoodsName { get; set; }
public bool showBuyBtn { get; set; }
public int buyBtnStyle { get; set; }
/// <summary>
/// 去参与
/// </summary>
public string buyBtnText { get; set; }
public bool showGoodsTag { get; set; }
public bool customizeGoodsTag { get; set; }
/// <summary>
/// goodsTagPicUrl
/// </summary>
public string goodsTagPicUrl { get; set; }
public bool showImg { get; set; }
/// <summary>
/// backgroundColor
/// </summary>
public string backgroundColor { get; set; }
/// <summary>
/// backgroundPicUrl
/// </summary>
public string backgroundPicUrl { get; set; }
public int position { get; set; }
/// <summary>
/// mode
/// </summary>
public int mode { get; set; }
/// <summary>
/// backgroundHeight
/// </summary>
public int backgroundHeight { get; set; }
/// <summary>
/// backgroundWidth
/// </summary>
public int backgroundWidth { get; set; }
}
/// <summary>
/// 砍价商品详情
/// </summary>
public class bargainGoodsItem
{
public int id { get; set; }
/// <summary>
/// 演示商品名称
/// </summary>
public string name { get; set; }
/// <summary>
/// CoverImage
/// </summary>
public string CoverImage { get; set; }
public decimal price { get; set; }
public decimal originalPrice { get; set; }
}
/// <summary>
/// 积分商城插件
/// </summary>
public class integralmallItem
{
public bool showCoupon { get; set; }
public bool showGoods { get; set; }
public string couponColor { get; set; }
public string couponPicUrl { get; set; }
public string buttonColor { get; set; }
public int listStyle { get; set; }
public int fill { get; set; }
public string goodsCoverProportion { get; set; }
public int goodsStyle { get; set; }
public int textStyle { get; set; }
public bool showGoodsName { get; set; }
public bool showBuyBtn { get; set; }
public int buyBtnStyle { get; set; }
public string buyBtnText { get; set; }
public bool showGoodsTag { get; set; }
public bool customizeGoodsTag { get; set; }
public string goodsTagPicUrl { get; set; }
public bool showImg { get; set; }
public string backgroundColor { get; set; }
public string backgroundPicUrl { get; set; }
public int position { get; set; }
public int mode { get; set; }
public int backgroundHeight { get; set; }
public int backgroundWidth { get; set; }
public List<integralmallGoodsItem> list { get; set; }
}
/// <summary>
/// 积分商城商品详情
/// </summary>
public class integralmallGoodsItem
{
public int id { get; set; }
/// <summary>
/// 演示商品名称
/// </summary>
public string name { get; set; }
public string CoverImage { get; set; }
public decimal price { get; set; }
public decimal originalPrice { get; set; }
/// <summary>
/// 积分
/// </summary>
public int integral { get; set; }
}
/// <summary>
/// 抽奖插件
/// </summary>
public class lotteryItem
{
public string buttonColor { get; set; }
public int listStyle { get; set; }
public int fill { get; set; }
public string goodsCoverProportion { get; set; }
public int goodsStyle { get; set; }
public int textStyle { get; set; }
public bool showGoodsName { get; set; }
public bool showBuyBtn { get; set; }
public int buyBtnStyle { get; set; }
/// <summary>
/// 去参与
/// </summary>
public string buyBtnText { get; set; }
public bool showGoodsTag { get; set; }
public bool customizeGoodsTag { get; set; }
/// <summary>
/// goodsTagPicUrl
/// </summary>
public string goodsTagPicUrl { get; set; }
public bool showImg { get; set; }
/// <summary>
/// backgroundColor
/// </summary>
public string backgroundColor { get; set; }
/// <summary>
/// backgroundPicUrl
/// </summary>
public string backgroundPicUrl { get; set; }
public int position { get; set; }
public int mode { get; set; }
public int backgroundHeight { get; set; }
public int backgroundWidth { get; set; }
public List<bargainGoodsItem> list { get; set; }
}
/// <summary>
/// 预售
/// </summary>
public class advanceItem
{
public string buttonColor { get; set; }
public List<advanceGoodsItem> list { get; set; }
public int listStyle { get; set; }
public int fill { get; set; }
public string goodsCoverProportion { get; set; }
public int goodsStyle { get; set; }
public int textStyle { get; set; }
public bool showGoodsName { get; set; }
public bool showBuyBtn { get; set; }
public int buyBtnStyle { get; set; }
/// <summary>
/// 抢购
/// </summary>
public string buyBtnText { get; set; }
public bool showGoodsTag { get; set; }
public bool customizeGoodsTag { get; set; }
public string goodsTagPicUrl { get; set; }
public int goodsIndex { get; set; }
public int start_x { get; set; }
public bool showImg { get; set; }
public string backgroundColor { get; set; }
public string backgroundPicUrl { get; set; }
public int position { get; set; }
public int mode { get; set; }
public int backgroundHeight { get; set; }
public int backgroundWidth { get; set; }
}
public class advanceGoodsItem
{
public int id { get; set; }
/// <summary>
/// 演示商品名称
/// </summary>
public string name { get; set; }
/// <summary>
/// CoverImage
/// </summary>
public string CoverImage { get; set; }
public decimal price { get; set; }
public decimal originalPrice { get; set; }
public string deposit { get; set; }
public string swell_deposit { get; set; }
}
/// <summary>
/// 超级会员卡
/// </summary>
public class vipcardItem
{
public string background { get; set; }
public bool usePluginConfig { get; set; }
public int top_bottom_padding { get; set; }
public string buy_bg { get; set; }
public string renew_bg { get; set; }
public string buy_big_color { get; set; }
public string buy_small_color { get; set; }
public string buy_btn_color { get; set; }
public string buy_btn_bg_color { get; set; }
public string buy_big { get; set; }
public string buy_small { get; set; }
public string buy_btn_text { get; set; }
public string renew_text_color { get; set; }
public string renew_btn_bg_color { get; set; }
public string renew_text { get; set; }
}
/// <summary>
/// 直播组件
/// </summary>
public class liveItem
{
public string background { get; set; }
public bool is_show_goods { get; set; }
public int style_type { get; set; }
public int number { get; set; }
}
/// <summary>
/// 空白块组件
/// </summary>
public class emptyItem
{
public string background { get; set; }
public int height { get; set; }
}
/// <summary>
/// 流量主广告
/// </summary>
public class adItem
{
public string id { get; set; }
public string type { get; set; }
public string pic_url { get; set; }
public string video { get; set; }
public string award_type { get; set; }
public string award_num { get; set; }
public string award_limit_type { get; set; }
public int award_limit { get; set; }
public List<adDetailsItem> award_coupons { get; set; }
}
/// <summary>
/// 流量广告详情
/// </summary>
public class adDetailsItem
{
public int send_num { get; set; }
/// <summary>
/// 优惠券
/// </summary>
public string name { get; set; }
/// <summary>
/// 优惠券Id
/// </summary>
public int coupon_id { get; set; }
}
/// <summary>
/// 弹窗广告
/// </summary>
public class modalItem
{
public bool opened { get; set; }
public int times { get; set; }
public List<modalDetailsItem> list { get; set; }
}
public class modalDetailsItem
{
public string picUrl { get; set; }
public modalLinkItem link { get; set; }
}
public class modalLinkItem
{
public string url { get; set; }
public string openType { get; set; }
}
/// <summary>
/// 导航项
/// </summary>
public class quicknavDetailsItem
{
public bool opened { get; set; }
public string picUrl { get; set; }
public string number { get; set; }
public string appId { get; set; }
public string page { get; set; }
public string address { get; set; }
public string location { get; set; }
public string open_type { get; set; }
public string link_url { get; set; }
public string key { get; set; }
public string @params { get; set; }
}
/// <summary>
/// 快捷导航
/// </summary>
public class quicknavItem
{
public int navSwitch { get; set; }
public bool useMallConfig { get; set; }
public int navStyle { get; set; }
public string closedPicUrl { get; set; }
public string openedPicUrl { get; set; }
public quicknavDetailsItem home { get; set; }
public quicknavDetailsItem customerService { get; set; }
public quicknavDetailsItem tel { get; set; }
public quicknavDetailsItem web { get; set; }
public quicknavDetailsItem mApp { get; set; }
public quicknavDetailsItem mapNav { get; set; }
public quicknavDetailsItem customize { 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_Article_Extend : Model.Entity.User.RB_Article
{
}
}
......@@ -57,5 +57,8 @@ namespace Mall.Model.Extend.User
/// 优惠卷ids
/// </summary>
public string CouponIds { get; set; }
}
}
......@@ -12,6 +12,7 @@ namespace Mall.Model.Extend.User
[DB(ConnectionName = "DefaultConnection")]
public class RB_MiniProgram_Extend : Model.Entity.User.RB_MiniProgram
{
/// <summary>
/// 账号
/// </summary>
......@@ -91,5 +92,7 @@ namespace Mall.Model.Extend.User
/// 获取可跳转小程序
/// </summary>
public string[] JumpAppIdList { 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_Stores_Extend : Model.Entity.User.RB_Stores
{
}
}
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_Topic_Type_Extend : Model.Entity.User.RB_Topic_Type
{
}
}
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_Video_Extend : Model.Entity.User.RB_Video
{
}
}
......@@ -178,6 +178,7 @@ namespace Mall.Module.MarketingCenter
id = discountCouponRepository.Insert(model, trans);
if (id > 0 && model.ProductList != null && model.ProductList.Any())
{
model.ProductList.ForEach(x => x.DiscountCouponType = model.UseType);
model.ProductList.ForEach(x => x.MallBaseId = model.MallBaseId);
model.ProductList.ForEach(x => x.TenantId = model.TenantId);
model.ProductList.ForEach(x => x.CreateDate = model.CreateDate);
......@@ -223,6 +224,7 @@ namespace Mall.Module.MarketingCenter
if (model.ProductList != null && model.ProductList.Any())
{
model.ProductList.ForEach(x => x.DiscountCouponType = model.UseType);
model.ProductList.ForEach(x => x.MallBaseId = model.MallBaseId);
model.ProductList.ForEach(x => x.TenantId = model.TenantId);
model.ProductList.ForEach(x => x.CreateDate = model.CreateDate);
......@@ -412,6 +414,19 @@ namespace Mall.Module.MarketingCenter
}
return flag;
}
/// <summary>
/// 根据用户id和商品分类以及商品id获取未使用的优惠券信息
/// </summary>
/// <param name="query">查询条件</param>
/// <returns></returns>
public List<RB_DiscountCoupon_Extend> GetNoUseCouponList(RB_DiscountCoupon_Extend query)
{
return discountCouponRepository.GetNoUseCouponList(query);
}
#endregion
#region 自动发放优惠券规则
......
......@@ -115,6 +115,18 @@ namespace Mall.Module.MarketingCenter
case "image-text": item.data = JsonHelper.DeserializeObject<imagetextItem>(item.data.ToString()); break;
case "coupon": item.data = JsonHelper.DeserializeObject<couponItem>(item.data.ToString()); break;
case "timer": item.data = JsonHelper.DeserializeObject<timerItem>(item.data.ToString()); break;
case "pintuan": item.data = JsonHelper.DeserializeObject<pintuanItem>(item.data.ToString()); break;
case "booking": item.data = JsonHelper.DeserializeObject<bookingItem>(item.data.ToString()); break;
case "bargain": item.data = JsonHelper.DeserializeObject<bargainItem>(item.data.ToString()); break;
case "integral-mall": item.data = JsonHelper.DeserializeObject<integralmallItem>(item.data.ToString()); break;
case "lottery": item.data = JsonHelper.DeserializeObject<lotteryItem>(item.data.ToString()); break;
case "advance": item.data = JsonHelper.DeserializeObject<advanceItem>(item.data.ToString()); break;
case "vip-card": item.data = JsonHelper.DeserializeObject<vipcardItem>(item.data.ToString()); break;
case "live" :item.data = JsonHelper.DeserializeObject<liveItem>(item.data.ToString()); break;
case "empty": item.data = JsonHelper.DeserializeObject<emptyItem>(item.data.ToString()); break;
case "ad": item.data = JsonHelper.DeserializeObject<adItem>(item.data.ToString()); break;
case "modal": item.data = JsonHelper.DeserializeObject<modalItem>(item.data.ToString()); break;
case "quick-nav": item.data = JsonHelper.DeserializeObject<quicknavItem>(item.data.ToString()); break;
}
}
}
......
using System;
using System.Collections.Generic;
using System.Text;
using Mall.Model.Entity.User;
using Mall.Model.Extend.User;
using Mall.Repository;
using Mall.Repository.User;
namespace Mall.Module.User
{
/// <summary>
/// 内容处理类
/// </summary>
public class ContentModule
{
/// <summary>
/// 专题分类表仓储层对象
/// </summary>
private RB_Topic_TypeRepository topic_TypeRepository = new RB_Topic_TypeRepository();
/// <summary>
/// 门店表仓储层对象
/// </summary>
private RB_StoresRepository storesRepository = new RB_StoresRepository();
/// <summary>
/// 视频表仓储层对象
/// </summary>
private RB_VideoRepository videoRepository = new RB_VideoRepository();
/// <summary>
/// 文章表仓储层对象
/// </summary>
private RB_ArticleRepository articleRepository = new RB_ArticleRepository();
#region 专题分类
/// <summary>
/// 专题分类分页列表
/// </summary>
/// <param name="pageIndex">页码</param>
/// <param name="pageSize">每页显示条数</param>
/// <param name="rowCount">总条数</param>
/// <param name="query">查询条件</param>
/// <returns></returns>
public List<RB_Topic_Type_Extend> GetTopicTypePageListModule(int pageIndex, int pageSize, out long rowCount, RB_Topic_Type_Extend query)
{
return topic_TypeRepository.GetTopicTypePageListRepository(pageIndex, pageSize, out rowCount, query);
}
/// <summary>
/// 获取专题分类列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Topic_Type_Extend> GetTopicTypeListModule(RB_Topic_Type_Extend query)
{
return topic_TypeRepository.GetTopicTypeListRepository(query);
}
/// <summary>
/// 新增修改专题分类
/// </summary>
/// <param name="extModel"></param>
/// <returns></returns>
public bool SetTopicTypeModule(RB_Topic_Type_Extend extModel)
{
bool flag = false;
if (extModel.Id > 0)
{
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{ nameof(RB_Topic_Type_Extend.TopicName),extModel.TopicName.Trim()},
{ nameof(RB_Topic_Type_Extend.SortNum),extModel.SortNum},
{ nameof(RB_Topic_Type_Extend.IsDisable),extModel.IsDisable},
};
flag = topic_TypeRepository.Update(fileds, new WhereHelper(nameof(RB_Topic_Type_Extend.Id), extModel.Id));
}
else
{
var newId = topic_TypeRepository.Insert(extModel);
extModel.Id = newId;
flag = newId > 0;
}
return flag;
}
/// <summary>
/// 获取专题分类实体
/// </summary>
/// <param name="Id"></param>
/// <returns></returns>
public RB_Topic_Type_Extend GetTopicTypeModule(object Id)
{
return topic_TypeRepository.GetEntity<RB_Topic_Type_Extend>(Id);
}
/// <summary>
/// 删除专题分类
/// </summary>
/// <param name="extModel"></param>
/// <returns></returns>
public bool RemoveTopicTypeModule(object Id)
{
bool flag = false;
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{ nameof(RB_Topic_Type_Extend.Status),1},
};
flag = topic_TypeRepository.Update(fileds, new WhereHelper(nameof(RB_Topic_Type_Extend.Id), Id));
return flag;
}
/// <summary>
/// 删除专题分类
/// </summary>
/// <param name="Id">主键编号</param>
/// <param name="IsDisable">是否禁用</param>
/// <returns></returns>
public bool UpdateTopicTypeStatusModule(object Id,int IsDisable)
{
bool flag = false;
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{ nameof(RB_Topic_Type_Extend.IsDisable),IsDisable},
};
flag = topic_TypeRepository.Update(fileds, new WhereHelper(nameof(RB_Topic_Type_Extend.Id), Id));
return flag;
}
#endregion
#region 门店
/// <summary>
/// 门店分页列表
/// </summary>
/// <param name="pageIndex">页码</param>
/// <param name="pageSize">每页显示条数</param>
/// <param name="rowCount">总条数</param>
/// <param name="query">查询条件</param>
/// <returns></returns>
public List<RB_Stores_Extend> GetStoresPageListModule(int pageIndex, int pageSize, out long rowCount, RB_Stores_Extend query)
{
return storesRepository.GetStoresPageListRepository(pageIndex, pageSize, out rowCount, query);
}
/// <summary>
/// 门店分类列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Stores_Extend> GetStoresListModule(RB_Stores_Extend query)
{
return storesRepository.GetStoresListRepository(query);
}
/// <summary>
/// 新增修改门店
/// </summary>
/// <param name="extModel"></param>
/// <returns></returns>
public bool SetStoresModule(RB_Stores_Extend extModel)
{
bool flag = false;
if (extModel.Id > 0)
{
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{ nameof(RB_Stores_Extend.Name),extModel.Name.Trim()},
{ nameof(RB_Stores_Extend.Tel),extModel.Tel},
{ nameof(RB_Stores_Extend.Address),extModel.Address},
{ nameof(RB_Stores_Extend.LngLat),extModel.LngLat},
{ nameof(RB_Stores_Extend.Score),extModel.Score},
{ nameof(RB_Stores_Extend.Intro),extModel.Intro},
{ nameof(RB_Stores_Extend.CoverImg),extModel.CoverImg},
{ nameof(RB_Stores_Extend.NavImg),extModel.NavImg},
{ nameof(RB_Stores_Extend.StartTime),extModel.StartTime},
{ nameof(RB_Stores_Extend.EndTime),extModel.EndTime},
{ nameof(RB_Stores_Extend.IsAllDay),extModel.IsAllDay},
};
flag = storesRepository.Update(fileds, new WhereHelper(nameof(RB_Stores_Extend.Id), extModel.Id));
}
else
{
var newId = storesRepository.Insert(extModel);
extModel.Id = newId;
flag = newId > 0;
}
return flag;
}
/// <summary>
/// 获取门店实体
/// </summary>
/// <param name="Id"></param>
/// <returns></returns>
public RB_Stores_Extend GetStoresModule(object Id)
{
return storesRepository.GetEntity<RB_Stores_Extend>(Id);
}
/// <summary>
/// 删除门店
/// </summary>
/// <param name="extModel"></param>
/// <returns></returns>
public bool RemoveStoresModule(object Id)
{
bool flag = false;
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{ nameof(RB_Stores_Extend.Status),1},
};
flag = storesRepository.Update(fileds, new WhereHelper(nameof(RB_Stores_Extend.Id), Id));
return flag;
}
#endregion
#region 视频
/// <summary>
/// 视频分页列表
/// </summary>
/// <param name="pageIndex">页码</param>
/// <param name="pageSize">每页显示条数</param>
/// <param name="rowCount">总条数</param>
/// <param name="query">查询条件</param>
/// <returns></returns>
public List<RB_Video_Extend> GetVideoPageListModule(int pageIndex, int pageSize, out long rowCount, RB_Video_Extend query)
{
return videoRepository.GetVideoPageListRepository(pageIndex, pageSize, out rowCount, query);
}
/// <summary>
/// 获取视频列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Video_Extend> GetVideoListModule(RB_Video_Extend query)
{
return videoRepository.GetVideoListRepository(query);
}
/// <summary>
/// 新增修改视频
/// </summary>
/// <param name="extModel"></param>
/// <returns></returns>
public bool SetVideoModule(RB_Video_Extend extModel)
{
bool flag = false;
if (extModel.Id > 0)
{
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{ nameof(RB_Video_Extend.Title),extModel.Title.Trim()},
{ nameof(RB_Video_Extend.SourceType),extModel.SourceType},
{ nameof(RB_Video_Extend.VedioUrl),extModel.VedioUrl},
{ nameof(RB_Video_Extend.VedioCoverImg),extModel.VedioCoverImg},
{ nameof(RB_Video_Extend.VedioIntro),extModel.VedioIntro},
{ nameof(RB_Video_Extend.SortNum),extModel.SortNum},
};
flag = videoRepository.Update(fileds, new WhereHelper(nameof(RB_Video_Extend.Id), extModel.Id));
}
else
{
var newId = videoRepository.Insert(extModel);
extModel.Id = newId;
flag = newId > 0;
}
return flag;
}
/// <summary>
/// 获取视频实体
/// </summary>
/// <param name="Id"></param>
/// <returns></returns>
public RB_Video_Extend GetVideoModule(object Id)
{
return videoRepository.GetEntity<RB_Video_Extend>(Id);
}
/// <summary>
/// 删除视频
/// </summary>
/// <param name="extModel"></param>
/// <returns></returns>
public bool RemoveVideoModule(object Id)
{
bool flag = false;
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{ nameof(RB_Video_Extend.Status),1},
};
flag = videoRepository.Update(fileds, new WhereHelper(nameof(RB_Video_Extend.Id), Id));
return flag;
}
#endregion
#region 文章
/// <summary>
/// 文章分页列表
/// </summary>
/// <param name="pageIndex">页码</param>
/// <param name="pageSize">每页显示条数</param>
/// <param name="rowCount">总条数</param>
/// <param name="query">查询条件</param>
/// <returns></returns>
public List<RB_Article_Extend> GetArticlePageListModule(int pageIndex, int pageSize, out long rowCount, RB_Article_Extend query)
{
return articleRepository.GetArticlePageListRepository(pageIndex, pageSize, out rowCount, query);
}
/// <summary>
/// 获取文章列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Article_Extend> GetArticleListModule(RB_Article_Extend query)
{
return articleRepository.GetArticleListRepository(query);
}
/// <summary>
/// 新增修改文章
/// </summary>
/// <param name="extModel"></param>
/// <returns></returns>
public bool SetArticleModule(RB_Article_Extend extModel)
{
bool flag = false;
if (extModel.Id > 0)
{
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{ nameof(RB_Article_Extend.Title),extModel.Title.Trim()},
{ nameof(RB_Article_Extend.SortNum),extModel.SortNum},
{ nameof(RB_Article_Extend.IsDisable),extModel.IsDisable},
{ nameof(RB_Article_Extend.Content),extModel.Content},
};
flag = articleRepository.Update(fileds, new WhereHelper(nameof(RB_Video_Extend.Id), extModel.Id));
}
else
{
var newId = articleRepository.Insert(extModel);
extModel.Id = newId;
flag = newId > 0;
}
return flag;
}
/// <summary>
/// 获取文章实体
/// </summary>
/// <param name="Id"></param>
/// <returns></returns>
public RB_Article_Extend GetArticleModule(object Id)
{
return articleRepository.GetEntity<RB_Article_Extend>(Id);
}
/// <summary>
/// 删除文章
/// </summary>
/// <param name="extModel"></param>
/// <returns></returns>
public bool RemoveArticleModule(object Id)
{
bool flag = false;
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{ nameof(RB_Article_Extend.Status),1},
};
flag = articleRepository.Update(fileds, new WhereHelper(nameof(RB_Article_Extend.Id), Id));
return flag;
}
/// <summary>
/// 更新文章状态
/// </summary>
/// <param name="Id"></param>
/// <param name="IsDisable"></param>
/// <returns></returns>
public bool UpdateArticleIsDisableModule(object Id,int IsDisable)
{
bool flag = false;
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{ nameof(RB_Article_Extend.IsDisable),IsDisable},
};
flag = articleRepository.Update(fileds, new WhereHelper(nameof(RB_Article_Extend.Id), Id));
return flag;
}
#endregion
}
}
......@@ -528,6 +528,48 @@ namespace Mall.Module.User
};
return programRepository.Update(fileds, whereHelpers);
}
/// <summary>
/// 修改微信小程序是否开启直播
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
public bool UpdateLivePlayerPlugin(RB_MiniProgram_Extend model)
{
IDictionary<string, object> fileds = new Dictionary<string, object>()
{
{ nameof(RB_MiniProgram_Extend.LivePlayerPlugin),model.LivePlayerPlugin},
};
IList<WhereHelper> whereHelpers = new List<WhereHelper>()
{
new WhereHelper (){ FiledName=nameof(RB_MiniProgram.MallBaseId),FiledValue=model.MallBaseId,OperatorEnum=OperatorEnum.Equal}
};
return programRepository.Update(fileds, whereHelpers);
}
/// <summary>
/// 修改当前小程序发布的版本号
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
public bool UpdateVersion(RB_MiniProgram_Extend model)
{
IDictionary<string, object> fileds = new Dictionary<string, object>()
{
{ nameof(RB_MiniProgram_Extend.Version),model.Version},
};
IList<WhereHelper> whereHelpers = new List<WhereHelper>()
{
new WhereHelper (){ FiledName=nameof(RB_MiniProgram.MallBaseId),FiledValue=model.MallBaseId,OperatorEnum=OperatorEnum.Equal}
};
return programRepository.Update(fileds, whereHelpers);
}
#endregion
......
using Mall.Model.Entity.MarketingCenter;
using Mall.Model.Entity.User;
using Mall.Model.Extend.MarketingCenter;
using System;
using System.Collections.Generic;
......@@ -7,12 +8,18 @@ using System.Text;
namespace Mall.Repository.MarketingCenter
{
public class RB_DiscountCouponRepository:RepositoryBase<RB_DiscountCoupon>
public class RB_DiscountCouponRepository : RepositoryBase<RB_DiscountCoupon>
{
/// <summary>
/// 表名称
/// </summary>
public string TableName { get { return nameof(RB_DiscountCoupon); } }
/// <summary>
/// 表名称
/// </summary>
public string discountCouponTableName { get { return nameof(RB_Member_DiscountCoupon); } }
/// <summary>
/// 卡券信息列表
/// </summary>
......@@ -78,5 +85,104 @@ namespace Mall.Repository.MarketingCenter
}
return Get<RB_DiscountCoupon_Extend>(builder.ToString()).ToList();
}
/// <summary>
/// 根据用户id和商品分类以及商品id获取未使用的优惠券信息
/// </summary>
/// <param name="query">查询条件</param>
/// <returns></returns>
public List<RB_DiscountCoupon_Extend> GetNoUseCouponList(RB_DiscountCoupon_Extend query)
{
string where = " and a.StartDate<NOW() and a.EndDate>NOW() and b.`Status`=0 and a.UseState=0 ";
string goodsClassWhere = "";//分类
string goodsWhere = "";//商品
string allWhere = "";//通用
if (query != null)
{
if (query.TenantId > 0)
{
where += $" AND b.{nameof(RB_DiscountCoupon_Extend.TenantId)}={query.TenantId}";
}
if (query.MallBaseId > 0)
{
where += $" AND b.{nameof(RB_DiscountCoupon_Extend.MallBaseId)}={query.MallBaseId}";
}
if (query.UserId > 0)
{
where += $" AND a.{nameof(RB_DiscountCoupon_Extend.UserId)}={query.UserId}";
}
if (query.ProductList != null && query.ProductList.Any())
{
List<int> allGoodsClass = new List<int>();
foreach (var item in query.ProductList)
{
if (!string.IsNullOrWhiteSpace(goodsWhere))
{
goodsWhere += $" or (c.ProductId = {item.ProductId} and b.MinConsumePrice<= {item.GoodsPrice}) ";
}
else
{
goodsWhere += $" (c.ProductId = {item.ProductId} and b.MinConsumePrice<= {item.GoodsPrice}) ";
}
allGoodsClass.AddRange(item.GoodsClassId.ToList());
}
goodsWhere = " and (" + goodsWhere + ")";
//分类
var goodsClassList = allGoodsClass.GroupBy(x => x);
foreach (var item in goodsClassList)
{
decimal nowPrice = 0;
foreach (var classItem in query.ProductList)
{
if (classItem.GoodsClassId.Any(x => x == item.Key))
{
nowPrice += classItem.GoodsPrice;
}
}
if (!string.IsNullOrWhiteSpace(goodsClassWhere))
{
goodsClassWhere += $" or (c.ProductId = {item.Key} and b.MinConsumePrice<= {nowPrice}) ";
}
else
{
goodsClassWhere += $" (c.ProductId = {item.Key} and b.MinConsumePrice<= {nowPrice}) ";
}
}
goodsClassWhere = " and (" + goodsClassWhere + ")";
decimal allPrice = query.ProductList.Sum(x => x.GoodsPrice);
allWhere = $" and b.MinConsumePrice<= {allPrice} ";
}
}
string sql = @$" SELECT a.ID,a.UserId,b.`Name`,b.CouponType,b.UseType,b.MinConsumePrice,b.DiscountsPrice,b.MaxDiscountsPrice,b.Describe,a.StartDate,a.EndDate from rb_discountcoupon as b
LEFT JOIN rb_discountcoupon_product as c on b.ID=c.DiscountCouponId
LEFT JOIN rb_member_discountcoupon as a on a.CouponId=b.ID
where b.UseType=1 and c.`Status`=0 {where} {goodsClassWhere}
UNION ALL
SELECT a.ID,a.UserId,b.`Name`,b.CouponType,b.UseType,b.MinConsumePrice,b.DiscountsPrice,b.MaxDiscountsPrice,b.Describe,a.StartDate,a.EndDate from rb_discountcoupon as b
LEFT JOIN rb_discountcoupon_product as c on b.ID=c.DiscountCouponId
LEFT JOIN rb_member_discountcoupon as a on a.CouponId=b.ID
where b.UseType=2 and c.`Status`=0 {where} {goodsWhere}
UNION all
SELECT a.ID,a.UserId,b.`Name`,b.CouponType,b.UseType,b.MinConsumePrice,b.DiscountsPrice,b.MaxDiscountsPrice,b.Describe,a.StartDate,a.EndDate from rb_discountcoupon as b
LEFT JOIN rb_member_discountcoupon as a on a.CouponId=b.ID
where b.UseType=3 {where} {allWhere}";
return Get<RB_DiscountCoupon_Extend>(sql).ToList();
}
}
}
......@@ -561,8 +561,8 @@ LEFT JOIN rb_member_user as c on b.UserId=c.Id
{
if (dmodel.OrderStatus == 1)
{
where += $@" and a.{nameof(RB_Goods_Order.OrderStatus)} in(1,2,4,3)";
payMemerNumWhere += $@" and {nameof(RB_Goods_Order.OrderStatus)}in(1,2,4,3)";
where += $@" and a.{nameof(RB_Goods_Order.OrderStatus)} in (1,2,4,3)";
payMemerNumWhere += $@" and {nameof(RB_Goods_Order.OrderStatus)} in (1,2,4,3)";
}
else if (dmodel.OrderStatus == 2)
{
......
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_ArticleRepository : RepositoryBase<RB_Article>
{
/// <summary>
/// 文章分页列表
/// </summary>
/// <param name="pageIndex">页码</param>
/// <param name="pageSize">每页显示条数</param>
/// <param name="rowCount">总条数</param>
/// <param name="query">查询条件</param>
/// <returns></returns>
public List<RB_Article_Extend> GetArticlePageListRepository(int pageIndex, int pageSize, out long rowCount, RB_Article_Extend query)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@" SELECT * FROM RB_Article WHERE 1=1 AND Status=0 ");
if (query.TenantId > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Article_Extend.TenantId), query.TenantId);
}
if (query.MallBaseId > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Article_Extend.MallBaseId), query.MallBaseId);
}
if (query.Id > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Article_Extend.Id), query.Id);
}
if (query.Title != null && !string.IsNullOrEmpty(query.Title.Trim()))
{
builder.AppendFormat(" AND {0} LIKE '%{1}%' ", nameof(RB_Article_Extend.Title), query.Title.Trim());
}
builder.Append(" ORDER BY SortNum ");
return GetPage<RB_Article_Extend>(pageIndex, pageSize, out rowCount, builder.ToString()).ToList();
}
/// <summary>
/// 获取文章列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Article_Extend> GetArticleListRepository(RB_Article_Extend query)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@" SELECT * FROM RB_Article WHERE 1=1 AND Status=0 ");
if (query.TenantId > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Article_Extend.TenantId), query.TenantId);
}
if (query.MallBaseId > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Article_Extend.MallBaseId), query.MallBaseId);
}
if (query.Id > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Article_Extend.Id), query.Id);
}
if (query.Title != null && !string.IsNullOrEmpty(query.Title.Trim()))
{
builder.AppendFormat(" AND {0} LIKE '%{1}%' ", nameof(RB_Article_Extend.Title), query.Title.Trim());
}
builder.Append(" ORDER BY SortNum ");
return Get<RB_Article_Extend>(builder.ToString()).ToList();
}
}
}
......@@ -55,13 +55,16 @@ namespace Mall.Repository.User
{
builder.Append($" AND a.{nameof(RB_Member_DiscountCoupon_Extend.UserId)}={query.UserId}");
}
if (query.CouponId > 0) {
if (query.CouponId > 0)
{
builder.Append($" AND a.{nameof(RB_Member_DiscountCoupon_Extend.CouponId)}={query.CouponId}");
}
if (!string.IsNullOrEmpty(query.CouponIds)) {
if (!string.IsNullOrEmpty(query.CouponIds))
{
builder.Append($" AND a.{nameof(RB_Member_DiscountCoupon_Extend.CouponId)} in ({query.CouponIds})");
}
if (query.UseState >= 0) {
if (query.UseState >= 0)
{
builder.Append($" AND a.{nameof(RB_Member_DiscountCoupon_Extend.UseState)}={query.UseState}");
}
}
......@@ -69,6 +72,8 @@ namespace Mall.Repository.User
return Get<RB_Member_DiscountCoupon_Extend>(sql).ToList();
}
/// <summary>
/// 会员优惠券
/// </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_StoresRepository : RepositoryBase<RB_Stores>
{
/// <summary>
/// 门店分页列表
/// </summary>
/// <param name="pageIndex">页码</param>
/// <param name="pageSize">每页显示条数</param>
/// <param name="rowCount">总条数</param>
/// <param name="query">查询条件</param>
/// <returns></returns>
public List<RB_Stores_Extend> GetStoresPageListRepository(int pageIndex, int pageSize, out long rowCount, RB_Stores_Extend query)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@" SELECT * FROM RB_Stores WHERE 1=1 AND Status=0 ");
if (query.TenantId > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Stores_Extend.TenantId), query.TenantId);
}
if (query.MallBaseId > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Stores_Extend.MallBaseId), query.MallBaseId);
}
if (query.Id > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Stores_Extend.Id), query.Id);
}
builder.Append(" ORDER BY Id DESC ");
return GetPage<RB_Stores_Extend>(pageIndex, pageSize, out rowCount, builder.ToString()).ToList();
}
/// <summary>
/// 门店分类列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Stores_Extend> GetStoresListRepository(RB_Stores_Extend query)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@" SELECT * FROM RB_Stores WHERE 1=1 AND Status=0 ");
if (query.TenantId > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Stores_Extend.TenantId), query.TenantId);
}
if (query.MallBaseId > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Stores_Extend.MallBaseId), query.MallBaseId);
}
if (query.Id > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Stores_Extend.Id), query.Id);
}
builder.Append(" ORDER BY Id DESC ");
return Get<RB_Stores_Extend>(builder.ToString()).ToList();
}
}
}
\ No newline at end of file
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_Topic_TypeRepository : RepositoryBase<RB_Topic_Type>
{
/// <summary>
/// 专题分类分页列表
/// </summary>
/// <param name="pageIndex">页码</param>
/// <param name="pageSize">每页显示条数</param>
/// <param name="rowCount">总条数</param>
/// <param name="query">查询条件</param>
/// <returns></returns>
public List<RB_Topic_Type_Extend> GetTopicTypePageListRepository(int pageIndex, int pageSize, out long rowCount, RB_Topic_Type_Extend query)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@" SELECT * FROM RB_Topic_Type WHERE 1=1 AND Status=0 ");
if (query.TenantId > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Topic_Type_Extend.TenantId), query.TenantId);
}
if (query.MallBaseId > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Topic_Type_Extend.MallBaseId), query.MallBaseId);
}
if (query.Id > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Topic_Type_Extend.Id), query.Id);
}
if (query.TopicName != null && !string.IsNullOrEmpty(query.TopicName.Trim()))
{
builder.AppendFormat(" AND {0} LIKE '%{1}%' ", nameof(RB_Topic_Type_Extend.TopicName), query.TopicName.Trim());
}
builder.Append(" ORDER BY SortNum ");
return GetPage<RB_Topic_Type_Extend>(pageIndex, pageSize, out rowCount, builder.ToString()).ToList();
}
/// <summary>
/// 获取专题分类列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Topic_Type_Extend> GetTopicTypeListRepository(RB_Topic_Type_Extend query)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@" SELECT * FROM RB_Topic_Type WHERE 1=1 AND Status=0 ");
if (query.TenantId > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Topic_Type_Extend.TenantId), query.TenantId);
}
if (query.MallBaseId > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Topic_Type_Extend.MallBaseId), query.MallBaseId);
}
if (query.Id > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Topic_Type_Extend.Id), query.Id);
}
if (query.TopicName != null && !string.IsNullOrEmpty(query.TopicName.Trim()))
{
builder.AppendFormat(" AND {0} LIKE '%{1}%' ", nameof(RB_Topic_Type_Extend.TopicName), query.TopicName.Trim());
}
builder.Append(" ORDER BY SortNum ");
return Get<RB_Topic_Type_Extend>(builder.ToString()).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_VideoRepository : RepositoryBase<RB_Video>
{
/// <summary>
/// 视频分页列表
/// </summary>
/// <param name="pageIndex">页码</param>
/// <param name="pageSize">每页显示条数</param>
/// <param name="rowCount">总条数</param>
/// <param name="query">查询条件</param>
/// <returns></returns>
public List<RB_Video_Extend> GetVideoPageListRepository(int pageIndex, int pageSize, out long rowCount, RB_Video_Extend query)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@" SELECT * FROM RB_Video WHERE 1=1 AND Status=0 ");
if (query.TenantId > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Video_Extend.TenantId), query.TenantId);
}
if (query.MallBaseId > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Video_Extend.MallBaseId), query.MallBaseId);
}
if (query.Id > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Video_Extend.Id), query.Id);
}
builder.Append(" ORDER BY Id DESC ");
return GetPage<RB_Video_Extend>(pageIndex, pageSize, out rowCount, builder.ToString()).ToList();
}
/// <summary>
/// 获取视频列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Video_Extend> GetVideoListRepository(RB_Video_Extend query)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@" SELECT * FROM RB_Video WHERE 1=1 AND Status=0 ");
if (query.TenantId > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Video_Extend.TenantId), query.TenantId);
}
if (query.MallBaseId > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Video_Extend.MallBaseId), query.MallBaseId);
}
if (query.Id > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Video_Extend.Id), query.Id);
}
builder.Append(" ORDER BY Id DESC ");
return Get<RB_Video_Extend>(builder.ToString()).ToList();
}
}
}
......@@ -97,7 +97,7 @@ namespace Mall.WebApi.Controllers.AppletWeChat
/// <summary>
/// 获取项目预览二维码
/// 发布小程序
/// </summary>
/// <returns></returns>
[HttpPost]
......@@ -115,13 +115,25 @@ namespace Mall.WebApi.Controllers.AppletWeChat
try
{
string URL = $"http://127.0.0.1:{developerKitsPort}/v2/upload?project={Mall.Common.Plugin.StringHelper.UrlEncode(projectUrl)}&version=v1.0.0&desc=微信开发者工具HTTP上传&appid={model.MiniAppId}";
if (string.IsNullOrWhiteSpace(query.Version))
{
query.Version = "1.0.0";
}
int version = Convert.ToInt32(query.Version.Replace(".", ""));
version += 1;
query.Version = version.ToString().Substring(0, version.ToString().Length - 2) +"."+ version.ToString().Substring(version.ToString().Length - 2, 1) + "." + version.ToString().Substring(version.ToString().Length - 1, 1);
string URL = $"http://127.0.0.1:{developerKitsPort}/v2/upload?project={Mall.Common.Plugin.StringHelper.UrlEncode(projectUrl)}&version=V{query.Version}&desc=微信开发者工具HTTP上传&appid={model.MiniAppId}";
string result = Mall.Common.Plugin.HttpHelper.HttpGet(URL, Encoding.UTF8, "");
JObject parmsJob = JObject.Parse(result);
if (parmsJob.ContainsKey("code"))
{
return ApiResult.Failed(parmsJob.GetValue("message").ToString());
}
//更新版本
appletWeChatModule.UpdateVersion(query);
return ApiResult.Success("上传成功", result);
}
catch (Exception ex)
......
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Mall.Common;
using Mall.Common.API;
using Mall.Common.Plugin;
using Mall.Model.Extend.MarketingCenter;
using Mall.Module.MarketingCenter;
using Mall.WebApi.Filter;
using Microsoft.AspNetCore.Cors;
using Microsoft.AspNetCore.Mvc;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
namespace Mall.WebApi.Controllers.MarketingCenter
{
[Route("api/[controller]/[action]")]
[ApiExceptionFilter]
[ApiController]
[EnableCors("AllowCors")]
public class AppletCouponController : BaseController
{
private CouponModule couponModule = new CouponModule();
/// <summary>
/// 设置购物车数量
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetNoUseCouponList()
{
var req = RequestParm;
var userInfo = AppletUserInfo;
JObject prams = JObject.Parse(req.msg.ToString());
var query = JsonConvert.DeserializeObject<RB_DiscountCoupon_Extend>(RequestParm.msg.ToString());
//if (userInfo == null)
//{
// userInfo.TenantId = 1;
// userInfo.MallBaseId = 1;
// userInfo.UserId = 3;
//}
query.TenantId = userInfo.TenantId;
query.MallBaseId = userInfo.MallBaseId;
query.UserId = userInfo.UserId;
var list = couponModule.GetNoUseCouponList(query);
var result = list.Select(x => new
{
x.ID,
StartDate = x.StartDate.HasValue ? x.StartDate.Value.ToString("yyyy-MM-dd HH:mm:ss") : "",
EndDate = x.EndDate.HasValue ? x.EndDate.Value.ToString("yyyy-MM-dd HH:mm:ss") : "",
x.Name,
x.Describe,
x.MinConsumePrice,
x.CouponType,
x.MaxDiscountsPrice,
x.UseType
});
return ApiResult.Success("", result);
}
}
}
\ No newline at end of file
......@@ -678,6 +678,23 @@ namespace Mall.WebApi.Controllers.MallBase
}
}
/// <summary>
/// 获取订单类型枚举下拉
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetOrderTypeEnumEnumList()
{
var list = EnumHelper.GetEnumList(typeof(OrderTypeEnum));
return ApiResult.Success("", list.Select(x => new
{
Name = x.Key,
Id = Convert.ToInt32(x.Value)
}));
}
#endregion
#region 会员购买
......
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;
using Microsoft.AspNetCore.Authorization;
using Mall.Model.Entity.User;
namespace Mall.WebApi.Controllers.User
{
[Route("api/[controller]/[action]")]
[ApiExceptionFilter]
[ApiController]
[EnableCors("AllowCors")]
public class MContentController : BaseController
{
/// <summary>
/// 内容管理
/// </summary>
private Module.User.ContentModule contentModule = new ContentModule();
#region 专题分类
/// <summary>
/// 专题分类分页列表
/// </summary>
/// <returns></returns>
public ApiResult GetTopicTypePageList()
{
ResultPageModel pageModel = JsonConvert.DeserializeObject<ResultPageModel>(RequestParm.msg.ToString());
var query = JsonConvert.DeserializeObject<RB_Topic_Type_Extend>(RequestParm.msg.ToString());
query.MallBaseId = RequestParm.MallBaseId;
query.TenantId = RequestParm.TenantId;
var list = contentModule.GetTopicTypePageListModule(pageModel.pageIndex, pageModel.pageSize, out long rowsCount, query);
pageModel.count = Convert.ToInt32(rowsCount);
pageModel.pageData = list;
return ApiResult.Success(data: pageModel);
}
/// <summary>
/// 获取专题分类列表
/// </summary>
/// <returns></returns>
public ApiResult GetTopicTypeList()
{
var query = JsonConvert.DeserializeObject<RB_Topic_Type_Extend>(RequestParm.msg.ToString());
query.MallBaseId = RequestParm.MallBaseId;
query.TenantId = RequestParm.TenantId;
var list = contentModule.GetTopicTypeListModule( query);
return ApiResult.Success(data: list);
}
/// <summary>
/// 新增修改专题分类
/// </summary>
/// <returns></returns>
public ApiResult SetTopicType()
{
var extModel = JsonConvert.DeserializeObject<RB_Topic_Type_Extend>(RequestParm.msg.ToString());
extModel.Status = 0;
extModel.MallBaseId = RequestParm.MallBaseId;
extModel.TenantId = RequestParm.TenantId;
extModel.CreateDate = DateTime.Now;
var flag = contentModule.SetTopicTypeModule(extModel);
return flag ? ApiResult.Success() : ApiResult.Failed();
}
/// <summary>
/// 获取专题分类实体
/// </summary>
/// <returns></returns>
public ApiResult GetTopicType()
{
JObject parms = JObject.Parse(RequestParm.msg.ToString());
var Id = parms.GetInt("Id", 0);
var extModel = contentModule.GetTopicTypeModule(Id);
return ApiResult.Success(data: extModel);
}
/// <summary>
/// 删除专题分类
/// </summary>
/// <returns></returns>
public ApiResult RemoveTopicType()
{
JObject parms = JObject.Parse(RequestParm.msg.ToString());
var Id = parms.GetInt("Id", 0);
var flag = contentModule.RemoveTopicTypeModule(Id);
return flag ? ApiResult.Success() : ApiResult.Failed();
}
/// <summary>
/// 更新专题分类状态
/// </summary>
/// <returns></returns>
public ApiResult UpdateTopicTypeStatus()
{
JObject parms = JObject.Parse(RequestParm.msg.ToString());
var Id = parms.GetInt("Id", 0);
var IsDisable = parms.GetInt("IsDisable");
var flag = contentModule.UpdateTopicTypeStatusModule(Id, IsDisable);
return flag ? ApiResult.Success() : ApiResult.Failed();
}
#endregion
#region 门店
/// <summary>
/// 门店分页列表
/// </summary>
/// <returns></returns>
public ApiResult GetStoresPageList()
{
ResultPageModel pageModel = JsonConvert.DeserializeObject<ResultPageModel>(RequestParm.msg.ToString());
var query = JsonConvert.DeserializeObject<RB_Stores_Extend>(RequestParm.msg.ToString());
query.MallBaseId = RequestParm.MallBaseId;
query.TenantId = RequestParm.TenantId;
var list = contentModule.GetStoresPageListModule(pageModel.pageIndex, pageModel.pageSize, out long rowsCount, query);
pageModel.count = Convert.ToInt32(rowsCount);
pageModel.pageData = list;
return ApiResult.Success(data: pageModel);
}
/// <summary>
/// 门店分类列表
/// </summary>
/// <returns></returns>
public ApiResult GetStoresList()
{
var query = JsonConvert.DeserializeObject<RB_Stores_Extend>(RequestParm.msg.ToString());
query.MallBaseId = RequestParm.MallBaseId;
query.TenantId = RequestParm.TenantId;
var list = contentModule.GetStoresListModule(query);
return ApiResult.Success(data: list);
}
/// <summary>
/// 新增修改门店
/// </summary>
/// <returns></returns>
public ApiResult SetStores()
{
var extModel = JsonConvert.DeserializeObject<RB_Stores_Extend>(RequestParm.msg.ToString());
extModel.Status = 0;
extModel.MallBaseId = RequestParm.MallBaseId;
extModel.TenantId = RequestParm.TenantId;
extModel.CreateDate = DateTime.Now;
var flag = contentModule.SetStoresModule(extModel);
return flag ? ApiResult.Success() : ApiResult.Failed();
}
/// <summary>
/// 获取门店实体
/// </summary>
/// <returns></returns>
public ApiResult GetStores()
{
JObject parms = JObject.Parse(RequestParm.msg.ToString());
var Id = parms.GetInt("Id", 0);
var extModel = contentModule.GetStoresModule(Id);
return ApiResult.Success(data: extModel);
}
/// <summary>
/// 删除门店
/// </summary>
/// <returns></returns>
public ApiResult RemoveStores()
{
JObject parms = JObject.Parse(RequestParm.msg.ToString());
var Id = parms.GetInt("Id", 0);
var flag = contentModule.RemoveStoresModule(Id);
return flag ? ApiResult.Success() : ApiResult.Failed();
}
#endregion
#region 视频
/// <summary>
/// 视频分页列表
/// </summary>
/// <returns></returns>
public ApiResult GetVideoPageList()
{
ResultPageModel pageModel = JsonConvert.DeserializeObject<ResultPageModel>(RequestParm.msg.ToString());
var query = JsonConvert.DeserializeObject<RB_Video_Extend>(RequestParm.msg.ToString());
query.MallBaseId = RequestParm.MallBaseId;
query.TenantId = RequestParm.TenantId;
var list = contentModule.GetVideoPageListModule(pageModel.pageIndex, pageModel.pageSize, out long rowsCount, query);
pageModel.count = Convert.ToInt32(rowsCount);
pageModel.pageData = list;
return ApiResult.Success(data: pageModel);
}
/// <summary>
/// 获取视频列表
/// </summary>
/// <returns></returns>
public ApiResult GetVideoListModule()
{
var query = JsonConvert.DeserializeObject<RB_Video_Extend>(RequestParm.msg.ToString());
query.MallBaseId = RequestParm.MallBaseId;
query.TenantId = RequestParm.TenantId;
var list = contentModule.GetVideoListModule(query);
return ApiResult.Success(data: list);
}
/// <summary>
/// 新增修改视频
/// </summary>
/// <returns></returns>
public ApiResult SetVideo()
{
var extModel = JsonConvert.DeserializeObject<RB_Video_Extend>(RequestParm.msg.ToString());
extModel.Status = 0;
extModel.MallBaseId = RequestParm.MallBaseId;
extModel.TenantId = RequestParm.TenantId;
extModel.CreateDate = DateTime.Now;
var flag = contentModule.SetVideoModule(extModel);
return flag ? ApiResult.Success() : ApiResult.Failed();
}
/// <summary>
/// 获取视频实体
/// </summary>
/// <returns></returns>
public ApiResult GetVideo()
{
JObject parms = JObject.Parse(RequestParm.msg.ToString());
var Id = parms.GetInt("Id", 0);
var extModel = contentModule.GetVideoModule(Id);
return ApiResult.Success(data: extModel);
}
/// <summary>
/// 删除视频
/// </summary>
/// <returns></returns>
public ApiResult RemoveVideo()
{
JObject parms = JObject.Parse(RequestParm.msg.ToString());
var Id = parms.GetInt("Id", 0);
var flag = contentModule.RemoveVideoModule(Id);
return flag ? ApiResult.Success() : ApiResult.Failed();
}
#endregion
#region 文章
/// <summary>
/// 文章分页列表
/// </summary>
/// <returns></returns>
public ApiResult GetArticlePageList()
{
ResultPageModel pageModel = JsonConvert.DeserializeObject<ResultPageModel>(RequestParm.msg.ToString());
var query = JsonConvert.DeserializeObject<RB_Article_Extend>(RequestParm.msg.ToString());
query.MallBaseId = RequestParm.MallBaseId;
query.TenantId = RequestParm.TenantId;
var list = contentModule.GetArticlePageListModule(pageModel.pageIndex, pageModel.pageSize, out long rowsCount, query);
pageModel.count = Convert.ToInt32(rowsCount);
pageModel.pageData = list;
return ApiResult.Success(data: pageModel);
}
/// <summary>
/// 获取文章列表
/// </summary>
/// <returns></returns>
public ApiResult GetArticleList()
{
var query = JsonConvert.DeserializeObject<RB_Article_Extend>(RequestParm.msg.ToString());
query.MallBaseId = RequestParm.MallBaseId;
query.TenantId = RequestParm.TenantId;
var list = contentModule.GetArticleListModule(query);
return ApiResult.Success(data: list);
}
/// <summary>
/// 新增修改文章
/// </summary>
/// <returns></returns>
public ApiResult SetArticle()
{
var extModel = JsonConvert.DeserializeObject<RB_Article_Extend>(RequestParm.msg.ToString());
extModel.Status = 0;
extModel.MallBaseId = RequestParm.MallBaseId;
extModel.TenantId = RequestParm.TenantId;
extModel.CreateDate = DateTime.Now;
var flag = contentModule.SetArticleModule(extModel);
return flag ? ApiResult.Success() : ApiResult.Failed();
}
/// <summary>
/// 获取文章实体
/// </summary>
/// <returns></returns>
public ApiResult GetArticle()
{
JObject parms = JObject.Parse(RequestParm.msg.ToString());
var Id = parms.GetInt("Id", 0);
var extModel = contentModule.GetArticleModule(Id);
return ApiResult.Success(data: extModel);
}
/// <summary>
/// 删除文章
/// </summary>
/// <returns></returns>
public ApiResult RemoveArticle()
{
JObject parms = JObject.Parse(RequestParm.msg.ToString());
var Id = parms.GetInt("Id", 0);
var flag = contentModule.RemoveArticleModule(Id);
return flag ? ApiResult.Success() : ApiResult.Failed();
}
/// <summary>
/// 更新文章状态
/// </summary>
/// <returns></returns>
public ApiResult UpdateArticleStatus()
{
JObject parms = JObject.Parse(RequestParm.msg.ToString());
var Id = parms.GetInt("Id", 0);
var IsDisable = parms.GetInt("IsDisable");
var flag = contentModule.UpdateArticleIsDisableModule(Id, IsDisable);
return flag ? ApiResult.Success() : ApiResult.Failed();
}
#endregion
}
}
\ No newline at end of file
......@@ -403,7 +403,7 @@ namespace Mall.WebApi.Controllers.User
}
#region 设置可跳转小程序
#region 设置可跳转小程序 OR 是否开启直播
/// <summary>
/// 设置可跳转小程序
/// </summary>
......@@ -434,7 +434,28 @@ namespace Mall.WebApi.Controllers.User
}
}
/// <summary>
/// 设置可跳转小程序
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult UpdateLivePlayerPlugin()
{
var parms = RequestParm;
var query = JsonConvert.DeserializeObject<RB_MiniProgram_Extend>(RequestParm.msg.ToString());
query.MallBaseId = parms.MallBaseId;
query.TenantId = UserInfo.TenantId;
bool result = programModule.UpdateLivePlayerPlugin(query);
if (result)
{
return ApiResult.Success("小程序直播组件设置成功");
}
else
{
return ApiResult.Failed("小程序直播组件设置失败");
}
}
/// <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