From c38a0e57cc1ded9ff410880528116089a9e2b7b5 Mon Sep 17 00:00:00 2001 From: me Date: Fri, 8 Aug 2025 17:30:56 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=8B=E8=AF=95=E5=89=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MenBanReports/MenBanPackingListDto.cs | 10 +- .../MsgBaseData/PartCfgs/Dtos/PartCfgDto.cs | 8 +- .../MsgCheck/BillM100s/Dtos/BillM100Dto.cs | 15 ++ .../BillM100s/Dtos/ResultBillM100Dto.cs | 6 +- .../WY.NewJit.Application.Contracts.xml | 24 +- .../MsgCheck/BillM100s/BillM100AppService.cs | 215 +++++++++++------- .../BillM100s/MenBanPackingRecService.cs | 60 ++++- .../BillM100s/ZhuHuBanPackingRecService.cs | 208 ++++++++--------- .../WY.NewJit.Application.xml | 34 ++- .../Common/ExtMethod.cs | 23 ++ .../Common/ObjectResultDto.cs | 7 + .../Extends/PaiGe/PrintTypeEnum.cs | 5 +- .../PaiGe/MenBanReports/MenBanPackingList.cs | 5 + .../MsgBaseData/Entitys/LineSN.cs | 2 +- .../Services/LineSNDomianService.cs | 84 +++---- .../bin/Debug/Win.Sfs.Shared.2.0.0.nupkg | Bin 32765 -> 32769 bytes .../bin/Debug/netcoreapp5/Win.Sfs.Shared.dll | Bin 73728 -> 73728 bytes .../bin/Debug/netcoreapp5/Win.Sfs.Shared.pdb | Bin 49104 -> 49100 bytes .../bin/Debug/netcoreapp5/Win.Utils.dll | Bin 10752 -> 10752 bytes .../bin/Debug/netcoreapp5/Win.Utils.pdb | Bin 21748 -> 22432 bytes .../obj/Debug/Win.Sfs.Shared.2.0.0.nuspec | 2 +- .../Win.Sfs.Shared.AssemblyInfo.cs | 2 +- .../Win.Sfs.Shared.AssemblyInfoInputs.cache | 2 +- ....Sfs.Shared.csproj.AssemblyReference.cache | Bin 30894 -> 30894 bytes .../obj/Debug/netcoreapp5/Win.Sfs.Shared.dll | Bin 73728 -> 73728 bytes .../obj/Debug/netcoreapp5/Win.Sfs.Shared.pdb | Bin 49104 -> 49100 bytes .../Debug/netcoreapp5/ref/Win.Sfs.Shared.dll | Bin 42496 -> 42496 bytes .../netcoreapp5/refint/Win.Sfs.Shared.dll | Bin 42496 -> 42496 bytes .../Win.Utils/bin/Debug/Win.Utils.2.0.0.nupkg | Bin 6631 -> 6628 bytes .../bin/Debug/netcoreapp5/Win.Utils.dll | Bin 10752 -> 10752 bytes .../bin/Debug/netcoreapp5/Win.Utils.pdb | Bin 21748 -> 22432 bytes .../obj/Debug/Win.Utils.2.0.0.nuspec | 2 +- .../netcoreapp5/Win.Utils.AssemblyInfo.cs | 2 +- .../Win.Utils.AssemblyInfoInputs.cache | 2 +- .../obj/Debug/netcoreapp5/Win.Utils.dll | Bin 10752 -> 10752 bytes .../obj/Debug/netcoreapp5/Win.Utils.pdb | Bin 21748 -> 22432 bytes .../obj/Debug/netcoreapp5/ref/Win.Utils.dll | Bin 7168 -> 7168 bytes .../Debug/netcoreapp5/refint/Win.Utils.dll | Bin 7168 -> 7168 bytes 38 files changed, 451 insertions(+), 267 deletions(-) diff --git a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/Extends/MenBanReports/MenBanPackingListDto.cs b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/Extends/MenBanReports/MenBanPackingListDto.cs index 9db318d..bd29109 100644 --- a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/Extends/MenBanReports/MenBanPackingListDto.cs +++ b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/Extends/MenBanReports/MenBanPackingListDto.cs @@ -43,7 +43,7 @@ namespace WY.NewJit.Extends public string ProviderCode { get; set; } /// - /// 零件类型 + /// 零件类型(对应字典大类) /// public string PartType { get; set; } @@ -110,11 +110,19 @@ namespace WY.NewJit.Extends /// public string EndHostSN { set; get; } + public Guid? SortId { get; set; } + + /// /// 排序字段 /// public int SN { get; set; } + /// + /// 是否报废 + /// + public bool IsScrap { get; set; } + public MenBanPackingListDto() { Details = new List(); diff --git a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/MsgBaseData/PartCfgs/Dtos/PartCfgDto.cs b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/MsgBaseData/PartCfgs/Dtos/PartCfgDto.cs index 76314b1..f591d01 100644 --- a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/MsgBaseData/PartCfgs/Dtos/PartCfgDto.cs +++ b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/MsgBaseData/PartCfgs/Dtos/PartCfgDto.cs @@ -47,6 +47,13 @@ namespace WY.NewJit.MsgBaseData [ImporterHeader(Name = "描述")] public string Description { get; set; } + /// + /// 厂内零件 + /// + [ExporterHeader(DisplayName = "厂内零件")] + [ImporterHeader(Name = "厂内零件")] + public string RelationKey { get; set; } + #region 派格扩展 ///// ///// 门板代号 @@ -68,6 +75,5 @@ namespace WY.NewJit.MsgBaseData ///// //public string DaXiaoLiangGang { get; set; } #endregion - } } diff --git a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/MsgCheck/BillM100s/Dtos/BillM100Dto.cs b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/MsgCheck/BillM100s/Dtos/BillM100Dto.cs index 348cf10..24441ef 100644 --- a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/MsgCheck/BillM100s/Dtos/BillM100Dto.cs +++ b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/MsgCheck/BillM100s/Dtos/BillM100Dto.cs @@ -150,6 +150,21 @@ namespace WY.NewJit.MsgCheck [ImporterHeader(Name = "零件6")] public string PartCode6 { get; set; } + /// + /// 打印时间 + /// + [ExporterHeader(DisplayName = "打印时间")] + [ImporterHeader(Name = "打印时间")] + public virtual DateTime? PrintTime { get; set; } + + /// + /// 是否打印,打印后值是“已打印” + /// + [ExporterHeader(DisplayName = "是否打印")] + [ImporterHeader(Name = "是否打印")] + public virtual string PrintBillNum { get; set; } + + } } diff --git a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/MsgCheck/BillM100s/Dtos/ResultBillM100Dto.cs b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/MsgCheck/BillM100s/Dtos/ResultBillM100Dto.cs index 472937c..3a14ee7 100644 --- a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/MsgCheck/BillM100s/Dtos/ResultBillM100Dto.cs +++ b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/MsgCheck/BillM100s/Dtos/ResultBillM100Dto.cs @@ -144,10 +144,10 @@ namespace WY.NewJit.MsgCheck public virtual bool? CanNotPrint { get; set; } /// - /// 柱护板打印状态(不为空时表示已打印) + /// 是否打印,打印后值是“已打印” /// - [ExporterHeader(IsIgnore = true)] - [ImporterHeader(IsIgnore = true)] + [ExporterHeader(DisplayName = "是否打印")] + [ImporterHeader(Name = "是否打印")] public virtual string PrintBillNum { get; set; } diff --git a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/WY.NewJit.Application.Contracts.xml b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/WY.NewJit.Application.Contracts.xml index 9073733..69b2003 100644 --- a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/WY.NewJit.Application.Contracts.xml +++ b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application.Contracts/WY.NewJit.Application.Contracts.xml @@ -36,7 +36,7 @@ - 零件类型 + 零件类型(对应字典大类) @@ -104,6 +104,11 @@ 排序字段 + + + 是否报废 + + 生产线 @@ -1308,6 +1313,11 @@ 描述 + + + 厂内零件 + + 零件编码 @@ -1601,6 +1611,16 @@ 手工操作日期 + + + 打印时间 + + + + + 是否打印,打印后值是“已打印” + + 零件查询结果DTO @@ -1948,7 +1968,7 @@ - 柱护板打印状态(不为空时表示已打印) + 是否打印,打印后值是“已打印” diff --git a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application/MsgCheck/BillM100s/BillM100AppService.cs b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application/MsgCheck/BillM100s/BillM100AppService.cs index 1545883..cec6694 100644 --- a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application/MsgCheck/BillM100s/BillM100AppService.cs +++ b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application/MsgCheck/BillM100s/BillM100AppService.cs @@ -1128,15 +1128,14 @@ select * from /// 将M100转换成MenBanPackingList主子表 /// /// - /// - /// - /// + /// 最大顺序号加一 + /// 当前页的记录 /// 报表分类,对应DicItemSort4 - /// 零件大类字典项 + /// 零件大类字典项(已经排序) + /// 本次打印的sortId相同 /// - private MenBanPackingList DoMBPrint(MenBanPrintInputDto input, int pageIdx, double maxSN, List billLst, string reportSort, List partLargeTypeLst, Guid sortId) + private MenBanPackingList DoMBPrint(MenBanPrintInputDto input, double maxSN, List pageBillLst, string reportSort, List partLargeTypeLst, Guid sortId) { - const int _colNumberPerPage = 12; //??临时的,等 var partLargeTypeObj = partLargeTypeLst.FirstOrDefault(itm => itm.DicItemCode == reportSort); if (partLargeTypeObj == null) { @@ -1150,10 +1149,6 @@ select * from { idx = 0; } - - //取当前页内容 - List curPageLst = billLst.Skip(pageIdx * _colNumberPerPage).Take(_colNumberPerPage).ToList(); - //var vmLst = curPageLst.Select(itm => itm.VehicleModelCode).Distinct().JoinAsString(","); //取车型 string ymd = ServerHelper.CurrentDateTime.ToString("yyyyMMdd"); string serialNum = maxSN.ToString().PadLeft(3, '0'); //075 @@ -1167,10 +1162,10 @@ select * from packingMain.VehicleModel_Disp = partLargeTypeObj.DicItemSort6; //车型(报表显示的) packingMain.PrintDate = ServerHelper.CurrentDateTime; packingMain.PartType = partLargeTypeObj.DicItemCode; //零件大类 - packingMain.ProductLine = billLst[0].ProductLine; + packingMain.ProductLine = pageBillLst[0].ProductLine; packingMain.SortId = sortId; - var tempLst = curPageLst.Where(itm => string.IsNullOrEmpty(itm.VIN) == false).OrderBy(itm => itm.OnlineTime).ThenBy(itm => itm.HostSN).ToList(); + var tempLst = pageBillLst.Where(itm => string.IsNullOrEmpty(itm.VIN) == false).OrderBy(itm => itm.OnlineTime).ThenBy(itm => itm.HostSN).ToList(); if (tempLst.Count > 0) { packingMain.BeginVin = tempLst[0].VIN; @@ -1181,7 +1176,7 @@ select * from packingMain.MinOnlineTime = tempLst.Min(itm => itm.OnlineTime); //本单据最早的上线时间 //明细 int sn = 1; - foreach (BillM100 billObj in curPageLst) + foreach (BillM100 billObj in pageBillLst) { MenBanPackingRec packingDetail = new MenBanPackingRec(); packingDetail.SetId(GuidGenerator.Create()); @@ -2407,10 +2402,51 @@ select * from } } } + //if (retLst.Count == 0 && billLst.Count < input.EndHostSN - input.BeginHostSN + 1) + //{ + // retLst.Add($"本车装箱单不满架!"); + //} + + return new ListResultDto(retLst); + } + catch (Exception ex) + { + ListResultDto ret = new ListResultDto(); + ret.Status = false; + ret.Message = _errorMessagePrefix + "打印前检查大众顺序号是否断号ChecMBkHostSNBreakNum 执行出错:" + ex.Message; + _logger.LogError(ret.Message); + return ret; + } + } + + [UnitOfWork(false)] + [HttpPost] + [Route("check-already-print")] + public virtual async Task> CheckAlreadyPrint(MenBanPrintInputDto input) + { + List retLst = new List(); + try + { + ListResultDto tempLst = await GetMBReportDetailList(input, false); + List billLst = tempLst.Item; + if (retLst.Count == 0 && billLst.Count < input.EndHostSN - input.BeginHostSN + 1) { retLst.Add($"本车装箱单不满架!"); } + var m100Obj = billLst[0]; + + if (m100Obj.PrintBillNum.HasValue()) + { + var alreadyPrintLst = billLst.Where(itm => string.IsNullOrEmpty(itm.PrintBillNum) == false).ToList(); + var sortId = await GetPackingListByM100Id(input.ProductLine, m100Obj.Id); + if (sortId != null) + { + var allMBLst = await _menBanPackingListRepository.GetListAsync(itm => itm.SortId == sortId); + string billNumStr = allMBLst.OrderBy(itm => itm.BillNum).JoinAsString(","); + retLst.Add($"从{alreadyPrintLst[0].HostSN}到{alreadyPrintLst[alreadyPrintLst.Count - 1].HostSN}的大众顺序号已经打印,打印对应的单号是{billNumStr}"); + } + } return new ListResultDto(retLst); } @@ -2418,12 +2454,26 @@ select * from { ListResultDto ret = new ListResultDto(); ret.Status = false; - ret.Message = _errorMessagePrefix + "打印前检查大众顺序号是否断号ChecMBkHostSNBreakNum 执行出错:" + ex.Message; + ret.Message = _errorMessagePrefix + "CheckIsAlreadyPrint执行出错:" + ex.Message; _logger.LogError(ret.Message); return ret; } } + /// + /// 根据M100的Id取打印主表 + /// + /// + /// + private async Task GetPackingListByM100Id(string productLine, Guid m100Id, bool isTrans = false) + { + string sql = $@" +select top 1 SortId from FisMenBanPackingList where ProductLine = '{productLine}' +and Id in (select MenBanPackingListId from FisMenBanPackingRec where M100BillId = '{m100Id}') +"; + var sortIdLst = await _newJitDapperRepository.GetListBySqlAsync(sql, isTrans); + return sortIdLst.Count > 0 ? sortIdLst[0] : null; + } /// /// 打印前检查大众顺序号是否断号 @@ -2511,36 +2561,36 @@ select * from int? beginHostSN = null; try { - if (isZhuHuBan == "1") //是柱护板, 根据PrintBillNum非空判断是柱护板 - { - //string minSNStr = await _billM100Repository.Where(itm => - // itm.ProductLine == productLine //指定生产线 - // && itm.CanNotPrint != true //能打印 - // && string.IsNullOrEmpty(itm.PrintBillNum) == true //等于 未打印 - // && itm.NeedReplenishPrint != 1 //排除补打 - // ).MinAsync(itm => itm.SerialNumStr); - string sql = @" -with d as -( - select *from [dbo].[FisZHBPrintStatus] where groupName='{1}' -) +// if (isZhuHuBan == "1") //是柱护板, 根据PrintBillNum非空判断是柱护板 +// { +// //string minSNStr = await _billM100Repository.Where(itm => +// // itm.ProductLine == productLine //指定生产线 +// // && itm.CanNotPrint != true //能打印 +// // && string.IsNullOrEmpty(itm.PrintBillNum) == true //等于 未打印 +// // && itm.NeedReplenishPrint != 1 //排除补打 +// // ).MinAsync(itm => itm.SerialNumStr); +// string sql = @" +//with d as +//( +// select *from [dbo].[FisZHBPrintStatus] where groupName='{1}' +//) -select min(SerialNumStr) from FisBillM100 a left join d on a.VIN=d.VIN +//select min(SerialNumStr) from FisBillM100 a left join d on a.VIN=d.VIN - where ProductLine='{0}' and (CanNotPrint !=1 or CanNotPrint is null) and (PrintBillNum is null or PrintBillNum ='') and (NeedReplenishPrint!=1 or NeedReplenishPrint is null) and d.BillStatus is null"; +// where ProductLine='{0}' and (CanNotPrint !=1 or CanNotPrint is null) and (PrintBillNum is null or PrintBillNum ='') and (NeedReplenishPrint!=1 or NeedReplenishPrint is null) and d.BillStatus is null"; - sql = string.Format(sql, productLine, GroupName); - var minSNStr = await _newJitDapperRepository.GetSingleBySqlAsync(sql); +// sql = string.Format(sql, productLine, GroupName); +// var minSNStr = await _newJitDapperRepository.GetSingleBySqlAsync(sql); - beginHostSN = await _billM100Repository.Where(itm => - itm.ProductLine == productLine //指定生产线 - && itm.CanNotPrint != true //能打印 - && string.IsNullOrEmpty(itm.PrintBillNum) == true //等于 未打印 - && itm.SerialNumStr == minSNStr - ).MinAsync(itm => itm.HostSN); - } - else //---------------门板----------------------------------------------------------------------------------- +// beginHostSN = await _billM100Repository.Where(itm => +// itm.ProductLine == productLine //指定生产线 +// && itm.CanNotPrint != true //能打印 +// && string.IsNullOrEmpty(itm.PrintBillNum) == true //等于 未打印 +// && itm.SerialNumStr == minSNStr +// ).MinAsync(itm => itm.HostSN); +// } +// else //---------------门板----------------------------------------------------------------------------------- { string minSNStr2 = await _billM100Repository.Where(itm => itm.ProductLine == productLine //指定生产线 @@ -3705,12 +3755,6 @@ select min(SerialNumStr) from FisBillM100 a left join d on a.VIN=d.VIN ret.Status = false; return ret; } - - //_logger.LogWarning($"SaveMenBanReport读取数据 - {sw.ElapsedMilliseconds}毫秒"); - - int pageCnt = (int)Math.Ceiling(billLst.Count / 12.0); //每页打印12列,取打印页数 - - //过滤产线(DicItemSort2),按“报表分类”(DicItemSort4)分组,分组后按DicItemSort7排序 Dictionary> reportSortDic = partLargeTypeLst .Where(itm => itm.DicItemSort2 == input.ProductLine && string.IsNullOrEmpty(itm.DicItemSort4) == false) @@ -3719,41 +3763,36 @@ select min(SerialNumStr) from FisBillM100 a left join d on a.VIN=d.VIN Guid sortId = GuidGenerator.Create(); //每次打印所有记录的SortId是相同的 - for (int pageIdx = 0; pageIdx < pageCnt; pageIdx++) + foreach (var reportSortItem in reportSortDic) //先按分组(01产线有C8扶手、C8头枕两个分组)、然后按分页 { - - foreach (var reportSortItem in reportSortDic) + DicItem dicItem = reportSortItem.Value[0]; + int pageSize = dicItem.DicItemSort9.TryToInt() ?? 24; //每页记录数 + int pageCount = (int)Math.Ceiling(billLst.Count / (decimal)pageSize); //页数 + for (int pageIdx = 0; pageIdx < pageCount; pageIdx++) { //生成顺序号:按生产线分组,取当前生产线的最大流水号:001至999往复循环 - double maxSN = await _lineSNDomianService.GetMaxSN(ProductTypeEnum.门板, input.ProductLine, string.Empty); + double maxSN = await _lineSNDomianService.GetMaxSN(ProductTypeEnum.门板, input.ProductLine, reportSortItem.Key); + + //取当前页内容 + List pageBillLst = billLst.Skip(pageIdx * pageSize).Take(pageSize).ToList(); - MenBanPackingList packingObj = DoMBPrint(input, pageIdx, maxSN, billLst, reportSortItem.Key, reportSortItem.Value, sortId); + MenBanPackingList packingObj = DoMBPrint(input, maxSN, pageBillLst, reportSortItem.Key, reportSortItem.Value, sortId); reportMainLst.Add(packingObj); + } } - - //_logger.LogWarning($"SaveMenBanReport转换数据 - {sw.ElapsedMilliseconds}毫秒"); - //插入门板打印记录表 await _menBanPackingListRepository.InsertManyAsync(reportMainLst, true); - retLst.AddRange(reportMainLst.Select(itm => itm.Id)); - - //_logger.LogWarning($"SaveMenBanReport插入门板打印记录表 - {sw.ElapsedMilliseconds}毫秒"); - - //调用派格版库存接口 //await SaveMiddleTable_MB(reportMainLst); - - //_logger.LogWarning($"SaveMenBanReport插入中间表 - {sw.ElapsedMilliseconds}毫秒"); - - //更新M100的门板打印标志:BillStatus=3 foreach (BillM100 billObj in billLst) { if (billObj.BillStatus == BillStatusEnum.Match) { - billObj.SetBillStatus(BillStatusEnum.Publish); + //billObj.SetBillStatus(BillStatusEnum.Publish); billObj.PrintTime = ServerHelper.CurrentDateTime; + billObj.PrintBillNum = "已打印"; billObj.NeedReplenishPrint = 0; //不需要补打 await _billM100Repository.UpdateAsync(billObj, true); } @@ -3764,17 +3803,27 @@ select min(SerialNumStr) from FisBillM100 a left join d on a.VIN=d.VIN // await _billM100Repository.UpdateAsync(billObj, true); //} } - - //_logger.LogWarning($"SaveMenBanReport更新M100的门板打印标志 - {sw.ElapsedMilliseconds}毫秒"); - - } + //4.校验1 - 4张单据都没有扫描提交,可以重复打印1 - 4张单据,或者打印1 - 5, + //5.重复打印后,原单据作废,原单据即使扫描也无法提交 + var m100Id = billLst[0].Id; + var sortId2 = await GetPackingListByM100Id(input.ProductLine, m100Id, true); + if (sortId2 != null) + { + var allMBLst = await _menBanPackingListRepository.GetListAsync(itm => itm.SortId == sortId2); + foreach (var mbObj in allMBLst) + { + mbObj.IsScrap = true; + } + await _menBanPackingListRepository.UpdateManyAsync(allMBLst); + } + } //if 正常打印 //else if (input.PrintType == PrintTypeEnum.重新打印) //和正常打印单据完全一样,可以打印部分单据 //{ // throw new BusinessException("请调用LoadMenBanReport方法!"); //} await uow.CompleteAsync(); ret.Status = true; - ret.Item = retLst; + ret.Item = reportMainLst.Select(itm => itm.Id).ToList(); return ret; } catch (Exception ex) @@ -3874,7 +3923,7 @@ select min(SerialNumStr) from FisBillM100 a left join d on a.VIN=d.VIN MenBanPackingListResultDto ret = new MenBanPackingListResultDto(); try { - List reportLst = await LoadMenBanReport(input); + List reportLst = await LoadMenBanReport(input); //例如:包含两条C8扶手、两条C8头枕 List partLargeTypeLst = await _dicItemRepository.GetListAsync(itm => itm.DicTypeCode == "零件大类"); foreach (MenBanPackingListDto report in reportLst) @@ -3886,17 +3935,29 @@ select min(SerialNumStr) from FisBillM100 a left join d on a.VIN=d.VIN } } reportLst = reportLst.OrderBy(itm => itm.SN).ToList(); - if (reportLst.Count > 0) + var partTypeLst = reportLst.Select(itm => itm.PartType).Distinct().ToList(); + + if (partTypeLst.Count > 0) { - ret.MainList1.Add(reportLst[0]); - ret.DetailList1.AddRange(reportLst[0].Details); - reportLst[0].Details = null; + var mainLst1 = reportLst.Where(itm => itm.PartType == partTypeLst[0]).OrderBy(itm => itm.SN).ToList(); + var detailLst1 = mainLst1.SelectMany(itm => itm.Details).OrderBy(itm => itm.SN).ToList(); + foreach (var item in mainLst1) + { + item.Details = null; + } + ret.MainList1 = mainLst1; + ret.DetailList1 = detailLst1; } - if (reportLst.Count > 1) + if (partTypeLst.Count > 1) { - ret.MainList2.Add(reportLst[1]); - ret.DetailList2.AddRange(reportLst[1].Details); - reportLst[1].Details = null; + var mainLst2 = reportLst.Where(itm => itm.PartType == partTypeLst[1]).OrderBy(itm => itm.SN).ToList(); + var detailLst2 = mainLst2.SelectMany(itm => itm.Details).OrderBy(itm => itm.SN).ToList(); + foreach (var item in mainLst2) + { + item.Details = null; + } + ret.MainList2 = mainLst2; + ret.DetailList2 = detailLst2; } return ret; } diff --git a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application/MsgCheck/BillM100s/MenBanPackingRecService.cs b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application/MsgCheck/BillM100s/MenBanPackingRecService.cs index 832bfed..816169e 100644 --- a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application/MsgCheck/BillM100s/MenBanPackingRecService.cs +++ b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application/MsgCheck/BillM100s/MenBanPackingRecService.cs @@ -10,6 +10,7 @@ using Microsoft.Extensions.Caching.Distributed; using Microsoft.Extensions.Logging; using Shouldly; using System; +using System.Collections; using System.Collections.Generic; using System.IO; using System.Linq; @@ -166,7 +167,7 @@ namespace Win.Sfs.SettleAccount.FISes public async Task> GetMainListAsync(MenBanPackingListRequestDto input) { List filters = new List(); - filters.Add(new FilterCondition() { Action = EnumFilterAction.Equal, Column = "ReportStatus", Logic = EnumFilterLogic.And, Value = ((int)ReportStatusEnum.已打印).ToString() }); + filters.Add(new FilterCondition() { Action = EnumFilterAction.Equal, Column = "ReportStatus", Logic = EnumFilterLogic.And, Value = ((int)ReportStatusEnum.未扫描).ToString() }); if (!string.IsNullOrEmpty(input.ProductLine)) { @@ -543,17 +544,64 @@ namespace Win.Sfs.SettleAccount.FISes [HttpPost] [Route("update-scan-status")] - public virtual async Task UpdateScanStatus(string billNum) + public virtual async Task UpdateScanStatus(List billNumList) { ObjectResultDto ret = new ObjectResultDto(); try { - var lst = await _menBanPackingListRepository.GetListAsync(itm => itm.BillNum == billNum); - foreach (var item in lst) + #region 校验 + if (billNumList.Count == 0) { - item.ReportStatus = ReportStatusEnum.已扫描; - var succ = await _menBanPackingListRepository.UpdateAsync(item); + throw new Exception($"传入的单号不能为空!"); } + string billNumStr = billNumList.JoinAsString(","); + + var menBanLst = await _menBanPackingListRepository.GetListAsync(itm => billNumList.Contains(itm.BillNum)); + bool isScrap = menBanLst.Any(itm => itm.IsScrap == true); + if (isScrap) + { + throw new Exception($"传入的单号,存在已经报废的单据(FIS操作人员重新打印引起)" + billNumStr); + } + if (menBanLst.Count != billNumList.Count) + { + throw new Exception($"传入的单号,有的在打印表不存在:" + billNumStr); + } + var distLst = menBanLst.Select(itm => itm.SortId).Distinct().ToList(); + if (distLst.Count > 1) + { + throw new Exception($"传入的单号,不是一个打印批次:" + billNumStr); + } + var sortId = menBanLst[0].SortId; + var batchMenBanLst = await _menBanPackingListRepository.GetListAsync(itm => itm.SortId == sortId, true); + var batchSortIdLst = batchMenBanLst.Select(itm => itm.BillNum).ToList(); + + var exceptLst1 = batchSortIdLst.OrderBy(itm => itm).Except(billNumList.OrderBy(itm => itm)).ToList(); + if (exceptLst1.Count > 0) + { + throw new Exception($"和一个打印批次比较,传入的单号缺失:" + exceptLst1.JoinAsString(",")); + } + + var exceptLst2 = billNumList.OrderBy(itm => itm).Except(batchSortIdLst.OrderBy(itm => itm)).ToList(); + if (exceptLst2.Count > 0) + { + throw new Exception($"和一个打印批次比较,传入的单号多了:" + exceptLst1.JoinAsString(",")); + } + #endregion + + //更新状态 + foreach (var batchMenBan in batchMenBanLst) + { + batchMenBan.ReportStatus = ReportStatusEnum.已扫描; + var updateObj = await _menBanPackingListRepository.UpdateAsync(batchMenBan); + } + var billIdLst = batchMenBanLst.SelectMany(itm => itm.Details).Select(itm => itm.M100BillId).ToList(); + var m100Lst = await _billM100Repository.GetListAsync(itm => billIdLst.Contains(itm.Id)); + foreach (var m100 in m100Lst) + { + m100.SetBillStatus(BillStatusEnum.Publish); + } + await _billM100Repository.UpdateManyAsync(m100Lst); + ret.Status = true; return ret; } diff --git a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application/MsgCheck/BillM100s/ZhuHuBanPackingRecService.cs b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application/MsgCheck/BillM100s/ZhuHuBanPackingRecService.cs index 80c4e2a..cec7485 100644 --- a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application/MsgCheck/BillM100s/ZhuHuBanPackingRecService.cs +++ b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application/MsgCheck/BillM100s/ZhuHuBanPackingRecService.cs @@ -154,7 +154,7 @@ namespace Win.Sfs.SettleAccount.FISes { List filters = new List(); - filters.Add(new FilterCondition() { Action = EnumFilterAction.Equal, Column = "ReportStatus", Logic = EnumFilterLogic.And, Value = ((int)ReportStatusEnum.已打印).ToString() }); + filters.Add(new FilterCondition() { Action = EnumFilterAction.Equal, Column = "ReportStatus", Logic = EnumFilterLogic.And, Value = ((int)ReportStatusEnum.未扫描).ToString() }); if (!string.IsNullOrEmpty(input.ProductLine)) { @@ -271,109 +271,109 @@ namespace Win.Sfs.SettleAccount.FISes /// IDs /// /// IDs /// 是否执行成功 - [HttpPost] - [Route("scrap")] - [UnitOfWork(isTransactional: false)] - virtual public async Task> ScrapAsync(List ids) - { - var selLst = await _ZhuHuBanPackingListRepository.Where(p => ids.Contains(p.Id)).ToListAsync(); - if (selLst == null || selLst.Count == 0) - { - throw new BusinessException("1001", "没有选中要作废的已打印装箱单!!"); - } - - foreach (var selObj in selLst) - { - string maxBillNum = await _ZhuHuBanPackingListRepository.Where(itm => itm.ProductLine == selObj.ProductLine && itm.ReportStatus == ReportStatusEnum.已打印).MaxAsync(itm => itm.BillNum); //取当前生产线的最大装箱单号 - if (string.IsNullOrEmpty(maxBillNum) == false) - { - ZhuHuBanPackingList firObj = await _ZhuHuBanPackingListRepository.FirstOrDefaultAsync(itm => itm.BillNum == maxBillNum); - if (firObj != null) - { - if (selObj.SortId != firObj.SortId) - { - throw new BusinessException("1001", "只能报废当前生产线的最后打印单据,要报废的单据不是最后打印单据!"); - } - } - } - } - - var sortList = selLst.Select(p => p.SortId).Distinct().ToList();//筛选出匹配门板 - List pairlist = _ZhuHuBanPackingListRepository.Where(p => sortList.Contains(p.SortId)).ToList(); - - - - var idList = pairlist.Select(p => p.Id).ToList(); - var _ls = pairlist.Select(p => p.BillNum).ToList(); - var _strList = new List(); - - _ls.ForEach(p => { - _strList.Add(string.Format("'{0}'", p)); - }); - string str = string.Join(",", _strList.ToArray()); - var wmsLst = _wmsRepository.GetListBySql(string.Format("select * from TB_BILL where (state=1 or state=2) and BillNum in ({0}) ", str)); - if (wmsLst.Count() == 0) //库存没有排序 - { - //调用库存系统接口 - List billNumLst = pairlist.Select(itm => itm.BillNum).Distinct().ToList(); - foreach (string billNumStr in billNumLst) - { - DelOrScrapWMSInterface(billNumStr, true); - } - - #region 作废时单据序号减一 - string curProductLine = selLst[0].ProductLine; - DateTime curPrintDate = selLst[0].PrintDate; - - var partTypeLst = pairlist.Select(itm => itm.PartType).ToList(); - foreach (string curPartType in partTypeLst) - { - var priorLst = _ZhuHuBanPackingListRepository.Where(itm => - itm.ReportStatus == ReportStatusEnum.已打印 - && itm.ProductLine == curProductLine - && itm.PartType == curPartType - && idList.Contains(itm.Id) == false); - - if (priorLst.Any()) - { - string maxBillNum = priorLst.Max(itm => itm.BillNum); //扣除要作废记录,取当前生产线的最大单据号 - ZhuHuBanPackingList priorObj = priorLst.FirstOrDefault(itm => itm.BillNum == maxBillNum); //扣除要作废记录,取当前生产线的最后打印记录 - double updRecCnt = await _lineSNDomianServic.SetMaxSN(ProductTypeEnum.柱护板, curProductLine, curPartType, priorObj.PrintDate, priorObj.BillSerialNum.TryToDoubleZero(), null); //调用减号接口 - } - else - { - double updRecCnt2 = await _lineSNDomianServic.SetMaxSN(ProductTypeEnum.柱护板, curProductLine, curPartType, curPrintDate, 0, null); //调用减号接口,没有上条记录时 单据号传0 - } - } - #endregion - - //打印记录表更新成 已作废 状态 - foreach (var itm in pairlist) - { - itm.ReportStatus = WY.NewJit.Extends.PaiGe.ReportStatusEnum.已作废; - } - await _ZhuHuBanPackingListRepository.UpdateManyAsync(pairlist); - //批量改为未打印 - var _childList = await _ZhuHuBanPackingListRepository.Where(p => idList.Contains(p.Id)).SelectMany(p => p.Details).ToListAsync(); - var _child = _childList.Select(p => p.M100BillId).Distinct().ToList(); - var _lst1 = await _billM100Repository.Where(p => _child.Contains(p.Id)).ToListAsync(); - _lst1.ForEach(p => - { - p.SetZHBBillStatus(ZHBBillStatusEnum.NotPrint); - p.PrintTime2 = null; - }); - await _billM100Repository.UpdateManyAsync(_lst1); - var types = await _ZhuHuBanPackingListRepository.Where(p => idList.Contains(p.Id)).Select(p => p.PartType).Distinct().ToListAsync(); - var groupName = await _printTemplateConfigurationRepository.FirstOrDefaultAsync(r => types.Contains(r.PartType)); - var vins = _childList.Select(p => p.VIN).Distinct().ToList(); - await _zHBPrintStatusRepository.DeleteAsync(r => vins.Contains(r.VIN) && r.GroupName == groupName.GroupName); - } - else - { - throw new BusinessException("1001", "WMS已经排序,不能报废!"); - } - return wmsLst.Select(p => p.BillNum).ToList(); - } + //[HttpPost] + //[Route("scrap")] + //[UnitOfWork(isTransactional: false)] + //virtual public async Task> ScrapAsync(List ids) + //{ + // var selLst = await _ZhuHuBanPackingListRepository.Where(p => ids.Contains(p.Id)).ToListAsync(); + // if (selLst == null || selLst.Count == 0) + // { + // throw new BusinessException("1001", "没有选中要作废的已打印装箱单!!"); + // } + + // foreach (var selObj in selLst) + // { + // string maxBillNum = await _ZhuHuBanPackingListRepository.Where(itm => itm.ProductLine == selObj.ProductLine && itm.ReportStatus == ReportStatusEnum.未扫描).MaxAsync(itm => itm.BillNum); //取当前生产线的最大装箱单号 + // if (string.IsNullOrEmpty(maxBillNum) == false) + // { + // ZhuHuBanPackingList firObj = await _ZhuHuBanPackingListRepository.FirstOrDefaultAsync(itm => itm.BillNum == maxBillNum); + // if (firObj != null) + // { + // if (selObj.SortId != firObj.SortId) + // { + // throw new BusinessException("1001", "只能报废当前生产线的最后打印单据,要报废的单据不是最后打印单据!"); + // } + // } + // } + // } + + // var sortList = selLst.Select(p => p.SortId).Distinct().ToList();//筛选出匹配门板 + // List pairlist = _ZhuHuBanPackingListRepository.Where(p => sortList.Contains(p.SortId)).ToList(); + + + + // var idList = pairlist.Select(p => p.Id).ToList(); + // var _ls = pairlist.Select(p => p.BillNum).ToList(); + // var _strList = new List(); + + // _ls.ForEach(p => { + // _strList.Add(string.Format("'{0}'", p)); + // }); + // string str = string.Join(",", _strList.ToArray()); + // var wmsLst = _wmsRepository.GetListBySql(string.Format("select * from TB_BILL where (state=1 or state=2) and BillNum in ({0}) ", str)); + // if (wmsLst.Count() == 0) //库存没有排序 + // { + // //调用库存系统接口 + // List billNumLst = pairlist.Select(itm => itm.BillNum).Distinct().ToList(); + // foreach (string billNumStr in billNumLst) + // { + // DelOrScrapWMSInterface(billNumStr, true); + // } + + // #region 作废时单据序号减一 + // string curProductLine = selLst[0].ProductLine; + // DateTime curPrintDate = selLst[0].PrintDate; + + // var partTypeLst = pairlist.Select(itm => itm.PartType).ToList(); + // foreach (string curPartType in partTypeLst) + // { + // var priorLst = _ZhuHuBanPackingListRepository.Where(itm => + // itm.ReportStatus == ReportStatusEnum.未扫描 + // && itm.ProductLine == curProductLine + // && itm.PartType == curPartType + // && idList.Contains(itm.Id) == false); + + // if (priorLst.Any()) + // { + // string maxBillNum = priorLst.Max(itm => itm.BillNum); //扣除要作废记录,取当前生产线的最大单据号 + // ZhuHuBanPackingList priorObj = priorLst.FirstOrDefault(itm => itm.BillNum == maxBillNum); //扣除要作废记录,取当前生产线的最后打印记录 + // double updRecCnt = await _lineSNDomianServic.SetMaxSN(ProductTypeEnum.柱护板, curProductLine, curPartType, priorObj.PrintDate, priorObj.BillSerialNum.TryToDoubleZero(), null); //调用减号接口 + // } + // else + // { + // double updRecCnt2 = await _lineSNDomianServic.SetMaxSN(ProductTypeEnum.柱护板, curProductLine, curPartType, curPrintDate, 0, null); //调用减号接口,没有上条记录时 单据号传0 + // } + // } + // #endregion + + // //打印记录表更新成 已作废 状态 + // foreach (var itm in pairlist) + // { + // itm.ReportStatus = WY.NewJit.Extends.PaiGe.ReportStatusEnum.已作废; + // } + // await _ZhuHuBanPackingListRepository.UpdateManyAsync(pairlist); + // //批量改为未打印 + // var _childList = await _ZhuHuBanPackingListRepository.Where(p => idList.Contains(p.Id)).SelectMany(p => p.Details).ToListAsync(); + // var _child = _childList.Select(p => p.M100BillId).Distinct().ToList(); + // var _lst1 = await _billM100Repository.Where(p => _child.Contains(p.Id)).ToListAsync(); + // _lst1.ForEach(p => + // { + // p.SetZHBBillStatus(ZHBBillStatusEnum.NotPrint); + // p.PrintTime2 = null; + // }); + // await _billM100Repository.UpdateManyAsync(_lst1); + // var types = await _ZhuHuBanPackingListRepository.Where(p => idList.Contains(p.Id)).Select(p => p.PartType).Distinct().ToListAsync(); + // var groupName = await _printTemplateConfigurationRepository.FirstOrDefaultAsync(r => types.Contains(r.PartType)); + // var vins = _childList.Select(p => p.VIN).Distinct().ToList(); + // await _zHBPrintStatusRepository.DeleteAsync(r => vins.Contains(r.VIN) && r.GroupName == groupName.GroupName); + // } + // else + // { + // throw new BusinessException("1001", "WMS已经排序,不能报废!"); + // } + // return wmsLst.Select(p => p.BillNum).ToList(); + //} } diff --git a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application/WY.NewJit.Application.xml b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application/WY.NewJit.Application.xml index b95e117..6cefdfa 100644 --- a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application/WY.NewJit.Application.xml +++ b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Application/WY.NewJit.Application.xml @@ -1045,16 +1045,16 @@ - + 将M100转换成MenBanPackingList主子表 - - - + 最大顺序号加一 + 当前页的记录 报表分类,对应DicItemSort4 - 零件大类字典项 + 零件大类字典项(已经排序) + 本次打印的sortId相同 @@ -1064,6 +1064,13 @@ 断号时Item不为空 + + + 根据M100的Id取打印主表 + + + + 根据生产线获取正常打印单据的起始大众顺序号2 @@ -2053,13 +2060,6 @@ 请求条件 实体DTO列表 - - - 按IDs删除实体列表 - - IDs - 是否执行成功 - 取待报废的全部数据,用于展示 @@ -2067,7 +2067,7 @@ 请求条件 实体DTO列表 - + 报废 @@ -2118,13 +2118,5 @@ 请求条件 实体DTO列表 - - - 报废 - - IDs - /// IDs - 是否执行成功 - diff --git a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain.Shared/Common/ExtMethod.cs b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain.Shared/Common/ExtMethod.cs index 4e3d891..fc431a7 100644 --- a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain.Shared/Common/ExtMethod.cs +++ b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain.Shared/Common/ExtMethod.cs @@ -66,6 +66,29 @@ namespace WY.NewJit.Common } } + public static decimal? TryToDecimal(this string p_str) + { + if (p_str == null) + { + return null; + } + decimal ret; + bool isSucc = Decimal.TryParse(p_str, out ret); + if (isSucc) + { + return ret; + } + else + { + return null; + } + } + + public static decimal TryToDecimalZero(this string p_str) + { + return p_str.TryToDecimal() ?? 0.0M; + } + public static double TryToDoubleZero(this string p_str) { double resu; diff --git a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain.Shared/Common/ObjectResultDto.cs b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain.Shared/Common/ObjectResultDto.cs index a7bb060..40186bb 100644 --- a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain.Shared/Common/ObjectResultDto.cs +++ b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain.Shared/Common/ObjectResultDto.cs @@ -61,6 +61,13 @@ namespace WY.NewJit this.Item = item; } + public ListResultDto(List item, bool status) + : base(status, "") + { + this.Item = item; + } + + public List Item { get; set; } } diff --git a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain.Shared/Extends/PaiGe/PrintTypeEnum.cs b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain.Shared/Extends/PaiGe/PrintTypeEnum.cs index 7004fc9..1ba3ef8 100644 --- a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain.Shared/Extends/PaiGe/PrintTypeEnum.cs +++ b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain.Shared/Extends/PaiGe/PrintTypeEnum.cs @@ -13,8 +13,7 @@ namespace WY.NewJit.Extends.PaiGe public enum ReportStatusEnum { - 已打印 = 0, - 已作废 = 1, - 已扫描 = 2 + 未扫描 = 0, + 已扫描 = 1, } } diff --git a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain/Extends/PaiGe/MenBanReports/MenBanPackingList.cs b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain/Extends/PaiGe/MenBanReports/MenBanPackingList.cs index 6aa4fde..755ed2d 100644 --- a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain/Extends/PaiGe/MenBanReports/MenBanPackingList.cs +++ b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain/Extends/PaiGe/MenBanReports/MenBanPackingList.cs @@ -103,6 +103,11 @@ namespace WY.NewJit.Extends /// public virtual DateTime? MinOnlineTime { get; set; } + /// + /// 是否报废 + /// + public bool IsScrap { get; set; } + public MenBanPackingList() { Details = new List(); diff --git a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain/MsgBaseData/Entitys/LineSN.cs b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain/MsgBaseData/Entitys/LineSN.cs index c1f34d0..75908e3 100644 --- a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain/MsgBaseData/Entitys/LineSN.cs +++ b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain/MsgBaseData/Entitys/LineSN.cs @@ -68,7 +68,7 @@ namespace WY.NewJit.MsgBaseData Remark = remark; } - public void Update(double sn, DateTime lastPrintTime, string remark) + public void Update(double sn, DateTime lastPrintTime, string remark = "") { SN = sn; LastPrintTime = lastPrintTime; diff --git a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain/MsgBaseData/Services/LineSNDomianService.cs b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain/MsgBaseData/Services/LineSNDomianService.cs index 41cc749..e68652f 100644 --- a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain/MsgBaseData/Services/LineSNDomianService.cs +++ b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain/MsgBaseData/Services/LineSNDomianService.cs @@ -19,20 +19,20 @@ namespace WY.NewJit.MsgBaseData } /// - /// 生成门板或柱护板右上角顺序号,每天零点开始往复循环1-99 + /// 生成顺序号,每天零点开始往复循环1-99 /// /// 门板或柱护板 /// 产线 - /// 门板时传入"" + /// 报表分类,对应产品大类的DicItemSort4 /// - public async Task GetMaxSN(ProductTypeEnum productType, string productLine, string partType) + public async Task GetMaxSN(ProductTypeEnum productType, string productLine, string reportType) { bool isExist = true; - var typeObj = await _lineSNRepository.FirstOrDefaultAsync(p => p.ProductType == productType && p.ProductLine == productLine && p.PartType == partType); + var lineSNObj = await _lineSNRepository.FirstOrDefaultAsync(p => p.ProductType == productType && p.ProductLine == productLine && p.PartType == reportType); - if (typeObj == null) + if (lineSNObj == null) { isExist = false; } @@ -40,75 +40,75 @@ namespace WY.NewJit.MsgBaseData DateTime now = DateTime.Now; DateTime today8 = new DateTime(now.Year, now.Month, now.Day, 0, 0, 0); - if (typeObj != null) + if (lineSNObj != null) //之前生成过顺序号 { - if (typeObj.LastPrintTime < today8 && now >= today8) + if (lineSNObj.LastPrintTime < today8 && now >= today8) { - typeObj.Update(1, now, string.Empty); + lineSNObj.Update(1, now); } else { - if (typeObj.SN == 99) + if (lineSNObj.SN == 99) { - typeObj.Update(1, now, string.Empty); + lineSNObj.Update(1, now); } else { - typeObj.Update(typeObj.SN + 1, now, string.Empty); + lineSNObj.Update(lineSNObj.SN + 1, now); } } } - else + else //第一次生成顺序号 { - typeObj = new LineSN(Guid.NewGuid(), productType, productLine, partType, 1, now, string.Empty); + lineSNObj = new LineSN(Guid.NewGuid(), productType, productLine, reportType, 1, now, string.Empty); } if (isExist) { - await _lineSNRepository.UpdateAsync(typeObj, true); + await _lineSNRepository.UpdateAsync(lineSNObj, true); } else { - await _lineSNRepository.InsertAsync(typeObj, true); + await _lineSNRepository.InsertAsync(lineSNObj, true); } - return typeObj.SN; + return lineSNObj.SN; } - public async Task SetMaxSN(ProductTypeEnum productType, string productLine, string partType, DateTime lastPrintTime, double sn, string remark) - { - bool isExist = true; + //public async Task SetMaxSN(ProductTypeEnum productType, string productLine, string partType, DateTime lastPrintTime, double sn, string remark) + //{ + // bool isExist = true; - var typeObj = _lineSNRepository.FirstOrDefault(p => p.ProductType == productType && p.ProductLine == productLine && p.PartType == partType); + // var typeObj = _lineSNRepository.FirstOrDefault(p => p.ProductType == productType && p.ProductLine == productLine && p.PartType == partType); - if (typeObj == null) - { - isExist = false; - } + // if (typeObj == null) + // { + // isExist = false; + // } - if (typeObj != null) - { + // if (typeObj != null) + // { - typeObj.Update(sn, lastPrintTime, remark); - } - else - { - typeObj = new LineSN(Guid.NewGuid(), productType, productLine, partType, sn, lastPrintTime, remark); - } + // typeObj.Update(sn, lastPrintTime, remark); + // } + // else + // { + // typeObj = new LineSN(Guid.NewGuid(), productType, productLine, partType, sn, lastPrintTime, remark); + // } - if (isExist) - { - await _lineSNRepository.UpdateAsync(typeObj); - } - else - { - await _lineSNRepository.InsertAsync(typeObj); - } + // if (isExist) + // { + // await _lineSNRepository.UpdateAsync(typeObj); + // } + // else + // { + // await _lineSNRepository.InsertAsync(typeObj); + // } - return typeObj.SN; - } + // return typeObj.SN; + //} } } diff --git a/Shared/Win.Sfs.Shared/bin/Debug/Win.Sfs.Shared.2.0.0.nupkg b/Shared/Win.Sfs.Shared/bin/Debug/Win.Sfs.Shared.2.0.0.nupkg index f3be9fbd56c5c56fb5cb03c38866386ffe63ca55..0363a8c456382c94e8440e11ef272d46b5c8b7d2 100644 GIT binary patch delta 31562 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 SKod-Xq!~l%_H0?ksZ0Qji%v@b diff --git a/Shared/Win.Sfs.Shared/bin/Debug/netcoreapp5/Win.Sfs.Shared.pdb b/Shared/Win.Sfs.Shared/bin/Debug/netcoreapp5/Win.Sfs.Shared.pdb index 472c778064acfce8081c9a6af8c5628b4eaf6c99..ab51469c4d2585cde9cd4455f683ee63a506c448 100644 GIT binary patch delta 4203 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�xQFq7iwvUHRBP^vI&NFKuMKavYX9<-UVg{$ tqIJEzZ*PB`NMDaH>d$b&T|xgHqC#Xi`pM$I-aU7P-qoF^@WVCc{{u4h#Qp#P delta 4224 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 HzsLjt$a+d{ diff --git a/Shared/Win.Sfs.Shared/bin/Debug/netcoreapp5/Win.Utils.pdb b/Shared/Win.Sfs.Shared/bin/Debug/netcoreapp5/Win.Utils.pdb index b067310b1f9b033bebe979f8688cbd367d918aea..185babdec85528be83806f714d5bc9b48b403cb9 100644 GIT binary patch delta 1262 zcmY*Xc~BE)6#q8oa>!6cP$|PAG#DBJ6-f~hK`EBRWOH$dR0*)8fn1XVO{5KoI*M(_ zniTA`LS_mGow33MW|XT`I%%O$u+UNm@F)hfmQswhMOy8b=s(?=_j|v0{NBFZ?|amS z*e@ezw-vlh0U+{S08lCbNdR(*L8nm5^^k%zn1f{ynJobskXL#5-t4Rl=)Z>Xj0ncN zm6{?LoAWjVUVSehqXVOSlKw5#qD}pL{KK=SkagCLh{QsrAYeU(1Q5{3M?ed-OVB!@ z_3)t>kiqYKGH4Z$LBD_kvT+J%!##N_=*FpF#mi~nH6aa@3O#u`xF)276=(q>ItYgr zFGAsL6wXHBY!uE$LAuBX$l;D4%%kx>WZ?89;0s5+-Um#I94M)PWVy#DdGi1+d0GI! z4$z<>pbkf&_wn+(LOh{-s94o*8;E{7I`+450%Kjv*-E;%Sh#;5i5xgp(^E zawv9~S;7Y(vW0-;;TXhjVIjmv!YUFy0{DvTFlfOCym;G-b}}8bi|k|+^oy*2Qwjq^ zb87<_3Uy}ZrP}t)m;QX}$fIh=ma1X65{Qe#Qe;MhMoy>+oyqEtx~8x$HftQ?T(^@OTOX-dZA@JwaO zPc2b4ttj(Xt+Ue&V`V1J(eE709gUAKTdw#1HPo;l)=k&@T|*z-l$VF>I&>wV6}

