mine.html 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419
  1. <!doctype html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>我</title>
  6. <meta name="author" content="yihu.com" />
  7. <meta name="format-detection" content="telephone=no" />
  8. <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0" />
  9. <meta name="apple-mobile-web-app-capable" content="yes" />
  10. <meta name="apple-mobile-web-app-status-bar-style" content="black" />
  11. <link rel="stylesheet" type="text/css" href="../../../common/iconfont/iconfont.css">
  12. <link rel="stylesheet" type="text/css" href="../../../common/cross/css/cross.css">
  13. <link rel="stylesheet" type="text/css" href="../../../common/cross/css/cross.ui.css">
  14. <link rel="stylesheet" type="text/css" href="../../../common/cross/css/cross.ui.css" />
  15. <link rel="stylesheet" type="text/css" href="../../../common/css/jy-style.css">
  16. <link rel="stylesheet" type="text/css" href="../../../css/mui-pull.css"/>
  17. <style>
  18. .p-clcardna {width: 90px;height: 30px;background-position: center top;left: -6px;bottom: -3px;line-height: 38px;background-size: auto 100%;}
  19. .div-info{border-bottom: 1px solid #dcdcdc;}
  20. .div-info .c-list li{height: 85px;margin:0px 0px 0px 0px;padding: 0;background: #ffffff;}
  21. .div-info .c-list img{width: 50px;height: 50px;background-size: 50px;border-radius: 50px;}
  22. .div-info .icon-div{margin: 15px 15px 25px 10px;}
  23. .div-info .div-user-name{color: #323232;font-size: 16px;font-weight: bold;margin-top: 15px;height: 20px;}
  24. .div-info .div-phone{color: #909090; font-size: 14px;position: absolute;top: 45px;left: 75px;}
  25. .c-arrow-r{position:absolute;top:50%;right:10px;margin-top:-5px;content:"";display:block;width:8px;height:8px;border:solid #cdcdcd;border-width:2px 2px 0 0;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);}
  26. .f-dn{display: none;}
  27. .div-title{position: absolute;left: 55px;top: 16px;color: #333;}
  28. .mui-scroll-wrapper { top: 54px; height: -moz-calc(100% - 60px); height: -webkit-calc(100% - 60px); height: calc(100% - 60px); }
  29. .bgc-17b3ec{background-color: #17b3ec;}
  30. .manyi-score{position: absolute;top: 16px;right: 30px;color: #909090;}
  31. .div-red-dian{ width: 5px; height: 5px; background: red; border-radius: 5px; margin:8px 0 0 5px; }
  32. .dis-none{ display: none; }
  33. </style>
  34. </head>
  35. <body>
  36. <div class="h45">
  37. <div class="demo-comtop">
  38. <!--<a class="mui-action-back"></a>-->
  39. <h1>我</h1>
  40. </div>
  41. </div>
  42. <div id="wrapper" class="mui-scroll-wrapper">
  43. <div class="mui-scroll">
  44. <div class="main">
  45. <div class="">
  46. <div class="c-100 c-position-r" id="doc_info">
  47. </div>
  48. </div>
  49. <ul class="c-list c-border-tb c-loper mt10" id="list">
  50. <li class="c-list-text c-list-cover ewmli" id="mp">
  51. <div class="c-list-value">
  52. <h4><span class="color-iconfont mr15" ><img src="../images/mingpian_icon.png"></span></h4>
  53. </div>
  54. <div class="div-title">我的名片</div>
  55. <div class="c-arrow-r"></div>
  56. </li>
  57. <!--<li class="c-list-text c-list-cover" id="times" data-href="../../hzzd/html/guidance_list.html">
  58. <div class="c-list-value">
  59. <h4><span class="color-iconfont mr15"><img src="../images/zhidaomoban_icon.png"></span></h4>
  60. </div>
  61. <div class="div-title">指导模板</div>
  62. <div class="c-arrow-r"></div>
  63. </li>-->
  64. <li class="c-list-text c-list-cover" id="times" data-href="../../mine/html/gongzuoshezhi.html">
  65. <div class="c-list-value">
  66. <h4><span class="color-iconfont mr15"><img src="../images/gongzuoshezi_icon.png"></span></h4>
  67. </div>
  68. <div class="div-title"> 工作设置 </div>
  69. <div class="c-arrow-r"></div>
  70. </li>
  71. <li class=" c-list-text c-list-cover jx" style="height: 10px; padding:0 !important; background: #f2f4f6;">
  72. </li>
  73. <li class=" c-list-text c-list-cover" data-href="../../mine/html/set.html">
  74. <div class="c-list-value">
  75. <h4><span class="color-iconfont mr15"><img src="../images/shezi_icon.png"></span></h4>
  76. </div>
  77. <div class="div-title">
  78. <span class="fl">设置</span>
  79. </div>
  80. <div class="c-arrow-r"></div>
  81. </li>
  82. <li class=" c-list-text c-list-cover" data-href="../../mine/html/about.html">
  83. <div class="c-list-value">
  84. <h4><span class="color-iconfont mr15"><img src="../images/gengxin_icon.png"></span></h4>
  85. </div>
  86. <div class="div-title">
  87. <span class="fl">关于我们</span>
  88. </div>
  89. <div class="c-arrow-r"></div>
  90. </li>
  91. </ul>
  92. <ul class="c-list c-border-b c-loper">
  93. <li class=" c-list-text c-list-cover" id="updateVersion">
  94. <div class="c-list-value">
  95. <h4><span class="color-iconfont mr15"><img src="../images/gengxin_icon.png"></span></h4>
  96. </div>
  97. <div class="div-title">
  98. <span class="fl">检查更新</span>
  99. <span class="div-red-dian fl dis-none" id="red_doct"></span>
  100. </div>
  101. <div class="c-arrow-r"></div>
  102. </li>
  103. </ul>
  104. <div class="c-t-center bgc-17b3ec width-100 mt20 c-fff h45 lih45" style="display: none" id="backToAdmin">返回管理员账号</div>
  105. </div>
  106. </div>
  107. </div>
  108. </body>
  109. <script type="text/html" id="doc_info_tmpl">
  110. <div class="div-info">
  111. <ul class="c-list">
  112. <li class="inp" id="person_info">
  113. <div class="icon-div">
  114. <img src="" id="doc_photo">
  115. </div>
  116. <div class="div-user-name">{{name}}</div>
  117. <div class="div-phone">手机号:{{sMobile}}</div>
  118. <div class="c-arrow-r"></div>
  119. </li>
  120. <li class="c-list-text c-list-cover" id="agree" style="height: 50px;">
  121. <div class="c-list-value">
  122. <h4><span class="color-iconfont mr15" ><img style="width: 26px;height: 26px;" src="../images/icon_manyidu.png"></span></h4>
  123. </div>
  124. <div class="div-title">我的评价</div>
  125. {{if evaluateScore==0}}
  126. <div class="c-f15 manyi-score">暂无评分</div>
  127. {{else}}
  128. <div class="c-f16 manyi-score">{{evaluateScore}}</div>
  129. {{/if}}
  130. <div class="c-arrow-r"></div>
  131. </li>
  132. </ul>
  133. </div>
  134. <span class="cl-poewm {{showEwm(docType)}}" style="display:none"><a onclick="toErweima()"><i class="iconfont icon-erweima"></i></a></span>
  135. </script>
  136. <script src="../../../js/app.js" type="text/javascript" charset="utf-8"></script>
  137. <script src="../../../js/jquery/2.1.3/jquery.js"></script>
  138. <script type="text/javascript" src="../../../js/mui.min.js"></script>
  139. <script src="../../../widget/mobiscroll/2.17.1/js/mobiscroll.js"></script>
  140. <link rel="stylesheet" type="text/css" href="../../../widget/mobiscroll/2.17.1/css/mobiscroll.css" />
  141. <script src="../../../js/common_http.js" type="text/javascript" charset="utf-8"></script>
  142. <script src="../../../js/template.js" type="text/javascript" charset="utf-8"></script>
  143. <script src="../../js/common.js" type="text/javascript" charset="utf-8"></script>
  144. <script src="../../js/templateHelp.js" type="text/javascript" charset="utf-8"></script>
  145. <script src="../../../js/mui.pullToRefresh.js" type="text/javascript" charset="UTF-8"></script>
  146. <script src="../../../js/mui.pullToRefresh.material.js" type="text/javascript" charset="utf-8"></script>
  147. <script type="text/javascript">
  148. var docCode,docName,docJob,docType;
  149. var wgtVer = null;
  150. var noNew = false;
  151. var downUrl = null;
  152. var version_str = null;
  153. var version_int = null;
  154. mui.plusReady(function() {
  155. //添加返回管理员按钮
  156. var userAgent = JSON.parse(plus.storage.getItem("userAgent"));
  157. if(userAgent.observer){
  158. $("#backToAdmin").show();
  159. }
  160. initScroller();
  161. initPage();
  162. //判断版本信息显示小红点
  163. plus.runtime.getProperty(plus.runtime.appid, function(inf){
  164. wgtVer = inf.version;
  165. if(plus.os.name == "iOS") {
  166. // 检测app小版本的更新
  167. checkUpgrade();
  168. } else if(plus.os.name == "Android") {
  169. // 先检测大版本的更新,如果没有再检测app小版本的更新
  170. checkVersion();
  171. }
  172. });
  173. /*
  174. * 在安卓条件下检查版本
  175. */
  176. function checkVersion() {
  177. mui.ajax(server + 'version/app', {
  178. data: {
  179. version: 0,//获取当前版本的所有信息,然后以version_int号来校验升级信息
  180. code: "app_doc"
  181. },
  182. dataType: 'json', //服务器返回json格式数据
  183. type: 'post', //HTTP请求类型
  184. timeout: 10000, //超时时间设置为10秒;
  185. success: function(res) {
  186. console.log(JSON.stringify(res));
  187. if(res.status == 200) {
  188. if(res.data && res.data.version_int && (res.data.version_int > curr_app_version)) {
  189. $('#red_doct').removeClass('dis-none');
  190. noNew = true;
  191. downUrl = res.data.url;
  192. version_int = res.data.version_int;
  193. }else {
  194. // 没有大版本时就检测小版本的升级
  195. checkUpgrade();
  196. }
  197. }
  198. },
  199. error: function(xhr, type, errorThrown) {
  200. if(type == "timeout" || type == "abort" || type == "error") {
  201. //mui.confirm("网络异常,请稍后重试!", "", ["退出"], function() {
  202. // plus.runtime.quit();
  203. //});
  204. plus.nativeUI.toast("网络错误: 无法进行版本升级检测!");
  205. }
  206. }
  207. });
  208. }
  209. // 检测app小版本的更新
  210. function checkUpgrade(){
  211. mui.ajax(server + 'version/app', {
  212. data: {
  213. version: 0,//资源包不以version_int号来校验升级信息,而以version_str判断.version_str不相同就会升级。
  214. code: "wgt"
  215. },
  216. dataType: 'json', //服务器返回json格式数据
  217. type: 'post', //HTTP请求类型
  218. timeout: 10000, //超时时间设置为10秒;
  219. success: function(res) {
  220. console.log(JSON.stringify(res));
  221. if(res.status == 200) {
  222. if(res.data && res.data.version_str && wgtVer && (res.data.version_str != wgtVer)) {
  223. $('#red_doct').removeClass('dis-none');
  224. noNew = true;
  225. downUrl = res.data.url;
  226. version_str = res.data.version_str;
  227. }
  228. }
  229. // console.log(res.data.version_str);
  230. },
  231. error: function(xhr, type, errorThrown) {
  232. if(type == "timeout" || type == "abort" || type == "error") {
  233. plus.nativeUI.toast("网络错误: 无法进行版本升级检测!");
  234. }
  235. }
  236. });
  237. }
  238. // 下载wgt文件
  239. function downWgt(wgtUrl){
  240. plus.nativeUI.showWaiting("正在下载升级文件...");
  241. plus.downloader.createDownload( wgtUrl, {filename:"_doc/update/"}, function(d,status){
  242. plus.nativeUI.closeWaiting();
  243. if ( status == 200 ) {
  244. console.log("下载升级文件成功:" + d.filename);
  245. installWgt(d.filename); // 安装wgt包
  246. } else {
  247. console.log("下载升级文件失败!");
  248. plus.nativeUI.alert("下载升级文件失败!");
  249. }
  250. }).start();
  251. }
  252. // 更新应用资源
  253. function installWgt(path){
  254. plus.nativeUI.showWaiting("正在安装升级文件...");
  255. plus.runtime.install(path,{},function(){
  256. plus.nativeUI.closeWaiting();
  257. console.log("升级成功!");
  258. plus.nativeUI.alert("升级完成,请点击确定对App进行重启!",function(){
  259. plus.runtime.restart();
  260. });
  261. },function(e){
  262. plus.nativeUI.closeWaiting();
  263. plus.nativeUI.toast("升级失败!错误信息[" + e.code + "]:" + e.message);
  264. console.log("升级失败["+e.code+"]:"+e.message);
  265. });
  266. }
  267. $('#updateVersion').on('tap',function(){
  268. if(noNew){
  269. if(version_int && (version_int > curr_app_version)){
  270. plus.runtime.openURL(downUrl); // 下载升级包
  271. }else if(version_str && wgtVer && (version_str != wgtVer)){
  272. downWgt(downUrl); // 下载升级包
  273. }
  274. }else{
  275. plus.nativeUI.toast("您已是最新版本");
  276. }
  277. })
  278. });
  279. var myScroll;
  280. function initScroller(){
  281. //阻尼系数
  282. var deceleration = mui.os.ios?0.003:0.0009;
  283. mui('.mui-scroll-wrapper').scroll({
  284. bounce: false,
  285. indicators: true, //是否显示滚动条
  286. deceleration:deceleration
  287. });
  288. myScroll = mui(".mui-scroll").pullToRefresh({
  289. down: {
  290. callback: function() {
  291. var self = this;
  292. setTimeout(function() {
  293. initPage();
  294. self.endPullDownToRefresh();
  295. }, 1000);
  296. }
  297. }
  298. });
  299. }
  300. function initPage(){
  301. var self=plus.webview.currentWebview();
  302. docType=plus.storage.getItem("docType");
  303. $("#times").show();
  304. $("#mp").show();
  305. $(".jx").show();
  306. if(docType==10){//管理员不让设置工作时间
  307. $("#times").hide();
  308. }
  309. if(docType==10 ||docType==1){
  310. $("#mp").hide();
  311. $(".jx").hide();
  312. }
  313. mui("body").on("tap","#person_info",function(){
  314. openWebview('../../mine/html/homepage.html')
  315. });
  316. mui("body").on("tap","#agree",function(){
  317. openWebview('../../mine/html/manyidu.html')
  318. });
  319. sendPost("doctor/baseinfo", null, queryFailed, success,'POST','',true);
  320. }
  321. function success(req) {
  322. if (req.status == 200) {
  323. docCode=req.data.code;//医生标识
  324. docName=req.data.name;
  325. docJob=req.data.jobName;
  326. photo=req.data.photo;//图片
  327. hospitalName=req.data.hospitalName//地址
  328. sex=req.data.sex;
  329. req.data.docType = docType;
  330. template.helper("showEwm", function(docType) {
  331. if (docType != 2) {
  332. return "c-hide";
  333. }
  334. return "";
  335. });
  336. //隐藏显示手机号
  337. var sMobile = req.data.mobile.substr(0,3)+"****"+req.data.mobile.substr(-4);
  338. req.data.sMobile = sMobile;
  339. var cont = template("doc_info_tmpl", req.data);
  340. document.getElementById("doc_info").innerHTML = cont;
  341. initDocPhoto("doc_photo", req.data.photo, req.data.sex, docType);//图片加载失败时使用默认图片
  342. }
  343. }
  344. function queryFailed(res) {
  345. if (res && res.msg) {
  346. plus.nativeUI.toast(res.msg);
  347. } else {
  348. plus.nativeUI.toast("数据加载失败");
  349. }
  350. plus.nativeUI.closeWaiting();
  351. }
  352. mui("#list").on("tap", "li", function() {
  353. if($(this).hasClass("ewmli")){
  354. toErweima()
  355. }else{
  356. var href = this.getAttribute("data-href");
  357. openWebview(href);
  358. }
  359. });
  360. function toErweima(){
  361. mui.openWindow('../../mine/html/erweima.html','erweima',{
  362. extras:{code:docCode,name:docName,job:docJob,sex:sex,photo:photo,hospitalName:hospitalName}
  363. }
  364. )
  365. };
  366. $("#backToAdmin").on('tap', function(){
  367. //返回观察者账号页面
  368. var adminAgent = plus.storage.getItem("adminUserAgent");
  369. plus.storage.removeItem("userAgent");
  370. plus.storage.setItem("userAgent", adminAgent);
  371. //标记返回admin页面
  372. plus.storage.setItem("backToAdmin", "1");
  373. plus.navigator.setUserAgent(adminAgent);
  374. if(plus.webview.getWebviewById("relogin")){
  375. plus.webview.getWebviewById("relogin").reload(true);
  376. }
  377. openWebview("../../home/html/relogin.html");
  378. });
  379. /*
  380. * 更新页面数据
  381. * */
  382. window.addEventListener("refresh", function(e) {
  383. initPage();
  384. });
  385. </script>
  386. </html>