| | |
| | | using Model.InterFaceModel; |
| | | using Model.ModelVm; |
| | | using Newtonsoft.Json; |
| | | using SqlSugar; |
| | | using System; |
| | | using System.Collections.Generic; |
| | |
| | | using WMS.BLL.LogServer; |
| | | using WMS.DAL; |
| | | using WMS.Entity.BllAsnEntity; |
| | | using WMS.Entity.BllQualityEntity; |
| | | using WMS.Entity.BllSoEntity; |
| | | using WMS.Entity.Context; |
| | | using WMS.Entity.DataEntity; |
| | |
| | | } |
| | | } |
| | | var upShelfOldList = Db.Queryable<BllPalletUpShelf>().Where(m => m.IsDel == "0" && m.PalletNo == palletNo && (m.Status == "0" || m.Status == "1")).ToList(); |
| | | if (upShelfOldList != null) //查询到入库信息 |
| | | if (upShelfOldList.Count != 0) //查询到入库信息 |
| | | { |
| | | var upShelfOld = upShelfOldList.First(); |
| | | var beingTask = Db.Queryable<LogTask>().First(m => m.IsDel == "0" && m.TaskNo == upShelfOld.TaskNo); |
| | |
| | | // 添加托盘绑定表托盘入库任务号 liudl |
| | | foreach (DataStockDetail stockModel in stockDetail) |
| | | { |
| | | var bindModel = Db.Queryable<BllPalletBind>().First(m => m.IsDel == "0" && m.Status == "2" |
| | | && m.PalletNo == stockModel.PalletNo && m.ASNNo == stockModel.ASNNo && m.ASNDetailNo == stockModel.ASNDetailNo); |
| | | var bindModel = Db.Queryable<BllPalletBind>().Where(m => m.IsDel == "0" && m.Status == "2" |
| | | && m.PalletNo == stockModel.PalletNo && m.ASNNo == stockModel.ASNNo && m.ASNDetailNo == stockModel.ASNDetailNo).OrderByDescending(m=>m.CreateTime).First(); |
| | | if (bindModel != null && string.IsNullOrWhiteSpace(bindModel.TaskNo)) |
| | | { |
| | | bindModel.TaskNo = taskNo; |
| | |
| | | |
| | | foreach (DataStockDetail stockModel in stockDetail) |
| | | { |
| | | var bindModel = Db.Queryable<BllPalletBind>().First(m => m.IsDel == "0" && m.Status == "2" |
| | | && m.PalletNo == stockModel.PalletNo && m.ASNNo == stockModel.ASNNo && m.ASNDetailNo == stockModel.ASNDetailNo); |
| | | var bindModel = Db.Queryable<BllPalletBind>().Where(m => m.IsDel == "0" && m.Status == "2" |
| | | && m.PalletNo == stockModel.PalletNo && m.ASNNo == stockModel.ASNNo && m.ASNDetailNo == stockModel.ASNDetailNo).OrderByDescending(m=>m.CreateTime).First(); |
| | | if (bindModel != null && string.IsNullOrWhiteSpace(bindModel.TaskNo)) |
| | | { |
| | | bindModel.TaskNo = taskNo; |
| | |
| | | } |
| | | |
| | | |
| | | |
| | | #region MyRegion |
| | | |
| | | |
| | | /// <summary> |
| | | /// 向Limes发送请验信息 |
| | | /// </summary> |
| | | /// <param name="model">model.Id:请验单主键;model.Code:出库口 </param> |
| | | /// <param name="userId">操作用户</param> |
| | | /// <param name="url">Wcs地址</param> |
| | | /// <returns></returns> |
| | | public bool SendInspectionRequest(IdVm model, int userId, string url, string userName) |
| | | { |
| | | try |
| | | { |
| | | // 判断请验单状态 |
| | | var data = Db.Queryable<BllQualityInspectionRequest>() |
| | | .Where(m => m.QcNo == model.Code && m.IsDel == "0" && m.Status == "0").ToList().FirstOrDefault(); |
| | | if (data == null) |
| | | { |
| | | throw new Exception("操作失败!请验单状态变更."); |
| | | } |
| | | |
| | | // 记录任务日志 |
| | | //var taskNo = new Common().GetMaxNo("TK"); |
| | | //var exTask = new LogTask() |
| | | //{ |
| | | // TaskNo = taskNo, |
| | | // Sender = "WMS", |
| | | // Receiver = "Limes", |
| | | // IsSuccess = 0, //是否下发成功 0失败 1成功 |
| | | // StartLocat = "", //起始位置 |
| | | // PalletNo = "", //托盘码 |
| | | // IsSend = 1, //是否可再次下发 |
| | | // IsCancel = 1, //是否可取消 |
| | | // IsFinish = 1, //是否可完成 |
| | | // Status = "0", //任务状态0:等待执行1正在执行2执行完成 |
| | | // OrderType = "5", //0 入库单 1 出库单 2 盘点单 3 移库单 4 取样出库单 5 其他 |
| | | // EndLocat = "", //目标位置 |
| | | // Type = "3", //任务类型 0 入库任务 1 出库任务 2 移库任务 |
| | | // Msg = "请验任务" |
| | | //}; |
| | | |
| | | //// 插入任务日志 |
| | | //Db.Insertable(exTask).ExecuteCommand(); |
| | | |
| | | |
| | | // 调用Limes接口发起请验 |
| | | var sendModel = new SendLimesModel() |
| | | { |
| | | QcNo = data.QcNo, |
| | | SkuNo = data.SkuNo, |
| | | Qty = data.Qty.ToString(), |
| | | LotNo = data.LotNo, |
| | | SupplierLot = data.SupplierLot, |
| | | RequestUser = userName, // 请验人 |
| | | }; |
| | | var jsonData = JsonConvert.SerializeObject(sendModel); |
| | | string response = ""; |
| | | |
| | | try |
| | | { |
| | | var time1 = DateTime.Now;//发送时间 .ToString("yyyy-MM-dd HH:mm:ss") |
| | | //response = HttpHelper.DoPost(url, jsonData, "上传Limes系统发起请验", "Limes"); |
| | | var time2 = DateTime.Now;//返回时间 .ToString("yyyy-MM-dd HH:mm:ss") |
| | | |
| | | ////解析返回数据 |
| | | //var limesModel = JsonConvert.DeserializeObject<LimesModel>(response); |
| | | //if (limesModel.Success == 0) |
| | | //{ |
| | | |
| | | |
| | | // 更新请验单信息 |
| | | data.Status = "1"; |
| | | data.SamplingQty = 10;//decimal.Parse(limesModel.SamplingQty); |
| | | data.RequestUser = userId; |
| | | data.RequestTime = DateTime.Now; |
| | | data.UpdateTime = DateTime.Now; |
| | | data.UpdateUser = userId; |
| | | |
| | | Db.Updateable(data).ExecuteCommand(); |
| | | //} |
| | | //if (limesModel.Success == -1) |
| | | //{ |
| | | |
| | | // throw new Exception(limesModel.Message); |
| | | //} |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | throw new Exception(ex.Message); |
| | | } |
| | | |
| | | //添加操作日志记录 |
| | | var k = new OperationCrServer() |
| | | .AddLogOperationCr("质量管理", "质检请验", model.Code, "请验", $"向质量部分发起请验!", userId); |
| | | |
| | | return true; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | throw new Exception(e.Message); |
| | | } |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | |
| | | } |
| | | } |