| | |
| | | <i class="layui-icon layui-icon-delete"></i>取消分配 |
| | | </a>`; |
| | | } |
| | | if( d.Status == '2' || d.Status == '3'|| (d.Status == '4' && d.Type == "1")){ |
| | | if( d.Status == '1' ||d.Status == '2' || d.Status == '3'|| (d.Status == '4' && d.Type == "1")){ |
| | | html += `<a class="layui-btn layui-btn-normal layui-btn-xs outClass" lay-event="outKu"> |
| | | <i class="layui-icon layui-icon-ok"></i>出库 |
| | | </a>`; |
| | |
| | | { |
| | | new OperationASNServer().AddLogOperationAsn("入库作业", "入库单据", model.ASNNo, "添加", $"添加了单据号为{model.ASNNo}的单据信息", Convert.ToInt32(model.CreateUser)); |
| | | |
| | | //if (addOder.Count > 0) |
| | | //{ |
| | | // // 正式运行程序放开 |
| | | // var jsonData = JsonConvert.SerializeObject(addOder); |
| | | // string response = ""; |
| | | if (addOder.Count > 0) |
| | | { |
| | | // 正式运行程序放开 |
| | | var jsonData = JsonConvert.SerializeObject(addOder); |
| | | string response = ""; |
| | | |
| | | // try |
| | | // { |
| | | // var time1 = DateTime.Now;//发送时间 .ToString("yyyy-MM-dd HH:mm:ss") |
| | | // //给WCS下发入库单信息 |
| | | // response = HttpHelper.DoPost(url, jsonData, "下发给WCS出库命令", "WCS"); |
| | | try |
| | | { |
| | | var time1 = DateTime.Now;//发送时间 .ToString("yyyy-MM-dd HH:mm:ss") |
| | | //给WCS下发入库单信息 |
| | | response = HttpHelper.DoPost(url, jsonData, "下发给WCS出库命令", "WCS"); |
| | | |
| | | // //////解析返回数据 |
| | | // var wcsModel = JsonConvert.DeserializeObject<WcsModel>(response); |
| | | // if (wcsModel.StatusCode == 0) |
| | | // { |
| | | |
| | | // } |
| | | // if (wcsModel.StatusCode == -1) |
| | | // { |
| | | //解析返回数据 |
| | | var wcsModel = JsonConvert.DeserializeObject<WcsModel>(response); |
| | | if (wcsModel.StatusCode == 0) |
| | | { |
| | | |
| | | // } |
| | | // } |
| | | // catch (Exception ex) |
| | | // { |
| | | // throw new Exception(ex.Message); |
| | | // } |
| | | //} |
| | | } |
| | | if (wcsModel.StatusCode == -1) |
| | | { |
| | | throw new Exception($"下发WCS失败:{wcsModel.Msg}"); |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | throw new Exception(ex.Message); |
| | | } |
| | | } |
| | | return strMessage; |
| | | } |
| | | else |
| | |
| | | //判断托盘绑定信息中是否有 |
| | | var bind = Db.Queryable<BllPalletBind>().First(m => m.IsDel == "0" && m.ASNDetailNo == detail.Id && m.PalletNo == model.PalletNo && m.Status != "2"); |
| | | var bindId = 0; |
| | | var boxQtyZong = model.Detail.Sum(m => m.Qty); |
| | | if (bind == null) |
| | | { |
| | | bind = new BllPalletBind |
| | |
| | | PalletNo = model.PalletNo, |
| | | PalletNo2 = "", |
| | | PalletNo3 = "", |
| | | Qty = model.Qty, |
| | | Qty = boxQtyZong, |
| | | FullQty = pNum, |
| | | Status = "0",//等待执行 |
| | | Type = model.Type, //托盘类型 0物料托 1空托盘托 |
| | |
| | | Standard = box.Standard, |
| | | PackageStandard = box.PackageStandard, |
| | | StoreTime = box.StoreTime, |
| | | QtyCount = (int)box.QtyCount, |
| | | QtyOrd = (int)box.QtyOrd, |
| | | QtyCount = box.QtyCount.HasValue? (int)box.QtyCount : 0, |
| | | QtyOrd = box.QtyOrd.HasValue ? (int)box.QtyOrd : 0, |
| | | CreateUser = userId, |
| | | CreateTime = comTime, |
| | | }; |
| | |
| | | |
| | | |
| | | |
| | | var areaNoStr = "A03"; |
| | | var areaNoStr = "A07"; |
| | | var allotLocate = new AllotLocation(); |
| | | |
| | | #region 根据sku确认区域划分 |
| | |
| | | |
| | | SysStorageLocat locate; |
| | | var areaList = new List<string>(); |
| | | areaList.Add("A03"); |
| | | areaList.Add("A07"); |
| | | locate = allotLocate.GetSuiTableLocate(houseNo, areaList, roadwayNo); |
| | | |
| | | Db.BeginTran(); |
| | |
| | | var needQty = detail.Qty - detail.AllotQty; |
| | | //分配的出库数量 |
| | | var outQty = model.StockList.Select(s => s.Qty).ToList().Sum(); |
| | | if (outQty != needQty) |
| | | if (outQty < needQty) |
| | | { |
| | | throw new Exception("操作失败,出库数量与计划数量不一致!"); |
| | | throw new Exception("操作失败,出库数量不能大于计划数量!"); |
| | | } |
| | | } |
| | | |
| | |
| | | var list = _asnPalletBindSvc.RequestRoadWayModel(model.PalletNo, model.HouseNo); |
| | | |
| | | LogFile.SaveLogToFile($"WCS申请巷道返回:( {JsonConvert.SerializeObject(list)} ),", logStr); |
| | | new OperationASNServer().AddLogOperationAsn("入库作业", "入库日志", model.PalletNo.Substring(0, 8), |
| | | "申请巷道", $"申请巷道托盘号:{model.PalletNo.Substring(0, 8)}的成功信息", 2); |
| | | new OperationASNServer().AddLogOperationAsn("入库作业", "入库日志", model.PalletNo, |
| | | "申请巷道", $"申请巷道托盘号:{model.PalletNo}的成功信息", 2); |
| | | |
| | | return Ok(new { Success = 0, Message = "申请巷道成功", TaskList = list }); |
| | | } |
| | |
| | | catch (Exception e) |
| | | { |
| | | LogFile.SaveLogToFile($"WCS申请巷道返回:( {e.Message} ),", logStr); |
| | | new OperationASNServer().AddLogOperationAsn("入库作业", "入库日志", model.PalletNo.Substring(0, 8), |
| | | "申请巷道", $"申请巷道托盘号:{model.PalletNo.Substring(0, 8)}的失败信息", 2); |
| | | new OperationASNServer().AddLogOperationAsn("入库作业", "入库日志", model.PalletNo, |
| | | "申请巷道", $"申请巷道托盘号:{model.PalletNo}的失败信息", 2); |
| | | |
| | | return Ok(new ErpModel { Success = -1, Message = e.Message }); |
| | | } |
| | |
| | | "ApiUrlConfig": { |
| | | "ErpHost": "http://10.110.24.30:8081", //erpIP |
| | | "MesHost": "http://10.110.24.30:8081", //mesIP |
| | | "WcsHost": "http://localhost:5005", // "http://localhost:57061", //wcsIPhttp://localhost:57061/ |
| | | "WcsHost": "http://10.18.52.10:5005", // "http://localhost:57061", //wcsIPhttp://localhost:57061/ |
| | | "BoxHost": "http://10.110.24.30:8081", //boxIP |
| | | |
| | | // WCS |
| | | "IssueComApiUrl": "/api/demo/wcsTasks", //下发命令(出库、移库) |
| | | "IssueComApiUrl2": "/api/demo/wcsTask", //"/api/WCSApi/AddTask", //重新下发命令(出库、移库) |
| | | "AddOrderTaskUrl": "/api/demo/addOrderTask", //WMS给WCS下发的入库单任务 |
| | | "AddOrderTaskUrl": "/api/demo/orderTask", //WMS给WCS下发的入库单任务 |
| | | |
| | | // ERP |
| | | "AsnFinishUrl": "/api/wmsInterface/OutStockTask", //入库订单关闭 |