Merge branch 'master' of https://gitee.com/liudongl/jc24-wms
| | |
| | | } |
| | | var item = { |
| | | StockId: parseInt(infoOptions.data[i].Id), |
| | | Qty: parseInt(infoOptions.data[i].ExportQty) |
| | | Qty: parseFloat(infoOptions.data[i].ExportQty) |
| | | }; |
| | | DataList.push(item); |
| | | } |
| | |
| | | }); |
| | | return; |
| | | } |
| | | if($('#pickQty1').val() != "" && $('#pickQty1').val()>parseInt($('#pickQty').val())){ |
| | | if($('#pickQty1').val() != "" && $('#pickQty1').val()>parseFloat($('#pickQty').val())){ |
| | | layer.msg("拣货数量不能大于待拣数量!", { |
| | | icon: 2, |
| | | time: 2000 //2秒关闭(如果不配置,默认是3秒) |
| | |
| | | time: 2000 //2秒关闭(如果不配置,默认是3秒) |
| | | }); return; |
| | | } |
| | | let pickedQty = parseInt($('#pickedQty2').val()) //已拣数量 |
| | | let pickQty = parseInt($('#pickQty2').val()) //拣货数量 |
| | | let pickedQty = parseFloat($('#pickedQty2').val()) //已拣数量 |
| | | let pickQty = parseFloat($('#pickQty2').val()) //拣货数量 |
| | | if (pickQty <= 0) { |
| | | layer.msg("拣货数量需大于0", { |
| | | icon: 2, |
| | |
| | | |
| | | public class BoxInfoCheck |
| | | { |
| | | public string BoxNo { get; set; } |
| | | public string PalletNo { get; set; } |
| | | public string TaskNo { get; set; } |
| | | } |
| | |
| | | { |
| | | throw new Exception("未查询到该出库单的信息"); |
| | | } |
| | | var type1 = new List<string>() { "0", "4" }; //拣货不可多出 |
| | | var type2 = new List<string>() { "1", "2", "3", "5", "6", "7", "8" };//拣货可多出 |
| | | var type1 = new List<string>() { "0", "4" }; //拣货不可多出 成品出库、不合格品出库 |
| | | var type2 = new List<string>() { "1", "2", "3", "5", "6", "7", "8" };//拣货可多出 领料出库、抽检出库、物料取样出库、中间品出库、代储出库、其他出库、寄存出库 |
| | | if (type1.Contains(notice.Type)) |
| | | { |
| | | if (notice.Status != "3") |
| | |
| | | |
| | | // 出库总表 状态改为部分分配 |
| | | var noticeModel = Db.Queryable<BllExportNotice>().First(m => m.SONo == noticeDetailModel.SONo && m.IsDel == "0"); |
| | | noticeModel.Status = "1"; |
| | | if (noticeDetailModel.AllotQty<=0) |
| | | { |
| | | noticeModel.Status = "0"; |
| | | } |
| | | else |
| | | { |
| | | noticeModel.Status = "1"; |
| | | } |
| | | |
| | | Db.Updateable(noticeModel).ExecuteCommand(); |
| | | |
| | | // 库存明细表 状态修改为异常锁定 锁定数量修改为托盘上数量 |
| | |
| | | |
| | | // 库存总表 锁定数量=当前锁定数量 + (库存明细托盘上数量-库存明细托盘上已锁定的数量) |
| | | var stockModel = Db.Queryable<DataStock>().First(m => m.LotNo == stockDetailModel.LotNo && m.SkuNo == stockDetailModel.SkuNo && m.IsDel == "0"); |
| | | stockModel.LockQty = stockModel.LockQty + (int)(stockDetailModel.Qty - lockQty); |
| | | stockModel.LockQty = stockModel.LockQty + (decimal)(stockDetailModel.Qty - lockQty); |
| | | Db.Updateable(stockModel).ExecuteCommand(); |
| | | |
| | | // 拣货明细表 删除 |
| | |
| | | foreach (var item in detailList) |
| | | { |
| | | totalQty += item.Qty; |
| | | totalAllotQty += Convert.ToInt32(item.AllotQty); |
| | | totalAllotQty += Convert.ToDecimal(item.AllotQty); |
| | | } |
| | | |
| | | if (totalAllotQty >= totalQty) |
| | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 获取拆垛分拣主扫箱码出库 |
| | | /// 拆垛分拣主扫箱码出库 |
| | | /// </summary> |
| | | /// <param name="model">拆垛托盘号和WCS任务号</param> |
| | | /// <returns>拆垛托盘信息</returns> |
| | | /// <param name="model">箱号</param> |
| | | /// <returns>出库分拣口</returns> |
| | | public string BoxInfoExportWcs(string boxno) |
| | | { |
| | | try |
| | |
| | | //修改出库单信息 |
| | | Db.Updateable(notice).ExecuteCommand(); |
| | | |
| | | return ""; |
| | | return allot.LoadingAddre; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | |
| | | { |
| | | //储位表, 将储位标志Flag修改为:0:正常 |
| | | storageLocat.Flag = "0"; |
| | | storageLocat.Status = "1"; |
| | | storageLocat.UpdateUser = tabledto.UpdateUser; |
| | | storageLocat.UpdateTime = time; |
| | | |
| | |
| | | |
| | | Db.Updateable(stockDetail).UpdateColumns(it => new { it.LockQty, it.Status, it.UpdateUser, it.UpdateTime }).ExecuteCommand(); |
| | | //库存总表,修改锁定数量LockQty=锁定数量-托盘数量 |
| | | stock.LockQty = Convert.ToInt32(stock.LockQty - stockDetail.Qty); |
| | | stock.LockQty = Convert.ToDecimal(stock.LockQty - stockDetail.Qty); |
| | | stock.UpdateUser = tabledto.UpdateUser; |
| | | stock.UpdateTime = time; |
| | | |
| | |
| | | /// <returns>拆垛托盘信息</returns> |
| | | |
| | | public RequestBoxInfoCheck BoxInfoCheckWcs(BoxInfoCheck model); |
| | | |
| | | /// <summary> |
| | | /// 拆垛分拣主扫箱码出库 |
| | | /// </summary> |
| | | /// <param name="boxno"></param> |
| | | /// <returns></returns> |
| | | string BoxInfoExportWcs(string boxno); |
| | | } |
| | | } |
| | |
| | | |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 成品箱码拆垛拣货 |
| | | /// </summary> |
| | | /// <param name="model">入库单信息</param> |
| | | /// <returns></returns> |
| | | [AllowAnonymous] |
| | | [HttpPost] |
| | | public IActionResult ResultBoxInfoExportWcs(BoxInfoCheck model) |
| | | { |
| | | var logStr = $@".\log\WCS\WCS申请成品箱码拆垛拣货信息" + DateTime.Now.ToString("yyyyMMdd") + ".txt"; |
| | | try |
| | | { |
| | | //返回出库分拣装车口 |
| | | var list = _exNoticeSvc.BoxInfoExportWcs(model.BoxNo); |
| | | return Ok(new { Success = 1, Message = "成品箱码拆垛拣货成功", loadubgAddre = list }); |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | LogFile.SaveLogToFile($"WCS申请成品箱码拆垛拣货异常返回:( {e.Message} ),", logStr); |
| | | |
| | | return Ok(new ErpModel { Success = -1, Message = e.Message }); |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | #region AGV |
| | | |