wangxinhui
2024-12-28 39ee9078d88fd4787437360e7f69ed999aaf0b7b
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/ReceiveOrderService.cs
@@ -139,7 +139,7 @@
                    CustomerId = receiveOrder.CustomerId,
                    CreatorId = "TC20082",//测试 receiveOrder.Creater
                    EntDate = receiveOrder.CreateDate.ToString("yyyy-MM-dd HH:mm:ss"),
                    ReceiveDate = receiveOrder.ReceiveDate.ToString("yyyy-MM-dd HH:mm:ss"),
                    ReceiveDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
                    PlantsId = "HA02",
                    SuppliersId = receiveOrder.SuppliersId,
                    Type = Enum.GetName(typeof(ReceiveOrderTypeEnum),receiveOrder.ReceiveOrderType),
@@ -155,12 +155,10 @@
                {
                    return WebResponseContent.Instance.Error(erpRequest.Data);
                }
                //更新收货单信息
                receiveOrder.ReceiveOrderStatus = ReceiveOrderStatusEnum.Completed.ObjToInt();
                receiveOrder.UploadStatus = WhetherEnum.True.ObjToInt();
                //更新收货单信息
                _unitOfWorkManage.BeginTran();
                BaseDal.UpdateData(receiveOrder);
                _unitOfWorkManage.CommitTran();
                return WebResponseContent.Instance.OK();
            }
            catch (Exception ex)
@@ -217,21 +215,22 @@
                {
                    return WebResponseContent.Instance.Error($"该收货单未完成");
                }
                #region æ³¨é‡Š
                //List<Dt_CheckOrder> checkOrders = _checkOrderRepository.QueryData(x => x.ReceiveOrderNo == receiveOrder.ReceiveOrderNo);
                //if (checkOrders.FirstOrDefault(x => x.CheckOrderStatus == CheckOrderStatusEnum.NotCheck.ObjToInt()) != null)
                //{
                //    return WebResponseContent.Instance.Error($"该收货单未质检完成");
                //}
                List<Dt_CheckOrder> checkOrders = _checkOrderRepository.QueryData(x => x.ReceiveOrderNo == receiveOrder.ReceiveOrderNo);
                if (checkOrders.FirstOrDefault(x => x.CheckOrderStatus == CheckOrderStatusEnum.NotCheck.ObjToInt()) != null)
                {
                    return WebResponseContent.Instance.Error($"该收货单未质检完成");
                }
                if (checkOrders.FirstOrDefault(x => x.AuditStatus != AuditStatusEnum.Agree.ObjToInt()) != null)
                {
                    return WebResponseContent.Instance.Error($"该收货单质检结果审批未完成");
                }
                //if (checkOrders.FirstOrDefault(x => x.AuditStatus != AuditStatusEnum.Agree.ObjToInt()) != null)
                //{
                //    return WebResponseContent.Instance.Error($"该收货单质检结果审批未完成");
                //}
                #endregion
                Dt_InboundOrder inboundOrder = new Dt_InboundOrder()
                {
                    InboundOrderNo="TestInboundNo1",//测试
                    InboundOrderNo="TestInboundNo21",//测试
                    UpperOrderNo = receiveOrder.ReceiveOrderNo,
                    CreateType = OrderCreateTypeEnum.UpperSystemPush.ObjToInt(),
                    OrderStatus = InOrderStatusEnum.未开始.ObjToInt(),
@@ -244,15 +243,17 @@
                foreach (var item in receiveOrder.Details)
                {
                    float quantity = item.ReceivedQuantity;
                    if (item.IfInspection == WhetherEnum.True.ObjToInt())
                    {
                        Dt_CheckOrder? checkOrder = checkOrders.FirstOrDefault(x => x.ReceiveOrderNo == receiveOrder.ReceiveOrderNo && x.ReceiveDetailRowNo == item.RowNo);
                        if (checkOrder == null)
                        {
                            return WebResponseContent.Instance.Error($"质检单数据错误");
                        }
                        quantity = checkOrder.QualifiedQuantity.GetValueOrDefault() + checkOrder.DefectedQuantity.GetValueOrDefault();
                    }
                    #region æ³¨é‡Š
                    //if (item.IfInspection == WhetherEnum.True.ObjToInt())
                    //{
                    //    Dt_CheckOrder? checkOrder = checkOrders.FirstOrDefault(x => x.ReceiveOrderNo == receiveOrder.ReceiveOrderNo && x.ReceiveDetailRowNo == item.RowNo);
                    //    if (checkOrder == null)
                    //    {
                    //        return WebResponseContent.Instance.Error($"质检单数据错误");
                    //    }
                    //    quantity = checkOrder.QualifiedQuantity.GetValueOrDefault() + checkOrder.DefectedQuantity.GetValueOrDefault();
                    //}
                    #endregion
                    Dt_InboundOrderDetail detail = new Dt_InboundOrderDetail()
                    {
                        MaterielCode = item.MaterielCode,
@@ -286,7 +287,7 @@
                {
                    return WebResponseContent.Instance.Error($"未找到该采购单");
                }
                if (purchaseOrder.Details == null || purchaseOrder.Details.Count == 0)
                if (purchaseOrder.Details.Count == 0)
                {
                    return WebResponseContent.Instance.Error($"未找到采购单明细信息");
                }
@@ -333,24 +334,25 @@
                        };
                        rowNo += 1;
                        receiveOrderDetails.Add(receiveOrderDetail);
                        if (materielInfo.IsCheck == WhetherEnum.True)
                        {
                            Dt_CheckOrder checkOrder = _mapper.Map<Dt_CheckOrder>(receiveOrderDetail);
                            checkOrder.CheckOrderNo = "TestCheckNo11";//测试
                            checkOrder.ReceiveOrderNo = "";
                            checkOrder.QualifiedQuantity = receiveOrderDetail.ReceivedQuantity;
                            checkOrder.ScrappedQuantity = 0;
                            checkOrder.ReturnQuantity = 0;
                            checkOrder.DefectedQuantity = 0;
                            checkOrder.ReceiveDetailRowNo = rowNo;
                            checkOrder.UploadStatus = CheckUploadEnum.UploadNo.ObjToInt();
                            checkOrders.Add(checkOrder);
                        }
                        #region æ³¨é‡Š
                        //if (materielInfo.IsCheck == WhetherEnum.True)
                        //{
                        //    Dt_CheckOrder checkOrder = _mapper.Map<Dt_CheckOrder>(receiveOrderDetail);
                        //    checkOrder.CheckOrderNo = "TestCheckNo21";//测试
                        //    checkOrder.ReceiveOrderNo = "";
                        //    checkOrder.QualifiedQuantity = receiveOrderDetail.ReceivedQuantity;
                        //    checkOrder.ScrappedQuantity = 0;
                        //    checkOrder.ReturnQuantity = 0;
                        //    checkOrder.DefectedQuantity = 0;
                        //    checkOrder.ReceiveDetailRowNo = rowNo;
                        //    checkOrder.UploadStatus = CheckUploadEnum.UploadNo.ObjToInt();
                        //    checkOrders.Add(checkOrder);
                        //}
                        #endregion
                    }
                    receiveOrder = new Dt_ReceiveOrder()
                    {
                        ReceiveOrderNo= "TestReceiveOrderNo11",//测试
                        ReceiveOrderNo= "TestReceiveOrderNo21",//测试
                        ReceiveOrderStatus = ReceiveOrderStatusEnum.Receiving.ObjToInt(),
                        CustomerId = "",
                        DeliveryCode = "/",