22
schangxiang@126.com
2024-12-04 abf9b6bb33fcfad5b56a17a5d3e99b49782a7316
22
已修改10个文件
159 ■■■■■ 文件已修改
CC/iWareCC_ASRS/ThreadService/01_BZ01工位(清灰,洗板后工位)/DataProcess_BZ01.cs 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareCC_ASRS/ThreadService/02_BZ39工位(补板后工位)/Outbound/1、DataProcess_RobotBuffer_AutoQiTaoOutbound.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareCC_ASRS/ThreadService/02_BZ39工位(补板后工位)/Outbound/2、DataProcess_RobotBuffer_IssueOutboundTask.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareCC_ASRS/ThreadService/02_BZ39工位(补板后工位)/Outbound/3、DataProcess_RobotBuffer_FinishTaskForOutbound.cs 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareCC_ASRS/ThreadService/02_BZ39工位(补板后工位)/Outbound/4、DataProcess_RobotBuffer_ForceOutbound.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareModel/EnumType/WMS/RbTaskTypeEnum.cs 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareSql/DataAccess/TaskHandler.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Configuration/Database.json 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Enum/ReportCenter/RbTaskTypeEnum.cs 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOperationTask/WmsOperationTaskService.cs 86 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareCC_ASRS/ThreadService/01_BZ01¹¤Î»£¨Çå»Ò£¬Ï´°åºó¹¤Î»£©/DataProcess_BZ01.cs
@@ -168,7 +168,8 @@
        private static bool IsAllloRunOutTaskMode(WmsDBModel wmsDB, mes_batchOrderUPI_new curUpiObj)
        {
            //首先查询数据库中是否有 è¦å‡ºåº“的数据
            var isExistOutTaskForNewCreated = wmsDB.wms_rbline_task.Where(x => x.RbTaskType == (int)RbTaskTypeEnum.出库任务
            var isExistOutTaskForNewCreated = wmsDB.wms_rbline_task.Where(x =>
            (x.RbTaskType == (int)RbTaskTypeEnum.齐包出库任务 || x.RbTaskType == (int)RbTaskTypeEnum.强制出库任务)
               && x.TaskStatus == (int)TaskStatusEnum.新建
              ).Count();
            if (isExistOutTaskForNewCreated == 0)
CC/iWareCC_ASRS/ThreadService/02_BZ39¹¤Î»£¨²¹°åºó¹¤Î»£©/Outbound/1¡¢DataProcess_RobotBuffer_AutoQiTaoOutbound.cs
@@ -71,8 +71,8 @@
                                            OrderId = x.OrderId,
                                            PackageCode = x.PackageCode,
                                            PlaceCode = x.PlaceCode,
                                            RbTaskType = (int)RbTaskTypeEnum.出库任务,
                                            RbTaskTypeEnumName = RbTaskTypeEnum.出库任务.ToString(),
                                            RbTaskType = (int)RbTaskTypeEnum.齐包出库任务,
                                            RbTaskTypeEnumName = RbTaskTypeEnum.齐包出库任务.ToString(),
                                            TaskStatus = (int)TaskStatusEnum.新建,
                                            TaskStatusName = TaskStatusEnum.新建.ToString(),
                                            TaskMsg = "出库任务",
CC/iWareCC_ASRS/ThreadService/02_BZ39¹¤Î»£¨²¹°åºó¹¤Î»£©/Outbound/2¡¢DataProcess_RobotBuffer_IssueOutboundTask.cs
@@ -57,7 +57,7 @@
                            if (string.IsNullOrEmpty(FormCC.currHandlerPackageCodeForIssueOutboundTask))
                            {
                                var firstTask = wmsDB.wms_rbline_task.Where(x =>
                           x.RbTaskType == (int)RbTaskTypeEnum.出库任务
                           (x.RbTaskType == (int)RbTaskTypeEnum.齐包出库任务 || x.RbTaskType == (int)RbTaskTypeEnum.强制出库任务)
                          && x.TaskStatus == (int)TaskStatusEnum.新建).OrderBy(x => x.CreateTime).FirstOrDefault();
                                if (firstTask == null)
                                {
@@ -70,7 +70,7 @@
                            else
                            {
                                var firstTask = wmsDB.wms_rbline_task.Where(x =>
                           x.RbTaskType == (int)RbTaskTypeEnum.出库任务
                           (x.RbTaskType == (int)RbTaskTypeEnum.齐包出库任务 || x.RbTaskType == (int)RbTaskTypeEnum.强制出库任务)
                          && x.TaskStatus == (int)TaskStatusEnum.新建
                          && x.PackageCode == FormCC.currHandlerPackageCodeForIssueOutboundTask
                          ).OrderBy(x => x.CreateTime).FirstOrDefault();
@@ -83,7 +83,7 @@
                            }
                            var taskList = wmsDB.wms_rbline_task.Where(x =>
                           x.RbTaskType == (int)RbTaskTypeEnum.出库任务
                          (x.RbTaskType == (int)RbTaskTypeEnum.齐包出库任务 || x.RbTaskType == (int)RbTaskTypeEnum.强制出库任务)
                          && x.TaskStatus == (int)TaskStatusEnum.新建).Where(x => x.PackageCode == FormCC.currHandlerPackageCodeForIssueOutboundTask).OrderBy(x => x.CreateTime).ToList();
                            if (taskList == null)
                            {
CC/iWareCC_ASRS/ThreadService/02_BZ39¹¤Î»£¨²¹°åºó¹¤Î»£©/Outbound/3¡¢DataProcess_RobotBuffer_FinishTaskForOutbound.cs
@@ -52,7 +52,7 @@
                            {
                                var task = wmsDB.wms_rbline_task.Where(x =>
                                 x.TaskNo == obj.R_Outbound_TaskID.ToString()
                                && x.RbTaskType == (int)RbTaskTypeEnum.出库任务
                                && (x.RbTaskType == (int)RbTaskTypeEnum.齐包出库任务 || x.RbTaskType == (int)RbTaskTypeEnum.强制出库任务)
                                ).OrderByDescending(x => x.Id).FirstOrDefault();
                                if (task == null)
                                {
@@ -79,6 +79,18 @@
                                    SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()},根据UPI:{upiCode}没有找到对象 ";
                                    continue;
                                }
                                //更新板件的状态和区域
                                if (task.RbTaskType == (int)RbTaskTypeEnum.齐包出库任务)
                                {
                                    upiObj.UpiStatus = (int)UpiStatusEnum.已齐包;
                                    upiObj.AreaCode = (int)AreaCodeEnum.码垛区域;
                                }
                                else if (task.RbTaskType == (int)RbTaskTypeEnum.强制出库任务)
                                {
                                    upiObj.UpiStatus = (int)UpiStatusEnum.已下线;
                                    upiObj.AreaCode = (int)AreaCodeEnum.下线区域;
                                }
                                //库存减少
                                wms_stock_quan qun = wmsDB.wms_stock_quan.Where(x => x.PlaceCode == task.PlaceCode).FirstOrDefault();
                                wmsDB.wms_stock_quan.Remove(qun);
CC/iWareCC_ASRS/ThreadService/02_BZ39¹¤Î»£¨²¹°åºó¹¤Î»£©/Outbound/4¡¢DataProcess_RobotBuffer_ForceOutbound.cs
@@ -60,8 +60,8 @@
                            OrderId = x.OrderId,
                            PackageCode = x.PackageCode,
                            PlaceCode = x.PlaceCode,
                            RbTaskType = (int)RbTaskTypeEnum.出库任务,
                            RbTaskTypeEnumName = RbTaskTypeEnum.出库任务.ToString(),
                            RbTaskType = (int)RbTaskTypeEnum.强制出库任务,
                            RbTaskTypeEnumName = RbTaskTypeEnum.强制出库任务.ToString(),
                            TaskStatus = (int)TaskStatusEnum.新建,
                            TaskStatusName = TaskStatusEnum.新建.ToString(),
                            TaskMsg = "人工强制待出库",
CC/iWareModel/EnumType/WMS/RbTaskTypeEnum.cs
@@ -18,22 +18,28 @@
        å…¥åº“任务 = 1,
        /// <summary>
        /// å‡ºåº“任务
        /// é½åŒ…出库任务
        /// </summary>
        [Description("出库任务")]
        å‡ºåº“任务 = 2,
        [Description("齐包出库任务")]
        é½åŒ…出库任务 = 2,
        /// <summary>
        /// å¼ºåˆ¶å‡ºåº“任务
        /// </summary>
        [Description("强制出库任务")]
        å¼ºåˆ¶å‡ºåº“任务 = 3,
        /// <summary>
        /// ç æ¿ä»»åŠ¡
        /// </summary>
        [Description("码板任务")]
        ç æ¿ä»»åŠ¡ = 3,
        ç æ¿ä»»åŠ¡ = 4,
        /// <summary>
        /// åˆåŒ…任务
        /// </summary>
        [Description("合包任务")]
        åˆåŒ…任务 = 4
        åˆåŒ…任务 = 5
    }
}
CC/iWareSql/DataAccess/TaskHandler.cs
@@ -43,7 +43,7 @@
                && (
                  x.RbTaskType == (int)RbTaskTypeEnum.入库任务
                  ||
                   x.RbTaskType == (int)RbTaskTypeEnum.出库任务
                  (x.RbTaskType == (int)RbTaskTypeEnum.齐包出库任务 || x.RbTaskType == (int)RbTaskTypeEnum.强制出库任务)
                ) && x.UPI == UPI
              ).ToList();
@@ -64,7 +64,7 @@
                && (
                  x.RbTaskType == (int)RbTaskTypeEnum.入库任务
                  ||
                   x.RbTaskType == (int)RbTaskTypeEnum.出库任务
                   (x.RbTaskType == (int)RbTaskTypeEnum.齐包出库任务 || x.RbTaskType == (int)RbTaskTypeEnum.强制出库任务)
                )
              ).ToList();
@@ -109,7 +109,7 @@
            var isExist = wmsDB.wms_rbline_task.Where(x => x.TaskStatus != (int)TaskStatusEnum.已完成
                && x.TaskStatus != (int)TaskStatusEnum.已取消
                && (
                   x.RbTaskType == (int)RbTaskTypeEnum.出库任务
                  (x.RbTaskType == (int)RbTaskTypeEnum.齐包出库任务 || x.RbTaskType == (int)RbTaskTypeEnum.强制出库任务)
                )
              ).ToList();
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Configuration/Database.json
@@ -26,11 +26,11 @@
          "EnableUnderLine": false // å¯ç”¨é©¼å³°è½¬ä¸‹åˆ’线
        },
        "TableSettings": {
          "EnableInitTable": false, // å¯ç”¨è¡¨åˆå§‹åŒ–
          "EnableInitTable": true, // å¯ç”¨è¡¨åˆå§‹åŒ–
          "EnableIncreTable": false // å¯ç”¨è¡¨å¢žé‡æ›´æ–°-特性[IncreTable]
        },
        "SeedSettings": {
          "EnableInitSeed": false, // å¯ç”¨ç§å­åˆå§‹åŒ–
          "EnableInitSeed": true, // å¯ç”¨ç§å­åˆå§‹åŒ–
          "EnableIncreSeed": false // å¯ç”¨ç§å­å¢žé‡æ›´æ–°-特性[IncreSeed]
        }
      }
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Enum/ReportCenter/RbTaskTypeEnum.cs
@@ -15,21 +15,27 @@
    å…¥åº“任务 = 1,
    /// <summary>
    /// å‡ºåº“任务
    /// é½åŒ…出库任务
    /// </summary>
    [Description("出库任务")]
    å‡ºåº“任务 = 2,
    [Description("齐包出库任务")]
    é½åŒ…出库任务 = 2,
    /// <summary>
    /// å¼ºåˆ¶å‡ºåº“任务
    /// </summary>
    [Description("强制出库任务")]
    å¼ºåˆ¶å‡ºåº“任务 = 3,
    /// <summary>
    /// ç æ¿ä»»åŠ¡
    /// </summary>
    [Description("码板任务")]
    ç æ¿ä»»åŠ¡ = 3,
    ç æ¿ä»»åŠ¡ = 4,
    /// <summary>
    /// åˆåŒ…任务
    /// </summary>
    [Description("合包任务")]
    åˆåŒ…任务 = 4
    åˆåŒ…任务 = 5
}
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOperationTask/WmsOperationTaskService.cs
@@ -54,6 +54,7 @@
    [HttpPost]
    [ApiDescriptionSettings(Name = "ForceOutbound")]
    [Description("WmsOperationTask/ForceOutbound")]
    [UnitOfWork]
    public async Task ForceOutbound(ForceOutboundInput input)
    {
        if (input == null || input.PackageCodeList?.Count == 0)
@@ -179,6 +180,7 @@
    [HttpPost]
    [ApiDescriptionSettings(Name = "ValdateLabel")]
    [Description("WmsOperationTask/ValdateLabel")]
    [UnitOfWork]
    public async Task<Mes_Package_Gather> ValdateLabel(ValidateLabelInput input)
    {
        if (input == null || input.PackageCode == null || input.Upi == null)
@@ -228,41 +230,63 @@
    [HttpPost]
    [ApiDescriptionSettings(Name = "UnlineForNGPackage")]
    [Description("WmsOperationTask/UnlineForNGPackage")]
    [UnitOfWork]
    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()}',不允许强制出库");
        //    }
        if (input == null)
        {
            throw Oops.Oh("参数不能为空");
        }
        if (string.IsNullOrEmpty(input.PackageCode))
        {
            throw Oops.Oh("包号不能为空");
        }
        if (string.IsNullOrEmpty(input.Reason))
        {
            throw Oops.Oh("原因不能为空");
        }
        //    æ›´æ–°çŠ¶æ€
        //    foreach (var quan in quanList)
        //    {
        //        quan.StockStatus = StockStatusEnum.人工强制待出库;
        //        quan.UpdateTime = DateTime.Now;
        //        quan.OperReason = "人工强制待出库";
        //    }
        //    updateQuanList.AddRange(quanList);
        //}
        var singlePackage = await _mesPackageGatherRep.AsQueryable().Where(x => x.PackageCode == input.PackageCode).FirstAsync();
        if (singlePackage == null)
        {
            throw Oops.Oh($"没有找到包号{input.PackageCode}的汇总数据");
        }
        //await _wmsStockQuanRep.UpdateRangeAsync(updateQuanList);
        singlePackage.UpiFlag = UpiFlagEnum.NG;
        singlePackage.UpdateTime = DateTime.Now;
        singlePackage.UpiStatus = UpiStatusEnum.已下线;
        singlePackage.AreaCode = AreaCodeEnum.下线区域;
        var upiList = await _mesBatchOrderUpiRep.AsQueryable().Where(x => x.PackageCode == input.PackageCode).ToListAsync();
        if (upiList == null)
        {
            throw Oops.Oh($"没有找到包号{input.PackageCode}的板件数据");
        }
        foreach (var item in upiList)
        {
            item.UpiFlag = UpiFlagEnum.NG;
            item.UpdateTime = DateTime.Now;
            item.UpiStatus = UpiStatusEnum.已下线;
            item.AreaCode = AreaCodeEnum.下线区域;
            WmsRecordUpiProcess wmsRecordUpi = new WmsRecordUpiProcess();
            wmsRecordUpi = item.Adapt<WmsRecordUpiProcess>();
            wmsRecordUpi.CreateTime = DateTime.Now;
            wmsRecordUpi.Location = "";
            wmsRecordUpi.OperRemark = "NG下线";
            await _wmsRecordUpiProcessRep.InsertAsync(wmsRecordUpi);
        }
        WmsRecordPackageProcess wmsRecordPackage = new WmsRecordPackageProcess();
        wmsRecordPackage = singlePackage.Adapt<WmsRecordPackageProcess>();
        wmsRecordPackage.Location = "";
        wmsRecordPackage.OperRemark = "NG下线";
        await _wmsRecordPackageProcessRep.InsertAsync(wmsRecordPackage);
        await _mesPackageGatherRep.UpdateAsync(singlePackage);
        await _mesBatchOrderUpiRep.UpdateRangeAsync(upiList);
    }