| | |
| | | <!DOCTYPE html> |
| | | <html> |
| | | <head> |
| | | <meta charset="utf-8"> |
| | | <title>年度报表</title> |
| | | <meta name="renderer" content="webkit"> |
| | | <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> |
| | | <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0"> |
| | | <link rel="stylesheet" href="../../layuiadmin/layui/css/layui.css" media="all"> |
| | | <link rel="stylesheet" href="../../layuiadmin/style/admin.css" media="all"> |
| | | <link rel="stylesheet" href="../../css/public.css" media="all"> |
| | | <style type="text/css"> |
| | | .layui-form-item .layui-inline { |
| | | margin-bottom: 1px; |
| | | margin-right: 1px; |
| | | } |
| | | |
| | | </style> |
| | | <script> |
| | | // 这里是需要在页面渲染之前执行的代码 |
| | | document.addEventListener("DOMContentLoaded", function() { |
| | | //获取table默认显示数 |
| | | pageCntFirst(); |
| | | //判断是否开启table列表列宽调整功能。 |
| | | GetIsSetColW(); |
| | | }); |
| | | </script> |
| | | |
| | | </head> |
| | | <body id="body"> |
| | | <div class="layui-fluid" style="padding-bottom: 0;"> |
| | | <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"> |
| | | <label class="layui-form-label">开始日期</label> |
| | | <div class="layui-input-inline"> |
| | | <input type="text" autocomplete="off" name="StartTime" id="StartTime" class="layui-input" |
| | | placeholder="开始日期"> |
| | | </div> |
| | | </div> |
| | | <!-- <div class="layui-inline"> |
| | | <label class="layui-form-label">结束日期</label> |
| | | <div class="layui-input-inline"> |
| | | <input type="text" autocomplete="off" name="EndTime" id="EndTime" class="layui-input" |
| | | placeholder="结束日期"> |
| | | </div> |
| | | </div> --> |
| | | <div class="layui-inline sousuo"> |
| | | <button class="layui-btn layui-btn-sm layuiadmin-btn-list" lay-submit lay-filter="LAY-app-contlist-search"> |
| | | <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>搜索 |
| | | </button> |
| | | <button class="layui-btn layui-btn-sm layuiadmin-btn-list" lay-submit |
| | | lay-filter="daochu"> |
| | | <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>导出 |
| | | </button> |
| | | </div> |
| | | |
| | | |
| | | </div> |
| | | </div> |
| | | |
| | | <div id="center"></div> |
| | | <div class="layui-card-body"> |
| | | <div style="position: relative;"> |
| | | <div class="layui-tab layui-tab-brief" lay-filter="docDemoTabBrief"> |
| | | <div id="center"> |
| | | </div> |
| | | |
| | | <div class="layui-tab-content"> |
| | | <!-- 单据总表 --> |
| | | <div class="position-relative"><!-- class="position-relative" --><!-- 自定义表头加上 --> |
| | | <table id="LAY-app-content-list" lay-filter="LAY-app-content-list"></table> |
| | | |
| | | <!-- #region 自定义表头 --> |
| | | <div class="headerSetIcon"> |
| | | <button class="layui-btn layui-btn-primary layui-btn-sm" data-type="customCols"> |
| | | <i class="layui-icon"></i> |
| | | </button> |
| | | </div> |
| | | <!-- #endregion --> |
| | | |
| | | <script type="text/html" id="SituationButton"> |
| | | {{# if(d.IsQualified=='0'){ }} |
| | | <p>满足</p> |
| | | {{# } else if(d.IsQualified=='1'){ }} |
| | | <p>不满足</p> |
| | | {{# } }} |
| | | </script> |
| | | <script type="text/html" id="CreateTimeButton"> |
| | | {{# console.log(d.CreateTime); |
| | | return formatDate(d.CreateTime); |
| | | }} |
| | | </script> |
| | | <script type="text/html" id="UpdateTimeButton"> |
| | | {{# console.log(d.CreateTime); |
| | | return formatDate(d.CreateTime); |
| | | }} |
| | | </script> |
| | | |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | </div> |
| | | |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | <script src="../../layuiadmin/layui/layui.js"></script> |
| | | <script src="../../js/public.js"></script> |
| | | <script src="../../js/jquery-3.5.1.min.js"></script> |
| | | <script src="../../js/jquery.cookie.js"></script> |
| | | <script> |
| | | var uid = $.cookie('userId'); |
| | | layui.config({ |
| | | base: '../../layuiadmin/' //静态资源所在路径 |
| | | }).extend({ |
| | | index: 'lib/index' //主入口模块 |
| | | }).use(['index', 'table', 'laypage', 'layer','element','laydate'], function() { |
| | | var table = layui.table, |
| | | form = layui.form, |
| | | laypage = layui.laypage, |
| | | layer = layui.layer; |
| | | element = layui.element; |
| | | laydate = layui.laydate; |
| | | |
| | | |
| | | laydate.render({ |
| | | elem: '#StartTime', |
| | | format: 'yyyy-MM-dd' //可任意组合 |
| | | }); |
| | | laydate.render({ |
| | | elem: '#EndTime', |
| | | format: 'yyyy-MM-dd' //可任意组合 |
| | | }); |
| | | //获取当前时间 |
| | | function getNowTime() { |
| | | var date = new Date(); |
| | | //年 getFullYear():四位数字返回年份 |
| | | var year = date.getFullYear(); //getFullYear()代替getYear() |
| | | //月 getMonth():0 ~ 11 |
| | | var month = date.getMonth() + 1; |
| | | //日 getDate():(1 ~ 31) |
| | | var day = date.getDate(); |
| | | //时 getHours():(0 ~ 23) |
| | | var hour = date.getHours(); |
| | | //分 getMinutes(): (0 ~ 59) |
| | | var minute = date.getMinutes(); |
| | | //秒 getSeconds():(0 ~ 59) |
| | | var second = date.getSeconds(); |
| | | |
| | | var time = year + addZero(month) + addZero(day) + addZero(hour) + addZero(minute) + addZero(second); |
| | | return time; |
| | | |
| | | //小于10的拼接上0字符串 |
| | | |
| | | }; |
| | | function addZero(s) { |
| | | return s < 10 ? ('0' + s) : s; |
| | | }; |
| | | |
| | | // 表单需要的变量 |
| | | var infoOptions; |
| | | |
| | | var myDate = new Date(); |
| | | // console.log(myDate.getFullYear()+'-'+(myDate.getMonth() + 1)+'-'+myDate.getDate()+' 00:00:00') |
| | | myDate.getFullYear(); //获取完整的年份(4位,1970-????) |
| | | myDate.getMonth(); //获取当前月份(0-11,0代表1月) |
| | | myDate.getDate(); //获取当前日(1-31) |
| | | // 每日初始时间 |
| | | var chudate = myDate.getFullYear()+'-'+(myDate.getMonth() + 1)+'-'+myDate.getDate()+' 00:00:00' |
| | | var jiedate = myDate.getFullYear()+'-'+(myDate.getMonth() + 1)+'-'+myDate.getDate()+' 23:59:59' |
| | | var $ = layui.$; |
| | | |
| | | |
| | | var h1 = GetTableHeight(); |
| | | refreshTable("",); |
| | | //获取出入库总量 |
| | | function refreshTable(StartTime,EndTime) { |
| | | //#region 自定义表头 |
| | | var colsJson |
| | | var param1={ |
| | | Href:'Statistical/GetDataStockInfo' |
| | | }; |
| | | sendData(IP + "/Sys/GetTableColsByUserId", param1, 'post', function(res) { |
| | | if (res.code == 0){ |
| | | if(res.data=='' || res.data==undefined || res.data==null){ |
| | | colsJson=TotalColsArr |
| | | }else{ |
| | | colsJson= eval(res.data); |
| | | } |
| | | }else{ |
| | | colsJson=TotalColsArr |
| | | } |
| | | console.log('h1:',h1) |
| | | infoOptions = { |
| | | elem: '#LAY-app-content-list', |
| | | height: h1, |
| | | id: 'LAY-app-content-list', |
| | | page: true, |
| | | limit: pageCnt, |
| | | limits: pageLimits, |
| | | even: true, |
| | | cellMinWidth: 80, //全局定义常规单元格的最小宽度,layui 2.2.1 新增 |
| | | done: function(){ |
| | | //自定义列宽 |
| | | SetTableColW('LAY-app-content-list','Statistical/GetDataStockInfo',TotalColsSysArr); |
| | | }, |
| | | cols:colsJson |
| | | }; |
| | | |
| | | var param = { |
| | | StartTime:$("#StartTime").val(), |
| | | }; |
| | | sendData(IP + "/Statistical/GetDataStockInfo", param, 'get', function(res) { |
| | | //console.log(res) |
| | | if (res.code == 0) { //成功 |
| | | var list = res.data; |
| | | $.extend(infoOptions, { |
| | | data: list |
| | | }); |
| | | infoOptions.page = { |
| | | curr: 1 |
| | | } |
| | | tableIns = table.render(infoOptions); |
| | | } |
| | | else { //不成功 |
| | | layer.msg('获取库存信息失败', { |
| | | icon: 2, |
| | | time: 2000 //2秒关闭(如果不配置,默认是3秒) |
| | | }, function() {}); |
| | | } |
| | | }); |
| | | }); |
| | | //#endregion |
| | | |
| | | } |
| | | //#region 自定义表头 |
| | | var TotalColsArr = [[ |
| | | {field: '',title: '序号',type:'numbers',align: 'center',fixed: 'left', "disabled": true}, |
| | | {field: 'SkuNo', title: '物料编码', align: 'center'}, |
| | | {field: 'SkuName', title: '物料名称', align: 'center',}, |
| | | {field: 'Standard', title: '规格', align: 'center',}, |
| | | {field: 'Unit', title: '单位', align: 'center'}, |
| | | {field: 'LastMonthQty', title: '上月结存数量', align: 'center'}, |
| | | {field: 'LastMonthFoldedQty', title: '上月结存折件', align: 'center'}, |
| | | {field: 'ArrDayQty', title: '入库日数量', align: 'center'}, |
| | | {field: 'ArrDayFoldedQty', title: '入库日折件', align: 'center'}, |
| | | {field: 'ArrMonthQty', title: '入库月数量', align: 'center'}, |
| | | {field: 'ArrMonthFoldedQty', title: '入库月折件', align: 'center'}, |
| | | {field: 'ArrYearQty', title: '入库年数量', align: 'center'}, |
| | | {field: 'ArrYearFoldedQty', title: '入库年折件', align: 'center'}, |
| | | {field: 'SoDayQty', title: '出库日数量', align: 'center'}, |
| | | {field: 'SoDayFoldedQty', title: '出库日折件', align: 'center'}, |
| | | {field: 'SoMonthQty', title: '出库月数量', align: 'center'}, |
| | | {field: 'SoMonthFoldedQty', title: '出库月折件', align: 'center'}, |
| | | {field: 'SoYearQty', title: '出库年数量', align: 'center'}, |
| | | {field: 'SoYearFoldedQty', title: '出库年折件', align: 'center'}, |
| | | {field: 'MonthQty', title: '当月结存数量', align: 'center'}, |
| | | {field: 'MonthFoldedQty', title: '当月结存折件', align: 'center'}, |
| | | {field: 'DepositQty', title: '寄存数量', align: 'center'}, |
| | | {field: 'Qty', title: '本月库存数量', align: 'center'}, |
| | | {field: 'SecurityQty', title: '安全库存', align: 'center'}, |
| | | {field: 'Situation', title: '安全库存情况', align: 'center' , templet: '#SituationButton',}, |
| | | {field: 'CreateTime', title: '创建日期', align: 'center' , templet: '#CreateTimeButton',}, |
| | | {field: 'UpdateTime', title: '更新日期', align: 'center', templet: '#UpdateTimeButton',}, |
| | | ]]; |
| | | var TotalColsSysArr=encodeURIComponent(encodeURIComponent(JSON.stringify(TotalColsArr)))//将表头数据进行url编码 |
| | | //#endregion |
| | | |
| | | |
| | | //监听搜索 |
| | | form.on('submit(LAY-app-contlist-search)', function(data) { |
| | | |
| | | var StartTime = $("#StartTime").val(); |
| | | refreshTable(StartTime); |
| | | |
| | | }); |
| | | |
| | | form.on('submit(daochu)', function () { |
| | | layer.confirm('确定导出当前数据吗?', function(index) { |
| | | var param = { |
| | | StartTime:$("#StartTime").val(), |
| | | }; |
| | | sendData(IP + "/Statistical/GetDataStockInfo", param, 'get', function (res) { |
| | | //console.log(res); |
| | | if (res.code == 0) { //成功 |
| | | var list = res.data; |
| | | list.forEach(item => { |
| | | if (item.SkuName.split(',')) |
| | | { |
| | | item.SkuName = '"'+item.SkuName+'"' |
| | | } |
| | | |
| | | }); |
| | | table.exportFile(tableIns.config.id, list,'xls',"库存信息"+getNowTime(),); //data 为该实例中的任意数量的数据 |
| | | layer.msg('导出成功!', { |
| | | icon: 1, |
| | | time: 2000 //2秒关闭(如果不配置,默认是3秒) |
| | | }, function () { |
| | | |
| | | }); |
| | | |
| | | } else { //不成功 |
| | | layer.msg('获取信息失败!', { |
| | | icon: 2, |
| | | time: 2000 //2秒关闭(如果不配置,默认是3秒) |
| | | }, function () { }); |
| | | } |
| | | }); |
| | | }); |
| | | }); |
| | | |
| | | //#region 自定义表头 |
| | | //自定义表头 |
| | | active = { |
| | | customCols: function(){ |
| | | layer.open({ |
| | | type: 2, |
| | | title: '自定义列', |
| | | content: '../SystemSettings/HeaderSetting.html?Href=Statistical/GetDataStockInfo&ColsSysArr='+TotalColsSysArr, |
| | | maxmin: false, |
| | | resize: false, |
| | | area: ['970px', '650px'] |
| | | }); |
| | | }, |
| | | }; |
| | | $('.layui-btn').on('click', function() { |
| | | var type = $(this).data('type'); |
| | | active[type] ? active[type].call(this) : ''; |
| | | }); |
| | | //#endregion |
| | | |
| | | |
| | | }); |
| | | </script> |
| | | </body> |
| | | </html> |