Commit 208134d3 authored by liudong1993's avatar liudong1993

返佣

parent f12257b9
......@@ -85,7 +85,7 @@ namespace Mall.Common.Enum
/// <summary>
/// 导游通知
/// </summary>
[EnumField("SMS_201716853")]
[EnumField("SMS_201722097")]
GuideMsg =15
}
......
......@@ -21,6 +21,10 @@ namespace Mall.Model.Extend.Product
/// </summary>
public List<RB_Goods_TargetDate_Extend> TargetDateList { get; set; }
/// <summary>
/// 日期
/// </summary>
public List<string> TargetDateStrList { get; set; }
/// <summary>
/// 线路描述list
/// </summary>
public List<string> LineDescriptionList { get; set; }
......@@ -49,8 +53,10 @@ namespace Mall.Model.Extend.Product
/// 联系电话
/// </summary>
public string GuideTelephone { get; set; }
/// <summary>
/// 导游简介
/// </summary>
public string Introduction { get; set; }
/// <summary>
/// 头像
......@@ -66,7 +72,14 @@ namespace Mall.Model.Extend.Product
/// </summary>
public string CarColorName { get; set; }
/// <summary>
/// 车辆评分
/// </summary>
public decimal CarScore { get; set; }
/// <summary>
/// 车型号
/// </summary>
public string CarModel { get; set; }
/// <summary>
/// 车辆类型
/// </summary>
......
......@@ -1644,23 +1644,21 @@ namespace Mall.Module.Product
#region 司导商品
string SiteName = SiteRepository.GetGuideCarSiteList(new RB_GuideCar_Site_Extend() { ID = model.SiteId ?? 0 }).FirstOrDefault()?.SiteName ?? "";
var guideModel = GuideRepository.GetGuideCarGuideList(new RB_GuideCar_Guide_Extend() { ID = model.GuideId ?? 0 }).FirstOrDefault();
string GuideName = guideModel?.Name ?? "";
model.GuideName = guideModel?.Name ?? "";
model.GuidePhoto= guideModel?.GuidePhoto ?? "";
model.GuideScore = guideModel?.Score ?? 5;
model.Introduction = guideModel?.Introduction ?? "";
model.GuideWorkYears = guideModel?.WorkYears ?? 1;
var carModel = GuideCarRepository.GetGuideCarCarList(new RB_GuideCar_Car_Extend() { ID = model.GuideId ?? 0 }).FirstOrDefault();
string CarName = carModel?.Name ?? "";
string CarColorName = CarColorRepository.GetCarColorList(new RB_GuideCar_CarColor_Extend() { ID = model.CarColorId ?? 0 }).FirstOrDefault()?.ColorName ?? "";
decimal GuideScore = guideModel?.Score ?? 5;
decimal CarScore = carModel?.Score ?? 5;
model.CarColorName = CarColorRepository.GetCarColorList(new RB_GuideCar_CarColor_Extend() { ID = model.CarColorId ?? 0 }).FirstOrDefault()?.ColorName ?? "";
model.CarScore = carModel?.Score ?? 5;
model.CarModel = carModel?.CarType ?? "";
model.LineDescriptionList = new List<string>();
if (!string.IsNullOrEmpty(model.LineDescription) && model.LineDescription != "[]")
{
model.LineDescriptionList = JsonConvert.DeserializeObject<List<string>>(model.LineDescription);
}
//var targetList = goods_TargetDateRepository.GetList(new RB_Goods_TargetDate_Extend() { GoodsId = goodsId });
//if (model.AdvanceDay > 0) {
// DateTime Mindate = Convert.ToDateTime(DateTime.Now.AddDays(model.AdvanceDay ?? 0).ToString("yyyy-MM-dd"));
// targetList = targetList.Where(x => x.Date >= Mindate).ToList();
//}
#endregion
#region 返回参数
......@@ -1690,13 +1688,17 @@ namespace Mall.Module.Product
member_price = price_member_max,
site_name = SiteName,
site_id = model.SiteId,
guide_name = GuideName,
guide_name = model.GuideName,
guide_id = model.GuideId,
guide_score = GuideScore,
guide_photo = model.GuidePhoto,
guide_introduction = model.Introduction,
guide_workyears = model.GuideWorkYears,
guide_score = model.GuideScore,
car_name = CarName,
car_id = model.CarId,
car_score = CarScore,
carcolor_name = CarColorName,
car_score = model.CarScore,
carcolor_name = model.CarColorName,
car_model = model.CarModel,
carcolor_id = model.CarColorId,
car_number = model.CarNumber,
car_buyyear = model.CarBuyYear,
......
......@@ -284,6 +284,10 @@ namespace Mall.Module.Product
/// </summary>
private readonly RB_Goods_TargetDateRepository goods_TargetDateRepository = new RB_Goods_TargetDateRepository();
/// <summary>
/// 司导-基础
/// </summary>
private readonly RB_GuideCar_BaseRepository guideCar_BaseRepository = new RB_GuideCar_BaseRepository();
/// <summary>
/// 司导-导游
/// </summary>
private readonly RB_GuideCar_GuideRepository guideCar_GuideRepository = new RB_GuideCar_GuideRepository();
......@@ -5782,6 +5786,11 @@ namespace Mall.Module.Product
/// <param name="OrderId"></param>
private void InsertOrderDetail(RB_Goods_Order_Extend demodel, System.Data.IDbTransaction trans, int OrderId, List<FreeShippingGoodsDetail> SatisfiedGoodsList,bool IsSDGoods= false)
{
Model.Extend.GuideCar.RB_GuideCar_Base_Extend guidebaseModel = new Model.Extend.GuideCar.RB_GuideCar_Base_Extend();
if (IsSDGoods)
{
guidebaseModel = guideCar_BaseRepository.GetList(new Model.Extend.GuideCar.RB_GuideCar_Base_Extend() { TenantId = demodel.TenantId, MallBaseId = demodel.MallBaseId }).FirstOrDefault();
}
foreach (var item in demodel.DetailList)
{
int IntegralPresent = item.IntegralPresent ?? 0;
......@@ -6012,6 +6021,36 @@ namespace Mall.Module.Product
}
}
}
//发送短信通知导游接单
int IsNormalServer = Convert.ToInt32(Config.IsNormalServer);//为正式才发送短信
if (IsNormalServer == 1 && (guidebaseModel?.IsConfirm ?? 0) == 2)
{
if (item.GuideId > 0)
{
//查询导游信息
var guideModel = guideCar_GuideRepository.GetEntity(item.GuideId ?? 0);
var carModel = guideCar_CarRepository.GetEntity(item.CarId ?? 0);
if (guideModel != null && carModel != null && !string.IsNullOrEmpty(guideModel.Telephone))
{
string Telephone = guideModel.Telephone;
MobileCodeTypeEnum mobileCodeType = MobileCodeTypeEnum.GuideMsg;//导游通知
if (ValidateHepler.IsMobileNumber(Telephone))
{
object PhoneMessage = new
{
demodel.OrderNo,
Name = demodel.Consignee,
demodel.Mobile,
TripDate = item.TripSTime.Value.ToString("yyyy-MM-dd HH:mm") + " " + (item.UseDay ?? 0) + "天",
Address = demodel.ShoppingAddress,
item.Number
};
SMSService.SendMsg(Telephone, PhoneMessage, EnumHelper.GetEnumName(mobileCodeType));
}
}
}
}
}
#endregion
}
......@@ -10613,7 +10652,7 @@ namespace Mall.Module.Product
/// <param name="orderId"></param>
/// <param name="empId"></param>
/// <returns></returns>
public bool SetSDOrderConfirm(int orderId,int Type, int empId)
public bool SetSDOrderConfirm(int orderId,int Type, int empId, Microsoft.AspNetCore.Http.IHttpContextAccessor _accessor)
{
Dictionary<string, object> keyValues = new Dictionary<string, object>() { };
if (Type == 1)
......@@ -10638,19 +10677,22 @@ namespace Mall.Module.Product
}
};
bool flag = goods_OrderRepository.Update(keyValues, wheres);
if (flag && Type == 1) {
var orderModel = goods_OrderRepository.GetEntity(orderId);
if (flag && Type == 1)
{
//发送短信通知导游接单
var omodel = goods_OrderRepository.GetEntity(orderId);
var list = goods_OrderDetailRepository.GetOrderDetailList(new RB_Goods_OrderDetail_Extend() { OrderId = orderId });
int IsNormalServer = Convert.ToInt32(Config.IsNormalServer);//为正式才发送短信
if (IsNormalServer == 1)
{
foreach (var item in list) {
if (item.GuideId > 0) {
foreach (var item in list)
{
if (item.GuideId > 0)
{
//查询导游信息
var guideModel = guideCar_GuideRepository.GetEntity(item.GuideId ?? 0);
var carModel = guideCar_CarRepository.GetEntity(item.CarId ?? 0);
if (guideModel!=null && carModel!=null && !string.IsNullOrEmpty(guideModel.Telephone))
if (guideModel != null && carModel != null && !string.IsNullOrEmpty(guideModel.Telephone))
{
string Telephone = guideModel.Telephone;
MobileCodeTypeEnum mobileCodeType = MobileCodeTypeEnum.GuideMsg;//导游通知
......@@ -10658,10 +10700,12 @@ namespace Mall.Module.Product
{
object PhoneMessage = new
{
omodel.OrderNo,
StartDate = item.TripSTime.Value.ToString("yyyy-MM-dd HH:mm"),
guideModel.Name,
CarName = carModel.Name + "(" + item.CarNumber + ")"
orderModel.OrderNo,
Name = orderModel.Consignee,
orderModel.Mobile,
TripDate = item.TripSTime.Value.ToString("yyyy-MM-dd HH:mm") + " " + (item.UseDay ?? 0) + "天",
Address = orderModel.ShoppingAddress,
item.Number
};
SMSService.SendMsg(Telephone, PhoneMessage, EnumHelper.GetEnumName(mobileCodeType));
}
......@@ -10670,6 +10714,399 @@ namespace Mall.Module.Product
}
}
}
else if (flag && Type == 3) {
//返佣
bool IsUpdateCommission = true;
int mallBaseId = orderModel.MallBaseId;
int tenantId = orderModel.TenantId;
var mallModel = mallBaseRepository.GetEntity(mallBaseId);
if (mallModel != null && mallModel.AfterTime > 0)
{
var OrderM = goods_OrderRepository.GetEntity(orderModel.OrderId);
if (OrderM != null && OrderM.ReceivingTime.HasValue && OrderM.ReceivingTime.Value.AddDays(mallModel.AfterTime) > DateTime.Now)
{
IsUpdateCommission = false;
}
}
if (IsUpdateCommission)
{
//更新返佣为已返佣
var ocList = goods_OrderCommissionRepository.GetList(new RB_Goods_OrderCommission_Extend() { TenantId = tenantId, MallBaseId = mallBaseId, OrderId = orderModel.OrderId });
if (ocList.Where(x => x.CommissionState == 1).Any())
{
foreach (var item in ocList.Where(x => x.CommissionState == 1))
{
//查询是否有申请退款
var afterSaleList = goods_OrderAfterSaleRepository.GetList(new RB_Goods_OrderAfterSale_Extend() { OrderDetialId = item.OrderDetailId, Type = 1, MallBaseId = mallBaseId, TenantId = tenantId });
if (!afterSaleList.Any())
{
//获取分销商信息
var disInfo = distributor_InfoRepository.GetList(new RB_Distributor_Info_Extend() { UserId = item.UserId, TenantId = tenantId, MallBaseId = mallBaseId }).FirstOrDefault();
if (disInfo != null && disInfo.AuditStatus == DistributorAuditStatusEnum.Audited)
{
//更新分销商佣金
Dictionary<string, object> keyValues2 = new Dictionary<string, object>() {
{ nameof(RB_Distributor_Info_Extend.TotalCommission),(disInfo.TotalCommission??0)+(item.Commission??0)},
{ nameof(RB_Distributor_Info_Extend.CommissionWithdrawal),(disInfo.CommissionWithdrawal??0)+(item.Commission??0)},
};
List<WhereHelper> wheres2 = new List<WhereHelper>() {
new WhereHelper(){
FiledName=nameof(RB_Distributor_Info_Extend.Id),
FiledValue=disInfo.Id,
OperatorEnum=OperatorEnum.Equal
}
};
bool flag1 = distributor_InfoRepository.Update(keyValues2, wheres2);
if (flag1)
{
//更新返佣状态
Dictionary<string, object> keyValues1 = new Dictionary<string, object>() {
{ nameof(RB_Goods_OrderCommission_Extend.CommissionState),2},
{ nameof(RB_Goods_OrderCommission_Extend.UpdateDate),DateTime.Now},
};
List<WhereHelper> wheres1 = new List<WhereHelper>() {
new WhereHelper(){
FiledName=nameof(RB_Goods_OrderCommission_Extend.Id),
FiledValue=item.Id,
OperatorEnum=OperatorEnum.Equal
}
};
goods_OrderCommissionRepository.Update(keyValues1, wheres1);
}
}
}
}
}
//更新推荐供应商返佣
var oiList = goods_OrderIntroductionRepository.GetList(new RB_Goods_OrderIntroduction_Extend() { TenantId = tenantId, MallBaseId = mallBaseId, OrderId = orderModel.OrderId });
if (oiList.Any())
{
foreach (var item in oiList)
{
//查询是否有申请退款
var afterSaleList = goods_OrderAfterSaleRepository.GetList(new RB_Goods_OrderAfterSale_Extend() { OrderDetialId = item.OrderDetailId, Type = 1, MallBaseId = mallBaseId, TenantId = tenantId });
if (!afterSaleList.Any())
{
//更新返佣状态
Dictionary<string, object> keyValues1 = new Dictionary<string, object>() {
{ nameof(RB_Goods_OrderIntroduction_Extend.CommissionState),2},
{ nameof(RB_Goods_OrderIntroduction_Extend.UpdateDate),DateTime.Now},
};
List<WhereHelper> wheres1 = new List<WhereHelper>() {
new WhereHelper(){
FiledName=nameof(RB_Goods_OrderIntroduction_Extend.Id),
FiledValue=item.Id,
OperatorEnum=OperatorEnum.Equal
}
};
goods_OrderIntroductionRepository.Update(keyValues1, wheres1);
}
}
}
//更新微店返佣
var ssList = smallShops_CommissionRepository.GetList(new RB_SmallShops_Commission_Extend() { TenantId = tenantId, MallBaseId = mallBaseId, OrderId = orderModel.OrderId });
if (ssList.Where(x => x.CommissionState == 1).Any())
{
//验证是否是自动结算
var ssbaseModel = microShop_BasicsRepository.GetMicroShopBasicsList(new Model.Entity.BaseSetUp.RB_MicroShop_Basics() { TenantId = tenantId, MallBaseId = mallBaseId }).FirstOrDefault();
if (("," + (ssbaseModel?.SettlementType ?? "") + ",").Contains("," + ((int)DistrbutorWithdrawWayEnum.ZDXJ).ToString() + ","))
{
var ssmodel = ssList.FirstOrDefault();
//获取微店信息
var smallModel = smallShops_InfoRepository.GetList(new RB_SmallShops_Info_Extend() { UserId = ssmodel.UserId, TenantId = tenantId, MallBaseId = mallBaseId }).FirstOrDefault();
if (smallModel != null && smallModel.AuditStatus == DistributorAuditStatusEnum.Audited)
{
//总佣金
decimal TotalCommission = 0, OldCommission = 0;
foreach (var item in ssList.Where(x => x.CommissionState == 1))
{
var afterSaleList = goods_OrderAfterSaleRepository.GetList(new RB_Goods_OrderAfterSale_Extend() { OrderDetialId = item.OrderDetailId, Type = 1, MallBaseId = mallBaseId, TenantId = tenantId });
if (!afterSaleList.Any())
{
TotalCommission += (item.Commission ?? 0);
}
}
#region 看微店佣金是否是负数 是的话 需要走总佣金里减去
OldCommission = TotalCommission;
if ((smallModel.Commission ?? 0) < 0)
{
TotalCommission += (smallModel?.Commission ?? 0);
}
#endregion
if (TotalCommission > 0)
{
decimal RemitMoney = TotalCommission, fee = 0;
var feeValue = ssbaseModel?.WithdrawalFree ?? 0;
if (feeValue > 0)
{
fee = Math.Round(TotalCommission * (feeValue) / 100, 2, MidpointRounding.AwayFromZero);
RemitMoney = TotalCommission - fee;
}
var minModel = miniProgramRepository.GetEntity(mallBaseId);
var umodel = member_UserRepository.GetEntity(ssmodel.UserId);
//打款
Random R = new Random();
int Rstr = R.Next(111, 999);
string OrderNum = DateTime.Now.ToString("yyyyMMddHHmmssfff") + Rstr;
int IsNormalServer = Convert.ToInt32(new ConfigurationBuilder().Add(new JsonConfigurationSource { Path = "appsettings.json" }).Build().GetSection("IsNormalServer").Value);
var flagpay = false;
if (IsNormalServer == 1)
{
flagpay = Common.Pay.PayUtilWeiXin.GetTransfersOrder(OrderNum, RemitMoney, (ssmodel.UserId ?? 0).ToString(), umodel.OpenId, minModel.WeChatPayCertificateUrl, minModel.WeChatApiSecret, minModel.MiniAppId, _accessor);
}
if (flagpay)
{
//更新状态
foreach (var item in ssList.Where(x => x.CommissionState == 1))
{
if (smallModel != null && smallModel.AuditStatus == DistributorAuditStatusEnum.Audited)
{
//更新返佣状态
Dictionary<string, object> keyValues1 = new Dictionary<string, object>() {
{ nameof(RB_SmallShops_Commission_Extend.CommissionState),2},
{ nameof(RB_SmallShops_Commission_Extend.IsRemit),1},
{ nameof(RB_SmallShops_Commission_Extend.UpdateDate),DateTime.Now},
};
List<WhereHelper> wheres1 = new List<WhereHelper>() {
new WhereHelper(){
FiledName=nameof(RB_SmallShops_Commission_Extend.Id),
FiledValue=item.Id,
OperatorEnum=OperatorEnum.Equal
}
};
smallShops_CommissionRepository.Update(keyValues1, wheres1);
}
}
//写入已提现数据
smallShops_RemitRepository.Insert(new Model.Entity.User.RB_SmallShops_Remit()
{
Id = 0,
AccountName = "",
AccountNumber = "",
AppliedMoney = TotalCommission,
AuditDate = DateTime.Now,
AuditRemark = "",
AuditStatus = DistributorRemitAuditStatusEnum.HaveMoney,
BankName = "",
CreateDate = DateTime.Now,
Fee = fee,
FinanceId = 0,
MallBaseId = mallBaseId,
OrderNum = OrderNum,
RejectDate = null,
RejectRemark = "",
RemitDate = DateTime.Now,
RemitMoney = RemitMoney,
RemitRemark = "自动结算打款",
ReOrderIds = "[" + (orderModel.OrderId).ToString() + "]",
ReOrderNos = "\"" + orderModel.OrderNo + "\":" + RemitMoney + "元",
TenantId = tenantId,
UserId = ssmodel.UserId,
WithdrawalWay = DistrbutorWithdrawWayEnum.ZDXJ
});
}
else
{
//更新状态
foreach (var item in ssList.Where(x => x.CommissionState == 1))
{
if (smallModel != null && smallModel.AuditStatus == DistributorAuditStatusEnum.Audited)
{
//更新返佣状态
Dictionary<string, object> keyValues1 = new Dictionary<string, object>() {
{ nameof(RB_SmallShops_Commission_Extend.CommissionState),2},
{ nameof(RB_SmallShops_Commission_Extend.IsRemit),1},
{ nameof(RB_SmallShops_Commission_Extend.UpdateDate),DateTime.Now},
};
List<WhereHelper> wheres1 = new List<WhereHelper>() {
new WhereHelper(){
FiledName=nameof(RB_SmallShops_Commission_Extend.Id),
FiledValue=item.Id,
OperatorEnum=OperatorEnum.Equal
}
};
smallShops_CommissionRepository.Update(keyValues1, wheres1);
}
}
//写入已提现数据
smallShops_RemitRepository.Insert(new Model.Entity.User.RB_SmallShops_Remit()
{
Id = 0,
AccountName = "",
AccountNumber = "",
AppliedMoney = TotalCommission,
AuditDate = DateTime.Now,
AuditRemark = "自动现结失败,变更为手动打款",
AuditStatus = DistributorRemitAuditStatusEnum.ToPlayWith,
BankName = "",
CreateDate = DateTime.Now,
Fee = fee,
FinanceId = 0,
MallBaseId = mallBaseId,
OrderNum = OrderNum,
RejectDate = null,
RejectRemark = "",
RemitDate = DateTime.Now,
RemitMoney = RemitMoney,
RemitRemark = "",
ReOrderIds = "[" + (orderModel.OrderId).ToString() + "]",
ReOrderNos = "\"" + orderModel.OrderNo + "\":" + RemitMoney + "元",
TenantId = tenantId,
UserId = ssmodel.UserId,
WithdrawalWay = DistrbutorWithdrawWayEnum.ZDDK
});
}
//更新微店佣金等于0
Dictionary<string, object> keyValues2 = new Dictionary<string, object>() {
{ nameof(RB_SmallShops_Info_Extend.TotalCommission),(smallModel.TotalCommission??0) + OldCommission},
{ nameof(RB_SmallShops_Info_Extend.Commission), TotalCommission}
};
List<WhereHelper> wheres2 = new List<WhereHelper>() {
new WhereHelper(){
FiledName=nameof(RB_SmallShops_Info_Extend.Id),
FiledValue=smallModel.Id,
OperatorEnum=OperatorEnum.Equal
}
};
bool flag1 = smallShops_InfoRepository.Update(keyValues2, wheres2);
}
else if (TotalCommission < 0)
{
//存在微店佣金里 继续负数累加
Dictionary<string, object> keyValues2 = new Dictionary<string, object>() {
{ nameof(RB_SmallShops_Info_Extend.TotalCommission),(smallModel.TotalCommission??0) + OldCommission},
{ nameof(RB_SmallShops_Info_Extend.Commission),TotalCommission},
};
List<WhereHelper> wheres2 = new List<WhereHelper>() {
new WhereHelper(){
FiledName=nameof(RB_SmallShops_Info_Extend.Id),
FiledValue=smallModel.Id,
OperatorEnum=OperatorEnum.Equal
}
};
bool flag1 = smallShops_InfoRepository.Update(keyValues2, wheres2);
}
}
}
else
{
var ssmodel = ssList.FirstOrDefault();
//获取微店信息
var smallModel = smallShops_InfoRepository.GetList(new RB_SmallShops_Info_Extend() { UserId = ssmodel.UserId, TenantId = tenantId, MallBaseId = mallBaseId }).FirstOrDefault();
foreach (var item in ssList.Where(x => x.CommissionState == 1))
{
//查询是否有申请退款
var afterSaleList = goods_OrderAfterSaleRepository.GetList(new RB_Goods_OrderAfterSale_Extend() { OrderDetialId = item.OrderDetailId, Type = 1, MallBaseId = mallBaseId, TenantId = tenantId });
if (!afterSaleList.Any())
{
if (smallModel != null && smallModel.AuditStatus == DistributorAuditStatusEnum.Audited)
{
//更新微店佣金
Dictionary<string, object> keyValues2 = new Dictionary<string, object>() {
{ nameof(RB_SmallShops_Info_Extend.TotalCommission),(smallModel.TotalCommission??0)+(item.Commission??0)},
{ nameof(RB_SmallShops_Info_Extend.Commission),(smallModel.Commission??0)+(item.Commission??0)},
};
List<WhereHelper> wheres2 = new List<WhereHelper>() {
new WhereHelper(){
FiledName=nameof(RB_SmallShops_Info_Extend.Id),
FiledValue=smallModel.Id,
OperatorEnum=OperatorEnum.Equal
}
};
bool flag1 = smallShops_InfoRepository.Update(keyValues2, wheres2);
if (flag1)
{
//更新返佣状态
Dictionary<string, object> keyValues1 = new Dictionary<string, object>() {
{ nameof(RB_SmallShops_Commission_Extend.CommissionState),2},
{ nameof(RB_SmallShops_Commission_Extend.UpdateDate),DateTime.Now},
};
List<WhereHelper> wheres1 = new List<WhereHelper>() {
new WhereHelper(){
FiledName=nameof(RB_SmallShops_Commission_Extend.Id),
FiledValue=item.Id,
OperatorEnum=OperatorEnum.Equal
}
};
smallShops_CommissionRepository.Update(keyValues1, wheres1);
}
}
}
}
}
}
}
//积分赠送
var dlist = goods_OrderDetailRepository.GetOrderDetailList(new RB_Goods_OrderDetail_Extend() { OrderId = orderModel.OrderId, TenantId = tenantId, MallBaseId = mallBaseId });
if (dlist.Any())
{
int IntegralGoodsPresent = 0;
foreach (var item in dlist)
{
if (item.IntegralGoodsPresent > 0)
{
IntegralGoodsPresent += (item.IntegralGoodsPresent ?? 0);
}
}
if (IntegralGoodsPresent > 0)
{
//保存积分赠送
var umodel = member_UserRepository.GetEntity(orderModel.UserId);
//用户订单数增加
Dictionary<string, object> keyValues1 = new Dictionary<string, object>() {
{ nameof(RB_Member_User_Extend.Integral), (umodel.Integral ?? 0)+IntegralGoodsPresent }
};
List<WhereHelper> wheres1 = new List<WhereHelper>() {
new WhereHelper(){
FiledName=nameof(RB_Member_User_Extend.Id),
FiledValue=umodel.Id,
OperatorEnum=OperatorEnum.Equal
}
};
member_UserRepository.Update(keyValues1, wheres1);
member_IntegralRepository.Insert(new Model.Entity.User.RB_Member_Integral()
{
Id = 0,
CreateDate = DateTime.Now,
Description = "订单购买赠送积分,订单号:" + orderModel.OrderNo,
Image = 0,
Integral = IntegralGoodsPresent,
MallBaseId = orderModel.MallBaseId,
PlatformType = orderModel.OrderSource,
Remarks = "",
TenantId = orderModel.TenantId,
Type = Common.Enum.MarketingCenter.RecordTypeEnum.Income,
UserId = orderModel.UserId,
OrderId = orderModel.OrderId
});
}
}
}
if (flag) {
string content = "";
if (Type == 1)
{
content = "empId:" + empId + "司导确认订单";
}
else if (Type == 2)
{
content = "empId:" + empId + "司导设置订单出行";
}
else if (Type == 3) {
content = "empId:" + empId + "司导设置订单完成";
}
goods_LogRepository.Insert(new RB_Goods_Log()
{
Content = content,
CreateDate = DateTime.Now,
Id = 0,
MallBaseId = orderModel.MallBaseId,
SourceId = orderModel.OrderId,
TenantId = orderModel.TenantId,
Type = 1
});
}
return flag;
}
#endregion
......
......@@ -1471,7 +1471,7 @@ GROUP BY od.GoodsId,o.OrderId
/// <returns></returns>
public List<RB_Goods_Order_Extend> GetCanReceivingOrderList(int day, int t, int m)
{
string sql = $@"SELECT OrderId,UserId,OrderNo,OrderSource,CouponsIds FROM rb_goods_order where TenantId ={t} and MallBaseId ={m} and `Status`=0 and OrderStatus =3 and DATE_ADD(DeliveryTime,INTERVAL {day} DAY) < '{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}'";
string sql = $@"SELECT OrderId,UserId,OrderNo,OrderSource,CouponsIds FROM rb_goods_order where TenantId ={t} and MallBaseId ={m} and `Status`=0 and OrderStatus =3 and OrderClassify=0 and DATE_ADD(DeliveryTime,INTERVAL {day} DAY) < '{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}'";
return Get<RB_Goods_Order_Extend>(sql).ToList();
}
#endregion
......
......@@ -560,12 +560,20 @@ namespace Mall.WebApi.Controllers.MallBase
demodel.IsSpell ??= 1;
demodel.AdvanceDay ??= 0;
if (demodel.TargetDateList != null && demodel.TargetDateList.Any()) {
//去除重复
if (demodel.TargetDateList.Count() != demodel.TargetDateList.Select(x => x.Date).Distinct().Count()) {
demodel.TargetDateList = new List<RB_Goods_TargetDate_Extend>();
if (demodel.TargetDateStrList != null && demodel.TargetDateStrList.Any()) {
if (demodel.TargetDateStrList.Count() != demodel.TargetDateStrList.Distinct().Count())
{
return ApiResult.ParamIsNull("可预定日期有重复");
}
foreach (var item in demodel.TargetDateStrList) {
demodel.TargetDateList.Add(new RB_Goods_TargetDate_Extend()
{
Date = Convert.ToDateTime(item)
});
}
}
if (demodel.Id > 0)
{
string vmsg = guideCarModule.ValidateGoodsTargetDate(demodel.Id, demodel.TargetDateList);
......
......@@ -1039,7 +1039,7 @@ namespace Mall.WebApi.Controllers.MallBase
return ApiResult.Failed();
}
bool flag = orderModule.SetSDOrderConfirm(OrderId, Type, req.EmpId);
bool flag = orderModule.SetSDOrderConfirm(OrderId, Type, req.EmpId, _accessor);
if (flag)
{
return ApiResult.Success();
......
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