form-list.html 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545
  1. <!-- include 'fc-header' -->
  2. <!-- include 'fc-leftWrap' -->
  3. <div class="warp-content">
  4. <div class="container">
  5. <div class="page-header">
  6. <a href="<!-- if isset({{dingzhi}}) --><!-- if {{itemid}} != 0 -->{{rootUrl}}addreport/1/item/{{itemid}}<!-- else -->{{rootUrl}}addreport/1<!-- endif --><!-- else -->{{rootUrl}}addreport<!-- endif -->" class="btn btn-success pull-right">添加新报表</a>
  7. <h2><i class="glyphicon glyphicon-list"></i>&nbsp;报表库</h2>
  8. </div>
  9. <div class="page-nav clearfix">
  10. <ul class="nav nav-tabs">
  11. <li role="presentation" <!-- if !isset({{dingzhi}}) -->class="active"<!-- endif -->><a href="{{rootUrl}}reportlist">通用报表</a></li>
  12. <li role="presentation" <!-- if isset({{dingzhi}}) -->class="active"<!-- endif -->><a href="{{rootUrl}}reportlist/1">定制报表</a></li>
  13. </ul>
  14. </div>
  15. <input type="hidden" value="<!-- if isset({{dingzhi}}) -->{{dingzhi}}<!-- endif -->" id="listtype">
  16. <!-- if !isset({{dingzhi}}) -->
  17. <div class="page-nav clearfix">
  18. <div class="form-group">
  19. <div class="row">
  20. <div class="col-xs-2">
  21. <select class="form-control" id="areaselect2">
  22. <option value="0">筛选区域</option>
  23. <option value="3" <!-- if isset({{area}}) && {{area}} == 3 -->selected<!-- endif -->>通用</option>
  24. <option value="1" <!-- if isset({{area}}) && {{area}} == 1 -->selected<!-- endif -->>全国</option>
  25. <option value="2" <!-- if isset({{area}}) && {{area}} == 2 -->selected<!-- endif -->>广东</option>
  26. </select>
  27. </div>
  28. <div class="col-xs-3">
  29. <select class="form-control" id="cateselect2">
  30. <option value="0">筛选类别</option>
  31. <!-- if isset({{catelist}}) && !empty({{catelist}}) -->
  32. <!-- loop catelist -->
  33. <option value="{{catelist' value.cateid}}" <!-- if {{catelist' value.cateid}} == {{cateid}} -->selected<!-- endif -->>{{catelist' value.catename}}</option>
  34. <!-- endloop -->
  35. <!-- endif -->
  36. </select>
  37. </div>
  38. <div class="col-xs-2 col-md-offset-5">
  39. <select class="form-control" id="sort">
  40. <option value="time">按更新时间</option>
  41. <option value="report" <!-- if isset({{sort}}) && {{sort}} == 'report' -->selected<!-- endif -->>按报表名称</option>
  42. </select>
  43. </div>
  44. </div>
  45. </div>
  46. </div>
  47. <!--通用报表列表-->
  48. <table class="table table-hover">
  49. <thead>
  50. <tr>
  51. <th>区域</th>
  52. <th>类别</th>
  53. <th>报表名</th>
  54. <th>最新版本</th>
  55. <th>历史版本</th>
  56. <th>操作</th>
  57. </tr>
  58. </thead>
  59. <tbody>
  60. <!-- if isset({{reportlist}}) && !empty({{reportlist}}) -->
  61. <!-- loop reportlist -->
  62. <tr>
  63. <td><!-- if {{reportlist' value.areacate}} == 1 -->全国<!-- elseif {{reportlist' value.areacate}} == 2 -->广东<!-- else -->通用<!-- endif --></td>
  64. <td>{{reportlist' value.catename}}</td>
  65. <td>{{reportlist' value.reportname}}</td>
  66. <td>{{reportlist' value.edittime}}</td>
  67. <td><a href="{{rootUrl}}versionlist/{{reportlist' value.reportid}}">{{reportlist' value.versionnum}}</a></td>
  68. <td><a href="#edit-form" class="btn btn-xs" data-toggle="modal" onclick='editNormalreport("{{reportlist' value.reportid}}","{{reportlist' value.cateid}}","{{reportlist' value.parentid}}","{{reportlist' value.reportname}}","{{reportlist' value.areacate}}");'>编辑</a><a class="btn btn-xs text-danger" href="#delform" data-toggle="modal" onclick='delreport("{{reportlist' value.reportname}}","{{reportlist' value.reportid}}");'>删除</a></td>
  69. </tr>
  70. <!-- endloop -->
  71. <!-- endif -->
  72. </tbody>
  73. </table>
  74. <!--通用报表列表-->
  75. <!-- else -->
  76. <!--定制报表列表-->
  77. <div class="page-nav clearfix">
  78. <div class="form-group">
  79. <div class="row">
  80. <div class="col-xs-3">
  81. <select class="form-control" id="itemselect2">
  82. <option value="0">筛选项目</option>
  83. <!-- if isset({{itemlist}}) && !empty({{itemlist}}) -->
  84. <!-- loop itemlist -->
  85. <option value="{{itemlist' value.itemid}}" <!-- if {{itemlist' value.itemid}} == {{itemid}} -->selected<!-- endif -->>{{itemlist' value.itemname}}</option>
  86. <!-- endloop -->
  87. <!-- endif -->
  88. </select>
  89. </div>
  90. <div class="col-xs-2" data-toggle="tooltip" data-placement="left">
  91. <!-- if !empty({{itemid}}) --><a href="#sharekey" class="btn btn-link" data-toggle="modal"><i class="glyphicon glyphicon-link"></i> 领取码</a><!-- endif -->
  92. </div>
  93. <div class="col-xs-2 col-md-offset-5">
  94. <select class="form-control" id="sort">
  95. <option value="time">按更新时间</option>
  96. <option value="report" <!-- if isset({{sort}}) && {{sort}} == 'report' -->selected<!-- endif -->>按报表名称</option>
  97. </select>
  98. </div>
  99. </div>
  100. </div>
  101. </div>
  102. <table class="table table-hover">
  103. <thead>
  104. <tr>
  105. <th>项目</th>
  106. <th>类别</th>
  107. <th>报表名</th>
  108. <th>最新版本</th>
  109. <th>历史版本</th>
  110. <th>操作</th>
  111. </tr>
  112. </thead>
  113. <tbody>
  114. <!-- if isset({{reportlist}}) && !empty({{reportlist}}) -->
  115. <!-- loop reportlist -->
  116. <tr>
  117. <td>{{reportlist' value.itemname}}</td>
  118. <td>{{reportlist' value.catename}}</td>
  119. <td>{{reportlist' value.reportname}}</td>
  120. <td>{{reportlist' value.edittime}}</td>
  121. <td><a href="{{rootUrl}}versionlist/{{reportlist' value.reportid}}">{{reportlist' value.versionnum}}</a></td>
  122. <td><a href="#edit-form" class="btn btn-xs" data-toggle="modal" onclick='edititemreport("{{reportlist' value.reportname}}","{{reportlist' value.reportid}}","{{reportlist' value.itemid}}","{{reporlist' value.parentid}}","{{reportlist' value.cateid}}");'>编辑</a><a class="btn btn-xs text-danger" href="#delform" data-toggle="modal" onclick='delreport("{{reportlist' value.reportname}}","{{reportlist' value.reportid}}","{{reportlist' value.itemid}}");'>删除</a></td>
  123. </tr>
  124. <!-- endloop -->
  125. <!-- endif -->
  126. </tbody>
  127. </table>
  128. <!--定制报表列表-->
  129. <!-- endif -->
  130. <!--翻页-->
  131. <nav>
  132. <ul class="pagination">
  133. {{pager}}
  134. </ul>
  135. </nav>
  136. </div>
  137. </div>
  138. <!-- if isset({{dingzhi}}) && !empty({{itemid}}) -->
  139. <!--弹框-领取码-->
  140. <div class="modal fade " tabindex="-1" role="dialog" aria-hidden="true" id="sharekey">
  141. <div class="modal-dialog ">
  142. <div class="modal-content">
  143. <div class="modal-header">
  144. <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span><span class="sr-only">Close</span></button>
  145. <h4 class="modal-title" >定制报表领取码</h4>
  146. </div>
  147. <div class="modal-body">
  148. <p class="text-center">{{item.itemname}}</p>
  149. <h1 class="text-center"><span class="label label-default">{{item.code}}</span></h1>
  150. </div>
  151. <div class="modal-footer">
  152. </div>
  153. </div>
  154. </div>
  155. </div>
  156. <!--弹框-结束-->
  157. <!-- endif -->
  158. <!--弹框-删除报表-->
  159. <div class="modal fade " tabindex="-1" role="dialog" aria-hidden="true" id="delform">
  160. <div class="modal-dialog ">
  161. <div class="modal-content">
  162. <div class="modal-header">
  163. <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span><span class="sr-only">Close</span></button>
  164. <h4 class="modal-title" >删除报表</h4>
  165. </div>
  166. <div class="modal-body">
  167. <h3 class="text-center" id="deltext">是否删除 <b></b> ?</h3>
  168. <input id="delcate" value="<!-- if isset({{cateid}}) -->{{cateid}}<!-- endif -->" type="hidden">
  169. <input id="delitem" value="<!-- if isset({{itemid}}) -->{{itemid}}<!-- endif -->" type="hidden">
  170. <input id="delpindex" value="<!-- if isset({{pindex}}) -->{{pindex}}<!-- endif -->" type="hidden">
  171. <input id="delarea" value="<!-- if isset({{area}}) -->{{area}}<!-- endif -->" type="hidden">
  172. <input id="delsort" value="<!-- if isset({{sort}}) -->{{sort}}<!-- endif -->" type="hidden">
  173. </div>
  174. <div class="modal-footer">
  175. <a type="button" class="btn btn-danger" href="#" id="delbtn">确认删除</a>
  176. </div>
  177. </div>
  178. </div>
  179. </div>
  180. <!--弹框-结束-->
  181. <!--编辑报表-->
  182. <div class="modal fade " tabindex="-1" role="dialog" aria-hidden="true" id="edit-form">
  183. <div class="modal-dialog ">
  184. <div class="modal-content">
  185. <div class="modal-header">
  186. <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span><span class="sr-only">Close</span></button>
  187. <h4 class="modal-title" >编辑报表</h4>
  188. </div>
  189. <form method="post" action="/setreport" onsubmit="return judgeSubmit();">
  190. <div class="modal-body">
  191. <input type="hidden" name="reportid" value="" id="reportid">
  192. <!-- if isset({{pindex}}) --><input type="hidden" name="pindex" value="{{pindex}}"><!-- endif -->
  193. <!-- if isset({{cateid}}) --><input type="hidden" name="cateid" value="{{cateid}}"><!-- endif -->
  194. <!-- if isset({{itemid}}) --><input type="hidden" name="itemid" value="{{itemid}}"><!-- endif -->
  195. <!-- if isset({{area}}) --><input type="hidden" name="area" value="{{area}}"><!-- endif -->
  196. <!-- if isset({{sort}}) --><input type="hidden" name="sort" value="{{sort}}"><!-- endif -->
  197. <!-- if !isset({{dingzhi}}) -->
  198. <!--通用报表信息-->
  199. <div class="form-group">
  200. <label>区域</label>
  201. <div class="row">
  202. <div class="col-xs-4">
  203. <select class="form-control input-sm" name="areaselect" id="areaselect">
  204. <option value="3">通用</option>
  205. <option value="1">全国</option>
  206. <option value="2">广东</option>
  207. </select>
  208. </div>
  209. </div>
  210. </div>
  211. <div class="form-group ">
  212. <label>报表类别</label>
  213. <div class="row">
  214. <div class="col-xs-4">
  215. <select class="form-control input-sm" name="parentselect" id="parentselect">
  216. <option value="0">选择类别</option>
  217. <!-- if isset({{cateparentlist}}) && !empty({{cateparentlist}}) -->
  218. <!-- loop cateparentlist -->
  219. <option value="{{cateparentlist' value.cateid}}">{{cateparentlist' value.catename}}</option>
  220. <!-- endloop -->
  221. <!-- endif -->
  222. </select>
  223. </div>
  224. <div class="col-xs-4 hidden">
  225. <select class="form-control input-sm" name="cateselect" id="cateselect">
  226. </select>
  227. </div>
  228. <div class="col-xs-2"><a href="{{rootUrl}}catelist" class="btn btn-link" target="_blank">类别管理</a></div>
  229. </div>
  230. </div>
  231. <div class="form-group">
  232. <label>报表名</label>
  233. <div class="row">
  234. <div class="col-xs-6">
  235. <input type="text" class="form-control input-sm" placeholder="" name="reportname" id="reportname">
  236. </div>
  237. </div>
  238. </div>
  239. <!--通用报表信息-->
  240. <!-- else -->
  241. <!--定制报表信息-->
  242. <div class="form-group ">
  243. <label>所在项目</label>
  244. <div class="row">
  245. <div class="col-xs-6">
  246. <select class="form-control input-sm" name="itemselect" id="itemselect">
  247. <option value="0">选择项目</option>
  248. <!-- if isset({{itemlist}}) && !empty({{itemlist}}) -->
  249. <!-- loop itemlist -->
  250. <option value="{{itemlist' value.itemid}}">{{itemlist' value.itemname}}</option>
  251. <!-- endloop -->
  252. <!-- endif -->
  253. </select>
  254. </div>
  255. <div class="col-xs-3"><a href="{{rootUrl}}itemlist" class="btn btn-link" target="_blank">项目管理</a></div>
  256. </div>
  257. </div>
  258. <div class="form-group">
  259. <label>报表类别</label>
  260. <div class="row">
  261. <div class="col-xs-4">
  262. <select class="form-control input-sm" name="parentselect" id="parentselect">
  263. <option value="0">选择类别</option>
  264. <!-- if isset({{cateparentlist}}) && !empty({{cateparentlist}}) -->
  265. <!-- loop cateparentlist -->
  266. <option value="{{cateparentlist' value.cateid}}">{{cateparentlist' value.catename}}</option>
  267. <!-- endloop -->
  268. <!-- endif -->
  269. </select>
  270. </div>
  271. <div class="col-xs-4 hidden">
  272. <select class="form-control input-sm" name="cateselect" id="cateselect">
  273. </select>
  274. </div>
  275. <div class="col-xs-2"><a href="{{rootUrl}}catelist/1<!-- if !empty({{itemid}}) -->/item/{{itemid}}<!-- endif -->" class="btn btn-link" target="_blank" id="category">类别管理</a></div>
  276. </div>
  277. </div>
  278. <div class="form-group">
  279. <label>报表名</label>
  280. <div class="row">
  281. <div class="col-xs-6">
  282. <input type="text" class="form-control input-sm" placeholder="" name="reportname" id="reportname">
  283. </div>
  284. </div>
  285. </div>
  286. <!--定制报表信息-->
  287. <!-- endif -->
  288. </div>
  289. <div class="modal-footer">
  290. <button type="submit" class="btn btn-success">保存</button>
  291. </div>
  292. </form>
  293. </div>
  294. </div>
  295. </div>
  296. <!--编辑报表-->
  297. <script>
  298. function judgeSubmit(){
  299. if($('#itemselect').val() == '0'){
  300. alert('请选择项目');
  301. return false;
  302. }
  303. if($('#parentselect').val() == '0'){
  304. alert('请选择类别');
  305. return false;
  306. }
  307. if($('input[name="reportname"]').val() == ''){
  308. alert('请输入报表名');
  309. return false;
  310. }
  311. }
  312. function editNormalreport(id,catid,pid,name,area){
  313. $('#reportid').val(id);
  314. $('#reportname').val(name);
  315. $('#areaselect').val(area);
  316. if(pid != 0){
  317. getajaxchild(pid);
  318. $('#cateselect option').each(function(){
  319. if($(this).val() == catid){
  320. $(this).prop('selected',true);
  321. }else{
  322. $(this).prop('selected',false);
  323. }
  324. });
  325. $('#cateselect').parent().removeClass('hidden');
  326. $('#parentselect option').each(function(){
  327. if($(this).val() == pid){
  328. $(this).prop('selected',true);
  329. }else{
  330. $(this).prop('selected',false);
  331. }
  332. });
  333. }else{
  334. $('#cateselect').parent().addClass('hidden');
  335. $('#parentselect option').each(function(){
  336. if($(this).val() == catid){
  337. $(this).prop('selected',true);
  338. }else{
  339. $(this).prop('selected',false);
  340. }
  341. });
  342. }
  343. }
  344. function edititemreport(name,id,itemid,pid,cid){
  345. $('#category').attr('href','/catelist/1/item/'+itemid);
  346. $('#reportid').val(id);
  347. $('#reportname').val(name);
  348. $('#itemselect option').each(function(){
  349. if($(this).val() == itemid){
  350. $(this).prop('selected',true);
  351. }else{
  352. $(this).prop('selected',false);
  353. }
  354. });
  355. getajaxparent(itemid);
  356. if(pid != 0){
  357. getajaxchild(pid);
  358. $('#cateselect option').each(function(){
  359. if($(this).val() == cid){
  360. $(this).prop('selected',true);
  361. }else{
  362. $(this).prop('selected',false);
  363. }
  364. });
  365. $('#cateselect').parent().removeClass('hidden');
  366. $('#parentselect option').each(function(){
  367. if($(this).val() == pid){
  368. $(this).prop('selected',true);
  369. }else{
  370. $(this).prop('selected',false);
  371. }
  372. });
  373. }else{
  374. $('#cateselect').parent().addClass('hidden');
  375. $('#parentselect option').each(function(){
  376. if($(this).val() == catid){
  377. $(this).prop('selected',true);
  378. }else{
  379. $(this).prop('selected',false);
  380. }
  381. });
  382. }
  383. }
  384. function delreport(name,id,itemid) {
  385. $('#deltext b').text(name);
  386. $('#delitem').val(itemid);
  387. var href = '{{rootUrl}}deletereport/'+id;
  388. if($('#delitem').val() != ''){
  389. href += '/item/'+$('#delitem').val();
  390. } else if($('#delcate').val() != ''){
  391. href += '/cate/'+$('#delcate').val();
  392. }
  393. if($('#delarea').val() != ''){
  394. href += '/area/'+ $('#delarea').val();
  395. }
  396. if($('#delsort').val() == 'report'){
  397. href += '/sort/report';
  398. }
  399. if($('#delpindex').val() != ''){
  400. href += '/page/'+$('#delpindex').val();
  401. }
  402. $('#delbtn').attr('href',href);
  403. }
  404. $(function(){
  405. $('#itemselect2').change(function(){
  406. var href = '/reportlist/1';
  407. if($(this).val() != 0){
  408. href += '/item/'+$(this).val();
  409. }
  410. if($('#sort').val() == 'report'){
  411. href += '/sort/report';
  412. }
  413. window.location.href = href;
  414. });
  415. $('#cateselect2').change(function(){
  416. var href = '/reportlist';
  417. if($(this).val() != 0){
  418. href += '/cate/'+$(this).val();
  419. }
  420. if($('#areaselect2').val() != 0){
  421. href += '/area/'+$('#areaselect2').val();
  422. }
  423. if($('#sort').val() == 'report'){
  424. href += '/sort/report';
  425. }
  426. window.location.href = href;
  427. });
  428. $('#areaselect2').change(function(){
  429. var href = '/reportlist';
  430. if($('#cateselect2').val() != 0){
  431. href += '/cate/'+$('#cateselect2').val();
  432. }
  433. if($(this).val() != 0){
  434. href += '/area/'+$(this).val();
  435. }
  436. if($('#sort').val() == 'report'){
  437. href += '/sort/report';
  438. }
  439. window.location.href = href;
  440. });
  441. $('#sort').change(function(){
  442. var href = '/reportlist';
  443. if($('#listtype').val() != ''){
  444. href += '/1';
  445. if($('#itemselect2').val() != 0){
  446. href += '/item/'+$('#itemselect2').val();
  447. }
  448. }else{
  449. if($('#cateselect2').val() != 0){
  450. href += '/cate/'+$('#cateselect2').val();
  451. }
  452. if($('#areaselect2').val() != 0){
  453. href += '/area/'+$('#areaselect2').val();
  454. }
  455. }
  456. if($(this).val() == 'report'){
  457. href += '/sort/report';
  458. }
  459. window.location.href = href;
  460. });
  461. $('#itemselect').change(function(){
  462. var itemid = $(this).val();
  463. if(itemid != 0){
  464. $('#category').prop('href','/catelist/1/item/'+itemid);
  465. }else{
  466. $('#category').prop('href','/catelist/1');
  467. }
  468. getajaxparent(itemid);
  469. });
  470. $('#parentselect').change(function(){
  471. var parentid = $(this).val();
  472. getajaxchild(parentid);
  473. });
  474. });
  475. function getajaxchild(parentid){
  476. $.ajax({
  477. type: 'get',
  478. url : '/getcatechild?parentid='+parentid,
  479. async: false,
  480. dataType: 'json',
  481. success: function(result){
  482. var data = result;
  483. if(data.code != 200){
  484. $('#cateselect').parent().addClass('hidden');
  485. $('#cateselect').html('');
  486. }else{
  487. var html = '';
  488. $.each(data.childlist, function(k,v){
  489. html +='<option value="' + v.cateid + '">' + v.catename + '</option>';
  490. });
  491. $('#cateselect').html(html);
  492. $('#cateselect').parent().removeClass('hidden');
  493. }
  494. }
  495. })
  496. }
  497. function getajaxparent(itemid){
  498. $.ajax({
  499. type: 'get',
  500. url : '/getcateparentbyitem?itemid='+itemid,
  501. async: false,
  502. dataType: 'json',
  503. success: function(result){
  504. var data = result;
  505. if(data.code == 200){
  506. var html = '<option value="0">选择类别</option>';
  507. $.each(data.parentlist, function(k,v){
  508. html +='<option value="' + v.cateid + '">' + v.catename + '</option>';
  509. });
  510. $('#parentselect').html(html);
  511. $('#cateselect').parent().addClass('hidden');
  512. $('#cateselect').html('');
  513. }else{
  514. var html = '<option value="0">选择类别</option>';
  515. $('#parentselect').html(html);
  516. $('#cateselect').parent().addClass('hidden');
  517. $('#cateselect').html('');
  518. }
  519. }
  520. })
  521. }
  522. </script>
  523. </body>