GM|ipD7c6$xXji7|S88*MtBFxxGQY6D#+Df!9CC4<;gaUd zV#f8yhqo^*1V_zhC)e462*yWsO=Vk7$mj2$s4JNddR5_Et9tWbeyN!`ek)BB^;v<~ z%AGj!OWOFAP2x@$oC$+iV-FcTv7ltUv!C zsIuk)H$g8Bx^`wOPkg~G5zp4HozP3%+@J={%=@-b(^Y_ws%I;nUo5Z{6l+vkg_3YY z`^@Ym@$XovqQ+4EGh_e=HhF;Ifg}$IJRrAzDSGJ7zXLg5>VdVS*>`hz! Hr1$;<{;#_? delta 552 zcmW-dKWG#|7{%Z0-0tm?L!xqMP|4v5$B99d6Hm0zD4bz-=ML7>CWc@NV>l9tX%sYK z;U5r*EEa+xt00;}B3=_g@d_;@SSFSVMzOF^V_{+8n^}0j_r4G2?d+xt;?KO8sSI{! zfZ`S4AH53Zcxv+8_}L4LsJH;vC^lnMna`VCYYrTvKjj?OIrq0F&TyVwns4m?w0ite z_4?9>(#O?<&vrk!J9AU4PkKZ=eLxBfNCyJzlt7-^N)@S{iiaU_T1jjQCHle)-cp+* zvv*OBT#VZ6A&opN+nmK7oy911nYu&GX`kIbyM1>1?Dp|o2UyXp*=D-zBe9Q{HZMG6 zJ;2d=+jjtS+4UnMW2.0.0 Win.Sfs.Shared Package Description - + diff --git a/Shared/Win.Sfs.Shared/obj/Debug/netcoreapp5/Win.Sfs.Shared.AssemblyInfo.cs b/Shared/Win.Sfs.Shared/obj/Debug/netcoreapp5/Win.Sfs.Shared.AssemblyInfo.cs index 6d53d66..5a2bee6 100644 --- a/Shared/Win.Sfs.Shared/obj/Debug/netcoreapp5/Win.Sfs.Shared.AssemblyInfo.cs +++ b/Shared/Win.Sfs.Shared/obj/Debug/netcoreapp5/Win.Sfs.Shared.AssemblyInfo.cs @@ -14,7 +14,7 @@ using System.Reflection; [assembly: System.Reflection.AssemblyCompanyAttribute("Win.Sfs.Shared")] [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] [assembly: System.Reflection.AssemblyFileVersionAttribute("2.0.0.0")] -[assembly: System.Reflection.AssemblyInformationalVersionAttribute("2.0.0+a5a9bdc002c0bde27fed59155b4f42778c8a586e")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("2.0.0+ec1383591dce0935576a66bebfe8f243eb6bb935")] [assembly: System.Reflection.AssemblyProductAttribute("Win.Sfs.Shared")] [assembly: System.Reflection.AssemblyTitleAttribute("Win.Sfs.Shared")] [assembly: System.Reflection.AssemblyVersionAttribute("2.0.0.0")] diff --git a/Shared/Win.Sfs.Shared/obj/Debug/netcoreapp5/Win.Sfs.Shared.AssemblyInfoInputs.cache b/Shared/Win.Sfs.Shared/obj/Debug/netcoreapp5/Win.Sfs.Shared.AssemblyInfoInputs.cache index 7f783e5..925c9ee 100644 --- a/Shared/Win.Sfs.Shared/obj/Debug/netcoreapp5/Win.Sfs.Shared.AssemblyInfoInputs.cache +++ b/Shared/Win.Sfs.Shared/obj/Debug/netcoreapp5/Win.Sfs.Shared.AssemblyInfoInputs.cache @@ -1 +1 @@ -ce8bce8f0148848382678a78ba43b96b07f28bbbffd2234bcd66f38b2eecf85f +8cadcfdfe2ca4a85dd62aac09e5df76d11c27163dfcd557ec04e1ee675ca7a8d diff --git a/Shared/Win.Sfs.Shared/obj/Debug/netcoreapp5/Win.Sfs.Shared.csproj.AssemblyReference.cache b/Shared/Win.Sfs.Shared/obj/Debug/netcoreapp5/Win.Sfs.Shared.csproj.AssemblyReference.cache index 0ad3b9a1aef9666f3caa5581f752c17ac12a8cc4..8df4b15bb39d21dfcce188df12549abcfdbfc2a3 100644 GIT binary patch delta 19 bcmZ4Yk#XHe#tDgRwTGnls$bif?p^@^Uik?l delta 19 bcmZ4Yk#XHe#tDgR0WYq-ICy1ax_boxX(S4o diff --git a/Shared/Win.Sfs.Shared/obj/Debug/netcoreapp5/Win.Sfs.Shared.dll b/Shared/Win.Sfs.Shared/obj/Debug/netcoreapp5/Win.Sfs.Shared.dll index f88760c12407d14bb649d0deef0bfc3d632ef94d..62fe2e226e227b190916639defb95a041cb853ed 100644 GIT binary patch delta 248 zcmZoTz|wGlWkLtbX{Ush8+-oz5cni{_I2%~uTHDZC2MH~y%E_w<7cIqMryL5v4ydz zrC~~Ps)41ksj0bHqM2DzYEoLNMVgU`acYuTQW8*n`W^vBh3%07jQ`nLPCZ%wc6y8i zV}L-#*RK`ZZoF}5{Qq`G>t3rz)AvX)W+^~L4Guy@f$DSLYtNeXNAZoG`SXu1+ubA? zuQB_lG9)t?G8i*h0I?~9C6Jv06iH<;0J1?MrVQo`W(0*wFJS(<#Nubv(w z!5APAcSYc_vahb|9+rD0GItN$oW4hbF-rj|stOYYsdwd(=z4Quz2v3K>)E%vNitqz z_D^ImWk_VOWJqF2VMt~$074@$4dSN)+2#ysKsp7e%96nlNSXpwngGR2z;fmc7C_Y& SKod-Xq!~l%_H0?ksZ0Qji%v@b diff --git a/Shared/Win.Sfs.Shared/obj/Debug/netcoreapp5/Win.Sfs.Shared.pdb b/Shared/Win.Sfs.Shared/obj/Debug/netcoreapp5/Win.Sfs.Shared.pdb index 472c778064acfce8081c9a6af8c5628b4eaf6c99..ab51469c4d2585cde9cd4455f683ee63a506c448 100644 GIT binary patch delta 4203 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�xQFq7iwvUHRBP^vI&NFKuMKavYX9<-UVg{$ tqIJEzZ*PB`NMDaH>d$b&T|xgHqC#Xi`pM$I-aU7P-qoF^@WVCc{{u4h#Qp#P delta 4224 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 delta 207 zcmZoT!_;twX+j6f^+}xl8+%Ha1vXAIZVnW3bZGmuYBqD4Z`fu*miLUC|Fd3f#gux` z{fAR8(KOLADJ9v!z$n=uDJ9j&JS{cF)Y8z@G|42*#K_#-BH1F*)WR&4fx(%P!EW-! zX;Pb2rv2dYPh>D=H<_u{-It8f8lEDy2ngUgt0L4te Ya^?&cK-CsN6HI}m8AIyk?8Q@=0Q#h}qIk0)%X`Mn|5-1#VoE*e z{==!4nrvunVQgw?n39}oU}YHpTjW|owil$L6dW@KWVnq-!g1QcgraAst%n|yJa z)Mk}wKY0988Il*X delta 207 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 DZD`HI delta 5691 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 diff --git a/Shared/Win.Utils/bin/Debug/netcoreapp5/Win.Utils.dll b/Shared/Win.Utils/bin/Debug/netcoreapp5/Win.Utils.dll index 04339d682eb119fd3415a0795169f7da6b00c970..8cbc7ef659219656a1efd84dc62f6110d89d054c 100644 GIT binary patch delta 245 zcmZn&X$YCn!6Ngwpl@T(3mJiuEY5dFA94GwdUm~SrQP)xn_FZPm~B#%4UH{~O)U*m zl2Z*VjZIC>%@WPbl2Vh>QZ3SqOpH^L%#xCT;tUKNj0{Miz;4xr$qI@A0#y+b0y}&7 zTsA7O%yvA%T0gl#F+l+;SOOCSsm{-P`2YI6(!+V@yS8jndcfkJ%8<-p$Y9K10mP;Z zmOyq2P$ZSX0LTW3m@=3%m@y;*u^B@WP&|nt4M0|bgruM9B1 z|HNaFMce7K>eru4Zct26fC_dfK?OmoZ$#|TXa8Zr;&^yw;wGgBEdFK;ra+j+V98(( zB$F9Z84MUwfY1WSH)H_GrZOY~`G!E+7$^@?VF~0VG9&@9F@p(%5s+^IWTyeunr+rs HzsLjt$a+d{ diff --git a/Shared/Win.Utils/bin/Debug/netcoreapp5/Win.Utils.pdb b/Shared/Win.Utils/bin/Debug/netcoreapp5/Win.Utils.pdb index b067310b1f9b033bebe979f8688cbd367d918aea..185babdec85528be83806f714d5bc9b48b403cb9 100644 GIT binary patch delta 1262 zcmY*Xc~BE)6#q8oa>!6cP$|PAG#DBJ6-f~hK`EBRWOH$dR0*)8fn1XVO{5KoI*M(_ zniTA`LS_mGow33MW|XT`I%%O$u+UNm@F)hfmQswhMOy8b=s(?=_j|v0{NBFZ?|amS z*e@ezw-vlh0U+{S08lCbNdR(*L8nm5^^k%zn1f{ynJobskXL#5-t4Rl=)Z>Xj0ncN zm6{?LoAWjVUVSehqXVOSlKw5#qD}pL{KK=SkagCLh{QsrAYeU(1Q5{3M?ed-OVB!@ z_3)t>kiqYKGH4Z$LBD_kvT+J%!##N_=*FpF#mi~nH6aa@3O#u`xF)276=(q>ItYgr zFGAsL6wXHBY!uE$LAuBX$l;D4%%kx>WZ?89;0s5+-Um#I94M)PWVy#DdGi1+d0GI! z4$z<>pbkf&_wn+(LOh{-s94o*8;E{7I`+450%Kjv*-E;%Sh#;5i5xgp(^E zawv9~S;7Y(vW0-;;TXhjVIjmv!YUFy0{DvTFlfOCym;G-b}}8bi|k|+^oy*2Qwjq^ zb87<_3Uy}ZrP}t)m;QX}$fIh=ma1X65{Qe#Qe;MhMoy>+oyqEtx~8x$HftQ?T(^@OTOX-dZA@JwaO zPc2b4ttj(Xt+Ue&V`V1J(eE709gUAKTdw#1HPo;l)=k&@T|*z-l$VF>I&>wV6}

