bklLiudl
2025-01-16 aa7daf29da4f6cda2c10a622a92bf86aa9820327
Admin.NET/WCS.Application/OpenApi/DemoOpenApi.cs
@@ -145,7 +145,7 @@
    }
    /// <summary>
    /// WCS接收WMS下发的入库单任务
    /// WCS接收WMS下发的出入库单任务
    /// </summary>
    /// <param name="models"></param>
    /// <returns></returns>
@@ -158,12 +158,17 @@
        {
            foreach (var item in models)
            {
                string str = JsonConvert.SerializeObject(models);
                Log.Information("接收WMS推送的箱码信息:" + str);
                // 验证任务是否已存在
                //var taskInfo = _db.Queryable<WcsOderTask>().First(w => w.OrderNo == item.OrderNo && w.SkuNo == item.SkuNo && w.LotNo == item.LotNo);
                //if (taskInfo == null)
                //{
                    var orderAdd = new WcsOderTask()
                //var taskid = _db.Queryable<WcsOderTask>().OrderByDescending(w=>w.CreateTime).First();
                //int newid = (int)taskid.Id + 1;
                var orderAdd = new WcsOderTask()
                    {
                        OrderNo = item.OrderNo,
                        TaskNo = "",
                        LotNo = item.LotNo,
@@ -172,6 +177,7 @@
                        BoxType = item.BoxType,
                        Qty = item.Qty,
                        TaskType = (TaskTypeEnum)item.TaskType,
                        CreateTime = DateTime.Now,
                    };
                    _db.Insertable(orderAdd).ExecuteCommand();
               //}
@@ -262,6 +268,7 @@
                        SkuName = models.SkuName,
                        Standard = models.Standard,
                        LotNo = models.LotNo,
                        LineNo = models.LineNo,                 // 产线号或产线名称
                        Qty = item2.Qty,
                        FullQty = models.FullQty,
                        //SupplierLot = models.SupplierLot,
@@ -277,7 +284,7 @@
                        BoxNo3 = item2.BoxNo3,
                        QtyCount = item2.QtyCount,
                        QtyOrd = item2.QtyOrd,
                        Status = "0",
                        Level = level,
@@ -340,4 +347,42 @@
        }
    }
    /// <summary>
    /// WCS接受赋码系统推送的结批总数量
    /// </summary>
    /// <param name="models">箱码信息</param>
    /// <returns>反馈信息</returns>
    [HttpPost]
    [AllowAnonymous]
    public ResponseFuMaModel HttpTotalNum(FumaBoxInfoInput models)
    {
        try
        {
            string str = JsonConvert.SerializeObject(models);
            Log.Information("接收赋码推送的结批总数量:" + str);
            var num = _db.Queryable<WcsBoxInfo>().Where(m => m.BoxNo == models.BoxNo && m.IsDelete == false).ToList();
            if (num.Count > 0)
            {
                //WCS存在箱码信息,更新箱码信息(需判断箱码是否已组盘入库)
                var num2 = num.Count(m => m.Status != "0" || !string.IsNullOrWhiteSpace(m.PalletNo));
                if (num2 > 0)
                {
                    throw new Exception("该箱已盘入库,不可更新信息");
                }
            }
            if (num.Count == 0)
            {
                throw new Exception("未找到该箱码,箱码移除失败!");
            }
            _db.Deleteable(num).ExecuteCommand();
            return new ResponseFuMaModel() { Success = "0", Message = "移除箱码成功" };
        }
        catch (Exception ex)
        {
            return new ResponseFuMaModel() { Success = "-1", Message = ex.Message };
        }
    }
}