From 64e485622fc5706ccf88c67d14fb3139f74e6146 Mon Sep 17 00:00:00 2001 From: 18942506660 <18942506660@A18942506660> Date: Thu, 30 Nov 2023 11:31:15 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=8B=E8=AF=95=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/WMS.Web.Api/Controllers/TestController.cs | 73 ++++++++++++++++--- src/WMS.Web.Domain/IService/IBoxService.cs | 5 +- src/WMS.Web.Domain/Services/BoxService.cs | 13 ++-- 3 files changed, 75 insertions(+), 16 deletions(-) diff --git a/src/WMS.Web.Api/Controllers/TestController.cs b/src/WMS.Web.Api/Controllers/TestController.cs index 55dd5b89..58725893 100644 --- a/src/WMS.Web.Api/Controllers/TestController.cs +++ b/src/WMS.Web.Api/Controllers/TestController.cs @@ -48,8 +48,11 @@ namespace WMS.Web.Api.Controllers [Route("hj")] public async Task TestHJ() { + + + //var list = await GetList(); //var c = await _erpService.BillQueryForSubStock(null,null); - var bc2 = await _erpService.BillQueryForDeliveryNoticeOutStock(new List() { "FHTZD8022232" }, DateTime.Now.AddDays(-10)); + //var bc2 = await _erpService.BillQueryForDeliveryNoticeOutStock(new List() { "FHTZD8022232" }, DateTime.Now.AddDays(-10)); //var bc = await _erpService.BillQueryForTransferOutOutStock(null, DateTime.Now.AddDays(-10)); //var b=await _erpService.BillQueryForAssembledAppOutStock_Assembly(null, DateTime.Now.AddDays(-1)); // var b2 = await _erpService.BillQueryForAssembledAppOutStock_Dassembly(null, DateTime.Now.AddDays(-10)); @@ -59,7 +62,7 @@ namespace WMS.Web.Api.Controllers // t.Details[0].Remark = "sdf"; // t.Details[0].ErpDetails[0].SaleBillNo = "sdfsfsbbbb"; // var s = await _outStockTaskRepositories.Edit(t); - //await _boxService.Sync(); + //await _boxService.Sync(list); //var res = await this._erpService.BillQueryForAssembledAppOutStock_Dassembly(null,DateTime.Now.AddDays(-300)); //var result= await this._erpService.BillQueryForPurchaseInStock(); //var result = await this._erpService.BillQueryForOrg(); @@ -127,27 +130,79 @@ namespace WMS.Web.Api.Controllers } - private void GetList() + + [HttpGet] + [Route("GetMaterial")] + public async Task> GetMaterial([FromQuery] List materialIds) { - List list = new List(); - for (int i = 0; i < 200; i++) + List<(int Id, string Number, string name)> mList = new List<(int Id, string Number, string name)>(); + var materials_result = await _erpService.BillQueryForMaterial(); + var materials = materials_result.Data.ToList(); + foreach (var mid in materialIds) { + var m = materials.FirstOrDefault(f => f.MaterialId == mid); + mList.Add((m.MaterialId, m.MaterialNumber, m.MaterialName)); + } + return mList; + } + [HttpGet] + [Route("SCBox/{str}/{number}")] + public async Task SCBox([FromRoute] string str, [FromRoute] int number) + { + var list = await GetList(str, number); + await _boxService.Sync(list); + return Result.ReSuccess(); + } + private async Task> GetList(string str, int number) + { + var materials_result = await _erpService.BillQueryForMaterial(); + var materials = materials_result.Data.ToList(); + List list = new List(); + for (int i = 0; i < number; i++) + { + List Details = new List(); + for (int j = 0; j <= 3; j++) + { + var ran = (new Random()).Next(5, 10); + List SerialNumbers = new List(); + for (int g = 0; g < ran; g++) + { + OpsSerialNumbersResponse or = new OpsSerialNumbersResponse() + { + SerialNumber = await GetStr(), + BarCereateUser = "01", + BarCreateTime = DateTime.Now + }; + SerialNumbers.Add(or); + } + var mi = (new Random()).Next(1000, 20000); + OpsBoxDetailsResponse d = new OpsBoxDetailsResponse() + { + MaterialId = materials[mi].MaterialId, + Qty = ran, + SerialNumbers = SerialNumbers + }; + Details.Add(d); + } + OpsBoxResponse response = new OpsBoxResponse() { - BoxBillNo = "Gys" + (500 + i).ToString(), + BoxBillNo = str + (500 + i).ToString(), OpsBoxId = 100 + i, CompleteCartonTime = DateTime.Now, CompleteCartonUser = "02", CreateTime = DateTime.Now, CreateUser = "01", OrgId = 0, - SupplierId = 10897 + SupplierId = 10897, + Details = Details }; list.Add(response); } + return list; } - private string GetStr() + private Task GetStr() { var characters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; var Charsarr = new char[11]; @@ -158,7 +213,7 @@ namespace WMS.Web.Api.Controllers Charsarr[i] = characters[random.Next(characters.Length)]; } - return new String(Charsarr); + return Task.FromResult(new String(Charsarr)); } /// diff --git a/src/WMS.Web.Domain/IService/IBoxService.cs b/src/WMS.Web.Domain/IService/IBoxService.cs index d162ebe2..4707fa2f 100644 --- a/src/WMS.Web.Domain/IService/IBoxService.cs +++ b/src/WMS.Web.Domain/IService/IBoxService.cs @@ -3,14 +3,15 @@ using System; using System.Collections.Generic; using System.Text; using System.Threading.Tasks; +using WMS.Web.Core.Dto; using WMS.Web.Core.Internal.Results; using WMS.Web.Domain.Entitys; namespace WMS.Web.Domain.IService { - public interface IBoxService + public interface IBoxService { // 同步老Ops箱信息 - Task Sync(); + Task Sync(List list = null); } } diff --git a/src/WMS.Web.Domain/Services/BoxService.cs b/src/WMS.Web.Domain/Services/BoxService.cs index c7ed1e4e..7eb5eb2f 100644 --- a/src/WMS.Web.Domain/Services/BoxService.cs +++ b/src/WMS.Web.Domain/Services/BoxService.cs @@ -45,12 +45,15 @@ namespace WMS.Web.Domain.Services _serialNumbersRepositories = serialNumbersRepositories; } - public async Task Sync() + public async Task Sync(List list) { - DateTime begin = await _erpOpsSyncDateRepositories.Get(ErpOpsSyncType.Ops); - begin= begin.AddYears(-1); - OpsBoxRequest request = new OpsBoxRequest(begin, DateTime.Now); - var list = await _opsService.GetBox(request); + if (list == null || list.Count() <= 0) + { + DateTime begin = await _erpOpsSyncDateRepositories.Get(ErpOpsSyncType.Ops); + begin = begin.AddYears(-1); + OpsBoxRequest request = new OpsBoxRequest(begin, DateTime.Now); + list = await _opsService.GetBox(request); + } var nos = list.Select(s => s.BoxBillNo).ToList(); var old_nos = await _boxRepositories.GetByNos(nos); foreach (var s in old_nos)