|  |  |  | 
|---|
|  |  |  | { | 
|---|
|  |  |  | return WebResponseContent.Instance.Error($"æªæ¾å°æ¶è´§å"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (receiveOrder.ReceiveOrderStatus==ReceiveOrderStatusEnum.Completed.ObjToInt()) | 
|---|
|  |  |  | if (receiveOrder.ReceiveOrderStatus == ReceiveOrderStatusEnum.Completed.ObjToInt()) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | return WebResponseContent.Instance.Error($"æ¶è´§å已宿"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | Serno = item.RowNo, | 
|---|
|  |  |  | Supplotno = "", | 
|---|
|  |  |  | Taxrate = "", | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | recevieOrderDetails.Add(recevieOrderDetail); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | ERPReceiveModel receiveModel = new ERPReceiveModel() | 
|---|
|  |  |  | { | 
|---|
|  |  |  | Code = receiveOrder.ReceiveOrderNo, | 
|---|
|  |  |  | CompanyId = "HATC", | 
|---|
|  |  |  | DeliveryCode = receiveOrder.DeliveryCode, | 
|---|
|  |  |  | CustomerId = receiveOrder.CustomerId, | 
|---|
|  |  |  | CreatorId = "TC20082",//æµè¯ receiveOrder.Creater | 
|---|
|  |  |  | CreatorId = receiveOrder.Creater, | 
|---|
|  |  |  | EntDate = receiveOrder.CreateDate.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), | 
|---|
|  |  |  | Type = Enum.GetName(typeof(ReceiveOrderTypeEnum), receiveOrder.ReceiveOrderType) ?? throw new Exception($"éè´åç±»åé误"), | 
|---|
|  |  |  | UniqueTag = receiveOrder.ReceiveOrderId.ToString(), | 
|---|
|  |  |  | WarehouseCode = warehouse.WarehouseCode, | 
|---|
|  |  |  | Way = 1, | 
|---|
|  |  |  | Details = recevieOrderDetails | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | //æ¶è´§æ¨éè³ERP | 
|---|
|  |  |  | string Content = _invokeERPService.InvokeMatReceiveApi(receiveModel); | 
|---|
|  |  |  | ErpRequestContent erpRequest=Content.DeserializeObject<ErpRequestContent>(); | 
|---|
|  |  |  | if (erpRequest.res==0) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | return WebResponseContent.Instance.Error(erpRequest.Data); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //æ´æ°æ¶è´§åä¿¡æ¯ | 
|---|
|  |  |  | receiveOrder.ReceiveOrderStatus = ReceiveOrderStatusEnum.Completed.ObjToInt(); | 
|---|
|  |  |  | receiveOrder.UploadStatus = WhetherEnum.True.ObjToInt(); | 
|---|
|  |  |  | BaseDal.UpdateData(receiveOrder); | 
|---|
|  |  |  | //å建å
¥åºå | 
|---|
|  |  |  | CreateInboundOrder(orderId); | 
|---|
|  |  |  | //æ¶è´§æ¨éè³ERP æµè¯æ³¨é | 
|---|
|  |  |  | _invokeERPService.InvokeMatReceiveApi(receiveModel); | 
|---|
|  |  |  | return WebResponseContent.Instance.OK(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | catch (Exception ex) | 
|---|
|  |  |  | 
|---|
|  |  |  | try | 
|---|
|  |  |  | { | 
|---|
|  |  |  | int pageNo = saveModel.MainData["pageNo"].ObjToInt(); | 
|---|
|  |  |  | int warehouseId = saveModel.MainData["warehouseId"].ObjToInt(); | 
|---|
|  |  |  | string orderNo = saveModel.MainData["orderNo"].ToString(); | 
|---|
|  |  |  | List<Dt_ReceiveOrder> dt_ReceiveOrders = new List<Dt_ReceiveOrder>(); | 
|---|
|  |  |  | if (string.IsNullOrEmpty(orderNo)) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | dt_ReceiveOrders = Db.Queryable<Dt_ReceiveOrder>().Where(x => x.ReceiveOrderStatus < ReceiveOrderStatusEnum.Completed.ObjToInt()).ToPageList(pageNo, 5); | 
|---|
|  |  |  | dt_ReceiveOrders = Db.Queryable<Dt_ReceiveOrder>().Where(x => x.ReceiveOrderStatus < ReceiveOrderStatusEnum.Completed.ObjToInt() && x.WarehouseId == warehouseId).ToPageList(pageNo, 5); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | else | 
|---|
|  |  |  | { | 
|---|
|  |  |  | dt_ReceiveOrders = Db.Queryable<Dt_ReceiveOrder>().Where(x => (x.ReceiveOrderNo.Contains(orderNo) || x.SuppliersId.Contains(orderNo)) && x.ReceiveOrderStatus < ReceiveOrderStatusEnum.Completed.ObjToInt()).ToPageList(pageNo, 5); | 
|---|
|  |  |  | dt_ReceiveOrders = Db.Queryable<Dt_ReceiveOrder>().Where(x => (x.ReceiveOrderNo.Contains(orderNo) || x.SuppliersId.Contains(orderNo)) && x.ReceiveOrderStatus < ReceiveOrderStatusEnum.Completed.ObjToInt() && x.WarehouseId == warehouseId).ToPageList(pageNo, 5); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | content.OK(data: dt_ReceiveOrders); | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | Dt_InboundOrder inboundOrder = new Dt_InboundOrder() | 
|---|
|  |  |  | { | 
|---|
|  |  |  | InboundOrderNo="TestInboundNo21",//æµè¯ | 
|---|
|  |  |  | UpperOrderNo = receiveOrder.ReceiveOrderNo, | 
|---|
|  |  |  | CreateType = OrderCreateTypeEnum.UpperSystemPush.ObjToInt(), | 
|---|
|  |  |  | OrderStatus = InOrderStatusEnum.æªå¼å§.ObjToInt(), | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | receiveOrder = new Dt_ReceiveOrder() | 
|---|
|  |  |  | { | 
|---|
|  |  |  | ReceiveOrderNo= "TestReceiveOrderNo21",//æµè¯ | 
|---|
|  |  |  | ReceiveOrderStatus = ReceiveOrderStatusEnum.Receiving.ObjToInt(), | 
|---|
|  |  |  | CustomerId = "", | 
|---|
|  |  |  | DeliveryCode = "/", | 
|---|
|  |  |  | 
|---|
|  |  |  | rowNo += 1; | 
|---|
|  |  |  | receiveOrderDetails.Add(receiveOrderDetail); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (materielInfo.IsCheck == WhetherEnum.True) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | Dt_CheckOrder checkOrder = _mapper.Map<Dt_CheckOrder>(receiveOrderDetail); | 
|---|
|  |  |  | checkOrder.CheckOrderNo = "Test-CheckNo1";//æµè¯ | 
|---|
|  |  |  | checkOrder.QualifiedQuantity = receiveOrderDetail.ReceivedQuantity; | 
|---|
|  |  |  | checkOrder.ScrappedQuantity = 0; | 
|---|
|  |  |  | checkOrder.ReceiveOrderNo = receiveOrder.ReceiveOrderNo; | 
|---|
|  |  |  | checkOrder.ReturnQuantity = 0; | 
|---|
|  |  |  | checkOrder.DefectedQuantity = 0; | 
|---|
|  |  |  | checkOrder.ReceiveDetailRowNo = rowNo; | 
|---|
|  |  |  | checkOrder.UploadStatus = CheckUploadEnum.UploadNo.ObjToInt(); | 
|---|
|  |  |  | checkOrders.Add(checkOrder); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | //if (materielInfo.IsCheck == WhetherEnum.True) | 
|---|
|  |  |  | //{ | 
|---|
|  |  |  | //    Dt_CheckOrder checkOrder = _mapper.Map<Dt_CheckOrder>(receiveOrderDetail); | 
|---|
|  |  |  | //    checkOrder.CheckOrderNo = "Test-CheckNo1";//æµè¯ | 
|---|
|  |  |  | //    checkOrder.QualifiedQuantity = receiveOrderDetail.ReceivedQuantity; | 
|---|
|  |  |  | //    checkOrder.ScrappedQuantity = 0; | 
|---|
|  |  |  | //    checkOrder.ReceiveOrderNo = receiveOrder.ReceiveOrderNo; | 
|---|
|  |  |  | //    checkOrder.ReturnQuantity = 0; | 
|---|
|  |  |  | //    checkOrder.DefectedQuantity = 0; | 
|---|
|  |  |  | //    checkOrder.ReceiveDetailRowNo = rowNo; | 
|---|
|  |  |  | //    checkOrder.UploadStatus = CheckUploadEnum.UploadNo.ObjToInt(); | 
|---|
|  |  |  | //    checkOrders.Add(checkOrder); | 
|---|
|  |  |  | //} | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | Db.InsertNav(receiveOrder).Include(x => x.Details).ExecuteCommand(); | 
|---|
|  |  |  | checkOrders.ForEach(x => x.ReceiveOrderNo = receiveOrder.ReceiveOrderNo); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (checkOrders.Count > 0) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | _checkOrderRepository.AddData(checkOrders); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | //if (checkOrders.Count > 0) | 
|---|
|  |  |  | //{ | 
|---|
|  |  |  | //    _checkOrderRepository.AddData(checkOrders); | 
|---|
|  |  |  | //} | 
|---|
|  |  |  | _inboundRepository.PurchaseOrderRepository.UpdateData(purchaseOrder); | 
|---|
|  |  |  | _inboundRepository.PurchaseOrderDetailRepository.UpdateData(purchaseOrder.Details); | 
|---|
|  |  |  | _unitOfWorkManage.CommitTran(); | 
|---|