hoteldtl.html 40 KB

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