master
wufan 1 month ago
parent ce6eee3ca7
commit 036edd7ea7

@ -29,6 +29,7 @@ using TradeManageNew.APIClients.FedexApi.Models.Ship;
using TradeManageNew.APIClients.ShopifyAPI;
using TradeManageNew.Models.ShopifyUsedSale;
using TradeModel;
using TradeUsedSale.Enums;
using Match = System.Text.RegularExpressions.Match;
namespace TradeManageNew
@ -28669,10 +28670,10 @@ namespace TradeManageNew
/// <param name="PageSize"></param>
/// <returns></returns>
[WebMethod(EnableSession = true)]
public JsonModel<List<TradeUsedSale.Repositories.Models.DT_OrderUsedSalePlatform>> OrderUsedSalePlatformPage(string Code,string BarCode,bool? IsPrinted,TradeUsedSale.Enums.UsedSalePlatformStatus? Status,string WarehousePositionCode,int PageIndex=1,int PageSize=50)
public JsonModel<List<OrderUsedSalePlatformPageDto>> OrderUsedSalePlatformPage(string Code,string BarCode,bool? IsPrinted,TradeUsedSale.Enums.UsedSalePlatformStatus? Status,string WarehousePositionCode,int PageIndex=1,int PageSize=50)
{
// PagesNew.Login(base.Session);
var result = new JsonModel<List<TradeUsedSale.Repositories.Models.DT_OrderUsedSalePlatform>>();
var result = new JsonModel<List<OrderUsedSalePlatformPageDto>>();
using (var db = new TradeUsedSale.Repositories.ErpDbContext())
{
var query = db.DT_OrderUsedSalePlatform.AsQueryable();
@ -28709,7 +28710,87 @@ namespace TradeManageNew
if (count > 0)
{
var page= query.Skip((PageIndex - 1) * PageSize).Take(PageSize).ToList();
result.DataSource = page;
result.DataSource = new List<OrderUsedSalePlatformPageDto>();
var productIds = page.Select(x => x.ProductId).ToList();
var products = db.HW_GoodsInfo.Where(x => productIds.Contains(x.GoodsId)).Select(o => new
{
ProductId = o.GoodsId,
FirstImgUrl = o.FirstImgUrl
}).ToList();
foreach (var pageItem in page)
{
var resultItem = new OrderUsedSalePlatformPageDto
{
Id = pageItem.Id,
ProductId = pageItem.ProductId,
ProductCode = pageItem.ProductCode,
ProductImageUrl = products.FirstOrDefault(x => x.ProductId == pageItem.ProductId)
?.FirstImgUrl,
SkuId = pageItem.SkuId,
SkuCode = pageItem.SkuCode,
BarCode = pageItem.BarCode,
IsPrinted = pageItem.IsPrinted,
Status = pageItem.Status,
WarehouseLocation = pageItem.WarehouseLocation,
WarehousePositionId = pageItem.WarehousePositionId,
WarehousePositionCode = pageItem.WarehousePositionCode,
ImageUrls = JsonConvert.DeserializeObject<List<string>>(pageItem.ImageUrls),
ShippingMethod = pageItem.ShippingMethod,
IsNew = pageItem.IsNew,
CreationTime = pageItem.CreationTime,
CreatorId = pageItem.CreatorId,
PublishMessage = pageItem.PublishMessage,
};
result.DataSource.Add(resultItem);
}
var barCodes = result.DataSource.Select(x => x.BarCode).ToList();
var shopifyOrderItems = db.DT_ShopifyUsedSaleOrderItem.Where(x => barCodes.Contains(x.ProductCode))
.ToList();
var shopifyOrderIds = shopifyOrderItems.Select(x => x.DtShopifyUsedSaleOrderId).ToList();
if (shopifyOrderIds.Any())
{
var shopifyOrders = db.DT_ShopifyUsedSaleOrder.Where(x => shopifyOrderIds.Contains(x.Id))
.ToList();
foreach (var resultItem in result.DataSource)
{
var shopifyOrderItem =
shopifyOrderItems.FirstOrDefault(x => x.ProductCode == resultItem.BarCode);
if (shopifyOrderItem != null)
{
var shopifyOrder = shopifyOrders.FirstOrDefault(x =>
x.Id == shopifyOrderItem.DtShopifyUsedSaleOrderId);
resultItem.OrderId = shopifyOrder?.OrderId;
resultItem.OrderNumber = shopifyOrder?.OrderNumber;
resultItem.OrderName = shopifyOrder?.OrderName;
resultItem.CreatedAt = shopifyOrder?.CreatedAt;
resultItem.UpdatedAt = shopifyOrder?.UpdatedAt;
resultItem.ProcessedAt = shopifyOrder?.ProcessedAt;
resultItem.Name = shopifyOrder?.Name;
resultItem.Phone = shopifyOrder?.Phone;
resultItem.Full = shopifyOrder?.Full;
resultItem.Detail = shopifyOrder?.Detail;
resultItem.Detail2 = shopifyOrder?.Detail2;
resultItem.City = shopifyOrder?.City;
resultItem.Province = shopifyOrder?.Province;
resultItem.ProvinceCode = shopifyOrder?.ProvinceCode;
resultItem.Zip = shopifyOrder?.Zip;
resultItem.Country = shopifyOrder?.Country;
resultItem.CountryCode = shopifyOrder?.CountryCode;
resultItem.Currency = shopifyOrder?.Currency;
resultItem.TotalPrice = shopifyOrder?.TotalPrice;
}
}
}
}
}
@ -29397,15 +29478,14 @@ namespace TradeManageNew
Datas = null
};
}
[WebMethod(EnableSession = true)]
public APIReturnModel GetOrderUsedSalePlatformLabel(int Id)
{
// PagesNew.Login(base.Session);
using (var db = new TradeUsedSale.Repositories.ErpDbContext())
{
var orderUsedSalePlatform = db.DT_OrderUsedSalePlatform.FirstOrDefault(x =>
x.Id == Id && x.Status == TradeUsedSale.Enums.UsedSalePlatformStatus.PendingPickup);
var orderUsedSalePlatform = db.DT_OrderUsedSalePlatform.FirstOrDefault(x => x.Id == Id);
if (orderUsedSalePlatform is null)
{
@ -29416,6 +29496,16 @@ namespace TradeManageNew
Datas = null
};
}
if (orderUsedSalePlatform.Status != TradeUsedSale.Enums.UsedSalePlatformStatus.PendingPickup)
{
return new APIReturnModel
{
Code = 0,
Message = $"二手售卖商品[{orderUsedSalePlatform.SkuCode}]不处于待发货状态",
Datas = null
};
}
var product = db.HW_GoodsInfo.FirstOrDefault(x => x.GoodsId == orderUsedSalePlatform.ProductId);
if (product is null)
@ -29462,16 +29552,6 @@ namespace TradeManageNew
Datas = null
};
}
if (orderUsedSalePlatform.Status != TradeUsedSale.Enums.UsedSalePlatformStatus.PendingPickup)
{
return new APIReturnModel
{
Code = 0,
Message = $"二手售卖商品[{orderUsedSalePlatform.SkuCode}]不处于待发货状态",
Datas = null
};
}
//Shopify订单信息
var shopifyUsedSaleOrderItem = db.DT_ShopifyUsedSaleOrderItem.FirstOrDefault(x => x.ProductCode == orderUsedSalePlatform.BarCode);
@ -29510,7 +29590,7 @@ namespace TradeManageNew
var serviceTypes = new List<RequestedShipmentServiceType>()
{
RequestedShipmentServiceType.GROUND_HOME_DELIVERY,
RequestedShipmentServiceType.SMART_POST,
//RequestedShipmentServiceType.SMART_POST,
RequestedShipmentServiceType.FEDEX_GROUND,
};
@ -29621,9 +29701,9 @@ namespace TradeManageNew
var labelSpecification = new LabelSpecification()
{
ImageType = LabelSpecificationImageType.PDF,
ImageType = LabelSpecificationImageType.PNG,
LabelFormatType = LabelSpecificationLabelFormatType.COMMON2D,
LabelStockType = LabelSpecificationLabelStockType.PAPER_4X8,
LabelStockType = LabelSpecificationLabelStockType.PAPER_4X6,
};
#endregion
@ -29675,18 +29755,6 @@ namespace TradeManageNew
}
catch (Exception ex)
{
var apiRequestStr = apiRequestInfo.ToString();
if (!string.IsNullOrWhiteSpace(apiRequestStr))
{
db.InsertWithInt32Identity(new TradeUsedSale.Repositories.Models.DT_TrackCodeApplyLog
{
UsedSaleBarCode = orderUsedSalePlatform.BarCode,
ServiceType = serviceType.ToString(),
Remark = apiRequestStr,
CreationTime = DateTime.Now
});
}
db.InsertWithInt32Identity(new TradeUsedSale.Repositories.Models.DT_TrackCodeApplyLog
{
UsedSaleBarCode = orderUsedSalePlatform.BarCode,
@ -29695,6 +29763,18 @@ namespace TradeManageNew
CreationTime = DateTime.Now
});
}
var apiRequestStr = apiRequestInfo.ToString();
if (!string.IsNullOrWhiteSpace(apiRequestStr))
{
db.InsertWithInt32Identity(new TradeUsedSale.Repositories.Models.DT_TrackCodeApplyLog
{
UsedSaleBarCode = orderUsedSalePlatform.BarCode,
ServiceType = serviceType.ToString(),
Remark = apiRequestStr,
CreationTime = DateTime.Now
});
}
}
}

