| | |
| | | <input type="text" autocomplete="off" id="EndTime" class="layui-input" placeholder="结束时间"> |
| | | </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 sousuo"> |
| | | <button class="layui-btn layui-btn-sm layuiadmin-btn-list" lay-submit |
| | |
| | | //#region 自定义表头 |
| | | var TotalColsArr = [[ |
| | | { field: '', title: '序号', type: 'numbers', align: 'center', fixed: 'left', "disabled": true }, |
| | | { field: 'WareHouseName', title: '所属仓库', align: 'center' , width: 120,}, |
| | | { field: 'WareHouseName', title: '所属仓库', align: 'center', width: 120, }, |
| | | { field: 'RoadwayName', title: '所属巷道', align: 'center', width: 120, }, |
| | | { field: 'AreaName', title: '所属区域', align: 'center', width: 120, }, |
| | | { field: 'LocatNo', title: '储位地址', align: 'center', width: 100, }, |
| | | { field: 'PalletNo', title: '托盘号', align: 'center' , width: 100,}, |
| | | { field: 'SkuNo', title: '物料编码', align: 'center' , width: 120,}, |
| | | { field: 'SkuName', title: '物料名称', align: 'center', width: 120,}, |
| | | { field: 'LotNo', title: '批次号', align: 'center' , width: 100,}, |
| | | { field: 'PalletNo', title: '托盘号', align: 'center', width: 100, }, |
| | | { field: 'SkuNo', title: '物料编码', align: 'center', width: 120, }, |
| | | { field: 'SkuName', title: '物料名称', align: 'center', width: 120, }, |
| | | { field: 'LotNo', title: '批次号', align: 'center', width: 100, }, |
| | | //{ field: 'LotText', title: '批次描述', align: 'center' }, |
| | | { field: 'SupplierLot', title: '供货批次', align: 'center' , width: 120,}, |
| | | { field: 'Qty', title: '数量', align: 'center' ,width: 90,}, |
| | | { field: 'LockQty', title: '锁定数量', align: 'center',width: 90, }, |
| | | { field: 'FrozenQty', title: '冻结数量', align: 'center',width: 90, }, |
| | | |
| | | { field: 'SupplierLot', title: '供货批次', align: 'center', width: 120, }, |
| | | { field: 'Qty', title: '数量', align: 'center', width: 90, }, |
| | | { field: 'LockQty', title: '锁定数量', align: 'center', width: 90, }, |
| | | { field: 'FrozenQty', title: '冻结数量', align: 'center', width: 90, }, |
| | | |
| | | { field: 'Status', title: '库存状态', align: 'center', templet: '#buttonTpl', width: 90, }, |
| | | { field: 'InspectStatus', templet: '#InspectStatus1', title: '质检状态', align: 'center' ,width: 100,}, |
| | | { field: 'InspectMark', title: '抽检标记', align: 'center', templet: '#InspectMarkStatus' ,width: 100,}, |
| | | { field: 'BitPalletMark', title: '零托标记', align: 'center', templet: '#BitPalletMarkStatus',width: 100,}, |
| | | |
| | | { field: 'InspectStatus', templet: '#InspectStatus1', title: '质检状态', align: 'center', width: 100, }, |
| | | { field: 'InspectMark', title: '抽检标记', align: 'center', templet: '#InspectMarkStatus', width: 100, }, |
| | | { field: 'BitPalletMark', title: '零托标记', align: 'center', templet: '#BitPalletMarkStatus', width: 100, }, |
| | | |
| | | { field: 'ProductionTime', title: '生产日期', align: 'center', templet: '#templetProductionTime' }, |
| | | { field: 'OwnerNo', title: '货主编码', align: 'center' , width: 100,}, |
| | | { field: 'OwnerName', title: '货主名称', align: 'center' , width: 100,}, |
| | | { field: 'SupplierNo', title: '供应商编码', align: 'center' , width: 100,}, |
| | | { field: 'SupplierName', title: '供应商名称', align: 'center' , width: 100,}, |
| | | |
| | | |
| | | { field: 'OwnerNo', title: '货主编码', align: 'center', width: 100, }, |
| | | { field: 'OwnerName', title: '货主名称', align: 'center', width: 100, }, |
| | | { field: 'SupplierNo', title: '供应商编码', align: 'center', width: 100, }, |
| | | { field: 'SupplierName', title: '供应商名称', align: 'center', width: 100, }, |
| | | |
| | | |
| | | ]]; |
| | | 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) { |
| | | BitBoxMark, InspectStatus, OwnerNo, OwnerName, StartTime, EndTime, WareHouseNo, AreaNo) { |
| | | //#region 自定义表头 |
| | | var colsJson |
| | | var param1 = { |
| | |
| | | OwnerName: OwnerName, //货主名称 |
| | | StartTime: StartTime, //开始时间 |
| | | EndTime: EndTime, //结束时间 |
| | | WareHouseNo: WareHouseNo, |
| | | AreaNo: AreaNo, |
| | | }; |
| | | sendData(IP + "/Statistical/GetBindList", param, 'get', function (res) { |
| | | console.log(res) |
| | |
| | | ]]; |
| | | var DetailColsSysArr = encodeURIComponent(encodeURIComponent(JSON.stringify(DetailColsArr)))//将表头数据进行url编码 |
| | | //#endregion |
| | | function refreshTable2(Id, SkuNo, SkuName, LotNo, PalletNo, BoxNo, Status, InspectMark, BitBoxMark, InspectStatus, StartTime, EndTime) { |
| | | function refreshTable2(Id, SkuNo, SkuName, LotNo, PalletNo, BoxNo, Status, InspectMark, BitBoxMark, InspectStatus, |
| | | StartTime, EndTime, WareHouseNo, AreaNo) { |
| | | //#region 自定义表头 |
| | | var colsJson2 |
| | | var param1 = { |
| | |
| | | InspectStatu: InspectStatus, |
| | | StartTime: StartTime, |
| | | EndTime: EndTime, |
| | | WareHouseNo: WareHouseNo, |
| | | AreaNo: AreaNo, |
| | | } |
| | | sendData(IP + "/Statistical/GetBoxInfo", param, 'get', function (res) { |
| | | if (res.code == 0) //成功 |
| | |
| | | |
| | | var StartTime = $("#StartTime").val(); |
| | | var EndTime = $("#EndTime").val(); |
| | | var WareHouseNo = $("#WareHouseNo").val(); |
| | | var AreaNo = $("#AreaNo").val(); |
| | | |
| | | if (yemianid == 0) { |
| | | console.log("总单"); |
| | | refreshTable(SkuNo, SkuName, PalletNo, LotNo, BoxNo, Status, InspectMark, BitPalletMark, BitBoxMark, InspectStatus, OwnerNo, OwnerName, StartTime, EndTime); |
| | | refreshTable(SkuNo, SkuName, PalletNo, LotNo, BoxNo, Status, InspectMark, BitPalletMark, BitBoxMark, |
| | | InspectStatus, OwnerNo, OwnerName, StartTime, EndTime, WareHouseNo, AreaNo); |
| | | } else if (yemianid == 1) { |
| | | quanid = ''; |
| | | console.log("明细"); |
| | | refreshTable2(quanid, SkuNo, SkuName, LotNo, PalletNo, BoxNo, Status, InspectMark, BitBoxMark, InspectStatus, StartTime, EndTime); |
| | | refreshTable2(quanid, SkuNo, SkuName, LotNo, PalletNo, BoxNo, Status, InspectMark, BitBoxMark, |
| | | InspectStatus, StartTime, EndTime, WareHouseNo, AreaNo); |
| | | } |
| | | |
| | | }); |
| | |
| | | |
| | | }); |
| | | |
| | | |
| | | //获取仓库下拉框信息 |
| | | 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) { |
| | | console.log(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'); |
| | | }); |
| | | } |
| | | }); |
| | | |
| | | }; |
| | | |
| | | //#region 自定义表头 |
| | | //自定义表头 |
| | | active = { |
| | |
| | | /// <param name="inspectStatus">质量状态</param> |
| | | /// <returns></returns> |
| | | public List<DataBoxInfo> GetDataBoxInfo(string id, string skuNo, string skuName, string palletNo, string lotNo, |
| | | string boxNo, string status, string inspectMark, string bitBoxMark, string inspectStatus) |
| | | string boxNo, string status, string inspectMark, string bitBoxMark, string inspectStatus, string WareHouseNo, string AreaNo) |
| | | { |
| | | string str = "select PalletNo,PalletNo2,PalletNo3,BoxNo,BoxNo2,BoxNo3,Status,LotNo,Qty,FullQty,SkuNo,SkuName," + |
| | | "LotText,ProductionTime,ExpirationTime,InspectMark,BitBoxMark,InspectStatus,InspectTime from DataBoxInfo Where IsDel = @isdel"; |
| | |
| | | /// <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) |
| | | string inspectMark, string bitPalletMark, string bitBoxMark, string inspectStatus, string ownerNo, string ownerName, |
| | | string startTime, string endTime, string WareHouseNo, string AreaNo) |
| | | { |
| | | string str = "select detail.*,house.WareHouseNo + '-' + house.WareHouseName as WareHouseName,roadway.RoadwayNo + '-' + roadway.RoadwayName as RoadwayName," + |
| | | "area.AreaNo + '-' + area.AreaName as AreaName " + |
| | |
| | | endTime = Convert.ToDateTime(endTime).AddDays(1).ToString(); |
| | | str += $" and detail.CompleteTime < '{endTime}'"; |
| | | } |
| | | if (!string.IsNullOrEmpty(WareHouseNo)) |
| | | { |
| | | str += $" and detail.WareHouseNo = '{WareHouseNo}'"; |
| | | } |
| | | if (!string.IsNullOrEmpty(WareHouseNo)) |
| | | { |
| | | str += $" and detail.WareHouseNo = '{WareHouseNo}'"; |
| | | } |
| | | if (!string.IsNullOrEmpty(AreaNo)) |
| | | { |
| | | str += $" and detail.AreaNo = '{AreaNo}'"; |
| | | } |
| | | |
| | | int i = 0; |
| | | //在箱码明细中获取相应数据 |
| | |
| | | /// <param name="bitBoxMark">零箱标记</param> |
| | | /// <param name="inspectStatus">质量状态</param> |
| | | /// <returns></returns> |
| | | List<DataBoxInfo> GetDataBoxInfo(string id, string skuNo, string skuName, string palletNo, string lotNo, string boxNo, string status, string inspectMark, string bitBoxMark, string inspectStatus); |
| | | List<DataBoxInfo> GetDataBoxInfo(string id, string skuNo, string skuName, string palletNo, string lotNo, string boxNo, string status, string inspectMark, string bitBoxMark, string inspectStatus, string WareHouseNo, string AreaNo); |
| | | |
| | | /// <summary> |
| | | /// 根据箱码获取箱支信息 |
| | |
| | | /// <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 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, |
| | | string WareHouseNo, string AreaNo); |
| | | |
| | | /// <summary> |
| | | /// 导出托盘明细 |
| | |
| | | /// <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) |
| | | string inspectMark, string bitPalletMark, string bitBoxMark, string inspectStatus, string ownerNo, string ownerName, |
| | | string startTime, string endTIme,string WareHouseNo,string AreaNo) |
| | | { |
| | | try |
| | | { |
| | | List<StockDetailDto> boxInfoList = _stockDetail.GetBindList(skuNo, skuName, palletNo, lotNo, boxNo, status, inspectMark, |
| | | bitPalletMark, bitBoxMark, inspectStatus, ownerNo, ownerName, startTime, endTIme); |
| | | bitPalletMark, bitBoxMark, inspectStatus, ownerNo, ownerName, startTime, endTIme, WareHouseNo, AreaNo); |
| | | return Ok(new { data = boxInfoList, code = 0, msg = "获取托盘明细成功" }); |
| | | } |
| | | catch (Exception e) |
| | |
| | | /// <returns></returns> |
| | | [HttpGet] |
| | | public IActionResult GetBoxInfo(string id, string skuNo, string skuName, string palletNo, string lotNo, |
| | | string boxNo, string status, string inspectMark, string bitBoxMark, string inspectStatus) |
| | | string boxNo, string status, string inspectMark, string bitBoxMark, string inspectStatus, string WareHouseNo, string AreaNo) |
| | | { |
| | | try |
| | | { |
| | | List<DataBoxInfo> boxInfo = _dataBoxInfo.GetDataBoxInfo(id, skuNo, skuName, palletNo, lotNo, boxNo, status, inspectMark, bitBoxMark, inspectStatus); |
| | | List<DataBoxInfo> boxInfo = _dataBoxInfo.GetDataBoxInfo(id, skuNo, skuName, palletNo, |
| | | lotNo, boxNo, status, inspectMark, bitBoxMark, inspectStatus, WareHouseNo, AreaNo); |
| | | return Ok(new { data = boxInfo, code = 0, msg = "获取箱码明细成功" }); |
| | | } |
| | | catch (Exception e) |