fixed 修改订单列表状态判断

This commit is contained in:
AERWEN\26795 2023-10-22 10:33:51 +08:00
parent d8d6bb744a
commit cc5600c6f7
3 changed files with 43 additions and 9 deletions

View File

@ -12,10 +12,11 @@ namespace ARW.Model.Dto.Api.OrderManage.Orders
/// @author lwh
/// @date 2023-09-01
/// </summary>
public class OrderQueryDtoApi : PagerInfo
public class OrderQueryDtoApi : PagerInfo
{
public long CustomerGuid { get; set; }
public string OrderNumber { get; set; }
public int Status { get; set; }
public int? PayType { get; set; }
public int? PayStatus { get; set; }
public int? DeliveryType { get; set; }
@ -24,8 +25,8 @@ namespace ARW.Model.Dto.Api.OrderManage.Orders
public int? ReceiptStatus { get; set; }
public int OrderStatus { get; set; }
}
/// <summary>
/// 订单详情输入对象Api
///

View File

@ -94,6 +94,17 @@ namespace ARW.Model.Vo.Api.OrderManage.Orders
/// </summary>
public int IsComment { get; set; }
/// <summary>
/// 订单状态 (1待付款 2待发货 3待收货 4已完成)
/// </summary>
public int Status { get; set; }
/// <summary>
/// 订单状态名称 (1待付款 2待发货 3待收货 4已完成)
/// </summary>
public string StatusName { get; set; }
}

View File

@ -81,14 +81,12 @@ namespace ARW.Service.Api.BusinessService.OrderManage.Orders
//开始拼装查询条件d
var predicate = Expressionable.Create<Order>();
predicate = predicate.AndIF(parm.Status == 1, s => s.PayStatus == 1 && s.OrderStatus == 1);
predicate = predicate.AndIF(parm.Status == 2, s => s.DeliveryStatus == 1 && s.PayStatus == 2 && s.OrderStatus == 1);
predicate = predicate.AndIF(parm.Status == 3, s => s.ReceiptStatus == 1 && s.DeliveryStatus == 2 && s.PayStatus == 2 && s.OrderStatus == 1);
predicate = predicate.AndIF(parm.Status == 4, s => s.PayStatus == 2 && s.OrderStatus == 4);
predicate = predicate.AndIF(parm.CustomerGuid != 0, s => s.CustomerGuid == parm.CustomerGuid);
predicate = predicate.AndIF(!string.IsNullOrEmpty(parm.OrderNumber), s => s.OrderNumber.Contains(parm.OrderNumber));
predicate = predicate.AndIF(parm.OrderStatus != 0, s => s.OrderStatus == parm.OrderStatus);
predicate = predicate.AndIF(parm.PayType != null, s => s.PayType == parm.PayType);
predicate = predicate.AndIF(parm.PayStatus != null, s => s.PayStatus == parm.PayStatus);
predicate = predicate.AndIF(parm.DeliveryType != null, s => s.DeliveryType == parm.DeliveryType);
predicate = predicate.AndIF(parm.DeliveryStatus != null, s => s.DeliveryStatus == parm.DeliveryStatus);
predicate = predicate.AndIF(parm.ReceiptStatus != null, s => s.ReceiptStatus == parm.ReceiptStatus);
var query = _OrderRepository
.Queryable()
.Where(predicate.ToExpression())
@ -134,6 +132,30 @@ namespace ARW.Service.Api.BusinessService.OrderManage.Orders
goodsList.Add(orderGood);
}
item.GoodsList = goodsList;
/* 处理订单状态 */
if(item.PayStatus == 1 && item.OrderStatus == 1)
{
item.Status = 1;
item.StatusName = "待付款";
}
if(item.DeliveryStatus == 1 && item.PayStatus == 2 && item.OrderStatus == 1)
{
item.Status = 2;
item.StatusName = "待发货";
}
if (item.DeliveryStatus == 2 && item.ReceiptStatus == 1 && item.PayStatus == 2 && item.OrderStatus == 1)
{
item.Status = 3;
item.StatusName = "待收货";
}
if (item.PayStatus == 2 && item.OrderStatus == 4)
{
item.Status = 4;
item.StatusName = "已完成";
}
}
return list;