settlementEval.html 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273
  1. <!DOCTYPE html>
  2. <html>
  3. <head lang='zh'>
  4. <meta charset='utf-8'>
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge" />
  6. <meta name="renderer" content="webkit" />
  7. <meta name="viewport" content="width=device-width, initial-scale=1,user-scalable=0" />
  8. <title>Luckysheet</title>
  9. <link rel='stylesheet' href='/static/js/luckysheet/plugins/css/pluginsCss.css' />
  10. <link rel='stylesheet' href='/static/js/luckysheet/plugins/plugins.css' />
  11. <link rel='stylesheet' href='/static/js/luckysheet/css/luckysheet.css' />
  12. <link rel='stylesheet' href='/static/js/luckysheet/assets/iconfont/iconfont.css' />
  13. <link charset="utf-8" rel="stylesheet" href="/static/css/layui.css?v=1.0.0">
  14. <script>
  15. var _PageHeight = document.documentElement.clientHeight,
  16. _PageWidth = document.documentElement.clientWidth;
  17. var _LoadingTop = _PageHeight > 61 ? (_PageHeight - 61) / 2 : 0,
  18. _LoadingLeft = _PageWidth > 215 ? (_PageWidth - 215) / 2 : 0;
  19. var _LoadingHtml = '<div id="loadingDiv" style="position:absolute;left:0;width:100%;height:' + _PageHeight + 'px;top:0;background:#f3f8ff;opacity:1;filter:alpha(opacity=80);z-index:10000;"><div style="position: absolute; cursor1: wait; left: ' + _LoadingLeft + 'px; top:' + _LoadingTop + 'px; width: auto; height: 57px; line-height: 57px; padding-left: 50px; padding-right: 5px; color: #696969; font-family:\'Microsoft YaHei\';"><img style="width:200px;height:200px" src="../images/loading.gif"></div></div>';
  20. document.write(_LoadingHtml);
  21. document.onreadystatechange = completeLoading;
  22. function completeLoading() {
  23. if (document.readyState == "complete") {
  24. var loadingMask = document.getElementById('loadingDiv');
  25. loadingMask.parentNode.removeChild(loadingMask);
  26. }
  27. }
  28. </script>
  29. <script src="/static/js/exportExcel.js"></script>
  30. <script src="/static/js/layui.js?v=1.0.0"></script>
  31. <script src="/static/js/exceljs.js"></script>
  32. <script src="/static/js/fileSave.js"></script>
  33. <script src="/static/js/luckysheet/luckSheetExcel.js"></script>
  34. <script src="/static/js/luckysheet/plugins/js/plugin.js"></script>
  35. <script src="/static/js/luckysheet/luckysheet.umd.js"></script>
  36. <script src="/static/js/api.config.js"></script>
  37. <script src="/static/js/util.js?v=1.0.0"></script>
  38. <script src="/static/js/url.js?v=1.0.0"></script>
  39. <script src="/static/js/fullScreen.js"></script>
  40. </head>
  41. <style>
  42. * {
  43. padding: 0;
  44. margin: 0;
  45. }
  46. html,
  47. body {
  48. height: 100%;
  49. }
  50. .excel-style .layui-form-label {
  51. text-align: left !important;
  52. padding-left: 0 !important;
  53. }
  54. .excel-style .layui-inline {
  55. margin: 1% 0;
  56. height: 5%;
  57. }
  58. #noExcel {
  59. width: 100%;
  60. height: 90%;
  61. display: none;
  62. justify-content: center;
  63. align-items: center;
  64. }
  65. #monthSelect{
  66. margin-left: 20px;
  67. }
  68. #saveRemark{
  69. }
  70. </style>
  71. <body>
  72. <div style="height:97%;width: 100%;" class="excel-style">
  73. <div class="layui-inline" id="monthSelect">
  74. <label class="layui-form-label">年统计</label>
  75. <div class="layui-input-inline">
  76. <input type="text" class="layui-input" id="year" placeholder="请选择年份">
  77. </div>
  78. </div>
  79. <div class="layui-inline" id="monthSelect">
  80. <label class="layui-form-label">月统计</label>
  81. <div class="layui-input-inline">
  82. <input type="text" class="layui-input" id="month" placeholder="请选择月份">
  83. </div>
  84. </div>
  85. <div class="layui-inline" id="monthSelect">
  86. <label class="layui-form-label">保存说明</label>
  87. <div class="layui-input-inline">
  88. <input type="text" class="layui-input" id="remark" placeholder="保存说明" style="width: 300px;">
  89. </div>
  90. <button id="saveRemark" class="btn btn-primary" style="padding:3px 6px;font-size: 12px;margin-left: 10px;">保存</button>
  91. </div>
  92. <div id="luckysheet" style="width:100%;height:93%;display: none;">
  93. </div>
  94. <div id="noExcel">无部门预算信息</div>
  95. </div>
  96. <script>
  97. //监听window是否全屏,并进行相应的操作,支持esc键退出
  98. window.onresize = function () {
  99. var isFull = !!(document.webkitIsFullScreen || document.mozFullScreen ||
  100. document.msFullscreenElement || document.fullscreenElement
  101. );//!document.webkitIsFullScreen都为true。因此用!!
  102. if (isFull == false) {
  103. $("#exitFullScreen").css("display", "none");
  104. $("#fullScreen").css("display", "");
  105. } else {
  106. $("#exitFullScreen").css("display", "");
  107. $("#fullScreen").css("display", "none");
  108. }
  109. }
  110. </script>
  111. <script>
  112. var date = new Date();
  113. var lockFlag; // 回复状态
  114. var excelData; // excel数据源
  115. var flag = false // 是否可编辑状态
  116. var id; // 任务id
  117. var userId; // 用户ID
  118. var nowDate = date.getFullYear(); // 当前时间
  119. $(function () {
  120. userId = JSON.parse(window.top.sessionStorage.userInfo).loginNo
  121. getData(nowDate)
  122. })
  123. layui.use(['laydate', 'form'], function () {
  124. var laydate = layui.laydate;
  125. var form = layui.form;
  126. var htmlStr = ''
  127. laydate.render({
  128. elem: '#month',
  129. value: '',
  130. type: 'month',
  131. done: function (value, date, endDate) {
  132. getData(value,1)
  133. }
  134. });
  135. laydate.render({
  136. elem: '#year',
  137. value: nowDate,
  138. type: 'year',
  139. done: function (value, date, endDate) {
  140. getData(value,2)
  141. }
  142. });
  143. })
  144. function getData(data,n) {
  145. window.luckysheet.destroy();
  146. var params = {};
  147. var url = '';
  148. if(n == 1){
  149. url = '/market/cStoreOutCheck/queryListByMonth';
  150. params = {
  151. "fillTime": data,
  152. };
  153. }else{
  154. url = '/market/cStoreOutCheck/queryListByYear';
  155. params = {
  156. "fillYear": data,
  157. };
  158. }
  159. util.ajaxJson("数据加载中", ctx + url, params, function (res) {
  160. if (res.result == 0) {
  161. excelData = res.body
  162. id = res.body.taskId
  163. lockFlag = res.body.isRec
  164. $('#luckysheet').show()
  165. $('#noExcel').hide()
  166. initExcel(res.body)
  167. } else {
  168. $('#noExcel').css({ display: 'flex' })
  169. $('#luckysheet').hide()
  170. window.top.$vm.$message({
  171. message: res.desc,
  172. type: 'info'
  173. })
  174. }
  175. });
  176. }
  177. function initExcel(data) {
  178. try {
  179. luckysheet.create({
  180. container: 'luckysheet',
  181. data: data,
  182. showsheetbar: false, // 底部sheet显示/隐藏
  183. showstatisticBar: false, // 底部计数
  184. showinfobar: true, // 是否显示顶部信息栏
  185. allowUpdate: false,
  186. showtoolbar: lockFlag == '1' ? false : true, //是否显示工具栏
  187. allowEdit: flag, // 是否允许前台编辑
  188. forceCalculation: true, // 强制刷新公式
  189. column: 12,
  190. title: data[0].fileName,
  191. row: 10,
  192. lang: 'zh',
  193. showstatisticBarConfig: {
  194. count: false, // 计数栏
  195. view: false, // 打印视图
  196. zoom: false, // 缩放
  197. },
  198. functionButton: '<button id="exports" class="btn btn-primary" style="padding:3px 6px;font-size: 12px;margin-right: 10px;">导出</button><button id="fullScreen" class="btn btn-primary" style="padding:3px 6px;font-size: 12px;margin-right: 10px;">全屏显示</button><button id="exitFullScreen" class="btn btn-primary" style="padding:3px 6px;font-size: 12px;margin-right: 10px;display:none">退出全屏</button>',
  199. cellRightClickConfig: {
  200. copy: true, // 复制
  201. copyAs: false, // 复制为
  202. paste: true, // 粘贴
  203. insertRow: true, // 插入行
  204. insertColumn: true, // 插入列
  205. deleteRow: true, // 删除选中行
  206. deleteColumn: true, // 删除选中列
  207. deleteCell: false, // 删除单元格
  208. hideRow: false, // 隐藏选中行和显示选中行
  209. hideColumn: true, // 隐藏选中列和显示选中列
  210. rowHeight: false, // 行高
  211. columnWidth: false, // 列宽
  212. clear: false, // 清除内容
  213. matrix: false, // 矩阵操作选区
  214. sort: false, // 排序选区
  215. filter: false, // 筛选选区
  216. chart: false, // 图表生成
  217. image: false, // 插入图片
  218. link: false, // 插入链接
  219. data: false, // 数据验证
  220. cellFormat: false, // 设置单元格格式
  221. mComplete: false,
  222. mCetup: false,
  223. mRevoke: false
  224. },
  225. hook: {
  226. cellMousedown: function (a, b, c) {
  227. if (lockFlag == '1') {
  228. // window.top.$vm.$message({
  229. // message: '只能查看',
  230. // type: 'info'
  231. // })
  232. }
  233. },
  234. },
  235. })
  236. } catch (err) {
  237. console.log(err)
  238. }
  239. initHandel()
  240. }
  241. function initHandel() {
  242. $("#fullScreen").on("click", function () {
  243. fullScreen();
  244. })
  245. //退出全屏
  246. $("#exitFullScreen").on("click", function () {
  247. exitFullscreen();
  248. })
  249. $('#goBack').off("click").click(function () {
  250. window.top.$vm.$router.push('/leader')
  251. })
  252. $('#exports').click(function () {
  253. exportExcel(luckysheet.getluckysheetfile(), luckysheet.getWorkbookName())
  254. })
  255. $('#saveRemark').click(function () {
  256. let s = document.getElementById('remark').value
  257. util.ajaxJson("数据加载中", ctx + '/market/cStoreOutCheck/saveCheckRemark', {remark:s}, function (res) {
  258. });
  259. })
  260. }
  261. </script>
  262. </body>
  263. </html>