From f366fea2c6c83020c1e6423e2c66242678b8f877 Mon Sep 17 00:00:00 2001
From: 移动系统liao <liaoxujun@qq.com>
Date: 星期四, 11 四月 2024 14:26:41 +0800
Subject: [PATCH] 修改用户推广搜索
---
CoreCms.Net.Services/Distribution/CoreCmsDistributionOrderServices.cs | 70 ++++++++++++++++++++++++----------
1 files changed, 49 insertions(+), 21 deletions(-)
diff --git a/CoreCms.Net.Services/Distribution/CoreCmsDistributionOrderServices.cs b/CoreCms.Net.Services/Distribution/CoreCmsDistributionOrderServices.cs
index fedf49c..a139dce 100644
--- a/CoreCms.Net.Services/Distribution/CoreCmsDistributionOrderServices.cs
+++ b/CoreCms.Net.Services/Distribution/CoreCmsDistributionOrderServices.cs
@@ -1,10 +1,10 @@
/***********************************************************************
- * Project: CoreCms
- * ProjectName: 鏍稿績鍐呭绠$悊绯荤粺
- * Web: https://www.corecms.net
- * Author: 澶х伆鐏�
- * Email: jianweie@163.com
- * CreateTime: 2021/1/31 21:45:10
+ * Project: baifenBinfa
+ * ProjectName: 鐧惧垎鍏垫硶绠$悊绯荤粺
+ * Web: http://chuanyin.com
+ * Author:
+ * Email:
+ * CreateTime: 202403/02
* Description: 鏆傛棤
***********************************************************************/
@@ -17,6 +17,7 @@
using CoreCms.Net.IRepository;
using CoreCms.Net.IRepository.UnitOfWork;
using CoreCms.Net.IServices;
+using CoreCms.Net.IServices.baifenbingfa;
using CoreCms.Net.Loging;
using CoreCms.Net.Model.Entities;
using CoreCms.Net.Model.ViewModels.Basics;
@@ -30,7 +31,7 @@
namespace CoreCms.Net.Services
{
/// <summary>
- /// 鍒嗛攢鍟嗚鍗曡褰曡〃 鎺ュ彛瀹炵幇
+ /// 缁忛攢鍟嗚鍗曡褰曡〃 鎺ュ彛瀹炵幇
/// </summary>
public class CoreCmsDistributionOrderServices : BaseServices<CoreCmsDistributionOrder>, ICoreCmsDistributionOrderServices
{
@@ -45,10 +46,11 @@
private readonly ICoreCmsGoodsServices _goodsServices;
private readonly ICoreCmsDistributionOrderDetailsServices _distributionOrderDetailsServices;
private readonly ICoreCmsSettingServices _settingServices;
+ private readonly IBfbfComAPIService _bfbfComAPIService;
private readonly IUnitOfWork _unitOfWork;
- public CoreCmsDistributionOrderServices(IUnitOfWork unitOfWork, ICoreCmsDistributionOrderRepository dal, ICoreCmsDistributionServices distributionServices, ICoreCmsUserBalanceServices balanceServices, ICoreCmsOrderServices orderServices, ICoreCmsUserServices userServices, ICoreCmsOrderItemServices orderItemServices, ICoreCmsProductsDistributionServices productsDistributionServices, ICoreCmsProductsServices productsServices, ICoreCmsGoodsServices goodsServices, ICoreCmsDistributionOrderDetailsServices distributionOrderDetailsServices, ICoreCmsSettingServices settingServices)
+ public CoreCmsDistributionOrderServices(IBfbfComAPIService bfbfComAPIService, IUnitOfWork unitOfWork, ICoreCmsDistributionOrderRepository dal, ICoreCmsDistributionServices distributionServices, ICoreCmsUserBalanceServices balanceServices, ICoreCmsOrderServices orderServices, ICoreCmsUserServices userServices, ICoreCmsOrderItemServices orderItemServices, ICoreCmsProductsDistributionServices productsDistributionServices, ICoreCmsProductsServices productsServices, ICoreCmsGoodsServices goodsServices, ICoreCmsDistributionOrderDetailsServices distributionOrderDetailsServices, ICoreCmsSettingServices settingServices)
{
this._dal = dal;
_distributionServices = distributionServices;
@@ -63,6 +65,7 @@
_settingServices = settingServices;
base.BaseDal = dal;
_unitOfWork = unitOfWork;
+ _bfbfComAPIService = bfbfComAPIService;
}
@@ -101,7 +104,8 @@
if (user is { parentId: > 0 })
{
//鑾峰彇璐墿鏄庣粏
- var orderItems = await _orderItemServices.QueryListByClauseAsync(p => p.orderId == order.orderId);
+ var orderItems = await _unitOfWork.GetDbClient().Queryable<CoreCmsOrderItem>().Where(p => p.orderId == order.orderId).Includes(x => x.productInfo).ToListAsync();
+ //await _orderItemServices.QueryListByClauseAsync(p => p.orderId == order.orderId);
var goodIds = orderItems.Select(p => p.goodsId).ToList();
var productIds = orderItems.Select(p => p.productId).ToList();
//鑾峰彇璐у搧鏁版嵁
@@ -142,14 +146,16 @@
var user = await _userServices.QueryByClauseAsync(p => p.id == userId);
if (user != null)
{
+
var commission = await _distributionServices.GetGradeAndCommission(user.id);
- if (commission.status && commission.data != null) //涓嶆槸鍒嗛攢鍟嗙殑锛屼笉杩斿埄銆�
+ if (commission.status && commission.data != null) //涓嶆槸缁忛攢鍟嗙殑锛屼笉杩斿埄銆�
{
var ommissionDto = commission.data as DistributionDto;
//鐩磋繑鏈骇
decimal amount = 0;
var distributionOrderDetails = new List<CoreCmsDistributionOrderDetails>();
-
+ //鐧惧垎鍏垫硶鍒ゆ柇璁㈠崟鐢ㄦ埛鏄惁鏄粡閿�鍟�
+ bool OderUserIsDic = await _bfbfComAPIService.IsDictionary(order.userId);
foreach (var item in orderItems)
{
var orderDetails = new CoreCmsDistributionOrderDetails();
@@ -197,6 +203,8 @@
//濡傛灉鍘绘帀浼樻儬闇�瑕佽礋浜嗭紝灏变负0
if (itemAmount < 0) itemAmount = 0;
+
+
mathMoney = level switch
{
//涓�绾у垎閿�
@@ -230,17 +238,37 @@
{
continue;
}
-
- mathMoney = level switch
+ //鐧惧垎鍏垫硶鍩烘暟鎸�
+ switch (level)
{
- 1 when productsDistribution.levelOne > 0 => Math.Round(
- productsDistribution.levelOne * item.nums, 2),
- 2 when productsDistribution.levelTwo > 0 => Math.Round(
- productsDistribution.levelTwo * item.nums, 2),
- 3 when productsDistribution.levelThree > 0 => Math.Round(
- productsDistribution.levelThree * item.nums, 2),
- _ => mathMoney
- };
+ case 1 :
+
+ if(OderUserIsDic)
+ //鏄粡閿�鍟嗚喘涔�
+ mathMoney = item.productInfo.distributionCutMoney;
+ else
+ //闈炵粡閿�鍟嗚喘涔�
+ mathMoney= item.productInfo.cutMoney ;
+
+ break;
+ case 2 when productsDistribution.levelTwo > 0:
+ break;
+ case 3 when productsDistribution.levelThree>0:
+ break;
+ default:
+ break;
+ }
+ //鍘熶剑閲戣绠楁柟娉�
+ //mathMoney = level switch
+ //{
+ // 1 when productsDistribution.levelOne > 0 => Math.Round(
+ // productsDistribution.levelOne * item.nums, 2),
+ // 2 when productsDistribution.levelTwo > 0 => Math.Round(
+ // productsDistribution.levelTwo * item.nums, 2),
+ // 3 when productsDistribution.levelThree > 0 => Math.Round(
+ // productsDistribution.levelThree * item.nums, 2),
+ // _ => mathMoney
+ //};
}
amount += mathMoney;
--
Gitblit v1.9.1