1
huangxiaoqiang
8 天以前 644cbe3e4eba765affa25454d69fee6286bb6094
ÏîÄ¿´úÂë/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs
@@ -110,8 +110,15 @@
            var result1 = UpdateLocationStatus(locationStart, LocationEnum.Free, task.TaskNum.Value, (int)StatusChangeTypeEnum.AutomaticOutbound);
            var result2 = UpdateLocationStatus(locationEnd, LocationEnum.InStock, task.TaskNum.Value, (int)StatusChangeTypeEnum.AutomaticOutbound);
            DtStockInfo_Hty stockInfo_Hty = stock.Adapt<DtStockInfo_Hty>();
            //盘点出库
            var orderDetails = _orderOutDetailsRepository.QueryData(x => x.PalletCode == task.PalletCode);
            List<Dt_OrderOutDetails_Hty> orderdetailshtys = new List<Dt_OrderOutDetails_Hty>();
            orderDetails.ForEach(item =>
            {
                orderdetailshtys.Add(item.Adapt<Dt_OrderOutDetails_Hty>());
            });
            //盘点出库
            if (task.TaskType == (int)TaskOutboundTypeEnum.Outbound || task.TaskType == (int)TaskOutboundTypeEnum.OutAllocate)
            {
                if (orderDetails.Count > 0)
@@ -138,7 +145,11 @@
                await _locationStatusChangeRecordRepository.AddDataAsync(result2.Item1);
                await _locationRepository.UpdateDataAsync(result1.Item2);
                await _locationRepository.UpdateDataAsync(result2.Item2);
                await _orderOutDetailsRepository.DeleteDataAsync(orderDetails);
                await SqlSugarHelper.DbWMS.Insertable(orderdetailshtys).ExecuteCommandAsync();
                //_orderOutDetailsRepository.DeleteAndMoveIntoHty(orderDetails,OperateTypeEnum.自动删除);
                await DeleteTaskAsync(task.TaskId);
                await AddTaskHtyAsync(taskHty);
            });
@@ -169,7 +180,7 @@
            var locationStart = await _locationRepository.QueryFirstAsync(x => x.LocationCode == task.SourceAddress);
            var locationEnd = await _locationRepository.QueryFirstAsync(x => x.LocationCode == task.TargetAddress);
            task.TaskState = (int)TaskOutStatusEnum.OutFinish;
            task.TaskState = (int)TaskRelocationStatusEnum.AGV_RelocationFinish;
            var taskHty = task.Adapt<Dt_Task_Hty>();
            taskHty.FinishTime = DateTime.Now;
            taskHty.OperateType = App.User.UserName != null ? (int)OperateTypeEnum.人工完成 : (int)OperateTypeEnum.自动完成;
@@ -180,7 +191,6 @@
            var result = UpdateLocationStatus(locationEnd, LocationEnum.InStock, task.TaskNum.Value, (int)StatusChangeTypeEnum.AutomaticRelocation);
            await _unitOfWorkManage.UseTranAsync(async () =>
            {
                //UpdateLocationStatus(locationStart, LocationEnum.Free, task.TaskNum.Value, (int)StatusChangeTypeEnum.AutomaticInbound);
                await _locationStatusChangeRecordRepository.AddDataAsync(result.Item1);
                await _locationRepository.UpdateDataAsync(result.Item2);
                _stockInfoRepository.UpdateData(stock);
@@ -687,8 +697,8 @@
                    MaterielName = x.MaterielName,
                    AllocateWarehouse = "WMS出库缓存区",
                    Warehouse = "智能立库",
                    WareHouseId = "1001708040006492",
                    AllocateWarehouseId = "1002008120000270",
                    WareHouseId = "107",
                    AllocateWarehouseId = "205",
                    OutboundQuantity = x.Quantity,
                });
            });
@@ -1043,7 +1053,7 @@
                    MaterialNo = "",
                    NextAddress = TargetAddress.LocationCode,
                    OrderNo = null,
                    PalletCode = taskDto.PalletCode + "001",
                    PalletCode = stock.PalletCode,
                    SourceAddress = locationLateral.LocationCode,
                    CurrentAddress = locationLateral.LocationCode,
                    TaskState = (int)TaskRelocationStatusEnum.RelocationNew,
@@ -1331,15 +1341,13 @@
                    //物料编码
                    ItemCode = item.MaterielCode,
                    //调入仓库地址
                    TransInWHCode = "1001708040006492",
                    TransInWHCode = "107",
                    //调入数量
                    TransInQty = item.OutboundQuantity,
                    TransInQty = item.Quantity,
                    // è°ƒå‡ºä»“库编码
                    TransOutWHCode = item.WareHouseId,
                }).ToList()
            };
            //var inputJson = Masuit.Tools.ObjectExtensions.ToDictionary(allocate);
            var Allocate = GetERPIPAddress(SysConfigConst.ERPIPAddress, SysConfigConst.Allocate);
            // å‘送请求并等待响应
            var result = await HttpsClient.PostAsync(Allocate, allocate.ToJsonString());
@@ -1363,6 +1371,21 @@
        WebResponseContent content = new WebResponseContent();
        try
        {
            List<transferInList> transferInList=new List<transferInList>();
            orderOutDetails.ForEach(x =>
            {
                transferInList.Add(new transferInList
                {
                    //物料编码
                    ItemCode = x.MaterielCode,
                    //调入仓库地址
                    TransInWHCode = x.AllocateWarehouseId,
                    //调入数量
                    TransInQty = x.OutboundQuantity,
                    // è°ƒå‡ºä»“库编码
                    TransOutWHCode = x.WareHouseId,
                });
            });
            Allocate allocate = new Allocate
            {
                context = new Context
@@ -1375,18 +1398,7 @@
                documentTypeCode = "TransIn002",
                businessDate = DateTime.Now.ToString("yyyy-MM-dd"),
                isApproved = true,
                transferInList = orderOutDetails.Select(item => new transferInList
                {
                    //物料编码
                    ItemCode = item.MaterielCode,
                    //调入仓库地址
                    TransInWHCode = item.AllocateWarehouseId,
                    //调入数量
                    TransInQty = item.OutboundQuantity,
                    // è°ƒå‡ºä»“库编码
                    TransOutWHCode = item.WareHouseId,
                }).ToList()
                transferInList = transferInList,
            };
            var Allocate = GetERPIPAddress(SysConfigConst.ERPIPAddress, SysConfigConst.Allocate);
            // å‘送请求并等待响应