diff --git a/ARW.Model/Models/Business/OrderManage/OrderRefunds/OrderRefund.cs b/ARW.Model/Models/Business/OrderManage/OrderRefunds/OrderRefund.cs index ba043a1..38c2723 100644 --- a/ARW.Model/Models/Business/OrderManage/OrderRefunds/OrderRefund.cs +++ b/ARW.Model/Models/Business/OrderManage/OrderRefunds/OrderRefund.cs @@ -66,10 +66,10 @@ namespace ARW.Model.Models.Business.OrderManage.OrderRefunds /// - /// 描述 :售后类型(1退货退款 2退货(无需退款) 3换货) + /// 描述 :售后类型(1退货退款 2退款(无需退货) 3换货) /// 空值 : false /// - [EpplusTableColumn(Header = "售后类型(1退货退款 2退货(无需退款) 3换货)")] + [EpplusTableColumn(Header = "售后类型(1退货退款 2退款(无需退货) 3换货)")] [SugarColumn(ColumnName = "refund_type")] public int RefundType { get; set; } diff --git a/ARW.Model/Vo/Api/OrderManage/OrderRefunds/ButtonVO.cs b/ARW.Model/Vo/Api/OrderManage/OrderRefunds/ButtonVO.cs new file mode 100644 index 0000000..cf22ba1 --- /dev/null +++ b/ARW.Model/Vo/Api/OrderManage/OrderRefunds/ButtonVO.cs @@ -0,0 +1,38 @@ +using Newtonsoft.Json; +using OfficeOpenXml.Attributes; +using SqlSugar; +using System; +using System.Collections.Generic; + +namespace ARW.Model.Vo.Api.OrderManage.Orders +{ + /// + /// 售后按钮展示对象Api + /// + /// @author lwh + /// @date 2023-10-21 + /// + public class ButtonVO + { + /// + /// 描述 :名称 + /// + public string Name { get; set; } + + + /// + /// 描述 : + /// + public bool Primary { get; set; } + + + /// + /// 类型 (2撤销 3填写运单号 4修改运单号 5查看物流 ) + /// + public int Type { get; set; } + + } + + + +} diff --git a/ARW.Model/Vo/Api/OrderManage/OrderRefunds/OrderRefundApiVo.cs b/ARW.Model/Vo/Api/OrderManage/OrderRefunds/OrderRefundApiVo.cs index 82b5fd7..cdddbd1 100644 --- a/ARW.Model/Vo/Api/OrderManage/OrderRefunds/OrderRefundApiVo.cs +++ b/ARW.Model/Vo/Api/OrderManage/OrderRefunds/OrderRefundApiVo.cs @@ -34,6 +34,11 @@ namespace ARW.Model.Vo.Api.OrderManage.OrderRefunds public long OrderGuid { get; set; } + /// + /// 店铺guid + /// + public long ShopGuid { get; set; } + /// /// 店铺名称 /// @@ -44,7 +49,7 @@ namespace ARW.Model.Vo.Api.OrderManage.OrderRefunds /// - /// 描述 :售后类型(1退货退款 2退货(无需退款) 3换货) + /// 描述 :售后类型(1退货退款 2退款(无需退货) 3换货) /// public int RefundType { get; set; } @@ -74,7 +79,7 @@ namespace ARW.Model.Vo.Api.OrderManage.OrderRefunds /// - /// 状态(1待审核 2已审核 3已发货 4已完成 ) + /// 状态(1待审核 2已审核 3已发货 4已完成 5已取消) /// public int Status { get; set; } @@ -98,6 +103,11 @@ namespace ARW.Model.Vo.Api.OrderManage.OrderRefunds public int IsMerchantReceive { get; set; } + /// + /// 按钮 + /// + public List ButtonVOs { get; set; } + } } diff --git a/ARW.Service/Api/BusinessService/OrderManage/OrderRefunds/OrderRefundServiceApi.cs b/ARW.Service/Api/BusinessService/OrderManage/OrderRefunds/OrderRefundServiceApi.cs index 7fe983b..08901e7 100644 --- a/ARW.Service/Api/BusinessService/OrderManage/OrderRefunds/OrderRefundServiceApi.cs +++ b/ARW.Service/Api/BusinessService/OrderManage/OrderRefunds/OrderRefundServiceApi.cs @@ -101,6 +101,7 @@ namespace ARW.Service.Api.BusinessService.OrderManage.OrderRefunds { OrderRefundId = s.OrderRefundId, OrderRefundGuid = s.OrderRefundGuid, + ShopGuid = s.ShopGuid, StoreName = c.ShopName, OrderGuid = s.OrderGuid, RefundType = s.RefundType, @@ -120,28 +121,57 @@ namespace ARW.Service.Api.BusinessService.OrderManage.OrderRefunds /* 处理售后订单状态描述 */ // 待审核 - if (item.MerchantAuditStatus == 1) + if (item.MerchantAuditStatus == 1 && item.OrderRefundStatus == 1) { item.Status = 1; item.EserRightsStatusDesc = "商家将尽快确认您的退款申请"; + var buttonVoList = new List(); + var buttonVo = new ButtonVO() + { + Name = "撤销申请", + Type = 2 + }; + buttonVoList.Add(buttonVo); + item.ButtonVOs = buttonVoList; } // 已审核 - if (item.MerchantAuditStatus == 2) + if (item.MerchantAuditStatus == 2 && item.OrderRefundStatus == 1 && item.RefundType == 1 && item.IsCustomerSend == 1) { item.Status = 2; item.EserRightsStatusDesc = "商家已审核确认,预计1小时内发起退款"; + var buttonVoList = new List(); + var buttonVo = new ButtonVO() + { + Name = "填写运单号", + Type = 3 + }; + buttonVoList.Add(buttonVo); + item.ButtonVOs = buttonVoList; } // 已发货 - if (item.IsCustomerSend == 2) + if (item.IsCustomerSend == 2 && item.OrderRefundStatus == 1) { item.Status = 3; item.EserRightsStatusDesc = "商家已退款,退回资金将原路三个工作日内返回您的账户"; + //var buttonVoList = new List(); + //var buttonVo = new ButtonVO() + //{ + // Name = "查看物流", + // Type = 5 + //}; + //buttonVoList.Add(buttonVo); + //item.ButtonVOs = buttonVoList; } if (item.OrderRefundStatus == 3) { item.Status = 4; item.EserRightsStatusDesc = "退款/售后己完成"; } + if (item.OrderRefundStatus == 4) + { + item.Status = 5; + item.EserRightsStatusDesc = "退款/售后己取消"; + } } @@ -247,7 +277,7 @@ namespace ARW.Service.Api.BusinessService.OrderManage.OrderRefunds var dictList = _SysDictDataService.SelectDictDataByType("refund_reason"); foreach (var item in dictList) { - if(Convert.ToInt32(item.DictValue) == data.RefundReason) + if (Convert.ToInt32(item.DictValue) == data.RefundReason) { data.Reason = item.DictLabel; } @@ -255,7 +285,7 @@ namespace ARW.Service.Api.BusinessService.OrderManage.OrderRefunds // 处理快递状态 - if(data.LogisticsCompanyGuid != null) + if (data.LogisticsCompanyGuid != null) { data.TrajectoryVos = new TrajectoryVo(); var company = await _LogisticsCompanyRepository.GetFirstAsync(s => s.LogisticsCompanyGuid == data.LogisticsCompanyGuid);