From 0b9c80a4a10f45e79493f5aad47af3f6ae6433ea Mon Sep 17 00:00:00 2001
From: shanj <18996038927@163.com>
Date: Wed, 29 Mar 2023 02:29:01 +0800
Subject: [PATCH] =?UTF-8?q?=E7=BC=96=E8=BE=91?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../ServiceOrder/ServiceOrderItemResponse.cs | 25 +++
.../ServiceOrder/EditServiceOrderViewModel.cs | 66 ++++++-
.../ServiceOrder/ServiceOrderViewModel.cs | 18 +-
.../Views/ServiceOrder/EditServiceOrder.xaml | 163 ++++++++++++++++++
.../ServiceOrder/EditServiceOrder.xaml.cs | 9 +-
.../Views/ServiceOrder/ServiceOrderList.xaml | 22 ++-
.../AfterSaleOrder/AfterSaleOrderBusiness.cs | 3 +-
.../ServiceOrder/ServiceOrderBusiness.cs | 2 +
BBWY.Server.Model/Db/Order/Serviceorder.cs | 30 ++++
.../ServiceOrder/ServiceOrderItemResponse.cs | 25 +++
BBWY.Test/Program.cs | 57 ------
JD.API/Controllers/PlatformSDKController.cs | 7 +-
JD.API/appsettings.json | 2 +-
13 files changed, 355 insertions(+), 74 deletions(-)
diff --git a/BBWY.Client/Models/APIModel/Response/ServiceOrder/ServiceOrderItemResponse.cs b/BBWY.Client/Models/APIModel/Response/ServiceOrder/ServiceOrderItemResponse.cs
index 50837c5d..10bf31a6 100644
--- a/BBWY.Client/Models/APIModel/Response/ServiceOrder/ServiceOrderItemResponse.cs
+++ b/BBWY.Client/Models/APIModel/Response/ServiceOrder/ServiceOrderItemResponse.cs
@@ -238,6 +238,31 @@ namespace BBWY.Client.Models
///
public DateTime? QualityInspectionInStoreTime { get; set; }
+ ///
+ /// 换新单号
+ ///
+ public string RenewalOrderId { get; set; }
+
+ ///
+ /// 退货检查备注
+ ///
+ public string ReturnCheckRemark { get; set; }
+
+ ///
+ /// 线下换新方式
+ ///
+ public StorageType? RenewalType { get; set; }
+
+ ///
+ /// 线下换新采购单号
+ ///
+ public string RenewalPurchaseOrderId { get; set; }
+
+ ///
+ /// 线下换新采购平台
+ ///
+ public Platform? RenewalPurchasePlatform { get; set; }
+
#region Sku
public string Logo { get; set; }
diff --git a/BBWY.Client/ViewModels/ServiceOrder/EditServiceOrderViewModel.cs b/BBWY.Client/ViewModels/ServiceOrder/EditServiceOrderViewModel.cs
index 6407a6d5..7778721a 100644
--- a/BBWY.Client/ViewModels/ServiceOrder/EditServiceOrderViewModel.cs
+++ b/BBWY.Client/ViewModels/ServiceOrder/EditServiceOrderViewModel.cs
@@ -1,17 +1,79 @@
using BBWY.Client.Models;
+using GalaSoft.MvvmLight.Command;
+using System.Windows.Input;
namespace BBWY.Client.ViewModels
{
- public class EditServiceOrderViewModel: BaseVM
+ public class EditServiceOrderViewModel : BaseVM
{
+ ///
+ /// 主键Id
+ ///
+ private long servicePId;
+ private ServiceResult? serviceResult;
+ private decimal? sdRefundFreight;
+ private ReturnDirection? returnDirection;
+ private string renewalOrderId;
+ private decimal? reissueAfterSaleAmount;
+ private string returnCheckRemark;
+ private StorageType? renewalType;
+ private string renewalPurchaseOrderId;
+ private Platform? renewalPurchasePlatform;
+ private decimal? reissueFreight;
+ private decimal? reissueProductAmount;
+
+ public ServiceResult? ServiceResult { get => serviceResult; set { Set(ref serviceResult, value); } }
+ public decimal? SDRefundFreight { get => sdRefundFreight; set { Set(ref sdRefundFreight, value); } }
+ public ReturnDirection? ReturnDirection { get => returnDirection; set { Set(ref returnDirection, value); } }
+ public string RenewalOrderId { get => renewalOrderId; set { Set(ref renewalOrderId, value); } }
+
+ ///
+ /// 售后补发成本
+ ///
+ public decimal? ReissueAfterSaleAmount { get => reissueAfterSaleAmount; set { Set(ref reissueAfterSaleAmount, value); } }
+
+ ///
+ /// 退货检查备注
+ ///
+ public string ReturnCheckRemark { get => returnCheckRemark; set { Set(ref returnCheckRemark, value); } }
+
+ public StorageType? RenewalType { get => renewalType; set { Set(ref renewalType, value); } }
+
+ public string RenewalPurchaseOrderId { get => renewalPurchaseOrderId; set { Set(ref renewalPurchaseOrderId, value); } }
+
+ public Platform? RenewalPurchasePlatform { get => renewalPurchasePlatform; set { Set(ref renewalPurchasePlatform, value); } }
+
+ public ICommand SaveCommand { get; set; }
+ public decimal? ReissueFreight { get => reissueFreight; set { Set(ref reissueFreight, value); } }
+ public decimal? ReissueProductAmount { get => reissueProductAmount; set { Set(ref reissueProductAmount, value); } }
+
public EditServiceOrderViewModel()
{
-
+ SaveCommand = new RelayCommand(Save);
}
public void SetData(ServiceOrder serviceOrder)
{
+ this.servicePId = serviceOrder.Id;
+ this.ServiceResult = serviceOrder.ServiceResult;
+ this.SDRefundFreight = serviceOrder.SDRefundFreight;
+ this.ReturnDirection = serviceOrder.ReturnDirection;
+ this.RenewalOrderId = serviceOrder.RenewalOrderId;
+ this.ReissueAfterSaleAmount = serviceOrder.ReissueAfterSaleAmount;
+ this.ReturnCheckRemark = serviceOrder.ReturnCheckRemark;
+ this.RenewalType = serviceOrder.RenewalType;
+ this.RenewalPurchaseOrderId = serviceOrder.RenewalPurchaseOrderId;
+ this.RenewalPurchasePlatform = serviceOrder.RenewalPurchasePlatform;
+ this.ReissueFreight = serviceOrder.ReissueFreight;
+ this.ReissueProductAmount = serviceOrder.ReissueProductAmount;
+ }
+
+ private void Save()
+ {
+
+ //closeEditServiceOrder
+ GalaSoft.MvvmLight.Messaging.Messenger.Default.Send(true, "closeEditServiceOrder");
}
}
}
diff --git a/BBWY.Client/ViewModels/ServiceOrder/ServiceOrderViewModel.cs b/BBWY.Client/ViewModels/ServiceOrder/ServiceOrderViewModel.cs
index 875a298a..d83e2fac 100644
--- a/BBWY.Client/ViewModels/ServiceOrder/ServiceOrderViewModel.cs
+++ b/BBWY.Client/ViewModels/ServiceOrder/ServiceOrderViewModel.cs
@@ -1,6 +1,7 @@
using BBWY.Client.APIServices;
using BBWY.Client.Helpers;
using BBWY.Client.Models;
+using BBWY.Client.Views.ServiceOrder;
using BBWY.Common.Extensions;
using BBWY.Common.Http;
using BBWY.Common.Models;
@@ -57,6 +58,8 @@ namespace BBWY.Client.ViewModels
public ICommand PreviewImgCommand { get; set; }
+ public ICommand EditServiceOrderCommand { get; set; }
+
public IList ServiceOrderList { get; set; }
public long ServiceOrderCount { get => serviceOrderCount; set { Set(ref serviceOrderCount, value); } }
@@ -91,6 +94,7 @@ namespace BBWY.Client.ViewModels
NavigateToDetailCommand = new RelayCommand(NavigateToDetail);
OnPageIndexChangedCommand = new RelayCommand(OnPageIndexChanged);
PreviewImgCommand = new RelayCommand(PreviewImg);
+ EditServiceOrderCommand = new RelayCommand(OpenEditServiceOrder);
ServiceOrderList = new ObservableCollection() { new ServiceOrder(), new ServiceOrder(), new ServiceOrder() };
PageSize = 10;
GlobalContext = globalContext;
@@ -159,7 +163,7 @@ namespace BBWY.Client.ViewModels
{
s.ProductPackage = ProductPackage.新; s.ImageName = "20230317071208762563,8d58b491-7859-4187-9f43-4fd177a0f25f,b0df0763-9cf4-40ca-a1fc-57695e4b8d33";
}
-
+
s.Init();
#endregion
@@ -206,7 +210,7 @@ namespace BBWY.Client.ViewModels
return;
}
CallWindowsPhoto(localPath);
- };
+ };
Task.Factory.StartNew(() => downloader.DownloadFile(fullUrl, Path.GetTempPath(), fileName, null));
}
else
@@ -241,5 +245,15 @@ namespace BBWY.Client.ViewModels
App.Current.Dispatcher.Invoke(() => MessageBox.Show($"打开照片查看器失败 {ex.Message}"));
}
}
+
+ private void OpenEditServiceOrder(ServiceOrder serviceOrder)
+ {
+ var w = new EditServiceOrder(serviceOrder);
+ var r = w.ShowDialog();
+ if (r == true)
+ {
+ //Refresh ServiceOrder
+ }
+ }
}
}
diff --git a/BBWY.Client/Views/ServiceOrder/EditServiceOrder.xaml b/BBWY.Client/Views/ServiceOrder/EditServiceOrder.xaml
index bdf5ff17..92078f87 100644
--- a/BBWY.Client/Views/ServiceOrder/EditServiceOrder.xaml
+++ b/BBWY.Client/Views/ServiceOrder/EditServiceOrder.xaml
@@ -5,12 +5,175 @@
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:BBWY.Client.Views.ServiceOrder"
mc:Ignorable="d"
+ xmlns:clientModel="clr-namespace:BBWY.Client.Models"
xmlns:c="clr-namespace:BBWY.Controls;assembly=BBWY.Controls"
+ xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:b="http://schemas.microsoft.com/xaml/behaviors"
Style="{StaticResource bwstyle}"
DataContext="{Binding EditServiceOrder,Source={StaticResource Locator}}"
Title="EditServiceOrder" Height="450" Width="340">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/BBWY.Client/Views/ServiceOrder/EditServiceOrder.xaml.cs b/BBWY.Client/Views/ServiceOrder/EditServiceOrder.xaml.cs
index e32e4045..60205dbf 100644
--- a/BBWY.Client/Views/ServiceOrder/EditServiceOrder.xaml.cs
+++ b/BBWY.Client/Views/ServiceOrder/EditServiceOrder.xaml.cs
@@ -1,6 +1,5 @@
using BBWY.Client.ViewModels;
using BBWY.Controls;
-using System.Windows;
namespace BBWY.Client.Views.ServiceOrder
{
@@ -13,6 +12,14 @@ namespace BBWY.Client.Views.ServiceOrder
{
InitializeComponent();
(this.DataContext as EditServiceOrderViewModel).SetData(serviceOrder);
+ GalaSoft.MvvmLight.Messaging.Messenger.Default.Register(this, "closeEditServiceOrder", (r) =>
+ {
+ if (r)
+ {
+ this.DialogResult = true;
+ this.Close();
+ }
+ });
}
}
}
diff --git a/BBWY.Client/Views/ServiceOrder/ServiceOrderList.xaml b/BBWY.Client/Views/ServiceOrder/ServiceOrderList.xaml
index c99e8315..edf443a2 100644
--- a/BBWY.Client/Views/ServiceOrder/ServiceOrderList.xaml
+++ b/BBWY.Client/Views/ServiceOrder/ServiceOrderList.xaml
@@ -316,12 +316,12 @@
Background="Transparent"
Foreground="{StaticResource Text.Color}"
Grid.Column="1"
- Command="{Binding DataContext.EditAfterSaleOrderCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type ListBox}}}"
+ Command="{Binding DataContext.EditServiceOrderCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type ListBox}}}"
CommandParameter="{Binding }"/>
-
@@ -397,22 +397,22 @@
+ Visibility="{Binding RenewalPurchaseOrderId,ConverterParameter=#null:Collapsed:Visible,Converter={StaticResource objConverter}}">
-
+
-
+ CommandParameter="{Binding RenewalPurchaseOrderId}" Margin="3,0,0,0"/>
-
+
@@ -421,6 +421,14 @@
+
+
diff --git a/BBWY.Server.Business/AfterSaleOrder/AfterSaleOrderBusiness.cs b/BBWY.Server.Business/AfterSaleOrder/AfterSaleOrderBusiness.cs
index b416ff02..55518038 100644
--- a/BBWY.Server.Business/AfterSaleOrder/AfterSaleOrderBusiness.cs
+++ b/BBWY.Server.Business/AfterSaleOrder/AfterSaleOrderBusiness.cs
@@ -152,7 +152,8 @@ namespace BBWY.Server.Business
if (dbAfterSaleOrder.ServiceResult == Model.Enums.ServiceResult.维修 ||
dbAfterSaleOrder.ServiceResult == Model.Enums.ServiceResult.商品补发 ||
dbAfterSaleOrder.ServiceResult == Model.Enums.ServiceResult.线下换新)
- { if (dbAfterSaleOrder.ServiceResult == Model.Enums.ServiceResult.商品补发)
+ {
+ if (dbAfterSaleOrder.ServiceResult == Model.Enums.ServiceResult.商品补发)
dbAfterSaleOrder.ProductHealth = Model.Enums.ProductHealth.客户无退货;
dbAfterSaleOrder.ReissueProductAmount = editAfterSaleOrderRequest.ReissueProductAmount;
diff --git a/BBWY.Server.Business/ServiceOrder/ServiceOrderBusiness.cs b/BBWY.Server.Business/ServiceOrder/ServiceOrderBusiness.cs
index 3030977d..2bc6ff3d 100644
--- a/BBWY.Server.Business/ServiceOrder/ServiceOrderBusiness.cs
+++ b/BBWY.Server.Business/ServiceOrder/ServiceOrderBusiness.cs
@@ -50,6 +50,8 @@ namespace BBWY.Server.Business
Status = s.Status,
ServiceId = s.ServiceId,
ShopId = s.ShopId,
+ RenewalOrderId = s.RenewalOrderId,
+ ReturnCheckRemark = s.ReturnCheckRemark,
Title = osku.Title,
ItemTotal = osku.ItemTotal.Value,
diff --git a/BBWY.Server.Model/Db/Order/Serviceorder.cs b/BBWY.Server.Model/Db/Order/Serviceorder.cs
index d3136bc7..97dc72bd 100644
--- a/BBWY.Server.Model/Db/Order/Serviceorder.cs
+++ b/BBWY.Server.Model/Db/Order/Serviceorder.cs
@@ -283,6 +283,36 @@ namespace BBWY.Server.Model.Db
///
[Column(DbType = "datetime")]
public DateTime? QualityInspectionInStoreTime { get; set; }
+
+ ///
+ /// 换新单号
+ ///
+ [Column(StringLength = 100)]
+ public string RenewalOrderId { get; set; }
+
+ ///
+ /// 退货检查备注
+ ///
+ [Column(StringLength = 255)]
+ public string ReturnCheckRemark { get; set; }
+
+ ///
+ /// 线下换新方式
+ ///
+ [Column(MapType = typeof(int?))]
+ public Enums.StorageType? RenewalType { get; set; }
+
+ ///
+ /// 线下换新采购单号
+ ///
+ [Column(StringLength = 50)]
+ public string RenewalPurchaseOrderId { get; set; }
+
+ ///
+ /// 线下换新采购平台
+ ///
+ [Column(MapType = typeof(int?))]
+ public Enums.Platform? RenewalPurchasePlatform { get; set; }
}
}
diff --git a/BBWY.Server.Model/Dto/Response/ServiceOrder/ServiceOrderItemResponse.cs b/BBWY.Server.Model/Dto/Response/ServiceOrder/ServiceOrderItemResponse.cs
index b7ff8ec3..46f57e0f 100644
--- a/BBWY.Server.Model/Dto/Response/ServiceOrder/ServiceOrderItemResponse.cs
+++ b/BBWY.Server.Model/Dto/Response/ServiceOrder/ServiceOrderItemResponse.cs
@@ -238,6 +238,31 @@ namespace BBWY.Server.Model.Dto
///
public DateTime? QualityInspectionInStoreTime { get; set; }
+ ///
+ /// 换新单号
+ ///
+ public string RenewalOrderId { get; set; }
+
+ ///
+ /// 退货检查备注
+ ///
+ public string ReturnCheckRemark { get; set; }
+
+ ///
+ /// 线下换新方式
+ ///
+ public Enums.StorageType? RenewalType { get; set; }
+
+ ///
+ /// 线下换新采购单号
+ ///
+ public string RenewalPurchaseOrderId { get; set; }
+
+ ///
+ /// 线下换新采购平台
+ ///
+ public Enums.Platform? RenewalPurchasePlatform { get; set; }
+
#region Sku
public string Logo { get; set; }
diff --git a/BBWY.Test/Program.cs b/BBWY.Test/Program.cs
index 65a23421..d89d7415 100644
--- a/BBWY.Test/Program.cs
+++ b/BBWY.Test/Program.cs
@@ -60,64 +60,7 @@ namespace BBWY.Test
var jdClient = GetJdClient(appkey, appSecret);
- //var req = new AdsIbgUniversalJosServiceAdQueryRequest();
- //req.accessPin = "可比玩具";
- //req.businessType = "2";
- //req.isDaily = "true";
- //req.clickOrOrderDay = "0";
- //req.pageSize = "100";
- //req.page = "1";
- //req.clickOrOrderCaliber = "1";
- //req.startDay = "2023-03-10";
- //req.endDay = "2023-03-10";
- //req.giftFlag = "0";
- //req.orderStatusCategory = "1";
- //var res = jdClient.Execute(req, token, DateTime.Now.ToLocalTime());
-
- /*
- var req = new AscSyncListRequest();
-
- req.buId = "10598776";
- req.operatePin = "开发者测试";
- req.operateNick = "开发者测试";
-
- //req.serviceId = 1687549909;
- //req.orderId = ;
- //req.serviceStatus = ;
-
- req.updateTimeBegin = DateTime.Parse("2023-03-01");
- req.updateTimeEnd = DateTime.Now;
-
- //req.freightUpdateDateBegin = ;
- //req.freightUpdateDateEnd = ;
-
- req.pageNumber = "1";
- req.pageSize = "100";
- var res = jdClient.Execute(req, token, DateTime.Now.ToLocalTime());
- */
-
- //var req = new AscQueryViewRequest();
-
- //req.buId = "10598776";
- //req.operatePin = "开发测试";
- //req.operateNick = "开发测试";
- //req.serviceId = 1688379598;
- //req.orderId = 262837096353;
-
-
-
- //var res = jdClient.Execute(req, token, DateTime.Now.ToLocalTime());
-
- ////var res = jdClient.Execute(req, token, DateTime.Now.ToLocalTime());
-
- //Console.WriteLine(JsonConvert.SerializeObject(res));
-
- var tdeClient = new TDEClient("https://api.jd.com/routerjson", appkey, appSecret, token);
- var returnWareAddress = "AATLKmlcVOJfnbZ2x4ekuBoGLTpp/eAJf9RDWWhUXsW4hRWT22+CAAuo7e08va+2KKQxGosPRWQ5t56PDp060VetknlcczPyKlymVNCdNRH2ew==";
- var pickwareAddress = "AATLKmlcVOJfnbZ2x4ekuBoGSURp5cw04y0gSLeBBy/BLvilFS91R6ASk3Ft2GokuD4YtgjX4hQC8XwsEschrw9DBJQWaFUaacMYA/GyHhlpkw==";
- Console.WriteLine($"returnWareAddress {tdeClient.DecryptString(returnWareAddress)}");
- Console.WriteLine($"pickwareAddress {tdeClient.DecryptString(pickwareAddress)}");
Console.ReadKey();
}
diff --git a/JD.API/Controllers/PlatformSDKController.cs b/JD.API/Controllers/PlatformSDKController.cs
index 6e52da0a..3e49f5f9 100644
--- a/JD.API/Controllers/PlatformSDKController.cs
+++ b/JD.API/Controllers/PlatformSDKController.cs
@@ -288,6 +288,7 @@ namespace JD.API.API.Controllers
return platformSDKBusinessList.FirstOrDefault(p => p.Platform == request.Platform).StartJDPromotionTask(request);
}
+ [HttpPost]
public void StartJDPromotionDelayTask([FromBody] StartPromotionTaskDelayRequest request)
{
platformSDKBusinessList.FirstOrDefault(p => p.Platform == request.Platform).StartJDPromotionDelayTask(request);
@@ -340,7 +341,7 @@ namespace JD.API.API.Controllers
///
///
[HttpPost]
- public JArray GetServiceOrderList([FromBody] ClientQueryServiceOrderRequest request)
+ public JArray GetServiceOrderList([FromBody] QueryServiceOrderRequest request)
{
return platformSDKBusinessList.FirstOrDefault(p => p.Platform == request.Platform).GetServiceOrderList(request);
}
@@ -351,7 +352,7 @@ namespace JD.API.API.Controllers
///
///
[HttpPost]
- public JToken GetServiceOrderDetail(QueryServiceOrderDetailRequest request)
+ public JToken GetServiceOrderDetail([FromBody] QueryServiceOrderDetailRequest request)
{
return platformSDKBusinessList.FirstOrDefault(p => p.Platform == request.Platform).GetServiceOrderDetail(request);
}
@@ -362,7 +363,7 @@ namespace JD.API.API.Controllers
///
///
[HttpPost]
- public JToken GetServiceOrderDeliveryDetail(QueryServiceOrderDetailRequest request)
+ public JToken GetServiceOrderDeliveryDetail([FromBody] QueryServiceOrderDetailRequest request)
{
return platformSDKBusinessList.FirstOrDefault(p => p.Platform == request.Platform).GetServiceOrderDeliveryDetail(request);
}
diff --git a/JD.API/appsettings.json b/JD.API/appsettings.json
index 746b7356..d3a0a141 100644
--- a/JD.API/appsettings.json
+++ b/JD.API/appsettings.json
@@ -9,7 +9,7 @@
"ConnectionStrings": {
"DB": "data source=rm-bp1508okrh23710yfao.mysql.rds.aliyuncs.com;port=3306;user id=qyroot;password=kaicn1132+-;initial catalog=bbwy_test;charset=utf8;sslmode=none;",
},
- "IsEnableSwagger": false,
+ "IsEnableSwagger": true,
"AllowedHosts": "*",
"ValidatePlatformKey": 1
}