ext_lf_lfryMine.jsp 9.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257
  1. <%-- 微信 来访我的 --%>
  2. <%@ page language="java" pageEncoding="UTF-8" %>
  3. <%@ taglib uri="/ssTag" prefix="ss" %>
  4. <%@ page import="base.WechatC" %>
  5. <!DOCTYPE html>
  6. <html lang="en">
  7. <head>
  8. <meta charset="UTF-8">
  9. <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
  10. <link rel="stylesheet" href="/skin/easy/Main.css?v=1.0.0">
  11. <script type="text/javascript" src="/ss/jquery/jquery-1.7.2.min.js"></script>
  12. <script type="text/javascript" src="/ss/js/base.js"></script>
  13. <script type="text/javascript" src="/ss/js/common.js"></script>
  14. <script type="text/javascript" src="/ss/js/display.js"></script>
  15. <script type="text/javascript" src="/ss/js/edit.js"></script>
  16. <title>我的</title>
  17. <style>
  18. .mobileSearch-div{
  19. margin: 1rem auto;
  20. }
  21. .mobileAdd-button{
  22. width: 1.3rem;
  23. height:1.3rem;
  24. background: transparent;
  25. margin-right: 0.3rem;
  26. }
  27. .mobileAdd-button::after{
  28. filter: none;
  29. }
  30. .mobileAdd-button:active{
  31. background: transparent;
  32. }
  33. </style>
  34. </head>
  35. <body class="mobileApply-bg">
  36. <%-- ${data}--%>
  37. <%-- <a href="<ss:serv name='lf_mine_ck' dest='lf_mine_info' />&lp=d27f08d10cb64d6591c5f556dd880090">跳到来访查看</a> --%>
  38. <div class="mobileSearch-div" style="display:flex;justify-content:flex-end;padding-right: 0.5rem;">
  39. <!-- <div class="mobileSearch-input-div">
  40. <input type="text">
  41. <span class="mobileSearch-icon"></span>
  42. </div> -->
  43. <button class="mobileSearch-button" style="height: 36px;" onclick="goLink('<%=WechatC.HOST_byWechat%>/extRoot?type=22&biz=lf_inp')" ><span class="mobileAdd-button" ></span>增加</button>
  44. </div>
  45. <div id="mobileLf-div" style="padding-right: 0.5rem;">
  46. <!-- <div class="mobileLf-card">
  47. <div class="mobileLf-card-ing-tag">审核中</div>
  48. <p class="mobileLf-title">住宿餐饮</p>
  49. <p>姓名:李四</p>
  50. <p>个人电话:13800138000</p>
  51. <p>预约开始时间:2024/08/10 18:33</p>
  52. </div>
  53. <div class="mobileLf-card">
  54. <p class="mobileLf-title">住宿餐饮<span class="mobileLf-card-agree-tag">同意</span></p>
  55. <p>姓名:李四</p>
  56. <p>个人电话:13800138000</p>
  57. <p>预约开始时间:2024/08/10 18:33</p>
  58. </div>
  59. <div class="mobileLf-card">
  60. <p class="mobileLf-title">住宿餐饮<span class="mobileLf-card-refuse-tag">退回</span></p>
  61. <p>姓名:李四</p>
  62. <p>个人电话:13800138000</p>
  63. <p>预约开始时间:2024/08/10 18:33</p>
  64. </div> -->
  65. </div>
  66. <%--<% String sharedValue = "2"; %>
  67. <%@ include file="/page/ext_lf_index_footer.jsp" %> --%>
  68. <script>
  69. </script>
  70. <script>
  71. let pageNumber = 1;
  72. let isLoading = false;
  73. let hasMoreData = true;
  74. let gr = document.createDocumentFragment();
  75. // 渲染列表项的函数
  76. function renderItem(item) {
  77. var div = document.createElement('div');
  78. div.className = 'mobileLf-card';
  79. div.onclick = function () {
  80. location.href = `<ss:serv name='lf_lfryMine_ck' dest='lf_mine_info' />&lp=` + item.wblp;
  81. };
  82. if(item.lczt == '录入'){
  83. item.lczt = '审核中';
  84. item.lcztm = '11';
  85. }
  86. div.innerHTML = (item.lcztm == '11' && item.is_late == '0'
  87. ? '<div class="mobileLf-card-ing-tag">' + item.lczt + '</div>'
  88. : '') +
  89. '<p class="mobileLf-title">' +
  90. item.lflb +
  91. (item.lcztm == '51'
  92. ? '<span class="mobileLf-card-agree-tag">' + item.lczt + '</span>'
  93. : item.lcztm == '55'
  94. ? '<span class="mobileLf-card-refuse-tag">' + item.lczt + '</span>'
  95. : (item.lcztm == '11' && item.is_late == '1')
  96. ? '<span class="mobileLf-card-expired-tag">已过期</span>'
  97. : item.lcztm == '59'
  98. ? '<span class="mobileLf-card-refuse-tag">退回</span>'
  99. : '') +
  100. '</p>' +
  101. (item.jfrxm ? '<p>受访人:' + item.jfrxm + '</p>' : '') +
  102. '<p>预约开始时间:' + item.yykssj + '</p>';
  103. return div;
  104. }
  105. // 获取下一页数据
  106. function getNextPageData(pageNum){
  107. if (isLoading || !hasMoreData) return;
  108. isLoading = true;
  109. $.ajax({
  110. url: "<ss:serv name='lf_initLfryMineByAjax'/>",
  111. type: "post",
  112. dataType: "json",
  113. data: {
  114. 'pageNum': pageNum
  115. },
  116. success: function(result) {
  117. if (result.ssCode == 1) {
  118. const data = result.data;
  119. if (!data || data.length === 0) {
  120. hasMoreData = false;
  121. return;
  122. }
  123. let fragment = document.createDocumentFragment();
  124. data.forEach(function(item) {
  125. fragment.appendChild(renderItem(item));
  126. });
  127. document.getElementById('mobileLf-div').appendChild(fragment);
  128. pageNumber++;
  129. } else {
  130. window.document.location.href = window.location.origin + '/page/ext_lf_wechatIndex.jsp';
  131. }
  132. },
  133. complete: function() {
  134. isLoading = false;
  135. }
  136. });
  137. }
  138. // 初始加载第一页
  139. getNextPageData(pageNumber);
  140. // 节流函数
  141. function throttle(func, wait) {
  142. let timeout = null;
  143. let previous = 0;
  144. return function() {
  145. let now = Date.now();
  146. let remaining = wait - (now - previous);
  147. if (remaining <= 0 || remaining > wait) {
  148. if (timeout) {
  149. clearTimeout(timeout);
  150. timeout = null;
  151. }
  152. previous = now;
  153. func.apply(this, arguments);
  154. } else if (!timeout) {
  155. timeout = setTimeout(() => {
  156. previous = Date.now();
  157. timeout = null;
  158. func.apply(this, arguments);
  159. }, remaining);
  160. }
  161. }
  162. }
  163. // 滚动检查函数
  164. function checkScrollAndLoad() {
  165. // 获取页面总高度、视窗高度、滚动位置
  166. const scrollHeight = document.documentElement.scrollHeight || document.body.scrollHeight;
  167. const scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop;
  168. const clientHeight = window.innerHeight || document.documentElement.clientHeight;
  169. // 当距离底部还有10%的距离时触发加载
  170. const threshold = scrollHeight * 0.1;
  171. if (scrollHeight - scrollTop - clientHeight <= threshold) {
  172. getNextPageData(pageNumber);
  173. }
  174. }
  175. // 添加滚动监听,使用节流函数控制触发频率(这里设置为500ms)
  176. window.addEventListener('scroll', throttle(checkScrollAndLoad, 500));
  177. function goLink(value){
  178. window.location.href = value
  179. }
  180. function goIndex(value){
  181. window.document.location.href = window.location.origin + '/page/ext_lf_index.jsp?t='+value
  182. }
  183. function closePage() {
  184. // 定义关闭页面的函数
  185. function closeWindow() {
  186. if (typeof WeixinJSBridge == "undefined") {
  187. // 监听WeixinJSBridgeReady事件
  188. document.addEventListener('WeixinJSBridgeReady', function () {
  189. WeixinJSBridge.call('closeWindow');
  190. }, false);
  191. } else {
  192. // 如果是微信浏览器,直接调用
  193. WeixinJSBridge.call('closeWindow');
  194. }
  195. }
  196. // 调用关闭页面函数
  197. closeWindow();
  198. // 如果不是微信浏览器,尝试使用window.close()关闭
  199. if (!/MicroMessenger/i.test(navigator.userAgent)) {
  200. window.close();
  201. window.history.back();
  202. }
  203. }
  204. </script>
  205. </body>
  206. </html>