template.js 91 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883
  1. /*TMODJS:{"version":"1.0.0"}*/
  2. !function () {
  3. function template (filename, content) {
  4. return (
  5. /string|function/.test(typeof content)
  6. ? compile : renderFile
  7. )(filename, content);
  8. };
  9. var cache = template.cache = {};
  10. var String = this.String;
  11. function toString (value, type) {
  12. if (typeof value !== 'string') {
  13. type = typeof value;
  14. if (type === 'number') {
  15. value += '';
  16. } else if (type === 'function') {
  17. value = toString(value.call(value));
  18. } else {
  19. value = '';
  20. }
  21. }
  22. return value;
  23. };
  24. var escapeMap = {
  25. "<": "&#60;",
  26. ">": "&#62;",
  27. '"': "&#34;",
  28. "'": "&#39;",
  29. "&": "&#38;"
  30. };
  31. function escapeFn (s) {
  32. return escapeMap[s];
  33. }
  34. function escapeHTML (content) {
  35. return toString(content)
  36. .replace(/&(?![\w#]+;)|[<>"']/g, escapeFn);
  37. };
  38. var isArray = Array.isArray || function(obj) {
  39. return ({}).toString.call(obj) === '[object Array]';
  40. };
  41. function each (data, callback) {
  42. if (isArray(data)) {
  43. for (var i = 0, len = data.length; i < len; i++) {
  44. callback.call(data, data[i], i, data);
  45. }
  46. } else {
  47. for (i in data) {
  48. callback.call(data, data[i], i);
  49. }
  50. }
  51. };
  52. function resolve (from, to) {
  53. var DOUBLE_DOT_RE = /(\/)[^/]+\1\.\.\1/;
  54. var dirname = ('./' + from).replace(/[^/]+$/, "");
  55. var filename = dirname + to;
  56. filename = filename.replace(/\/\.\//g, "/");
  57. while (filename.match(DOUBLE_DOT_RE)) {
  58. filename = filename.replace(DOUBLE_DOT_RE, "/");
  59. }
  60. return filename;
  61. };
  62. var utils = template.utils = {
  63. $helpers: {},
  64. $include: function (filename, data, from) {
  65. filename = resolve(from, filename);
  66. return renderFile(filename, data);
  67. },
  68. $string: toString,
  69. $escape: escapeHTML,
  70. $each: each
  71. };
  72. var helpers = template.helpers = utils.$helpers;
  73. function renderFile (filename, data) {
  74. var fn = template.get(filename) || showDebugInfo({
  75. filename: filename,
  76. name: 'Render Error',
  77. message: 'Template not found'
  78. });
  79. return data ? fn(data) : fn;
  80. };
  81. function compile (filename, fn) {
  82. if (typeof fn === 'string') {
  83. var string = fn;
  84. fn = function () {
  85. return new String(string);
  86. };
  87. }
  88. var render = cache[filename] = function (data) {
  89. try {
  90. return new fn(data, filename) + '';
  91. } catch (e) {
  92. return showDebugInfo(e)();
  93. }
  94. };
  95. render.prototype = fn.prototype = utils;
  96. render.toString = function () {
  97. return fn + '';
  98. };
  99. return render;
  100. };
  101. function showDebugInfo (e) {
  102. var type = "{Template Error}";
  103. var message = e.stack || '';
  104. if (message) {
  105. // 利用报错堆栈信息
  106. message = message.split('\n').slice(0,2).join('\n');
  107. } else {
  108. // 调试版本,直接给出模板语句行
  109. for (var name in e) {
  110. message += "<" + name + ">\n" + e[name] + "\n\n";
  111. }
  112. }
  113. return function () {
  114. if (typeof console === "object") {
  115. console.error(type + "\n\n" + message);
  116. }
  117. return type;
  118. };
  119. };
  120. template.get = function (filename) {
  121. return cache[filename.replace(/^\.\//, '')];
  122. };
  123. template.helper = function (name, helper) {
  124. helpers[name] = helper;
  125. };
  126. if (typeof define === 'function') {define(function() {return template;});} else if (typeof exports !== 'undefined') {module.exports = template;} else {this.template = template;}
  127. /*v:1*/
  128. template('about/index',function($data,$filename
  129. /**/) {
  130. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,$escape=$utils.$escape,title=$data.title,$out='';if(showNavBar ){
  131. $out+=' <header class="bar bar-nav"> <a class="left-button back-button"> <div class="icon icon-left-nav"></div> </a> <h1 class="title">';
  132. $out+=$escape(title);
  133. $out+='</h1> </header> ';
  134. }
  135. $out+=' <div class="content" id="helpScroll"> <div class="scroller"> <div class="page-content"> </div> </div> </div>';
  136. return new String($out);
  137. });/*v:1*/
  138. template('activities/alert',function($data,$filename
  139. /**/) {
  140. 'use strict';var $utils=this,$helpers=$utils.$helpers,$escape=$utils.$escape,content=$data.content,$out='';$out+='<div class="box-container box-center"> <div class="activity-body alert-body"> <img src="';
  141. $out+=$escape(content);
  142. $out+='" alt="" id="activity-content"> <div class="btn-close"></div> </div> </div> ';
  143. return new String($out);
  144. });/*v:1*/
  145. template('activities/cat',function($data,$filename
  146. /**/) {
  147. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,$escape=$utils.$escape,src=$data.src,$out='';if(showNavBar ){
  148. $out+=' <header class="bar bar-nav"> <a class="left-button back-button"> <div class="icon icon-left-nav"></div> </a> <h1 class="title">下单送爪币 壕礼抽不停</h1> </header> ';
  149. }
  150. $out+=' <div id="activities-scroll" class="content"> <div class="scroller"> <div class="box-container"> <div class="box-container box box-vertical" style="background: #fff"> <img src="';
  151. $out+=$escape(src);
  152. $out+='" alt="" style="width:100%"> </div> </div> </div> </div> </div> ';
  153. return new String($out);
  154. });/*v:1*/
  155. template('address/detail/index',function($data,$filename
  156. /**/) {
  157. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,add=$data.add,$escape=$utils.$escape,address=$data.address,title=$data.title,$each=$utils.$each,value=$data.value,index=$data.index,$out='';if(showNavBar){
  158. $out+=' <header class="bar bar-nav"> <a class="left-button back-button"> <div class="icon icon-left-nav"></div> </a> ';
  159. if(!add){
  160. $out+=' <a class="right-button btn-delete" data-id="';
  161. $out+=$escape(address.address_id);
  162. $out+='">删除</a> ';
  163. }
  164. $out+=' <h1 class="title">';
  165. $out+=$escape(title);
  166. $out+='</h1> </header> ';
  167. }
  168. $out+=' <div class="content"> <div class="box-container box box-vertical"> <div id="addressDetailScroll" class="scroll-container box-flex-1"> <div class="scroller"> <div class="page-content"> <form class="input-group"> <ul class="table-view"> ';
  169. if(!add){
  170. $out+=' <li> <input type="text" class="address-name" value="';
  171. $out+=$escape(address.name);
  172. $out+='" placeholder="怎么称呼您"> </li> <li> <input type="tel" placeholder="您的手机号" class="address-mobile" value="';
  173. $out+=$escape(address.mobile);
  174. $out+='"> </li> <li class="table-view-cell"> <a class="navigate-right select-poi test" ';
  175. if(address.address.poi){
  176. $out+=' data-poi-name="';
  177. $out+=$escape(address.address.poi.name);
  178. $out+='" ';
  179. }
  180. $out+=' data-province="';
  181. $out+=$escape(address.address.province);
  182. $out+='" data-city="';
  183. $out+=$escape(address.address.city);
  184. $out+='" data-area="';
  185. $out+=$escape(address.address.area);
  186. $out+='" ';
  187. $each(address.position,function(value,index){
  188. $out+=' data-position-';
  189. $out+=$escape(index);
  190. $out+='="';
  191. $out+=$escape(value);
  192. $out+='" ';
  193. });
  194. $out+='> ';
  195. if(address.address.poi){
  196. $out+=$escape(address.address.poi.name);
  197. $out+=' ';
  198. }else{
  199. $out+='请定位您的小区或者街道';
  200. }
  201. $out+=' </a> </li> <li> <input type="text" placeholder="填写详细地址如15号楼1单元201室" class="address-detail" value="';
  202. $out+=$escape(address.address.detail);
  203. $out+='"> </li> ';
  204. }else{
  205. $out+=' <li> <input type="text" placeholder="怎么称呼您" class="address-name"> </li> <li> <input type="tel" placeholder="您的手机号" class="address-mobile"> </li> <li class="table-view-cell"> <a class="navigate-right select-poi">请定位您的小区或者街道</a> </li> <li> <input type="text" class="address-detail" placeholder="填写详细地址如15号楼1单元201室"> </li> ';
  206. }
  207. $out+=' </ul> </form> </div> </div> </div> <div class="btn-container prevent-scroll"> ';
  208. if(!add){
  209. $out+=' <a class="btn btn-main btn-block btn-save">更新</a> ';
  210. }else{
  211. $out+=' <a class="btn btn-main btn-block btn-save">保存</a> ';
  212. }
  213. $out+=' </div> </div> </div> ';
  214. return new String($out);
  215. });/*v:4*/
  216. template('address/list/cell',function($data,$filename
  217. /**/) {
  218. 'use strict';var $utils=this,$helpers=$utils.$helpers,$each=$utils.$each,addresses=$data.addresses,address=$data.address,i=$data.i,$escape=$utils.$escape,$out='';$each(addresses,function(address,i){
  219. $out+=' <li class="table-view-cell media" style="padding: 0 10px 0 10px"> <a class="address-item" data-id="';
  220. $out+=$escape(address.address_id);
  221. $out+='" data-index="';
  222. $out+=$escape(i);
  223. $out+='" style="margin: 0;padding:10px;"> <div class="media-body"> <span class="username"> ';
  224. if(address ){
  225. $out+=' ';
  226. $out+=$escape(address.name);
  227. $out+=' ';
  228. }
  229. $out+=' </span> <span class="mobile"> ';
  230. if(address ){
  231. $out+=' ';
  232. $out+=$escape(address.mobile);
  233. $out+=' ';
  234. }
  235. $out+=' </span> <p class="detail"> ';
  236. if(address ){
  237. $out+=' ';
  238. if(address.address.poi ){
  239. $out+=' ';
  240. $out+=$escape(address.address.city);
  241. $out+=' ';
  242. $out+=$escape(address.address.area);
  243. $out+=' ';
  244. $out+=$escape(address.address.poi.name);
  245. $out+=' ';
  246. }else{
  247. $out+=' ';
  248. $out+=$escape(address.address.province);
  249. $out+=' ';
  250. $out+=$escape(address.address.city);
  251. $out+=' ';
  252. $out+=$escape(address.address.area);
  253. $out+=' ';
  254. $out+=$escape(address.address.detail);
  255. $out+=' ';
  256. }
  257. $out+=' ';
  258. }
  259. $out+=' </p> </div> </a> <button class="btn btn-edit" data-id="';
  260. $out+=$escape(address.address_id);
  261. $out+='" data-index="';
  262. $out+=$escape(i);
  263. $out+='" style="background:rgba(146,118,3,1);color: rgb(233,233,216);border: 0;">编辑</button> </li> ';
  264. });
  265. return new String($out);
  266. });/*v:2*/
  267. template('address/list/index',function($data,$filename
  268. /**/) {
  269. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,include=function(filename,data){data=data||$data;var text=$utils.$include(filename,data,$filename);$out+=text;return $out;},$escape=$utils.$escape,addText=$data.addText,$out='';if(showNavBar ){
  270. $out+=' <header class="bar bar-nav"> <a class="left-button back-button"> <div class="icon icon-left-nav"></div> </a> <h1 class="title">选择地址</h1> </header> ';
  271. }
  272. $out+=' <div class="content" > <div class="box-container box box-vertical"> <div id="addressListScroll" class="scroll-container box-flex-1"> <div class="page-content"> <ul class="list-content"> ';
  273. include('./cell');
  274. $out+=' </ul> </div> </div> <div class="btn-container prevent-scroll"> <a class="btn btn-main btn-block btn-add">';
  275. $out+=$escape(addText);
  276. $out+='</a> </div> </div> </div>';
  277. return new String($out);
  278. });/*v:1*/
  279. template('address/position/cell',function($data,$filename
  280. /**/) {
  281. 'use strict';var $utils=this,$helpers=$utils.$helpers,$each=$utils.$each,poiLists=$data.poiLists,poilist=$data.poilist,i=$data.i,$escape=$utils.$escape,$out='';$each(poiLists,function(poilist,i){
  282. $out+=' <li class="table-view-cell position-item" data-location-lat="';
  283. if(poilist.location){
  284. $out+=$escape(poilist.location.lat);
  285. }
  286. $out+='" data-location-lng="';
  287. if(poilist.location){
  288. $out+=$escape(poilist.location.lng);
  289. }
  290. $out+='" data-uid="';
  291. if(poilist.uid){
  292. $out+=$escape(poilist.uid);
  293. }
  294. $out+='" data-district="';
  295. if(poilist.district){
  296. $out+=$escape(poilist.district);
  297. }
  298. $out+='" data-city="';
  299. if(poilist.city){
  300. $out+=$escape(poilist.city);
  301. }
  302. $out+='"> <a class="set-poi">';
  303. if(poilist.name){
  304. $out+=$escape(poilist.name);
  305. }
  306. $out+='</a> <p> ';
  307. if(poilist.city){
  308. $out+=$escape(poilist.city);
  309. }
  310. $out+=' ';
  311. if(poilist.district){
  312. $out+=$escape(poilist.district);
  313. }
  314. $out+=' </p> </li> ';
  315. });
  316. $out+=' ';
  317. return new String($out);
  318. });/*v:1*/
  319. template('address/position/city','');/*v:1*/
  320. template('address/position/index',function($data,$filename
  321. /**/) {
  322. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,include=function(filename,data){data=data||$data;var text=$utils.$include(filename,data,$filename);$out+=text;return $out;},$out='';if(showNavBar){
  323. $out+=' <header class="bar bar-nav"> <a class="left-button back-button"> <div class="icon icon-left-nav"></div> </a> <h1 class="title">定位地点</h1> </header> ';
  324. }
  325. $out+=' <div class="content"> <div class="box-container box box-vertical"> <div id="addressPositionScroll" class="scroll-container box-flex-1"> <div class="scroller"> <div class="page-content"> <div class="table-view search-form"> <div class="search-city">上海</div> <input type="text" name="" id="search-text" placeholder="请搜索您的位置"> <button class="search-btn">搜索</button> </div> <ul class="table-view position-list"> ';
  326. include('./cell');
  327. $out+=' </ul> </div> </div> </div> </div> </div> ';
  328. return new String($out);
  329. });/*v:2*/
  330. template('agreement/index',function($data,$filename
  331. /**/) {
  332. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,$out='';if(showNavBar ){
  333. $out+=' <header class="bar bar-nav"> <a class="left-button back-button"> <div class="icon icon-left-nav"></div> </a> <h1 class="title">用户服务协议</h1> </header> ';
  334. }
  335. $out+=' <div class="content" id="agreementScroll"> <div class="scroller"> <div class="page-content"> </div> </div> </div> ';
  336. return new String($out);
  337. });/*v:1*/
  338. template('beautician/comment',function($data,$filename
  339. /**/) {
  340. 'use strict';var $utils=this,$helpers=$utils.$helpers,$each=$utils.$each,comments=$data.comments,comment=$data.comment,i=$data.i,$escape=$utils.$escape,include=function(filename,data){data=data||$data;var text=$utils.$include(filename,data,$filename);$out+=text;return $out;},imgW=$data.imgW,pic=$data.pic,review=$data.review,$out='';$each(comments,function(comment,i){
  341. $out+=' <li class="table-view-cell"> <div> <div class="user-info-container"> <div class="user-info-btn" data-id="';
  342. $out+=$escape(comment.user.id);
  343. $out+='"> <img class="user-avatar" src="';
  344. $out+=$escape(comment.user.avatar);
  345. $out+='?imageView2/2/w/60/h/60"/> <span class="user-name">';
  346. $out+=$escape(comment.user.user_name);
  347. $out+='</span> </div> </div> <div class="box"> <div class="box-flex-1"> <span class="star-label">评分:</span> ';
  348. include('../common/star',comment);
  349. $out+=' </div> <div class="box-flex-1 review-time"> ';
  350. $out+=$escape(comment.time_str);
  351. $out+=' </div> </div> <div class="review-content"> ';
  352. $out+=$escape(comment.content);
  353. $out+=' </div> <div class="img-preview-list" ';
  354. if(comment.pics.length > 0){
  355. $out+='style="height:';
  356. $out+=$escape(imgW);
  357. $out+='px"';
  358. }
  359. $out+='> ';
  360. if(comment.pics.length > 0){
  361. $out+=' ';
  362. $each(comment.pics,function(pic,i){
  363. $out+=' ';
  364. if(i < 3){
  365. $out+=' <div class="width-percent-33"> <div class="img-preview" data-src="';
  366. $out+=$escape(pic.url);
  367. $out+='" style="width: ';
  368. $out+=$escape(imgW);
  369. $out+='px"> <img src="';
  370. $out+=$escape(pic.url);
  371. $out+='?imageView2/5/w/';
  372. $out+=$escape(imgW * 2);
  373. $out+='/h/';
  374. $out+=$escape(imgW * 2);
  375. $out+='" alt="" class="img-preview-item"> ';
  376. if(comment.pics.length > 3 && i == 2){
  377. $out+=' <span class="img-count">';
  378. $out+=$escape(comment.pics.length);
  379. $out+='</span> ';
  380. }
  381. $out+=' </div> </div> ';
  382. }
  383. $out+=' ';
  384. });
  385. $out+=' ';
  386. }
  387. $out+=' </div> ';
  388. if(comment.reply !== ''){
  389. $out+=' <div class="reply-content"> 保洁师回复:';
  390. $out+=$escape(review.reply);
  391. $out+=' </div> ';
  392. }
  393. $out+=' </div> </li> ';
  394. });
  395. $out+=' ';
  396. return new String($out);
  397. });/*v:1*/
  398. template('beautician/detail',function($data,$filename
  399. /**/) {
  400. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,recommend=$data.recommend,$escape=$utils.$escape,avatar=$data.avatar,name=$data.name,favor=$data.favor,desc=$data.desc,$out='';if(showNavBar ){
  401. $out+=' <header class="bar bar-nav"> <a class="left-button back-button"> <div class="icon icon-left-nav"></div> </a> <h1 class="title">保洁师详情</h1> </header> ';
  402. }
  403. $out+=' <div class="content beautician-detail-content"> <div class="box-container box box-vertical"> <div id="beauticianDetailScroll" class="scroll-container box-flex-1"> <div class="page-content"> ';
  404. if(recommend !== ''){
  405. $out+=' <p class="recommend">当前时间段,该保洁师已被预约,推荐时间段&nbsp; ';
  406. $out+=$escape(recommend);
  407. $out+='</p> ';
  408. }
  409. $out+=' <div class="tech-info"> <img src="';
  410. $out+=$escape(avatar);
  411. $out+='?imageView2/0/w/400/h/400" alt=""> <p class="name">';
  412. $out+=$escape(name);
  413. $out+='</p> <p class="favor">好评数: ';
  414. $out+=$escape(favor);
  415. $out+='</p> <p class="desc">';
  416. $out+=$escape(desc);
  417. $out+='</p> </div> <div id="tech-comment"> <div class="extra-service-title">用户评价<span></span></div> <ul class="table-view"></ul> <div class="btn-more-container box-center hide"> <a class="btn btn-block btn-more-review">加载更多</a> </div> </div> </div> </div> </div> </div> ';
  418. return new String($out);
  419. });/*v:1*/
  420. template('beautician/index',function($data,$filename
  421. /**/) {
  422. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,can=$data.can,match=$data.match,$each=$utils.$each,canMatchTech=$data.canMatchTech,$index=$data.$index,$escape=$utils.$escape,canSelectTech=$data.canSelectTech,$out='';if(showNavBar ){
  423. $out+=' <header class="bar bar-nav"> <a class="left-button back-button"> <div class="icon icon-left-nav"></div> </a> <h1 class="title">选择保洁师</h1> </header> ';
  424. }
  425. $out+=' <div class="content beautician-content"> <div class="box-container box box-vertical"> <div id="beauticianScroll" class="scroll-container box-flex-1"> <div class="page-content"> <ul class="table-view"> ';
  426. if(can.length == 0){
  427. $out+=' <li class="table-view-divider">该时间段暂无推荐保洁师,请选择其他时间段</li> ';
  428. if(match.length > 0){
  429. $out+=' ';
  430. $each(match,function(canMatchTech,$index){
  431. $out+=' <li class="table-view-cell"> <a class="select-item disabled" data-name="';
  432. $out+=$escape(canMatchTech.name);
  433. $out+='" data-id="';
  434. $out+=$escape(canMatchTech.id);
  435. $out+='" data-desc="';
  436. $out+=$escape(canMatchTech.desc);
  437. $out+='" data-favor="';
  438. $out+=$escape(canMatchTech.favourable_count);
  439. $out+='" data-avatar="';
  440. $out+=$escape(canMatchTech.avatar);
  441. $out+='" data-recommend="';
  442. $out+=$escape(canMatchTech.next_free_time);
  443. $out+='"> <div class="media-object pull-left"> <img src="';
  444. $out+=$escape(canMatchTech.avatar);
  445. $out+='?imageView2/0/w/84"> </div> <div class="media-body"> <p>';
  446. $out+=$escape(canMatchTech.name);
  447. if(canMatchTech.favourable_count){
  448. $out+='<span class="favor-count">好评数:';
  449. $out+=$escape(canMatchTech.favourable_count);
  450. $out+='次</span>';
  451. }
  452. $out+='</p> ';
  453. if(canMatchTech.next_free_time){
  454. $out+=' <p class="recommend-time">推荐时间段&nbsp;';
  455. $out+=$escape(canMatchTech.next_free_time);
  456. $out+='</p> ';
  457. }
  458. $out+=' </div> </a> </li> ';
  459. });
  460. $out+=' ';
  461. }
  462. $out+=' ';
  463. }else{
  464. $out+=' ';
  465. if(can.length > 0){
  466. $out+=' ';
  467. $each(can,function(canSelectTech,$index){
  468. $out+=' <li class="table-view-cell"> <a class="select-item" data-name="';
  469. $out+=$escape(canSelectTech.name);
  470. $out+='" data-id="';
  471. $out+=$escape(canSelectTech.id);
  472. $out+='" data-desc="';
  473. $out+=$escape(canSelectTech.desc);
  474. $out+='" data-favor="';
  475. $out+=$escape(canSelectTech.favourable_count);
  476. $out+='" data-avatar="';
  477. $out+=$escape(canSelectTech.avatar);
  478. $out+='" data-recommend=""> <div class="media-object pull-left"> <img class="" src="';
  479. $out+=$escape(canSelectTech.avatar);
  480. $out+='?imageView2/0/w/84/h/84"> </div> <div class="media-body"> <p>';
  481. $out+=$escape(canSelectTech.name);
  482. $out+=' ';
  483. if(canSelectTech.favourable_count){
  484. $out+='<span class="favor-count">好评数:';
  485. $out+=$escape(canSelectTech.favourable_count);
  486. $out+='次</span>';
  487. }
  488. $out+='</p> ';
  489. if(canSelectTech.next_free_time){
  490. $out+=' <p class="recommend-time">推荐时间段&nbsp;';
  491. $out+=$escape(canSelectTech.next_free_time);
  492. $out+='</p> ';
  493. }
  494. $out+=' </div> <button class="btn btn-positive btn-check">选我</button> </a> </li> ';
  495. });
  496. $out+=' ';
  497. }
  498. $out+=' ';
  499. if(match.length > 0){
  500. $out+=' <li class="table-view-divider">以下保洁师该时段已被预约,请选择其他空闲时间</li> ';
  501. $each(match,function(canMatchTech,$index){
  502. $out+=' <li class="table-view-cell"> <a class="select-item disabled" data-name="';
  503. $out+=$escape(canMatchTech.name);
  504. $out+='" data-id="';
  505. $out+=$escape(canMatchTech.id);
  506. $out+='" data-desc="';
  507. $out+=$escape(canMatchTech.desc);
  508. $out+='" data-favor="';
  509. $out+=$escape(canMatchTech.favourable_count);
  510. $out+='" data-avatar="';
  511. $out+=$escape(canMatchTech.avatar);
  512. $out+='" data-recommend="';
  513. $out+=$escape(canMatchTech.next_free_time);
  514. $out+='"> <div class="media-object pull-left"> <img src="';
  515. $out+=$escape(canMatchTech.avatar);
  516. $out+='?imageView2/0/w/84"> </div> <div class="media-body"> <p>';
  517. $out+=$escape(canMatchTech.name);
  518. if(canMatchTech.favourable_count){
  519. $out+='<span class="favor-count">好评次数:';
  520. $out+=$escape(canMatchTech.favourable_count);
  521. $out+='次</span>';
  522. }
  523. $out+='</p> ';
  524. if(canMatchTech.next_free_time){
  525. $out+=' <p class="recommend-time">推荐时间段&nbsp;';
  526. $out+=$escape(canMatchTech.next_free_time);
  527. $out+='</p> ';
  528. }
  529. $out+=' </div> </a> </li> ';
  530. });
  531. $out+=' ';
  532. }
  533. $out+=' ';
  534. }
  535. $out+=' </ul> </div> </div> <div class="prevent-scroll"> <div class="recommend"> <div class="btn btn-block btn-positive btn-recommend">系统推荐保洁师</div> </div> </div> </div> </div> ';
  536. return new String($out);
  537. });/*v:1*/
  538. template('coming/index',function($data,$filename
  539. /**/) {
  540. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,$escape=$utils.$escape,prodcutTitle=$data.prodcutTitle,$out='';if(showNavBar ){
  541. $out+=' <header class="bar bar-nav"> <a class="left-button back-button"> <div class="icon icon-left-nav"></div> </a> <h1 class="title">';
  542. $out+=$escape(prodcutTitle.name);
  543. $out+='</h1> </header> ';
  544. }
  545. $out+=' <div class="content"> <div class="box-container"> <div class="box-container box box-vertical coming"> </div> </div> </div> </div>';
  546. return new String($out);
  547. });/*v:1*/
  548. template('common/actionSheet',function($data,$filename
  549. /**/) {
  550. 'use strict';var $utils=this,$helpers=$utils.$helpers,$escape=$utils.$escape,message=$data.message,$each=$utils.$each,buttons=$data.buttons,button=$data.button,i=$data.i,$out='';$out+='<div class="box box-container box-align-end"> <div class="action-sheet-body"> <p class="action-sheet-message"> ';
  551. $out+=$escape(message);
  552. $out+=' </p> <div> ';
  553. $each(buttons,function(button,i){
  554. $out+=' <a href="javascript:;" class="btn btn-block btn-action-sheet ';
  555. $out+=$escape(button.class);
  556. $out+='" data-button-index="';
  557. $out+=$escape(i);
  558. $out+='">';
  559. $out+=$escape(button.text);
  560. $out+='</a> ';
  561. });
  562. $out+=' </div> </div> </div>';
  563. return new String($out);
  564. });/*v:1*/
  565. template('common/alert',function($data,$filename
  566. /**/) {
  567. 'use strict';var $utils=this,$helpers=$utils.$helpers,$escape=$utils.$escape,title=$data.title,message=$data.message,$string=$utils.$string,html=$data.html,$each=$utils.$each,buttons=$data.buttons,button=$data.button,i=$data.i,$out='';$out+='<div class="box-container box-center"> <div class="card alert-body"> <h4>';
  568. $out+=$escape(title);
  569. $out+='</h4> <p class="alert-message">';
  570. $out+=$escape(message);
  571. $out+='</p> <p class="alert-message">';
  572. $out+=$string(html);
  573. $out+='</p> <div class="box"> ';
  574. $each(buttons,function(button,i){
  575. $out+=' <div class="alert-btn-box box-flex-1"><button class="btn btn-block btn-alert ';
  576. $out+=$escape(button.class);
  577. $out+='" data-button-index=';
  578. $out+=$escape(i);
  579. $out+='>';
  580. $out+=$escape(button.text);
  581. $out+='</button></div> ';
  582. });
  583. $out+=' </div> </div> </div> ';
  584. return new String($out);
  585. });/*v:5*/
  586. template('common/dataPicker',function($data,$filename
  587. /**/) {
  588. 'use strict';var $utils=this,$helpers=$utils.$helpers,$each=$utils.$each,columns=$data.columns,option=$data.option,i=$data.i,$escape=$utils.$escape,$out='';$out+='<div class="box box-container box-align-end"> <div class="picker-body"> <div class="picker-day-box"> <div class=" picker-day"> <ul class="row"> ';
  589. $each(columns.columnDay,function(option,i){
  590. $out+=' ';
  591. if(option.selected){
  592. $out+=' <li class="col-md-3 day ';
  593. if(option.selectIndex > -1 ){
  594. $out+=' on ';
  595. }
  596. $out+='" data-value="';
  597. $out+=$escape(option.value);
  598. $out+='"> <span>';
  599. $out+=$escape(option.day);
  600. $out+='</span><br><small>';
  601. $out+=$escape(option.text);
  602. $out+='</small> </li> ';
  603. }else{
  604. $out+=' <li class="col-md-3 day ';
  605. if(i == 0 ){
  606. $out+=' on ';
  607. }
  608. $out+='" data-value="';
  609. $out+=$escape(option.value);
  610. $out+='"> <span>';
  611. $out+=$escape(option.day);
  612. $out+='</span><br><small>';
  613. $out+=$escape(option.text);
  614. $out+='</small> </li> ';
  615. }
  616. $out+=' ';
  617. });
  618. $out+=' </ul> </div> </div> <div class="container picker-time"> <ul class="row"> ';
  619. $each(columns.columnTime,function(option,i){
  620. $out+=' ';
  621. if(option.num > option.now ){
  622. $out+=' <li class="col-md-3 j-book-time ';
  623. if(option.selectIndex > -1 ){
  624. $out+=' on ';
  625. }
  626. $out+=' ';
  627. if(option.num - option.now <= 4 || (option.now > 18 || option.now < 9 && option.num <= 12) ){
  628. $out+=' current ';
  629. }
  630. $out+='" data-value="';
  631. $out+=$escape(option.value);
  632. $out+='" data-time="';
  633. $out+=$escape(option.min);
  634. $out+='" data-now="';
  635. $out+=$escape(option.now);
  636. $out+='"> <a href="javascript:;" class="time"> <span class="num">';
  637. $out+=$escape(option.text);
  638. $out+='</span> <span class="disable">不可预约</span> <span class="able">预约</span> </a> </li> ';
  639. }
  640. $out+=' ';
  641. });
  642. $out+=' </ul> <ul class="row hide"> ';
  643. $each(columns.columnTime,function(option,i){
  644. $out+=' <li class="col-md-3 j-book-time ';
  645. if(option.selectIndex > -1 ){
  646. $out+=' on ';
  647. }
  648. $out+=' ';
  649. if(option.now >= 18 && option.num < 12 ){
  650. $out+=' current ';
  651. }else if(option.now >= 19 && option.num <= 12 ){
  652. $out+=' current ';
  653. }
  654. $out+='" data-value="';
  655. $out+=$escape(option.value);
  656. $out+='" data-time="';
  657. $out+=$escape(option.min);
  658. $out+='"> <a href="javascript:;" class="time"> <span class="num">';
  659. $out+=$escape(option.text);
  660. $out+='</span> <span class="disable">不可预约</span> <span class="able">预约</span> </a> </li> ';
  661. });
  662. $out+=' </ul> <ul class="row hide"> ';
  663. $each(columns.columnTime,function(option,i){
  664. $out+=' <li class="col-md-3 j-book-time ';
  665. if(option.selectIndex > -1 ){
  666. $out+=' on ';
  667. }
  668. $out+='" data-value="';
  669. $out+=$escape(option.value);
  670. $out+='"> <a href="javascript:;" class="time"> <span class="num">';
  671. $out+=$escape(option.text);
  672. $out+='</span> <span class="disable">不可预约</span> <span class="able">预约</span> </a> </li> ';
  673. });
  674. $out+=' </ul> <ul class="row hide"> ';
  675. $each(columns.columnTime,function(option,i){
  676. $out+=' <li class="col-md-3 j-book-time ';
  677. if(option.selectIndex > -1 ){
  678. $out+=' on ';
  679. }
  680. $out+='" data-value="';
  681. $out+=$escape(option.value);
  682. $out+='"> <a href="javascript:;" class="time"> <span class="num">';
  683. $out+=$escape(option.text);
  684. $out+='</span> <span class="disable">不可预约</span> <span class="able">预约</span> </a> </li> ';
  685. });
  686. $out+=' </ul> <ul class="row hide"> ';
  687. $each(columns.columnTime,function(option,i){
  688. $out+=' <li class="col-md-3 j-book-time ';
  689. if(option.selectIndex > -1 ){
  690. $out+=' on ';
  691. }
  692. $out+='" data-value="';
  693. $out+=$escape(option.value);
  694. $out+='"> <a href="javascript:;" class="time"> <span class="num">';
  695. $out+=$escape(option.text);
  696. $out+='</span> <span class="disable">不可预约</span> <span class="able">预约</span> </a> </li> ';
  697. });
  698. $out+=' </ul> <ul class="row hide"> ';
  699. $each(columns.columnTime,function(option,i){
  700. $out+=' <li class="col-md-3 j-book-time ';
  701. if(option.selectIndex > -1 ){
  702. $out+=' on ';
  703. }
  704. $out+='" data-value="';
  705. $out+=$escape(option.value);
  706. $out+='"> <a href="javascript:;" class="time"> <span class="num">';
  707. $out+=$escape(option.text);
  708. $out+='</span> <span class="disable">不可预约</span> <span class="able">预约</span> </a> </li> ';
  709. });
  710. $out+=' </ul> <ul class="row hide"> ';
  711. $each(columns.columnTime,function(option,i){
  712. $out+=' <li class="col-md-3 j-book-time ';
  713. if(option.selectIndex > -1 ){
  714. $out+=' on ';
  715. }
  716. $out+='" data-value="';
  717. $out+=$escape(option.value);
  718. $out+='"> <a href="javascript:;" class="time"> <span class="num">';
  719. $out+=$escape(option.text);
  720. $out+='</span> <span class="disable">不可预约</span> <span class="able">预约</span> </a> </li> ';
  721. });
  722. $out+=' </ul> <ul class="row hide"> ';
  723. $each(columns.columnTime,function(option,i){
  724. $out+=' <li class="col-md-3 j-book-time ';
  725. if(option.selectIndex > -1 ){
  726. $out+=' on ';
  727. }
  728. $out+='" data-value="';
  729. $out+=$escape(option.value);
  730. $out+='"> <a href="javascript:;" class="time"> <span class="num">';
  731. $out+=$escape(option.text);
  732. $out+='</span> <span class="disable">不可预约</span> <span class="able">预约</span> </a> </li> ';
  733. });
  734. $out+=' </ul> <ul class="row hide"> ';
  735. $each(columns.columnTime,function(option,i){
  736. $out+=' <li class="col-md-3 j-book-time ';
  737. if(option.selectIndex > -1 ){
  738. $out+=' on ';
  739. }
  740. $out+='" data-value="';
  741. $out+=$escape(option.value);
  742. $out+='"> <a href="javascript:;" class="time"> <span class="num">';
  743. $out+=$escape(option.text);
  744. $out+='</span> <span class="disable">不可预约</span> <span class="able">预约</span> </a> </li> ';
  745. });
  746. $out+=' </ul> </div> </div> </div> ';
  747. return new String($out);
  748. });/*v:1*/
  749. template('common/star',function($data,$filename
  750. /**/) {
  751. 'use strict';var $utils=this,$helpers=$utils.$helpers,score=$data.score,$out='';$out+='<div class="star-container"> <div class="box-container box"> <div class="star-item ';
  752. if(score >=1 ){
  753. $out+='enable';
  754. }
  755. $out+='"></div> <div class="star-item ';
  756. if(score >=2 ){
  757. $out+='enable';
  758. }
  759. $out+='"></div> <div class="star-item ';
  760. if(score >=3 ){
  761. $out+='enable';
  762. }
  763. $out+='"></div> <div class="star-item ';
  764. if(score >=4 ){
  765. $out+='enable';
  766. }
  767. $out+='"></div> <div class="star-item ';
  768. if(score >=5 ){
  769. $out+='enable';
  770. }
  771. $out+='"></div> </div> </div>';
  772. return new String($out);
  773. });/*v:1*/
  774. template('desc/index',function($data,$filename
  775. /**/) {
  776. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,$out='';if(showNavBar ){
  777. $out+=' <header class="bar bar-nav"> <a class="left-button back-button"> <div class="icon icon-left-nav"></div> </a> <h1 class="title">服务介绍</h1> </header> ';
  778. }
  779. $out+=' <div class="content" id="descScroll"> <div class="scroller"> <div> </div> </div>';
  780. return new String($out);
  781. });/*v:1*/
  782. template('help/index',function($data,$filename
  783. /**/) {
  784. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,$escape=$utils.$escape,title=$data.title,$out='';if(showNavBar ){
  785. $out+=' <header class="bar bar-nav"> <a class="left-button back-button"> <div class="icon icon-left-nav"></div> </a> <h1 class="title">';
  786. $out+=$escape(title);
  787. $out+='</h1> </header> ';
  788. }
  789. $out+=' <div class="content" id="helpScroll"> <div class="scroller"> <div class="page-content"> </div> </div> </div>';
  790. return new String($out);
  791. });/*v:1*/
  792. template('hire/index',function($data,$filename
  793. /**/) {
  794. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,$out='';if(showNavBar ){
  795. $out+=' <header class="bar bar-nav"> <a class="left-button back-button"> <div class="icon icon-left-nav"></div> </a> <h1 class="title">招贤纳士</h1> </header> ';
  796. }
  797. $out+=' <div class="content" id="placeOrderScroll"> <div class="top-content"> <p>招募上门宠物保洁师</p> </div> <div class="page-content"> <div class="logo-box"> <div class="logo"></div> <h2>壹管家宠物</h2> <h3>专业宠物服务平台</h3> </div> <div class="des"> <p>岗位职责</p> <p>资深保洁师:独立操作各种宠物造型的修剪工作。</p> <p>保洁师助理:独立完成宠物洗澡工作。</p> <br> <p class="bold">公司福利</p> <p class="bold">1.远高于传统美容店的底薪。</p> <p class="bold">2.全上海各区都有宿舍,就近安排住宿。</p> <p class="bold">3.完善的晋升机制,对业绩考评优秀的保洁师,公司将统一组织培训深造、考级。</p> <br> ';
  798. if(!showNavBar ){
  799. $out+=' <p class="bold">联系电话: <a href="tel:021-62109097">021-62109097</a> </p> ';
  800. }else{
  801. $out+=' <p class="bold">联系电话: <a class="service-telephone">021-62109097</a> </p> ';
  802. }
  803. $out+=' <br> </div> </div> </div> ';
  804. return new String($out);
  805. });/*v:68*/
  806. template('home/index',function($data,$filename
  807. /**/) {
  808. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,$out='';if(showNavBar ){
  809. $out+=' <header class="bar bar-nav"> <a class="left-button back-button"> <div class="icon icon-left-nav"></div> </a> <a class="right-button service-telephone"> <div></div> </a> <h1 class="title">壹管家</h1> </header> ';
  810. }
  811. $out+=' <div class="content"> <div class="box-container"> <div class="box-container box box-vertical"> <div id="homeScroll" class="scroll-container box-flex-1"> <div class="scroller"> <div class="home-content"> <div class="swiper-container swiper-container-horizontal"> <div class="swiper-wrapper" style="transform: translate3d(0px, 0px, 0px); transition-duration: 0ms;"> <div class="swiper-slide swiper-slide-active btn-banner-recharge"><img src="http://odulvej8l.bkt.clouddn.com/banner_1.jpg" alt=""></div> <div class="swiper-slide swiper-slide-next btn-banner-coupon"><img src="http://odulvej8l.bkt.clouddn.com/test_banner_21.png" alt=""></div> </div> <div class="swiper-pagination swiper-pagination-clickable swiper-pagination-bullets"><span class="swiper-pagination-bullet swiper-pagination-bullet-active"></span><span class="swiper-pagination-bullet"></span></div> </div> <div> <ul class="products-list" id="list0"> <li class="btn-product" style="border-top: 1px solid rgb(241, 241, 241); border-right: 1px solid rgb(241, 241, 241); border-bottom: 1px solid rgb(241, 241, 241);width: 49%; text-align: center; padding-top: 10px; padding-bottom: 10px" data-product-type="1"> <img src="http://odulvej8l.bkt.clouddn.com/%E6%97%A5%E5%B8%B8%E6%B8%85%E6%B4%81icon_1.png" width="50px" height="50px"> <div class="extra-service-name">日常清洁</div> </li> <li class="btn-product" style="border-top: 1px solid rgb(241, 241, 241); border-bottom: 1px solid rgb(241, 241, 241);width: 49%; text-align: center; padding-top: 10px; padding-bottom: 10px" data-product-type="2"> <img src="http://odulvej8l.bkt.clouddn.com/%E6%B7%B1%E5%BA%A6%E6%B8%85%E6%B4%81icon_1.png" width="50px" height="50px"> <div class="extra-service-name">深度清洁</div> </li> <li class="btn-product" style="border-right: 1px solid rgb(241, 241, 241);border-bottom: 1px solid rgb(241, 241, 241);width: 49%; text-align: center; padding-top: 10px; padding-bottom: 10px" data-product-type="3"> <img src="http://odulvej8l.bkt.clouddn.com/%E9%99%A4%E8%9E%A8%E6%9D%80%E8%8F%8Cicon_01.png" width="50px" height="50px"> <div class="extra-service-name">除螨杀菌</div> </li> <li class="btn-product" style="border-bottom: 1px solid rgb(241, 241, 241);width: 49%; text-align: center; padding-top: 10px; padding-bottom: 10px" data-product-type="4"> <img src="http://odulvej8l.bkt.clouddn.com/%E5%AE%B6%E7%94%B5%E6%B8%85%E6%B4%97icon_01.png" width="50px" height="50px"> <div class="extra-service-name">家电清洗</div> </li> <li class="btn-product" style="border-right: 1px solid rgb(241, 241, 241);border-bottom: 1px solid rgb(241, 241, 241);width: 49%; text-align: center; padding-top: 10px; padding-bottom: 10px" data-product-type="5"> <img src="http://odulvej8l.bkt.clouddn.com/%E6%96%B0%E5%B1%85%E5%BC%80%E8%8D%92icon_01.png" width="50px" height="50px"> <div class="extra-service-name">新居开荒</div> </li> <li class="btn-product" style="border-bottom: 1px solid rgb(241, 241, 241);width: 49%; text-align: center; padding-top: 10px; padding-bottom: 10px" data-product-type="6"> <img src="http://odulvej8l.bkt.clouddn.com/%E6%93%A6%E7%8E%BB%E7%92%83icon-003.png" width="50px" height="50px"> <div class="extra-service-name">擦玻璃</div> </li> <li class="btn-product" style="border-right: 1px solid rgb(241, 241, 241);border-bottom: 1px solid rgb(241, 241, 241);width: 49%; text-align: center; padding-top: 10px; padding-bottom: 10px" data-product-type="7"> <img src="http://odulvej8l.bkt.clouddn.com/%E6%AF%8D%E5%A9%B4icon-002.png" width="50px" height="50px"> <div class="extra-service-name">母婴房清洁</div> </li> <li class="btn-product" style="border-bottom: 1px solid rgb(241, 241, 241);width: 49%; text-align: center; padding-top: 10px; padding-bottom: 10px" data-product-type="8"> <img src="http://odulvej8l.bkt.clouddn.com/%E7%A7%9F%E6%88%BFicon-001.png" width="50px" height="50px"> <div class="extra-service-name">租房大扫除</div> </li> </ul> </div> <div style="width: 100%;padding-bottom: 14%"></div> </div> </div> </div> <div class="prevent-scroll"> <div class="box my-action"> <div class="width-percent-33"> <div class="title-container-square"> <a class="btn-home-action btn-action-my-order"> <div class="logo logo-my-order"></div> <div class="name">首页</div> </a> </div> </div> <div class="width-percent-33"> <div class="title-container-square"> <a class="btn-home-action btn-action-logo"> <div class="logo logo-my-logo"></div> </a> </div> </div> <div class="width-percent-33"> <div class="title-container-square"> <a class="btn-home-action btn-action-coupon"> <div class="logo logo-coupon"></div> <div class="name">我的</div> </a> </div> </div> </div> </div> </div> </div> </div>';
  812. return new String($out);
  813. });/*v:13*/
  814. template('mine/index',function($data,$filename
  815. /**/) {
  816. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,$escape=$utils.$escape,title=$data.title,userName=$data.userName,userBalance=$data.userBalance,defaultAddress=$data.defaultAddress,$out='';if(showNavBar ){
  817. $out+=' <header class="bar bar-nav"> <a class="left-button back-button"> <div class="icon icon-left-nav"></div> </a> <h1 class="title">';
  818. $out+=$escape(title);
  819. $out+='</h1> </header> ';
  820. }
  821. $out+=' <div class="content"> <div class="box-container box box-vertical"> <div id="mineScroll" class="scroll-container box-flex-1"> <div style="color: #59616c; font-size:18px;"> <div style="width: 100%;"> <img src="http://odulvej8l.bkt.clouddn.com/test_banner_22.png" style="width: 100%;margin-top: -6%;"/> <div style="width: 100%; padding-top: 20px; padding-bottom: 20px; text-align: center;">';
  822. $out+=$escape(userName);
  823. $out+='</div> <div style="width: 100%; padding-bottom: 20px; text-align: center;">余额:';
  824. $out+=$escape(userBalance);
  825. $out+='元</div> </div> <ul class="table-view" style="margin-top: 10px;"> <li class="table-view-cell"> <a class="navigate-right btn-my-order"> <img src="http://oduj3utzz.bkt.clouddn.com/cv87b89c7v89bc789vb798cbv.png" width="20px" height="20px" style="position: relative; top: 4px;"/> 我的订单 </a> </li> <li class="table-view-cell"> <a class="navigate-right btn-address-list"> <img src="http://oduj3utzz.bkt.clouddn.com/a4s5d4a6s5d4asd5sa4d56asd.png" width="20px" height="20px" style="position: relative; top: 4px;"/> 常用地址 <span class="table-view-cell-right-label" id="default-address">';
  826. $out+=$escape(defaultAddress);
  827. $out+='</span> </a> </li> <li class="table-view-cell"> <a class="navigate-right btn-recharge"> <img src="http://oduj3utzz.bkt.clouddn.com/ytu5t4y56u4ty65u46tyu465.png" width="20px" height="20px" style="position: relative; top: 4px;"/> 充值卡 </a> </li> <li class="table-view-cell"> <a class="navigate-right btn-coupon"> <img src="http://oduj3utzz.bkt.clouddn.com/1rt2y12rty123rt1y321try31rt3y.png" width="20px" height="20px" style="position: relative; top: 4px;"/> 代金券 </a> </li> <li class="table-view-cell"> <a class="navigate-right btn-about"> <img src="http://oduj3utzz.bkt.clouddn.com/7uo8i7o98ui78o97u89iouio789.png" width="20px" height="20px" style="position: relative; top: 4px;"/> 关于壹管家 </a> </li> </ul> <div style="width: 100%; padding-top: 12%;text-align: center; color: #b6bbc2; font-size:16px;">专属管家 服务无忧</div> </div> </div> </div> </div>';
  828. return new String($out);
  829. });/*v:1*/
  830. template('myCoupon/cell',function($data,$filename
  831. /**/) {
  832. 'use strict';var $utils=this,$helpers=$utils.$helpers,$escape=$utils.$escape,coupon=$data.coupon,isRemind=$data.isRemind,start_time_str=$data.start_time_str,end_time_str=$data.end_time_str,selected=$data.selected,$out='';$out+='<div class="box"> <div class="coupon-left"> <div class="coupon-value-box box-center"> <div> ¥<span class="coupon-value">';
  833. $out+=$escape(coupon.value);
  834. $out+='</span> </div> </div> </div> <div class="coupon-right box box-vertical"> <div class="box box-align-center box-flex-1"> <div class="coupon-name">';
  835. $out+=$escape(coupon.name);
  836. $out+='</div> </div> <div class="box box-align-center box-flex-1"> <div class="coupon-desc"> ';
  837. if(coupon.type == '0'){
  838. $out+=' <div>满';
  839. $out+=$escape(coupon.min_price);
  840. $out+='元可用 不含附加项目</div> ';
  841. }else{
  842. $out+=' <div>仅限';
  843. $out+=$escape(coupon.type_str);
  844. $out+=' 满';
  845. $out+=$escape(coupon.min_price);
  846. $out+='元可用</div> ';
  847. }
  848. $out+=' <div class="';
  849. if(isRemind){
  850. $out+='coupon-remind';
  851. }
  852. $out+='">有效期:';
  853. $out+=$escape(start_time_str);
  854. $out+='-';
  855. $out+=$escape(end_time_str);
  856. $out+='</div> ';
  857. if(coupon.workday_limit !== 0){
  858. $out+=' <span class="limit">';
  859. $out+=$escape(coupon.workday_limit_str);
  860. $out+='</span> ';
  861. if(coupon.time_limit_start && coupon.time_limit_end){
  862. $out+=' <span class="limit">';
  863. $out+=$escape(coupon.time_limit_start);
  864. $out+='点 - ';
  865. $out+=$escape(coupon.time_limit_end);
  866. $out+='点使用</span> ';
  867. }else{
  868. $out+=' 使用 ';
  869. }
  870. $out+=' ';
  871. }else{
  872. $out+=' ';
  873. if(coupon.time_limit_start && coupon.time_limit_end){
  874. $out+=' <span class="limit">仅限每日';
  875. $out+=$escape(coupon.time_limit_start);
  876. $out+='点 - ';
  877. $out+=$escape(coupon.time_limit_end);
  878. $out+='点使用</span> ';
  879. }
  880. $out+=' ';
  881. }
  882. $out+=' </div> </div> </div> ';
  883. if(selected){
  884. $out+=' <div class="box box-flex-1 box-pack-end box-align-center coupon-selected"> <span class="icon icon-check"></span> </div> ';
  885. }
  886. $out+=' </div> ';
  887. return new String($out);
  888. });/*v:1*/
  889. template('myCoupon/exchange',function($data,$filename
  890. /**/) {
  891. 'use strict';var $utils=this,$helpers=$utils.$helpers,$each=$utils.$each,coupons=$data.coupons,coupon=$data.coupon,i=$data.i,$escape=$utils.$escape,$out='';$out+='<p class="coupon-info">兑换码的获取请随时关注壹管家的优惠活动。</p> ';
  892. $each(coupons.useable_coupons,function(coupon,i){
  893. $out+=' <div class="card coupon-card"> <ul class="table-view"> <li class="table-view-cell coupon-cell"> <div class="box"> <div class="coupon-left"> <div class="coupon-value-box box-center"> <div> ¥<span class="coupon-value">';
  894. $out+=$escape(coupon.coupon.value);
  895. $out+='</span> </div> </div> </div> <div class="coupon-right box box-vertical"> <div class="box box-align-center box-flex-1"> <div class="coupon-name">';
  896. $out+=$escape(coupon.coupon.name);
  897. $out+='</div> </div> <div class="box box-align-center box-flex-1"> <div class="coupon-desc"> <div>';
  898. $out+=$escape(coupon.coupon.type_str);
  899. $out+=' 满';
  900. $out+=$escape(coupon.coupon.min_price);
  901. $out+='元可用</div> <div>截止日期:';
  902. $out+=$escape(coupon.end_time_str);
  903. $out+='</div> </div> </div> </div> </div> </li> </ul> </div> ';
  904. });
  905. $out+=' ';
  906. $each(coupons.used_coupons,function(coupon,i){
  907. $out+=' <div class="card coupon-card"> <ul class="table-view"> <li class="table-view-cell coupon-cell"> <div class="box"> <div class="coupon-left"> <div class="coupon-value-box box-center"> <div> ¥<span class="coupon-value">';
  908. $out+=$escape(coupon.coupon.value);
  909. $out+='</span> </div> </div> </div> <div class="coupon-right box box-vertical"> <div class="box box-align-center box-flex-1"> <div class="coupon-name">';
  910. $out+=$escape(coupon.coupon.name);
  911. $out+='</div> </div> <div class="box box-align-center box-flex-1"> <div class="coupon-desc"> <div>';
  912. $out+=$escape(coupon.coupon.type_str);
  913. $out+=' 满';
  914. $out+=$escape(coupon.coupon.min_price);
  915. $out+='元可用</div> <div>截止日期:';
  916. $out+=$escape(coupon.end_time_str);
  917. $out+='</div> </div> </div> </div> </div> </li> </ul> </div> ';
  918. });
  919. $out+=' ';
  920. $each(coupons.overtime_coupons,function(coupon,i){
  921. $out+=' <div class="card coupon-card"> <ul class="table-view"> <li class="table-view-cell coupon-cell"> <div class="box"> <div class="coupon-left"> <div class="coupon-value-box box-center"> <div> ¥<span class="coupon-value">';
  922. $out+=$escape(coupon.coupon.value);
  923. $out+='</span> </div> </div> </div> <div class="coupon-right box box-vertical"> <div class="box box-align-center box-flex-1"> <div class="coupon-name">';
  924. $out+=$escape(coupon.coupon.name);
  925. $out+='</div> </div> <div class="box box-align-center box-flex-1"> <div class="coupon-desc"> <div>';
  926. $out+=$escape(coupon.coupon.type_str);
  927. $out+=' 满';
  928. $out+=$escape(coupon.coupon.min_price);
  929. $out+='元可用</div> <div>截止日期:';
  930. $out+=$escape(coupon.end_time_str);
  931. $out+='</div> </div> </div> </div> </div> </li> </ul> </div> ';
  932. });
  933. return new String($out);
  934. });/*v:2*/
  935. template('myCoupon/index',function($data,$filename
  936. /**/) {
  937. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,$each=$utils.$each,usable_coupons=$data.usable_coupons,coupon=$data.coupon,i=$data.i,include=function(filename,data){data=data||$data;var text=$utils.$include(filename,data,$filename);$out+=text;return $out;},used_coupons=$data.used_coupons,overtime_coupons=$data.overtime_coupons,$out='';if(showNavBar ){
  938. $out+=' <header class="bar bar-nav"> <a class="left-button back-button"> <div class="icon icon-left-nav"></div> </a> <h1 class="title">我的优惠券</h1> </header> ';
  939. }
  940. $out+=' <div class="content" id="myCouponScroll"> <div class="scroller"> <div class="page-content"> <div class="coupon-form"> <div class="coupon-code-item"> <input type="tel" name="coupon-code" id="coupon-code" placeholder="请输入兑换码"> </div> <button class="btn-coupon">兑换</button> </div> <div class="coupon-items"> <p class="coupon-info">兑换码的获取请随时关注壹管家的优惠活动。</p> ';
  941. $each(usable_coupons,function(coupon,i){
  942. $out+=' <div class="card coupon-card"> <ul class="table-view"> <li class="table-view-cell coupon-cell"> ';
  943. include('./cell',coupon);
  944. $out+=' </li> </ul> </div> ';
  945. });
  946. $out+=' ';
  947. $each(used_coupons,function(coupon,i){
  948. $out+=' <div class="card coupon-card used"> <ul class="table-view"> <li class="table-view-cell coupon-cell"> ';
  949. include('./cell',coupon);
  950. $out+=' </li> </ul> </div> ';
  951. });
  952. $out+=' ';
  953. $each(overtime_coupons,function(coupon,i){
  954. $out+=' <div class="card coupon-card disabled"> <ul class="table-view"> <li class="table-view-cell coupon-cell"> ';
  955. include('./cell',coupon);
  956. $out+=' </li> </ul> </div> ';
  957. });
  958. $out+=' </div> </div> </div> </div>';
  959. return new String($out);
  960. });/*v:3*/
  961. template('myOrder/detail',function($data,$filename
  962. /**/) {
  963. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,$escape=$utils.$escape,orderID=$data.orderID,order=$data.order,$each=$utils.$each,data=$data.data,i=$data.i,appendOrder=$data.appendOrder,time=$data.time,$out='';if(showNavBar ){
  964. $out+=' <header class="bar bar-nav"> <a class="left-button back-button"> <div class="icon icon-left-nav"></div> </a> <a class="right-button service-telephone"> <div></div> </a> <h1 class="title">订单详情</h1> </header> ';
  965. }
  966. $out+=' <div class="content box box-vertical"> <div id="myOrderDetailScroll';
  967. $out+=$escape(orderID);
  968. $out+='" class="box-flex-1 scroll-container"> <div class="scroller"> <div class="page-content list-content"> <ul class="table-view"> <li class="table-view-cell"> <div class="order-detail-item"> <span class="item-name">订单状态</span> <div class="item-detail">';
  969. $out+=$escape(order.status_str);
  970. $out+='</div> </div> <div class="order-detail-item"> <span class="item-name">订单编号</span> <div class="item-detail">';
  971. $out+=$escape(order.order_num);
  972. $out+='</div> </div> <div class="order-detail-item"> <span class="item-name">服务地点</span> <div class="item-detail"> ';
  973. $out+=$escape(order.address.city);
  974. $out+=$escape(order.address.area);
  975. $out+=$escape(order.address.poi.name);
  976. $out+=$escape(order.address.detail);
  977. $out+='</div> </div> <div class="order-detail-item"> <span class="item-name">联系电话</span> <div class="item-detail"><a href="javascript:;" class="j-phone">';
  978. $out+=$escape(order.address.mobile);
  979. $out+='</a></div> </div> <div class="order-detail-item"> <span class="item-name">预约时间</span> <div class="item-detail">';
  980. $out+=$escape(order.booking_time_str);
  981. $out+='</div> </div> <div class="order-detail-item"> <span class="item-name">下单时间</span> <div class="item-detail">';
  982. $out+=$escape(order.order_time_str);
  983. $out+='</div> </div> ';
  984. if(order.cancel_time){
  985. $out+=' <div class="order-detail-item"> <span class="item-name">取消时间</span> <div class="item-detail">';
  986. $out+=$escape(order.cancel_time_str);
  987. $out+='</div> </div> ';
  988. }
  989. $out+=' ';
  990. if(order.finish_time){
  991. $out+=' <div class="order-detail-item"> <span class="item-name">完成时间</span> <div class="item-detail">';
  992. $out+=$escape(order.finish_time_str);
  993. $out+='</div> </div> ';
  994. }
  995. $out+=' </li> <li class="table-view-divider"></li> ';
  996. if(order.status == 4 && order.technician_name){
  997. $out+=' <li class="table-view-cell"> <div class="order-label">';
  998. $out+=$escape(order.technician_name);
  999. $out+='已出发,电话:<a href="javascript:;" class="j-phone">';
  1000. $out+=$escape(order.tech_info.mobile);
  1001. $out+='</a></div> <div id="map-container-';
  1002. $out+=$escape(orderID);
  1003. $out+='" style="height: 200px;"> </div> </li> ';
  1004. }
  1005. $out+=' <li class="table-view-cell"> <div class="order-label"> <div class="label-name">订单明细</div> </div> </li> ';
  1006. $each(order.products,function(data,i){
  1007. $out+=' <li class="table-view-cell"> <div class="order-label"> <div class="label-name">';
  1008. $out+=$escape(data.product.name);
  1009. $out+='<span class="service-count">x';
  1010. $out+=$escape(data.product.count);
  1011. $out+='</span></div> ';
  1012. if(data.product.price != ''){
  1013. $out+=' <div class="label-value">';
  1014. $out+=$escape(data.product.price);
  1015. $out+='元</div> ';
  1016. }else{
  1017. $out+=' <div class="label-value">';
  1018. $out+=$escape(data.extra.price);
  1019. $out+='元</div> ';
  1020. }
  1021. $out+=' </div> </li> ';
  1022. });
  1023. $out+=' <li class="table-view-cell"> <div class="order-label"> <div class="label-name">总价</div> <div class="label-value">';
  1024. $out+=$escape(order.final_price);
  1025. $out+='元</div> </div> </li> <li class="table-view-cell"> <div class="order-label"> <div class="label-name">订单状态</div> <div class="label-value">';
  1026. $out+=$escape(order.status_str);
  1027. $out+='</div> </div> </li> ';
  1028. if(order.pay_channel !== ''){
  1029. $out+=' <li class="table-view-cell"> <div class="order-label"> <div class="label-name">支付方式</div> <div class="label-value">';
  1030. if(order.pay_channel == 'alipay'){
  1031. $out+='支付宝';
  1032. }else{
  1033. $out+='微信';
  1034. }
  1035. $each(order.append_orders,function(appendOrder,i){
  1036. $out+='+';
  1037. if(appendOrder.pay_channel == 'alipay'){
  1038. $out+='支付宝';
  1039. }else{
  1040. $out+='微信';
  1041. }
  1042. });
  1043. $out+='</div> </div> </li> ';
  1044. }
  1045. $out+=' <li class="table-view-divider"></li> <li class="table-view-cell"> <div class="order-label order-comment"> <span class="order-comment-label">订单备注</span> ';
  1046. if(order.memo !== ''){
  1047. $out+='(';
  1048. $out+=$escape(order.memo);
  1049. $out+=')';
  1050. }
  1051. $out+=' </div> </li> </ul> <div class="order-label btn-group"> ';
  1052. if(order.status == 0){
  1053. $out+=' <div class="table-cell-accessory"> <a class="order-btn btn-default order-btn-cancel" data-order-id="';
  1054. $out+=$escape(order.id);
  1055. $out+='" data-order-name="';
  1056. $out+=$escape(order.products[0].name);
  1057. $out+='" data-order-price="';
  1058. $out+=$escape(order.price);
  1059. $out+='">取消订单</a> <a class="order-btn btn-warning order-btn-pay" data-order-id="';
  1060. $out+=$escape(order.id);
  1061. $out+='" data-order-name="';
  1062. $out+=$escape(order.products[0].name);
  1063. $out+='" data-order-price="';
  1064. $out+=$escape(order.price);
  1065. $out+='">立即支付</a> </div> ';
  1066. }
  1067. $out+=' ';
  1068. if(order.status >= 1 && order.status <= 5){
  1069. $out+=' <div class="table-cell-accessory"> ';
  1070. if(order.booking_time > time && order.status == 1){
  1071. $out+=' <a class="order-btn btn-default order-btn-refund ';
  1072. if(order.booking_time - time <= 7200){
  1073. $out+='btn-alert-info';
  1074. }
  1075. $out+='" data-order-id="';
  1076. $out+=$escape(order.id);
  1077. $out+='" data-type="';
  1078. $out+=$escape(order.products[0].type);
  1079. $out+='" data-index="';
  1080. $out+=$escape(i);
  1081. $out+='">申请退款</a> ';
  1082. }
  1083. $out+=' ';
  1084. if(time > order.booking_time){
  1085. $out+=' <a class="order-btn btn-warning order-btn-done" data-order-id="';
  1086. $out+=$escape(order.id);
  1087. $out+='" data-order-name="';
  1088. $out+=$escape(order.products[0].name);
  1089. $out+='" data-order-price="';
  1090. $out+=$escape(order.price);
  1091. $out+='">确认完成</a> ';
  1092. }
  1093. $out+=' </div> ';
  1094. }
  1095. $out+=' ';
  1096. if(order.status == 6 && !order.have_comment){
  1097. $out+=' <div class="table-cell-accessory"> <a class="order-btn order-btn-review btn-main" data-order-id="';
  1098. $out+=$escape(order.id);
  1099. $out+='">立即评价</a> </div> ';
  1100. }
  1101. $out+=' </div> </div> </div> </div> </div> ';
  1102. return new String($out);
  1103. });/*v:2*/
  1104. template('myOrder/finish',function($data,$filename
  1105. /**/) {
  1106. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,$out='';if(showNavBar ){
  1107. $out+=' <header class="bar bar-nav"> <a class="left-button back-button"> <div class="icon icon-left-nav"></div> </a> <h1 class="title">确认完成</h1> </header> ';
  1108. }
  1109. $out+=' <div class="content content-padding"> <div class="text-center" style="font-size: 24px; color: #00a0e9; padding-top: 50px; padding-bottom: 50px">订单已完成,感谢使用壹管家的服务</div> <div class="box"> <div class="box-flex-1"> <button class="btn btn-block btn-default back-button">我的预约</button> </div> <div class="box-flex-1"> <button class="btn btn-block btn-success to-order">立即评价</button> </div> </div> </div> ';
  1110. return new String($out);
  1111. });/*v:1*/
  1112. template('myOrder/index',function($data,$filename
  1113. /**/) {
  1114. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,type=$data.type,$out='';if(showNavBar ){
  1115. $out+=' <header class="bar bar-nav"> <a class="left-button back-button"> <div class="icon icon-left-nav"></div> </a> <h1 class="title">我的预约</h1> </header> ';
  1116. }
  1117. $out+=' <div class="content box box-vertical"> <div class="segmented-control order-type-control prevent-scroll"> <a class="control-item ';
  1118. if(type == '1'){
  1119. $out+='active';
  1120. }
  1121. $out+='" data-order-type="1">预约中</a> <a class="control-item ';
  1122. if(type == '2'){
  1123. $out+='active';
  1124. }
  1125. $out+='" data-order-type="3">已完成</a> <a class="control-item ';
  1126. if(type == '3'){
  1127. $out+='active';
  1128. }
  1129. $out+='" data-order-type="2">已取消</a> </div> <div id="myOrderScroll" class="box-flex-1 scroll-container"> <div class="scroller"> <div class="page-content list-content"> </div> <div class="btn-more-container box-center more-container hide"> <a class="btn btn-block btn-more-orders" data-type="1">加载更多</a> </div> </div> </div> </div> ';
  1130. return new String($out);
  1131. });/*v:2*/
  1132. template('myOrder/list',function($data,$filename
  1133. /**/) {
  1134. 'use strict';var $utils=this,$helpers=$utils.$helpers,$each=$utils.$each,orders=$data.orders,order=$data.order,i=$data.i,$escape=$utils.$escape,append_order=$data.append_order,time=$data.time,$out='';$each(orders,function(order,i){
  1135. $out+=' <ul class="table-view"> <li class="table-view-cell"> <span class="order-desc-title">预约时间</span> <span class="order-desc-more">';
  1136. $out+=$escape(order.booking_time_str);
  1137. $out+='</span> <span class="order-precedence-status">';
  1138. if(order.precedence){
  1139. $out+='(加急)';
  1140. }
  1141. $out+='</span> <div class="table-cell-accessory"> <span class="order-status ';
  1142. if(order.status == 0){
  1143. $out+='order-status-pay';
  1144. }
  1145. $out+='"> ';
  1146. if(order.have_comment){
  1147. $out+='已评价';
  1148. }else{
  1149. $out+=$escape(order.status_str);
  1150. }
  1151. $out+=' </span> </div> </li> <li class="table-view-cell btn-order-detail" data-order-id="';
  1152. $out+=$escape(order.id);
  1153. $out+='"> <div> <div class="order-desc-line order-number"> <span class="order-desc-title">编号</span><span class="order-desc-more">';
  1154. $out+=$escape(order.order_num);
  1155. $out+='</span> </div> <div class="order-desc-line order-service-name"> <span class="order-desc-title">服务</span><span class="order-desc-more">';
  1156. $out+=$escape(order.products_str);
  1157. if(order.products[0].count > 1){
  1158. $out+='(';
  1159. $out+=$escape(order.products[0].count);
  1160. $out+='只) ';
  1161. }
  1162. $out+='</span> </div> ';
  1163. if(order.append_orders){
  1164. $out+=' ';
  1165. $each(order.append_orders,function(append_order,i){
  1166. $out+=' <div class="order-desc-line order-service-name order-append"> <span class="order-desc-title">追加</span><span class="order-desc-more">';
  1167. $out+=$escape(append_order.products_str);
  1168. $out+='</span> </div> ';
  1169. });
  1170. $out+=' ';
  1171. }
  1172. $out+=' <div class="order-desc-line order-service-name"> <span class="order-desc-title">价格</span> <span class="order-desc-more">';
  1173. $out+=$escape(order.pay_price.toFixed(2));
  1174. $out+='元</span> </div> </div> </li> ';
  1175. if(order.status == 0){
  1176. $out+=' <li class="table-view-cell brn-group"> &nbsp; <div class="table-cell-accessory"> <a class="order-btn btn-default order-btn-cancel" data-order-id="';
  1177. $out+=$escape(order.id);
  1178. $out+='" data-order-name="';
  1179. $out+=$escape(order.products[0].name);
  1180. $out+='" data-order-price="';
  1181. $out+=$escape(order.price);
  1182. $out+='">取消订单</a> <a class="order-btn btn-warning order-btn-pay" data-order-id="';
  1183. $out+=$escape(order.id);
  1184. $out+='" data-order-name="';
  1185. $out+=$escape(order.products[0].name);
  1186. $out+='" data-order-price="';
  1187. $out+=$escape(order.price);
  1188. $out+='">立即支付</a> </div> </li> ';
  1189. }
  1190. $out+=' ';
  1191. if(order.status >= 1 && order.status <= 5){
  1192. $out+=' <li class="table-view-cell brn-group"> &nbsp; <div class="table-cell-accessory"> ';
  1193. if(order.booking_time > time && order.status == 1){
  1194. $out+=' <a class="order-btn btn-default order-btn-refund ';
  1195. if(order.booking_time - time <= 7200){
  1196. $out+='btn-alert-info';
  1197. }
  1198. $out+='" data-order-id="';
  1199. $out+=$escape(order.id);
  1200. $out+='" data-type="';
  1201. $out+=$escape(order.products[0].type);
  1202. $out+='" data-index="';
  1203. $out+=$escape(i);
  1204. $out+='">申请退款</a> ';
  1205. }
  1206. $out+=' ';
  1207. if(time > order.booking_time){
  1208. $out+=' <a class="order-btn btn-warning order-btn-done" data-order-id="';
  1209. $out+=$escape(order.id);
  1210. $out+='" data-order-name="';
  1211. $out+=$escape(order.products[0].name);
  1212. $out+='" data-order-price="';
  1213. $out+=$escape(order.price);
  1214. $out+='">确认完成</a> ';
  1215. }
  1216. $out+=' </div> </li> ';
  1217. }
  1218. $out+=' ';
  1219. if(order.status == 6 && !order.have_comment){
  1220. $out+=' <li class="table-view-cell brn-group"> &nbsp; <div class="table-cell-accessory"> <a class="order-btn order-btn-review btn-main" data-order-id="';
  1221. $out+=$escape(order.id);
  1222. $out+='">立即评价</a> </div> </li> ';
  1223. }
  1224. $out+=' </ul> ';
  1225. });
  1226. $out+=' ';
  1227. return new String($out);
  1228. });/*v:1*/
  1229. template('myOrder/refund',function($data,$filename
  1230. /**/) {
  1231. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,$escape=$utils.$escape,order=$data.order,$each=$utils.$each,append_order=$data.append_order,i=$data.i,$out='';if(showNavBar ){
  1232. $out+=' <header class="bar bar-nav"> <a class="left-button back-button"> <div class="icon icon-left-nav"></div> </a> <h1 class="title">申请退款</h1> </header> ';
  1233. }
  1234. $out+=' <div class="content box box-vertical"> <div id="refundScroll" class="box-flex-1 scroll-container"> <div class="scroller"> <div class="page-content list-content"> <ul class="table-view"> <li class="table-view-cell"> <span class="order-desc-title">预约时间</span> <span class="order-desc-more">';
  1235. $out+=$escape(order.booking_time_str);
  1236. $out+='</span> <span class="order-precedence-status">';
  1237. if(order.precedence ){
  1238. $out+=' (加急) ';
  1239. }
  1240. $out+='</span> </li> <li class="table-view-cell"> <div> <div class="order-desc-line"> <span class="order-desc-title">编号</span><span class="order-desc-more">';
  1241. $out+=$escape(order.order_num);
  1242. $out+='</span> </div> <div class="order-desc-line order-service-name"> <span class="order-desc-title">服务</span><span class="order-desc-more">';
  1243. $out+=$escape(order.products_str);
  1244. $out+='</span> </div> ';
  1245. if(order.append_orders){
  1246. $out+=' ';
  1247. $each(order.append_orders,function(append_order,i){
  1248. $out+=' <div class="order-desc-line order-service-name"> <span class="order-desc-title">追加</span><span class="order-desc-more">';
  1249. $out+=$escape(append_order.products_str);
  1250. $out+='</span> </div> ';
  1251. });
  1252. $out+=' ';
  1253. }
  1254. $out+=' <div class="order-desc-line"> <span class="order-desc-title">价格</span> <span class="order-desc-more">';
  1255. $out+=$escape(order.final_price.toFixed(2));
  1256. $out+='元</span> ';
  1257. if(order.append_orders){
  1258. $out+=' ';
  1259. $each(order.append_orders,function(append_order,i){
  1260. $out+=' <span class="order-append-price">&nbsp; + ';
  1261. $out+=$escape(append_order.price);
  1262. $out+='元</span> ';
  1263. });
  1264. $out+=' ';
  1265. }
  1266. $out+=' </div> </div> </li> <li class="table-view-cell tip">退款将退至您的支付账户(3-10个工作日内到账)</li> </ul> <div class="btn-box"> <div class="btn btn-refund" data-order-id="';
  1267. $out+=$escape(order.id);
  1268. $out+='">申请退款</div> </div> </div> </div> </div> </div> ';
  1269. return new String($out);
  1270. });/*v:2*/
  1271. template('pay/index',function($data,$filename
  1272. /**/) {
  1273. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,$escape=$utils.$escape,orderType=$data.orderType,isShow=$data.isShow,orderCoupon=$data.orderCoupon,orderBalance=$data.orderBalance,orderPayValue=$data.orderPayValue,chubao=$data.chubao,wxPub=$data.wxPub,showWX=$data.showWX,$out='';if(showNavBar ){
  1274. $out+=' <header class="bar bar-nav"> <a class="cancel-button left-button"> <div class="icon icon-left-nav"></div> </a> <h1 class="title">收银台</h1> </header> ';
  1275. }
  1276. $out+=' <div class="content"> <ul class="table-view "> <li class="table-view-cell order-info"> <div>订单类型:';
  1277. $out+=$escape(orderType);
  1278. $out+='</div> ';
  1279. if(isShow ){
  1280. $out+=' <div>代金券支付:';
  1281. $out+=$escape(orderCoupon);
  1282. $out+='元</div> <div>余额支付:';
  1283. $out+=$escape(orderBalance);
  1284. $out+='元</div> ';
  1285. }
  1286. $out+=' <div>微信支付:';
  1287. $out+=$escape(orderPayValue);
  1288. $out+='元</div> </li> </ul> ';
  1289. if(chubao){
  1290. $out+=' ';
  1291. }else{
  1292. $out+=' <div class="content-padded "> 支付方式</div> ';
  1293. if(wxPub){
  1294. $out+=' <ul class="table-view"> <li class="table-view-cell"> <a href="javascript:void(0) " class="pay-option checked" data-value="wx_pub"> <i class="icon-weixin"></i> 微信支付 </a> </li> </ul> ';
  1295. }else{
  1296. $out+=' <ul class="table-view"> <li class="table-view-cell"> <a href="javascript:void(0)" class="pay-option checked" data-value="alipay"> <i class="icon-alipay"></i> 支付宝 </a> </li> ';
  1297. if(showWX){
  1298. $out+=' <li class="table-view-cell"> <a href="javascript:void(0)" class="pay-option" data-value="wx"> <i class="icon-weixin"></i> 微信支付 </a> </li> ';
  1299. }
  1300. $out+=' </ul> ';
  1301. }
  1302. $out+=' ';
  1303. }
  1304. $out+=' <div class="content-padded "> <a class="btn btn-main btn-block btn-pay" data-pay-channel="';
  1305. if(wxPub){
  1306. $out+='wx_pub';
  1307. }else{
  1308. $out+='alipay';
  1309. }
  1310. $out+='">确认支付</a> </div> </div> ';
  1311. return new String($out);
  1312. });/*v:1*/
  1313. template('picker/cell',function($data,$filename
  1314. /**/) {
  1315. 'use strict';var $utils=this,$helpers=$utils.$helpers,$each=$utils.$each,options=$data.options,option=$data.option,i=$data.i,$escape=$utils.$escape,include=function(filename,data){data=data||$data;var text=$utils.$include(filename,data,$filename);$out+=text;return $out;},$out='';$each(options,function(option,i){
  1316. $out+=' <div class="card coupon-card"> <ul class="table-view"> <li class="table-view-cell coupon-cell"> <a class="picker-option" data-value="';
  1317. $out+=$escape(option.id);
  1318. $out+='"> ';
  1319. include('../myCoupon/cell',option);
  1320. $out+=' </a> </li> </ul> </div> ';
  1321. });
  1322. return new String($out);
  1323. });/*v:1*/
  1324. template('picker/coupon',function($data,$filename
  1325. /**/) {
  1326. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,$escape=$utils.$escape,title=$data.title,$each=$utils.$each,options=$data.options,option=$data.option,i=$data.i,include=function(filename,data){data=data||$data;var text=$utils.$include(filename,data,$filename);$out+=text;return $out;},unuseables=$data.unuseables,$out='';if(showNavBar ){
  1327. $out+=' <header class="bar bar-nav"> <a href="javascript:void(0)" class="left-button back-button"> <div class="icon icon-left-nav"></div> </a> <h1 class="title">';
  1328. $out+=$escape(title);
  1329. $out+='</h1> </header> ';
  1330. }
  1331. $out+=' <div class="content" id="pickerScroll"> <div class="scroller"> <div class="page-content"> <div class="coupon-form"> <div class="coupon-code-item"> <input type="tel" name="coupon-code" id="coupon-code" placeholder="请输入兑换码"> </div> <button class="btn-coupon">兑换</button> </div> <p class="coupon-info">兑换码的获取请随时关注壹管家的优惠活动。</p> <div class="card-list"> ';
  1332. $each(options,function(option,i){
  1333. $out+=' <div class="card coupon-card"> <ul class="table-view"> <li class="table-view-cell coupon-cell"> <a class="picker-option" data-value="';
  1334. $out+=$escape(option.id);
  1335. $out+='"> ';
  1336. include('../myCoupon/cell',option);
  1337. $out+=' </a> </li> </ul> </div> ';
  1338. });
  1339. $out+=' </div> ';
  1340. if(unuseables.length > 0){
  1341. $out+=' <div class="card-list"> <p class="coupon-line">当前时段不可用</p> ';
  1342. $each(unuseables,function(option,i){
  1343. $out+=' <div class="card coupon-card"> <ul class="table-view"> <li class="table-view-cell coupon-cell"> <a class="picker-option unable" data-value="';
  1344. $out+=$escape(option.id);
  1345. $out+='"> ';
  1346. include('../myCoupon/cell',option);
  1347. $out+=' </a> </li> </ul> </div> ';
  1348. });
  1349. $out+=' </div> ';
  1350. }
  1351. $out+=' <div class="card"> <ul class="table-view"> <li class="table-view-cell"> <a class="picker-option" data-value=""> 不使用优惠券 </a> </li> </ul> </div> </div> </div> </div>';
  1352. return new String($out);
  1353. });/*v:1*/
  1354. template('picker/index',function($data,$filename
  1355. /**/) {
  1356. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,$escape=$utils.$escape,title=$data.title,$each=$utils.$each,options=$data.options,option=$data.option,i=$data.i,$out='';if(showNavBar ){
  1357. $out+=' <header class="bar bar-nav"> <a class="left-button back-button"> <div class="icon icon-left-nav"></div> </a> <h1 class="title">';
  1358. $out+=$escape(title);
  1359. $out+='</h1> </header> ';
  1360. }
  1361. $out+=' <div class="content" id="pickerScroll"> <div class="scroller"> <div class="page-content"> <ul class="table-view"> ';
  1362. $each(options,function(option,i){
  1363. $out+=' <li class="table-view-cell"> <a class="picker-option" data-value="';
  1364. $out+=$escape(option.value);
  1365. $out+='"> ';
  1366. $out+=$escape(option.text);
  1367. $out+=' <span class="picker-option-more">';
  1368. $out+=$escape(option.more);
  1369. $out+='</span> ';
  1370. if(option.selected ){
  1371. $out+=' <span class="icon icon-check pull-right selected-option"></span> ';
  1372. }
  1373. $out+=' </a> </li> ';
  1374. });
  1375. $out+=' </ul> </div> </div> </div>';
  1376. return new String($out);
  1377. });/*v:1*/
  1378. template('placeOrder/append',function($data,$filename
  1379. /**/) {
  1380. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,include=function(filename,data){data=data||$data;var text=$utils.$include(filename,data,$filename);$out+=text;return $out;},$out='';if(showNavBar ){
  1381. $out+=' <header class="bar bar-nav"> <a class="left-button back-button"> <div class="icon icon-left-nav"></div> </a> <h1 class="title">追加服务</h1> </header> ';
  1382. }
  1383. $out+=' <div class="content"> <div class="box-container"> <div class="box-container box box-vertical"> <div id="appendOrderScroll" class="scroll-container box-flex-1"> <ul class="table-view extra-service-list"> ';
  1384. include('./list');
  1385. $out+=' </ul> </div> <div class="result-item btn-container prevent-scroll"> <div class="cost"> 总计 <span class="order-cost" data-pay="0">¥ 0</span> </div> <a class="btn btn-main btn-block btn-place">确认预约</a> </div> </div> </div> </div> ';
  1386. return new String($out);
  1387. });/*v:77*/
  1388. template('placeOrder/index',function($data,$filename
  1389. /**/) {
  1390. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,$escape=$utils.$escape,title=$data.title,imgSrc=$data.imgSrc,extra=$data.extra,$each=$utils.$each,e=$data.e,$index=$data.$index,type=$data.type,petName=$data.petName,petWeight=$data.petWeight,extraServiceType=$data.extraServiceType,extraService=$data.extraService,extraServiceList=$data.extraServiceList,i=$data.i,beauticianName=$data.beauticianName,showCoupon=$data.showCoupon,productType=$data.productType,petPrice=$data.petPrice,precedence=$data.precedence,couponVal=$data.couponVal,balance=$data.balance,$out='';if(showNavBar ){
  1391. $out+=' <header class="bar bar-nav"> <a class="left-button back-button"> <div class="icon icon-left-nav"></div> </a> <h1 class="title">';
  1392. $out+=$escape(title);
  1393. $out+='</h1> </header> ';
  1394. }
  1395. $out+=' <div class="content"> <div class="box-container"> <div class="box-container box box-vertical"> <div id="placeOrderScroll" class="scroll-container box-flex-1"> <div class="scroller"> <div class=""> <ul class="table-view product-pic-o2o"> <li id="product-pic-bg"> <img src="';
  1396. $out+=$escape(imgSrc);
  1397. $out+='" style="width: 100%;" alt=""> <div class="product-name">';
  1398. $out+=$escape(title);
  1399. $out+='详情及评价 <span id="hot">&gt;&gt;&gt;</span></div> <div class="product-img"></div> </li> </ul> ';
  1400. if(extra){
  1401. $out+=' <div class="table-view main-service"> <p class="main-service-title">请选择</p> ';
  1402. $each(extra,function(e,$index){
  1403. $out+=' <div class="width-percent-50"> <div class="btn btn-main-service" data-extra-type="';
  1404. $out+=$escape(e.type);
  1405. $out+='" data-extra-price="';
  1406. $out+=$escape(e.price);
  1407. $out+='">';
  1408. $out+=$escape(e.type);
  1409. $out+=' </div> </div> ';
  1410. });
  1411. $out+=' </div> ';
  1412. }
  1413. $out+=' <ul class="table-view"> <li class="table-view-cell"> <div class="link-label show-product-picker selected"> 购买数量 <div class="service-count"> <div class="btn btn-sub">-</div> <input type="text" class="input-num" style="text-align: center;padding: 0;width: 24px;height: 24px" maxlength="3" value="1"/> <div class="btn btn-add">+</div> </div> </div> </li> <li class="table-view-cell"> <a class="navigate-right select-address" style="display: flex; justify-content:space-between; align-items: center; padding-right: 2rem"> 地址 <div class="table-view-cell-right-label media-body has-address" style="display: block; position: static;"> <span class="order-username"></span> <span class="order-mobile">添加服务地址</span> <p class="order-address"></p> </div> </a> </li> <!-- 不选宠物 <li class="table-view-cell"> ';
  1414. if(type == 7){
  1415. $out+=' <div class="link-label show-product-picker selected"> 狗狗数量 <div class="service-count"> <div class="btn btn-sub">-</div> <span class="num">1</span> <div class="btn btn-add">+</div> </div> </div> ';
  1416. }else if(type == 6){
  1417. $out+=' <div class="link-label show-product-picker selected"> 宠物 <span class="table-view-cell-right-label pet-info"> ';
  1418. if(petName == '' || petWeight == '' ){
  1419. $out+=' 选择宠物类型 ';
  1420. }else{
  1421. $out+=' ';
  1422. $out+=$escape(petName);
  1423. $out+=' (';
  1424. $out+=$escape(petWeight);
  1425. $out+=') ';
  1426. }
  1427. $out+=' </span> </div> ';
  1428. }else{
  1429. $out+=' <a class="navigate-right show-product-picker"> 宠物 <span class="table-view-cell-right-label pet-info"> ';
  1430. if(petName == '' || petWeight == ''){
  1431. $out+=' 选择宠物类型 ';
  1432. }else{
  1433. $out+=' ';
  1434. $out+=$escape(petName);
  1435. $out+=' (';
  1436. $out+=$escape(petWeight);
  1437. $out+=') ';
  1438. }
  1439. $out+=' </span> </a> ';
  1440. }
  1441. $out+=' </li> --> <li class="table-view-cell"> <a class="navigate-right show-time-picker" style="display: flex; justify-content:space-between; align-items: center; padding-right: 2rem"> 服务时间 <span class="table-view-cell-right-label booking-time" style="display: block; position: static; text-align: right">选择服务时间</span> </a> </li> </ul> <!-- 附加服务 <div class="extra-service-title">附加服务</div> <ul class="table-view extra-service-list"> ';
  1442. if(extraServiceType == 11){
  1443. $out+=' <li class="table-view-cell"> <a class="navigate-right item-checkbox checked" data-name="体外驱虫"> 体外驱虫 (40元)</a> </li> <li class="table-view-cell"> <a class="navigate-right item-checkbox" data-name="体内驱虫"> 体内驱虫 (30元)</a> </li> <li class="table-view-cell"> <a class="navigate-right item-checkbox" data-name="药浴"> 药浴 (40元)</a> </li> <li class="table-view-cell"> <a class="navigate-right item-checkbox" data-name="一次性局部染色"> 一次性局部染色 (28元)</a> </li> ';
  1444. }else if(extraServiceType == 12){
  1445. $out+=' <li class="table-view-cell"> <a class="navigate-right item-checkbox" data-name="体外驱虫"> 体外驱虫 (40元)</a> </li> <li class="table-view-cell"> <a class="navigate-right item-checkbox" data-name="体内驱虫"> 体内驱虫 (30元)</a> </li> <li class="table-view-cell"> <a class="navigate-right item-checkbox checked" data-name="药浴"> 药浴 (40元)</a> </li> <li class="table-view-cell"> <a class="navigate-right item-checkbox" data-name="一次性局部染色"> 一次性局部染色 (28元)</a> </li> ';
  1446. }else if(extraServiceType == 13){
  1447. $out+=' <li class="table-view-cell"> <a class="navigate-right item-checkbox" data-name="体外驱虫"> 体外驱虫 (40元)</a> </li> <li class="table-view-cell"> <a class="navigate-right item-checkbox" data-name="体内驱虫"> 体内驱虫 (30元)</a> </li> <li class="table-view-cell"> <a class="navigate-right item-checkbox" data-name="药浴"> 药浴 (40元)</a> </li> <li class="table-view-cell"> <a class="navigate-right item-checkbox checked" data-name="一次性局部染色"> 一次性局部染色 (28元)</a> </li> ';
  1448. }
  1449. $out+=' ';
  1450. $each(extraService,function(extraServiceList,i){
  1451. $out+=' <li class="table-view-cell"> <a class="navigate-right item-checkbox" data-select="0" data-id="';
  1452. $out+=$escape(extraServiceList.id);
  1453. $out+='" data-price="';
  1454. $out+=$escape(extraServiceList.price);
  1455. $out+='" data-name="';
  1456. $out+=$escape(extraServiceList.name);
  1457. $out+='" data-serviceType="';
  1458. $out+=$escape(extraServiceList.serviceType);
  1459. $out+='"> ';
  1460. $out+=$escape(extraServiceList.name);
  1461. $out+=' (';
  1462. $out+=$escape(extraServiceList.price);
  1463. $out+='元) </a> </li> ';
  1464. });
  1465. $out+=' </ul> --> <!-- 选择保洁师 <ul class="table-view"> <li class="table-view-cell"> <a class="navigate-right show-beautician-picker"> 系统推荐保洁师 <span class="table-view-cell-right-label booking-people"> ';
  1466. if(beauticianName !== ''){
  1467. $out+=$escape(beauticianName);
  1468. }else{
  1469. $out+='请选择';
  1470. }
  1471. $out+=' </span> </a> </li> </ul> --> <ul class="table-view"> <li class="table-view-cell ';
  1472. if(!showCoupon ){
  1473. $out+='disabled';
  1474. }
  1475. $out+='"> <a class="navigate-right show-coupon-picker" style="display: flex; justify-content:space-between; align-items: center; padding-right: 2rem"> 优惠券 <span class="table-view-cell-right-label coupon-selected-name" style="display: block; position: static; text-align: right">选择优惠券</span> </a> </li> <li class="table-view-cell memo"> <form class="input-group" id="order-form"> <input type="text" class="order-memo" id="order-memo" placeholder="(备注)可填写附加要求"> </form> </li> </ul> <!-- 订单详情 <ul class="table-view order-list"> <li class="table-view-cell select-pet ';
  1476. if(petName == ''){
  1477. $out+='hide';
  1478. }
  1479. $out+='"> <div class="link-label pet-type">';
  1480. $out+=$escape(petName);
  1481. $out+=' (';
  1482. $out+=$escape(petWeight);
  1483. $out+=')</div> <div class="link-label"> <span class="service-name">';
  1484. $out+=$escape(productType);
  1485. $out+='</span> <span class="table-view-cell-right-label total-cost">¥ ';
  1486. $out+=$escape(petPrice);
  1487. $out+='</span> </div> </li> <li class="table-view-cell calc-items hide"> ';
  1488. if(extraServiceType == 11){
  1489. $out+=' <div class="link-label select-extra-service" data-price="40">体外驱虫 <span class="table-view-cell-right-label precedence-cost">¥ 40</span> </div> ';
  1490. }else if(extraServiceType == 12){
  1491. $out+=' <div class="link-label select-extra-service" data-price="40">药浴 <span class="table-view-cell-right-label precedence-cost">¥ 40</span> </div> ';
  1492. }else if(extraServiceType == 13){
  1493. $out+=' <div class="link-label select-extra-service" data-price="28">一次性局部染色 <span class="table-view-cell-right-label precedence-cost">¥ 28</span> </div> ';
  1494. }
  1495. $out+=' ';
  1496. $each(extraService,function(extraServiceList,i){
  1497. $out+=' <div class="link-label select-extra-service" data-price="';
  1498. $out+=$escape(extraServiceList.price);
  1499. $out+='">';
  1500. $out+=$escape(extraServiceList.name);
  1501. $out+=' <span class="table-view-cell-right-label precedence-cost">¥';
  1502. $out+=$escape(extraServiceList.price);
  1503. $out+='</span> </div> ';
  1504. });
  1505. $out+=' </li> <li class="table-view-cell select-precedence ';
  1506. if(!precedence){
  1507. $out+='hide';
  1508. }
  1509. $out+='"> <div class="link-label select-precedence-label">加急 <span class="table-view-cell-right-label precedence-cost">¥ ';
  1510. $out+=$escape(precedence);
  1511. $out+='</span> </div> </li> <li class="table-view-cell select-coupon ';
  1512. if(!couponVal){
  1513. $out+='hide';
  1514. }
  1515. $out+='"> <div class="link-label select-coupon-label">优惠券 <span class="table-view-cell-right-label coupon-cost"> - ';
  1516. $out+=$escape(couponVal);
  1517. $out+=' </span> </div> </li> </ul> --> <div class="box bottom-box"> <div class="agreement-box"> <div class="agreement-touch-area"> </div> <input type="checkbox" class="agreement-checkbox" checked="checked"/> <span> 同意<a class="agreement">壹管家用户服务协议</a> </span> </div> </div> </div> </div> </div> <div class="result-item btn-container prevent-scroll" style="padding-left: 15px; display: flex; justify-content: space-between; align-items: center"> <div style="font-size: 0.8rem">账户余额<span class="order-cost" style="font-size: 0.8rem; color: #ec5330; text-align: right; display: inline">¥ ';
  1518. $out+=$escape(balance);
  1519. $out+='</span></div> <div style="font-size: 0.8rem">费用总计<span class="order-cost" style="font-size: 0.8rem; color: #ec5330; text-align: right; display: inline">¥ 0</span></div><a class="btn btn-main btn-block btn-place">确认预约</a> </div> </div> </div> </div> </div> ';
  1520. return new String($out);
  1521. });/*v:1*/
  1522. template('placeOrder/list',function($data,$filename
  1523. /**/) {
  1524. 'use strict';var $utils=this,$helpers=$utils.$helpers,$each=$utils.$each,extraService=$data.extraService,extraServiceList=$data.extraServiceList,i=$data.i,$escape=$utils.$escape,$out='';$each(extraService,function(extraServiceList,i){
  1525. $out+=' <li class="table-view-cell"> <a class="navigate-right item-checkbox ';
  1526. if(extraServiceList.seleted){
  1527. $out+='checked';
  1528. }
  1529. $out+='" data-select="0" data-id="';
  1530. $out+=$escape(extraServiceList.id);
  1531. $out+='" data-price="';
  1532. $out+=$escape(extraServiceList.price);
  1533. $out+='" data-serviceType="';
  1534. $out+=$escape(extraServiceList.serviceType);
  1535. $out+='"> ';
  1536. $out+=$escape(extraServiceList.name);
  1537. $out+=' (';
  1538. $out+=$escape(extraServiceList.price);
  1539. $out+='元) </a> </li> ';
  1540. });
  1541. $out+=' ';
  1542. return new String($out);
  1543. });/*v:1*/
  1544. template('placeOrder/list2',function($data,$filename
  1545. /**/) {
  1546. 'use strict';var $utils=this,$helpers=$utils.$helpers,$each=$utils.$each,extraService=$data.extraService,extraServiceList=$data.extraServiceList,i=$data.i,$escape=$utils.$escape,$out='';$each(extraService,function(extraServiceList,i){
  1547. $out+=' <div class="link-label select-extra-service ';
  1548. if(extraServiceList.seleted){
  1549. $out+='on';
  1550. }
  1551. $out+='" data-price="';
  1552. $out+=$escape(extraServiceList.price);
  1553. $out+='">';
  1554. $out+=$escape(extraServiceList.name);
  1555. $out+=' <span class="table-view-cell-right-label precedence-cost">¥';
  1556. $out+=$escape(extraServiceList.price);
  1557. $out+='</span> </div> ';
  1558. });
  1559. return new String($out);
  1560. });/*v:2*/
  1561. template('product/index',function($data,$filename
  1562. /**/) {
  1563. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,$escape=$utils.$escape,title=$data.title,type=$data.type,commentCounts=$data.commentCounts,isShowVideo=$data.isShowVideo,$each=$utils.$each,picLists=$data.picLists,pic=$data.pic,$index=$data.$index,tips=$data.tips,desc=$data.desc,note=$data.note,fromHome=$data.fromHome,$out='';if(showNavBar ){
  1564. $out+=' <header class="bar bar-nav"> <a class="left-button back-button"> <div class="icon icon-left-nav"></div> </a> <h1 class="title">';
  1565. $out+=$escape(title);
  1566. $out+='</h1> </header> ';
  1567. }
  1568. $out+=' <div class="content"> <div class="control-bar box-center ';
  1569. if(type > 10){
  1570. $out+='hide';
  1571. }
  1572. $out+='"> <div class="segmented-control type-control prevent-scroll"> <a class="control-item active" data-type="1">详情</a> <a class="control-item" data-type="2">评价(';
  1573. $out+=$escape(commentCounts);
  1574. $out+=')</a> </div> </div> <div class="product-main-container" ';
  1575. if(type > 10){
  1576. $out+='style="top: 0"';
  1577. }
  1578. $out+='> <div class="box-container type-container" id="descContainer"> <div class="box-container box box-vertical"> <div id="productDescScroll" class="scroll-container box-flex-1"> <div class="scroller"> <div class="pad-b-1"> ';
  1579. if(isShowVideo){
  1580. $out+=' <div class="video" style="margin-bottom: -8px;"> <iframe src="/webapp/static/introduce.html" id="iframe-service-introduce" frameborder="0" style="width: 100%"></iframe> </div> ';
  1581. }
  1582. $out+=' <div class="img-list"> <div class="img-list-container"> ';
  1583. $each(picLists,function(pic,$index){
  1584. $out+=' <img src="';
  1585. $out+=$escape(pic.url);
  1586. $out+='" alt=""> ';
  1587. });
  1588. $out+=' </div> </div> ';
  1589. if(tips ){
  1590. $out+=' <div class="notes"> <div class="group-title-container"> <div class="group-title">注意事项</div> </div> <ul class="group-detail hide"> <li> <ul> ';
  1591. $each(tips.descs,function(desc,$index){
  1592. $out+=' <li> <p>';
  1593. $out+=$escape(desc);
  1594. $out+='</p> </li> ';
  1595. });
  1596. $out+=' </ul> </li> ';
  1597. $each(tips.notes,function(note,$index){
  1598. $out+=' <li> <p>';
  1599. $out+=$escape(note);
  1600. $out+='</p> </li> ';
  1601. });
  1602. $out+=' </ul> </div> ';
  1603. }
  1604. $out+=' </div> </div> </div> ';
  1605. if(fromHome){
  1606. $out+=' <div class="btn-container prevent-scroll"> <a class="btn btn-main btn-block btn-next">立即下单</a> </div> ';
  1607. }
  1608. $out+=' </div> </div> <div class="box-container hide type-container" id="reviewContainer"> <div class="box-container box box-vertical"> <div id="productReviewScroll" class="scroll-container box-flex-1"> <div class="scroller"> <ul class="table-view list-content"> </ul> <div class="btn-more-container box-center hide"> <a class="btn btn-block btn-more-review">加载更多</a> </div> </div> </div> </div> </div> <div class="box-container hide type-container" id="consultationContainer"> <div class="box-container box box-vertical"> <div id="productConsultationScroll" class="scroll-container box-flex-1"> <div class="scroller"> <div class="list-content"> </div> </div> </div> <div class="btn-container prevent-scroll"> <a class="btn btn-main btn-block btn-consult">提交</a> </div> </div> </div> </div> </div> ';
  1609. return new String($out);
  1610. });/*v:1*/
  1611. template('product/info',function($data,$filename
  1612. /**/) {
  1613. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,$each=$utils.$each,tips=$data.tips,desc=$data.desc,$index=$data.$index,$escape=$utils.$escape,note=$data.note,$out='';if(showNavBar ){
  1614. $out+=' <header class="bar bar-nav"> <a class="left-button back-button"> <div class="icon icon-left-nav"></div> </a> <h1 class="title">注意事项</h1> </header> ';
  1615. }
  1616. $out+=' <div class="content"> <div class="box-container"> <div class="box-container box box-vertical"> <div id="productInfoScroll" class=" box-flex-1"> <div class="scroller"> <div> <div class="notes"> <ul class="group-detail"> <li> <ul> ';
  1617. $each(tips.descs,function(desc,$index){
  1618. $out+=' <li> <p>';
  1619. $out+=$escape(desc);
  1620. $out+='</p> </li> ';
  1621. });
  1622. $out+=' </ul> </li> ';
  1623. $each(tips.notes,function(note,$index){
  1624. $out+=' <li> <p>';
  1625. $out+=$escape(note);
  1626. $out+='</p> </li> ';
  1627. });
  1628. $out+=' </ul> </div> </div> </div> </div> </div> </div> </div> ';
  1629. return new String($out);
  1630. });/*v:1*/
  1631. template('product/option',function($data,$filename
  1632. /**/) {
  1633. 'use strict';var $utils=this,$helpers=$utils.$helpers,$each=$utils.$each,pets=$data.pets,pet=$data.pet,$index=$data.$index,$escape=$utils.$escape,$out='';$out+='<div class="box box-container box-align-end"> <div class="product-option-container"> ';
  1634. $each(pets,function(pet,$index){
  1635. $out+=' <div class="option-group" data-id="';
  1636. $out+=$escape(pet.id);
  1637. $out+='" data-weight="';
  1638. $out+=$escape(pet.min_weight);
  1639. $out+='-';
  1640. $out+=$escape(pet.max_weight);
  1641. $out+='kg" data-name="';
  1642. $out+=$escape(pet.pet_types[0].name);
  1643. $out+='" data-price="';
  1644. $out+=$escape(pet.price);
  1645. $out+='" data-weight-max="';
  1646. $out+=$escape(pet.max_weight);
  1647. $out+='" data-weight-min="';
  1648. $out+=$escape(pet.min_weight);
  1649. $out+='"> ';
  1650. $out+=$escape(pet.pet_types[0].name);
  1651. $out+=' (';
  1652. $out+=$escape(pet.min_weight);
  1653. $out+='-';
  1654. $out+=$escape(pet.max_weight);
  1655. $out+='kg) </div> ';
  1656. });
  1657. $out+=' <div class="btn-container"> <a class="btn btn-cancle btn-block btn-next">取消</a> </div> </div> </div> ';
  1658. return new String($out);
  1659. });/*v:1*/
  1660. template('product/price',function($data,$filename
  1661. /**/) {
  1662. 'use strict';var $utils=this,$helpers=$utils.$helpers,$each=$utils.$each,petTypes=$data.petTypes,petType=$data.petType,$index=$data.$index,$escape=$utils.$escape,$out='';$out+='<tr> <th>类型</th> ';
  1663. $each(petTypes,function(petType,$index){
  1664. $out+=' <th colspan="" class="pet-type">';
  1665. $out+=$escape(petType.pet_types[0].name);
  1666. $out+='</th> ';
  1667. });
  1668. $out+=' </tr> <tr> <th>体重</th> ';
  1669. $each(petTypes,function(petType,$index){
  1670. $out+=' <td>';
  1671. $out+=$escape(petType['min_weight']);
  1672. $out+=' ~ ';
  1673. $out+=$escape(petType['max_weight']);
  1674. $out+='kg</td> ';
  1675. });
  1676. $out+=' </tr> <tr> <th>价格</th> ';
  1677. $each(petTypes,function(petType,$index){
  1678. $out+=' <td>';
  1679. $out+=$escape(petType['price']);
  1680. $out+='元</td> ';
  1681. });
  1682. $out+=' </tr>';
  1683. return new String($out);
  1684. });/*v:1*/
  1685. template('product/reviewList',function($data,$filename
  1686. /**/) {
  1687. 'use strict';var $utils=this,$helpers=$utils.$helpers,$each=$utils.$each,reviews=$data.reviews,review=$data.review,i=$data.i,$escape=$utils.$escape,include=function(filename,data){data=data||$data;var text=$utils.$include(filename,data,$filename);$out+=text;return $out;},imgW=$data.imgW,pic=$data.pic,$out='';$each(reviews,function(review,i){
  1688. $out+=' <li class="table-view-cell"> <div> <div class="user-info-container"> <div class="user-info-btn" data-id="';
  1689. $out+=$escape(review.user.id);
  1690. $out+='"> <img class="user-avatar" src="';
  1691. $out+=$escape(review.user.avatar);
  1692. $out+='?imageView2/2/w/60/h/60"/> <span class="user-name">';
  1693. $out+=$escape(review.user.user_name);
  1694. $out+='</span> </div> </div> <div class="box"> <div class="box-flex-1"> <span class="star-label">评分:</span> ';
  1695. include('../common/star',review);
  1696. $out+=' </div> <div class="box-flex-1 review-time"> ';
  1697. $out+=$escape(review.time_str);
  1698. $out+=' </div> </div> <div class="review-content"> ';
  1699. $out+=$escape(review.content);
  1700. $out+=' </div> <div class="img-preview-list" ';
  1701. if(review.pics.length > 0){
  1702. $out+='style="height:';
  1703. $out+=$escape(imgW);
  1704. $out+='px"';
  1705. }
  1706. $out+='> ';
  1707. if(review.pics.length > 0){
  1708. $out+=' ';
  1709. $each(review.pics,function(pic,i){
  1710. $out+=' ';
  1711. if(i < 3){
  1712. $out+=' <div class="width-percent-33"> <div class="img-preview" data-src="';
  1713. $out+=$escape(pic.url);
  1714. $out+='" style="width: ';
  1715. $out+=$escape(imgW);
  1716. $out+='px"> <img src="';
  1717. $out+=$escape(pic.url);
  1718. $out+='?imageView2/5/w/';
  1719. $out+=$escape(imgW * 2);
  1720. $out+='/h/';
  1721. $out+=$escape(imgW * 2);
  1722. $out+='" alt="" class="img-preview-item"> ';
  1723. if(review.pics.length > 3 && i == 2){
  1724. $out+=' <span class="img-count">';
  1725. $out+=$escape(review.pics.length);
  1726. $out+='</span> ';
  1727. }
  1728. $out+=' </div> </div> ';
  1729. }
  1730. $out+=' ';
  1731. });
  1732. $out+=' ';
  1733. }
  1734. $out+=' </div> ';
  1735. if(review.reply !== ''){
  1736. $out+=' <div class="reply-content"> 壹管家回复:';
  1737. $out+=$escape(review.reply);
  1738. $out+=' </div> ';
  1739. }
  1740. $out+=' </div> </li> ';
  1741. });
  1742. $out+=' ';
  1743. return new String($out);
  1744. });/*v:16*/
  1745. template('recharge/cell',function($data,$filename
  1746. /**/) {
  1747. 'use strict';var $utils=this,$helpers=$utils.$helpers,$each=$utils.$each,recharges=$data.recharges,recharge=$data.recharge,i=$data.i,$escape=$utils.$escape,$out='';$each(recharges,function(recharge,i){
  1748. $out+=' <li class="table-view-cell media btn-add-recharge" data-id="';
  1749. $out+=$escape(recharge.id);
  1750. $out+='" data-value="';
  1751. $out+=$escape(recharge.denomination);
  1752. $out+='" data-index="';
  1753. $out+=$escape(i);
  1754. $out+='" style="margin: 10px"> <a class="address-item"> <div class="media-body"> <span class="denomination" style="font-size: 18px; color: rgb(233,233,216)">充值';
  1755. $out+=$escape(recharge.denomination);
  1756. $out+='元</span> <p class="detail" style="rgb(233,233,216)"> ';
  1757. if(recharge.cash_back ){
  1758. $out+=' 返还';
  1759. $out+=$escape(recharge.cash_back);
  1760. $out+='现金 ';
  1761. }else if(recharge.coupons ){
  1762. $out+=' 赠送价值';
  1763. $out+=$escape(recharge.coupons);
  1764. $out+='元的优惠券 ';
  1765. }
  1766. $out+=' </p> </div> </a> <button class="btn btn-add-recharge" data-id="';
  1767. $out+=$escape(recharge.id);
  1768. $out+='" data-value="';
  1769. $out+=$escape(recharge.denomination);
  1770. $out+='" data-index="';
  1771. $out+=$escape(i);
  1772. $out+='" style="background-color: rgba(146,118,3,1);color: rgb(233,233,216);border: 0;border-radius: 5px;">立即充值</button> </li> ';
  1773. });
  1774. return new String($out);
  1775. });/*v:3*/
  1776. template('recharge/index',function($data,$filename
  1777. /**/) {
  1778. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,$escape=$utils.$escape,title=$data.title,include=function(filename,data){data=data||$data;var text=$utils.$include(filename,data,$filename);$out+=text;return $out;},$out='';if(showNavBar ){
  1779. $out+=' <header class="bar bar-nav"> <a class="left-button back-button"> <div class="icon icon-left-nav"></div> </a> <h1 class="title">';
  1780. $out+=$escape(title);
  1781. $out+='</h1> </header> ';
  1782. }
  1783. $out+=' <div class="content"> <div class="box-container box box-vertical"> <div id="rechargeScroll" class="scroll-container box-flex-1"> <ul class="table-view list-content" style="padding-top: 5px;padding-bottom: 5px"> ';
  1784. include('./cell');
  1785. $out+=' </ul> </div> </div> </div>';
  1786. return new String($out);
  1787. });/*v:1*/
  1788. template('review/post',function($data,$filename
  1789. /**/) {
  1790. 'use strict';var $utils=this,$helpers=$utils.$helpers,include=function(filename,data){data=data||$data;var text=$utils.$include(filename,data,$filename);$out+=text;return $out;},showUpload=$data.showUpload,showInput=$data.showInput,$escape=$utils.$escape,cacheReview=$data.cacheReview,$out='';$out+='<div class="box box-container box-align-end"> <div class="review-container"> <div class="review-star-container"> <span>满意度评分:</span> ';
  1791. include('../common/star');
  1792. $out+=' </div> ';
  1793. if(showUpload){
  1794. $out+=' <div class="review-star-container review-img-content"> <div class="width-percent-25 img-upload"> <div class="img-upload-btn"> ';
  1795. if(showInput){
  1796. $out+=' <input type="file" name="" id="wx-upload" multiple="multiple" accept="image/gif, image/png, image/jpeg, image/x-png, image.jpg"> ';
  1797. }
  1798. $out+=' </div> </div> </div> ';
  1799. }
  1800. $out+=' <div class="review-content-container"> <textarea class="review-content enable-scroll" placeholder="亲,五星好评,立返3~10元随机代金券哦!">';
  1801. $out+=$escape(cacheReview);
  1802. $out+='</textarea> <p>评论内容至少10个字~</p> </div> <a class="btn btn-main btn-block btn-main btn-post disable">发表评价</a> </div> </div> ';
  1803. return new String($out);
  1804. });/*v:1*/
  1805. template('success/index',function($data,$filename
  1806. /**/) {
  1807. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,WX=$data.WX,$out='';if(showNavBar ){
  1808. $out+=' <header class="bar bar-nav"> <h1 class="title">支付成功</h1> </header> ';
  1809. }
  1810. $out+=' ';
  1811. if(!WX){
  1812. $out+=' <div class="content content-padding"> <div class="box-center"> <p>订单支付成功,稍后会有壹管家工作人员联系你~</p> </div> <a class="btn btn-positive btn-block my-order">查看我的预约</a> </div> ';
  1813. }else{
  1814. $out+=' <div class="content content-padded"> <div class="padding-top-bottom"> <p> <svg version="1.1" id="icon-success" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="30px" height="30px" viewBox="0 0 30 30" enable-background="new 0 0 30 30" xml:space="preserve"> <circle fill="#87C34B" cx="15" cy="15" r="15"/> <polygon fill-rule="evenodd" clip-rule="evenodd" fill="#FFFFFF" points="12.791,18.624 6.604,12.437 4.571,14.469 10.758,20.656 12.791,22.689 14.824,20.656 25.828,9.652 23.795,7.619 "/> </svg> 支付完成,等待保洁师上门为您服务吧! </p> </div> <div class="border-top"> <p>服务:<span class="order-name">宠物洗澡(猫)</span></p> <p>时间:<span class="order-time">2015年7月10日 10:00</span></p> </div> <div class="border-top"> <p>实付: <span class="order-result">58元</span></p> </div> <div class="box-center btn-group"> <a class="btn btn-positive my-order">我的预约</a> <a class="btn btn-positive btn-home">继续购买</a> </div> </div> ';
  1815. }
  1816. return new String($out);
  1817. });/*v:1*/
  1818. template('success/refund',function($data,$filename
  1819. /**/) {
  1820. 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,$out='';if(showNavBar ){
  1821. $out+=' <header class="bar bar-nav"> <a class="left-button back-button"> <div class="icon icon-left-nav"></div> </a> <h1 class="title">申请成功</h1> </header> ';
  1822. }
  1823. $out+=' <div class="content content-padding"> <div class="text-center"> <p class="title-msg text-danger">申请已提交成功</p> <p>预计在3-10工作日内到账</p> <p>如有疑问请拨打 ';
  1824. if(showNavBar ){
  1825. $out+=' <span class="service-telephone text-danger">400-032-8170</span> ';
  1826. }else{
  1827. $out+=' <a href="tel:400-032-8170">400-032-8170</a> ';
  1828. }
  1829. $out+=' </p> </div> <div class="btn-box"> <div class="btn btn-block back-button">返回首页</div> </div> </div> ';
  1830. return new String($out);
  1831. });
  1832. }()