This commit is contained in:
tongfei
2023-11-10 18:27:19 +08:00
2 changed files with 13 additions and 10 deletions

View File

@@ -236,19 +236,19 @@ namespace WMS.Web.Api.Controllers
/// <summary> /// <summary>
/// 根据箱号获取箱信息 /// 根据箱号获取箱信息
/// </summary> /// </summary>
/// <param name="billNos">必填</param> /// <param name="boxBillNos">必填</param>
/// <returns></returns> /// <returns></returns>
[HttpGet] [HttpGet]
[Route("GetBox")] [Route("GetBox")]
public async Task<ResultList<BoxResponse>> GetBox([FromQuery] List<string> billNos) public async Task<ResultList<BoxResponse>> GetBox([FromQuery] List<string> boxBillNos)
{ {
var loginInfo = _loginService.GetLoginInfo(this.HttpContext.Request.Headers["Authorization"]); var loginInfo = _loginService.GetLoginInfo(this.HttpContext.Request.Headers["Authorization"]);
if (loginInfo == null || loginInfo.UserInfo == null) if (loginInfo == null || loginInfo.UserInfo == null)
return ResultList<BoxResponse>.ReFailure(ResultCodes.Token_Invalid_Error); return ResultList<BoxResponse>.ReFailure(ResultCodes.Token_Invalid_Error);
var res = await _boxRepositories.GetBox(billNos); var res = await _boxRepositories.GetBox(boxBillNos);
var bStrList = res.Select(s => s.BoxBillNo).ToList(); var bStrList = res.Select(s => s.BoxBillNo).ToList();
var ex = billNos.Except(bStrList).ToList(); var ex = boxBillNos.Except(bStrList).ToList();
if (ex.Count() > 0) if (ex.Count() > 0)
return ResultList<BoxResponse>.ReFailure("箱号" + JsonConvert.SerializeObject(ex) + "不存在", 800000); return ResultList<BoxResponse>.ReFailure("箱号" + JsonConvert.SerializeObject(ex) + "不存在", 800000);

View File

@@ -1,6 +1,7 @@
using AutoMapper; using AutoMapper;
using Microsoft.EntityFrameworkCore.Storage; using Microsoft.EntityFrameworkCore.Storage;
using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging;
using Newtonsoft.Json;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
@@ -137,9 +138,9 @@ namespace WMS.Web.Domain.Services
}; };
#endregion #endregion
//判断盘盈盘亏 //判断盘盈盘亏
string formId = entity.ResultType == TakeStockType.Loss ? FormIdParam.STK_StockCountLoss.ToString() : FormIdParam.STK_StockCountGain.ToString(); FormIdParam type = entity.ResultType == TakeStockType.Loss ? FormIdParam.STK_StockCountLoss : FormIdParam.STK_StockCountGain;
//操作金蝶 //操作金蝶
var resSync = await ErpOperate(dto, formId); var resSync = await ErpOperate(dto, type);
entity.Sync(resSync.IsSuccess, resSync.Message); entity.Sync(resSync.IsSuccess, resSync.Message);
await _takeStockRepositories.Edit(entity, true); await _takeStockRepositories.Edit(entity, true);
return res; return res;
@@ -148,13 +149,15 @@ namespace WMS.Web.Domain.Services
/// 同步金蝶操作 /// 同步金蝶操作
/// </summary> /// </summary>
/// <param name="dto"></param> /// <param name="dto"></param>
/// <param name="formId"></param> /// <param name="type"></param>
/// <returns></returns> /// <returns></returns>
private async Task<Result> ErpOperate(ErpTakeStockSaveDto dto, string formId) private async Task<Result> ErpOperate(ErpTakeStockSaveDto dto, FormIdParam type)
{ {
string formId = type.ToString();
_logger.LogInformation($"开始同步金蝶 单号:{dto.BillNo} 数据: {JsonConvert.SerializeObject(dto)}");
var res_s = await _erpService.Save<ErpTakeStockSaveDto>(dto, formId); var res_s = await _erpService.Save<ErpTakeStockSaveDto>(dto, formId);
if (!res_s.IsSuccess) if (!res_s.IsSuccess)
return Result.ReFailure(res_s.Message,res_s.Status); return Result.ReFailure(res_s.Message, res_s.Status);
//提交 //提交
ErpOperateDto o_dto = new ErpOperateDto(formId, res_s.Data); ErpOperateDto o_dto = new ErpOperateDto(formId, res_s.Data);
var res = await _erpService.Submit(o_dto, formId); var res = await _erpService.Submit(o_dto, formId);
@@ -186,7 +189,7 @@ namespace WMS.Web.Domain.Services
_logger.LogError($"盘盈盘亏同步金蝶 单号:{dto.BillNo} 审核失败原因: {res.Message} 删单失败原因:{del_res.Message}"); _logger.LogError($"盘盈盘亏同步金蝶 单号:{dto.BillNo} 审核失败原因: {res.Message} 删单失败原因:{del_res.Message}");
return res; return res;
} }
_logger.LogInformation($"同步金蝶成功");
return Result.ReSuccess(); return Result.ReSuccess();
} }
} }