GM|ipD7c6$xXji7|S88*MtBFxxGQY6D#+Df!9CC4<;gaUd zV#f8yhqo^*1V_zhC)e462*yWsO=Vk7$mj2$s4JNddR5_Et9tWbeyN!`ek)BB^;v<~ z%AGj!OWOFAP2x@$oC$+iV-FcTv7ltUv!C zsIuk)H$g8Bx^`wOPkg~G5zp4HozP3%+@J={%=@-b(^Y_ws%I;nUo5Z{6l+vkg_3YY z`^@Ym@$XovqQ+4EGh_e=HhF;Ifg}$IJRrAzDSGJ7zXLg5>VdVS*>`hz! Hr1$;<{;#_? delta 552 zcmW-dKWG#|7{%Z0-0tm?L!xqMP|4v5$B99d6Hm0zD4bz-=ML7>CWc@NV>l9tX%sYK z;U5r*EEa+xt00;}B3=_g@d_;@SSFSVMzOF^V_{+8n^}0j_r4G2?d+xt;?KO8sSI{! zfZ`S4AH53Zcxv+8_}L4LsJH;vC^lnMna`VCYYrTvKjj?OIrq0F&TyVwns4m?w0ite z_4?9>(#O?<&vrk!J9AU4PkKZ=eLxBfNCyJzlt7-^N)@S{iiaU_T1jjQCHle)-cp+* zvv*OBT#VZ6A&opN+nmK7oy911nYu&GX`kIbyM1>1?Dp|o2UyXp*=D-zBe9Q{HZMG6 zJ;2d=+jjtS+4UnMW2.0.0 Win.Utils Package Description - + diff --git a/Shared/Win.Utils/obj/Debug/netcoreapp5/Win.Utils.AssemblyInfo.cs b/Shared/Win.Utils/obj/Debug/netcoreapp5/Win.Utils.AssemblyInfo.cs index 508caa2..c568c99 100644 --- a/Shared/Win.Utils/obj/Debug/netcoreapp5/Win.Utils.AssemblyInfo.cs +++ b/Shared/Win.Utils/obj/Debug/netcoreapp5/Win.Utils.AssemblyInfo.cs @@ -14,7 +14,7 @@ using System.Reflection; [assembly: System.Reflection.AssemblyCompanyAttribute("Win.Utils")] [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] [assembly: System.Reflection.AssemblyFileVersionAttribute("2.0.0.0")] -[assembly: System.Reflection.AssemblyInformationalVersionAttribute("2.0.0+655f97fce0dd87165ead1e3cce91aba34298af56")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("2.0.0+ec1383591dce0935576a66bebfe8f243eb6bb935")] [assembly: System.Reflection.AssemblyProductAttribute("Win.Utils")] [assembly: System.Reflection.AssemblyTitleAttribute("Win.Utils")] [assembly: System.Reflection.AssemblyVersionAttribute("2.0.0.0")] diff --git a/Shared/Win.Utils/obj/Debug/netcoreapp5/Win.Utils.AssemblyInfoInputs.cache b/Shared/Win.Utils/obj/Debug/netcoreapp5/Win.Utils.AssemblyInfoInputs.cache index ca30889..62d2a9c 100644 --- a/Shared/Win.Utils/obj/Debug/netcoreapp5/Win.Utils.AssemblyInfoInputs.cache +++ b/Shared/Win.Utils/obj/Debug/netcoreapp5/Win.Utils.AssemblyInfoInputs.cache @@ -1 +1 @@ -d35c56c2a77531ab3e36b55a499477cd4f9db824953aa80b990cafe5b4adf800 +3305b1f11584cc8e77f0485edbdb433ff1bf37be83db08c9968f87ced8aa9106 diff --git a/Shared/Win.Utils/obj/Debug/netcoreapp5/Win.Utils.dll b/Shared/Win.Utils/obj/Debug/netcoreapp5/Win.Utils.dll index 04339d682eb119fd3415a0795169f7da6b00c970..8cbc7ef659219656a1efd84dc62f6110d89d054c 100644 GIT binary patch delta 245 zcmZn&X$YCn!6Ngwpl@T(3mJiuEY5dFA94GwdUm~SrQP)xn_FZPm~B#%4UH{~O)U*m zl2Z*VjZIC>%@WPbl2Vh>QZ3SqOpH^L%#xCT;tUKNj0{Miz;4xr$qI@A0#y+b0y}&7 zTsA7O%yvA%T0gl#F+l+;SOOCSsm{-P`2YI6(!+V@yS8jndcfkJ%8<-p$Y9K10mP;Z zmOyq2P$ZSX0LTW3m@=3%m@y;*u^B@WP&|nt4M0|bgruM9B1 z|HNaFMce7K>eru4Zct26fC_dfK?OmoZ$#|TXa8Zr;&^yw;wGgBEdFK;ra+j+V98(( zB$F9Z84MUwfY1WSH)H_GrZOY~`G!E+7$^@?VF~0VG9&@9F@p(%5s+^IWTyeunr+rs HzsLjt$a+d{ diff --git a/Shared/Win.Utils/obj/Debug/netcoreapp5/Win.Utils.pdb b/Shared/Win.Utils/obj/Debug/netcoreapp5/Win.Utils.pdb index b067310b1f9b033bebe979f8688cbd367d918aea..185babdec85528be83806f714d5bc9b48b403cb9 100644 GIT binary patch delta 1262 zcmY*Xc~BE)6#q8oa>!6cP$|PAG#DBJ6-f~hK`EBRWOH$dR0*)8fn1XVO{5KoI*M(_ zniTA`LS_mGow33MW|XT`I%%O$u+UNm@F)hfmQswhMOy8b=s(?=_j|v0{NBFZ?|amS z*e@ezw-vlh0U+{S08lCbNdR(*L8nm5^^k%zn1f{ynJobskXL#5-t4Rl=)Z>Xj0ncN zm6{?LoAWjVUVSehqXVOSlKw5#qD}pL{KK=SkagCLh{QsrAYeU(1Q5{3M?ed-OVB!@ z_3)t>kiqYKGH4Z$LBD_kvT+J%!##N_=*FpF#mi~nH6aa@3O#u`xF)276=(q>ItYgr zFGAsL6wXHBY!uE$LAuBX$l;D4%%kx>WZ?89;0s5+-Um#I94M)PWVy#DdGi1+d0GI! z4$z<>pbkf&_wn+(LOh{-s94o*8;E{7I`+450%Kjv*-E;%Sh#;5i5xgp(^E zawv9~S;7Y(vW0-;;TXhjVIjmv!YUFy0{DvTFlfOCym;G-b}}8bi|k|+^oy*2Qwjq^ zb87<_3Uy}ZrP}t)m;QX}$fIh=ma1X65{Qe#Qe;MhMoy>+oyqEtx~8x$HftQ?T(^@OTOX-dZA@JwaO zPc2b4ttj(Xt+Ue&V`V1J(eE709gUAKTdw#1HPo;l)=k&@T|*z-l$VF>I&>wV6}

