12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739 |
- (function (h) {
- var c = {
- options: {sysName: "南方医务通"}, init: function () {
- h("head title").text("南方医务通");
- var s = d.version.getVer();
- if (s) {
- h("link").each(function () {
- h(this).attr("href", h(this).attr("href") + "?v=" + s.version)
- });
- h("script").each(function () {
- h(this).attr("src", h(this).attr("src") + "?v=" + s.version)
- })
- }
- }
- };
- var o = {
- js_Fx_uuid: function (t, s) {
- o.ck(t, s)
- }, android_Fx_uuid: function () {
- try {
- android.js_Fx_uuid()
- } catch (s) {
- o.ck()
- }
- }, ck: function (t, s) {
- var u = {loginName: h("#loginName").val(), password: h("#password").val(), uuid: t, devType: s};
- setTimeout(function () {
- d.sendData(window.apiUrl+"?c=Index&a=login", u, true)
- }, 100)
- }
- };
- var d = {
- version: {
- getVer: function () {
- var s = JSON.parse(localStorage.getItem("hzAppVer"));
- if (s) {
- return s
- } else {
- return d.version.setVer()
- }
- }, setVer: function () {
- h.ajax({
- type: "get",
- url: window.apiUrl+"index.php?c=Config&a=getWebVersion",
- dataType: "jsonp",
- data: {},
- jsonp: "callback",
- async: false,
- crossDomain: true,
- success: function (s) {
- s = s || {};
- if (s.version) {
- localStorage.setItem("hzAppVer", JSON.stringify(s));
- return s
- }
- },
- error: function (u, t, s) {
- return null;
- d.dialog(false, d.options.timeout, "网络链接失败")
- },
- timeout: 9000
- })
- }
- },
- options: {templateHtml: [null, null, null, null], timeout: 2500, rows: null},
- scroll: function (t, z, s, w, A, x, u, v) {
- var y = true;
- h("#content").bind("scroll", function () {
- var B = h("#content").scrollTop();
- if (B >= (h("#list").height() - h("#content").height()) && y == true) {
- z.rowed += z.pageSize;
- if (d.options.rows && z.rowed < d.options.rows) {
- d.getData(t, z, s, w, A, x, u, v)
- } else {
- setTimeout(function () {
- d.dialog(false, d.options.timeout, "没有了")
- }, 1);
- y = false
- }
- }
- })
- },
- dialog: function (s, v, u, t) {
- h("#dialog").addClass("show");
- if (s) {
- if (u) {
- h("#dialog .popup_layer_cont").html('<div class="loading_cont"><div class="cycle"></div><div class="title">' + u + "</div></div>")
- } else {
- h("#dialog .popup_layer_cont").html('<div class="loading_cont"><div class="cycle"></div><div class="title">数据加载中</div></div>')
- }
- } else {
- if (u) {
- h("#dialog .popup_layer_cont").html(u)
- }
- }
- if (v) {
- setTimeout(function () {
- h("#dialog").removeClass("show");
- if (t) {
- if (window.parent) {
- window.parent.location = t
- } else {
- window.location = t
- }
- }
- }, v)
- } else {
- h("#dialog").removeClass("show")
- }
- },
- loginSuccess: function () {
- var s = JSON.parse(localStorage.getItem("hzToken"));
- if (s) {
- if (s.timestamp) {
- h("#login").hide();
- h("#loginSuccess").show();
- h("#userPhoto").attr("src", s.userPhoto);
- h("i.login_open").removeClass("logined");
- h("i.login_open img").attr("src", s.userPhoto);
- if (s.trueName == "" || !s.trueName) {
- h("#userName").text(s.phone)
- } else {
- h("#userName").text(s.trueName)
- }
- }
- }
- },
- logout: function () {
- localStorage.setItem("hzToken", null);
- d.dialog(false, d.options.timeout, "已成功退出", "index.html")
- },
- getToken: function () {
- var s = JSON.parse(localStorage.getItem("hzToken"));
- if (s == null) {
- s = {timestamp: null, token: null, customerFamilyId: null}
- } else {
- s = {timestamp: s.timestamp, token: s.token, customerFamilyId: s.customerFamilyId}
- }
- return s
- },
- setToken: function (t) {
- var s = false;
- if (t.status == "1") {
- var u = JSON.parse(localStorage.getItem("hzToken"));
- u = {
- timestamp: t.timestamp,
- token: t.token,
- userPhoto: u.userPhoto,
- customerFamilyId: u.customerFamilyId,
- phone: u.phone,
- trueName: u.trueName
- };
- localStorage.setItem("hzToken", JSON.stringify(u));
- s = true
- } else {
- localStorage.setItem("hzToken", null);
- d.dialog(false, d.options.timeout, "用户未登录或已退出!", "login.html")
- }
- return s
- },
- setLoginToken: function (s) {
- if (s.status == "1") {
- var t = {
- timestamp: s.data[0].timestamp,
- token: s.data[0].token,
- userPhoto: s.data[0].userPhoto,
- customerFamilyId: s.data[0].customerFamilyId,
- phone: s.data[0].phone,
- trueName: s.data[0].trueName
- };
- localStorage.setItem("hzToken", JSON.stringify(t));
- d.dialog(false, d.options.timeout, "登录成功", "index.html")
- } else {
- d.dialog(false, d.options.timeout, "用户名或密码错误")
- }
- },
- getDataNoTemp: function (t, u, v, s) {
- if (u.rowed > d.options.rows) {
- d.dialog(false, 800, "没有了")
- } else {
- h.ajax({
- type: "get",
- url: t,
- dataType: "jsonp",
- data: h.extend(d.getToken(), u),
- jsonp: "callback",
- async: false,
- crossDomain: true,
- beforeSend: d.dialog(true),
- success: function (w) {
- w = w || {};
- //允许医生列表页面不登录`
- if((window.location.pathname=='/dept_q_list.html'||window.location.pathname=='/favorite_q_doctor_dept_list.html')&&w.dataToken.token==null){
- if (w.dataInfo.status == "1") {
- v.doing(w.dataInfo.data);
- d.dialog(false, false, null, null)
- } else {
- if (s) {
- d.dialog(false, d.options.timeout, s.message ? s.message : "无数据");
- s.doing()
- } else {
- d.dialog(false, d.options.timeout, "无数据")
- }
- }
- return false;
- }
-
- if (d.setToken(w.dataToken)) {
- if (w.dataInfo.status == "1") {
- v.doing(w.dataInfo.data);
- d.dialog(false, false, null, null)
- } else {
- if (s) {
- d.dialog(false, d.options.timeout, s.message ? s.message : "无数据");
- s.doing()
- } else {
- d.dialog(false, d.options.timeout, "无数据")
- }
- }
- }
- },
- error: function (y, x, w) {
- d.dialog(false, d.options.timeout, "网络链接失败")
- },
- timeout: 9000
- })
- }
- },
- getData: function (t, A, s, x, B, y, u, w, z, v) {
- if (d.options.rows ? A.rowed >= d.options.rows : false) {
- d.dialog(false, d.options.timeout, "没有了")
- } else {
- h.ajax({
- type: "get",
- url: t,
- dataType: "jsonp",
- data: h.extend(d.getToken(), A),
- jsonp: "callback",
- async: false,
- crossDomain: true,
- beforeSend: d.dialog(true),
- success: function (C) {
- C = C || {};
- if (!x) {
- x = 0
- }
- if (!d.options.templateHtml[x]) {
- d.options.templateHtml[x] = h(s).html();
- d.options.templateHtml[x] = d.replaceEscape(d.options.templateHtml[x]);
- h(s).html("");
- if (C.dataInfo.rows) {
- d.options.rows = parseInt(C.dataInfo.rows)
- }
- }
- if((window.location.pathname=='/doctorWho.html'||window.location.pathname=='/doctorWhoAnother.html')&&C.dataToken.token==null){
- if (C.dataInfo.status == "1") {
- if (!u) {
- A = null
- }
- if (B) {
- h(s).html(d.setTemplate(d.options.templateHtml[x], C.dataInfo.data, A))
- } else {
- h(s).append(d.setTemplate(d.options.templateHtml[x], C.dataInfo.data, A))
- }
- h(s).show();
- d.dialog(false, false, null, null);
- if (y) {
- m.icoEventCallback(y)
- }
- if (z) {
- z.doing()
- }
- } else {
- h(s).html("");
- if (!w) {
- w = "无数据"
- }
- d.dialog(false, d.options.timeout, w);
- if (v) {
- setTimeout(function () {
- v.doing()
- }, d.options.timeout)
- }
- }
- return false;
- }
- if (d.setToken(C.dataToken)) {
- if (C.dataInfo.status == "1") {
- if (!u) {
- A = null
- }
- if (B) {
- h(s).html(d.setTemplate(d.options.templateHtml[x], C.dataInfo.data, A))
- } else {
- h(s).append(d.setTemplate(d.options.templateHtml[x], C.dataInfo.data, A))
- }
- h(s).show();
- d.dialog(false, false, null, null);
- if (y) {
- m.icoEventCallback(y)
- }
- if (z) {
- z.doing()
- }
- } else {
- h(s).html("");
- if (!w) {
- w = "无数据"
- }
- d.dialog(false, d.options.timeout, w);
- if (v) {
- setTimeout(function () {
- v.doing()
- }, d.options.timeout)
- }
- }
- }
- },
- error: function (E, D, C) {
- d.dialog(false, d.options.timeout, "网络链接失败")
- },
- timeout: 9000
- })
- }
- },
- sendData: function (t, y, u, x, w, v, z, s) {
- h.ajax({
- type: "get",
- url: t,
- dataType: "jsonp",
- data: h.extend(d.getToken(), y),
- jsonp: "callback",
- async: false,
- crossDomain: true,
- beforeSend: d.dialog(true, 2000, "处理中..."),
- success: function (A) {
- A = A || {};
- if (u) {
- d.setLoginToken(A.dataInfo);
- d.version.setVer()
- } else {
- d.setToken(A.dataToken)
- }
- if (A.dataInfo.status == "1") {
- if (x) {
- d.dialog(false, d.options.timeout, x[1], null)
- }
- if (w) {
- m.switchStatus(w)
- }
- if (v) {
- m.icoEventCallback(v)
- }
- if (z) {
- z.doing(A.dataInfo.data)
- }
- } else {
- if (x) {
- if (x[0]) {
- d.dialog(false, d.options.timeout, x[0], null)
- } else {
- d.dialog(false, d.options.timeout, A.dataInfo.info, null)
- }
- } else {
- d.dialog(false, d.options.timeout, A.dataInfo.info, null)
- }
- if (s) {
- setTimeout(function () {
- s.doing()
- }, d.options.timeout)
- }
- }
- },
- error: function (C, B, A) {
- d.dialog(false, d.options.timeout, "网络链接失败")
- },
- timeout: 9000
- })
- },
- register: function (s, u, t, v, w) {
- h.ajax({
- type: "get",
- url: s,
- dataType: "jsonp",
- data: u,
- jsonp: "callback",
- async: false,
- crossDomain: true,
- success: function (x) {
- x = x || {};
- if (x.dataInfo.status == "1") {
- if (t) {
- d.dialog(false, d.options.timeout, t[1], null)
- }
- if (v) {
- v.doing(x.dataInfo.data)
- }
- if (w) {
- if (window.parent) {
- window.parent.location = w
- } else {
- window.location = w
- }
- }
- } else {
- if (t) {
- if (t[0]) {
- d.dialog(false, d.options.timeout, t[0], null)
- } else {
- d.dialog(false, d.options.timeout, x.dataInfo.info, null)
- }
- } else {
- d.dialog(false, d.options.timeout, x.dataInfo.info, null)
- }
- if (v) {
- if (v.err) {
- v.err.doing(x.dataInfo.info)
- }
- }
- }
- },
- error: function (z, y, x) {
- d.dialog(false, d.options.timeout, "网络链接失败")
- },
- timeout: 19000
- })
- },
- check: function (t, v, u, s) {
- h.ajax({
- type: "get",
- url: t,
- dataType: "jsonp",
- data: v,
- jsonp: "callback",
- async: false,
- crossDomain: true,
- success: function (w) {
- w = w || {};
- if (w.dataInfo.status == "1") {
- if (u) {
- if (u[1]) {
- d.dialog(false, d.options.timeout, u[1])
- } else {
- d.dialog(false, d.options.timeout, w.dataInfo.info)
- }
- }
- } else {
- if (u) {
- if (u[0]) {
- d.dialog(false, d.options.timeout, u[0])
- } else {
- d.dialog(false, d.options.timeout, w.dataInfo.info)
- }
- } else {
- d.dialog(false, d.options.timeout, w.dataInfo.info)
- }
- if (s) {
- s.doing()
- }
- }
- },
- error: function (y, x, w) {
- d.dialog(false, d.options.timeout, "网络链接失败")
- },
- timeout: 9000
- })
- },
- setTemplate: function (s, v, u) {
- var w, t = "";
- h.each(v, function (x, y) {
- if (u) {
- h.extend(y, u)
- }
- t += d.TemplateEngine(s, y)
- });
- return t
- },
- TemplateEngine: function (v, u) {
- var w = /\[%([^%]+)?%]/g, s = /(^( )?(var|if|for|else|switch|case|break|{|}))(.*)?/g, x = "var r=[];\n",
- z = 0, t;
- var y = function (A, B) {
- B ? (x += A.match(s) ? A + "\n" : "r.push(" + A + ");\n") : (x += A != "" ? 'r.push("' + A.replace(/"/g, '\\"') + '");\n' : "");
- return y
- };
- while (t = w.exec(v)) {
- y(v.slice(z, t.index))(t[1], true);
- z = t.index + t[0].length
- }
- y(v.substr(z, v.length - z));
- x += 'return r.join("");';
- return new Function(x.replace(/[\r\t\n]/g, "")).apply(u)
- },
- replaceEscape: function (s) {
- s = s.replace(/</g, "<");
- s = s.replace(/>/g, ">");
- s = s.replace(/&&/g, "&&");
- return s
- }
- };
- var g = {
- getDaysInMonth: function (s, t) {
- return 32 - new Date(s, t, 32).getDate()
- }, getFirstDayOfMonth: function (t, u, s) {
- var s = s || 1;
- return new Date(t, u, s).getDay()
- }, getToday: function () {
- var s = new Date();
- g.Y = s.getFullYear();
- g.M = s.getMonth();
- g.D = s.getDate()
- }, toggle: function (s) {
- var s = h(s);
- if (s.hasClass("down")) {
- h("#DateBox").addClass("show");
- h(s).addClass("up").removeClass("down");
- h(s).find(".title").html("收起")
- } else {
- h(s).addClass("down").removeClass("up");
- h("#DateBox").removeClass("show");
- h(s).find(".title").html("展开")
- }
- }, doHook: function () {
- if (!h(this).hasClass("noNum")) {
- h(".doHook").removeClass("hook");
- h(this).addClass("hook").prev().addClass("rightborder").siblings().removeClass("rightborder")
- }
- h(".hzApp-list-calendar-master h2.title").html(h(this).attr("date"))
- }, getList: function () {
- var x = "";
- var A = 1;
- var t = new Date();
- var v = g.getFirstDayOfMonth(g.Y, g.M);
- for (var u = 0; u < 7; u++) {
- var s = "";
- switch (u) {
- case 0:
- s += "日";
- break;
- case 1:
- s += "一";
- break;
- case 2:
- s += "二";
- break;
- case 3:
- s += "三";
- break;
- case 4:
- s += "四";
- break;
- case 5:
- s += "五";
- break;
- case 6:
- s += "六";
- break
- }
- x += ' <li class="doHook title"><div class="mate">' + s + "</div></li>"
- }
- for (var u = 0; u < v; u++) {
- x += ' <li class="doHook"></li>'
- }
- for (var u = 1; u <= g.getDaysInMonth(g.Y, g.M); u++) {
- var z = new Date().toDate(g.Y + "-" + (g.M + 1) + "-1");
- z.setDate(z.getDate() + (u - 1));
- var y = z.format("yyyy-M-d");
- if (A > g.getDaysInMonth(g.Y, g.M)) {
- A = 1
- }
- if (v > 6) {
- v = 0
- }
- if (g.Y == t.getFullYear() && g.M == t.getMonth() && A == t.getDate()) {
- x += ' <li class="doHook hook" date="' + y + '"> <i></i><div class="title">今</div> </li>'
- } else {
- if (u == 5) {
- x += ' <li class="doHook" date="' + y + '"> <i></i><div class="title">' + A + "</div> </li>"
- } else {
- x += ' <li class="doHook" date="' + y + '"> <i></i><div class="title">' + A + "</div> </li>"
- }
- }
- A++;
- v++
- }
- return x
- }, setEvents: function (s) {
- h("#DateBox ul").find("li").each(function () {
- if (h(this).attr("date") == s) {
- h(this).find("i").addClass("icon-event")
- }
- })
- }, init: function () {
- g.getToday();
- h(".hzApp-list-calendar-master h2.title").html(g.Y + "年" + (g.M + 1) + "月" + g.D + "日");
- h("#DateBox ul").html(g.getList());
- h(".doHook").on("tap", g.doHook);
- h(".hzApp-list-calendar-master .arrowT").bind("tap", function () {
- if (h(this).hasClass("right")) {
- if (h(this).hasClass("year")) {
- g.Y++
- } else {
- g.M++
- }
- } else {
- if (h(this).hasClass("left")) {
- if (h(this).hasClass("year")) {
- g.Y--
- } else {
- g.M--
- }
- }
- }
- if (g.M > 11 || g.M < 0) {
- g.M = 0
- }
- var s = new Date();
- if (g.Y == s.getFullYear() && g.M == s.getMonth()) {
- g.D = s.getDate()
- } else {
- g.D = 1
- }
- h(".hzApp-list-calendar-master h2.title").html(g.Y + "年" + (g.M + 1) + "月" + g.D + "日");
- g.change();
- g.setEvents("2015-8-10")
- })
- }, change: function () {
- h("#DateBox ul").html(g.getList());
- h(".doHook").on("tap", g.doHook)
- }
- };
- var p = {
- options: {
- urls: ["#", "index.html", "deptlist.html", "doctorlist.html", "doctorsbooking.html", "#", "favorite.html", "drugCalendar.html", "doctorCalendar.html"],
- // icons: ["", "icon-home home", "icon-workflows dept", "icon-user0 doctor", "icon-news booking", "icon-addRound like", "icon-love favorite", "icon-drug drugCalendar", "icon-calendar doctorCalendar"],
- icons: ["", "icon-home home", "icon-workflows dept", "icon-user0 doctor", "icon-news booking", "icon-addRound like", "icon-love favorite"],
- // titles: ["", "应用中心", "科室", "医生", "预约", "关注", "我的关注", "用药日程", "挂号记录"]
- titles: ["", "门诊服务", "科室", "医生", "预约", "关注", "我的关注"]
- }, doing: function (t, s) {
- h.extend(this.options, s);
- this.el = t;
- this._init()
- }, _init: function (u) {
- var t = '<div class="listNav "><ul>', v = "";
- for (var s = 0; s < this.options.count; s++) {
- v = this.options.count;
- if (this.options.current == this.options.idx[s]) {
- v += " current"
- }
- if(this.options.titles[this.options.idx[s]]=='门诊服务'){
- t += '<li class="count' + v + '"><a><i class="' + this.options.icons[this.options.idx[s]] + '"></i><span>' + this.options.titles[this.options.idx[s]] + "</span></a></li>"
- }else{
- t += '<li class="count' + v + '"><a class="needlogin"><i class="' + this.options.icons[this.options.idx[s]] + '"></i><span>' + this.options.titles[this.options.idx[s]] + "</span></a></li>"
- }
- }
- t += "</ul></div>";
- this.el.html(t);
- this._addEvent()
- }, _addEvent: function () {
- var s = this;
- this.el.find(".listNav li").bind("tap", function () {
- var token = window.hzAPI.getToken().token;//token
- //判断token是否存在
- if(!token){
- window.location.href = 'login.html';
- e.preventDefault();
- return false;
- }
- var t = 0;
- if (h(this).find("i").hasClass("*.home")) {
- t = 1
- }
- if (h(this).find("i").hasClass("*.dept")) {
- t = 2
- }
- if (h(this).find("i").hasClass("*.doctor")) {
- t = 3
- }
- if (h(this).find("i").hasClass("*.booking")) {
- t = 4
- }
- if (h(this).find("i").hasClass("*.like")) {
- t = 5
- }
- if (h(this).find("i").hasClass("*.favorite")) {
- t = 6
- }
- if (h(this).find("i").hasClass("*.drugCalendar")) {
- t = 7
- }
- if (h(this).find("i").hasClass("*.doctorCalendar")) {
- t = 8
- }
- window.location = s.options.urls[t]
- })
- }
- };
- var a = {
- show: function () {
- h("#popup_layer").addClass("show")
- }, close: function () {
- h("#popup_layer").removeClass("show");
- h(".popup_layer_cont").html("")
- }, getCount: function (s) {
- var s = h.extend({}, s);
- a.picker_selector_html = '<div class="counterPickerTitle">' + s.title + '</div><div class="counterPickerScroll" id="counter_minus">-</div><div class="counterPickerScroll"><input type="text" readonly="true" class="hasBottomLine center fontL" id="counterValue"></div><div class="counterPickerScroll" id="counter_add">+</div>';
- a.picker_selector_html += '<button id="cancel_counter_picker" style="width: 50%;background: #E8E8E8;color: #000000;">取消</button>';
- a.picker_selector_html += '<button id="confirm_counter_picker" style="width: 50%;background: #E8E8E8;color: #3779d0;">确定</button>';
- h(".popup_layer_cont").html(a.picker_selector_html);
- var t = h("#counterValue");
- t.val(s.obj_callback.val());
- h("#counter_add").bind("tap", function () {
- if (parseInt(t.val()) < 0) {
- t.val(0)
- }
- t.val(parseInt(t.val()) + 1)
- });
- h("#counter_minus").bind("tap", function () {
- if (parseInt(t.val()) < 0) {
- t.val(0)
- }
- t.val(parseInt(t.val()) - 1)
- });
- h("#confirm_counter_picker").bind("tap", function () {
- if (typeof s.obj_callback == "object") {
- s.obj_callback.val(t.val())
- }
- a.close()
- });
- h("#cancel_counter_picker").bind("tap", function () {
- a.close()
- })
- }
- };
- var q = {
- getHours: function (t) {
- var s = t.substring(0, 2);
- return (s.substring(0, 1) == "0" ? s.substring(1, 2) : s)
- }, getPlanFromGroups: function (w, v) {
- var s = new Date().toDate(w);
- var u = {morning: [], afternoon: [], evening: [], night: []};
- var t = ["night", "morning", "afternoon", "evening"];
- h.each(v, function (B, A) {
- var x = new Date().toDate(A.startDate);
- var E = new Date().toDate(A.startDate);
- E.setDate(x.getDate() + A.days);
- var z, C = new Array();
- var y, D = 0;
- if (s >= x && s <= E) {
- z = A.consumptionHoursString.split(",");
- C = A.quantityString.split(",");
- for (i = 0; i < z.length; i++) {
- y = parseInt(q.getHours(z[i]));
- D = Math.floor(y / 6);
- u[t[D]].push({
- id: A.id,
- date: null,
- consumptionHours: z[i],
- drugName: A.drugName,
- quantity: C[i],
- doseType: A.doseType,
- status: "pending",
- statusCn: "待服"
- })
- }
- }
- });
- return u
- }, getPlanFromSchedules: function (x, w) {
- var t = new Date().toDate(x);
- var v = {morning: [], afternoon: [], evening: [], night: []};
- var u = ["night", "morning", "afternoon", "evening"];
- var z = {pending: "待服", missing: "漏服", taken: "已服"};
- var s, y = 0;
- h.each(w, function (C, A) {
- var B = new Date().toDate(A.originalDateTime);
- if ((B.getFullYear() == t.getFullYear()) && (B.getMonth() == t.getMonth()) && (B.getDate() == t.getDate())) {
- s = parseInt(q.getHours(A.consumptionHours));
- y = Math.floor(s / 6);
- v[u[y]].push({
- id: A.id,
- date: A.originalDateTime,
- consumptionHours: A.consumptionHours,
- drugName: A.drugName,
- quantity: A.quantity,
- doseType: A.doseType,
- status: A.status,
- statusCn: z[A.status]
- })
- }
- });
- return v
- }, getAllPlan: function (w, u) {
- var t = new Date().toDate(w);
- var v, s = null;
- var x = {dateTime: w, customerFamilyId: u};
- if (t <= new Date()) {
- v = window.apiUrl+"?c=Index&a=medicineSchedule";
- s = 0
- } else {
- v = window.apiUrl+"?c=Index&a=medicineScheduleGroups";
- s = 1
- }
- h.ajax({
- type: "get",
- url: v,
- dataType: "jsonp",
- data: h.extend(d.getToken(), x),
- jsonp: "callback",
- async: false,
- crossDomain: true,
- beforeSend: d.dialog(true),
- success: function (y) {
- y = y || {};
- if (d.setToken(y.dataToken)) {
- var z = null;
- if (y.dataInfo.status == "1") {
- if (s == 1) {
- z = q.getPlanFromGroups(w, y.dataInfo.data)
- } else {
- z = q.getPlanFromSchedules(w, y.dataInfo.data)
- }
- localStorage.setItem("out", JSON.stringify(z));
- q.showPlan(z);
- q.resetEvent();
- d.dialog(false, 300, null, null)
- } else {
- z = {morning: [], afternoon: [], evening: [], night: []};
- q.showPlan(z);
- localStorage.setItem("out", null);
- d.dialog(false, 2000, "当天无服药信息")
- }
- }
- },
- error: function (A, z, y) {
- d.dialog(false, 2000, "网络链接失败")
- },
- timeout: 9000
- })
- }, showPlan: function (t) {
- for (var u in t) {
- if (t[u].length > 0) {
- h("#" + u).html('<a vhref="drugPopPerDay.html?id=' + u + '"><i class="icon-drug"></i>' + t[u].length + "</a>")
- } else {
- h("#" + u).html("")
- }
- }
- var s = new Date().getHours();
- var v = ["nightTitle", "morningTitle", "afternoonTitle", "eveningTitle"],
- w = ["night", "morning", "afternoon", "evening"];
- h("#" + v[Math.floor(s / 6)]).addClass("doing");
- h("#" + w[Math.floor(s / 6)]).addClass("doing")
- }, resetEvent: function () {
- h("#ListCycle li a").bind("tap", function () {
- var s = {night: "凌晨", morning: "上午", afternoon: "下午", evening: "晚上"};
- title = "服用清单 - " + g.Y + "年" + (g.M + 1) + "月" + g.D + "日 " + s[h(this).parent().attr("id")];
- m.popWinLayer(h(this).attr("vhref") + "&date=" + g.Y + "-" + (g.M + 1) + "-" + g.D, title)
- })
- }
- };
- var f = {
- getUrlParam: function (s) {
- var t = new RegExp("(^|&)" + s + "=([^&]*)(&|$)");
- var u = window.location.search.substr(1).match(t);
- if (u != null) {
- return u[2]
- } else {
- return null
- }
- }, setNewDrugPlanList: function (x, u) {
- var y = "", t = 12 / (x - 1), s = 8, v = "08:00";
- for (var w = 1; w <= x; w++) {
- y += '<li><div class="title2-1"><input class="green" readonly="true" value="' + v + '" type="text" name="consumptionHours"></div><div class="title2-1 right green">服用<input class="green" style="width: 5em" readonly="true" value="1.00" type="text" name="quantity"></div></li>';
- s += t;
- if (s > 9) {
- v = s
- } else {
- v = "0" + s
- }
- v += ":00"
- }
- u.html(y);
- u.find("li").bind("tap", function () {
- l.getList(h(this).find("[name='consumptionHours']"), h(this).find("[name='quantity']"));
- l.show()
- })
- }, getDrugHoursQuantity: function () {
- var s = "", t = "";
- h("#hours-quantity li").each(function (u) {
- if (u > 0) {
- s += ",";
- t += ","
- }
- s += h(this).find("input[type=text][name=consumptionHours]").val();
- t += h(this).find("input[type=text][name=quantity]").val()
- });
- return [s, t]
- }, setDrugPlanList: function (x, t) {
- var s = x.consumptionHoursString.split(",");
- var v = x.quantityString.split(",");
- var w = "";
- for (var u = 0; u < s.length; u++) {
- w += '<li><div class="title2-1"><input class="green" readonly="true" value="' + s[u] + '" type="text" name="consumptionHours"></div><div class="title2-1 right green">服用<input class="green" style="width: 5em" readonly="true" value="' + v[u] + '" type="text" name="quantity"></div></li>'
- }
- t.html(w);
- t.find("li").bind("tap", function () {
- l.getList(h(this).find("[name='consumptionHours']"), h(this).find("[name='quantity']"));
- l.show()
- })
- }, getSelectOptionsText: function (t) {
- var s = "";
- t.find("option").forEach(function (u) {
- if (t.val() == h(u).val()) {
- s = h(u).text()
- }
- });
- return s
- }, getClass: function (s) {
- if (s) {
- return "is-active"
- } else {
- return ""
- }
- }
- };
- var l = {
- addZero: function (s) {
- return (s < 10 ? "0" + s : s)
- }, solarDays: function (u, t) {
- var s = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
- if (t == 1) {
- return (((u % 4 == 0) && (u % 100 != 0) || (u % 400 == 0)) ? 29 : 28)
- } else {
- return (s[t])
- }
- }, show: function () {
- h("#popup_layer").addClass("show")
- }, close: function () {
- h("#popup_layer").removeClass("show");
- h(".popup_layer_cont").html("")
- }, getList: function (t, F) {
- var A = {hasSecond: false, isCustomLeftButton: false, customLeftButtonName: "清除"};
- l.picker_selector_html = '<div class="counterPickerTitle">设置服用时间</div><div class="datepickerscroll" id="hourpickerscroll"><div class="scroller"><ul id="hourpicker" class="listitem"></ul></div></div>';
- if (A.hasSecond) {
- l.picker_selector_html += '<div style="position: absolute;left: 72px;top: 52px;">:</div>';
- l.picker_selector_html += '<div style="position: absolute;left: 148px;top: 52px;">:</div>'
- } else {
- l.picker_selector_html += '<div style="position: absolute;left: 108px;top: 100px;">:</div>'
- }
- l.picker_selector_html += '<div class="datepickerscroll" id="minutepickerscroll"><div class="scroller"><ul id="minutepicker" class="listitem"></ul></div></div>';
- if (A.hasSecond) {
- l.picker_selector_html += '<div class="datepickerscroll" id="secondpickerscroll"><div class="scroller"><ul id="secondpicker" class="listitem"></ul></div></div>'
- }
- l.picker_selector_html += '<div class="counterPickerTitle">设置服用数量</div><div class="counterPickerScroll" id="counter_minus">-</div><div class="counterPickerScroll"><input type="text" readonly="true" class="hasBottomLine center fontL" id="counterValue" value="1.00"></div><div class="counterPickerScroll" id="counter_add">+</div>';
- if (A.isCustomLeftButton) {
- l.picker_selector_html += '<button id="clear_date_picker" style="color: #000000;"' + A.customLeftButtonName + "</button>"
- } else {
- l.picker_selector_html += '<button id="cancel_date_picker" style="width: 50%;background: #E8E8E8;color: #000000;">取消</button>'
- }
- l.picker_selector_html += '<button id="confirm_date_picker" style="width: 50%;background: #E8E8E8;color: #3779d0;">确定</button>';
- h(".popup_layer_cont").html(l.picker_selector_html);
- if (!A.hasSecond) {
- h("#hourpickerscroll").css("width", "50%");
- h("#minutepickerscroll").css("width", "50%")
- }
- var u = "<li> </li>", C = '<li id="hourli-1"> </li>', w = '<li id="minuteli-1"> </li>',
- s = '<li id="secondli-1"> </li>';
- var D = h("#hourpicker"), x = h("#minutepicker"), v = null;
- if (A.hasSecond) {
- v = h("#secondpicker")
- }
- var B = (typeof selectedDate == "object") ? selectedDate : new Date();
- var y = t.val().split(":");
- B.setHours(parseInt(y[0]));
- B.setMinutes(parseInt(y[1]));
- l.hourSelected = B.getHours();
- l.minuteSelected = B.getMinutes();
- l.secondSelected = B.getSeconds();
- for (var z = 0; z < 24; z++) {
- C += '<li class="hourli" id="hourli' + z + '">' + l.addZero(z) + "</li>"
- }
- for (var z = 0; z < 60; z++) {
- w += '<li class="minuteli" id="minuteli' + z + '">' + l.addZero(z) + "</li>"
- }
- for (var z = 0; z < 60; z++) {
- s += '<li class="secondli" id="secondli' + z + '">' + l.addZero(z) + "</li>"
- }
- C += u;
- w += u;
- s += u;
- D.html(C);
- x.html(w);
- if (A.hasSecond) {
- v.html(s)
- }
- l.hourScroll = new IScroll("#hourpickerscroll", {scrollbars: false, snap: "li"});
- l.minuteScroll = new IScroll("#minutepickerscroll", {scrollbars: false, snap: "li"});
- if (A.hasSecond) {
- l.secondScroll = new IScroll("#secondpickerscroll", {scrollbars: false, snap: "li"})
- }
- l.hourScroll.scrollToElement("#hourli" + (B.getHours() - 1), 0);
- h("#hourli" + B.getHours()).addClass("selectedli");
- l.minuteScroll.scrollToElement("#minuteli" + (B.getMinutes() - 1), 0);
- h("#minuteli" + B.getMinutes()).addClass("selectedli");
- if (A.hasSecond) {
- l.secondScroll.scrollToElement("#secondli" + (B.getSeconds() - 1), 0);
- h("#secondli" + B.getSeconds()).addClass("selectedli")
- }
- l.hourScroll.on("scrollEnd", function (G) {
- h(".hourli").removeClass("selectedli");
- var H = Math.round(l.hourScroll.y / (-41));
- l.hourSelected = H;
- h("#hourli" + H).addClass("selectedli")
- });
- l.minuteScroll.on("scrollEnd", function (H) {
- h(".minuteli").removeClass("selectedli");
- var G = Math.round(l.minuteScroll.y / (-41));
- l.minuteSelected = G;
- h("#minuteli" + G).addClass("selectedli")
- });
- if (A.hasSecond) {
- l.secondScroll.on("scrollEnd", function (H) {
- h(".secondli").removeClass("selectedli");
- var G = Math.round(l.secondScroll.y / (-41));
- l.secondSelected = G;
- h("#secondli" + G).addClass("selectedli")
- })
- }
- var E = h("#counterValue");
- E.val(F.val());
- h("#counter_add").bind("tap", function () {
- E.val((Number(E.val()) + 0.25).toFixed(2))
- });
- h("#counter_minus").bind("tap", function () {
- if (Number(E.val()) <= 0) {
- E.val("0.00")
- } else {
- E.val((Number(E.val() - 0.25).toFixed(2)))
- }
- });
- h("#confirm_date_picker").bind("tap", function () {
- var J = new Date(B.getFullYear(), B.getMonth(), B.getDate(), l.hourSelected, l.minuteSelected, A.hasSecond ? l.secondSelected : 0),
- I = J.getFullYear() + "-" + (J.getMonth() + 1) + "-" + J.getDate() + " " + l.addZero(J.getHours()) + ":" + l.addZero(J.getMinutes()) + ":" + l.addZero(J.getSeconds()),
- H = J.getFullYear() + "-" + (J.getMonth() + 1) + "-" + J.getDate(), G = "";
- if (A.hasSecond) {
- G = l.addZero(J.getHours()) + ":" + l.addZero(J.getMinutes()) + ":" + l.addZero(J.getSeconds())
- } else {
- G = l.addZero(J.getHours()) + ":" + l.addZero(J.getMinutes())
- }
- if (typeof t == "object" && typeof F == "object") {
- t.val(G);
- F.val(E.val())
- }
- l.close()
- });
- h("#cancel_date_picker").bind("tap", function () {
- l.close()
- })
- }
- };
- var k = {
- init: function () {
- k.bindUIActions();
- k.hideInactive()
- }, bindUIActions: function () {
- h(".tabBlock-tab").on("tap", function () {
- k.switchTab(h(this))
- })
- }, hideInactive: function () {
- var s = h(".tabBlock");
- s.each(function (v) {
- var u = h(s[v]), t = u.find(".tabBlock-pane"), w = u.find(".tabBlock-tab.is-active");
- t.hide();
- h(t[w.index()]).show()
- })
- }, switchTab: function (s) {
- if (!s.hasClass("is-active")) {
- s.siblings().removeClass("is-active");
- s.addClass("is-active");
- k.showPane(s.index())
- }
- }, showPane: function (t) {
- var s = h(".tabBlock-content .lists");
- s.each(function (u) {
- if (!h(this).hasClass("hide")) {
- h(this).addClass("hide")
- }
- if (u == t) {
- h(this).removeClass("hide")
- }
- })
- }
- };
- var r = {
- show: function () {
- h("#popup_layer").addClass("show")
- }, close: function () {
- h("#popup_layer").removeClass("show");
- h(".popup_layer_cont").html("")
- }, getList: function (w) {
- var z = {hasSecond: false, isCustomLeftButton: false, customLeftButtonName: "清除"};
- r.picker_selector_html = '<div class="datepickerscroll" id="hourpickerscroll"><div class="scroller"><ul id="hourpicker" class="listitem"></ul></div></div>';
- if (z.hasSecond) {
- r.picker_selector_html += '<div style="position: absolute;left: 72px;top: 52px;">:</div>';
- r.picker_selector_html += '<div style="position: absolute;left: 148px;top: 52px;">:</div>'
- } else {
- r.picker_selector_html += '<div style="position: absolute;left: 108px;top: 52px;">:</div>'
- }
- r.picker_selector_html += '<div class="datepickerscroll" id="minutepickerscroll"><div class="scroller"><ul id="minutepicker" class="listitem"></ul></div></div>';
- if (z.hasSecond) {
- r.picker_selector_html += '<div class="datepickerscroll" id="secondpickerscroll"><div class="scroller"><ul id="secondpicker" class="listitem"></ul></div></div>'
- }
- if (z.isCustomLeftButton) {
- r.picker_selector_html += '<button id="clear_date_picker" style="color: #000000;"' + z.customLeftButtonName + "</button>"
- } else {
- r.picker_selector_html += '<button id="cancel_date_picker" style="width: 50%;background: #E8E8E8;color: #000000;">取消</button>'
- }
- r.picker_selector_html += '<button id="confirm_date_picker" style="width: 50%;background: #E8E8E8;color: #3779d0;">确定</button>';
- h(".popup_layer_cont").html(r.picker_selector_html);
- if (!z.hasSecond) {
- h("#hourpickerscroll").css("width", "50%");
- h("#minutepickerscroll").css("width", "50%")
- }
- var t = "<li> </li>", B = '<li id="hourli-1"> </li>', v = '<li id="minuteli-1"> </li>',
- s = '<li id="secondli-1"> </li>';
- var C = h("#hourpicker"), x = h("#minutepicker"), u = null;
- if (z.hasSecond) {
- u = h("#secondpicker")
- }
- var A = (typeof selectedDate == "object") ? selectedDate : new Date();
- r.hourSelected = A.getHours();
- r.minuteSelected = A.getMinutes();
- r.secondSelected = A.getSeconds();
- for (var y = 0; y < 24; y++) {
- B += '<li class="hourli" id="hourli' + y + '">' + l.addZero(y) + "</li>"
- }
- for (var y = 0; y < 60; y++) {
- v += '<li class="minuteli" id="minuteli' + y + '">' + l.addZero(y) + "</li>"
- }
- for (var y = 0; y < 60; y++) {
- s += '<li class="secondli" id="secondli' + y + '">' + l.addZero(y) + "</li>"
- }
- B += t;
- v += t;
- s += t;
- C.html(B);
- x.html(v);
- if (z.hasSecond) {
- u.html(s)
- }
- r.hourScroll = new IScroll("#hourpickerscroll", {scrollbars: false, snap: "li"});
- r.minuteScroll = new IScroll("#minutepickerscroll", {scrollbars: false, snap: "li"});
- if (z.hasSecond) {
- r.secondScroll = new IScroll("#secondpickerscroll", {scrollbars: false, snap: "li"})
- }
- r.hourScroll.scrollToElement("#hourli" + (A.getHours() - 1), 0);
- h("#hourli" + A.getHours()).addClass("selectedli");
- r.minuteScroll.scrollToElement("#minuteli" + (A.getMinutes() - 1), 0);
- h("#minuteli" + A.getMinutes()).addClass("selectedli");
- if (z.hasSecond) {
- r.secondScroll.scrollToElement("#secondli" + (A.getSeconds() - 1), 0);
- h("#secondli" + A.getSeconds()).addClass("selectedli")
- }
- r.hourScroll.on("scrollEnd", function (D) {
- h(".hourli").removeClass("selectedli");
- var E = Math.round(r.hourScroll.y / (-41));
- r.hourSelected = E;
- h("#hourli" + E).addClass("selectedli")
- });
- r.minuteScroll.on("scrollEnd", function (E) {
- h(".minuteli").removeClass("selectedli");
- var D = Math.round(r.minuteScroll.y / (-41));
- r.minuteSelected = D;
- h("#minuteli" + D).addClass("selectedli")
- });
- if (z.hasSecond) {
- r.secondScroll.on("scrollEnd", function (E) {
- h(".secondli").removeClass("selectedli");
- var D = Math.round(r.secondScroll.y / (-41));
- r.secondSelected = D;
- h("#secondli" + D).addClass("selectedli")
- })
- }
- h("#confirm_date_picker").bind("tap", function () {
- var G = new Date(A.getFullYear(), A.getMonth(), A.getDate(), r.hourSelected, r.minuteSelected, z.hasSecond ? r.secondSelected : 0),
- F = G.getFullYear() + "-" + (G.getMonth() + 1) + "-" + G.getDate() + " " + l.addZero(G.getHours()) + ":" + l.addZero(G.getMinutes()) + ":" + l.addZero(G.getSeconds()),
- E = G.getFullYear() + "-" + (G.getMonth() + 1) + "-" + G.getDate(), D = "";
- if (z.hasSecond) {
- D = l.addZero(G.getHours()) + ":" + l.addZero(G.getMinutes()) + ":" + l.addZero(G.getSeconds())
- } else {
- D = l.addZero(G.getHours()) + ":" + l.addZero(G.getMinutes())
- }
- if (typeof w == "object") {
- w.val(D)
- }
- r.close()
- });
- h("#cancel_date_picker").bind("tap", function () {
- r.close()
- })
- }
- };
- var j = {
- show: function () {
- h("#popup_layer").addClass("show")
- }, close: function () {
- h("#popup_layer").removeClass("show");
- h(".popup_layer_cont").html("")
- }, reCountDay: function () {
- var u = parseInt(solarDays(j.yearSelected, (parseInt(j.monthSelected) - 1)));
- var t = '<li id="dayli0"> </li>';
- for (var s = 1; s <= u; s++) {
- t += '<li class="dayli" id="dayli' + s + '">' + l.addZero(s) + "</li>"
- }
- t += "<li> </li>";
- h("#daypicker").html(t);
- j.dayScroll.destroy();
- j.dayScroll = new IScroll("#daypickerscroll", {scrollbars: false, snap: "li"});
- if (j.daySelected > u) {
- j.dayScroll.scrollToElement("#dayli" + (u - 1), 0);
- h("#dayli" + u).addClass("selectedli");
- j.daySelected = u
- } else {
- j.dayScroll.scrollToElement("#dayli" + (parseInt(j.daySelected) - 1), 0);
- h("#dayli" + parseInt(j.daySelected)).addClass("selectedli")
- }
- j.dayScroll.off("scrollEnd");
- j.dayScroll.on("scrollEnd", function (w) {
- h(".dayli").removeClass("selectedli");
- var v = Math.round(j.dayScroll.y / (-41) + 1);
- j.daySelected = v;
- h("#dayli" + v).addClass("selectedli")
- })
- }, getList: function (v) {
- var x = {isCustomLeftButton: false};
- j.picker_selector_html = '<div class="datepickerscroll" id="yearpickerscroll"><div class="scroller"><ul id="yearpicker" class="listitem"></ul></div></div><div class="datepickerscroll" id="monthpickerscroll"><div class="scroller"><ul id="monthpicker" class="listitem"></ul></div></div><div class="datepickerscroll" id="daypickerscroll"><div class="scroller"><ul id="daypicker" class="listitem"></ul></div></div>';
- if (x.isCustomLeftButton) {
- j.picker_selector_html += '<button id="clear_date_picker" style="width: 50%;background: #E8E8E8;color: #000000;">' + x.customLeftButtonName + "</button>"
- } else {
- j.picker_selector_html += '<button id="cancel_date_picker" style="width: 50%;background: #E8E8E8; color: #000000;">取消</button>'
- }
- j.picker_selector_html += '<button id="confirm_date_picker" style="width: 50%;background: #E8E8E8;color: #3779d0;">确定</button>';
- h(".popup_layer_cont").html(j.picker_selector_html);
- var t = "<li> </li>", C = '<li id="yearli1899"> </li>', A = '<li id="monthli0"> </li>',
- u = '<li id="dayli0"> </li>';
- var s = h("#yearpicker"), z = h("#monthpicker"), B = h("#daypicker");
- if (v.val()) {
- selectedDate = new Date().toDate(v.val())
- }
- var y = (typeof selectedDate == "object") ? selectedDate : new Date();
- j.yearSelected = y.getFullYear();
- j.monthSelected = y.getMonth() + 1;
- j.daySelected = y.getDate();
- for (var w = 1900; w < 2050; w++) {
- C += '<li class="yearli" id="yearli' + w + '">' + w + "</li>"
- }
- for (var w = 1; w < 13; w++) {
- A += '<li class="monthli" id="monthli' + w + '">' + w + "月</li>"
- }
- var D = solarDays(j.yearSelected, (parseInt(j.monthSelected) - 1));
- for (var w = 1; w <= D; w++) {
- u += '<li class="dayli" id="dayli' + w + '">' + l.addZero(w) + "</li>"
- }
- C += t;
- A += t;
- u += t;
- s.html(C);
- z.html(A);
- B.html(u);
- j.yearScroll = new IScroll("#yearpickerscroll", {mouseWheel: false, scrollbars: false, snap: "li"});
- j.monthScroll = new IScroll("#monthpickerscroll", {mouseWheel: false, scrollbars: false, snap: "li"});
- j.dayScroll = new IScroll("#daypickerscroll", {mouseWheel: false, scrollbars: false, snap: "li"});
- j.yearScroll.scrollToElement("#yearli" + (y.getFullYear() - 1), 0);
- h("#yearli" + y.getFullYear()).addClass("selectedli");
- j.monthScroll.scrollToElement("#monthli" + y.getMonth(), 0);
- h("#monthli" + (y.getMonth() + 1)).addClass("selectedli");
- j.dayScroll.scrollToElement("#dayli" + (y.getDate() - 1), 0);
- h("#dayli" + y.getDate()).addClass("selectedli");
- j.yearScroll.on("scrollEnd", function (F) {
- h(".yearli").removeClass("selectedli");
- var E = Math.round(j.yearScroll.y / (-41) + 1900);
- j.yearSelected = E;
- h("#yearli" + E).addClass("selectedli");
- j.reCountDay()
- });
- j.monthScroll.on("scrollEnd", function (F) {
- h(".monthli").removeClass("selectedli");
- var E = Math.round(j.monthScroll.y / (-41) + 1);
- j.monthSelected = E;
- h("#monthli" + E).addClass("selectedli");
- j.reCountDay()
- });
- j.dayScroll.on("scrollEnd", function (F) {
- h(".dayli").removeClass("selectedli");
- var E = Math.round(j.dayScroll.y / (-41) + 1);
- j.daySelected = E;
- h("#dayli" + E).addClass("selectedli")
- });
- h("#confirm_date_picker").bind("tap", function () {
- var H = new Date(j.yearSelected, j.monthSelected - 1, j.daySelected, y.getHours(), y.getMinutes(), y.getSeconds()),
- G = H.getFullYear() + "-" + (H.getMonth() + 1) + "-" + H.getDate() + " " + l.addZero(H.getHours()) + ":" + l.addZero(H.getMinutes()) + ":" + l.addZero(H.getSeconds()),
- F = H.getFullYear() + "-" + (H.getMonth() + 1) + "-" + H.getDate(),
- E = l.addZero(H.getHours()) + ":" + l.addZero(H.getMinutes()) + ":" + l.addZero(H.getSeconds());
- if (typeof v == "object") {
- v.val(F)
- }
- j.close()
- });
- h("#cancel_date_picker").bind("tap", function () {
- j.close()
- })
- }
- };
- var b = {
- wait: 59, updateTimer: function (s) {
- if (b.wait == 0) {
- h(s).val("重新发送");
- h(s).removeAttr("disabled");
- h(s).css({color: "#438eff", "text-align": "left"})
- } else {
- if (b.wait == 59) {
- if (!h(s).attr("disabled")) {
- h(s).attr("disabled", "disabled")
- }
- h(s).css({color: "#b3b3b3", "text-align": "left"})
- }
- h(s).val("重新发送(" + b.wait + ")");
- b.wait--;
- setTimeout(function () {
- b.updateTimer(s)
- }, 1000)
- }
- }
- };
- var n = {
- rules: {
- email: /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,4}){1,2})$/,
- url: /^((http(s)?|ftp|telnet|news|rtsp|mms):\/\/)?(((\w(\-*\w)*\.)+[a-zA-Z]{2,4})|(((1\d\d|2([0-4]\d|5[0-5])|[1-9]\d|\d).){3}(1\d\d|2([0-4]\d|5[0-5])|[1-9]\d|\d).?))(:\d{0,5})?(\/+.*)*$/,
- counter: /^[a-zA-Z][a-zA-Z0-9_]{4,15}$/,
- number: /^\\-?\\d+(\\.\\d+)?$/,
- tel: /\d{3}-\d{8}|\d{4}-\d{7}/,
- phone: /^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|17[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\d{8}$/,
- zipCode: /[1-9]\d{5}(?!\d)/,
- idNo: /^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[Xx])$)$/,
- date: /^\d{4}-\d{1,2}-\d{1,2}/,
- password: /^[a-zA-Z]\w{5,17}$/,
- smsCode: /\d{6}$/,
- cardId: /\d{8}$/,
- address: /^[\s\S]{10,}$/,
- select: /^[\s\S]{1,}$/,
- message: {
- radio: "请选择一个选项",
- checkbox: "如果要继续,请选中此框",
- select: "请选择列表中的一项",
- email: "请输入正确的电子邮件地址",
- url: "请输入正确网站地址",
- tel: "请输入正确的电话号码",
- phone: "请输入正确的手机号码",
- idNo: "请输入正确身份证号码",
- number: "请输入数字",
- date: "请输入正确的日期格式",
- pattern: "内容格式不符合要求",
- empty: "请填写此字段",
- password: "长度6~18,字母开头,含字母数字下划线",
- smsCode: "请输入正确的手机短信验证码",
- cardId: "请输入正确的诊疗卡号码",
- address: "地址长度要大于10个汉字",
- select: "请选择"
- }
- }, matchId: {password: "#password", message: {password: "2次密码输入不一致"}}, check: function (s) {
- if (h("#noValidate")) {
- h("#noValidate").remove()
- }
- var u = h(s).find("input,select").length - 1, t = false;
- h(s).find("input,select").each(function (v) {
- h(this).unbind("tap");
- if (h(this).attr("required")) {
- var w = h(this).attr("required");
- if (n.rules[w]) {
- if (h(this).val().match(n.rules[w])) {
- } else {
- n.tips(this, n.rules.message[w]);
- return false
- }
- } else {
- if (h(this).val().length < 1) {
- n.tips(this, n.rules.message.empty);
- return false
- }
- }
- }
- if (h(this).attr("format")) {
- var w = h(this).attr("format");
- if (n.rules[w] && h(this).val().length > 0) {
- if (h(this).val().match(n.rules[w])) {
- } else {
- n.tips(this, n.rules.message[w]);
- return false
- }
- }
- }
- if (h(this).attr("matchId")) {
- var w = h(this).attr("matchId");
- if (n.matchId[w]) {
- if (h(this).val() == h(n.matchId[w]).val()) {
- } else {
- n.tips(this, n.matchId.message[w]);
- return false
- }
- }
- }
- if (u == v) {
- t = true
- }
- });
- return t
- }, tips: function (w, v) {
- var s = {
- border: "1px solid rgb(247, 206, 57)",
- "text-align": "left",
- color: "rgb(51, 51, 51)",
- "font-size": "0.8rem",
- padding: "5px 10px",
- position: "relative",
- "border-radius": "4px",
- "line-height": "0.8rem",
- top: "0",
- "background-color": "rgb(255, 255, 224)",
- "z-index": "1"
- }, t = {
- "border-color": "transparent transparent rgb(247, 206, 57)",
- "border-style": "dashed dashed solid",
- bottom: "0px",
- width: "0px; height: 0px",
- overflow: "hidden",
- "border-width": "6px; position: absolute",
- top: "-13px"
- }, u = {
- "border-color": "transparent transparent rgb(255, 255, 224)",
- "border-style": "dashed dashed solid; bottom: -1px",
- width: "0px",
- height: "0px",
- overflow: "hidden",
- "border-width": "6px; position: absolute",
- top: "-12px"
- };
- var x = h('<div id="noValidate"><div class="front"></div><div class="back"></div>' + v + "</div>").css(s);
- h(w).parent().append(x);
- h("#noValidate div.front").css(t);
- h("#noValidate div.back").css(u);
- h(w).on("tap", function () {
- h("#noValidate").remove()
- });
- h(w)[0].focus()
- }
- };
- var m = {
- ton: function (s) {
- h(s).on("touchstart touchmove touchend", function (t) {
- if (t.type == "touchstart") {
- h(this).addClass("ton")
- } else {
- if (t.type == "touchmove") {
- h(this).removeClass("ton")
- } else {
- h(this).removeClass("ton")
- }
- }
- })
- }, popWinLayer: function (u, t, s) {
- if (t) {
- h(".asort .fl span").text(t)
- }
- if (u) {
- h("#newwrap").attr("src", u);
- h(".asort").eq(0).addClass("show")
- } else {
- h(".asort").eq(s).addClass("show")
- }
- h(".hzApp-over-layer").addClass("show")
- }, closeWinLayer: function () {
- h(".hzApp-over-layer").removeClass("show");
- setTimeout(function () {
- h(".hzApp-over-layer .asort").removeClass("show")
- }, 100);
- try {
- reload.doing()
- } catch (s) {
- }
- }, icoAddEvent: function () {
- m.ton("header i, .hd .fr, .hd .fl i, A.btn-large");
- if (h(".menu_home")) {
- h(".menu_home").on("touchend", function () {
- setTimeout(function () {
- window.location.href = "index.html"
- }, 200)
- })
- }
- if (h(".menu_back")) {
- h(".menu_back").on("tap", function () {
- window.history.back()
- })
- }
- if (h(".menu_todo")) {
- h(".menu_todo").on("tap", function () {
- if (h(this).hasClass("tap")) {
- h(this).removeClass("tap");
- h("#todo").removeClass("show")
- } else {
- h(this).addClass("tap");
- h("#todo").addClass("show")
- }
- })
- }
- if (h(".selectToggle")) {
- h(".selectToggle .top-nav").on("tap", function () {
- if (h(".selectToggle .arrow-box i").hasClass("icon-arrowdown")) {
- h(".selectToggle ul").css({display: "block"});
- h(".selectToggle .arrow-box i").removeClass("icon-arrowdown");
- h(".selectToggle .arrow-box i").addClass("icon-arrowup");
- h(".selectToggle .marginall .text").html("")
- } else {
- h(".selectToggle ul").css({display: "none"});
- h(".selectToggle .arrow-box i").removeClass("icon-arrowup");
- h(".selectToggle .arrow-box i").addClass("icon-arrowdown");
- h(".selectToggle .marginall .text").html(h(".selectToggle ul li.selected").html())
- }
- })
- }
- if (h(".menu_family")) {
- h(".menu_family").on("tap", function () {
- if (h(this).hasClass("tap")) {
- h(this).removeClass("tap");
- h("#family_todo").removeClass("show")
- } else {
- h(this).addClass("tap");
- h("#family_todo").addClass("show")
- }
- })
- }
- if (h("#todo .todo_msk")) {
- h("#todo .todo_msk").on("tap", function () {
- h("#todo").removeClass("show");
- h(".menu_todo").removeClass("tap")
- })
- }
- if (h("#family_todo .todo_msk")) {
- h("#family_todo .todo_msk").on("tap", function () {
- h("#family_todo").removeClass("show");
- h(".menu_family").removeClass("tap")
- })
- }
- if (h("#todo td")) {
- h("#todo td").on("touchend", function () {
- var s = h(this).find("a").attr("vhref");
- if (h("#family_todo .ck").parent().attr("data")) {
- var t = JSON.parse(h("#family_todo .ck").parent().attr("data"));
- s += "?id=" + t.id
- }
- m.popWinLayer(s, h(this).find("label").text(), h(this).parent().index());
- h(".menu_todo").trigger("tap")
- })
- }
- if (h(".menu_close_layer,.hd .fr i.icon-del")) {
- h(".menu_close_layer,.hd .fr i.icon-del").on("tap", function () {
- m.closeWinLayer()
- })
- }
- }, icoEventCallback: function (s) {
- if (!s) {
- s = 0
- }
- switch (s) {
- case 1:
- h(".alist .button").on("tap", function () {
- d.sendData(window.apiUrl+"?c=Index&a=favoriteHospital", JSON.parse(h(this).parent().attr("data")), false, ["更新失败", "更新成功"], [0, h(this)])
- });
- break;
- case 2:
- h(".alist .button").on("tap", function () {
- d.sendData(window.apiUrl+"?c=Index&a=favoriteDoctor", JSON.parse(h(this).parent().attr("data")), false, ["更新失败", "更新成功"], [0, h(this)])
- });
- break;
- case 3:
- h("#list ul").append('<li class="line1 bar hide"></li>');
- h("li.line1.bar").on("tap", function () {
- if (h(this).hasClass("title")) {
- h(this).removeClass("title");
- h(this).find("i").removeClass("icon-arrowup").addClass("icon-arrowdown");
- t(h(this), false)
- } else {
- h(this).addClass("title");
- h(this).find("i").removeClass("icon-arrowdown").addClass("icon-arrowup");
- t(h(this), true)
- }
- function t(w, u) {
- var v = w.next();
- while (!v.hasClass("bar")) {
- if (u) {
- v.removeClass("hide")
- } else {
- v.addClass("hide")
- }
- v = v.next()
- }
- }
- });
- break;
- case 4:
- h(".selectToggle ul").css({display: "none"});
- h(".selectToggle .marginall .text").html(h(".selectToggle ul li.selected").find("a").html());
- reload.doing();
- h(".selectToggle ul li").on("tap", function () {
- h(".selectToggle ul li").each(function () {
- if (h(this).hasClass("selected")) {
- h(this).removeClass("selected");
- h(this).find("i").removeClass("icon-radioCheck");
- h(this).find("i").addClass("icon-radio")
- }
- });
- h(this).addClass("selected");
- h(this).find("i").removeClass("icon-radio");
- h(this).find("i").addClass("icon-radioCheck");
- h(".selectToggle .arrow-box i").removeClass("icon-arrowup");
- h(".selectToggle .arrow-box i").addClass("icon-arrowdown");
- h(".selectToggle .marginall .text").html(h(this).find("a").html());
- h(".selectToggle ul").css({display: "none"});
- var t = JSON.parse(h(this).find("a").attr("data"));
- var u = h("#header p").text();
- h("#header p").text(t.trueName + u.substring(u.indexOf("的"), u.length));
- reload.doing()
- });
- break;
- case 5:
- h("#drugName").val("");
- h("#frequency").val(1);
- h("#doseType").val("片");
- h("#start_date").val(new Date().format("yyyy-M-dd"));
- h("#diagnose").val("");
- h("#source").val("");
- break;
- case 6:
- h("input[name=customerFamilyId]").eq(0).attr("checked", "checked");
- break;
- case 7:
- h(".asort .fr").trigger("tap");
- h("input[name=customerFamilyId]").eq(0).attr("checked", "checked");
- break;
- case 8:
- break
- }
- }, switchStatus: function (t) {
- if (t) {
- switch (t[0]) {
- case 0:
- if (t[1].attr("name") == "del") {
- t[1].attr("name", "add");
- t[1].text("添加");
- t[1].siblings(".selected").css("display", "none")
- } else {
- t[1].attr("name", "del");
- t[1].text("取消");
- t[1].siblings(".selected").css("display", "block")
- }
- break;
- case 1:
- var s = ["pending", "missing"];
- t[1].attr("name", "taken");
- t[1].html("已服");
- t[1].removeClass(s[s.indexOf(t[1].attr("name"))]);
- t[1].addClass("button");
- break
- }
- }
- }
- };
- var e = {
- reset: function () {
- c.w = h(window).width();
- c.h = h(window).height();
- h(".reSize").height(c.h / 2);
- if (h("#ListCycle")) {
- h("#ListCycle li").height(c.w * 0.96 / 2);
- h("#ListCycle li").css("padding-top", c.w * 0.96 / 8);
- h("#ListCycle").show()
- }
- if (h(".title_d").width() - h(".title").width() > 0) {
- h(".title_d").addClass("round")
- } else {
- h(".title_d").removeClass("round")
- }
- var u = navigator.userAgent;
- var t = u.toLowerCase();
- function s() {
- WeixinJSBridge.call("hideOptionMenu");
- WeixinJSBridge.call("hideToolbar")
- }
- if (typeof WeixinJSBridge == "undefined") {
- if (document.addEventListener) {
- document.addEventListener("WeixinJSBridgeReady", s, false)
- } else {
- if (document.attachEvent) {
- document.attachEvent("WeixinJSBridgeReady", s);
- document.attachEvent("onWeixinJSBridgeReady", s)
- }
- }
- } else {
- s()
- }
- }
- };
- window.hzAPI = d;
- window.login = o;
- window.Fx = f;
- window.validate = n;
- window.calendar = g;
- window.HoursDose = l;
- window.DatePicker = j;
- window.TimePicker = r;
- window.timerBt = b;
- window.counter = a;
- window.planPerDay = q;
- window.TabBlock = k;
- window.icoNavFx = p;
- window.config = c;
- window.icoNav = m;
- // window.apiUrl = "http://ywtwx.dept.nfyy.com/ywtapi/";
- // window.apiUrl = 'http://homestead.app/dhapi/';
- // window.apiUrl = "http://wxapi.demo.ywtinfo.com/dhapi/";
- // window.apiUrl = "http://localhost:8094/dhapi/";
- window.apiUrl = "http://homestead.app/dhapi/";
- h(window).on("load", function () {
- e.reset()
- });
- m.icoAddEvent()
- })(Zepto);
|