Commit 8073f650 authored by liudong1993's avatar liudong1993

解决冲突

parents b890eb68 becbf729
using Mall.Common.AOP;
using System;
using System.Collections.Generic;
using System.Text;
namespace Mall.Model.Entity.BaseSetUp
{
/// <summary>
/// 分类包邮规则
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_FreeShipping
{
public int ID { get; set; }
/// <summary>
/// 商户id
/// </summary>
public int TenantId { get; set; }
/// <summary>
/// 小程序id
/// </summary>
public int MallBaseId { get; set; }
public int Status { get; set; }
public DateTime CreateDate { get; set; }
public DateTime UpdateDate { get; set; }
/// <summary>
/// 单品满件包邮
/// </summary>
public int? FullNumPinkage
{
get;
set;
}
/// <summary>
/// 单品满额包邮
/// </summary>
public decimal? FullMoneyPinkage
{
get;
set;
}
/// <summary>
/// 是否启用全局包邮
/// </summary>
public int IsEnable { get; set; }
}
}
using Mall.Common.AOP;
using System;
using System.Collections.Generic;
using System.Text;
namespace Mall.Model.Entity.BaseSetUp
{
/// <summary>
/// 分类包邮分类
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_FreeShippingCategory
{
public int ID { get; set; }
/// <summary>
/// 商户id
/// </summary>
public int TenantId { get; set; }
/// <summary>
/// 小程序id
/// </summary>
public int MallBaseId { get; set; }
public int Status { get; set; }
public DateTime CreateDate { get; set; }
public DateTime UpdateDate { get; set; }
/// <summary>
/// 分类id
/// </summary>
public int CategoryId { get; set; }
/// <summary>
/// 包邮规则id
/// </summary>
public int FreeShippingId { get; set; }
}
}
...@@ -355,5 +355,9 @@ namespace Mall.Model.Entity.BaseSetUp ...@@ -355,5 +355,9 @@ namespace Mall.Model.Entity.BaseSetUp
/// </summary> /// </summary>
public int TenantId { get; set; } public int TenantId { get; set; }
/// <summary>
/// 是否开启全局分类包邮规则
/// </summary>
public int IsFreeShipping { get; set; }
} }
} }
...@@ -130,5 +130,11 @@ namespace Mall.Model.Entity.Finance ...@@ -130,5 +130,11 @@ namespace Mall.Model.Entity.Finance
{ {
get; set; get; set;
} }
///// <summary>
///// 供应商id
///// </summary>
//public int SupplierId { get; set; }
} }
} }
...@@ -87,9 +87,6 @@ namespace Mall.Model.Entity.User ...@@ -87,9 +87,6 @@ namespace Mall.Model.Entity.User
public int Introducer { get; set; } public int Introducer { get; set; }
/// <summary>
/// 供应商关联人返佣比例
/// </summary>
public decimal CommissionRate { get; set; }
} }
} }
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_SupplierCommission
{
public int ID { get; set; }
/// <summary>
/// 供应商id
/// </summary>
public int SupplierId { get; set; }
/// <summary>
/// 删除状态
/// </summary>
public int? Status
{
get;
set;
}
/// <summary>
/// 商户号
/// </summary>
public int TenantId
{
get;
set;
}
/// <summary>
/// 小程序id
/// </summary>
public int MallBaseId
{
get;
set;
}
/// <summary>
/// CreateDate
/// </summary>
public DateTime? CreateDate
{
get;
set;
}
/// <summary>
/// UpdateDate
/// </summary>
public DateTime? UpdateDate
{
get;
set;
}
/// <summary>
/// 返佣类型1-10
/// </summary>
public int CommissionType { get; set; }
/// <summary>
/// 返佣比例
/// </summary>
public decimal CommissionRate { get; set; }
}
}
using Mall.Common.AOP;
using Mall.Model.Entity.BaseSetUp;
using System;
using System.Collections.Generic;
using System.Text;
namespace Mall.Model.Extend.BaseSetUp
{
/// <summary>
/// 分类包邮扩展表
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_FreeShippingCategory_Extend : RB_FreeShippingCategory
{
/// <summary>
/// 分类名称
/// </summary>
public string CategoryName { get; set; }
public string FreeShippingIds { get; set; }
/// <summary>
/// 分类id
/// </summary>
public string CategoryIds { get; set; }
}
}
using Mall.Common.AOP;
using Mall.Model.Entity.BaseSetUp;
using System;
using System.Collections.Generic;
using System.Text;
namespace Mall.Model.Extend.BaseSetUp
{
/// <summary>
/// 分类包邮规则
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_FreeShipping_Extend : RB_FreeShipping
{
/// <summary>
/// 分类列表
/// </summary>
public List<RB_FreeShippingCategory_Extend> CategoryList { get; set; }
}
}
...@@ -32,6 +32,11 @@ namespace Mall.Model.Extend.MarketingCenter ...@@ -32,6 +32,11 @@ namespace Mall.Model.Extend.MarketingCenter
/// 发放数量 /// 发放数量
/// </summary> /// </summary>
public int GrantNum { get; set; } public int GrantNum { get; set; }
/// <summary>
/// 触发事件,1-分享,2-购买并付款,3-新人领券
/// </summary>
public int TriggerType { get; set; }
/// <summary> /// <summary>
/// 优惠卷ids /// 优惠卷ids
/// </summary> /// </summary>
......
...@@ -260,6 +260,21 @@ namespace Mall.Model.Extend.MarketingCenter ...@@ -260,6 +260,21 @@ namespace Mall.Model.Extend.MarketingCenter
/// 轮播图 /// 轮播图
/// </summary> /// </summary>
public List<bannerDetailItem> banners { get; set; } public List<bannerDetailItem> banners { get; set; }
/// <summary>
/// 圆角
/// </summary>
public string radius { get; set; }
/// <summary>
/// 上下边距
/// </summary>
public string topAndBottom { get; set; }
/// <summary>
/// 左右边距
/// </summary>
public string leftAndRight { get; set; }
} }
/// <summary> /// <summary>
......
...@@ -25,5 +25,15 @@ namespace Mall.Model.Extend.Product ...@@ -25,5 +25,15 @@ namespace Mall.Model.Extend.Product
/// 是否可以分享 /// 是否可以分享
/// </summary> /// </summary>
public int? IsForeignShare { get; set; } public int? IsForeignShare { get; set; }
/// <summary>
/// 父级分类编号
/// </summary>
public int ParentId { get; set; }
/// <summary>
/// 商品层级
/// </summary>
public int Tier { get; set; }
} }
} }
...@@ -69,6 +69,12 @@ namespace Mall.Model.Extend.Product ...@@ -69,6 +69,12 @@ namespace Mall.Model.Extend.Product
/// 分类ids /// 分类ids
/// </summary> /// </summary>
public string CategoryIds { get; set; } public string CategoryIds { get; set; }
/// <summary>
/// 商品分类Id【HK0803新增】
/// </summary>
public int CategoryId { get; set; }
/// <summary> /// <summary>
/// 商品ids /// 商品ids
/// </summary> /// </summary>
......
...@@ -21,5 +21,7 @@ namespace Mall.Model.Extend.User ...@@ -21,5 +21,7 @@ namespace Mall.Model.Extend.User
/// 介绍人名称 /// 介绍人名称
/// </summary> /// </summary>
public string IntroducerName { get; set; } public string IntroducerName { get; set; }
}
public List<RB_SupplierCommission> SupplierCommissionList { get; set; }
}
} }
This diff is collapsed.
...@@ -6,7 +6,9 @@ using Mall.Model.Extend.User; ...@@ -6,7 +6,9 @@ using Mall.Model.Extend.User;
using Mall.Model.Query; using Mall.Model.Query;
using Mall.Repository; using Mall.Repository;
using Mall.Repository.MarketingCenter; using Mall.Repository.MarketingCenter;
using Mall.Repository.User;
using MySqlX.XDevAPI.Relational; using MySqlX.XDevAPI.Relational;
using NPOI.SS.Formula.Functions;
using Org.BouncyCastle.Crypto.Tls; using Org.BouncyCastle.Crypto.Tls;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
...@@ -27,7 +29,10 @@ namespace Mall.Module.MarketingCenter ...@@ -27,7 +29,10 @@ namespace Mall.Module.MarketingCenter
private RB_Coupon_SelfMotionRepository selfMotionRepository = new RB_Coupon_SelfMotionRepository(); private RB_Coupon_SelfMotionRepository selfMotionRepository = new RB_Coupon_SelfMotionRepository();
/// <summary>
/// 会员信息
/// </summary>
private readonly RB_Member_UserRepository member_UserRepository = new RB_Member_UserRepository();
...@@ -872,5 +877,117 @@ namespace Mall.Module.MarketingCenter ...@@ -872,5 +877,117 @@ namespace Mall.Module.MarketingCenter
} }
#endregion #endregion
#region 自动发放给会员优惠券
/// <summary>
/// 自动给会员发放优惠券
/// </summary>
/// <param name="userId"></param>
/// <param name="getType">1-分享,2-购买并付款,3-新人领券</param>
/// <returns></returns>
public bool AutoCoupon(RB_DiscountCoupon_Extend model)
{
//先查找会员是否存在
var memberUserModel = member_UserRepository.GetEntity(model.UserId);
if (memberUserModel == null)
{
return false;
}
//根据发放类型获取对应的优惠券信息
var couponList = discountCouponRepository.GetSelfmotionCouponList(model);
if (couponList != null && couponList.Any(x => x.TotalNum == -1 || ((x.TotalNum - x.ReceiveNum) > 0)))//存在满足条件的优惠券可以发放
{
bool isReceive = false;
//查询已发放的优惠券信息
var memberCouponList = memberCouponRepository.GetAutoMemberCouponPageList(new RB_Member_DiscountCoupon_Extend { UserId = model.UserId, GetType = model.TriggerType, TenantId = model.TenantId, MallBaseId = model.MallBaseId });
foreach (var item in couponList.Where(x => x.TotalNum == -1 || ((x.TotalNum - x.ReceiveNum) > 0)))//判断当前优惠券是否已超过领取数
{
int membercouponCoun = memberCouponList.Where(x => x.CouponId == item.ID).Count();
if (!isReceive && membercouponCoun < item.GrantNum)//此次没有领取,并且当前优惠券没有超过领取数量
{
var trans = memberCouponRepository.DbTransaction;
try
{
RB_Member_DiscountCoupon nowMemberCoupon = new RB_Member_DiscountCoupon
{
Id = 0,
TenantId = item.TenantId,
MallBaseId = item.MallBaseId,
Status = 0,
CreateDate = System.DateTime.Now,
UserId = item.UserId,
Description = item.TriggerType == 1 ? "分享自动发放优惠券" : (item.TriggerType == 2 ? "购买并付款自动发放优惠券" : "新人领劵自动发放优惠券"),
Remarks = item.TriggerType == 1 ? "分享" : (item.TriggerType == 2 ? "购买并付款" : "新人领劵"),
UseState = 0,
CouponId = item.ID,
StartDate = item.IndateType == Common.Enum.MarketingCenter.IndateTypeEnum.DayHorizon ? System.DateTime.Now : item.StartDate,
EndDate = item.IndateType == Common.Enum.MarketingCenter.IndateTypeEnum.DayHorizon ? System.DateTime.Now.AddDays(item.IndateDay) : item.EndDate,
GetType = item.TriggerType,
UseType = item.UseType,
MinConsumePrice = item.MinConsumePrice,
DiscountsPrice = item.DiscountsPrice,
MaxDiscountsPrice = item.MaxDiscountsPrice,
CouponType = item.CouponType,
Name = item.Name
};
isReceive = memberCouponRepository.Insert(nowMemberCoupon, trans) > 0;
if (isReceive)//更新当前优惠券的领取数量
{
Dictionary<string, object> cols1;
if (item.TotalNum != -1)
{
cols1 = new Dictionary<string, object>()
{
{ nameof(RB_DiscountCoupon.ReceiveNum),item.ReceiveNum+1},
{ nameof(RB_DiscountCoupon.TotalNum),item.TotalNum - 1},
{ nameof(RB_DiscountCoupon.UpdateDate),DateTime.Now},
};
}
else
{
cols1 = new Dictionary<string, object>()
{
{ nameof(RB_DiscountCoupon.ReceiveNum),item.ReceiveNum+1},
{ nameof(RB_DiscountCoupon.UpdateDate),DateTime.Now},
};
}
List<WhereHelper> wheres1 = new List<WhereHelper>()
{
new WhereHelper(){
FiledName=nameof(RB_DiscountCoupon.ID),
FiledValue=item.ID,
OperatorEnum=OperatorEnum.Equal
},
new WhereHelper(){
FiledName=nameof(RB_DiscountCoupon.TenantId),
FiledValue=item.TenantId,
OperatorEnum=OperatorEnum.Equal
},
new WhereHelper(){
FiledName=nameof(RB_DiscountCoupon.MallBaseId),
FiledValue=item.MallBaseId,
OperatorEnum=OperatorEnum.Equal
}
};
discountCouponRepository.Update(cols1, wheres1, trans);
}
memberCouponRepository.DBSession.Commit();
return true;
}
catch (Exception ex)
{
LogHelper.Write(ex, "AutoCoupon");
memberCouponRepository.DBSession.Rollback("AutoCoupon");
return false;
}
}
}
}
return true;
}
#endregion
} }
} }
...@@ -3336,6 +3336,118 @@ namespace Mall.Module.Product ...@@ -3336,6 +3336,118 @@ namespace Mall.Module.Product
return list; return list;
} }
/// <summary>
/// 获取分类=>商品列表
/// </summary>
/// <param name="demodel">查询条件</param>
/// <returns></returns>
public List<object> GetGoodsListModule(RB_Goods_Extend demodel)
{
List<object> resultList = new List<object>();
List<RB_Product_Category_Extend> categoryList = product_CategoryRepository.GetList(new RB_Product_Category_Extend() { MallBaseId = demodel.MallBaseId, TenantId = demodel.TenantId });
var goodsList = goodsRepository.GetList(demodel);
if (categoryList!=null&& categoryList.Count>0)
{
var firstCategoryList = categoryList.Where(qitem=>qitem.Tier==1).ToList();
foreach (var firstItem in firstCategoryList)
{
var rootGoodsList = goodsList.Where(qitem => qitem.CategoryId == firstItem.Id).ToList();
var secondCategoryList = categoryList.Where(qitem => qitem.Tier == 2 && qitem.ParentId == firstItem.Id).ToList();
List<object> secondResultList = new List<object>();
foreach (var secondItem in secondCategoryList)
{
var secondGoodList = goodsList.Where(qitem => qitem.CategoryId == secondItem.Id).ToList();
List<object> thirdResultList = new List<object>();
var thirdCategoryList = categoryList.Where(qitem => qitem.Tier == 3 && qitem.ParentId == secondItem.Id).ToList();
foreach (var thirdItem in thirdCategoryList)
{
var thirdGoodList = goodsList.Where(qitem => qitem.CategoryId == thirdItem.Id).ToList();
thirdResultList.Add(new
{
PageId = thirdItem.Id + 100000,
PageName = thirdItem.Name,
PageUrl = "/pages/cats/cats?cat_id=" + thirdItem.Id,
PageType = Common.Enum.MallBase.PageTypeEnum.DiyPage,
IsParameter = 0,
TipText = "",
SelfPageName = thirdItem.Name,
ParameterValue = "",
SubMenuList = thirdGoodList.Select(qitem => new
{
PageId = qitem.Id + 100000,
PageName = qitem.Name,
PageUrl = "/pages/goods/goods?id=" + qitem.Id,
PageType = Common.Enum.MallBase.PageTypeEnum.DiyPage,
IsParameter = 0,
TipText = "",
SelfPageName = qitem.Name,
ParameterValue = "",
})
});
}
if (secondGoodList != null && secondGoodList.Count > 0)
{
thirdResultList.AddRange(secondGoodList.Select(qitem => new
{
PageId = qitem.Id + 100000,
PageName = qitem.Name,
PageUrl = "/pages/goods/goods?id=" + qitem.Id,
PageType = Common.Enum.MallBase.PageTypeEnum.DiyPage,
IsParameter = 0,
TipText = "",
SelfPageName = qitem.Name,
ParameterValue = "",
}));
}
secondResultList.Add(new
{
PageId = secondItem.Id + 100000,
PageName = secondItem.Name,
PageUrl = "/pages/cats/cats?cat_id=" + secondItem.Id,
PageType = Common.Enum.MallBase.PageTypeEnum.DiyPage,
IsParameter = 0,
TipText = "",
SelfPageName = secondItem.Name,
ParameterValue = "",
SubMenuList = thirdResultList,
});
}
if (rootGoodsList != null && rootGoodsList.Count > 0)
{
secondResultList.AddRange(rootGoodsList.Select(qitem => new
{
PageId = qitem.Id + 100000,
PageName = qitem.Name,
PageUrl = "/pages/goods/goods?id=" + qitem.Id,
PageType = Common.Enum.MallBase.PageTypeEnum.DiyPage,
IsParameter = 0,
TipText = "",
SelfPageName = qitem.Name,
ParameterValue = "",
}));
}
resultList.Add(new
{
PageId = firstItem.Id + 100000,
PageName = firstItem.Name,
PageUrl = "/pages/cats/cats?cat_id=" + firstItem.Id,
PageType = Common.Enum.MallBase.PageTypeEnum.DiyPage,
IsParameter = 0,
TipText = "",
SelfPageName = firstItem.Name,
ParameterValue = "",
SubMenuList = secondResultList,
});
}
}
return resultList;
}
/// <summary> /// <summary>
/// 首页查询使用 /// 首页查询使用
/// </summary> /// </summary>
......
...@@ -16,7 +16,7 @@ namespace Mall.Module.User ...@@ -16,7 +16,7 @@ namespace Mall.Module.User
public class SupplierModule public class SupplierModule
{ {
private RB_SupplierRepository supplierRepository = new RB_SupplierRepository(); private RB_SupplierRepository supplierRepository = new RB_SupplierRepository();
private RB_SupplierCommissionRepository supplierCommissionRepository = new RB_SupplierCommissionRepository();
private RB_ClientBankAccountRepository clientBankAccountRepository = new RB_ClientBankAccountRepository(); private RB_ClientBankAccountRepository clientBankAccountRepository = new RB_ClientBankAccountRepository();
/// <summary> /// <summary>
...@@ -34,10 +34,15 @@ namespace Mall.Module.User ...@@ -34,10 +34,15 @@ namespace Mall.Module.User
{ {
string ids = string.Join(",", list.Select(x => x.BankAccountId)); string ids = string.Join(",", list.Select(x => x.BankAccountId));
var backList = clientBankAccountRepository.GetList(new RB_ClientBankAccount(), "", ids); var backList = clientBankAccountRepository.GetList(new RB_ClientBankAccount(), "", ids);
ids = string.Join(",", list.Select(x => x.ID));
var supplierCommissionList = supplierCommissionRepository.GetListBySupplierIds(ids);
foreach (var item in list) foreach (var item in list)
{ {
item.ClientBankAccount = new RB_ClientBankAccount(); item.ClientBankAccount = new RB_ClientBankAccount();
item.ClientBankAccount = backList.Where(x => x.ID == item.BankAccountId).FirstOrDefault(); item.ClientBankAccount = backList.Where(x => x.ID == item.BankAccountId).FirstOrDefault();
item.SupplierCommissionList = new List<RB_SupplierCommission>();
item.SupplierCommissionList = supplierCommissionList.Where(x => x.SupplierId == item.ID).ToList();
} }
} }
return list; return list;
...@@ -56,10 +61,14 @@ namespace Mall.Module.User ...@@ -56,10 +61,14 @@ namespace Mall.Module.User
{ {
string ids = string.Join(",", list.Select(x => x.BankAccountId)); string ids = string.Join(",", list.Select(x => x.BankAccountId));
var backList = clientBankAccountRepository.GetList(new RB_ClientBankAccount(), "", ids); var backList = clientBankAccountRepository.GetList(new RB_ClientBankAccount(), "", ids);
ids = string.Join(",", list.Select(x => x.ID));
var supplierCommissionList = supplierCommissionRepository.GetListBySupplierIds(ids);
foreach (var item in list) foreach (var item in list)
{ {
item.ClientBankAccount = new RB_ClientBankAccount(); item.ClientBankAccount = new RB_ClientBankAccount();
item.ClientBankAccount = backList.Where(x => x.ID == item.BankAccountId).FirstOrDefault(); item.ClientBankAccount = backList.Where(x => x.ID == item.BankAccountId).FirstOrDefault();
item.SupplierCommissionList = new List<RB_SupplierCommission>();
item.SupplierCommissionList = supplierCommissionList.Where(x => x.SupplierId == item.ID).ToList();
} }
} }
return list; return list;
...@@ -120,7 +129,8 @@ namespace Mall.Module.User ...@@ -120,7 +129,8 @@ namespace Mall.Module.User
{ nameof(RB_Supplier.Name),model.Name}, { nameof(RB_Supplier.Name),model.Name},
{ nameof(RB_Supplier.Mobile),model.Mobile}, { nameof(RB_Supplier.Mobile),model.Mobile},
{ nameof(RB_Supplier.Address),model.Address}, { nameof(RB_Supplier.Address),model.Address},
{ nameof(RB_Supplier.UpdateDate),model.UpdateDate} { nameof(RB_Supplier.UpdateDate),model.UpdateDate},
{ nameof(RB_Supplier.Introducer),model.Introducer}
}; };
IList<WhereHelper> whereHelpersSupplier = new List<WhereHelper>() IList<WhereHelper> whereHelpersSupplier = new List<WhereHelper>()
{ {
...@@ -128,6 +138,50 @@ namespace Mall.Module.User ...@@ -128,6 +138,50 @@ namespace Mall.Module.User
}; };
flag = supplierRepository.Update(filedsSupplier, whereHelpersSupplier); flag = supplierRepository.Update(filedsSupplier, whereHelpersSupplier);
} }
var supplierCommissionList = supplierCommissionRepository.GetSupplierCommissionList(new RB_SupplierCommission { SupplierId = model.ID });
if (model.SupplierCommissionList != null && model.SupplierCommissionList.Any())
{
foreach (var item in model.SupplierCommissionList)
{
var commissionModel = supplierCommissionList.Where(x => x.CommissionType == item.CommissionType).FirstOrDefault();
if (commissionModel != null)
{
commissionModel.CommissionRate = item.CommissionRate;
supplierCommissionRepository.Update(commissionModel);
}
else
{
item.CreateDate = System.DateTime.Now;
item.UpdateDate = System.DateTime.Now;
item.MallBaseId = model.MallBaseId;
item.TenantId = model.TenantId;
item.SupplierId = model.ID;
item.Status = model.Status;
supplierCommissionRepository.Insert(item);
}
}
}
else
{
if (supplierCommissionList != null && supplierCommissionList.Any())
{
foreach (var item in supplierCommissionList)
{
IDictionary<string, object> filedsSupplierCommission = new Dictionary<string, object>()
{
{ nameof(RB_SupplierCommission.Status),1},
{ nameof(RB_SupplierCommission.UpdateDate),model.UpdateDate}
};
IList<WhereHelper> whereHelpersSupplierCommission = new List<WhereHelper>()
{
new WhereHelper (){ FiledName=nameof(RB_SupplierCommission.ID),FiledValue=item.ID,OperatorEnum=OperatorEnum.Equal}
};
supplierCommissionRepository.Update(filedsSupplierCommission, whereHelpersSupplierCommission);
}
}
}
} }
else else
{ {
...@@ -138,6 +192,17 @@ namespace Mall.Module.User ...@@ -138,6 +192,17 @@ namespace Mall.Module.User
{ {
model.BankAccountId = id; model.BankAccountId = id;
int supplierId = supplierRepository.Insert(model); int supplierId = supplierRepository.Insert(model);
if (model.SupplierCommissionList != null && model.SupplierCommissionList.Any())
{
model.SupplierCommissionList.ForEach(x => x.CreateDate = model.CreateDate);
model.SupplierCommissionList.ForEach(x => x.UpdateDate = model.UpdateDate);
model.SupplierCommissionList.ForEach(x => x.MallBaseId = model.MallBaseId);
model.SupplierCommissionList.ForEach(x => x.TenantId = model.TenantId);
model.SupplierCommissionList.ForEach(x => x.SupplierId = supplierId);
model.SupplierCommissionList.ForEach(x => x.Status = 0);
supplierCommissionRepository.InsertBatch(model.SupplierCommissionList);
}
flag = supplierId > 0; flag = supplierId > 0;
//IDictionary<string, object> fileds = new Dictionary<string, object>() //IDictionary<string, object> fileds = new Dictionary<string, object>()
//{ //{
...@@ -195,6 +260,16 @@ namespace Mall.Module.User ...@@ -195,6 +260,16 @@ namespace Mall.Module.User
new WhereHelper (){ FiledName=nameof(RB_Supplier.ID),FiledValue=ID,OperatorEnum=OperatorEnum.Equal} new WhereHelper (){ FiledName=nameof(RB_Supplier.ID),FiledValue=ID,OperatorEnum=OperatorEnum.Equal}
}; };
flag = supplierRepository.Update(filedsSupplier, whereHelpersSupplier); flag = supplierRepository.Update(filedsSupplier, whereHelpersSupplier);
IDictionary<string, object> filedsSupplierCommission = new Dictionary<string, object>()
{
{ nameof(RB_SupplierCommission.Status),(int) Common.Enum.DateStateEnum.Delete}
};
IList<WhereHelper> whereHelpersSupplierCommission = new List<WhereHelper>()
{
new WhereHelper (){ FiledName=nameof(RB_SupplierCommission.SupplierId),FiledValue=ID,OperatorEnum=OperatorEnum.Equal}
};
supplierCommissionRepository.Update(filedsSupplierCommission, whereHelpersSupplierCommission);
} }
} }
catch (Exception ex) catch (Exception ex)
......
...@@ -12,6 +12,7 @@ using Mall.Repository.Product; ...@@ -12,6 +12,7 @@ using Mall.Repository.Product;
using Mall.Model.Extend.Product; using Mall.Model.Extend.Product;
using Microsoft.Extensions.Configuration; using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Configuration.Json; using Microsoft.Extensions.Configuration.Json;
using Mall.Model.Entity.MarketingCenter;
namespace Mall.Module.User namespace Mall.Module.User
{ {
...@@ -81,6 +82,11 @@ namespace Mall.Module.User ...@@ -81,6 +82,11 @@ namespace Mall.Module.User
/// vip购买仓储层 /// vip购买仓储层
/// </summary> /// </summary>
private readonly RB_Vip_BuyRepository vipBuyRepository = new RB_Vip_BuyRepository(); private readonly RB_Vip_BuyRepository vipBuyRepository = new RB_Vip_BuyRepository();
private Repository.MarketingCenter.RB_DiscountCouponRepository discountCouponRepository = new Repository.MarketingCenter.RB_DiscountCouponRepository();
private Repository.User.RB_Member_CouponRepository memberCouponRepository = new Repository.User.RB_Member_CouponRepository();
/// <summary> /// <summary>
/// 初始化分销基础配置 /// 初始化分销基础配置
/// </summary> /// </summary>
...@@ -349,6 +355,99 @@ namespace Mall.Module.User ...@@ -349,6 +355,99 @@ namespace Mall.Module.User
member_UserRepository.Update(keyValues1, wheres1); member_UserRepository.Update(keyValues1, wheres1);
} }
//2020-08-04 add by:W 购买并支付自动发放优惠券
var couponList = discountCouponRepository.GetSelfmotionCouponList(new Model.Extend.MarketingCenter.RB_DiscountCoupon_Extend { TenantId = oldOrder.TenantId, MallBaseId = oldOrder.MallBaseId, UserId = oldOrder.UserId ?? 0, TriggerType = 2 });
if (couponList != null && couponList.Any(x => x.TotalNum == -1 || ((x.TotalNum - x.ReceiveNum) > 0)))//存在满足条件的优惠券可以发放
{
bool isReceive = false;
//查询已发放的优惠券信息
var memberCouponList = memberCouponRepository.GetAutoMemberCouponPageList(new RB_Member_DiscountCoupon_Extend { UserId = oldOrder.UserId, GetType =2, TenantId = oldOrder.TenantId, MallBaseId = oldOrder.MallBaseId });
foreach (var item in couponList.Where(x => x.TotalNum == -1 || ((x.TotalNum - x.ReceiveNum) > 0)))//判断当前优惠券是否已超过领取数
{
int membercouponCoun = memberCouponList.Where(x => x.CouponId == item.ID).Count();
if (!isReceive && membercouponCoun < item.GrantNum)//此次没有领取,并且当前优惠券没有超过领取数量
{
var trans = memberCouponRepository.DbTransaction;
try
{
RB_Member_DiscountCoupon nowMemberCoupon = new RB_Member_DiscountCoupon
{
Id = 0,
TenantId = oldOrder.TenantId,
MallBaseId = oldOrder.MallBaseId,
Status = 0,
CreateDate = System.DateTime.Now,
UserId = oldOrder.UserId,
Description = item.TriggerType == 1 ? "分享自动发放优惠券" : (item.TriggerType == 2 ? "购买并付款自动发放优惠券" : "新人领劵自动发放优惠券"),
Remarks = item.TriggerType == 1 ? "分享" : (item.TriggerType == 2 ? "购买并付款" : "新人领劵"),
UseState = 0,
CouponId = item.ID,
StartDate = item.IndateType == Common.Enum.MarketingCenter.IndateTypeEnum.DayHorizon ? System.DateTime.Now : item.StartDate,
EndDate = item.IndateType == Common.Enum.MarketingCenter.IndateTypeEnum.DayHorizon ? System.DateTime.Now.AddDays(item.IndateDay) : item.EndDate,
GetType = item.TriggerType,
UseType = item.UseType,
MinConsumePrice = item.MinConsumePrice,
DiscountsPrice = item.DiscountsPrice,
MaxDiscountsPrice = item.MaxDiscountsPrice,
CouponType = item.CouponType,
Name = item.Name
};
isReceive = memberCouponRepository.Insert(nowMemberCoupon, trans) > 0;
if (isReceive)//更新当前优惠券的领取数量
{
Dictionary<string, object> cols1;
if (item.TotalNum != -1)
{
cols1 = new Dictionary<string, object>()
{
{ nameof(RB_DiscountCoupon.ReceiveNum),item.ReceiveNum+1},
{ nameof(RB_DiscountCoupon.TotalNum),item.TotalNum - 1},
{ nameof(RB_DiscountCoupon.UpdateDate),DateTime.Now},
};
}
else
{
cols1 = new Dictionary<string, object>()
{
{ nameof(RB_DiscountCoupon.ReceiveNum),item.ReceiveNum+1},
{ nameof(RB_DiscountCoupon.UpdateDate),DateTime.Now},
};
}
List<WhereHelper> wheres1 = new List<WhereHelper>()
{
new WhereHelper(){
FiledName=nameof(RB_DiscountCoupon.ID),
FiledValue=item.ID,
OperatorEnum=OperatorEnum.Equal
},
new WhereHelper(){
FiledName=nameof(RB_DiscountCoupon.TenantId),
FiledValue=item.TenantId,
OperatorEnum=OperatorEnum.Equal
},
new WhereHelper(){
FiledName=nameof(RB_DiscountCoupon.MallBaseId),
FiledValue=item.MallBaseId,
OperatorEnum=OperatorEnum.Equal
}
};
discountCouponRepository.Update(cols1, wheres1, trans);
}
memberCouponRepository.DBSession.Commit();
return true;
}
catch (Exception ex)
{
LogHelper.Write(ex, "AutoCoupon");
memberCouponRepository.DBSession.Rollback("AutoCoupon");
return false;
}
}
}
}
//赠送粉象等级(+VIP返佣) ld 2020-08-03 //赠送粉象等级(+VIP返佣) ld 2020-08-03
var FXCOrder = oldOrder.RefMapperTo<RB_Goods_Order_Extend>(); var FXCOrder = oldOrder.RefMapperTo<RB_Goods_Order_Extend>();
FXCOrder.DetailList = orderGoodsList; FXCOrder.DetailList = orderGoodsList;
...@@ -998,7 +1097,7 @@ namespace Mall.Module.User ...@@ -998,7 +1097,7 @@ namespace Mall.Module.User
flag = vipBuyRepository.Update(keyValuesVip, wheresVip, trans);//更新会员购买记录 2020-07-17 Add By: W End flag = vipBuyRepository.Update(keyValuesVip, wheresVip, trans);//更新会员购买记录 2020-07-17 Add By: W End
//2020-07-20 Add By:W //2020-07-20 Add By:W
Dictionary<string, object> keyValuesDistributor = new Dictionary<string, object>() { Dictionary<string, object> keyValuesDistributor = new Dictionary<string, object>() {
{ nameof(RB_Distributor_Info.VipExpiryDate),distributorModel.VipExpiryDate}, { nameof(RB_Distributor_Info.VipExpiryDate),distributorModel.VipExpiryDate},
......
using Mall.Model.Entity.BaseSetUp;
using Mall.Model.Extend.BaseSetUp;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Mall.Repository.BaseSetUp
{
/// <summary>
/// 分类包邮规则分类仓储层
/// </summary>
public class RB_FreeShippingCategoryRepository : RepositoryBase<RB_FreeShippingCategory>
{
/// <summary>
/// 表名称
/// </summary>
public string TableName { get { return nameof(RB_FreeShippingCategory); } }
/// <summary>
/// 分类包邮规则分类信息列表
/// </summary>
/// <param name="pageIndex">页码</param>
/// <param name="pageSize">每页显示条数</param>
/// <param name="rowCount">总条数</param>
/// <param name="query">查询条件</param>
/// <returns></returns>
public List<RB_FreeShippingCategory_Extend> GetFreeShippingCategoryPage(int pageIndex, int pageSize, out long rowCount, RB_FreeShippingCategory_Extend query)
{
StringBuilder builder = new StringBuilder();
builder.Append($" SELECT a.*,b.`Name` as CategoryName FROM {TableName} as a LEFT JOIN rb_product_category as b on a.CategoryId=b.Id WHERE a.`Status`=0 and b.`Status`=0");
if (query != null)
{
if (query.ID > 0)
{
builder.Append($" AND a.{nameof(RB_FreeShippingCategory_Extend.ID)}={query.ID}");
}
if (query.TenantId > 0)
{
builder.Append($" AND a.{nameof(RB_FreeShippingCategory_Extend.TenantId)}={query.TenantId}");
}
if (query.MallBaseId > 0)
{
builder.Append($" AND a.{nameof(RB_FreeShippingCategory_Extend.MallBaseId)}={query.MallBaseId}");
}
if (query.FreeShippingId > 0)
{
builder.Append($" AND a.{nameof(RB_FreeShippingCategory_Extend.FreeShippingId)}={query.FreeShippingId}");
}
if (!string.IsNullOrWhiteSpace(query.FreeShippingIds))
{
builder.Append($" AND a.{nameof(RB_FreeShippingCategory_Extend.FreeShippingId)} in ({query.FreeShippingIds})");
}
if (!string.IsNullOrWhiteSpace(query.CategoryIds))
{
builder.Append($" AND a.{nameof(RB_FreeShippingCategory_Extend.CategoryId)} in ({query.CategoryIds})");
}
}
return GetPage<RB_FreeShippingCategory_Extend>(pageIndex, pageSize, out rowCount, builder.ToString()).ToList();
}
/// <summary>
/// 分类包邮规则分类信息列表
/// </summary>
/// <param name="pageIndex">页码</param>
/// <param name="pageSize">每页显示条数</param>
/// <param name="rowCount">总条数</param>
/// <param name="query">查询条件</param>
/// <returns></returns>
public List<RB_FreeShippingCategory_Extend> GetFreeShippingCategoryList(RB_FreeShippingCategory_Extend query)
{
StringBuilder builder = new StringBuilder();
builder.Append($" SELECT a.*,b.`Name` as CategoryName FROM {TableName} as a LEFT JOIN rb_product_category as b on a.CategoryId=b.Id WHERE a.`Status`=0 and b.`Status`=0");
if (query != null)
{
if (query.ID > 0)
{
builder.Append($" AND a.{nameof(RB_FreeShippingCategory_Extend.ID)}={query.ID}");
}
if (query.TenantId > 0)
{
builder.Append($" AND a.{nameof(RB_FreeShippingCategory_Extend.TenantId)}={query.TenantId}");
}
if (query.MallBaseId > 0)
{
builder.Append($" AND a.{nameof(RB_FreeShippingCategory_Extend.MallBaseId)}={query.MallBaseId}");
}
if (query.FreeShippingId > 0)
{
builder.Append($" AND a.{nameof(RB_FreeShippingCategory_Extend.FreeShippingId)}={query.FreeShippingId}");
}
if (!string.IsNullOrWhiteSpace(query.FreeShippingIds))
{
builder.Append($" AND a.{nameof(RB_FreeShippingCategory_Extend.FreeShippingId)} in ({query.FreeShippingIds})");
}
if (!string.IsNullOrWhiteSpace(query.CategoryIds))
{
builder.Append($" AND a.{nameof(RB_FreeShippingCategory_Extend.CategoryId)} in ({query.CategoryIds})");
}
}
return Get<RB_FreeShippingCategory_Extend>(builder.ToString()).ToList();
}
}
}
using Mall.Model.Entity.BaseSetUp;
using Mall.Model.Extend.BaseSetUp;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Mall.Repository.BaseSetUp
{
/// <summary>
/// 分类包邮规则仓储层
/// </summary>
public class RB_FreeShippingRepository : RepositoryBase<RB_FreeShipping>
{
/// <summary>
/// 表名称
/// </summary>
public string TableName { get { return nameof(RB_FreeShipping); } }
/// <summary>
/// 物料规则列表
/// </summary>
/// <param name="pageIndex">页码</param>
/// <param name="pageSize">每页显示条数</param>
/// <param name="rowCount">总条数</param>
/// <param name="query">查询条件</param>
/// <returns></returns>
public List<RB_FreeShipping_Extend> GetPageListRepository(int pageIndex, int pageSize, out long rowCount, RB_FreeShipping_Extend query)
{
StringBuilder builder = new StringBuilder();
builder.Append($" SELECT * FROM {TableName} WHERE {nameof(RB_FreeShipping_Extend.Status)}=0");
if (query != null)
{
// where += $@" and {nameof(RB_Customer_InfoCreate.CustomerId)}={dmodel.CustomerId}";
if (query.TenantId > 0)
{
builder.Append($" AND {nameof(RB_FreeShipping_Extend.TenantId)}={query.TenantId}");
}
if (query.TenantId > 0)
{
builder.Append($" AND {nameof(RB_FreeShipping_Extend.MallBaseId)}={query.MallBaseId}");
}
}
return GetPage<RB_FreeShipping_Extend>(pageIndex, pageSize, out rowCount, builder.ToString()).ToList();
}
/// <summary>
/// 物流规则列表
/// </summary>
/// <param name="pageIndex">页码</param>
/// <param name="pageSize">每页显示条数</param>
/// <param name="rowCount">总条数</param>
/// <param name="query">查询条件</param>
/// <returns></returns>
public List<RB_FreeShipping_Extend> GetFreeShippingList(RB_FreeShipping_Extend query)
{
StringBuilder builder = new StringBuilder();
builder.Append($" SELECT * FROM {TableName} WHERE {nameof(RB_FreeShipping_Extend.Status)}=0 ");
if (query != null)
{
if (query.ID > 0)
{
builder.Append($" AND {nameof(RB_FreeShipping_Extend.ID)}={query.ID}");
}
if (query.TenantId > 0)
{
builder.Append($" AND {nameof(RB_FreeShipping_Extend.TenantId)}={query.TenantId}");
}
if (query.MallBaseId > 0)
{
builder.Append($" AND {nameof(RB_FreeShipping_Extend.MallBaseId)}={query.MallBaseId}");
}
}
return Get<RB_FreeShipping_Extend>(builder.ToString()).ToList();
}
}
}
...@@ -48,6 +48,7 @@ LEFT JOIN {UserTableName} as b on a.UserId = b.ID WHERE a.{nameof(RB_Coupon_Se ...@@ -48,6 +48,7 @@ LEFT JOIN {UserTableName} as b on a.UserId = b.ID WHERE a.{nameof(RB_Coupon_Se
{ {
builder.Append($" AND a.{nameof(RB_Coupon_SelfMotionMember_Extend.UserId)}={query.UserId}"); builder.Append($" AND a.{nameof(RB_Coupon_SelfMotionMember_Extend.UserId)}={query.UserId}");
} }
//if (!string.IsNullOrWhiteSpace(query.PriceIds)) //if (!string.IsNullOrWhiteSpace(query.PriceIds))
//{ //{
// builder.Append($" AND a.{nameof(RB_Coupon_SelfMotionMember_Extend.RulesPriceId)} in ({query.PriceIds})"); // builder.Append($" AND a.{nameof(RB_Coupon_SelfMotionMember_Extend.RulesPriceId)} in ({query.PriceIds})");
......
...@@ -281,7 +281,7 @@ as t LEFT JOIN (SELECT CouponId,COUNT(*) as MemberNum from rb_member_discountc ...@@ -281,7 +281,7 @@ as t LEFT JOIN (SELECT CouponId,COUNT(*) as MemberNum from rb_member_discountc
where += $" AND a.{nameof(RB_Member_DiscountCoupon_Extend.EndDate)}<NOW() AND a.{nameof(RB_Member_DiscountCoupon_Extend.UseState)}=0"; where += $" AND a.{nameof(RB_Member_DiscountCoupon_Extend.EndDate)}<NOW() AND a.{nameof(RB_Member_DiscountCoupon_Extend.UseState)}=0";
} }
} }
string sql = @$" SELECT a.ID as MemberCouponId,a.UseState,a.StartDate,a.EndDate,b.ID,b.`Name`,b.`Describe`,b.CouponType,b.UseType,a.GetType, string sql = @$" SELECT a.ID as MemberCouponId,a.UseState,a.StartDate,a.EndDate,b.ID,b.`Name`,b.`Describe`,b.CouponType,b.UseType,a.GetType,a.CreateDate,
b.MinConsumePrice,b.MaxDiscountsPrice,b.DiscountsPrice,b.IndateDay,b.IndateType from rb_member_discountcoupon as a LEFT JOIN rb_discountcoupon as b b.MinConsumePrice,b.MaxDiscountsPrice,b.DiscountsPrice,b.IndateDay,b.IndateType from rb_member_discountcoupon as a LEFT JOIN rb_discountcoupon as b
on a.CouponId=b.ID {where} "; on a.CouponId=b.ID {where} ";
return GetPage<RB_DiscountCoupon_Extend>(pageIndex, pageSize, out rowCount, sql).ToList(); return GetPage<RB_DiscountCoupon_Extend>(pageIndex, pageSize, out rowCount, sql).ToList();
...@@ -290,6 +290,50 @@ on a.CouponId=b.ID {where} "; ...@@ -290,6 +290,50 @@ on a.CouponId=b.ID {where} ";
#endregion #endregion
#region 自动发放优惠券信息
/// <summary>
/// 获取自动发放优惠券信息
/// </summary>
/// <param name="query">查询条件</param>
/// <returns></returns>
public List<RB_DiscountCoupon_Extend> GetSelfmotionCouponList(RB_DiscountCoupon_Extend query)
{
StringBuilder builder = new StringBuilder();
string userWhere = "";
// builder.Append(@$" SELECT a.*,b.TriggerType,b.GrantNum from rb_coupon_selfmotion as b LEFT JOIN {TableName} as a on a.ID=b.DiscountCouponId WHERE a.{nameof(RB_DiscountCoupon_Extend.Status)}=0 and b.`Status`=0 and (a.IndateType=1 or (a.IndateType=2 and a.StartDate<NOW() and a.EndDate>NOW()))");
if (query != null)
{
if (query.TenantId > 0)
{
builder.Append($" AND a.{nameof(RB_DiscountCoupon_Extend.TenantId)}={query.TenantId}");
}
if (query.TenantId > 0)
{
builder.Append($" AND a.{nameof(RB_DiscountCoupon_Extend.MallBaseId)}={query.MallBaseId}");
}
if (query.TriggerType > 0)
{
builder.Append($" AND b.{nameof(RB_DiscountCoupon_Extend.TriggerType)}={query.TriggerType}");
}
if (query.UserId > 0)
{
userWhere += $"and c.UserId={query.UserId}";
}
}
string sql = @$"SELECT a.*,b.TriggerType,b.GrantNum from rb_coupon_selfmotion as b LEFT JOIN {TableName} as a on a.ID=b.DiscountCouponId
where (a.IndateType=1 or (a.IndateType=2 and a.StartDate<NOW() and a.EndDate>NOW()))
and a.`Status`=0 and b.`Status`=0 and IsAll=0 {builder.ToString()}
UNION ALL
SELECT a.*,b.TriggerType,b.GrantNum from rb_coupon_selfmotion as b LEFT JOIN rb_discountcoupon as a on a.ID=b.DiscountCouponId
LEFT JOIN rb_coupon_selfmotionmember as c on c.SelfMotionId=b.ID
where (a.IndateType=1 or (a.IndateType=2 and a.StartDate<NOW() and a.EndDate>NOW())) {builder.ToString()}
and a.`Status`=0 and b.`Status`=0 and IsAll=1 {userWhere} ";
return Get<RB_DiscountCoupon_Extend> (sql).ToList();
}
#endregion
} }
} }
...@@ -164,9 +164,10 @@ where {where} group by g.Id order by {orderBy}"; ...@@ -164,9 +164,10 @@ where {where} group by g.Id order by {orderBy}";
where += $@" and g.{nameof(RB_Goods_Extend.CreateDate)} <='{dmodel.EndTime + " 23:59:59"}'"; where += $@" and g.{nameof(RB_Goods_Extend.CreateDate)} <='{dmodel.EndTime + " 23:59:59"}'";
} }
string sql = $@"select g.* from RB_Goods g string sql = $@"
inner join rb_goods_category c on g.Id=c.GoodsId SELECT g.*,C.CategoryId
where {where} group by g.Id order by g.CreateDate desc"; FROM RB_Goods g INNER JOIN rb_goods_category c on g.Id=c.GoodsId
WHERE {where} group by g.Id order by g.CreateDate desc";
return Get<RB_Goods_Extend>(sql).ToList(); return Get<RB_Goods_Extend>(sql).ToList();
} }
......
...@@ -37,9 +37,10 @@ namespace Mall.Repository.Product ...@@ -37,9 +37,10 @@ namespace Mall.Repository.Product
where += $@" and gc.{nameof(RB_Goods_Category.GoodsId)} in({dmodel.GoodsIds})"; where += $@" and gc.{nameof(RB_Goods_Category.GoodsId)} in({dmodel.GoodsIds})";
} }
string sql = $@"select gc.*,pc.Name as CategoryName,pc.IsForeignShare from RB_Goods_Category gc string sql = $@"
inner join rb_product_category pc on gc.CategoryId=pc.Id SELECT gc.*,pc.Name as CategoryName,pc.IsForeignShare,pc.ParentId,pc.Tier
where {where} order by gc.Id desc"; FROM RB_Goods_Category gc inner join rb_product_category pc on gc.CategoryId=pc.Id
WHERE {where} ORDER BY gc.Id DESC ";
return Get<RB_Goods_Category_Extend>(sql).ToList(); return Get<RB_Goods_Category_Extend>(sql).ToList();
} }
} }
......
...@@ -998,7 +998,7 @@ public List<OrderStatistics_Query> GetOrderProfitLossList(int pageIndex, int pag ...@@ -998,7 +998,7 @@ public List<OrderStatistics_Query> GetOrderProfitLossList(int pageIndex, int pag
} }
if (!string.IsNullOrWhiteSpace(dmodel.EndDate)) if (!string.IsNullOrWhiteSpace(dmodel.EndDate))
{ {
where += $" and DATE_FORMAT(a.CreateDate,'%Y-%m-%d' )< DATE_FORMAT('{dmodel.StartDate}','%Y-%m-%d' ) "; where += $" and DATE_FORMAT(a.CreateDate,'%Y-%m-%d' )< DATE_FORMAT('{dmodel.EndDate}','%Y-%m-%d' ) ";
} }
} }
......
...@@ -63,7 +63,8 @@ namespace Mall.Repository.User ...@@ -63,7 +63,8 @@ namespace Mall.Repository.User
{ {
builder.Append($" AND a.{nameof(RB_Member_DiscountCoupon_Extend.CouponId)} in ({query.CouponIds})"); builder.Append($" AND a.{nameof(RB_Member_DiscountCoupon_Extend.CouponId)} in ({query.CouponIds})");
} }
if (!string.IsNullOrEmpty(query.Ids)) { if (!string.IsNullOrEmpty(query.Ids))
{
builder.Append($" AND a.{nameof(RB_Member_DiscountCoupon_Extend.Id)} in ({query.Ids})"); builder.Append($" AND a.{nameof(RB_Member_DiscountCoupon_Extend.Id)} in ({query.Ids})");
} }
if (query.UseState >= 0) if (query.UseState >= 0)
...@@ -391,7 +392,7 @@ LEFT JOIN rb_member_user as d on d.AliasName=a.UserId where a.UseState=1 {buil ...@@ -391,7 +392,7 @@ LEFT JOIN rb_member_user as d on d.AliasName=a.UserId where a.UseState=1 {buil
/// </summary> /// </summary>
/// <param name="query">查询条件</param> /// <param name="query">查询条件</param>
/// <returns></returns> /// <returns></returns>
public List<RB_Member_DiscountCoupon_Extend> GetAllMemberCouponPageList( RB_Member_DiscountCoupon_Extend query) public List<RB_Member_DiscountCoupon_Extend> GetAllMemberCouponPageList(RB_Member_DiscountCoupon_Extend query)
{ {
string where = " where a.`Status`=0 "; string where = " where a.`Status`=0 ";
if (query != null) if (query != null)
...@@ -424,7 +425,41 @@ LEFT JOIN rb_member_user as d on d.AliasName=a.UserId where a.UseState=1 {buil ...@@ -424,7 +425,41 @@ LEFT JOIN rb_member_user as d on d.AliasName=a.UserId where a.UseState=1 {buil
} }
} }
string sql = @$" SELECT a.* from rb_member_discountcoupon as a {where} "; string sql = @$" SELECT a.* from rb_member_discountcoupon as a {where} ";
return Get<RB_Member_DiscountCoupon_Extend>( sql).ToList(); return Get<RB_Member_DiscountCoupon_Extend>(sql).ToList();
}
/// <summary>
/// 自动发放优惠券信息
/// </summary>
/// <param name="query">查询条件</param>
/// <returns></returns>
public List<RB_Member_DiscountCoupon_Extend> GetAutoMemberCouponPageList(RB_Member_DiscountCoupon_Extend query)
{
string where = " where a.`Status`=0 ";
if (query != null)
{
if (query.TenantId > 0)
{
where += $" AND a.{nameof(RB_Member_DiscountCoupon_Extend.TenantId)}={query.TenantId}";
}
if (query.MallBaseId > 0)
{
where += $" AND a.{nameof(RB_Member_DiscountCoupon_Extend.MallBaseId)}={query.MallBaseId}";
}
if (query.UserId > 0)
{
where += $" AND a.{nameof(RB_Member_DiscountCoupon_Extend.UserId)}={query.UserId}";
}
if (query.GetType > 0)
{
where += $" AND a.{nameof(RB_Member_DiscountCoupon_Extend.GetType)}={query.GetType}";
}
}
string sql = @$" SELECT a.* from rb_member_discountcoupon as a {where} ";
return Get<RB_Member_DiscountCoupon_Extend>(sql).ToList();
} }
} }
} }
using Mall.Model.Entity.User;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Mall.Repository.User
{
public class RB_SupplierCommissionRepository:RepositoryBase<RB_SupplierCommission>
{
/// <summary>
/// 表名称
/// </summary>
public string TableName { get { return nameof(RB_SupplierCommission); } }
/// <summary>
/// 供应商返佣规则
/// </summary>
/// <param name="pageIndex">页码</param>
/// <param name="pageSize">每页显示条数</param>
/// <param name="rowCount">总条数</param>
/// <param name="query">查询条件</param>
/// <returns></returns>
public List<RB_SupplierCommission> GetSupplierCommissionPage(int pageIndex, int pageSize, out long rowCount, RB_SupplierCommission query)
{
StringBuilder builder = new StringBuilder();
builder.Append($" SELECT * FROM {TableName} WHERE {nameof(RB_SupplierCommission.Status)}=0");
if (query != null)
{
// where += $@" and {nameof(RB_Customer_InfoCreate.CustomerId)}={dmodel.CustomerId}";
if (query.TenantId > 0)
{
builder.Append($" AND {nameof(RB_SupplierCommission.TenantId)}={query.TenantId}");
}
if (query.TenantId > 0)
{
builder.Append($" AND {nameof(RB_SupplierCommission.MallBaseId)}={query.MallBaseId}");
}
if (query.CommissionType > 0)
{
builder.Append($" AND {nameof(RB_SupplierCommission.CommissionType)}={query.CommissionType}");
}
if (query.SupplierId > 0)
{
builder.Append($" AND {nameof(RB_SupplierCommission.SupplierId)}={query.SupplierId}");
}
}
return GetPage<RB_SupplierCommission>(pageIndex, pageSize, out rowCount, builder.ToString()).ToList();
}
/// <summary>
/// 供应商返佣规则
/// </summary>
/// <param name="pageIndex">页码</param>
/// <param name="pageSize">每页显示条数</param>
/// <param name="rowCount">总条数</param>
/// <param name="query">查询条件</param>
/// <returns></returns>
public List<RB_SupplierCommission> GetSupplierCommissionList(RB_SupplierCommission query)
{
StringBuilder builder = new StringBuilder();
builder.Append($" SELECT * FROM {TableName} WHERE {nameof(RB_SupplierCommission.Status)}=0 ");
if (query != null)
{
// where += $@" and {nameof(RB_Customer_InfoCreate.CustomerId)}={dmodel.CustomerId}";
if (query.TenantId > 0)
{
builder.Append($" AND {nameof(RB_SupplierCommission.TenantId)}={query.TenantId}");
}
if (query.TenantId > 0)
{
builder.Append($" AND {nameof(RB_SupplierCommission.MallBaseId)}={query.MallBaseId}");
}
if (query.CommissionType > 0)
{
builder.Append($" AND {nameof(RB_SupplierCommission.CommissionType)}={query.CommissionType}");
}
if (query.SupplierId > 0)
{
builder.Append($" AND {nameof(RB_SupplierCommission.SupplierId)}={query.SupplierId}");
}
}
return Get<RB_SupplierCommission>(builder.ToString()).ToList();
}
/// <summary>
/// 供应商返佣规则
/// </summary>
/// <param name="pageIndex">页码</param>
/// <param name="pageSize">每页显示条数</param>
/// <param name="rowCount">总条数</param>
/// <param name="query">查询条件</param>
/// <returns></returns>
public List<RB_SupplierCommission> GetListBySupplierIds(string ids)
{
StringBuilder builder = new StringBuilder();
builder.Append($" SELECT * FROM {TableName} WHERE {nameof(RB_SupplierCommission.Status)}=0 ");
if (!string.IsNullOrWhiteSpace(ids))
{
builder.Append($" AND {nameof(RB_SupplierCommission.SupplierId)} in ({ids})");
}
return Get<RB_SupplierCommission>(builder.ToString()).ToList();
}
}
}
...@@ -24,7 +24,7 @@ namespace Mall.Repository.User ...@@ -24,7 +24,7 @@ namespace Mall.Repository.User
/// <returns></returns> /// <returns></returns>
public List<RB_Supplier_Extend> GetPageList(int pageIndex, int pageSize, out long rowCount, RB_Supplier_Extend dmodel) public List<RB_Supplier_Extend> GetPageList(int pageIndex, int pageSize, out long rowCount, RB_Supplier_Extend dmodel)
{ {
string where = " 1=1 AND Status=0 "; string where = " where 1=1 AND a.Status=0 ";
if (dmodel.TenantId > 0) if (dmodel.TenantId > 0)
{ {
where += $@" and a.{nameof(RB_Supplier.TenantId)}={dmodel.TenantId}"; where += $@" and a.{nameof(RB_Supplier.TenantId)}={dmodel.TenantId}";
...@@ -37,7 +37,7 @@ namespace Mall.Repository.User ...@@ -37,7 +37,7 @@ namespace Mall.Repository.User
{ {
where += $@" and a.{nameof(RB_Supplier.Name)} like '%{dmodel.Name}%'"; where += $@" and a.{nameof(RB_Supplier.Name)} like '%{dmodel.Name}%'";
} }
string sql = $@"select a.*,b.`Name` as IntroducerName from rb_distributor_info as a LEFT JOIN rb_member_user as b on a.Introducer=b.UserId {where} order by Id desc"; string sql = $@"select a.*,b.`Name` as IntroducerName from {TableName} as a LEFT JOIN rb_distributor_info as b on a.Introducer=b.UserId {where} order by a.Id desc";
return GetPage<RB_Supplier_Extend>(pageIndex, pageSize, out rowCount, sql).ToList(); return GetPage<RB_Supplier_Extend>(pageIndex, pageSize, out rowCount, sql).ToList();
} }
...@@ -48,7 +48,7 @@ namespace Mall.Repository.User ...@@ -48,7 +48,7 @@ namespace Mall.Repository.User
/// <returns></returns> /// <returns></returns>
public List<RB_Supplier_Extend> GetList(RB_Supplier_Extend dmodel) public List<RB_Supplier_Extend> GetList(RB_Supplier_Extend dmodel)
{ {
string where = " 1=1 AND Status=0 "; string where = " where 1=1 AND a.Status=0 ";
if (dmodel.TenantId > 0) if (dmodel.TenantId > 0)
{ {
where += $@" and a.{nameof(RB_Supplier.TenantId)}={dmodel.TenantId}"; where += $@" and a.{nameof(RB_Supplier.TenantId)}={dmodel.TenantId}";
...@@ -65,7 +65,7 @@ namespace Mall.Repository.User ...@@ -65,7 +65,7 @@ namespace Mall.Repository.User
{ {
where += $@" and a.{nameof(RB_Supplier.ID)} in({dmodel.SupplierIds})"; where += $@" and a.{nameof(RB_Supplier.ID)} in({dmodel.SupplierIds})";
} }
string sql = $@"select a.*,b.`Name` as IntroducerName from {TableName} as a LEFT JOIN rb_distributor_info as b on a.Introducer=b.UserId {where} order by Id desc"; string sql = $@"select a.*,b.`Name` as IntroducerName from {TableName} as a LEFT JOIN rb_distributor_info as b on a.Introducer=b.UserId {where} order by a.Id desc";
return Get<RB_Supplier_Extend>(sql).ToList(); return Get<RB_Supplier_Extend>(sql).ToList();
} }
} }
......
...@@ -971,5 +971,159 @@ namespace Mall.WebApi.Controllers.MallBase ...@@ -971,5 +971,159 @@ namespace Mall.WebApi.Controllers.MallBase
} }
#endregion #endregion
#region 包邮规则
/// <summary>
/// 列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetFreeShippingList()
{
var parms = RequestParm;
ResultPageModel pagelist = JsonConvert.DeserializeObject<ResultPageModel>(RequestParm.msg.ToString());
RB_FreeShipping_Extend demodel = JsonConvert.DeserializeObject<RB_FreeShipping_Extend>(RequestParm.msg.ToString());
demodel.TenantId = UserInfo.TenantId;
demodel.MallBaseId = parms.MallBaseId;
var list = mallBaseModule.GetFreeShippingList(pagelist.pageIndex, pagelist.pageSize, out long count, demodel);
pagelist.count = Convert.ToInt32(count);
pagelist.pageData = list.Select(x => new
{
x.ID,
x.FullMoneyPinkage,
x.FullNumPinkage,
x.CategoryList
});
return ApiResult.Success("", pagelist);
}
public ApiResult DelFreeShipping()
{
var parms = RequestParm;
JObject parmsJob = JObject.Parse(RequestParm.msg.ToString());
int Id = parmsJob.GetInt("Id", 0);
if (Id <= 0)
{
return ApiResult.Failed("请传递参数");
}
bool flag = mallBaseModule.DelFreeShipping(Id, UserInfo.TenantId, parms.MallBaseId);
if (flag)
{
return ApiResult.Success();
}
else
{
return ApiResult.Failed();
}
}
/// <summary>
/// 获取详情
/// </summary>
/// <returns></returns>
public ApiResult GetFreeShippingModel()
{
var parms = RequestParm;
var query = JsonConvert.DeserializeObject<RB_FreeShipping_Extend>(RequestParm.msg.ToString());
query.TenantId = UserInfo.TenantId;
query.MallBaseId = parms.MallBaseId;
var oldLogisticsModel = mallBaseModule.GetFreeShippingModel(query);
if (oldLogisticsModel == null)
{
oldLogisticsModel = new RB_FreeShipping_Extend();
}
return ApiResult.Success("", oldLogisticsModel);
}
/// <summary>
/// 保存分类包邮规则
/// </summary>
/// <returns></returns>
public ApiResult AddOrUpdateFreeShipping()
{
var parms = RequestParm;
var query = JsonConvert.DeserializeObject<RB_FreeShipping_Extend>(RequestParm.msg.ToString());
query.TenantId = UserInfo.TenantId;
query.MallBaseId = parms.MallBaseId;
if (query == null)
{
return ApiResult.Failed("请传入包邮规则信息");
}
else
{
if ((query.FullMoneyPinkage ?? 0) <= 0 || (query.FullNumPinkage ?? 0) <= 0)
{
return ApiResult.Failed("满减/满额不能同时为零");
}
if (query.CategoryList == null || !query.CategoryList.Any())
{
return ApiResult.Failed("请选择需要包邮的分类");
}
//判断当前的分类是否有被其他包邮规则添加,
var categoryList = mallBaseModule.GetFreeShippingCategoryList(new RB_FreeShippingCategory_Extend { TenantId = UserInfo.TenantId, MallBaseId = parms.MallBaseId, CategoryIds = string.Join(",", query.CategoryList.Select(x => x.CategoryId)) });
if (categoryList.Any(x => x.CategoryId == 0))
{
return ApiResult.Failed("已添加全局包邮规则");
}
foreach (var item in query.CategoryList)
{
if (categoryList.Any(x => x.CategoryId == item.CategoryId&&x.FreeShippingId!=query.ID))
{
return ApiResult.Failed(item.CategoryName + "已添加包邮规则");
}
}
if (query.ID == 0)
{
query.CreateDate = System.DateTime.Now;
}
query.UpdateDate = System.DateTime.Now;
bool result = mallBaseModule.AddOrUpdateFreeShipping(query);
if (result)
{
return ApiResult.Success("分类包邮规则信息保存成功");
}
else
{
return ApiResult.Failed("分类包邮规则信息保存失败");
}
}
}
/// <summary>
/// 保存全局分类包邮规则
/// </summary>
/// <returns></returns>
public ApiResult AddOrUpdateIsFreeShipping()
{
var parms = RequestParm;
JObject parmsJob = JObject.Parse(RequestParm.msg.ToString());
int Id = parmsJob.GetInt("Id", 0);
int IsFreeShipping = parmsJob.GetInt("IsFreeShipping", 0);
if (Id <= 0)
{
return ApiResult.Failed("请传递参数");
}
bool flag = mallBaseModule.AddOrUpdateIsFreeShipping(Id, IsFreeShipping);
if (flag)
{
return ApiResult.Success();
}
else
{
return ApiResult.Failed();
}
}
#endregion
} }
} }
\ No newline at end of file
...@@ -20,6 +20,7 @@ using JWT.Serializers; ...@@ -20,6 +20,7 @@ using JWT.Serializers;
using Mall.Common.Enum; using Mall.Common.Enum;
using Mall.CacheKey; using Mall.CacheKey;
using Mall.Common.Pay.WeChatPat; using Mall.Common.Pay.WeChatPat;
using Mall.Module.MarketingCenter;
namespace Mall.WebApi.Controllers.User namespace Mall.WebApi.Controllers.User
{ {
...@@ -31,7 +32,7 @@ namespace Mall.WebApi.Controllers.User ...@@ -31,7 +32,7 @@ namespace Mall.WebApi.Controllers.User
{ {
private readonly UserModule userModule = new UserModule(); private readonly UserModule userModule = new UserModule();
private readonly CouponModule couponModule = new CouponModule();
/// <summary> /// <summary>
/// 商户小程序处理类 /// 商户小程序处理类
/// </summary> /// </summary>
...@@ -44,19 +45,24 @@ namespace Mall.WebApi.Controllers.User ...@@ -44,19 +45,24 @@ namespace Mall.WebApi.Controllers.User
/// <param name="requestMsg"></param> /// <param name="requestMsg"></param>
/// <returns></returns> /// <returns></returns>
[HttpPost] [HttpPost]
public ApiResult Login(object requestMsg) { public ApiResult Login(object requestMsg)
{
var requestParm = JsonConvert.DeserializeObject<RequestParm>(requestMsg.ToString()); var requestParm = JsonConvert.DeserializeObject<RequestParm>(requestMsg.ToString());
RB_Member_User_Extend demodel = JsonConvert.DeserializeObject<RB_Member_User_Extend>(requestParm.msg.ToString()); RB_Member_User_Extend demodel = JsonConvert.DeserializeObject<RB_Member_User_Extend>(requestParm.msg.ToString());
if (requestParm.TenantId <= 0) { if (requestParm.TenantId <= 0)
{
return ApiResult.ParamIsNull("请传递商户号"); return ApiResult.ParamIsNull("请传递商户号");
} }
if (requestParm.MallBaseId <= 0) { if (requestParm.MallBaseId <= 0)
{
return ApiResult.ParamIsNull("请传递小程序id"); return ApiResult.ParamIsNull("请传递小程序id");
} }
if (!demodel.Source.HasValue) { if (!demodel.Source.HasValue)
{
return ApiResult.ParamIsNull("请传递来源平台"); return ApiResult.ParamIsNull("请传递来源平台");
} }
if (string.IsNullOrEmpty(demodel.OpenId)) { if (string.IsNullOrEmpty(demodel.OpenId))
{
return ApiResult.ParamIsNull("请传递唯一码"); return ApiResult.ParamIsNull("请传递唯一码");
} }
//验证是否新用户 //验证是否新用户
...@@ -64,10 +70,12 @@ namespace Mall.WebApi.Controllers.User ...@@ -64,10 +70,12 @@ namespace Mall.WebApi.Controllers.User
{ {
LogHelper.Write(demodel.OpenId + ",SuperiorId:" + (demodel.SuperiorId ?? 0)); LogHelper.Write(demodel.OpenId + ",SuperiorId:" + (demodel.SuperiorId ?? 0));
//注册新用户 //注册新用户
if (string.IsNullOrEmpty(demodel.Name)) { if (string.IsNullOrEmpty(demodel.Name))
{
return ApiResult.ParamIsNull("请传递用户名称"); return ApiResult.ParamIsNull("请传递用户名称");
} }
if (string.IsNullOrEmpty(demodel.Photo)) { if (string.IsNullOrEmpty(demodel.Photo))
{
return ApiResult.ParamIsNull("请传递用户头像"); return ApiResult.ParamIsNull("请传递用户头像");
} }
#region 赋默认值 #region 赋默认值
...@@ -93,7 +101,8 @@ namespace Mall.WebApi.Controllers.User ...@@ -93,7 +101,8 @@ namespace Mall.WebApi.Controllers.User
demodel.WaitSuperiorId = 0; demodel.WaitSuperiorId = 0;
demodel.BeDownlineDate = DateTime.Now; demodel.BeDownlineDate = DateTime.Now;
} }
else { else
{
demodel.DownlineCondition = basicsModel?.ReferralsCondition ?? DistrbutorReferralsEnum.SCDJ; demodel.DownlineCondition = basicsModel?.ReferralsCondition ?? DistrbutorReferralsEnum.SCDJ;
demodel.IsBeDownline = 2; demodel.IsBeDownline = 2;
demodel.WaitSuperiorId = demodel.SuperiorId; demodel.WaitSuperiorId = demodel.SuperiorId;
...@@ -107,9 +116,19 @@ namespace Mall.WebApi.Controllers.User ...@@ -107,9 +116,19 @@ namespace Mall.WebApi.Controllers.User
demodel.SecretKey = Guid.NewGuid().ToString(); demodel.SecretKey = Guid.NewGuid().ToString();
int UserId = userModule.AddMemberUserInfo(demodel); int UserId = userModule.AddMemberUserInfo(demodel);
bool flag = UserId > 0; bool flag = UserId > 0;
if (flag) { if (flag)
{
//自动发放新人优惠券 2020-08-04 Add By:W
bool couponResult = couponModule.AutoCoupon(new Model.Extend.MarketingCenter.RB_DiscountCoupon_Extend { UserId = UserId, TenantId = demodel.TenantId, MallBaseId = demodel.MallBaseId, TriggerType = 3 });
if (!couponResult)
{
LogHelper.WriteInfo("新人优惠券领取失败,用户id"+ UserId);
}
#region 粉象返佣 自动注册分销商 普通会员等级 #region 粉象返佣 自动注册分销商 普通会员等级
if ((basicsModel?.IsEnableFXGrade ?? 2) == 1) { if ((basicsModel?.IsEnableFXGrade ?? 2) == 1)
{
try try
{ {
var FXPModel = userModule.GetFXDistributorGradeList(new RB_Distributor_FXGrade_Extend() { IsGuest = 1, MallBaseId = requestParm.MallBaseId, TenantId = requestParm.TenantId }).FirstOrDefault(); var FXPModel = userModule.GetFXDistributorGradeList(new RB_Distributor_FXGrade_Extend() { IsGuest = 1, MallBaseId = requestParm.MallBaseId, TenantId = requestParm.TenantId }).FirstOrDefault();
...@@ -141,7 +160,7 @@ namespace Mall.WebApi.Controllers.User ...@@ -141,7 +160,7 @@ namespace Mall.WebApi.Controllers.User
string secret = Config.JwtSecretKey; string secret = Config.JwtSecretKey;
string token = encoder.Encode(payload, secret); string token = encoder.Encode(payload, secret);
#endregion #endregion
var mmodel = programModule.GetMiniProgramModule(new RB_MiniProgram_Extend() { MallBaseId= demodel.MallBaseId }); var mmodel = programModule.GetMiniProgramModule(new RB_MiniProgram_Extend() { MallBaseId = demodel.MallBaseId });
AppletUserInfo appletUserInfo = new AppletUserInfo() AppletUserInfo appletUserInfo = new AppletUserInfo()
{ {
MallBaseId = demodel.MallBaseId, MallBaseId = demodel.MallBaseId,
...@@ -162,10 +181,12 @@ namespace Mall.WebApi.Controllers.User ...@@ -162,10 +181,12 @@ namespace Mall.WebApi.Controllers.User
} }
return ApiResult.Failed("注册失败,请联系管理员"); return ApiResult.Failed("注册失败,请联系管理员");
} }
else { else
{
//查询用户信息 //查询用户信息
var umodel = userModule.GetMemberUserEntityModule(new RB_Member_User_Extend() { TenantId = requestParm.TenantId, MallBaseId = requestParm.MallBaseId, Source = demodel.Source, OpenId = demodel.OpenId }); var umodel = userModule.GetMemberUserEntityModule(new RB_Member_User_Extend() { TenantId = requestParm.TenantId, MallBaseId = requestParm.MallBaseId, Source = demodel.Source, OpenId = demodel.OpenId });
if (umodel == null) { if (umodel == null)
{
return ApiResult.Failed("未能查询到用户信息"); return ApiResult.Failed("未能查询到用户信息");
} }
TokenUserInfo userInfo = new TokenUserInfo { uid = umodel.Id.ToString(), requestFrom = ApiRequestFromEnum.MiniProgram }; TokenUserInfo userInfo = new TokenUserInfo { uid = umodel.Id.ToString(), requestFrom = ApiRequestFromEnum.MiniProgram };
...@@ -187,7 +208,7 @@ namespace Mall.WebApi.Controllers.User ...@@ -187,7 +208,7 @@ namespace Mall.WebApi.Controllers.User
string secret = Config.JwtSecretKey; string secret = Config.JwtSecretKey;
string token = encoder.Encode(payload, secret); string token = encoder.Encode(payload, secret);
#endregion #endregion
var mmodel = programModule.GetMiniProgramModule(new RB_MiniProgram_Extend() {MallBaseId= umodel.MallBaseId }); var mmodel = programModule.GetMiniProgramModule(new RB_MiniProgram_Extend() { MallBaseId = umodel.MallBaseId });
AppletUserInfo appletUserInfo = new AppletUserInfo() AppletUserInfo appletUserInfo = new AppletUserInfo()
{ {
MallBaseId = umodel.MallBaseId, MallBaseId = umodel.MallBaseId,
...@@ -205,7 +226,7 @@ namespace Mall.WebApi.Controllers.User ...@@ -205,7 +226,7 @@ namespace Mall.WebApi.Controllers.User
}; };
UserReidsCache.AppletUserInfoSet(UserModuleCacheKeyConfig.Applet_Login_Info + umodel.Id, appletUserInfo, Config.JwtExpirTime); UserReidsCache.AppletUserInfoSet(UserModuleCacheKeyConfig.Applet_Login_Info + umodel.Id, appletUserInfo, Config.JwtExpirTime);
return ApiResult.Success("", appletUserInfo); return ApiResult.Success("", appletUserInfo);
} }
} }
/// <summary> /// <summary>
...@@ -214,7 +235,8 @@ namespace Mall.WebApi.Controllers.User ...@@ -214,7 +235,8 @@ namespace Mall.WebApi.Controllers.User
/// <param name="requestMsg"></param> /// <param name="requestMsg"></param>
/// <returns></returns> /// <returns></returns>
[HttpPost] [HttpPost]
public ApiResult GetMallToken(object requestMsg) { public ApiResult GetMallToken(object requestMsg)
{
var requestParm = JsonConvert.DeserializeObject<RequestParm>(requestMsg.ToString()); var requestParm = JsonConvert.DeserializeObject<RequestParm>(requestMsg.ToString());
if (requestParm.TenantId <= 0) if (requestParm.TenantId <= 0)
{ {
...@@ -226,10 +248,12 @@ namespace Mall.WebApi.Controllers.User ...@@ -226,10 +248,12 @@ namespace Mall.WebApi.Controllers.User
} }
var appletWeChatModel = programModule.GetMiniProgramModule(new RB_MiniProgram_Extend() { MallBaseId = requestParm.MallBaseId }); var appletWeChatModel = programModule.GetMiniProgramModule(new RB_MiniProgram_Extend() { MallBaseId = requestParm.MallBaseId });
if (appletWeChatModel == null) { if (appletWeChatModel == null)
{
return ApiResult.ParamIsNull("小程序不存在"); return ApiResult.ParamIsNull("小程序不存在");
} }
if (appletWeChatModel.TenantId != requestParm.TenantId) { if (appletWeChatModel.TenantId != requestParm.TenantId)
{
return ApiResult.ParamIsNull("商户号错误"); return ApiResult.ParamIsNull("商户号错误");
} }
string token = CacheManager.AppletWeChat.WeiXinReidsCache.Get(appletWeChatModel.MiniAppId); string token = CacheManager.AppletWeChat.WeiXinReidsCache.Get(appletWeChatModel.MiniAppId);
...@@ -242,7 +266,8 @@ namespace Mall.WebApi.Controllers.User ...@@ -242,7 +266,8 @@ namespace Mall.WebApi.Controllers.User
{ {
return ApiResult.Success("", token); return ApiResult.Success("", token);
} }
else { else
{
return ApiResult.Failed(); return ApiResult.Failed();
} }
......
...@@ -18,6 +18,7 @@ using Mall.Model.Extend.Product; ...@@ -18,6 +18,7 @@ using Mall.Model.Extend.Product;
using Mall.Model.Extend.MarketingCenter; using Mall.Model.Extend.MarketingCenter;
using Mall.Model.Entity.User; using Mall.Model.Entity.User;
using NPOI.SS.Formula.Functions; using NPOI.SS.Formula.Functions;
using Google.Protobuf.WellKnownTypes;
namespace Mall.WebApi.Controllers.User namespace Mall.WebApi.Controllers.User
{ {
...@@ -1100,6 +1101,33 @@ namespace Mall.WebApi.Controllers.User ...@@ -1100,6 +1101,33 @@ namespace Mall.WebApi.Controllers.User
return ApiResult.Success("", pagelist); return ApiResult.Success("", pagelist);
} }
/// <summary>
/// 分享领取优惠券
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult ShareCoupon()
{
var parms = RequestParm;
var userInfo = AppletUserInfo;
var query = JsonConvert.DeserializeObject<RB_DiscountCoupon_Extend>(RequestParm.msg.ToString());
query.TenantId = userInfo.TenantId;
query.MallBaseId = userInfo.MallBaseId;
query.UserId = userInfo.UserId;
query.TriggerType = 1;
bool result = couponModule.AutoCoupon(query);
if (result)
{
return ApiResult.Success("优惠券领取成功");
}
else
{
return ApiResult.Failed("优惠券领取失败");
}
}
#endregion #endregion
#region 个人中心- 积分明细 #region 个人中心- 积分明细
...@@ -1305,7 +1333,7 @@ namespace Mall.WebApi.Controllers.User ...@@ -1305,7 +1333,7 @@ namespace Mall.WebApi.Controllers.User
demodel.TenantId = userInfo.TenantId; demodel.TenantId = userInfo.TenantId;
demodel.MallBaseId = userInfo.MallBaseId; demodel.MallBaseId = userInfo.MallBaseId;
demodel.UserId = userInfo.UserId; demodel.UserId = userInfo.UserId;
demodel.PayState =1; demodel.PayState = 1;
var list = userVipModule.GetVipBuyPageList(pagelist.pageIndex, pagelist.pageSize, out long count, demodel); var list = userVipModule.GetVipBuyPageList(pagelist.pageIndex, pagelist.pageSize, out long count, demodel);
pagelist.count = Convert.ToInt32(count); pagelist.count = Convert.ToInt32(count);
pagelist.pageData = list.Select(x => new pagelist.pageData = list.Select(x => new
......
...@@ -59,13 +59,14 @@ namespace Mall.WebApi.Controllers.User ...@@ -59,13 +59,14 @@ namespace Mall.WebApi.Controllers.User
x.Mobile, x.Mobile,
x.Address, x.Address,
x.IntroducerName, x.IntroducerName,
x.CommissionRate,
CardNum = x.ClientBankAccount != null ? x.ClientBankAccount.CardNum : "", CardNum = x.ClientBankAccount != null ? x.ClientBankAccount.CardNum : "",
OpenBankName = x.ClientBankAccount != null ? x.ClientBankAccount.OpenBankName : "", OpenBankName = x.ClientBankAccount != null ? x.ClientBankAccount.OpenBankName : "",
AccountAlias = x.ClientBankAccount != null ? x.ClientBankAccount.AccountAlias : "", AccountAlias = x.ClientBankAccount != null ? x.ClientBankAccount.AccountAlias : "",
AccountHolder = x.ClientBankAccount != null ? x.ClientBankAccount.AccountHolder : "", AccountHolder = x.ClientBankAccount != null ? x.ClientBankAccount.AccountHolder : "",
BackId = x.ClientBankAccount != null ? x.ClientBankAccount.ID : 0, BackId = x.ClientBankAccount != null ? x.ClientBankAccount.ID : 0,
x.SupplierCommissionList,
AccountClassifyStr = x.ClientBankAccount != null ? (x.ClientBankAccount?.AccountClassify == 2 ? "银行" : (x.ClientBankAccount?.AccountClassify == 3 ? "虚拟账户" : (x.ClientBankAccount?.AccountClassify == 4 ? "微信支付宝" : (x.ClientBankAccount?.AccountClassify == 1 ? "平台" : "")))) : "", AccountClassifyStr = x.ClientBankAccount != null ? (x.ClientBankAccount?.AccountClassify == 2 ? "银行" : (x.ClientBankAccount?.AccountClassify == 3 ? "虚拟账户" : (x.ClientBankAccount?.AccountClassify == 4 ? "微信支付宝" : (x.ClientBankAccount?.AccountClassify == 1 ? "平台" : "")))) : "",
}); });
return ApiResult.Success("", pagelist); return ApiResult.Success("", pagelist);
} }
...@@ -92,7 +93,13 @@ namespace Mall.WebApi.Controllers.User ...@@ -92,7 +93,13 @@ namespace Mall.WebApi.Controllers.User
{ {
return ApiResult.Failed("请填写联系电话"); return ApiResult.Failed("请填写联系电话");
} }
if (demodel.Introducer > 0)
{
if (demodel.SupplierCommissionList == null || !demodel.SupplierCommissionList.Any())
{
return ApiResult.Failed("请输入供应商返佣比例");
}
}
//if (string.IsNullOrEmpty(demodel.ClientBankAccount.OpenBankName)) //if (string.IsNullOrEmpty(demodel.ClientBankAccount.OpenBankName))
//{ //{
// return ApiResult.Failed("请填写开户行!"); // return ApiResult.Failed("请填写开户行!");
...@@ -148,6 +155,7 @@ namespace Mall.WebApi.Controllers.User ...@@ -148,6 +155,7 @@ namespace Mall.WebApi.Controllers.User
if (oldLogisticsModel == null) if (oldLogisticsModel == null)
{ {
oldLogisticsModel = new RB_Supplier_Extend(); oldLogisticsModel = new RB_Supplier_Extend();
} }
return ApiResult.Success("", oldLogisticsModel); return ApiResult.Success("", oldLogisticsModel);
} }
...@@ -203,7 +211,7 @@ namespace Mall.WebApi.Controllers.User ...@@ -203,7 +211,7 @@ namespace Mall.WebApi.Controllers.User
} }
/// <summary> /// <summary>
/// 获取供应商下拉列表 /// 获取分销商下拉列表
/// </summary> /// </summary>
/// <returns></returns> /// <returns></returns>
[HttpPost] [HttpPost]
......
...@@ -1242,6 +1242,9 @@ namespace Mall.WebApi.Controllers.User ...@@ -1242,6 +1242,9 @@ namespace Mall.WebApi.Controllers.User
/// <returns></returns> /// <returns></returns>
public ApiResult GetMiniprogramPageListExt() public ApiResult GetMiniprogramPageListExt()
{ {
JObject parms = JObject.Parse(RequestParm.msg.ToString());
//是否隐藏商品【1-隐藏】
int IsHiddenGoods = parms.GetInt("IsHiddenGoods");
List<object> resultList = new List<object>(); List<object> resultList = new List<object>();
var pageList = programPageModule.GetMiniprogram_Page_ListExtModule(new RB_MiniProgram_Page_Extend() { MallBaseId = RequestParm.MallBaseId }); var pageList = programPageModule.GetMiniprogram_Page_ListExtModule(new RB_MiniProgram_Page_Extend() { MallBaseId = RequestParm.MallBaseId });
var pageTypeList = Common.Plugin.EnumHelper.EnumToList(typeof(PageTypeEnum)); var pageTypeList = Common.Plugin.EnumHelper.EnumToList(typeof(PageTypeEnum));
...@@ -1266,6 +1269,34 @@ namespace Mall.WebApi.Controllers.User ...@@ -1266,6 +1269,34 @@ namespace Mall.WebApi.Controllers.User
.ToList() .ToList()
}); });
} }
int MallBaseId = -1;
if (UserInfo.MallBaseId > 0)
{
MallBaseId = UserInfo.MallBaseId;
}
if (MallBaseId == -1)
{
if (RequestParm.MallBaseId > 0)
{
MallBaseId = RequestParm.MallBaseId;
}
}
if (IsHiddenGoods == 0)
{
var categoryList = productModule.GetGoodsListModule(new Model.Extend.Product.RB_Goods_Extend()
{
TenantId = RequestParm.TenantId,
MallBaseId = MallBaseId,
GoodsStatus = 1,
});
//新增商品选项卡
resultList.Add(new
{
PageTypeName = "商品",
PageTypeId = 6,
SubMenuList = categoryList
});
}
return ApiResult.Success(data: resultList); return ApiResult.Success(data: resultList);
} }
......
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