GM|ipD7c6$xXji7|S88*MtBFxxGQY6D#+Df!9CC4<;gaUd zV#f8yhqo^*1V_zhC)e462*yWsO=Vk7$mj2$s4JNddR5_Et9tWbeyN!`ek)BB^;v<~ z%AGj!OWOFAP2x@$oC$+iV-FcTv7ltUv!C zsIuk)H$g8Bx^`wOPkg~G5zp4HozP3%+@J={%=@-b(^Y_ws%I;nUo5Z{6l+vkg_3YY z`^@Ym@$XovqQ+4EGh_e=HhF;Ifg}$IJRrAzDSGJ7zXLg5>VdVS*>`hz! Hr1$;<{;#_? delta 552 zcmW-dKWG#|7{%Z0-0tm?L!xqMP|4v5$B99d6Hm0zD4bz-=ML7>CWc@NV>l9tX%sYK z;U5r*EEa+xt00;}B3=_g@d_;@SSFSVMzOF^V_{+8n^}0j_r4G2?d+xt;?KO8sSI{! zfZ`S4AH53Zcxv+8_}L4LsJH;vC^lnMna`VCYYrTvKjj?OIrq0F&TyVwns4m?w0ite z_4?9>(#O?<&vrk!J9AU4PkKZ=eLxBfNCyJzlt7-^N)@S{iiaU_T1jjQCHle)-cp+* zvv*OBT#VZ6A&opN+nmK7oy911nYu&GX`kIbyM1>1?Dp|o2UyXp*=D-zBe9Q{HZMG6 zJ;2d=+jjtS+4UnMWj!4kA#$CZseCCmbLn;l;_GVknzS&xIDYJhnLo$OQ zgE4~z5Subs0@*1*kyHi)AR8oN%3#i5#*hfaW(-L{@g#;cAZY<4jTlUTDnKG2nIwq% J&H9oTnE>yjHzEK4 delta 195 zcmZp$Xt0>j!J-?~zF}ie3A2E9o6gn~?RkFdT&hK$?VY%BvmncR#?Aj(19>r}5`;H1 zYM7atrdgV&C8rvsq*$06nwh31rWmFgCnu*`8YU(s8k-ndS|p~Knr*fgUCQil#$XDB zX$+PO=0Gx;A(g>^Aq5C6fP6y+kZdYLB9Lzgq>X{{AQhHCULr#h5F0a?Fc<;(7C?3y MP_5Z!eaVYV0CZF~(f|Me diff --git a/Shared/Win.Utils/obj/Debug/netcoreapp5/refint/Win.Utils.dll b/Shared/Win.Utils/obj/Debug/netcoreapp5/refint/Win.Utils.dll index 52cfa20313168e034aaaffb8f9ef50bae65b4618..96c7c59100cc3647f40126eadf0af044a40c7a81 100644 GIT binary patch delta 195 zcmZp$Xt0>j!4kA#$CZseCCmbLn;l;_GVknzS&xIDYJhnLo$OQ zgE4~z5Subs0@*1*kyHi)AR8oN%3#i5#*hfaW(-L{@g#;cAZY<4jTlUTDnKG2nIwq% J&H9oTnE>yjHzEK4 delta 195 zcmZp$Xt0>j!J-?~zF}ie3A2E9o6gn~?RkFdT&hK$?VY%BvmncR#?Aj(19>r}5`;H1 zYM7atrdgV&C8rvsq*$06nwh31rWmFgCnu*`8YU(s8k-ndS|p~Knr*fgUCQil#$XDB zX$+PO=0Gx;A(g>^Aq5C6fP6y+kZdYLB9Lzgq>X{{AQhHCULr#h5F0a?Fc<;(7C?3y MP_5Z!eaVYV0CZF~(f|Me