This commit is contained in:
liqionghai 2025-07-17 14:27:41 +08:00
parent 99c400da6c
commit 3e3d786f81
4 changed files with 69 additions and 21 deletions

View File

@ -16,5 +16,7 @@ namespace MyCode.Project.Domain.Repositories
{
List<CreateAndStockinResp> GetInventoryMovement();
void UpdateStatus(int status, string relDataId);
}
}

View File

@ -10,6 +10,7 @@ using MyCode.Project.Domain.Repositories;
using MyCode.Project.Infrastructure.Common;
using MyCode.Project.Infrastructure.Search;
using MyCode.Project.Domain.Message.Response.JackYun;
using SqlSugar;
namespace MyCode.Project.Repositories
{
@ -43,7 +44,17 @@ namespace MyCode.Project.Repositories
}
/// <summary>
/// 更新
/// </summary>
/// <returns></returns>
public void UpdateStatus(int status,string relDataId)
{
string sql = $@"
UPDATE [dbo].[WMStoJackyun_InventoryMovement_View1] SET [status] = {status}
WHERE [] = '{relDataId}'";
this.Add(sql);
}
}
}

View File

@ -9,25 +9,23 @@ namespace MyCode.Project.Services
{
public interface IJackYunStockinService
{
///// <summary>
///// 调度运行抓吉客云销售订单
///// </summary>
///// <param name="now"></param>
//void TaskGetJackYunOrder(string now);
///// <summary>
///// 合并吉客云订单到新表
///// </summary>
///// <returns></returns>
//string GetAndMergeJackYunOrder(string now);
/// <summary>
/// 调度运行推送入库/出库申请
/// </summary>
/// <param name="now"></param>
/// <returns></returns>
void TaskSendInventoryMovement(DateTime now);
/// <summary>
/// 推送入库申请
/// </summary>
/// <param name="now"></param>
void SendInStock(DateTime now);
/// <summary>
/// 推送出库申请
/// </summary>
/// <param name="now"></param>
void SendOutStock(DateTime now);
}
}

View File

@ -7,6 +7,7 @@ using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
namespace MyCode.Project.Services.Implementation
@ -43,10 +44,20 @@ namespace MyCode.Project.Services.Implementation
}
public void TaskSendInventoryMovement(DateTime now)
{
SendInStock(now);
SendOutStock(now);
}
/// <summary>
/// 上传入库数据
/// </summary>
public void SendInStock(DateTime now)
{
var list = _wMStoJackyunInventoryMovementView1Repository.GetInventoryMovement();
//过滤入库数据
var InStockHead = list.Where(t=>t.type == "+").Select(p => p.relDataId).Distinct().ToList();
var InStockHead = list.Where(t => t.type == "+").Select(p => p.relDataId).Distinct().ToList();
InStockHead.ForEach(relDataId =>
{
CreateAndStockinGetRequestBizData requestBizData = new CreateAndStockinGetRequestBizData();
@ -54,32 +65,48 @@ namespace MyCode.Project.Services.Implementation
var InStockEntry = list.Where(t => t.relDataId == relDataId).ToList();
requestBizData.inType = 204;
requestBizData.inType = 104;
requestBizData.inWarehouseCode = InStockEntry.First().inWarehouseCode;
requestBizData.relDataId = relDataId;
requestBizData.applyDate = InStockEntry.First().applyDate;
requestBizData.@operator = "WMS";
requestBizData.source = "OPEN";
InStockEntry.ForEach(row =>
InStockEntry.ForEach(row =>
{
StockInDetailViews StockInDetail = new StockInDetailViews();
StockInDetail.relDetailId = (long)Convert.ToDecimal(row.relDetailId);
StockInDetail.skuCount = row.skuCount;
StockInDetail.isCertified = 1;
StockInDetail.rowRemark = row.rowRemark;
StockInDetail.outSkuCode = row.outSkuCode;
//StockInDetail.outSkuCode = row.outSkuCode;
StockInDetail.skuBarcode = row.skuBarcode;
stockInDetailViews.Add(StockInDetail);
});
requestBizData.stockInDetailViews = stockInDetailViews;
string lggl = JsonHelper.ToJson(requestBizData);
LogHelper.Info(lggl);
Thread.Sleep(500);
JackyunResponse response = Call(EnumAttribute.GetAttribute(ApiEnum.CREATEANDSTOCKIN).Value, "1.0", requestBizData);
//判断返回结果是否成功
if (response.code == "200")
{
_wMStoJackyunInventoryMovementView1Repository.UpdateStatus(2, relDataId);
}
else
{
_wMStoJackyunInventoryMovementView1Repository.UpdateStatus(3, relDataId);
}
string ll = JsonHelper.ToJson(response);
LogHelper.Info(ll);
});
}
/// <summary>
/// 上传出库数据
/// </summary>
public void SendOutStock(DateTime now)
{
var list = _wMStoJackyunInventoryMovementView1Repository.GetInventoryMovement();
//过滤出库数据
var OutStockHead = list.Where(t => t.type != "+").Select(p => p.relDataId).Distinct().ToList();
OutStockHead.ForEach(relDataId =>
@ -102,14 +129,24 @@ namespace MyCode.Project.Services.Implementation
stockOutDetail.skuCount = row.skuCount;
stockOutDetail.isCertified = 1;
stockOutDetail.rowRemark = row.rowRemark;
stockOutDetail.outSkuCode = row.outSkuCode;
//stockOutDetail.outSkuCode = row.outSkuCode;
stockOutDetail.skuBarcode = row.skuBarcode;
stockOutDetailViews.Add(stockOutDetail);
});
requestBizData.stockOutDetailViews = stockOutDetailViews;
string lggl = JsonHelper.ToJson(requestBizData);
LogHelper.Info(lggl);
Thread.Sleep(500);
JackyunResponse response = Call(EnumAttribute.GetAttribute(ApiEnum.CREATEANDSTOCKOUT).Value, "1.0", requestBizData);
//判断返回结果是否成功
if (response.code == "200")
{
_wMStoJackyunInventoryMovementView1Repository.UpdateStatus(2, relDataId);
}
else
{
_wMStoJackyunInventoryMovementView1Repository.UpdateStatus(3, relDataId);
}
string ll = JsonHelper.ToJson(response);
LogHelper.Info(ll);
});