分组
This commit is contained in:
@@ -114,7 +114,8 @@ namespace WMS.Web.Api.Controllers
|
||||
//var ss=JsonConvert.DeserializeObject<LingXingResponse<LingXingStockResponse>>(str);
|
||||
//var b = System.Text.Json.JsonSerializer.Deserialize<LingXingResponse<LingXingStockResponse>>(str);
|
||||
//await _productInventoryService.LingXing();
|
||||
//var s = await _lingXingService.GetStock();
|
||||
//var s = await _lingXingService.GetSeller();
|
||||
//var ns = s.Data.Where(w =>w.Id== "2101").ToList();
|
||||
//string str = string.Join(",", s.Data.Select(s => s.Id).ToList());
|
||||
var sd= await _lingXingService.GetInventory(new LingXingInventoryRequest() { wid = "437" });
|
||||
string sdsdf = sd.Message;
|
||||
|
||||
@@ -4039,6 +4039,21 @@
|
||||
页条数
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:WMS.Web.Core.Dto.LingXing.LingXingSellerResponse">
|
||||
<summary>
|
||||
店铺信息
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:WMS.Web.Core.Dto.LingXing.LingXingSellerResponse.Id">
|
||||
<summary>
|
||||
id
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:WMS.Web.Core.Dto.LingXing.LingXingSellerResponse.Name">
|
||||
<summary>
|
||||
name
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:WMS.Web.Core.Dto.LingXing.LingXingStockResponse.Id">
|
||||
<summary>
|
||||
id
|
||||
|
||||
@@ -4321,6 +4321,12 @@
|
||||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:WMS.Web.Domain.IService.Public.ILingXingService.GetSeller">
|
||||
<summary>
|
||||
获取领星所有仓库
|
||||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:WMS.Web.Domain.IService.Public.ILingXingService.GetInventory(WMS.Web.Core.Dto.LingXing.LingXingInventoryRequest)">
|
||||
<summary>
|
||||
获取即时库存
|
||||
@@ -6304,6 +6310,13 @@
|
||||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:WMS.Web.Domain.Services.Public.LingXingService.GetSeller">
|
||||
<summary>
|
||||
获取所有店铺
|
||||
</summary>
|
||||
<returns></returns>
|
||||
<exception cref="T:System.NotImplementedException"></exception>
|
||||
</member>
|
||||
<member name="M:WMS.Web.Domain.Services.Public.LingXingService.GetInventory(WMS.Web.Core.Dto.LingXing.LingXingInventoryRequest)">
|
||||
<summary>
|
||||
获取即使库存
|
||||
|
||||
10
src/WMS.Web.Core/Dto/LingXing/LingXingKongRequest.cs
Normal file
10
src/WMS.Web.Core/Dto/LingXing/LingXingKongRequest.cs
Normal file
@@ -0,0 +1,10 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace WMS.Web.Core.Dto.LingXing
|
||||
{
|
||||
public class LingXingKongRequest
|
||||
{
|
||||
}
|
||||
}
|
||||
25
src/WMS.Web.Core/Dto/LingXing/LingXingSellerResponse.cs
Normal file
25
src/WMS.Web.Core/Dto/LingXing/LingXingSellerResponse.cs
Normal file
@@ -0,0 +1,25 @@
|
||||
using Newtonsoft.Json;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace WMS.Web.Core.Dto.LingXing
|
||||
{
|
||||
/// <summary>
|
||||
/// 店铺信息
|
||||
/// </summary>
|
||||
public class LingXingSellerResponse
|
||||
{
|
||||
public LingXingSellerResponse() { }
|
||||
/// <summary>
|
||||
/// id
|
||||
/// </summary>
|
||||
[JsonProperty("sid")]
|
||||
public string Id { get; set; }
|
||||
/// <summary>
|
||||
/// name
|
||||
/// </summary>
|
||||
[JsonProperty("name")]
|
||||
public string Name { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -18,6 +18,11 @@ namespace WMS.Web.Domain.IService.Public
|
||||
/// <returns></returns>
|
||||
public Task<Result<List<LingXingStockResponse>>> GetStock();
|
||||
/// <summary>
|
||||
/// 获取领星所有仓库
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public Task<Result<List<LingXingSellerResponse>>> GetSeller();
|
||||
/// <summary>
|
||||
/// 获取即时库存
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
|
||||
@@ -78,28 +78,36 @@ namespace WMS.Web.Domain.Services
|
||||
List<ErpMaterialDto> materials = new List<ErpMaterialDto>();
|
||||
if (materials_result.IsSuccess)
|
||||
materials = materials_result.Data.ToList();
|
||||
//获取店铺
|
||||
var sellerList = await _lingXingService.GetSeller();
|
||||
//合并
|
||||
var group = resInventory.Data.GroupBy(g => (g.StockId, g.SKU, g.SellerId));
|
||||
|
||||
List<ProductInventory> inventoryList = new List<ProductInventory>();
|
||||
foreach (var item in resInventory.Data)
|
||||
foreach (var item in group)
|
||||
{
|
||||
//如果物料不匹配 过滤
|
||||
var m = materials.FirstOrDefault(f => f.Specifications.Equals(item.SKU));
|
||||
var m = materials.FirstOrDefault(f => f.Specifications.Equals(item.Key.SKU));
|
||||
if (m == null) continue;
|
||||
//找仓库
|
||||
var l_stock = resStock.Data.FirstOrDefault(f => f.Id == item.StockId);
|
||||
var l_stock = resStock.Data.FirstOrDefault(f => f.Id == item.Key.StockId);
|
||||
if (l_stock == null) continue;
|
||||
var stock = r.FirstOrDefault(f => f.WarehouseCodeOfLingxing.Equals(l_stock.Name));
|
||||
if (stock == null) continue;
|
||||
|
||||
//店铺
|
||||
var seller = sellerList.Data.FirstOrDefault(f=>f.Id== item.Key.SellerId);
|
||||
if (seller == null) continue;
|
||||
var pList = resInventory.Data.Where(w => w.SKU == item.Key.SKU
|
||||
&& w.StockId == item.Key.StockId && w.SellerId == item.Key.SellerId).ToList();
|
||||
var entity = new ProductInventory()
|
||||
{
|
||||
Type=ProductInventoryType.LingXing,
|
||||
Type = ProductInventoryType.LingXing,
|
||||
MaterialNumber = m.MaterialNumber,
|
||||
Customer = item.SellerId,
|
||||
Customer = seller.Name,
|
||||
OrgCode = stock.Code,
|
||||
StockCode = stock.ErpOrgCode,
|
||||
Qty = item.Product_Valid_Num,
|
||||
BeforeQty = item.Product_Total
|
||||
Qty = pList.Sum(s => s.Product_Valid_Num),
|
||||
BeforeQty = pList.Sum(s => s.Product_Total)
|
||||
};
|
||||
inventoryList.Add(entity);
|
||||
}
|
||||
|
||||
@@ -71,6 +71,7 @@ namespace WMS.Web.Domain.Services.Public
|
||||
/// <returns></returns>
|
||||
public async Task<Result<List<LingXingStockResponse>>> GetStock()
|
||||
{
|
||||
//默认获取本地仓库 如果需要海外仓 另外需传参数type
|
||||
var request = new LingXingRequest();
|
||||
var resUrl = await GetStr<LingXingRequest>("/erp/sc/data/local_inventory/warehouse", request);
|
||||
if (!resUrl.IsSuccess) return Result<List<LingXingStockResponse>>.ReFailure(ResultCodes.LingXingUrlError);
|
||||
@@ -80,6 +81,24 @@ namespace WMS.Web.Domain.Services.Public
|
||||
|
||||
return Result<List<LingXingStockResponse>>.ReSuccess(JsonConvert.DeserializeObject<List<LingXingStockResponse>>(res.Data.ToString()));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取所有店铺
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
/// <exception cref="NotImplementedException"></exception>
|
||||
public async Task<Result<List<LingXingSellerResponse>>> GetSeller()
|
||||
{
|
||||
var request = new LingXingKongRequest();
|
||||
var resUrl = await GetStr<LingXingKongRequest>("/erp/sc/data/seller/lists", request);
|
||||
if (!resUrl.IsSuccess) return Result<List<LingXingSellerResponse>>.ReFailure(ResultCodes.LingXingUrlError);
|
||||
|
||||
var res = await _httpClientService.GetAsync<LingXingResponse>(resUrl.Data);
|
||||
if (res.Code != 0) return Result<List<LingXingSellerResponse>>.ReFailure(ResultCodes.LingXingDataError);
|
||||
|
||||
return Result<List<LingXingSellerResponse>>.ReSuccess(JsonConvert.DeserializeObject<List<LingXingSellerResponse>>(res.Data.ToString()));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取即使库存
|
||||
/// </summary>
|
||||
@@ -301,6 +320,7 @@ namespace WMS.Web.Domain.Services.Public
|
||||
return inParam;
|
||||
}
|
||||
|
||||
|
||||
#endregion
|
||||
}
|
||||
public class LxSignInfo
|
||||
|
||||
Reference in New Issue
Block a user