111
yanjinhui
2025-10-23 3713a17fe36d877ce3e588c1dc08526fc8afffdc
н¨Îļþ¼Ð/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/CabinOrderServices.cs
@@ -297,17 +297,17 @@
            try
            {
                // è¯·æ±‚地址
                //var url = "http://121.37.118.63:80/GYZ2/95fck/inOrder";
                var url = "http://127.0.0.1:4523/m2/5660322-5340849-default/363009261";
                var url = "http://121.37.118.63:80/GYZ2/95fck/inOrder";
                //var url = "http://127.0.0.1:4523/m2/5660322-5340849-default/363009261";
                //if (string.IsNullOrEmpty(SearchDate)) SearchDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
                if (string.IsNullOrEmpty(SearchDate)) SearchDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
                //// è¯·æ±‚参数
                var requestData = new
                {
                    //searchDate = SearchDate
                    searchDate = "2022-10-10 20:45:16"  // æ­£ç¡®çš„æ ¼å¼
                    searchDate = SearchDate
                    //searchDate = "2022-10-10 20:45:16"  // æ­£ç¡®çš„æ ¼å¼
                };
                //SearchDate = DateTime.Now.AddDays(-1).ToString("yyyy-MM-dd HH:mm:ss");
                SearchDate = DateTime.Now.AddDays(-1).ToString("yyyy-MM-dd HH:mm:ss");
                // å‘起请求
                var result = HttpHelper.Post(url, requestData.ToJsonString());
@@ -360,7 +360,7 @@
                        #region åˆ›å»ºä¸€ä¸ªå…¥åº“单方法
                        //排除特殊药品
                        bool skipOrder = false;//标记是否跳过该入库单
                        if (order.warehouse_no != "001" && order.warehouse_no != "大件平库") //特殊药品库房号进行下面操作
                        if (order.warehouse_no != "001" && (order.warehouse_no == "010" || order.warehouse_no == "003" || order.warehouse_no == "017"))//特殊药品库房号进行下面操作
                        {
                            //创建入库单主表从表
                            var entityOrder = new Dt_CabinOrder
@@ -529,7 +529,7 @@
                    BaseDal.Db.InsertNav(_CabinOrders).Include(x => x.Details).ExecuteCommand();
                    //在下发给wcs 
                    //var reslut=  EdiIn(); //发给下游
                     //EdiIn(); //发给下游
                    //如果这个方法成功了,那么就调用CompleteOrder接口,然后改变
                    Db.Ado.CommitTran();
                    return responseContent.OK("同步入库单成功");
@@ -778,8 +778,11 @@
                // 3. å†è¿‡æ»¤æŽ‰ä¸ç¬¦åˆæ¡ä»¶çš„æ˜Žç»†ï¼ˆåªä¿ç•™ Status=0)
                foreach (var order in orders)
                {
                    Console.WriteLine($"订单 {order.Order_no} åŽŸæ˜Žç»†æ•°ï¼š{order.Details.Count}");
                    order.Details = order.Details.Where(d => d.Status == 0).ToList();
                    Console.WriteLine($"订单 {order.Order_no} è¿‡æ»¤åŽæ˜Žç»†æ•°ï¼š{order.Details.Count}");
                }
                if (orders == null || !orders.Any())
                {
@@ -787,18 +790,13 @@
                    return WebResponseContent.Instance.Error("没有符合条件的订单需要推送");
                }
                // 4. éåŽ†è®¢å•ï¼Œç»„è£… DTO å¹¶æŽ¨é€
                foreach (var order in orders)
                {
                    string materialCode = "YY";//默认值
                    //获取当前订单的第一个明细项
                    var firstDetail = order.Details.FirstOrDefault();
                    if (firstDetail?.MedicineGoods != null && !string.IsNullOrEmpty(firstDetail.MedicineGoods.MaterielErpType))
                    {
                        //如果条件满足,将物料代码设置为第一个明细项对应的药品物料代码
                        materialCode = firstDetail.MedicineGoods.MaterielErpType;
                    }
                    // ä»Žç¬¬ä¸€ä¸ªæœ‰ MedicineGoods çš„æ˜Žç»†ä¸­å–出 MaterielErpType
                    string materialCode = order.Details
                        .Select(d => d.MedicineGoods?.MaterielErpType)
                        .FirstOrDefault(x => !string.IsNullOrEmpty(x)) ?? "YY"; // é»˜è®¤å€¼YY
                    var ediDto = new ToediInInfo
                    {
@@ -833,23 +831,11 @@
                            manufacturer = d.MedicineGoods?.Factory,
                            //房号
                            libraryNo = order.Warehouse_no,
                            //盘盈入库
                            //stocktakingDetails = new List<ToediInStock>()
                            //stocktakingDetails = new List<ToediInStock>()
                            //{
                            //    new ToediInStock
                            //    {
                            //         //料箱号
                            //        palletCode = "PDA001",
                            //        //数量
                            //        quantity = d.Order_qty.ToString()
                            //    }
                            // }
                        }).ToList()
                    };
                    //var url = "http://172.16.1.2:9357/file-admin/api/in/ediIn";
                    var url = "http://127.0.0.1:4523/m2/5660322-5340849-default/363019549";
                    var url = "http://172.16.1.2:9357/file-admin/api/in/ediIn";
                    //var url = "http://127.0.0.1:4523/m2/5660322-5340849-default/363019549";
                    var result = HttpHelper.Post(url, ediDto.ToJsonString());
                    var resp = JsonConvert.DeserializeObject<TowcsResponse<object>>(result);
@@ -861,9 +847,9 @@
                           .Where(o => o.Id == order.Id)
                           .ExecuteCommand();
                        // æ›´æ–°æ˜Žç»†çŠ¶æ€ä¸ºå·²åŒæ­¥
                        // æ›´æ–°æ˜Žç»†çŠ¶æ€ä¸ºå·²åŒæ­¥  //这里要是将新建--》开始状态,在后端接口返回我们的时候在返回已完成
                        BaseDal.Db.Updateable<Dt_CabinOrderDetail>()
                          .SetColumns(d => new Dt_CabinOrderDetail { Status = 1, OrderDetailStatus = "已完成" })
                          .SetColumns(d => new Dt_CabinOrderDetail { Status = 1, OrderDetailStatus = "开始" })
                          .Where(d => d.OrderId == order.Id && d.Status == 0)
                          .ExecuteCommand();