12345市长热线标准版-前端

LeaderYYS.html 19KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>已审核延时</title>
  6. <script src="../Script/Common/huayi.load.js"></script>
  7. <script src="../Script/Common/huayi.config.js"></script>
  8. <link rel="stylesheet" href="../js/zTree/zTreeStyle.css" />
  9. <link rel="stylesheet" href="../css/init.css" />
  10. <style>
  11. #sqzx th {
  12. padding: 5px 8px 5px 0;
  13. text-align: right;
  14. }
  15. .select {
  16. width: 150px;
  17. background-color: #FFF;
  18. background-image: none;
  19. border: 1px solid #ccc;
  20. border-radius: 1px;
  21. color: inherit;
  22. padding: 6px 12px;
  23. }
  24. #sex {
  25. background-color: #FFF;
  26. background-image: none;
  27. border: 1px solid #ccc;
  28. border-radius: 1px;
  29. color: inherit;
  30. padding: 6px 12px;
  31. }
  32. input {
  33. background-color: #FFF;
  34. background-image: none;
  35. border: 1px solid #ccc;
  36. border-radius: 1px;
  37. color: inherit;
  38. padding: 6px 12px;
  39. }
  40. #sqzx td {
  41. padding: 6px 0 5px 10px;
  42. }
  43. .lxr ul li {
  44. float: left;
  45. list-style: none;
  46. width: 30%;
  47. margin-bottom: 5px;
  48. padding-top: 10px;
  49. }
  50. .clearFix:after {
  51. content: "";
  52. display: block;
  53. clear: both;
  54. }
  55. .form-group {
  56. padding-left: 40px;
  57. margin-bottom: 0;
  58. }
  59. textarea {
  60. height: 70px;
  61. border: 1px solid #ccc;
  62. border-radius: 1px;
  63. width: 50%;
  64. resize: none;
  65. }
  66. .textarea_box {
  67. margin-top: 10px;
  68. }
  69. .box_content {
  70. border-bottom: 1px solid #ccc;
  71. }
  72. .tj_content {
  73. border: 1px solid #e6e6e6;
  74. border-radius: 5px;
  75. }
  76. .t-shade {
  77. position: fixed;
  78. top: 0;
  79. left: 0;
  80. width: 100%;
  81. height: 100%;
  82. background: rgba(0, 0, 0, 0.48);
  83. z-index: 10004;
  84. display: none;
  85. }
  86. .lyxz .shade_k {
  87. z-index: 10005;
  88. width: 60%;
  89. margin: 10% auto;
  90. background-color: #fff;
  91. box-shadow: 1px 1px 50px rgba(0, 0, 0, .3);
  92. border-radius: 5px;
  93. }
  94. .shade_title {
  95. padding: 0 80px 0 20px;
  96. height: 42px;
  97. line-height: 42px;
  98. border-bottom: 1px solid #eee;
  99. font-size: 16px;
  100. color: #FFFFFF;
  101. overflow: hidden;
  102. background-color: #1ab394;
  103. border-radius: 2px 2px 0 0;
  104. position: relative;
  105. border-top-left-radius: 5px;
  106. border-top-right-radius: 5px;
  107. }
  108. .cx {
  109. display: block;
  110. }
  111. .setwin {
  112. position: absolute;
  113. right: 15px;
  114. top: 5px;
  115. font-size: 0;
  116. line-height: initial;
  117. }
  118. .setwin a {
  119. position: relative;
  120. width: 16px;
  121. height: 16px;
  122. font-size: 20px;
  123. color: #fff;
  124. }
  125. .xg i {
  126. font-size: 16px;
  127. }
  128. .hidens {
  129. display: none;
  130. }
  131. </style>
  132. </head>
  133. <body class="gray-bg">
  134. <div class="wrapper wrapper-content animated fadeInRight">
  135. <div class="daoHang clearfix">
  136. <div class="dhLeft">
  137. <sapn>
  138. <i class="syIcon"></i>位置:
  139. <a href="javaScript:;" id="ReIndex">首页</a>&gt;
  140. <a href="javaScript:;">业务监督</a>&gt;
  141. <a class="nowPosition">已审核延时</a>
  142. </sapn>
  143. </div>
  144. <div class="dhRight">
  145. <a href="" title="刷新"><i class="fa fa-refresh"></i></a>
  146. </div>
  147. </div>
  148. <div style="padding: 10px;" class="tj_content clearFix">
  149. <div style="padding: 10px;" class="tj_content clearFix">
  150. <div>
  151. <span>【搜索信息】</span>
  152. <div class="box_content">
  153. <table id="sqzx" style="width: 100%;" border="0" cellspacing="0" cellpadding="0">
  154. <tr>
  155. <th>关键字:</th>
  156. <td>
  157. <input type="text" placeholder="输入关键字" id="key" />
  158. </td>
  159. <th>时间:</th>
  160. <td colspan="3">
  161. <input type="text" id="starttime" class="laydate-icon" style="height: 32px;" />&nbsp;——&nbsp;<input type="text" id="endtime" class="laydate-icon" style="height: 32px;" />
  162. </td>
  163. <th></th>
  164. <td>
  165. <botton class="btns Seach">搜索</botton>
  166. </td>
  167. </tr>
  168. </table>
  169. </div>
  170. <div class="" style="line-height: 50px;">
  171. </div>
  172. </div>
  173. <div>
  174. <div style="width: 100%;padding: 10px;">
  175. <table id="orderlist" data-row-style="rowStyle" data-query-params="queryParams" data-pagination="true">
  176. <thead>
  177. <tr>
  178. <th data-checkbox="true"></th>
  179. <th data-field="F_WorkOrderId" data-align="center">工单单号</th>
  180. <th data-field="F_ComTitle" data-formatter="GetCont" data-align="center">诉求标题</th>
  181. <th data-field="DeptName" data-align="center">交办单位</th>
  182. <th data-field="UserName" data-align="center">受理人</th>
  183. <th data-field="F_WorkState" data-align="center" data-formatter="States">办理状态</th>
  184. <th data-field="FilePath" data-formatter="setCode" data-align="center">录音</th>
  185. <th data-field="F_WorkOrderId" data-formatter="Dispose" data-align="center">操作</th>
  186. </tr>
  187. </thead>
  188. <tbody class="list"></tbody>
  189. </table>
  190. </div>
  191. </div>
  192. </div>
  193. </div>
  194. <!--下载框-->
  195. <div class="t-shade lyxz">
  196. <div class="shade_k">
  197. <div class="shade_title">
  198. <span>录音播放与下载<srong class="cknum"></srong></span>
  199. <span class="setwin gbly"><a>x</a></span>
  200. </div>
  201. <div class="shade_content">
  202. <div class="Ly_box audiojs">
  203. </div>
  204. </div>
  205. </div>
  206. </div>
  207. </div>
  208. <script src="../css/laydate/laydate.js"></script>
  209. <script src="../My97DatePicker/WdatePicker.js"></script>
  210. <script>
  211. // return '<div class="imgs" >' +
  212. // '<a class="xg" title="查看" onclick="ckxq(' + val + ')"> <i class="fa fa-search"></i></a>' +
  213. // '<a class="xg" title="编辑" onclick="bj(' + val + ')"> <i class="fa fa-pencil-square-o"></i></a>' +
  214. // '<a class="xg" title="回访" onclick="back(' + val + ')"> <i class="fa fa-mail-reply"></i></a>' +
  215. // '<a class="xg" "title="强回"onclick="recycles(' + val + ')"> <i class="fa fa-exchange"></i></a>' +
  216. // '<a class="xg" title="结案" onclick="Lawsuit(' + val + ')"> <i class="fa fa-pie-chart"></i></a>' +
  217. // '<a class="xg" "title="交办"onclick="jb(' + val + ')"> <i class="fa fa-check-square-o"></i></a>' +
  218. // '<a class="xg" "title="回收"onclick="recycle(' + val + ')"> <i class="fa fa-retweet"></i></a>' +
  219. // '<a class="xg "title="督查" onclick="Supervision(' + val + ')"> <i class="fa fa-eye"></i></a>' +
  220. // '<a class="xg" "title="强制" onclick="StrongLawsuit(' + val + ')"> <i class="fa fa-check-circle"></i></a>' +
  221. // '<a class="xg" title="删除"onclick="move(' + val + ')"> <i class="fa fa-remove"></i></a>' +
  222. // '</div>';
  223. $(document).ready(function() {
  224. //返回首页
  225. $('#ReIndex').click(function() {
  226. top.home_index();
  227. })
  228. load();
  229. laydate.skin('blue');
  230. laydate({
  231. elem: '#starttime',
  232. event: 'focus'
  233. });
  234. laydate({
  235. elem: '#endtime',
  236. event: 'focus'
  237. });
  238. ///搜素
  239. $(".Seach").click(function() {
  240. load();
  241. })
  242. });
  243. //关闭录音弹出
  244. $(".gbly").click(function() {
  245. $(".lyxz").removeClass("cx");
  246. $('audio')[0].pause();
  247. });
  248. $("#orderlist").on("click-row.bs.table", function(e, row, ele) {
  249. $('.success').removeClass('success'); //去除之前选中的行的,选中样式
  250. $(ele).addClass('success'); //添加当前选中的 success样式用于区别
  251. });
  252. //获取查询信息
  253. function load() {
  254. //先销毁表格
  255. $('#orderlist').bootstrapTable('destroy');
  256. //初始化表格,动态从服务器加载数据
  257. $("#orderlist").bootstrapTable({
  258. method: "get", //使用get请求到服务器获取数据
  259. url: huayi.config.callcenter_url + "WorkOrder/GetLDDealList", //获取数据的Servlet地址
  260. contentType: "application/x-www-form-urlencoded",
  261. striped: true, //表格显示条纹
  262. pagination: true, //启动分页
  263. pageSize: 10, //每页显示的记录数
  264. pageNumber: 1, //当前第几页
  265. pageList: [10, 20, 50, 100], //记录数可选列表
  266. search: false, //是否启用查询
  267. showColumns: false, //显示下拉框勾选要显示的列
  268. showRefresh: false, //显示刷新按钮
  269. sidePagination: "server", //表示服务端请求
  270. //设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder
  271. //设置为limit可以获取limit, offset, search, sort, order
  272. queryParamsType: "undefined",
  273. queryParams: function queryParams(params) { //设置查询参数
  274. var param = {
  275. page: params.pageNumber,
  276. pagesize: params.pageSize,
  277. state: $("#state").val(), //=工单状态
  278. type: $("#type").val(), //=工单类型
  279. bigtype: $("#bigtype").val(), //=大类别
  280. smalltype: $("#smalltype").val(), //=小类别
  281. key: $("#key").val(), //=关键字
  282. tel: $("#tel").val(), //=投诉人电话
  283. name: $("#name").val(), //=客户名称
  284. code: $("#code").val(), //=坐席工号
  285. // keyid:2,//=关键词id
  286. tab: 3,//已延时
  287. source: $("#source").val(), //=来源&
  288. starttime: $("#starttime").val(), //=开始时间
  289. endtime: $("#endtime").val(), //=结束时间
  290. token: $.cookie("token")
  291. };
  292. return param;
  293. },
  294. onLoadSuccess: function(data) { //加载成功时执行
  295. // layer.msg("加载成功");
  296. //console.log(data);
  297. },
  298. onLoadError: function() { //加载失败时执行
  299. //layer.msg("加载数据失败", { time: 1500, icon: 2 });
  300. }
  301. });
  302. }
  303. //状态
  304. function States(val,row) {
  305. var html = '';
  306. switch(val + '') {
  307. case '0':
  308. html = '新工单';
  309. if(row.F_IsReturn==1){
  310. html = '新工单(回退)';
  311. }
  312. break;
  313. case '1':
  314. html = '待交办';
  315. break;
  316. case '2':
  317. html = '待查收';
  318. break;
  319. case '3':
  320. html = '退回审核中';
  321. break;
  322. case '4':
  323. html = '办理中';
  324. break;
  325. case '5':
  326. html = '延时审核';
  327. break;
  328. case '6':
  329. html = '已办理';
  330. break;
  331. case '7':
  332. html = '已回访';
  333. break;
  334. case '8':
  335. html = '重办中';
  336. break;
  337. case '9':
  338. html = '已结案';
  339. break;
  340. }
  341. return html;
  342. } //音频
  343. function setCode(val) {
  344. if(val) {
  345. return '<div class="imgs" style="cursor: pointer;">' +
  346. '<img src="../img/vice.png" alt="" onclick= ck(this) item="' + val + '" />' +
  347. '</div>';
  348. } else {
  349. return '';
  350. }
  351. }
  352. //录音
  353. function ck(val) {
  354. var path = $(val).attr("item");
  355. $(".lyxz").addClass("cx");
  356. $(".Ly_box").empty();
  357. $(".down").attr("href", path);
  358. $('<audio style="width: 100%;"class=" " src="' + path + '" loop="loop" controls="controls" ></audio>').appendTo(".Ly_box");
  359. }
  360. function GetCont(val) {
  361. if(val) {
  362. var str = '<div '
  363. if(val.length > 10) {
  364. str = str + ' title="' + val + '" ';
  365. val = val.substr(0, 10) + "...";
  366. }
  367. return str + '>' + val + '</div>';
  368. } else {
  369. return '';
  370. }
  371. }
  372. //操作
  373. function Dispose(val, row) {
  374. var Rows = row.Buttons;
  375. var html = '';
  376. for(var i = 0; i < Rows.length; i++) {
  377. var html1 = huayi.config.arr[Rows[i].key * 1 - 1];
  378. if(html1) {
  379. html1 = html1.replace("data", val);
  380. }
  381. html += html1;
  382. }
  383. return html;
  384. }
  385. //查看详情
  386. function ckxq(str) {
  387. layer.open({
  388. type: 2,
  389. content: "../CommonHtml/WorkDatil.html?wid=" + str, //iframe的url,no代表不显示滚动条
  390. title: '工单详情',
  391. area: ['85%', '80%'], //宽高
  392. });
  393. }
  394. //编辑
  395. function bj(str) {
  396. layer.open({
  397. type: 2,
  398. content: "../CommonHtml/AddAppeal.html?wid=" + str, //iframe的url,no代表不显示滚动条
  399. title: '编辑工单',
  400. area: ['85%', '80%'], //宽高
  401. });
  402. }
  403. //删除
  404. function move(str) {
  405. layer.confirm('确定删除工单?', {
  406. btn: ['是', '否'] //按钮
  407. }, function() {
  408. $.post(huayi.config.callcenter_url + "WorkOrder/DelWorkOrder", {
  409. ids: str,
  410. token: $.cookie("token")
  411. }, function(result) {
  412. result = JSON.parse(result);
  413. if(result.state.toLowerCase() == "success") {
  414. layer.msg("删除成功");
  415. load();
  416. }
  417. })
  418. });
  419. }
  420. //提交
  421. function tj(str) {
  422. layer.confirm('确定要提交工单么?', {
  423. btn: ['确定', '取消'] //按钮
  424. }, function() {
  425. //请求后台数据
  426. /*发送请求*/
  427. $.post(huayi.config.callcenter_url + "WorkOrder/SubmitWorkOrder", {
  428. ids: str,
  429. token: $.cookie("token")
  430. }, function(result) {
  431. result = JSON.parse(result);
  432. if(result.state.toLowerCase() == "success") {
  433. layer.msg("提交成功");
  434. load();
  435. }
  436. })
  437. });
  438. }
  439. //交办
  440. function jb(str) {
  441. layer.open({
  442. type: 2,
  443. content: "../CommonHtml/JiaoBan.html?wid=" + str, //iframe的url,no代表不显示滚动条
  444. title: '工单交办',
  445. area: ['45%', '40%'], //宽高
  446. });
  447. }
  448. //领导批示
  449. function lader(str) {
  450. layer.open({
  451. type: 2,
  452. content: "../CommonHtml/Leader.html?wid=" + str, //iframe的url,no代表不显示滚动条
  453. title: '领导批示',
  454. area: ['45%', '40%'], //宽高
  455. });
  456. }
  457. //市长批示
  458. function city(str) {
  459. layer.open({
  460. type: 2,
  461. content: "../CommonHtml/shizhang.html?wid=" + str, //iframe的url,no代表不显示滚动条
  462. title: '领导批示',
  463. area: ['45%', '40%'], //宽高
  464. });
  465. }
  466. //办理
  467. function bl(str) {
  468. layer.open({
  469. type: 2,
  470. content: "../CommonHtml/banli.html?wid=" + str, //iframe的url,no代表不显示滚动条
  471. title: '办理工单',
  472. area: ['45%', '40%'], //宽高
  473. });
  474. }
  475. //督办
  476. function Supervision(str) {
  477. layer.open({
  478. type: 2,
  479. content: "../CommonHtml/Supervision_.html?wid=" + str + '&type=1', //iframe的url,no代表不显示滚动条
  480. title: '督办',
  481. area: ['35%', '30%'], //宽高
  482. });
  483. }
  484. //督查
  485. function Supervision_(str) {
  486. layer.open({
  487. type: 2,
  488. content: "../CommonHtml/Supervision_.html?wid=" + str + '&type=2', //iframe的url,no代表不显示滚动条
  489. title: '监察',
  490. area: ['35%', '30%'], //宽高
  491. });
  492. }
  493. //强制结案
  494. function StrongLawsuit(str) {
  495. layer.open({
  496. type: 2,
  497. content: "../CommonHtml/StrongLawsuit.html?wid=" + str, //iframe的url,no代表不显示滚动条
  498. title: '强制结案',
  499. area: ['45%', '52%'], //宽高
  500. });
  501. }
  502. //回退BackDtail
  503. function BackDtail(str) {
  504. layer.open({
  505. type: 2,
  506. content: "../CommonHtml/BackDatil.html?wid=" + str, //iframe的url,no代表不显示滚动条
  507. title: '工单回退',
  508. area: ['45%', '40%'], //宽高
  509. });
  510. }
  511. //查收
  512. function cs(str) {
  513. layer.confirm('确定要查收?', {
  514. btn: ['是', '否'] //按钮
  515. }, function() {
  516. $.post(huayi.config.callcenter_url + "WorkOrder/ReceiveWorkOrder", {
  517. workorderid: str,
  518. token: $.cookie("token")
  519. }, function(result) {
  520. result = JSON.parse(result);
  521. if(result.state.toLowerCase() == "success") {
  522. layer.msg("查收成功");
  523. load();
  524. }
  525. })
  526. });
  527. }
  528. //收回
  529. function sh(str) {
  530. layer.confirm('确定要回收?', {
  531. btn: ['是', '否'] //按钮
  532. }, function() {
  533. $.post(huayi.config.callcenter_url + "WorkOrder/TakeBackWorkOrder", {
  534. workorderid: str,
  535. token: $.cookie("token")
  536. }, function(result) {
  537. result = JSON.parse(result);
  538. if(result.state.toLowerCase() == "success") {
  539. layer.msg("回收");
  540. load();
  541. }
  542. })
  543. });
  544. }
  545. //强制回收
  546. function recycles() {
  547. layer.confirm('确定要强制退回吗?', {
  548. btn: ['是', '否'] //按钮
  549. });
  550. }
  551. //退回申请
  552. function th(str) {
  553. layer.open({
  554. type: 2,
  555. content: "../CommonHtml/tuihuisq.html?wid=" + str, //iframe的url,no代表不显示滚动条
  556. title: '申请退回工单',
  557. area: ['35%', '30%'], //宽高
  558. });
  559. }
  560. //审核退回申请
  561. function shth(str) {
  562. layer.open({
  563. type: 2,
  564. content: "../CommonHtml/shth.html?wid=" + str, //iframe的url,no代表不显示滚动条
  565. title: '审核退回申请',
  566. area: ['35%', '30%'], //宽高
  567. });
  568. }
  569. //办理
  570. // function th(str) {
  571. // layer.open({
  572. // type: 2,
  573. // content: "../CommonHtml/tuihuisq.html?wid=" + str, //iframe的url,no代表不显示滚动条
  574. // title: '办理工单',
  575. // area: ['35%', '30%'], //宽高
  576. // });
  577. // }
  578. //申请延时
  579. function ys(str) {
  580. layer.open({
  581. type: 2,
  582. content: "../CommonHtml/Timesq.html?wid=" + str, //iframe的url,no代表不显示滚动条
  583. title: '申请延时',
  584. area: ['45%', '40%'], //宽高
  585. });
  586. }
  587. //审核申请延时
  588. function shys(str) {
  589. layer.open({
  590. type: 2,
  591. content: "../CommonHtml/shtime.html?wid=" + str, //iframe的url,no代表不显示滚动条
  592. title: '审核延时申请',
  593. area: ['45%', '40%'], //宽高
  594. });
  595. }
  596. //诉求回访
  597. function hf(str) {
  598. layer.open({
  599. type: 2,
  600. content: "../CommonHtml/Back.html?wid=" + str, //iframe的url,no代表不显示滚动条
  601. title: '工单回访',
  602. area: ['45%', '40%'], //宽高
  603. });
  604. }
  605. //重办工单
  606. function cb(str) {
  607. layer.open({
  608. type: 2,
  609. content: "../CommonHtml/Cb.html?wid=" + str, //iframe的url,no代表不显示滚动条
  610. title: '重办工单',
  611. area: ['45%', '40%'], //宽高
  612. });
  613. }
  614. //结案
  615. function Lawsuit(str) {
  616. layer.open({
  617. type: 2,
  618. content: "../CommonHtml/lawsuits.html?wid=" + str, //iframe的url,no代表不显示滚动条
  619. title: '诉求单结案',
  620. area: ['45%', '40%'], //宽高
  621. });
  622. }
  623. $('.Appeal').click(function() {
  624. layer.open({
  625. type: 2,
  626. content: "../CommonHtml/AddAppeal.html?wid=", //iframe的url,no代表不显示滚动条
  627. title: '新增诉求',
  628. area: ['85%', '80%'], //宽高
  629. });
  630. })
  631. //上传文件
  632. function upload() {
  633. if(document.getElementById("upFile").files.length > 0) {
  634. var formData = new FormData();
  635. formData.append("upFile", document.getElementById("upFile").files[0]);
  636. formData.append("token", $.cookie("token"));
  637. $.ajax({
  638. url: huayi.config.callcenter_url + "/WorkOrder/UploadFile",
  639. type: "POST",
  640. data: formData,
  641. /**
  642. *必须false才会自动加上正确的Content-Type
  643. */
  644. contentType: false,
  645. /**
  646. * 必须false才会避开jQuery对 formdata 的默认处理
  647. * XMLHttpRequest会对 formdata 进行正确的处理
  648. */
  649. processData: false,
  650. success: function(result) {
  651. document.getElementById("upFile").outerHTML = document.getElementById("upFile").outerHTML;
  652. $("#upFile").change(function() {
  653. upload();
  654. });
  655. var r = $.parseJSON(result);
  656. if(r.state.toLowerCase() == "success") {
  657. $(".fjnr").text(r.data);
  658. $("#scfj").show();
  659. }
  660. }
  661. });
  662. } else {
  663. layer.confirm('请上传文件!', {
  664. btn: ['确定']
  665. });
  666. }
  667. }
  668. </script>
  669. </body>
  670. </html>