b8078abfba699d5f5a17f1c276e71867.php 30 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763
  1. <?php /*a:2:{s:80:"D:\phpstudy_pro\WWW\caiping\app\admin\view\project\cost_proprietor\datalist.html";i:1724827335;s:59:"D:\phpstudy_pro\WWW\caiping\app\admin\view\common\base.html";i:1723541257;}*/ ?>
  2. <!DOCTYPE html>
  3. <html>
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  6. <meta name="renderer" content="webkit">
  7. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  8. <meta name="360-site-verification" content="a7c876fae8b6e3175a52ea9f19543f51" />
  9. <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1, user-scalable=0">
  10. <script src="/static/dist/xm-select.js"></script>
  11. <link rel="mobile-prefetch" href=""/>
  12. <title><?php echo get_system_config('web','admin_title'); ?></title>
  13. <meta name="keywords" content="<?php echo get_system_config('web','keywords'); ?>"/>
  14. <meta name="description" content="<?php echo get_system_config('web','desc'); ?>"/>
  15. <link rel="stylesheet" href="/static/assets/gougu/css/gougu.css?v=<?php echo get_system_config('web','version'); ?>" media="all">
  16. <style>
  17. .footer{
  18. width: 100%;
  19. height: 25px;
  20. text-align: center;
  21. position: fixed;
  22. bottom: 0;
  23. }
  24. </style>
  25. </head>
  26. <body class="main-body">
  27. <!-- 主体 -->
  28. <div class="p-3">
  29. <div class="gg-form-bar border-t border-x">
  30. <form id="taskForm" class="layui-form" lay-filter="barsearchform">
  31. <div class="layui-input-inline" style="width:100px;">
  32. <select name="project_status" lay-filter="status">
  33. <option value="">项目状态</option>
  34. <option value="1">立项中</option>
  35. <option value="2">审批中</option>
  36. <option value="3">待接收</option>
  37. <option value="4">分配中</option>
  38. <option value="5">作业中</option>
  39. <option value="6">归档中</option>
  40. <option value="7">退审中</option>
  41. <option value="8">已归档</option>
  42. <option value="9">已退审</option>
  43. </select>
  44. </div>
  45. <div class="layui-input-inline">
  46. <select id="province" lay-filter="province" name="province">
  47. <option value="">省</option>
  48. </select>
  49. </div>
  50. <div class="layui-input-inline">
  51. <select id="city" lay-filter="city" name="city">
  52. <option value="">市</option>
  53. </select>
  54. </div>
  55. <div class="layui-input-inline">
  56. <select id="area" lay-filter="area" name="area">
  57. <option value="">县</option>
  58. </select>
  59. </div>
  60. <div id="time_date" class="layui-input-inline">
  61. <div class="layui-input-inline">
  62. <input type="text" id="start_time" name="project_start_time" readonly placeholder="请选择" class="layui-input" value="">
  63. </div>
  64. <div class="layui-input-inline">-</div>
  65. <div class="layui-input-inline">
  66. <input type="text" id="end_time" name="project_end_time" readonly placeholder="请选择" class="layui-input" value="">
  67. </div>
  68. </div>
  69. <div class="layui-input-inline" style="width:200px;">
  70. <input type="text" name="review_unit_name" placeholder="评审机构" class="layui-input" autocomplete="off" />
  71. </div>
  72. <div class="layui-input-inline" style="width:200px;">
  73. <input type="text" name="entrust_unit_name" placeholder="委托单位" class="layui-input" autocomplete="off" />
  74. </div>
  75. <div class="layui-input-inline" style="width:200px;">
  76. <input type="text" name="keyword" placeholder="关键字" class="layui-input" autocomplete="off" />
  77. </div>
  78. <div class="layui-input-inline" style="width:150px;">
  79. <button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
  80. <button class="layui-btn layui-btn-reset" lay-submit="" lay-filter="reset1">清空</button>
  81. </div>
  82. </form>
  83. </div>
  84. <table class="layui-hide" id="cost_project" lay-filter="cost_project"></table>
  85. </div>
  86. <script type="text/html" id="toolbarDemo">
  87. <div class="layui-btn-container">
  88. <span class="layui-btn layui-btn-sm" lay-event="add" data-title="添加造价项目">+ 添加造价项目</span>
  89. </div>
  90. </script>
  91. <script type="text/html" id="barDemo">
  92. </script>
  93. <!-- /主体 -->
  94. <!-- 底部 -->
  95. <div class="footer">
  96. 逸管工程项目管理系统 © www.yiguanfep.com
  97. <img src="/static/home/images/police.png" alt="" style="width:14.5px;height:16px;">
  98. <a href="https://beian.mps.gov.cn/#/query/websearch?code=45030202000160 " rel="\&quot;noreferrer'target=\”blank\&quot;" onclick="window.open(this.href); return false;">桂公网安备45030202000160号</a>
  99. <a href="https://beian.miit.gov.cn/#/Integrated/index" onclick="window.open(this.href); return false;">桂ICP备17000971号</a>
  100. </div>
  101. <!-- /底部 -->
  102. <!-- 脚本 -->
  103. <script>
  104. const moduleInit = ['tool','oaTool'];
  105. const field = '<?=json_encode($field)?>';
  106. function gouguInit() {
  107. var table = layui.table, tool = layui.tool, form = layui.form, oaTool = layui.oaTool;
  108. layui.laydate.render({
  109. elem: '#time_date',
  110. range: ['#start_time', '#end_time'],
  111. rangeLinked: true
  112. });
  113. var allcount;
  114. layui.pageTable = table.render({
  115. elem: '#cost_project',
  116. title: '造价项目列表',
  117. toolbar: '#toolbarDemo',
  118. url: '/admin/project.cost_proprietor/datalist',
  119. page: true,
  120. limit: 20,
  121. cellMinWidth: 100,
  122. parseData: function (res) { // 数据解析回调函数
  123. // 在这里可以获取数据总数
  124. allcount = res.count;
  125. return {
  126. code: res.code, // 数据状态码
  127. msg: res.msg, // 状态信息
  128. count: res.count, // 数据总数
  129. data: res.data // 当前页数据
  130. };
  131. },
  132. cols: [
  133. [
  134. {
  135. fixed: 'left', field: 'id', title: '编号', align: 'center', width: 80,
  136. templet: function (d) {
  137. return allcount - (d.LAY_NUM - 1);
  138. }
  139. },
  140. {
  141. fixed: 'left',
  142. field: 'prorietor_status',
  143. title: '项目状态',
  144. align: 'center',
  145. width: 100,
  146. hide: field.prorietor_status,
  147. templet: function (item) {
  148. var html = '';
  149. if (item.project_status === 1) {
  150. html = '<span class="layui-badge layui-bg-orange" style="background-color: #ffb800">财评端立项中</span> ';
  151. } else if (item.project_status === 2) {
  152. html = '<span class="layui-badge layui-bg-blue" style="background-color: #b30095">审批中</span> ';
  153. } else if (item.project_status === 3) {
  154. html = '<span class="layui-badge layui-bg-green" style="background-color: #d37000">待接收</span> ';
  155. } else if (item.project_status === 4) {
  156. html = '<span class="layui-badge" style="background-color: #005fa8">分配中</span> ';
  157. } else if (item.project_status === 5) {
  158. html = '<span class="layui-badge layui-bg-blue" style="background-color: #1e9fff">作业中</span> ';
  159. } else if (item.project_status === 6) {
  160. html = '<span class="layui-badge" style="background-color: #007244">归档中</span> ';
  161. } else if (item.project_status === 7) {
  162. html = '<span class="layui-badge" style="background-color: #881f1f">退审中</span> ';
  163. } else if (item.project_status === 8) {
  164. html = '<span class="layui-badge" style="background-color: #16b777">已归档</span> ';
  165. } else if (item.project_status === 9) {
  166. html = '<span class="layui-badge" style="background-color: #d81e06">已退审</span> ';
  167. }else if(item.project_status === 0){
  168. if(item.proprietor_status===0){
  169. html = '<span class="layui-badge layui-bg-orange" style="background-color: #ffb800">立项中</span> '
  170. }else if(item.proprietor_status===1){
  171. html = '<span class="layui-badge layui-bg-orange" style="background-color: #ffb800">审核中</span> '
  172. }else if(item.proprietor_status===2){
  173. html = '<span class="layui-badge layui-bg-orange" style="background-color: #ffb800">待接收</span> '
  174. }
  175. }
  176. return html;
  177. }
  178. },
  179. {
  180. fixed: 'left',
  181. field: 'report_status',
  182. title: '报告状态',
  183. align: 'center',
  184. width: 100,
  185. hide: false,
  186. templet: function (item) {
  187. var html;
  188. if (item.report_status === 0) {
  189. html = '<span>初稿中</span> ';
  190. } else if (item.report_status === 1) {
  191. html = '<span>对数中</span> ';
  192. } else if (item.report_status === 2) {
  193. html = '<span>审定中</span> ';
  194. } else {
  195. html = '<span >未知</span> ';
  196. }
  197. return html;
  198. }
  199. },
  200. {
  201. fixed: 'left',
  202. field: 'project_name',
  203. title: '项目名称',
  204. align: 'center',
  205. width: 400,
  206. hide: field.project_name,
  207. templet: function (d) {
  208. var html = "";
  209. if (d.red) {
  210. //判断是否有新消息,有就有new
  211. html = '<a class="side-a" lay-event="read" lay-event="read">' + d.project_name + ' <span class="layui-badge-dot hongdian"></span></a>';
  212. } else {
  213. html = '<a class="side-a" lay-event="read" lay-event="read">' + d.project_name + '</a>';
  214. }
  215. return '<div style="text-align:left;">' + html + '</div>'
  216. }
  217. },
  218. {
  219. field: 'project_num', title: '项目编号', align: 'center', width: 150, hide: field.project_num,
  220. templet: function (d) {
  221. return '<div style="text-align:left">' + d.project_num + '</div>'
  222. }
  223. },
  224. {
  225. field: 'project_time', title: '项目周期', align: 'center', width: 250, hide: field.project_time,
  226. templet: function (item) {
  227. if(!item.project_start_time||!item.project_end_time){
  228. return "";//业主创建不显示
  229. }
  230. let outcome = Math.round(new Date().getTime() / 1000).toString();
  231. var advent_time = item.project_end_time - outcome
  232. var time = getDuration(advent_time);
  233. var timestr = "<span style='color: green'>" + "剩余" + time + "</span>";
  234. if (advent_time < 0) {
  235. advent_time = -advent_time;
  236. time = getDuration(advent_time);
  237. timestr = "<span style='color: red'>" + "逾期" + time + "</span>";
  238. }
  239. var html;
  240. html =
  241. "<div>" +
  242. layui.util.toDateString(item.project_start_time * 1000, 'yyyy-MM-dd') +
  243. "至" +
  244. layui.util.toDateString(item.project_end_time * 1000, 'yyyy-MM-dd') +
  245. "&nbsp;&nbsp;" + timestr +
  246. "</div>";
  247. function getDuration(second) {
  248. var duration
  249. var days = Math.floor(second / 86400);
  250. var hours = Math.floor((second % 86400) / 3600);
  251. if (days > 0) duration = days + "天";
  252. else if (hours > 0) duration = "不足一天";
  253. else if (hours == 0) duration = "不足一天";
  254. return duration;
  255. }
  256. return html;
  257. }
  258. },
  259. {
  260. field: 'review_unit_name',
  261. title: '评审机构',
  262. align: 'center',
  263. width: 150,
  264. hide: field.review_unit
  265. },
  266. {
  267. field: 'review_head_name',
  268. title: '评审机构负责人',
  269. align: 'center',
  270. width: 150,
  271. hide: field.review_head
  272. },
  273. {
  274. field: 'review_head_phone',
  275. title: '评审机构负责人电话',
  276. align: 'center',
  277. width: 150,
  278. hide: field.review_head_phone,
  279. },
  280. {
  281. field: 'sent_review_unit_name',
  282. title: '送审单位',
  283. align: 'center',
  284. width: 150,
  285. hide: field.sent_review_unit
  286. },
  287. {
  288. field: 'sent_review_head_name',
  289. title: '送审单位负责人',
  290. align: 'center',
  291. width: 150,
  292. hide: field.sent_review_head
  293. },
  294. {
  295. field: 'sent_review_phone',
  296. title: '送审单位负责人电话',
  297. align: 'center',
  298. width: 150,
  299. hide: field.sent_review_phone
  300. },
  301. {
  302. field: 'construction_unit',
  303. title: '施工单位',
  304. align: 'center',
  305. width: 150,
  306. hide: field.construction_unit
  307. },
  308. {
  309. field: 'construction_head',
  310. title: '施工单位负责人',
  311. align: 'center',
  312. width: 150,
  313. hide: field.construction_head
  314. },
  315. {
  316. field: 'construction_phone',
  317. title: '施工单位负责人电话',
  318. align: 'center',
  319. width: 150,
  320. hide: field.construction_phone
  321. },
  322. {field: 'project_scale', title: '项目规模', align: 'center', width: 150, hide: field.project_scale},
  323. {
  324. field: 'engineering_category',
  325. title: '工程类别',
  326. align: 'center',
  327. width: 150,
  328. hide: field.engineering_category
  329. },
  330. {
  331. field: 'engineering_type',
  332. title: '项目类型',
  333. align: 'center',
  334. width: 150,
  335. hide: field.engineering_type
  336. },
  337. {
  338. field: 'project_region',
  339. title: '项目区域',
  340. align: 'center',
  341. width: 150,
  342. hide: field.project_region
  343. },
  344. {field: 'fiscal_nature', title: '财政性质', align: 'center', width: 150, hide: field.fiscal_nature},
  345. {
  346. field: 'sent_review_cost',
  347. title: '送审服务费',
  348. align: 'center',
  349. width: 100,
  350. hide: field.sent_review_cost
  351. },
  352. {
  353. field: 'sent_review_approver_amount',
  354. title: '送审单位承担审核费',
  355. align: 'center',
  356. width: 150,
  357. hide: field.sent_review_approver_amount
  358. },
  359. {
  360. field: 'construction_approver_amount',
  361. title: '施工单位负责核减超5%评审费部分',
  362. align: 'center',
  363. width: 230,
  364. hide: field.construction_approver_amount
  365. },
  366. {
  367. field: 'sent_review_amount',
  368. title: '送审金额',
  369. align: 'center',
  370. width: 150,
  371. hide: field.sent_review_amount
  372. },
  373. {
  374. field: 'authorize_amount',
  375. title: '审定金额',
  376. align: 'center',
  377. width: 150,
  378. hide: field.authorize_amount
  379. },
  380. {
  381. field: 'review_add_amount',
  382. title: '审增额',
  383. align: 'center',
  384. width: 150,
  385. hide: field.review_add_reduce_amount
  386. },
  387. {
  388. field: 'review_reduce_amount',
  389. title: '审减额',
  390. align: 'center',
  391. width: 150,
  392. hide: field.review_add_reduce_amount
  393. },
  394. {
  395. field: 'review_add_reduce_rate',
  396. title: '审增减率',
  397. align: 'center',
  398. width: 150,
  399. hide: field.review_add_reduce_rate
  400. },
  401. {
  402. field: 'report_time',
  403. title: '报告时间',
  404. align: 'center',
  405. width: 150,
  406. hide: field.report_time,
  407. templet: function (d) {
  408. if (d.report_time) {
  409. return layui.util.toDateString(d.report_time * 1000, "yyyy-MM-dd")
  410. } else {
  411. return "";
  412. }
  413. }
  414. },
  415. {
  416. field: 'charge_standard',
  417. title: '收费标准',
  418. align: 'center',
  419. width: 150,
  420. hide: field.charge_standard
  421. },
  422. {
  423. field: 'operate_head_name',
  424. title: '作业负责人',
  425. align: 'center',
  426. width: 150,
  427. hide: field.operate_name
  428. },
  429. {
  430. field: 'operate_team_names',
  431. title: '作业成员',
  432. align: 'center',
  433. width: 300,
  434. hide: field.operate_team_names
  435. },
  436. {
  437. field: 'create_time',
  438. title: '项目创建日期',
  439. align: 'center',
  440. width: 120,
  441. hide: field.create_time,
  442. templet: function (d) {
  443. if (d.create_time) {
  444. return layui.util.toDateString(d.create_time * 1000, "yyyy-MM-dd")
  445. } else {
  446. return "";
  447. }
  448. }
  449. },
  450. {
  451. field: 'project_dead_time',
  452. title: '项目归档日期',
  453. align: 'center',
  454. width: 120,
  455. hide: field.project_dead_time,
  456. templet: function (d) {
  457. if (d.project_dead_time) {
  458. return layui.util.toDateString(d.project_dead_time * 1000, "yyyy-MM-dd")
  459. } else {
  460. return "";
  461. }
  462. }
  463. },
  464. {
  465. fixed: 'right', field: 'right', title: '操作', width: 136, align: 'center',
  466. templet: function (a) {
  467. var h = '';
  468. // 1全部-可查看可编辑,2全部-可查看,0与我有关
  469. if (a.self_id == 1) {
  470. if (a.proprietor_status< 1) {
  471. h = '<a class="layui-btn layui-btn-xs layui-bg-blue" lay-event="read">查看</a><div class="layui-btn-group"><a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a><a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a></div>'
  472. } else {
  473. h = '<div class="layui-btn-group"><a class="layui-btn layui-btn-xs layui-bg-blue" lay-event="read">查看</a><a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a></div>'
  474. }
  475. } else if (a.self_id == 2) {
  476. h = '<div class="layui-btn-group"><a class="layui-btn layui-btn-xs layui-bg-blue" lay-event="read">查看</a></div>'
  477. } else if (a.self_id == 0 || a.self_id == 3) {
  478. if (a.project_status == 0) {
  479. h = '<div class="layui-btn-group"><a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a><a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a></div>'
  480. } else {
  481. h = '<div class="layui-btn-group"><a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a></div>'
  482. }
  483. }
  484. return h;
  485. }
  486. }
  487. ]
  488. ]
  489. });
  490. //监听表格行工具事件
  491. table.on('tool(cost_project)', function (obj) {
  492. var data = obj.data;
  493. if (obj.event === 'read') {
  494. tool.side('/admin/project.cost_proprietor/read?id=' + obj.data.id);
  495. }else if(obj.event === "edit"){
  496. tool.side('/admin/project.cost_proprietor/edit_main?id=' + obj.data.id);
  497. }else if (obj.event === 'del') {
  498. layer.confirm('确定要删除该记录吗?', {
  499. icon: 3,
  500. title: '提示'
  501. }, function (index) {
  502. if (data.proprietor_status==0) {
  503. let callback = function (e) {
  504. layer.msg(e.msg);
  505. if (e.code == 0) {
  506. obj.del();
  507. }
  508. }
  509. tool.delete("/admin/project.cost_proprietor/del", {id: data.id}, callback);
  510. layer.close(index);
  511. }
  512. else {
  513. layer.msg("已审核,无法删除");
  514. //console.log(data);
  515. }
  516. });
  517. }
  518. return false;
  519. });
  520. //监听搜索提交
  521. form.on('submit(webform)', function (data) {
  522. //console.log(data.field)
  523. layui.pageTable.reload({ where: data.field });
  524. return false;
  525. });
  526. form.on('submit(reset1)', function () {
  527. $(".layui-form").reset();
  528. layui.pageTable.reload();
  529. return false;
  530. });
  531. //监听表头工具栏事件
  532. table.on('toolbar(cost_project)', function (obj) {
  533. if (obj.event === 'add') {
  534. tool.side("/admin/project.cost_proprietor/add");
  535. return false;
  536. }
  537. });
  538. layui.use(['form', 'jquery'], function () {
  539. var form = layui.form;
  540. const $ = layui.jquery;
  541. let adress;
  542. $.ajax({
  543. type: "get", //使用get方式
  544. url: "/static/assets/layui/adress.json", //json文件相对于这个HTML的路径
  545. dataType: "json",
  546. async: false,
  547. success: function (data) {
  548. //这个data就是json数据
  549. adress = data
  550. var province = Object.keys(adress)
  551. var proStrs= '<option value="">省</option>';
  552. for (var i=0; i<province.length;i++){
  553. proStrs += '<option value="' + province[i] + '">' + province[i] + '</option>';
  554. }
  555. $("#province").html(proStrs);
  556. layui.form.render("select")
  557. },
  558. error: function () {
  559. layer.alert("地址请求失败!! ");
  560. }
  561. });
  562. function getFirstAttr(obj) {
  563. for (var k in obj) return k;
  564. }
  565. function selectOption(selectedProvince, selectedCity='', selectedArea='') {
  566. var proStr = '<option value="">省</option>', cityStr = '<option value="">市</option>', areaStr = '<option value="">县</option>';
  567. var pro = adress[selectedProvince], ci = adress[selectedProvince][selectedCity];
  568. for (var province in adress) {
  569. if (province == selectedProvince) proStr += '<option value="' + province + '" selected>' + province + '</option>';
  570. else proStr += '<option value="' + province + '">' + province + '</option>';
  571. }
  572. $("#province").html(proStr);
  573. for (var city in pro) {
  574. if (city == selectedCity) cityStr += '<option value="' + city + '" selected>' + city + '</option>';
  575. else cityStr += '<option value="' + city + '">' + city + '</option>';
  576. }
  577. $("#city").html(cityStr);
  578. for (var area in ci) {
  579. if (area == "remove") {
  580. continue;
  581. }
  582. if (ci[area] == selectedArea) areaStr += '<option value="' + ci[area] + '" selected>' + ci[area] + '</option>';
  583. else areaStr += '<option value="' + ci[area] + '">' + ci[area] + '</option>';
  584. }
  585. $("#area").html(areaStr);
  586. form.render();
  587. }
  588. /*selectOption(1,2, 3);*/
  589. form.on('select(province)', function (data) {
  590. let thisProvince = data.value;
  591. let thisCity = getFirstAttr(adress[thisProvince]);
  592. selectOption(data.value);
  593. });
  594. form.on('select(city)', function (data) {
  595. selectOption($("#province").val(), data.value, getFirstAttr(data.value));
  596. });
  597. })
  598. }
  599. </script>
  600. <!--<script src="/static/assets/layui/adress.json"></script>-->
  601. <!-- /脚本 -->
  602. <!-- <script src="/static/assets/layui/layui.js"></script> -->
  603. <script src="/static/assets/layui/layui.js"></script>
  604. <script src="/static/assets/third_party/echart/echarts.min.js"></script>
  605. <script src="/static/assets/gougu/gouguInit.js"></script>
  606. <script src="https://unpkg.com/pinyin-pro"></script>
  607. <script>
  608. var { pinyin } = pinyinPro;
  609. </script>
  610. <!-- 统计代码 -->
  611. <!-- /统计代码 -->
  612. </body>
  613. </html>