Commit ce6f0a86 authored by liudong1993's avatar liudong1993

微店

parent 6201185b
......@@ -47,6 +47,10 @@ namespace Mall.Model.Extend.Product
/// </summary>
public int? IsNotSelectCancel { get; set; }
/// <summary>
/// 是否查询已付款的 1是 2否
/// </summary>
public int? IsSelectPayMoney { get; set; }
/// <summary>
/// 商品id
/// </summary>
public int? GoodsId { get; set; }
......
......@@ -2846,7 +2846,13 @@ namespace Mall.Module.Product
{
return ApiResult.Failed("有商品不存在或者商品已失效");
}
if (gmodel.PresentFXGrade > 0) {
//是赠送VIP商品
if (demodel.DetailList.Count() > 1) {
//多商品
return ApiResult.Failed("VIP商品不能与其他商品同时下单,请先购买VIP商品");
}
}
var categoryList = clist.Where(x => x.GoodsId == item.GoodsId).ToList();
if ((mallbaseModel?.IsFreeShipping ?? 0) == 1 && (gmodel.FullMoneyPinkage ?? 0) == 0 && (gmodel.FullNumPinkage ?? 0) == 0)
{
......
......@@ -121,6 +121,9 @@ namespace Mall.Repository.Product
{
where += $@" and o.{nameof(RB_Goods_Order.SmallShopsId)}={dmodel.SmallShopsId}";
}
if (dmodel.IsSelectPayMoney == 1) {
where += $@" and o.{nameof(RB_Goods_Order.PaymentTime)} <> null";
}
string sql = $@"SELECT o.*,u.Name as UserName,sshop.`Name` as SmallShopsName FROM rb_goods_order o
INNER JOIN rb_goods_orderdetail od on o.OrderId=od.OrderId
......
......@@ -73,6 +73,7 @@ namespace Mall.WebApi.Controllers.MallBase
Consignee = newParms.GetStringValue("Consignee"),
Recycled = newParms.GetInt("Recycled"),
AnchorName = newParms.GetStringValue("AnchorName"),
IsSelectPayMoney = newParms.GetInt("IsSelectPayMoney", 0)
};
demodel.TenantId = parms.TenantId;
......
......@@ -4,6 +4,7 @@ using Mall.Common;
using Mall.Common.Enum.Goods;
using Mall.Common.Enum.User;
using Mall.Common.Plugin;
using Mall.Model.Entity.BaseSetUp;
using Mall.Model.Entity.Finance;
using Mall.Model.Entity.Product;
using Mall.Model.Entity.User;
......@@ -17,6 +18,8 @@ using Mall.Repository.Finance;
using Mall.Repository.Product;
using Mall.Repository.User;
using Mall.WindowsService.Helper;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Configuration.Json;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
......@@ -116,7 +119,18 @@ namespace Mall.WindowsService.Module
/// 微店佣金
/// </summary>
private static RB_SmallShops_CommissionRepository smallShops_CommissionRepository = new RB_SmallShops_CommissionRepository();
/// <summary>
/// 微店基础
/// </summary>
private static RB_MicroShop_BasicsRepository microShop_BasicsRepository = new RB_MicroShop_BasicsRepository();
/// <summary>
/// 小程序
/// </summary>
private static RB_MiniProgramRepository miniProgramRepository = new RB_MiniProgramRepository();
/// <summary>
/// 微店提现
/// </summary>
private static RB_SmallShops_RemitRepository smallShops_RemitRepository = new RB_SmallShops_RemitRepository();
/// <summary>
/// vip购买仓储层
/// </summary>
......@@ -657,6 +671,12 @@ and DATE_FORMAT(b.PaymentTime,'%y-%m-%d')<DATE_FORMAT('{endDate}','%y-%m-%d') A
}
}
public static bool TestOrderPay()
{
var omodel = goods_OrderRepository.GetEntity<RB_Goods_Order_Extend>(82013);
Console.WriteLine("进来了1");
return SetOrderOperation(omodel, 6, "", 0, "", 1, 1, 0);
}
/// <summary>
/// 设置订单操作
......@@ -835,15 +855,194 @@ and DATE_FORMAT(b.PaymentTime,'%y-%m-%d')<DATE_FORMAT('{endDate}','%y-%m-%d') A
}
}
}
//更新微店返佣
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 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))
{
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<RB_MiniProgram_Extend>(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 = PayUtil.GetTransfersOrder(OrderNum, RemitMoney, (ssmodel.UserId ?? 0).ToString(), umodel.OpenId, minModel, "赞羊微店佣金打款");
}
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 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 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 = item.UserId, TenantId = tenantId, MallBaseId = mallBaseId }).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))
{
if (smallModel != null && smallModel.AuditStatus == DistributorAuditStatusEnum.Audited)
{
//更新分销商佣金
......@@ -879,6 +1078,7 @@ and DATE_FORMAT(b.PaymentTime,'%y-%m-%d')<DATE_FORMAT('{endDate}','%y-%m-%d') A
}
}
}
}
//积分赠送
var dlist = goods_OrderDetailRepository.GetOrderDetailList(new RB_Goods_OrderDetail_Extend() { OrderId = orderModel.OrderId, TenantId = tenantId, MallBaseId = mallBaseId });
if (dlist.Any())
......@@ -1251,6 +1451,185 @@ and DATE_FORMAT(b.PaymentTime,'%y-%m-%d')<DATE_FORMAT('{endDate}','%y-%m-%d') A
//更新微店返佣
var ssList = smallShops_CommissionRepository.GetList(new RB_SmallShops_Commission_Extend() { TenantId = item.TenantId, MallBaseId = item.MallBaseId, OrderId = Order.OrderId });
if (ssList.Where(x => x.CommissionState == 1).Any())
{
//验证是否是自动结算
var ssbaseModel = microShop_BasicsRepository.GetMicroShopBasicsList(new RB_MicroShop_Basics() { TenantId = item.TenantId, MallBaseId = item.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 = item.TenantId, MallBaseId = item.MallBaseId }).FirstOrDefault();
if (smallModel != null && smallModel.AuditStatus == DistributorAuditStatusEnum.Audited)
{
//总佣金
decimal TotalCommission = 0, OldCommission = 0;
foreach (var qcitem in ssList.Where(x => x.CommissionState == 1))
{
TotalCommission += (qcitem.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<RB_MiniProgram_Extend>(item.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 = PayUtil.GetTransfersOrder(OrderNum, RemitMoney, (ssmodel.UserId ?? 0).ToString(), umodel.OpenId, minModel, "赞羊微店佣金打款");
}
if (flagpay)
{
//更新状态
foreach (var qcitem 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=qcitem.Id,
OperatorEnum=OperatorEnum.Equal
}
};
smallShops_CommissionRepository.Update(keyValues1, wheres1);
}
}
//写入已提现数据
smallShops_RemitRepository.Insert(new 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 = item.MallBaseId,
OrderNum = OrderNum,
RejectDate = null,
RejectRemark = "",
RemitDate = DateTime.Now,
RemitMoney = RemitMoney,
RemitRemark = "自动结算打款",
ReOrderIds = "[" + (omodel.OrderId).ToString() + "]",
ReOrderNos = "\"" + omodel.OrderNo + "\":" + RemitMoney + "元",
TenantId = item.TenantId,
UserId = ssmodel.UserId,
WithdrawalWay = DistrbutorWithdrawWayEnum.ZDXJ
});
}
else
{
//更新状态
foreach (var qcitem 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=qcitem.Id,
OperatorEnum=OperatorEnum.Equal
}
};
smallShops_CommissionRepository.Update(keyValues1, wheres1);
}
}
//写入已提现数据
smallShops_RemitRepository.Insert(new 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 = item.MallBaseId,
OrderNum = OrderNum,
RejectDate = null,
RejectRemark = "",
RemitDate = DateTime.Now,
RemitMoney = RemitMoney,
RemitRemark = "",
ReOrderIds = "[" + (omodel.OrderId).ToString() + "]",
ReOrderNos = "\"" + omodel.OrderNo + "\":" + RemitMoney + "元",
TenantId = item.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
{
foreach (var qitem in ssList.Where(x => x.CommissionState == 1))
{
......@@ -1291,6 +1670,7 @@ and DATE_FORMAT(b.PaymentTime,'%y-%m-%d')<DATE_FORMAT('{endDate}','%y-%m-%d') A
}
}
}
}
catch (Exception)
{
Helper.LogHelper.Write("AutoAfterSaleOrderSendCommission:更新微店返佣失败");
......@@ -1394,6 +1774,185 @@ and DATE_FORMAT(b.PaymentTime,'%y-%m-%d')<DATE_FORMAT('{endDate}','%y-%m-%d') A
//更新微店返佣
var ssList = smallShops_CommissionRepository.GetList(new RB_SmallShops_Commission_Extend() { TenantId = item.TenantId, MallBaseId = item.MallBaseId, OrderId = Order.OrderId });
if (ssList.Where(x => x.CommissionState == 1).Any())
{
//验证是否是自动结算
var ssbaseModel = microShop_BasicsRepository.GetMicroShopBasicsList(new RB_MicroShop_Basics() { TenantId = item.TenantId, MallBaseId = item.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 = item.TenantId, MallBaseId = item.MallBaseId }).FirstOrDefault();
if (smallModel != null && smallModel.AuditStatus == DistributorAuditStatusEnum.Audited)
{
//总佣金
decimal TotalCommission = 0, OldCommission = 0;
foreach (var qcitem in ssList.Where(x => x.CommissionState == 1))
{
TotalCommission += (qcitem.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<RB_MiniProgram_Extend>(item.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 = PayUtil.GetTransfersOrder(OrderNum, RemitMoney, (ssmodel.UserId ?? 0).ToString(), umodel.OpenId, minModel, "赞羊微店佣金打款");
}
if (flagpay)
{
//更新状态
foreach (var qcitem 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=qcitem.Id,
OperatorEnum=OperatorEnum.Equal
}
};
smallShops_CommissionRepository.Update(keyValues1, wheres1);
}
}
//写入已提现数据
smallShops_RemitRepository.Insert(new 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 = item.MallBaseId,
OrderNum = OrderNum,
RejectDate = null,
RejectRemark = "",
RemitDate = DateTime.Now,
RemitMoney = RemitMoney,
RemitRemark = "自动结算打款",
ReOrderIds = "[" + (omodel.OrderId).ToString() + "]",
ReOrderNos = "\"" + omodel.OrderNo + "\":" + RemitMoney + "元",
TenantId = item.TenantId,
UserId = ssmodel.UserId,
WithdrawalWay = DistrbutorWithdrawWayEnum.ZDXJ
});
}
else
{
//更新状态
foreach (var qcitem 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=qcitem.Id,
OperatorEnum=OperatorEnum.Equal
}
};
smallShops_CommissionRepository.Update(keyValues1, wheres1);
}
}
//写入已提现数据
smallShops_RemitRepository.Insert(new 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 = item.MallBaseId,
OrderNum = OrderNum,
RejectDate = null,
RejectRemark = "",
RemitDate = DateTime.Now,
RemitMoney = RemitMoney,
RemitRemark = "",
ReOrderIds = "[" + (omodel.OrderId).ToString() + "]",
ReOrderNos = "\"" + omodel.OrderNo + "\":" + RemitMoney + "元",
TenantId = item.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
{
foreach (var qitem in ssList.Where(x => x.CommissionState == 1))
{
......@@ -1434,6 +1993,7 @@ and DATE_FORMAT(b.PaymentTime,'%y-%m-%d')<DATE_FORMAT('{endDate}','%y-%m-%d') A
}
}
}
}
catch (Exception)
{
Helper.LogHelper.Write("AutoAfterSaleOrderSendCommission:更新微店返佣失败");
......
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