wxw
2024-12-19 78279bd340545f8c07d1ff08764bd859ba404c83
修改问题
5个文件已修改
339 ■■■■ 已修改文件
HTML/views/StatisticalReport/BoxInfor.html 122 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/WMS.BLL/BllTransServer/RcsServer.cs 58 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/WMS.BLL/DataServer/StockDetailServer.cs 153 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/WMS.IBLL/IDataServer/IStockDetailServer.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/Wms/Controllers/StatisticalController.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HTML/views/StatisticalReport/BoxInfor.html
@@ -32,7 +32,7 @@
            <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">
@@ -43,9 +43,31 @@
                            <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>
@@ -124,19 +146,19 @@
                                </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>
@@ -394,7 +416,7 @@
                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={
@@ -429,20 +451,12 @@
                        };
                        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)                       
@@ -525,28 +539,60 @@
                        });
                    }
                });
                //获取仓库下拉框信息
                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);
                    
                });
Wms/WMS.BLL/BllTransServer/RcsServer.cs
@@ -373,8 +373,9 @@
                {
                    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("该车间净桶区暂无空余储位");
@@ -389,8 +390,9 @@
                            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("该车间预混区暂无空余储位");
@@ -425,8 +427,9 @@
                        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("该车间半成品区暂无空余储位");
@@ -436,8 +439,9 @@
                        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("该车间脏桶区暂无空余储位");
@@ -508,6 +512,33 @@
            {
                //回滚事务
                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);
            }
        }
@@ -943,8 +974,6 @@
            bool result = false;
            #region 呼叫小车代码
            List<AgvSchedulingTask> agvTaskList = new List<AgvSchedulingTask>();
            List<PositionCodePath> pahtList = new List<PositionCodePath>();
            //起始位置
            PositionCodePath path1 = new PositionCodePath();
@@ -977,7 +1006,7 @@
            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;//小车路径
@@ -991,14 +1020,9 @@
            {
                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);
Wms/WMS.BLL/DataServer/StockDetailServer.cs
@@ -38,146 +38,47 @@
        /// <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;
        }
Wms/WMS.IBLL/IDataServer/IStockDetailServer.cs
@@ -23,7 +23,7 @@
        /// <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>
        /// 导出托盘明细
Wms/Wms/Controllers/StatisticalController.cs
@@ -98,11 +98,11 @@
        /// <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)