@ -0,0 +1,167 @@
using System;
using System.Collections.Generic;
using TradeUsedSale.Enums;
namespace TradeManageNew.Models.ShopifyUsedSale
{
public class OrderUsedSalePlatformPageDto
{
public int Id { get; set; }
/// <summary>
/// 产品Id
/// </summary>
public int ProductId { get; set; }
/// <summary>
/// 产品编码
/// </summary>
public string ProductCode { get; set; }
/// <summary>
/// 产品图片
/// </summary>
public string ProductImageUrl { get; set; }
/// <summary>
/// SKU ID
/// </summary>
public int SkuId { get; set; }
/// <summary>
/// SKU Code
/// </summary>
public string SkuCode { get; set; }
/// <summary>
/// 打印条码
/// </summary>
public string BarCode { get; set; }
/// <summary>
/// 是否已打印
/// </summary>
public bool IsPrinted { get; set; }
/// <summary>
/// 状态
/// </summary>
public UsedSalePlatformStatus Status { get; set; }
/// <summary>
/// 仓库
/// </summary>
public WarehouseLocation WarehouseLocation { get; set; }
/// <summary>
/// 库位Id
/// </summary>
public int WarehousePositionId { get; set; }
/// <summary>
/// 库位编码
/// </summary>
public string WarehousePositionCode { get; set; }
/// <summary>
/// 拍照图片信息
/// </summary>
public List<string> ImageUrls { get; set; }
/// <summary>
/// 交易方式
/// </summary>
public ShippingMethod? ShippingMethod { get; set; }
/// <summary>
/// 是否全新
/// </summary>
public bool? IsNew { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public DateTime CreationTime { get; set; }
/// <summary>
/// 创建人
/// </summary>
public int CreatorId { get; set; }
/// <summary>
/// 推送至平台信息
/// </summary>
public string PublishMessage { get; set; }
public string OrderId { get; set; }
public string OrderNumber { get; set; }
public string OrderName { get; set; }
public DateTime? CreatedAt { get; set; }
public DateTime? UpdatedAt { get; set; }
public DateTime? ProcessedAt { get; set; }
/// <summary>
/// 收件人
/// </summary>
public string Name { get; set; }
/// <summary>
/// 收件人电话
/// </summary>
public string Phone { get; set; }
/// <summary>
/// 完整地址
/// </summary>
public string Full { get; set; }
/// <summary>
/// 地址1
/// </summary>
public string Detail { get; set; }
/// <summary>
/// 地址2
/// </summary>
public string Detail2 { get; set; }
/// <summary>
/// 城市
/// </summary>
public string City { get; set; }
/// <summary>
/// 省
/// </summary>
public string Province { get; set; }
/// <summary>
/// 省编码
/// </summary>
public string ProvinceCode { get; set; }
/// <summary>
/// 邮编
/// </summary>
public string Zip { get; set; }
/// <summary>
/// 国家
/// </summary>
public string Country { get; set; }
/// <summary>
/// 国家编码
/// </summary>
public string CountryCode { get; set; }
public string Currency { get; set; }
public decimal? TotalPrice { get; set; }
}
}

@ -2924,6 +2924,7 @@
<Compile Include="Models\Shage\OrderUsedSalePlatformInput.cs" />
<Compile Include="Models\Shage\SelfPickupOrderUsedSalePlatformInput.cs" />
<Compile Include="Models\ShopifyUsedSale\CancelShopifyUsedSaleOrderDto.cs" />
<Compile Include="Models\ShopifyUsedSale\OrderUsedSalePlatformPageDto.cs" />
<Compile Include="Models\ShopifyUsedSale\ShopifyUsedSaleOrderDto.cs" />
<Compile Include="OrderAPI.ashx.cs">
<DependentUpon>OrderAPI.ashx</DependentUpon>

Loading…
Cancel
Save