| | |
| | | using Model.InterFaceModel; |
| | | using Model.ModelDto; |
| | | using Model.ModelDto.DataDto; |
| | | using Model.ModelDto.LogDto; |
| | | using Model.ModelDto.SysDto; |
| | | using Model.ModelVm.DataVm; |
| | | using Newtonsoft.Json; |
| | |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | palletNo.IsCancel = 0; |
| | | palletNo.IsSend = 0; |
| | | palletNo.IsFinish = 0; |
| | | Db.Updateable(palletNo).ExecuteCommand(); |
| | | |
| | | Db.CommitTran(); |
| | | |
| | |
| | | } |
| | | } |
| | | } |
| | | else |
| | | else |
| | | { |
| | | storageStart = Db.Queryable<SysStorageLocat>().First(w => w.IsDel == "0" && w.LocatNo == palletNo.StartLocat); //获取起始库位信息 |
| | | if (storageStart == null) |
| | | { |
| | | throw new Exception("未找到相应的起始库位"); |
| | | isstock = 2; //库口到缓存位任务 |
| | | } |
| | | } |
| | | //var soAllot = Db.Queryable<BllExportAllot>().First(m => m.IsDel == "0" && m.PalletNo == palletNo.PalletNo);//获取分配信息 |
| | |
| | | |
| | | if (isstock == 1) |
| | | { |
| | | startLocat = Db.Queryable<SysStorageLocat>().First(w=> w.IsDel == "0" && w.LocatNo == palletNo.StartLocat); |
| | | startLocat = Db.Queryable<SysStorageLocat>().First(w => w.IsDel == "0" && w.LocatNo == palletNo.StartLocat); |
| | | //修改起始库位状态 |
| | | startLocat.Status = "0";//0:空储位 1:有物品 2:入库中 3:出库中 4:移入中 5:移出中 |
| | | Db.Updateable(startLocat).ExecuteCommand(); |
| | | |
| | | //调用MES备料反馈完成接口 |
| | | #region MES备料完成反馈 |
| | | |
| | | #region |
| | | var data = new List<RequertBeiliaoInfoModel>(); |
| | | |
| | | //更改库存明细 |
| | |
| | | case "1": |
| | | endlono = "Y003_0" + endLocat.LocatNo.ToString().Substring(5, 2); |
| | | break; |
| | | |
| | | |
| | | } |
| | | var mescode = Db.Queryable<BllExportNotice>().Where(w => w.SONo == stockDetail.First().SONo).First(); |
| | | var mesData = new RequertBeiliaoModel() |
| | |
| | | } |
| | | #endregion |
| | | } |
| | | else //空托盘处理 |
| | | else if (isstock == 0) |
| | | { |
| | | //修改组托信息 |
| | | if (bindDetail.WareHouseNo == "W01") //1、空托盘垛到空托盘收集器; |
| | |
| | | } |
| | | } |
| | | Db.Updateable(bindDetail).ExecuteCommand(); |
| | | |
| | | } |
| | | else //库口移库到缓存位 |
| | | { |
| | | |
| | | foreach (var item in stockDetail) |
| | | { |
| | | item.LocatNo = endLocat.LocatNo;//储位更改 |
| | | item.WareHouseNo = endLocat.WareHouseNo;//所属仓库更改 |
| | | item.RoadwayNo = endLocat.RoadwayNo;//所属巷道更改 |
| | | item.AreaNo = endLocat.AreaNo;//所属区域更改 |
| | | |
| | | Db.Updateable(item).ExecuteCommand(); |
| | | } |
| | | } |
| | | palletNo.IsCancel = 0; |
| | | palletNo.IsSend = 0; |
| | | palletNo.IsFinish = 0; |
| | | Db.Updateable(palletNo).ExecuteCommand(); |
| | | Db.CommitTran(); |
| | | } |
| | | catch (Exception ex) |
| | |
| | | } |
| | | #endregion |
| | | |
| | | #region 数字孪生系统获取库存信息 |
| | | #region 数字孪生系统反馈信息 |
| | | |
| | | /// <summary> |
| | | /// 反馈数字孪生系统库存信息 |
| | |
| | | throw new Exception("返回库存信息有误,错误信息:" + ex); |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | /// <summary> |
| | | /// 反馈数字孪生系统操作信息 |
| | | /// </summary> |
| | | /// <param name=""></param> |
| | | /// <returns></returns> |
| | | public List<ReLogDataModel> GetLogDataList() |
| | | { |
| | | try |
| | | { |
| | | |
| | | //库存信息 |
| | | var stockDetailsList = Db.Queryable<DataStockDetail>().ToList(); |
| | | var sql = "select LocatNo,PalletNo,SkuName,Standard,LotNo,InspectStatus,Qty,ExpirationTime as Warranty from DataStockDetail "; |
| | | |
| | | |
| | | var item2 = Expressionable.Create<LogOperationSO>() |
| | | .And(it => it.IsDel == "0") |
| | | .ToExpression();//注意 这一句 不能少 |
| | | |
| | | var list2 = Db.Queryable<LogOperationSO>().Where(item2) |
| | | .LeftJoin<SysDictionary>((it, dic) => it.Type == dic.Id.ToString()) |
| | | .LeftJoin<SysUserInfor>((it, dic, users) => it.CreateUser == users.Id) |
| | | .Select((it, dic, users) => new OperationDto() |
| | | { |
| | | Id = it.Id, |
| | | ParentNo = it.ParentNo, |
| | | MenuNo = it.MenuNo, |
| | | MenuName = it.MenuName, |
| | | FkNo = it.FkNo, |
| | | Type = dic.DictName, |
| | | Msg = it.Msg, |
| | | CreateTime = it.CreateTime.ToString("yyyy-MM-dd HH:mm:ss"), |
| | | CreateUserName = users.RealName, |
| | | }); |
| | | |
| | | List<ReLogDataModel> list = Db.Ado.SqlQuery<ReLogDataModel>(sql); |
| | | |
| | | return list; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | |
| | | throw new Exception("返回库存信息有误,错误信息:" + ex); |
| | | } |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 查询操作日志 |
| | | /// </summary> |
| | | /// <param name="menuName">菜单名称</param> |
| | | /// <param name="type">类型</param> |
| | | /// <returns></returns> |
| | | public List<OperationDto> ReLogData() |
| | | { |
| | | try |
| | | { |
| | | var total = 0; |
| | | #region asn |
| | | |
| | | var item = Expressionable.Create<LogOperationASN>() |
| | | .And(it => it.IsDel == "0") |
| | | .ToExpression();//注意 这一句 不能少 |
| | | |
| | | var list = Db.Queryable<LogOperationASN>().Where(item) |
| | | .LeftJoin<SysDictionary>((it, dic) => it.Type == dic.Id.ToString()) |
| | | .LeftJoin<SysUserInfor>((it, dic, users) => it.CreateUser == users.Id) |
| | | .Select((it, dic, users) => new OperationDto() |
| | | { |
| | | Id = it.Id, |
| | | ParentNo = it.ParentNo, |
| | | MenuNo = it.MenuNo, |
| | | MenuName = it.MenuName, |
| | | FkNo = it.FkNo, |
| | | Type = dic.DictName, |
| | | Msg = it.Msg, |
| | | CreateTime = it.CreateTime.ToString("yyyy-MM-dd HH:mm:ss"), |
| | | CreateUserName = users.RealName, |
| | | }); |
| | | |
| | | #endregion |
| | | |
| | | #region so |
| | | |
| | | var item2 = Expressionable.Create<LogOperationSO>() |
| | | .And(it => it.IsDel == "0") |
| | | .ToExpression();//注意 这一句 不能少 |
| | | |
| | | var list2 = Db.Queryable<LogOperationSO>().Where(item2) |
| | | .LeftJoin<SysDictionary>((it, dic) => it.Type == dic.Id.ToString()) |
| | | .LeftJoin<SysUserInfor>((it, dic, users) => it.CreateUser == users.Id) |
| | | .Select((it, dic, users) => new OperationDto() |
| | | { |
| | | Id = it.Id, |
| | | ParentNo = it.ParentNo, |
| | | MenuNo = it.MenuNo, |
| | | MenuName = it.MenuName, |
| | | FkNo = it.FkNo, |
| | | Type = dic.DictName, |
| | | Msg = it.Msg, |
| | | CreateTime = it.CreateTime.ToString("yyyy-MM-dd HH:mm:ss"), |
| | | CreateUserName = users.RealName, |
| | | }); |
| | | |
| | | #endregion |
| | | |
| | | #region cr |
| | | |
| | | var item3 = Expressionable.Create<LogOperationCR>() |
| | | .And(it => it.IsDel == "0") |
| | | .ToExpression();//注意 这一句 不能少 |
| | | |
| | | var list3 = Db.Queryable<LogOperationCR>().Where(item3) |
| | | .LeftJoin<SysDictionary>((it, dic) => it.Type == dic.Id.ToString()) |
| | | .LeftJoin<SysUserInfor>((it, dic, users) => it.CreateUser == users.Id) |
| | | .Select((it, dic, users) => new OperationDto() |
| | | { |
| | | Id = it.Id, |
| | | ParentNo = it.ParentNo, |
| | | MenuNo = it.MenuNo, |
| | | MenuName = it.MenuName, |
| | | FkNo = it.FkNo, |
| | | Type = dic.DictName, |
| | | Msg = it.Msg, |
| | | CreateTime = it.CreateTime.ToString("yyyy-MM-dd HH:mm:ss"), |
| | | CreateUserName = users.RealName, |
| | | }); |
| | | |
| | | #endregion |
| | | |
| | | #region sys |
| | | |
| | | var item4 = Expressionable.Create<LogOperationSys>() |
| | | .ToExpression();//注意 这一句 不能少 |
| | | |
| | | var list4 = Db.Queryable<LogOperationSys>().Where(item4) |
| | | .LeftJoin<SysDictionary>((it, dic) => it.Type == dic.Id.ToString()) |
| | | .LeftJoin<SysUserInfor>((it, dic, users) => it.CreateUser == users.Id) |
| | | .Select((it, dic, users) => new OperationDto() |
| | | { |
| | | Id = it.Id, |
| | | ParentNo = it.ParentNo, |
| | | MenuNo = it.MenuNo, |
| | | MenuName = it.MenuName, |
| | | FkNo = it.FkNo, |
| | | Type = dic.DictName, |
| | | Msg = it.Msg, |
| | | CreateTime = it.CreateTime.ToString("yyyy-MM-dd HH:mm:ss"), |
| | | CreateUserName = users.RealName, |
| | | }); |
| | | |
| | | #endregion |
| | | |
| | | var data = Db.UnionAll(list, list2, list3, list4).OrderByDescending(it => it.CreateTime); |
| | | return data.OrderByDescending(m => m.CreateTime).ToList(); |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | throw new Exception(e.Message); |
| | | } |
| | | } |
| | | #endregion |
| | | } |
| | | } |