| | |
| | | <div class="layui-card"> |
| | | <div class="layui-form layui-card-header layuiadmin-card-header-auto" id="top"> |
| | | <div class="layui-form-item" style="margin-bottom: 0px;"> |
| | | <div class="layui-inline zongdan" > |
| | | <!-- <div class="layui-inline zongdan" > |
| | | <label class="layui-form-label" style="width: 60px;">物料编码</label> |
| | | <div class="layui-input-inline" style="width: 170px; margin-right: 0px;"> |
| | | <input type="text" id="SkuNo" name="SkuNo" placeholder="物料编码" autocomplete="off" class="layui-input"> |
| | |
| | | <div class="layui-input-inline" style="width: 170px; margin-right: 0px;"> |
| | | <input type="text" id="SkuName" name="SkuName" placeholder="物料名称" autocomplete="off" class="layui-input"> |
| | | </div> |
| | | </div> --> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" style="width: 60px;">所属仓库</label> |
| | | <div class="layui-input-inline"> |
| | | <select name="WareHouseNo" id="WareHouseNo" lay-filter="getWareHouseNo" lay-search> |
| | | <option value=""></option> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" style="width: 60px;">所属区域</label> |
| | | <div class="layui-input-inline"> |
| | | <select name="AreaNo" id="AreaNo" lay-filter="getAreaNo" lay-search> |
| | | <option value=""></option> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline zongdan" > |
| | | <label class="layui-form-label" style="width: 60px;">托盘号</label> |
| | | <label class="layui-form-label" style="width: 60px;">储位地址</label> |
| | | <div class="layui-input-inline" style="width: 170px; margin-right: 0px;"> |
| | | <input type="text" id="LocatNo" name="LocatNo" placeholder="储位地址" autocomplete="off" class="layui-input"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline zongdan" > |
| | | <label class="layui-form-label" style="width: 60px;">桶号</label> |
| | | <div class="layui-input-inline" style="width: 170px; margin-right: 0px;"> |
| | | <input type="text" id="PalletNo" name="PalletNo" placeholder="桶号" autocomplete="off" class="layui-input"> |
| | | </div> |
| | |
| | | </select> |
| | | </div> |
| | | </div> --> |
| | | <div class="layui-inline zhijian"> |
| | | <!-- <div class="layui-inline zhijian"> |
| | | <label class="layui-form-label" style="width: 60px;">质检状态</label> |
| | | <div class="layui-input-inline" style="width: 170px; margin-right: 0px;"> |
| | | <select name="InspectStatus" id="InspectStatus" lay-filter="InspectStatus" |
| | | lay-search> |
| | | <option value=""></option> |
| | | <option value="0">待质检</option><!-- 待检验 --> |
| | | <option value="1">检验合格</option><!-- 合格品 --> |
| | | <option value="2">不合格</option><!-- 不合格 --> |
| | | <option value="3">放置期</option><!-- 不合格 --> |
| | | <option value="0">待质检</option> |
| | | <option value="1">检验合格</option> |
| | | <option value="2">不合格</option> |
| | | <option value="3">放置期</option> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | </div> --> |
| | | |
| | | <!-- <div class="layui-inline zhijian"> |
| | | <label class="layui-form-label" style="width: 60px;">开始时间</label> |
| | |
| | | var TotalColsSysArr=encodeURIComponent(encodeURIComponent(JSON.stringify(TotalColsArr)))//将表头数据进行url编码 |
| | | //#endregion |
| | | //获取托盘明细 |
| | | function refreshTable(SkuNo,SkuName,PalletNo,LotNo,BoxNo,Status,InspectMark,BitPalletMark,BitBoxMark,InspectStatus,OwnerNo,OwnerName,StartTime,EndTime) { |
| | | function refreshTable(WareHouseName,AreaName,LocatNo,PalletNo,LotNo) { |
| | | //#region 自定义表头 |
| | | var colsJson |
| | | var param1={ |
| | |
| | | }; |
| | | |
| | | var param = { |
| | | SkuNo:SkuNo, //物料号 |
| | | SkuName:SkuName, //物料名称 |
| | | wareHouseName:WareHouseName, |
| | | areaName:AreaName, |
| | | locatNo:LocatNo, |
| | | palletNo:PalletNo, //托盘号 |
| | | LotNo:LotNo, //批次号 |
| | | BoxNo:BoxNo, //箱码 |
| | | Status:Status, //箱支状态 |
| | | InspectMark:InspectMark, //检验标记 |
| | | BitPalletMark:BitPalletMark, //零托标记 |
| | | BitBoxMark:BitBoxMark, //零箱标记 |
| | | InspectStatus:InspectStatus, //质量状态 |
| | | OwnerNo:OwnerNo, //货主编码 |
| | | OwnerName:OwnerName, //货主名称 |
| | | StartTime:StartTime, //开始时间 |
| | | EndTime:EndTime, //结束时间 |
| | | |
| | | }; |
| | | sendData(IP + "/Statistical/GetBindList", param, 'get', function(res) { |
| | | console.log(res) |
| | |
| | | }); |
| | | } |
| | | }); |
| | | //获取仓库下拉框信息 |
| | | sendData(IP + "/Sys/GetWarehouseDic", {}, 'get', function(res) { |
| | | if (res.code == 0) { //成功 |
| | | for (var i = 0; i < res.data.length; i++) { |
| | | $("#WareHouseNo").append('<option value =' + res.data[i].WareHouseNo + '>' + res.data[i].WareHouseNo + '-' + |
| | | res.data[i].WareHouseName + '</option>'); |
| | | } |
| | | form.render('select'); |
| | | } else { //不成功 |
| | | layer.msg(res.msg, { |
| | | icon: 2, |
| | | time: 2000 //2秒关闭(如果不配置,默认是3秒) |
| | | }, function() {}); |
| | | } |
| | | }); |
| | | |
| | | getAR(""); |
| | | form.on('select(getWareHouseNo)', function(data) { |
| | | getAR(data.value); |
| | | }); |
| | | function getAR(val) { |
| | | //获取 区域下拉框 |
| | | sendData(IP + "/Sys/GetStorageAreaByHouseNo?wareHouseNo="+val, {}, 'get', function(res) { |
| | | $("#AreaNo").empty(); |
| | | $("#AreaNo").append('<option value =""></option>'); |
| | | if (res.code == 0) { //成功 |
| | | for (var i = 0; i < res.data.length; i++) { |
| | | $("#AreaNo").append('<option value =' + res.data[i].AreaNo + '>' + res.data[i].AreaNo + '-' + |
| | | res.data[i].AreaName + '</option>'); |
| | | } |
| | | form.render('select'); |
| | | } else { //不成功 |
| | | layer.msg('获取区域信息失败', { |
| | | icon: 2, |
| | | time: 2000 //2秒关闭(如果不配置,默认是3秒) |
| | | }, function() { |
| | | //回调 |
| | | form.render('select'); |
| | | }); |
| | | } |
| | | }); |
| | | |
| | | }; |
| | | |
| | | //监听搜索 |
| | | form.on('submit(LAY-app-contlist-search)', function(data) { |
| | | var SkuNo = $("#SkuNo").val(); |
| | | var SkuName = $("#SkuName").val(); |
| | | var LotNo = $("#LotNo").val(); |
| | | |
| | | var WareHouseName = $("#WareHouseNo").val(); |
| | | var AreaName = $("#AreaNo").val(); |
| | | var LocatNo = $("#LocatNo").val(); |
| | | var PalletNo = $("#PalletNo").val(); |
| | | var LotNo = $("#LotNo").val(); |
| | | |
| | | var BoxNo = $("#BoxNo").val(); |
| | | var Status = $("#Status").val(); |
| | | var InspectMark = $("#InspectMark").val(); |
| | | var BitPalletMark = $("#BitPalletMark").val(); |
| | | var BitBoxMark = $("#BitBoxMark").val(); |
| | | var InspectStatus = $("#InspectStatus").val(); |
| | | |
| | | var OwnerNo = $("#OwnerNo").val(); |
| | | var OwnerName = $("#OwnerName").val(); |
| | | |
| | | var StartTime = $("#StartTime").val(); |
| | | var EndTime = $("#EndTime").val(); |
| | | |
| | | refreshTable(SkuNo,SkuName,PalletNo,LotNo,BoxNo,Status,InspectMark,BitPalletMark,BitBoxMark,InspectStatus,OwnerNo,OwnerName,StartTime,EndTime); |
| | | refreshTable(WareHouseName,AreaName,LocatNo,PalletNo,LotNo); |
| | | |
| | | }); |
| | | |
| | |
| | | { |
| | | case "3"://清洗设备申请储位(净桶申请储位) |
| | | //查找到该车间净桶区 |
| | | List<string> areaNoList = Db.Queryable<SysStorageArea>().Where(w => w.IsDel == "0" && w.Status == "0" && w.Type == "0" && w.WareHouseNo == houseNo).Select(s => s.AreaNo).ToList(); |
| | | loction = storageLocat.Where(w => w.WareHouseNo == houseNo && areaNoList.Contains(w.AreaNo)).OrderByDescending(o => o.CreateTime).First(); |
| | | //List<string> areaNoList = Db.Queryable<SysStorageArea>().Where(w => w.IsDel == "0" && w.Status == "0" && w.Type == "0" && w.WareHouseNo == houseNo).Select(s => s.AreaNo).ToList(); |
| | | //loction = storageLocat.Where(w => w.WareHouseNo == houseNo && areaNoList.Contains(w.AreaNo) && w.Status == "0" && w.Flag == "0").OrderByDescending(o => o.CreateTime).First(); |
| | | loction = GetLocatModel(houseNo, "0"); |
| | | if (loction == null) |
| | | { |
| | | throw new Exception("该车间净桶区暂无空余储位"); |
| | |
| | | throw new Exception("批次号为空!"); |
| | | } |
| | | //查找到该车间预混区 |
| | | List<string> areaNoList2 = Db.Queryable<SysStorageArea>().Where(w => w.IsDel == "0" && w.Status == "0" && w.Type == "1" && w.WareHouseNo == houseNo).Select(s => s.AreaNo).ToList(); |
| | | loction = storageLocat.Where(w => w.WareHouseNo == houseNo && areaNoList2.Contains(w.AreaNo)).OrderByDescending(o => o.CreateTime).First(); |
| | | //List<string> areaNoList2 = Db.Queryable<SysStorageArea>().Where(w => w.IsDel == "0" && w.Status == "0" && w.Type == "1" && w.WareHouseNo == houseNo).Select(s => s.AreaNo).ToList(); |
| | | //loction = storageLocat.Where(w => w.WareHouseNo == houseNo && areaNoList2.Contains(w.AreaNo) && w.Status == "0" && w.Flag == "0").OrderByDescending(o => o.CreateTime).First(); |
| | | loction = GetLocatModel(houseNo, "1"); |
| | | if (loction == null) |
| | | { |
| | | throw new Exception("该车间预混区暂无空余储位"); |
| | |
| | | Db.Updateable(notice).ExecuteCommand(); |
| | | |
| | | //查找到该车间半成品区 |
| | | List<string> areaNoList3 = Db.Queryable<SysStorageArea>().Where(w => w.IsDel == "0" && w.Status == "0" && w.Type == "2" && w.WareHouseNo == houseNo).Select(s => s.AreaNo).ToList(); |
| | | loction = storageLocat.Where(w => w.WareHouseNo == houseNo && areaNoList3.Contains(w.AreaNo)).OrderByDescending(o => o.CreateTime).First(); |
| | | //List<string> areaNoList3 = Db.Queryable<SysStorageArea>().Where(w => w.IsDel == "0" && w.Status == "0" && w.Type == "2" && w.WareHouseNo == houseNo).Select(s => s.AreaNo).ToList(); |
| | | //loction = storageLocat.Where(w => w.WareHouseNo == houseNo && areaNoList3.Contains(w.AreaNo) && w.Status == "0" && w.Flag == "0").OrderByDescending(o => o.CreateTime).First(); |
| | | loction = GetLocatModel(houseNo, "2"); |
| | | if (loction == null) |
| | | { |
| | | throw new Exception("该车间半成品区暂无空余储位"); |
| | |
| | | break; |
| | | case "2"://下料设备申请储位(脏桶申请储位) |
| | | //查找到该车间脏桶区 |
| | | List<string> areaNoList4 = Db.Queryable<SysStorageArea>().Where(w => w.IsDel == "0" && w.Status == "0" && w.Type == "3" && w.WareHouseNo == houseNo).Select(s => s.AreaNo).ToList(); |
| | | loction = storageLocat.Where(w => w.WareHouseNo == houseNo && areaNoList4.Contains(w.AreaNo)).OrderByDescending(o => o.CreateTime).First(); |
| | | //List<string> areaNoList4 = Db.Queryable<SysStorageArea>().Where(w => w.IsDel == "0" && w.Status == "0" && w.Type == "3" && w.WareHouseNo == houseNo).Select(s => s.AreaNo).ToList(); |
| | | //loction = storageLocat.Where(w => w.WareHouseNo == houseNo && areaNoList4.Contains(w.AreaNo) && w.Status == "0" && w.Flag == "0").OrderByDescending(o => o.CreateTime).First(); |
| | | loction = GetLocatModel(houseNo, "3"); |
| | | if (loction == null) |
| | | { |
| | | throw new Exception("该车间脏桶区暂无空余储位"); |
| | |
| | | { |
| | | //回滚事务 |
| | | Db.RollbackTran(); |
| | | throw new Exception(ex.Message); |
| | | } |
| | | } |
| | | /// <summary> |
| | | /// 获取空储位 |
| | | /// </summary> |
| | | /// <param name="houseNo">车间编号</param> |
| | | /// <param name="Type">类别 0:净桶区 1:预混区 2:半成品区 3:脏桶区</param> |
| | | /// <returns></returns> |
| | | /// <exception cref="Exception"></exception> |
| | | private SysStorageLocat GetLocatModel(string houseNo,string type) |
| | | { |
| | | try |
| | | { |
| | | //通过类别查找车间区域 |
| | | List<string> areaNoList = Db.Queryable<SysStorageArea>().Where(w => w.IsDel == "0" && w.Status == "0" && w.Type == type && w.WareHouseNo == houseNo).Select(s => s.AreaNo).ToList(); |
| | | //查找储位 |
| | | var loctionModel = Db.Queryable<SysStorageLocat>().Where(w => w.IsDel == "0" && w.Status == "0" && w.Flag == "0" && w.WareHouseNo == houseNo && areaNoList.Contains(w.AreaNo)) |
| | | .OrderBy(o => o.Row).OrderByDescending(o => o.Column).First(); |
| | | if (loctionModel == null) |
| | | { |
| | | throw new Exception("该车间净桶区暂无空余储位"); |
| | | } |
| | | return loctionModel; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | throw new Exception(ex.Message); |
| | | } |
| | | } |
| | |
| | | bool result = false; |
| | | |
| | | #region 呼叫小车代码 |
| | | List<AgvSchedulingTask> agvTaskList = new List<AgvSchedulingTask>(); |
| | | |
| | | List<PositionCodePath> pahtList = new List<PositionCodePath>(); |
| | | //起始位置 |
| | | PositionCodePath path1 = new PositionCodePath(); |
| | |
| | | agvTask.reqCode = taskDetial.Taskno;//请求编号 |
| | | agvTask.taskCode = taskDetial.Taskno;//任务号 |
| | | agvTask.ctnrCode = taskDetial.Pallno;//桶号 |
| | | agvTask.ctnrTyp = "1"; |
| | | agvTask.ctnrTyp = "1";// 1:桶 3:托盘 |
| | | agvTask.reqTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");//请求时间 |
| | | agvTask.wbCode = ""; |
| | | agvTask.positionCodePath = pahtList;//小车路径 |
| | |
| | | { |
| | | agvTask.taskTyp = "Z4";//任务类型 线边到托盘收集器 Z1, 托盘垛申请入库 Z2 |
| | | } |
| | | agvTaskList.Add(agvTask); |
| | | |
| | | // 正式运行程序放开 |
| | | var list2 = agvTaskList.Select(m => m.reqCode).ToList(); |
| | | var jsonData = JsonConvert.SerializeObject(agvTaskList); |
| | | jsonData = jsonData.Substring(1); |
| | | jsonData = jsonData.Substring(0, jsonData.Length - 1); |
| | | |
| | | var jsonData = JsonConvert.SerializeObject(agvTask); |
| | | string response = HttpHelper.DoPost(url, jsonData, "下发给AGV转运命令", "AGV"); |
| | | //解析返回数据 |
| | | var agvModel = JsonConvert.DeserializeObject<OutCommanAgvDto>(response); |
| | |
| | | /// <param name="bitBoxMark">零箱标记</param> |
| | | /// <param name="inspectStatus">质量状态</param> |
| | | /// <returns></returns> |
| | | public List<StockDetailDto> GetBindList(string skuNo, string skuName, string palletNo, string lotNo, string boxNo, string status, string inspectMark, string bitPalletMark, string bitBoxMark, string inspectStatus, string ownerNo, string ownerName, string startTime, string endTime) |
| | | public List<StockDetailDto> GetBindList(string wareHouseName, string areaName, string locatNo, string palletNo, string lotNo) |
| | | { |
| | | string str = "select detail.*,house.WareHouseNo + '-' + house.WareHouseName as WareHouseName,roadway.RoadwayNo + '-' + roadway.RoadwayName as RoadwayName,area.AreaNo + '-' + area.AreaName as AreaName from DataStockDetail detail left join SysStorageRoadway roadway on detail.RoadwayNo = roadway.RoadwayNo left join SysWareHouse house on detail.WareHouseNo = house.WareHouseNo left join SysStorageArea area on detail.AreaNo = area.AreaNo where detail.IsDel = @isdel"; |
| | | //判断物料号是否为空 |
| | | if (!string.IsNullOrEmpty(skuNo)) |
| | | string str = $@"select |
| | | detail.*, |
| | | house.WareHouseNo + '-' + house.WareHouseName as WareHouseName, |
| | | roadway.RoadwayNo + '-' + roadway.RoadwayName as RoadwayName, |
| | | area.AreaNo + '-' + area.AreaName as AreaName |
| | | from DataStockDetail detail |
| | | left join SysStorageRoadway roadway on detail.RoadwayNo = roadway.RoadwayNo |
| | | left join SysWareHouse house on detail.WareHouseNo = house.WareHouseNo |
| | | left join SysStorageArea area on detail.AreaNo = area.AreaNo |
| | | where detail.IsDel = '0'"; |
| | | |
| | | //判断所属仓库是否为空 |
| | | if (!string.IsNullOrEmpty(wareHouseName)) |
| | | { |
| | | str += " and detail.SkuNo like @skuno"; |
| | | str += $" and (house.WareHouseNo like '%{wareHouseName}%' or house.WareHouseName like '%{wareHouseName}%')"; |
| | | } |
| | | //判断物料名称是否为空 |
| | | if (!string.IsNullOrEmpty(skuName)) |
| | | //判断所属区域是否为空 |
| | | if (!string.IsNullOrEmpty(areaName)) |
| | | { |
| | | str += " and detail.SkuName like @skuname"; |
| | | str += $" and (area.AreaNo like '%{areaName}%' or area.AreaName like '%{areaName}%')"; |
| | | } |
| | | //判断所属储位是否为空 |
| | | if (!string.IsNullOrEmpty(locatNo)) |
| | | { |
| | | str += $" and detail.LocatNo like '%{locatNo}%'"; |
| | | } |
| | | //判断托盘号是否为空 |
| | | if (!string.IsNullOrEmpty(palletNo)) |
| | | { |
| | | str += " and detail.PalletNo like @palletno"; |
| | | str += $" and detail.PalletNo like '%{palletNo}%'"; |
| | | } |
| | | //判断批次是否为空 |
| | | if (!string.IsNullOrEmpty(lotNo)) |
| | | { |
| | | str += " and detail.LotNo like @lotno"; |
| | | str += $" and detail.LotNo like '%{lotNo}%'"; |
| | | } |
| | | //判断零托标记是否为空 |
| | | if (!string.IsNullOrEmpty(bitPalletMark)) |
| | | { |
| | | str += " and detail.BitPalletMark = @bitpalletmark"; |
| | | } |
| | | //判断货主编码是否为空 |
| | | if (!string.IsNullOrEmpty(ownerNo)) |
| | | { |
| | | str += " and detail.OwnerNo like @ownerNo"; |
| | | } |
| | | //判断货主名称是否为空 |
| | | if (!string.IsNullOrEmpty(ownerName)) |
| | | { |
| | | str += " and detail.OwnerName like @ownerName"; |
| | | } |
| | | if (!string.IsNullOrEmpty(startTime)) |
| | | { |
| | | str += $" and detail.CompleteTime >= '{startTime}'"; |
| | | } |
| | | if (!string.IsNullOrEmpty(endTime)) |
| | | { |
| | | endTime = Convert.ToDateTime(endTime).AddDays(1).ToString(); |
| | | str += $" and detail.CompleteTime < '{endTime}'"; |
| | | } |
| | | |
| | | int i = 0; |
| | | //在箱码明细中获取相应数据 |
| | | string boxstr = "select StockDetailId from DataBoxInfo Where IsDel = @isdel"; |
| | | //判断箱码是否为空 |
| | | if (!string.IsNullOrEmpty(boxNo)) |
| | | { |
| | | boxstr += " and BoxNo like @boxno"; |
| | | i = 1; |
| | | } |
| | | //判断箱支状态是否为空 |
| | | if (!string.IsNullOrEmpty(status)) |
| | | { |
| | | boxstr += " and Status = @status"; |
| | | i = 1; |
| | | } |
| | | //判断检验标记是否为空 |
| | | if (!string.IsNullOrEmpty(inspectMark)) |
| | | { |
| | | boxstr += " and InspectMark = @inspectmark"; |
| | | str += " and detail.InspectMark = @inspectmark"; |
| | | i = 1; |
| | | } |
| | | //判断零箱标记是否为空 |
| | | if (!string.IsNullOrEmpty(bitBoxMark)) |
| | | { |
| | | boxstr += " and BitBoxMark = @bitboxmark"; |
| | | i = 1; |
| | | } |
| | | //判断质量状态是否为空 |
| | | if (!string.IsNullOrEmpty(inspectStatus)) |
| | | { |
| | | boxstr += " and InspectStatus = @inspectstatus"; |
| | | str += " and detail.InspectStatus = @inspectstatus"; |
| | | i = 1; |
| | | } |
| | | //将箱码数据进行排序 |
| | | boxstr += " order by StockDetailId"; |
| | | //查出箱码明细中信息 |
| | | List<int> stockDetailId = Db.Ado.SqlQuery<int>(boxstr, new |
| | | { |
| | | isdel = "0", //是否删除 |
| | | boxno = "%" + boxNo + "%", //箱码 |
| | | status, //箱支状态 |
| | | inspectmark = inspectMark, //检验标记 |
| | | bitboxmark = bitBoxMark, //零箱标记 |
| | | inspectstatus = inspectStatus //质量状态 |
| | | }); |
| | | //去重 |
| | | // List<int> newArr = null; |
| | | string arr = ""; |
| | | //判断是否有查箱码信息 |
| | | if (i == 1) |
| | | { |
| | | if (stockDetailId.Count > 0) |
| | | { |
| | | //去重 |
| | | arr += stockDetailId[0].ToString(); |
| | | |
| | | for (int a = 1; a < stockDetailId.Count; a++) |
| | | { |
| | | if (stockDetailId[a] != stockDetailId[a - 1]) |
| | | { |
| | | arr += ',' + stockDetailId[a].ToString(); |
| | | } |
| | | } |
| | | } |
| | | if (!string.IsNullOrEmpty(arr)) |
| | | { |
| | | str += $" and Id in ({arr})"; |
| | | } |
| | | else |
| | | { |
| | | str += " and Id = ''"; |
| | | } |
| | | } |
| | | |
| | | //排序 |
| | | str += " order by PalletNo,SkuNo,LotNo"; |
| | | List<StockDetailDto> boxInforList = Db.Ado.SqlQuery<StockDetailDto>(str, new |
| | | { |
| | | isdel = "0", //是否删除 |
| | | skuno = "%" + skuNo + "%", //物料号 |
| | | skuname = "%" + skuName + "%", //物料名称 |
| | | palletno = "%" + palletNo + "%", //托盘 |
| | | lotno = "%" + lotNo + "%", //批次号 |
| | | bitpalletmark = bitPalletMark, //零托标记 |
| | | inspectmark = inspectMark, //检验标记 |
| | | inspectstatus = inspectStatus, //质量状态 |
| | | ownerNo = "%" + ownerNo + "%", //货主编码 |
| | | ownerName = "%" + ownerName + "%" //货主名称 |
| | | //stockdetailid = "(" + arr + ")" //库存明细id |
| | | }); |
| | | str += " order by PalletNo"; |
| | | List<StockDetailDto> boxInforList = Db.Ado.SqlQuery<StockDetailDto>(str).ToList(); |
| | | |
| | | return boxInforList; |
| | | } |
| | |
| | | /// <param name="bitBoxMark">零箱标记</param> |
| | | /// <param name="inspectStatus">质量状态</param> |
| | | /// <returns></returns> |
| | | List<StockDetailDto> GetBindList(string skuNo, string skuName, string palletNo, string lotNo, string boxNo, string status, string inspectMark, string bitPalletMark, string bitBoxMark, string inspectStatus, string ownerNo, string ownerName, string startTime, string endTIme); |
| | | List<StockDetailDto> GetBindList(string wareHouseName, string areaName, string locatNo, string palletNo, string lotNo); |
| | | |
| | | /// <summary> |
| | | /// 导出托盘明细 |
| | |
| | | /// <param name="inspectStatus">质量状态</param> |
| | | /// <returns></returns> |
| | | [HttpGet] |
| | | public IActionResult GetBindList(string skuNo, string skuName, string palletNo, string lotNo, string boxNo, string status, string inspectMark, string bitPalletMark, string bitBoxMark, string inspectStatus, string ownerNo, string ownerName,string startTime,string endTIme) |
| | | public IActionResult GetBindList(string wareHouseName,string areaName,string locatNo,string palletNo, string lotNo) |
| | | { |
| | | try |
| | | { |
| | | List<StockDetailDto> boxInfoList = _stockDetail.GetBindList(skuNo, skuName, palletNo, lotNo, boxNo, status, inspectMark, bitPalletMark, bitBoxMark, inspectStatus, ownerNo, ownerName, startTime, endTIme); |
| | | List<StockDetailDto> boxInfoList = _stockDetail.GetBindList(wareHouseName,areaName,locatNo,palletNo, lotNo); |
| | | return Ok(new { data = boxInfoList, code = 0, msg = "获取托盘明细成功" }); |
| | | } |
| | | catch (Exception e) |