Browse Source

`

pjzs_starttask_update
sanji 2 years ago
parent
commit
cebb211a54
  1. 7
      BBWY.Client/Models/Order/Order.cs
  2. 13
      BBWY.Server.Business/Order/OrderBusiness.cs
  3. 15
      BBWY.Server.Business/Statistics/StatisticsBusiness.cs

7
BBWY.Client/Models/Order/Order.cs

@ -245,11 +245,14 @@ namespace BBWY.Client.Models
var beforeTotalCost = OrderCost?.BeforeTotalCost ?? 0M;
var profit = OrderCost?.Profit ?? 0M;
return (OrderState != OrderState. &&
return (OrderState != OrderState. &&
StorageType != Models.StorageType.SD &&
StorageType != null &&
(beforeTotalCost == 0M || profit < 0M)) ||
(StorageType == null && OrderState != OrderState. && OrderState != OrderState.);
(StorageType == null &&
OrderState != OrderState. &&
OrderState != OrderState. &&
OrderState != OrderState.);
}
}

13
BBWY.Server.Business/Order/OrderBusiness.cs

@ -39,6 +39,8 @@ namespace BBWY.Server.Business
private IMemoryCache memoryCache;
private static TimeSpan sdGroupExpirationTimeSpan = TimeSpan.FromMinutes(20);
private List<Enums.OrderState?> filterExceptionStateList;
public OrderBusiness(RestApiService restApiService,
IFreeSql fsql,
IIdGenerator idGenerator,
@ -52,6 +54,12 @@ namespace BBWY.Server.Business
freeSqlMultiDBManagerLazy = new Lazy<FreeSqlMultiDBManager>(() => serviceProvider.GetService<FreeSqlMultiDBManager>());
productBusinessLazy = new Lazy<ProductBusiness>(() => serviceProvider.GetService<ProductBusiness>());
venderBusinessLazy = new Lazy<VenderBusiness>(() => serviceProvider.GetService<VenderBusiness>());
filterExceptionStateList = new List<Enums.OrderState?>() {
Enums.OrderState.,
Enums.OrderState.,
Enums.OrderState.
};
}
private ISelect<Order, OrderConsignee, OrderCost, Storehouse> GetOrderListQueryConditions(SearchOrderRequest searchOrderRequest)
@ -82,9 +90,8 @@ namespace BBWY.Server.Business
o.StorageType != Enums.StorageType.SD &&
o.StorageType != null &&
(oct.PurchaseAmount == 0M || oct.Profit < 0)) ||
(o.StorageType == null &&
o.OrderState != Enums.OrderState. &&
o.OrderState != Enums.OrderState.))
(o.StorageType == null &&
!filterExceptionStateList.Contains(o.OrderState)))
.WhereIf(searchOrderRequest.OnlyDF, (o, ocs, oct, sh) => o.StorageType == Enums.StorageType.)
.WhereIf(searchOrderRequest.ExcludeCanceled, (o, ocs, oct, sh) => o.OrderState != Enums.OrderState.)
.WhereIf(searchOrderRequest.ExcludeSD && !searchOrderRequest.OnlyDF, (o, ocs, oct, sh) => o.StorageType == null || o.StorageType != Enums.StorageType.SD)

15
BBWY.Server.Business/Statistics/StatisticsBusiness.cs

@ -9,6 +9,7 @@ using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net.Http.Headers;
using Yitter.IdGenerator;
namespace BBWY.Server.Business
@ -19,11 +20,18 @@ namespace BBWY.Server.Business
private FreeSqlMultiDBManager freeSqlMultiDBManager;
private RestApiService restApiService;
private List<Enums.OrderState?> filterExceptionStateList;
public StatisticsBusiness(IFreeSql fsql, NLogManager nLogManager, IIdGenerator idGenerator, FreeSqlMultiDBManager freeSqlMultiDBManager, RestApiService restApiService) : base(fsql, nLogManager, idGenerator)
{
invalidOrderStateList = new List<Enums.OrderState>() { Enums.OrderState., Enums.OrderState. };
this.freeSqlMultiDBManager = freeSqlMultiDBManager;
this.restApiService = restApiService;
filterExceptionStateList = new List<Enums.OrderState?>() {
Enums.OrderState.,
Enums.OrderState.,
Enums.OrderState.
};
}
public OrderAchievementResponse GetOrderAchievementStatistics(OrderAchievementRequest request)
@ -364,6 +372,8 @@ namespace BBWY.Server.Business
{
//startDate = startDate.Date;
//endDate = endDate.Date.AddDays(1).AddSeconds(-1);
var dt = DateTime.Parse("2022-05-01");
var afterDt = DateTime.Parse("2022-10-01");
var response = new OrderCountStatisticsResponse();
@ -372,7 +382,7 @@ namespace BBWY.Server.Business
o.OrderState == Enums.OrderState. && o.StartTime >= dt).Count();
response.ExceptionCount = fsql.Select<Order, OrderCost>().LeftJoin((o, oc) => o.Id == oc.OrderId)
.Where((o, oc) => o.ShopId == shopId &&
.Where((o, oc) => o.ShopId == shopId &&
o.StartTime >= dt &&
o.IsGift == false &&
((o.OrderState != Enums.OrderState. &&
@ -380,8 +390,7 @@ namespace BBWY.Server.Business
o.StorageType != null &&
(oc.PurchaseAmount == 0M || oc.Profit < 0)) ||
(o.StorageType == null &&
o.OrderState != Enums.OrderState. &&
o.OrderState != Enums.OrderState.))).Count();
!filterExceptionStateList.Contains(o.OrderState)))).Count();
response.WaitOutStoreCount = fsql.Select<Order>().Where(o => o.ShopId == shopId && o.OrderState == Enums.OrderState. && o.StartTime >= dt &&
o.IsGift == false).Count();

Loading…
Cancel
Save