| | |
| | | using DocumentFormat.OpenXml.Office.CustomUI; |
| | | using Microsoft.CodeAnalysis.Operations; |
| | | using Admin.NET.Application.Service.WmsTask.WmsRbLineTask.Dto; |
| | | using Furion.DatabaseAccessor; |
| | | |
| | | namespace Admin.NET.Application; |
| | | /// <summary> |
| | |
| | | private readonly SqlSugarRepository<SysConfig> _sysConfigRep; |
| | | private readonly SqlSugarRepository<Mes_BatchOrderUPI_New> _mesBatchOrderUpiRep; |
| | | private readonly SqlSugarRepository<Mes_Order_Gather> _mesOrderGatherRep; |
| | | private readonly SqlSugarRepository<WmsRecordUpiProcess> _wmsRecordUpiProcessRep; |
| | | private readonly SqlSugarRepository<WmsRecordPackageProcess> _wmsRecordPackageProcessRep; |
| | | |
| | | public WmsOperationTaskService(SqlSugarRepository<WmsRbLineTask> rep, SqlSugarRepository<WmsStockQuan> wmsStockQuanRep |
| | | , SqlSugarRepository<Mes_Package_Gather> mesPackageGatherRep |
| | | , SqlSugarRepository<SysConfig> sysConfigRep |
| | | , SqlSugarRepository<Mes_BatchOrderUPI_New> mesBatchOrderUpiRep |
| | | , SqlSugarRepository<Mes_Order_Gather> mesOrderGatherRep |
| | | , SqlSugarRepository<WmsRecordUpiProcess> wmsRecordUpiProcessRep |
| | | , SqlSugarRepository<WmsRecordPackageProcess> wmsRecordPackageProcessRep |
| | | ) |
| | | { |
| | | _sysConfigRep = sysConfigRep; |
| | |
| | | _wmsStockQuanRep = wmsStockQuanRep; |
| | | _mesBatchOrderUpiRep = mesBatchOrderUpiRep; |
| | | _mesOrderGatherRep = mesOrderGatherRep; |
| | | _wmsRecordUpiProcessRep = wmsRecordUpiProcessRep; |
| | | _wmsRecordPackageProcessRep = wmsRecordPackageProcessRep; |
| | | } |
| | | |
| | | |
| | |
| | | [HttpPost] |
| | | [ApiDescriptionSettings(Name = "ValdateQiTao")] |
| | | [Description("WmsOperationTask/ValdateQiTao")] |
| | | [UnitOfWork] |
| | | public async Task<ValidateQiTaoOutput> ValdateQiTao(ValidateQiTaoInput input) |
| | | { |
| | | ValidateQiTaoOutput output = new ValidateQiTaoOutput(); |
| | |
| | | throw Oops.Oh($"判断齐套值已经存在值{sysConfig.Value},不允许操作"); |
| | | } |
| | | |
| | | //记录工作时间和工作人 |
| | | var curUserName = App.User.FindFirst(ClaimConst.RealName)?.Value; |
| | | |
| | | var setValue = ""; |
| | | var _QiTaoReuslt = ""; |
| | | var other_orderList = await _mesPackageGatherRep.AsQueryable().Where(x => x.Info5 == package.Info5 && x.PackageCode != input.PackageCode).ToListAsync(); |
| | |
| | | if (num > 0) |
| | | { |
| | | //不齐套 |
| | | setValue = $"{input.PackageCode}|不齐套"; |
| | | setValue = $"{input.PackageCode}|不齐套|" + curUserName; |
| | | _QiTaoReuslt = "不齐套"; |
| | | } |
| | | else |
| | | { |
| | | setValue = $"{input.PackageCode}|齐套"; |
| | | setValue = $"{input.PackageCode}|齐套|" + curUserName; |
| | | _QiTaoReuslt = "齐套"; |
| | | } |
| | | |
| | |
| | | sysConfig.Value = setValue; |
| | | await _sysConfigRep.UpdateAsync(sysConfig); |
| | | |
| | | //记录工作时间和工作人 |
| | | |
| | | var sysConfig_wms_unline_oper = await _sysConfigRep.GetFirstAsync(x => x.Code == CommonConst.wms_unline_oper); |
| | | if (sysConfig_wms_unline_oper == null) |
| | | { |
| | | throw Oops.Oh($"没有配置 包装下线操作人 值"); |
| | | } |
| | | if (sysConfig_wms_unline_oper.Value != curUserName) |
| | | { |
| | | sysConfig_wms_unline_oper.Value = curUserName; |
| | | await _sysConfigRep.UpdateAsync(sysConfig_wms_unline_oper); |
| | | |
| | | var sysConfig_wms_unline_time = await _sysConfigRep.GetFirstAsync(x => x.Code == CommonConst.wms_unline_time); |
| | | if (sysConfig_wms_unline_time == null) |
| | | { |
| | | throw Oops.Oh($"没有配置 包装下线登陆时间 值"); |
| | | } |
| | | sysConfig_wms_unline_time.Value = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); |
| | | await _sysConfigRep.UpdateAsync(sysConfig_wms_unline_time); |
| | | } |
| | | |
| | | |
| | | output = package.Adapt<ValidateQiTaoOutput>(); |
| | |
| | | { |
| | | throw Oops.Oh($"没有找到包号{input.PackageCode}的汇总数据"); |
| | | } |
| | | |
| | | WmsRecordPackageProcess wmsRecordPackage = new WmsRecordPackageProcess(); |
| | | wmsRecordPackage = singlePackage.Adapt<WmsRecordPackageProcess>(); |
| | | wmsRecordPackage.CreateTime = DateTime.Now; |
| | | wmsRecordPackage.Location = "BZ29"; |
| | | wmsRecordPackage.OperRemark = "核对标签"; |
| | | await _wmsRecordPackageProcessRep.InsertAsync(wmsRecordPackage); |
| | | |
| | | WmsRecordUpiProcess wmsRecordUpi = new WmsRecordUpiProcess(); |
| | | wmsRecordUpi = singleUpi.Adapt<WmsRecordUpiProcess>(); |
| | | wmsRecordUpi.CreateTime = DateTime.Now; |
| | | wmsRecordUpi.Location = "BZ29"; |
| | | wmsRecordUpi.OperRemark = "核对标签"; |
| | | await _wmsRecordUpiProcessRep.InsertAsync(wmsRecordUpi); |
| | | |
| | | return singlePackage; |
| | | } |
| | | |
| | | |
| | | |
| | | /// <summary> |
| | | /// NG包下线 |
| | | /// </summary> |
| | | /// <param name="input"></param> |
| | | /// <returns></returns> |
| | | [HttpPost] |
| | | [ApiDescriptionSettings(Name = "UnlineForNGPackage")] |
| | | [Description("WmsOperationTask/UnlineForNGPackage")] |
| | | public async Task UnlineForNGPackage(UnlineForNGPackageInput input) |
| | | { |
| | | //if (input == null) |
| | | //{ |
| | | // throw Oops.Oh("参数不能为空"); |
| | | //} |
| | | //if (string.IsNullOrEmpty(input.PackageCode)) |
| | | //{ |
| | | // throw Oops.Oh("包号不能为空"); |
| | | //} |
| | | //if (string.IsNullOrEmpty(input.Reason)) |
| | | //{ |
| | | // throw Oops.Oh("原因不能为空"); |
| | | //} |
| | | //List<WmsStockQuan> updateQuanList = new List<WmsStockQuan>(); |
| | | //foreach (var item in input.PackageCodeList) |
| | | //{ |
| | | // var quanList = await _wmsStockQuanRep.AsQueryable().Where(x => x.PackageCode == item).ToListAsync(); |
| | | // var isExist = quanList.Where(x => x.StockStatus == StockStatusEnum.齐包待出库).Count(); |
| | | // if (isExist > 0) |
| | | // { |
| | | // throw Oops.Oh($"包{item}中其中有板状态是'{StockStatusEnum.齐包待出库.ToString()}',不允许强制出库"); |
| | | // } |
| | | |
| | | // 更新状态 |
| | | // foreach (var quan in quanList) |
| | | // { |
| | | // quan.StockStatus = StockStatusEnum.人工强制待出库; |
| | | // quan.UpdateTime = DateTime.Now; |
| | | // quan.OperReason = "人工强制待出库"; |
| | | // } |
| | | // updateQuanList.AddRange(quanList); |
| | | //} |
| | | |
| | | //await _wmsStockQuanRep.UpdateRangeAsync(updateQuanList); |
| | | |
| | | } |
| | | |
| | | } |
| | | |