mine.html 15 KB

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