hoteldtl.html 37 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="maximum-scale=1.0,minimum-scale=1.0,user-scalable=0,width=device-width,initial-scale=1.0" />
  6. <meta name="format-detection" content="telephone=no,email=no,date=no,address=no">
  7. <title></title>
  8. <link rel="stylesheet" type="text/css" href="../../css/api.css" />
  9. <link rel="stylesheet" type="text/css" href="../../css/swiper.min.css" />
  10. <link rel="stylesheet" type="text/css" href="../../css/weui.min.css" />
  11. <link rel="stylesheet" type="text/css" href="../../css/star-rating-svg.css?v=1.2" />
  12. <link rel="stylesheet" type="text/css" href="../../css/iconfont.css" />
  13. <link rel="stylesheet" type="text/css" href="../../css/style.css?v=1.2" />
  14. <style>
  15. .feed-item{
  16. width: 99%;
  17. border-bottom:1px solid #e8e8e8;
  18. position:relative;
  19. padding-top: 0.2rem;
  20. }
  21. .feed-item ul{
  22. width:100%;
  23. clear: both;
  24. }
  25. .fl {
  26. float:left;
  27. }
  28. .feed-item-right{
  29. padding-left: 0.2rem;
  30. }
  31. .feed-item-titel{
  32. font-size: 0.24rem;
  33. color: #999;
  34. padding: 0.2rem 0;
  35. }
  36. .user-head{
  37. width: 0.7rem;
  38. height: 0.7rem;
  39. border-radius:50%;
  40. }
  41. .feed-img{
  42. float: left;
  43. width: 1.2rem;
  44. height: 1.2rem;
  45. padding-right: 0.3rem;
  46. }
  47. .my-rating{
  48. position:absolute;
  49. right: 0;
  50. top: 0.2rem;
  51. }
  52. .my-rating .jq-star {
  53. width: 0.3rem !important;
  54. height: 0.3rem !important;
  55. }
  56. .hotel-top{
  57. width:100%;
  58. height: 4.03rem;
  59. background: url('../../image/881649.jpg') ;
  60. background-repeat:no-repeat;
  61. background-size:100% 100%;
  62. position: relative;
  63. }
  64. .hotel-top-line{
  65. width:100%
  66. }
  67. .weui-tab.tabh {
  68. height: 2.7rem;
  69. }
  70. .hotel-title{
  71. font-size: 0.38rem;
  72. height: 1rem;
  73. line-height: 1rem;
  74. font-weight: 500;
  75. color: #000;
  76. }
  77. .hotel-title span{
  78. float:right;
  79. font-size: 0.2rem;
  80. }
  81. .hotel-title span img {
  82. width: 0.38rem;
  83. }
  84. .hotel-goods{
  85. width:100%;
  86. height: 1rem;
  87. border-bottom:1px solid #e8e8e8;
  88. position:relative;
  89. }
  90. .hotel-goods li{
  91. width:25%;
  92. float:left;
  93. height: 1rem;
  94. line-height: 1rem;
  95. text-align:center;
  96. }
  97. #store_description{
  98. width: 100%;
  99. overflow: hidden;
  100. display: -webkit-box;
  101. -webkit-line-clamp: 2;
  102. -webkit-box-orient: vertical;
  103. word-break: break-all;
  104. font-size: 0.26rem;
  105. color: #606266;
  106. }
  107. #store_descriptionx img {
  108. width: 100%;
  109. }
  110. .hotel-goods-active{
  111. color: #d9251c;
  112. }
  113. .goods-tag span{
  114. margin-right: 0.17rem;
  115. padding: 0.01rem 0.1rem;
  116. margin-top: 0.2rem;
  117. }
  118. .goods-title {
  119. height: auto;
  120. overflow : hidden;
  121. text-overflow: ellipsis;
  122. display: -webkit-box;
  123. -webkit-line-clamp: 2;
  124. -webkit-box-orient: vertical;
  125. }
  126. .goods-price, .goods-tag, .goods-title {
  127. margin-top: 0.2rem;
  128. }
  129. .category-item{
  130. width:100%;
  131. min-height: 0rem;
  132. height:auto;
  133. background:#ffffff;
  134. position:absolute;
  135. top: 1.01rem;
  136. z-index:999;
  137. border-bottom:1px solid #e8e8e8;
  138. padding: 0.1em;
  139. box-sizing:border-box;
  140. }
  141. .category-list{
  142. padding:3px;
  143. width:25%;
  144. float:left;
  145. box-sizing:border-box;
  146. }
  147. .sort-img,.sort-img2{
  148. width:18px;
  149. vertical-align:middle;
  150. }
  151. .category-list-span{
  152. border:1px solid #e8e8e8;
  153. width:90%;
  154. border-radius:3px;
  155. text-align:center;
  156. padding-top:6px;
  157. padding-bottom:6px;
  158. padding-left:3px;
  159. padding-right:3px;
  160. }
  161. .cate-active{
  162. color:#D9251C;
  163. border:1px solid #D9251C;
  164. }
  165. .share-item{
  166. position:fixed;
  167. left:0px;right:0px;
  168. bottom:0px;
  169. height: 3.9rem;
  170. background:#f2f2f2;
  171. border-top:1px solid #E8E8E8;
  172. z-index:9999;
  173. }
  174. .share-item-tips{
  175. height: 0.28rem;
  176. line-height: 0.28rem;
  177. width:100%;
  178. text-align:center;
  179. font-size: 0.28rem;
  180. padding: 0.38rem 0;
  181. }
  182. .share-item-cent{
  183. height: 1.8rem;
  184. width: 100%;
  185. }
  186. .share-item-cent li{
  187. width:33.3%;
  188. text-align:center;
  189. float:left;
  190. font-size: 0.28rem;
  191. }
  192. .share-item-cent img{
  193. width: 0.9rem;
  194. }
  195. .share-item-cancel{
  196. height: 0.98rem;
  197. line-height: 0.98rem;
  198. width:100%;
  199. text-align:center;
  200. background:#ffffff;
  201. font-size: 0.28rem;
  202. }
  203. .business-time{
  204. width:100%;
  205. padding: 0 0.32rem;
  206. box-sizing:border-box;
  207. }
  208. .padl {
  209. padding-left: 0.13rem;
  210. }
  211. .tag-item{
  212. float: left;
  213. line-height: normal;
  214. font:inherit;
  215. padding:0.01rem 0.1rem;
  216. background: #ffffff;
  217. color: #d9251c;
  218. font-size:0.24rem;
  219. font-weight: normal;
  220. text-align: center;
  221. position: relative;
  222. }
  223. .tag-item:after {
  224. content: ' ';
  225. position: absolute;
  226. pointer-events: none;
  227. box-sizing: border-box;
  228. -webkit-border-radius: 0.1rem;
  229. -moz-border-radius: 0.1rem;
  230. border-radius: 0.1rem;
  231. top: -50%;
  232. left: -50%;
  233. right: -50%;
  234. bottom: -55%;
  235. -webkit-transform: scale(0.5);
  236. transform: scale(0.5);
  237. border: 1px solid #d9251c;
  238. }
  239. .iconfont {
  240. color: #ffffff;
  241. }
  242. .weui-mask {
  243. position: fixed;
  244. z-index: 1000;
  245. top: 0;
  246. right: 0;
  247. left: 0;
  248. bottom: 0;
  249. background: rgba(0, 0, 0, .6);
  250. }
  251. .weui-mask_transparent{
  252. position: fixed;
  253. z-index: 1000;
  254. top: 0;
  255. right: 0;
  256. left: 0;
  257. bottom: 0;
  258. }
  259. .swiper-container-horizontal>.swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {
  260. bottom: 0;
  261. }
  262. .swiper-pagination-bullet {
  263. background: #fff;
  264. opacity: .8;
  265. }
  266. .swiper-pagination-bullet-active {
  267. background: #d9251c;
  268. }
  269. .weui-bar__item_on span {
  270. color: #d9251c;
  271. border-bottom: 0.2em solid;
  272. padding-bottom: 0.2rem;
  273. }
  274. .weui-navbar__item {
  275. padding: 0.1rem 0;
  276. font-size: 0.28rem;
  277. padding-bottom: 0;
  278. }
  279. .placeholder {
  280. text-align: center;
  281. padding: 0.3rem 0;
  282. line-height: 0;
  283. }
  284. .placeholder img {
  285. padding-bottom: 0.3rem;
  286. }
  287. .placeholder p {
  288. font-size: 0.26rem;
  289. }
  290. .weui-cell:before {
  291. left: 0;
  292. }
  293. .weui-cell {
  294. padding: 0.16rem 0;
  295. font-size: 0.3rem;
  296. }
  297. .weui-navbar__item.weui-bar__item_on {
  298. background-color: #ffffff;
  299. }
  300. .fixed_top {
  301. background-color: #fff;
  302. padding-bottom: 0.2rem;
  303. }
  304. .weui-gallery {
  305. z-index: 10000;
  306. }
  307. .weui-navbar__item:after {
  308. border-right: 0;
  309. }
  310. #store_phone a, #store_phone a:hover {
  311. color: #d9251c;
  312. }
  313. .footerbtn {
  314. position: fixed;
  315. bottom: 20px;
  316. z-index: 999;
  317. }
  318. .fixed_top .hotel-top-search, .fixed_top .hotel-top-back {
  319. background-color: rgba(0, 0, 0, 0.5);
  320. }
  321. .swiper-container {
  322. width: 100% !important;
  323. height: 4.03rem;
  324. z-index: 99;
  325. transform:translate3d(0,0,0);
  326. overflow:hidden;
  327. }
  328. .swiper-container-free-mode > .swiper-wrapper {
  329. -webkit-transition-timing-function: linear; /*之前是ease-out*/
  330. -moz-transition-timing-function: linear;
  331. -ms-transition-timing-function: linear;
  332. -o-transition-timing-function: linear;
  333. transition-timing-function: linear;
  334. margin: 0 auto;
  335. transform:translate3d(0,0,0)
  336. }
  337. .swiper-slide img{
  338. width:100%;
  339. height:100%;
  340. transform:translate3d(0,0,0)
  341. }
  342. .swiper-slide {
  343. width: 100%;
  344. }
  345. .bg-full {
  346. background-size: cover !important;
  347. -webkit-background-size: cover !important;
  348. -o-background-size: cover !important;
  349. background-position: center 0;
  350. background-repeat: no-repeat !important;
  351. height: auto;
  352. width: 100% !important;
  353. }
  354. .ft{
  355. position: fixed;
  356. left: 0;
  357. right: 0;
  358. top:10px;
  359. z-index: 999;
  360. transform: translateZ(0);-webkit-transform: translateZ(0);
  361. /* background-color: #fff; */
  362. }
  363. </style>
  364. <script>
  365. (function(w, d, m) {
  366. function r() {
  367. var t = 100,
  368. o = 750,
  369. e = d.documentElement.clientWidth || w.innerWidth,
  370. n = m.max(m.min(e, 480), 320),
  371. h = 50;
  372. 320 >= n && (h = m.floor(n / o * t * .99)),
  373. n > 320 && 362 >= n && (h = m.floor(n / o * t * 1)),
  374. n > 362 && 375 >= n && (h = m.floor(n / o * t * 1)),
  375. n > 375 && (h = m.floor(n / o * t * .97)),
  376. d.querySelector("html").style.fontSize = (e / 7.5) + "px"
  377. };
  378. r();
  379. w.onresize = function() {
  380. r()
  381. }
  382. })(window, document, Math);
  383. </script>
  384. </head>
  385. <body>
  386. <div class="topbar"></div>
  387. <section class="ft" style="padding: 0;padding-bottom: 0.2rem;" id="ft">
  388. <div class="hotel-top-line">
  389. <ul class="flex-box flex-v-ce">
  390. <li style="width: 0.61rem;padding-left: 0.04rem;" class="back-btn">
  391. <div class="hotel-top-back"><span class="iconfont">&#xe61e;</span></div>
  392. </li>
  393. <li class="flex-1" style="padding: 0 0.1rem;">
  394. <div class="hotel-top-search"><img src="../../image/search_2.png" /> 搜索商品</div>
  395. </li>
  396. <li style="width: 0.61rem;padding-right: 0.04rem;">
  397. <div class="hotel-top-back" id="share-btn" style="float:right;"><span class="iconfont">&#xe648;</span></div>
  398. </li>
  399. </ul>
  400. </div>
  401. </section>
  402. <div class="hotel-top" id="div_top">
  403. <div class="swiper-container">
  404. <div class="swiper-wrapper">
  405. </div>
  406. <div class="swiper-pagination"></div>
  407. </div>
  408. </div>
  409. <section class="hotel-item">
  410. <div class="hotel-title font-rem11">
  411. <h id="store_name">乐辰酒店</h> <span onclick="chkfavorite()"><img id="favorite" src="../../image/goods_buy_favorite.png"></span>
  412. </div>
  413. <div id="store_description"></div>
  414. </section>
  415. <div class="h10"></div>
  416. <div class="weui-tab tabh" style="padding: 0;">
  417. <div class="weui-navbar">
  418. <div class="weui-navbar__item weui-bar__item_on" href="#tab1">
  419. <span>服务项目</span>
  420. </div>
  421. <div class="weui-navbar__item" href="#tab2">
  422. <span>评价</span>
  423. </div>
  424. <div class="weui-navbar__item" href="#tab3">
  425. <span>酒店信息</span>
  426. </div>
  427. </div>
  428. <div class="weui-tab__panel">
  429. <div id="tab1" class="weui_tab_bd_item weui_tab_bd_item_active"></div>
  430. <div id="tab2" class="weui_tab_bd_item feed-list" page="1" style="padding-top: 0.2rem; padding:0 0.32rem;"></div>
  431. <div id="tab3" class="weui_tab_bd_item" style="padding: 0 0.32rem;">
  432. <div style="background:#ffffff;width:100%;padding-bottom: 1.2rem;">
  433. <section style="padding: 0;">
  434. <div class="hotel-title">
  435. <h id="store_namex" style="font-size: 0.3rem;color: #606266;">商家信息</h>
  436. </div>
  437. <div id="store_descriptionx"></div>
  438. <div class="h10"></div>
  439. <div class="weui-cells">
  440. <div class="weui-cell">
  441. <div class="weui-cell__bd">
  442. <p>酒店地址</p>
  443. </div>
  444. <div class="weui-cell__ft" id="store_address"></div>
  445. </div>
  446. <div class="weui-cell">
  447. <div class="weui-cell__bd">
  448. <p>联系酒店</p>
  449. </div>
  450. <div class="weui-cell__ft" id="store_phone"></div>
  451. </div>
  452. </div>
  453. <div class="h20"></div>
  454. </section>
  455. </div>
  456. <div class="footerbtn">
  457. <div class="m-bottom" feedback="false" style="width:6.86rem;border-radius: 0.15rem;">您的入住意见反馈(反馈送圈币)</div>
  458. </div>
  459. </div>
  460. </div>
  461. </div>
  462. <div class="hotel-goods">
  463. <ul>
  464. <li class="gsort hotel-goods-active goods-all" tag="praise">综合</li>
  465. <li class="gsort goods-new" tag="goods_commonid">上新<img class="sort-img" src="../../image/sort.png" /></li>
  466. <li class="gsort goods-sprice" tag="goods_price">价格<img class="sort-img" src="../../image/sort.png" /></li>
  467. <li id="category-btn" tag="gc_id_1">分类<img class="sort-img2" src="../../image/sort_down2.png" /></li>
  468. </ul>
  469. <div id="category-item" class="category-item mask-hidden">
  470. </div>
  471. </div>
  472. <section>
  473. <div class="h10"></div>
  474. <div class="goods-list" page="1"></div>
  475. </section>
  476. <div class="h50"></div>
  477. <div class="share-item mask-hidden">
  478. <div>
  479. <div class="share-item-tips">分享至</div>
  480. <div class="share-item-cent">
  481. <ul>
  482. <li class="share-item-friend"><img src="../../image/share_friend.png" />
  483. <p>微信好友</p>
  484. </li>
  485. <li class="share-item-cale"><img src="../../image/share_cale.png" />
  486. <p>微信朋友圈</p>
  487. </li>
  488. <li class="share-item-qq"><img src="../../image/share_qq.png" />
  489. <p>QQ</p>
  490. </li>
  491. </ul>
  492. </div>
  493. <div class="share-item-cancel">取消</div>
  494. </div>
  495. </div>
  496. <div class="back-top mask-hidden" id="fix1"></div>
  497. </body>
  498. <script type="text/javascript" src="../../script/api.js"></script>
  499. <script type="text/javascript" src="../../script/swiper.min.js"></script>
  500. <script type="text/javascript" src="../../script/jquery.min.js"></script>
  501. <script type="text/javascript" src="../../script/imagesloaded.pkgd.min.js"></script>
  502. <script type="text/javascript" src="../../script/jquery.tap.js"></script>
  503. <script type="text/javascript" src="../../script/jquery.star-rating-svg.js"></script>
  504. <script type="text/javascript">
  505. var _storeid = '';
  506. var _cateid = '';
  507. var _sort = "id";
  508. var _minsort = '';
  509. var _desc = "desc";
  510. var _shareimg = '';
  511. var _description = '';
  512. var _title = '';
  513. var _shareurl = '';
  514. var _page = '1';
  515. var _data_toggle = "#tab1";
  516. var imgUrl = "";
  517. apiready = function() {
  518. _storeid = api.pageParam.keyid;
  519. $api.fixTabBar($api.byId('footerbtn'))
  520. $api.fixIos7Bar($api.byId('ft'));
  521. $(".goods-list").attr("page", "1");
  522. setIosTopBar();
  523. getstoreCategory();
  524. getRouteData(_storeid);
  525. getRouteGoodsData();
  526. getstorefeedbackList();
  527. api.addEventListener({
  528. name: 'scrolltobottom',
  529. extra: {
  530. threshold: 200
  531. }
  532. }, function(ret, err) {
  533. if (_data_toggle == "#tab1") {
  534. getRouteGoodsData();
  535. }
  536. if (_data_toggle == "#tab2") {
  537. getstorefeedbackList();
  538. }
  539. });
  540. };
  541. $(function() {
  542. $('.weui-navbar__item').on('click', function() {
  543. $(this).addClass('weui-bar__item_on').siblings('.weui-bar__item_on').removeClass('weui-bar__item_on');
  544. $(".weui-tab__panel .weui_tab_bd_item_active").removeClass('weui_tab_bd_item_active');
  545. _data_toggle = jQuery(this).attr("href");
  546. $(_data_toggle).addClass("weui_tab_bd_item_active");
  547. if (_data_toggle == "#tab1") {
  548. $(".hotel-goods").show();
  549. $(".goods-list").fadeIn('1500');
  550. // $(".weui-tab").css("height", "2.2rem");
  551. } else {
  552. $(".hotel-goods").fadeOut('1500');
  553. $(".goods-list").fadeOut('1500');
  554. $(".weui-tab").css("height", "auto");
  555. }
  556. if (_data_toggle == "#tab2") {
  557. $("#tab2").attr('page', '1');
  558. }
  559. });
  560. $(window).scroll(function() {
  561. // var a = document.getElementById("div_top").offsetTop;
  562. // console.log($(window).scrollTop());
  563. if ($(window).scrollTop()>=200) {
  564. $(".ft").addClass("fixed_top");
  565. }else{
  566. $(".ft").removeClass("fixed_top");
  567. }
  568. // if ($("#div_top").outerHeight() <= $(window).scrollTop()) {
  569. // $(".ft").addClass("fixed_top");
  570. // }
  571. });
  572. $('img').error(function() {
  573. $(this).attr('src', '/image/logo2.png');
  574. })
  575. });
  576. function getRouteData(_storeid) {
  577. $.ajax({
  578. url: siteurl + 'v1/store/info',
  579. data: {
  580. store_id: _storeid
  581. },
  582. headers: {
  583. "X-TOKEN": $api.getStorage("accesstoken")
  584. },
  585. dataType: 'json',
  586. type: 'post',
  587. success: function(datas) {
  588. if (datas.result) {
  589. var img = siteurl + "uploads/home/store/" + datas.data.store_id + "/" + datas.data.store_banner;
  590. $("#store_name").html(datas.data.store_name);
  591. $("#store_description").html(datas.data.store_summary);
  592. $(".hotel-top").css("background-image", "url(" + siteurl + "uploads/home/store/" + datas.data.store_id + "/" +
  593. datas.data.store_banner + ")");
  594. _shareimg = siteurl + "uploads/home/store/" + datas.data.store_id + "/" + datas.data.store_logo;
  595. _title = datas.data.store_name;
  596. _shareurl = siteurl + 'v1/view/market.html';
  597. datas.data.has_collected ? $("#favorite").attr("src", "../../image/favorite_hl.png") : $("#favorite").attr(
  598. "src", "../../image/goods_buy_favorite.png");
  599. $(".m-bottom").attr("feedback", datas.data.can_feedback);
  600. $(".weui-tab.tabh .weui-navbar__item:nth-child(2)").append(datas.data.feedback_count);
  601. $("#store_descriptionx").html(datas.data.store_description);
  602. $("#store_address").html(datas.data.store_address);
  603. if (datas.data.store_phone) {
  604. $("#store_phone").html('<a href="tel:' + datas.data.store_phone + '">' + datas.data.store_phone + '</a>');
  605. } else {
  606. $("#store_phone").html('<a style="color: rgba(0,0,0,.5);">暂无</a>');
  607. }
  608. if (datas.data.store_slide.length > 1) {
  609. imgUrl = datas.data.store_slide[0];
  610. } else {
  611. imgUrl = siteurl + "uploads/home/store/" + datas.data.store_id + "/" + datas.data.store_banner;
  612. }
  613. if (datas.data.store_slide.length > 0) {
  614. $.each(datas.data.store_slide, function(index, item) {
  615. if (item.indexOf('jpg') != -1) {
  616. $(".swiper-wrapper").append('<div class="swiper-slide" type="0" keyid="0"><img src="' + item +'"/></div>');
  617. // $(".swiper-wrapper").append('<div class="swiper-slide bg-full" style="background: url(' + item + ');">');
  618. }
  619. })
  620. }
  621. var swiper = new Swiper('.swiper-container', {
  622. allowSlidePrev: true,
  623. autoplay: {
  624. disableOnInteraction: false
  625. },
  626. loop: true,
  627. pagination: {
  628. el: '.swiper-pagination',
  629. },
  630. });
  631. } else {
  632. errcode(datas, datas.code);
  633. }
  634. function_name();
  635. }
  636. });
  637. }
  638. function chkfavorite() {
  639. $("#favorite").removeAttr("style", "");
  640. $.ajax({
  641. url: siteurl + 'v1/favorites/collect',
  642. data: {
  643. type: 'store',
  644. fav_id: _storeid
  645. },
  646. headers: {
  647. "X-TOKEN": $api.getStorage("accesstoken")
  648. },
  649. dataType: 'json',
  650. type: 'post',
  651. success: function(datas) {
  652. $("#favorite").css("animation", "bounceOut 2s");
  653. if (datas.result) {
  654. datas.data.action == 'add' ? $("#favorite").attr("src", "../../image/favorite_hl.png") : $("#favorite").attr(
  655. "src", "../../image/goods_buy_favorite.png");
  656. var _msg = datas.data.action == 'add' ? "收藏成功" : "取消收藏";
  657. // console.log(_msg);
  658. api.toast({
  659. msg: _msg
  660. });
  661. } else {
  662. errcode(datas, datas.code);
  663. }
  664. }
  665. });
  666. }
  667. function getstoreCategory() {
  668. $.ajax({
  669. url: siteurl + 'v1/entry/storeCategory',
  670. data: {
  671. type: 'store',
  672. store_id: _storeid
  673. },
  674. headers: {
  675. "X-TOKEN": $api.getStorage("accesstoken")
  676. },
  677. dataType: 'json',
  678. type: 'post',
  679. success: function(datas) {
  680. if (datas.result) {
  681. var _html = '<div class="weui-flex">';
  682. var xx = datas.data.category_list;
  683. for (var i = 0; i < 10; i++) {
  684. if (i == 5 && !xx[i]) {
  685. _html += '</div>';
  686. break;
  687. }
  688. if (i == 5) {
  689. _html += '</div><div class="weui-flex">';
  690. $(".weui-tab").css("height", "4.7rem");
  691. }
  692. if (xx[i]) {
  693. _html += '<div class="weui-flex__item"><div class="placeholder" gcid="' + xx[i].gc_id +
  694. '"><img style="height: 1rem;" src="' + xx[i].pic + '" /><p>' + xx[i].gc_name + '</p></div></div>';
  695. } else {
  696. _html += '<div class="weui-flex__item"><div class="placeholder"></div></div>';
  697. }
  698. }
  699. $(_data_toggle).html(_html);
  700. } else {
  701. errcode(datas, datas.code);
  702. }
  703. function_name();
  704. }
  705. });
  706. }
  707. $(".hotel-top-search").on("tap", function() {
  708. api.openWin({
  709. name: 'goodssearch',
  710. url: './goodssearch.html',
  711. bounces: false,
  712. pageParam: {
  713. storeid: _storeid
  714. }
  715. });
  716. return false;
  717. })
  718. $(".hotel-itemx").on("tap", function() {
  719. //var _storeid=$(this).attr("keyid");
  720. api.openWin({
  721. name: 'showhotel',
  722. url: './showhotel.html',
  723. bounces: false,
  724. useWKWebView: true,
  725. pageParam: {
  726. keyid: _storeid
  727. }
  728. });
  729. return false;
  730. })
  731. $("#tab1").on("tap", ".placeholder", function() {
  732. var _gcid = $(this).attr("gcid");
  733. var _categoryname = $(this).children("p").html();
  734. if (!_gcid) {
  735. return false;
  736. }
  737. api.openWin({
  738. name: 'storecategory',
  739. url: './storecategory.html',
  740. bounces: false,
  741. pageParam: {
  742. keyid: _gcid,
  743. storeid: _storeid,
  744. categoryname: _categoryname
  745. }
  746. });
  747. return false;
  748. })
  749. function openImg(_this) {
  750. var imgs = $(_this).data('imgs').split(',');
  751. var index = $(_this).data('index');
  752. var imageBrowser = api.require('imageBrowser');
  753. imageBrowser.openImages({
  754. imageUrls: imgs,
  755. activeIndex: index
  756. });
  757. }
  758. // $("#tab2").on("tap", "img", function() {
  759. // // gallery_qz($(this).attr("src"));
  760. // });
  761. $(".goods-list").on("tap", ".goods-list-item", function() {
  762. var _goodsid = $(this).attr("keyid");
  763. var _spot = $(this).attr("spot");
  764. api.openWin({
  765. name: 'showgoods',
  766. url: './showgoods.html',
  767. bounces: false,
  768. useWKWebView: true,
  769. pageParam: {
  770. keyid: _goodsid,
  771. storeid: _storeid,
  772. spot: _spot
  773. }
  774. });
  775. return false;
  776. })
  777. //////////
  778. function getRouteGoodsData() {
  779. _page = $(".goods-list").attr("page");
  780. if (_page == 0) {
  781. return false;
  782. }
  783. var _xdata = {
  784. store_id: _storeid,
  785. page: _page,
  786. praise: _desc,
  787. page_size:'20',
  788. };
  789. var _data_type = $(".hotel-goods-active").attr("tag");
  790. if (_data_type == 'praise') {
  791. _xdata = {
  792. store_id: _storeid,
  793. page: _page,
  794. praise: _desc,
  795. page_size:'20',
  796. };
  797. } else if (_data_type == 'goods_commonid') {
  798. _xdata = {
  799. store_id: _storeid,
  800. page: _page,
  801. goods_commonid: _desc,
  802. page_size:'20',
  803. };
  804. } else if (_data_type == 'goods_price') {
  805. _xdata = {
  806. store_id: _storeid,
  807. page: _page,
  808. goods_price: _desc,
  809. page_size:'20',
  810. };
  811. } else {
  812. var catid = $("#category-item .cate-active").parent(".category-list").attr("catid");
  813. if (catid == 'all') {
  814. _xdata = {
  815. store_id: _storeid,
  816. page: _page,
  817. page_size:'20',
  818. };
  819. } else {
  820. _xdata = {
  821. store_id: _storeid,
  822. page: _page,
  823. gc_id_1: catid,
  824. page_size:'20',
  825. };
  826. }
  827. }
  828. // toast_loding_show();
  829. $(".goods-list").attr("page", "0");
  830. $.ajax({
  831. url: siteurl + 'v2/entry/storeGoods', //'v2/entry/storeGoods'
  832. data: _xdata,
  833. headers: {
  834. "X-TOKEN": $api.getStorage("accesstoken")
  835. },
  836. dataType: 'json',
  837. type: 'post',
  838. success: function(datas) {
  839. // toast_loding_hide();
  840. if (datas.result) {
  841. var html = '';
  842. if (datas.data.goods_list.length > 0) {
  843. var j = 0;
  844. $.each(datas.data.goods_list, function(index, item) {
  845. var _advarr = item.goods_advword.split("\n");
  846. var _taghtml = '';
  847. var _tagcolor = ['#006699', '#d9251c', '#e8e8e8'];
  848. if (_advarr.length > 0) {
  849. for (var i = 0; i < _advarr.length; i++) {
  850. if (_advarr[i]) {
  851. _taghtml += '<span class="tag-item" style="">' + _advarr[i] + '</span>';
  852. }
  853. }
  854. }
  855. j++;
  856. html = '';
  857. if (j % 2 == 0) {
  858. html += '<div class="goods-list-item padl" ';
  859. } else {
  860. html += '<div class="goods-list-item" ';
  861. }
  862. html += 'keyid="' + item.goods_commonid + '" spot="' + item.spot + '" goods_li="' + j + '"><ul>';
  863. html += '<li><img src="' + siteurl + "uploads/home/store/goods/" + item.goods_image.substr(0, item.goods_image
  864. .indexOf("\_")) + "/" + item.goods_image + '" class="goods-image"/></li>';
  865. html += '<li class="goods-title font-rem11">' + item.goods_name + '</li>';
  866. html += '<li class="goods-price">¥' + item.goods_price + ' <span class="line-through">' + item.goods_marketprice +
  867. '</span></li>';
  868. html += '<li class="goods-tag" style="margin-top: 0;">' + _taghtml + '</li>';
  869. html += '</ul></div>';
  870. if (j % 2 == 0) {
  871. html += '<div class="h10"></div>';
  872. }
  873. if (_page == 1 && index == 0) {
  874. $(".goods-list").html(html);
  875. } else {
  876. $(".goods-list").append(html);
  877. }
  878. });
  879. _page++;
  880. $(".goods-list").attr("page", _page);
  881. } else {
  882. html = '<div class="data-null">暂时没有更多商品</div>';
  883. $(".goods-list").attr("page", '0');
  884. if (_page == 1) {
  885. $(".goods-list").html(html);
  886. } else {
  887. $(".goods-list").append(html);
  888. }
  889. }
  890. } else {
  891. errcode(datas, datas.code)
  892. }
  893. function_name();
  894. }
  895. });
  896. }
  897. /////
  898. function getCategoryData() {
  899. $.ajax({
  900. url: siteurl + 'v1/entry/storeCategory',
  901. data: {
  902. store_id: _storeid
  903. },
  904. headers: {
  905. "X-TOKEN": $api.getStorage("accesstoken")
  906. },
  907. dataType: 'json',
  908. type: 'post',
  909. success: function(datas) {
  910. if (datas.result) {
  911. var html = '';
  912. $("#category-item").empty();
  913. $("#category-item").append(
  914. '<div class="category-list" catid="all"><span class="category-list-span">全部</span></div>');
  915. $.each(datas.data.category_list, function(index, item) {
  916. html = '<div class="category-list" catid="' + item.gc_id + '"><span class="category-list-span">' + item.gc_name +
  917. '</span></div>';
  918. $("#category-item").append(html);
  919. });
  920. } else {
  921. errcode(datas, datas.code);
  922. }
  923. function_name();
  924. }
  925. });
  926. }
  927. function getstorefeedbackList() {
  928. _pagex = $("#tab2").attr('page');
  929. if (_pagex == 0) {
  930. return false;
  931. }
  932. $.ajax({
  933. url: siteurl + 'v1/store/feedbackList',
  934. data: {
  935. store_id: _storeid,
  936. page: _pagex
  937. },
  938. headers: {
  939. "X-TOKEN": $api.getStorage("accesstoken")
  940. },
  941. dataType: 'json',
  942. type: 'post',
  943. success: function(datas) {
  944. if (datas.result) {
  945. if (datas.data.feedback_list.length > 0) {
  946. $.each(datas.data.feedback_list, function(index, item) {
  947. var _html = '';
  948. if (item.img_list) {
  949. var _imglist = item.img_list;
  950. } else {
  951. var _imglist = '';
  952. }
  953. _html += '<div class="feed-item"><ul>';
  954. _html += '<li class="fl" style="width: 0.7rem;"><img src="' + item.member_avatar +
  955. '" class="user-head"/></li>';
  956. _html += '<li class="feed-item-right fl">' + item.member_truename + '<p class="feed-item-titel">' + item.add_time +
  957. '</p></li>';
  958. _html += '<li><div class="my-rating my-rating' + index + '"></div></li></ul>';
  959. _html += '<ul><li>' + item.content + '</li></ul><ul style="margin-top: 0.25rem;"><li>';
  960. if (_imglist.length > 0) {
  961. for (var i = 0; i < _imglist.length; i++) {
  962. _html += '<img onclick="openImg(this)" data-index="' + i + '" data-imgs="' + _imglist + '" src="' +
  963. _imglist[i] + '" style="width: 1.2rem;height: 1.2rem;margin-right: 0.3rem;"/>';
  964. }
  965. }
  966. _html += '</li></ul><div class="h50"></div></div>';
  967. if (_pagex == 1 && index == 0) {
  968. $("#tab2").html(_html);
  969. } else {
  970. $("#tab2").append(_html);
  971. }
  972. $(".my-rating" + index).starRating({
  973. starSize: 17,
  974. initialRating: item.satisfaction,
  975. readOnly: true,
  976. starShape: 'rounded',
  977. emptyColor: 'lightgray',
  978. hoverColor: 'salmon',
  979. activeColor: '#d9251c',
  980. useGradient: false,
  981. callback: function(currentRating, $el) {
  982. // make a server call here #d9251c
  983. }
  984. });
  985. })
  986. _pagex++;
  987. $("#tab2").attr('page', _pagex);
  988. } else {
  989. $("#tab2").attr('page', '0');
  990. if (_pagex == 1) {
  991. $("#tab2").html('<div class="data-null">暂时没有更多评价</div>');
  992. } else {
  993. $("#tab2").append('<div class="data-null">暂时没有更多评价</div>');
  994. }
  995. }
  996. } else {
  997. errcode(datas, datas.code);
  998. }
  999. function_name();
  1000. }
  1001. });
  1002. }
  1003. $("#category-btn").on("tap", function() {
  1004. $(".gsort").removeClass("hotel-goods-active");
  1005. $(".gsort").find("img").attr("src", "../../image/sort.png");
  1006. getCategoryData();
  1007. if (!$(".category-item").hasClass("mask-hidden")) {
  1008. $(".category-item").addClass("mask-hidden");
  1009. $("#category-btn").removeClass("hotel-goods-active");
  1010. $(this).find("img").attr("src", "../../image/sort.png");
  1011. $("#category-btn img").attr("src", "../../image/sort_down2.png");
  1012. } else {
  1013. $(".category-item").removeClass("mask-hidden");
  1014. $("#category-btn").addClass("hotel-goods-active");
  1015. $(this).find("img").attr("src", "../../image/sort_up.png");
  1016. $("#category-btn img").attr("src", "../../image/sort_down2_up.png");
  1017. }
  1018. return false;
  1019. })
  1020. function hiddenCate() {
  1021. $(".category-item").addClass("mask-hidden");
  1022. $("#category-btn").removeClass("hotel-goods-active");
  1023. $("#category-btn").find("img").attr("src", "../../image/sort.png");
  1024. $("#category-btn img").attr("src", "../../image/sort_down2.png");
  1025. }
  1026. function shorNewGoods() {
  1027. _minsort = '';
  1028. $(".goods-list").empty();
  1029. $(".goods-list").attr("page", '1');
  1030. getRouteGoodsData();
  1031. }
  1032. ///
  1033. $(".category-item").on("tap", ".category-list", function() {
  1034. $(this).find("span").addClass("cate-active");
  1035. hiddenCate();
  1036. _cateid = $(this).attr("catid");
  1037. _minsort = '';
  1038. shorNewGoods();
  1039. setTimeout(function() {
  1040. $(".category-item").addClass("mask-hidden");
  1041. }, 300);
  1042. return false;
  1043. })
  1044. ///
  1045. $(".goods-all").on("tap", function() {
  1046. hiddenCate();
  1047. _sort = $(this).attr("tag");
  1048. $(".gsort").removeClass("hotel-goods-active");
  1049. $(this).addClass("hotel-goods-active");
  1050. $(".gsort").find("img").attr("src", "../../image/sort.png");
  1051. _desc = "desc";
  1052. shorNewGoods();
  1053. return false;
  1054. })
  1055. ////
  1056. $(".goods-new").on("tap", function() {
  1057. hiddenCate();
  1058. _sort = $(this).attr("tag");
  1059. $(".gsort").removeClass("hotel-goods-active");
  1060. $(this).addClass("hotel-goods-active");
  1061. $(".goods-sprice").find("img").attr("src", "../../image/sort.png");
  1062. $(this).find("img").attr("src", $(this).find("img").attr("src") == "../../image/sort_up.png" ?
  1063. "../../image/sort_down.png" : "../../image/sort_up.png");
  1064. if ($(this).find("img").attr("src") == "../../image/sort_up.png") {
  1065. _desc = "asc";
  1066. } else {
  1067. _desc = "desc";
  1068. }
  1069. shorNewGoods();
  1070. return false;
  1071. })
  1072. ////
  1073. $(".goods-sprice").on("tap", function() {
  1074. hiddenCate();
  1075. _sort = $(this).attr("tag");
  1076. $(".gsort").removeClass("hotel-goods-active");
  1077. $(this).addClass("hotel-goods-active");
  1078. $(".goods-new").find("img").attr("src", "../../image/sort.png");
  1079. $(this).find("img").attr("src", $(this).find("img").attr("src") == "../../image/sort_up.png" ?
  1080. "../../image/sort_down.png" : "../../image/sort_up.png");
  1081. if ($(this).find("img").attr("src") == "../../image/sort_up.png") {
  1082. _desc = "asc";
  1083. } else {
  1084. _desc = "desc";
  1085. }
  1086. shorNewGoods();
  1087. return false;
  1088. })
  1089. $(".share-item-cancel").on("tap", function() {
  1090. $(".share-item").slideUp(500, function() {});
  1091. $(".weui-mask").remove();
  1092. _show = false;
  1093. return false;
  1094. })
  1095. $(".share-item-friend").on("tap", function() {
  1096. var wx = api.require('wx');
  1097. api.download({
  1098. url: imgUrl,
  1099. // savePath: 'fs://test.rar',
  1100. report: false,
  1101. cache: true,
  1102. allowResume: true
  1103. }, function(ret, err) {
  1104. var str = ret.savePath.slice(-3);
  1105. var str2 = "";
  1106. if (str == 'png') {
  1107. str2 = ret.savePath;
  1108. } else {
  1109. str2 = "widget://image/logo3.png";
  1110. }
  1111. if (ret.state == 1) {
  1112. wx.shareProgram({
  1113. scene: 'session',
  1114. description: _description,
  1115. title: _title,
  1116. thumb: str2,
  1117. webpageUrl: _shareurl,
  1118. userName: 'gh_344fb21bce0f',
  1119. path: 'pages/index/hotel?id=' + _storeid + '&isfx=true',
  1120. }, function(ret, err) {
  1121. if (ret.status) {
  1122. api.toast({
  1123. msg: '分享成功!'
  1124. });
  1125. setPoint();
  1126. } else {
  1127. if (err.code == 2) {
  1128. api.toast({
  1129. msg: '用户取消'
  1130. });
  1131. } else if (err.code == 3) {
  1132. api.toast({
  1133. msg: '发送失败'
  1134. });
  1135. } else if (err.code == 4) {
  1136. api.toast({
  1137. msg: '授权拒绝'
  1138. });
  1139. } else {
  1140. api.toast({
  1141. msg: '发送失败!'
  1142. });
  1143. }
  1144. }
  1145. });
  1146. }
  1147. })
  1148. $(".share-item").slideUp(500, function() {});
  1149. $(".weui-mask").remove();
  1150. _show = false;
  1151. return false;
  1152. })
  1153. $(".share-item-cale").on("tap", function() {
  1154. var wx = api.require('wx');
  1155. wx.shareWebpage({
  1156. scene: 'timeline',
  1157. title: _title,
  1158. description: _description,
  1159. thumb: 'widget://image/logo2.png', //'widget://share' + _storeid + '.png',
  1160. contentUrl: _shareurl
  1161. }, function(ret, err) {
  1162. if (ret.status) {
  1163. api.toast({
  1164. msg: '分享成功!'
  1165. });
  1166. setPoint();
  1167. } else {}
  1168. });
  1169. $(".share-item").slideUp(500, function() {});
  1170. $(".weui-mask").remove();
  1171. _show = false;
  1172. return false;
  1173. })
  1174. $(".share-item-qq").on("tap", function() {
  1175. var qq = api.require('QQPlus');
  1176. qq.shareNews({
  1177. url: _shareurl,
  1178. title: _title,
  1179. description: _description,
  1180. imgUrl: _shareimg
  1181. }, function(ret, err) {
  1182. if (ret.status) {
  1183. api.toast({
  1184. msg: '分享成功!'
  1185. });
  1186. setPoint();
  1187. }
  1188. });
  1189. $(".share-item").slideUp(500, function() {});
  1190. $(".weui-mask").remove();
  1191. _show = false;
  1192. return false;
  1193. })
  1194. var _show = false;
  1195. $("#share-btn").on("tap", function() {
  1196. if (_show == false) {
  1197. $(".share-item").slideDown(500, function() {});
  1198. $("body").append('<div class="weui-mask"></div>');
  1199. _show = true;
  1200. } else {
  1201. $(".share-item").slideUp(500, function() {});
  1202. _show = false;
  1203. }
  1204. return false;
  1205. })
  1206. function setPoint() {
  1207. $.ajax({
  1208. url: siteurl + 'v1/member/point',
  1209. data: {
  1210. memberid: $api.getStorage("memberid"),
  1211. stage: 'share'
  1212. },
  1213. headers: {
  1214. "X-TOKEN": $api.getStorage("accesstoken")
  1215. },
  1216. dataType: 'json',
  1217. type: 'post',
  1218. success: function(datas) {
  1219. if (datas.result) {
  1220. //
  1221. } else {
  1222. errcode(datas, datas.code);
  1223. }
  1224. }
  1225. });
  1226. }
  1227. $(".m-bottom").on("tap", function() {
  1228. if ($(".m-bottom").attr("feedback") == 1) {
  1229. api.openWin({
  1230. name: 'feedback',
  1231. url: './feedback.html',
  1232. bounces: false,
  1233. pageParam: {
  1234. keyid: _storeid
  1235. }
  1236. })
  1237. } else {
  1238. api.toast({
  1239. msg: '入住客人才可以反馈'
  1240. });
  1241. }
  1242. return false;
  1243. })
  1244. $(".back-top").on("tap", function() {
  1245. $('html , body').animate({
  1246. scrollTop: 0
  1247. }, 'slow');
  1248. return false;
  1249. });
  1250. $.fn.fixedDiv = function(actCls) {
  1251. var that = $(this),
  1252. offsetTop = that.offset().top,
  1253. scrollTop;
  1254. function fix() {
  1255. scrollTop = $(document).scrollTop();
  1256. if (scrollTop > offsetTop) {
  1257. that.removeClass(actCls);
  1258. } else {
  1259. that.addClass(actCls);
  1260. }
  1261. }
  1262. fix();
  1263. $(window).scroll(fix);
  1264. }
  1265. $('#fix1').fixedDiv('mask-hidden')
  1266. </script>
  1267. </html>