mingyi-doctor-homepage.js 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. // 基本信息(包括userAgent、上个页面传递的数据)
  2. var baseInfo = null,
  3. // 基础环境信息(包括当前webview)
  4. baseEnv = null;
  5. var $baseInfoWrapper = $('#base_info_wrap');
  6. // 获取基本信息(包括userAgent、上个页面传递的数据)
  7. var getBaseInfoPromise= function() {
  8. // 登录的相关信息
  9. var userAgent = plus && JSON.parse(plus.storage.getItem("userAgent"))
  10. return {
  11. userAgent: userAgent,
  12. // 上一个页面传递的数据
  13. accessData: baseEnv.webview.accessData
  14. }
  15. },
  16. // 获取基础环境信息
  17. getBaseEnvPromise = function () {
  18. var env = {
  19. webview: plus&&plus.webview.currentWebview()
  20. };
  21. return Promise.resolve().then(function(res) {
  22. return env;
  23. });
  24. },
  25. showBaseInfo = function(){
  26. // TODO getReqPromise(url,data)
  27. Promise.resolve().then(function(res) {
  28. // TODO 示例后台返回医生数据
  29. res = doctorData;
  30. if(res.status == 200) {
  31. return res.data;
  32. } else {
  33. mui.toast(res.msg);
  34. return null;
  35. }
  36. }).then(function(data) {
  37. if(data) {
  38. var html = template("base_info_tmpl", data);
  39. $baseInfoWrapper.html(html);
  40. }
  41. }).catch(function(e) {
  42. console && console.error(e);
  43. });
  44. },
  45. // 绑定页面事件
  46. bindEvents = function () {
  47. };
  48. // 点击“取消名医”按钮的处理
  49. cancelMingyi = function() {
  50. // TODO 示例医生姓名数据
  51. var doctorName = doctorData.data.name;
  52. mui.confirm("取消名医后,该医生无法提供名医咨询服务,是否确认取消?", "", ["确认取消", "不了,谢谢"], function(e) {
  53. if(e.index == 0){
  54. // 点击“确认取消”处理
  55. // TODO 发送请求getReqPromise(url,data)
  56. Promise.resolve().then(function(res) {
  57. if(res.status==200) {
  58. mui.toast("取消成功!");
  59. mui.openWindow({
  60. url: "qita-doctor-homepage.html",
  61. id:"qita-doctor-homepage",
  62. // 跳转页面传参
  63. extras: {
  64. accessData:{ // 传递数据
  65. doctor: baseInfo.accessData && baseInfo.accessData.doctor
  66. },
  67. backTo: baseEnv.webview.opener().id
  68. }
  69. });
  70. } else {
  71. mui.toast("取消失败!");
  72. }
  73. });
  74. } else {
  75. // 点击“不了,谢谢”处理
  76. }
  77. });
  78. },
  79. // 页面业务处理流程开始
  80. new Promise(function(resolve, reject) {
  81. // TODO 临时放开
  82. // resolve(true);
  83. mui.plusReady(function() {
  84. // plus已经准备好,可以往下执行
  85. resolve(true);
  86. });
  87. }).then(function() {
  88. // 获取基础环境信息
  89. return getBaseEnvPromise().then(function(env) {
  90. baseEnv = env;
  91. }).then(function() {
  92. // 获取登录医生信息
  93. baseInfo = getBaseInfoPromise();
  94. // 显示医生基本信息
  95. showBaseInfo();
  96. // 绑定页面事件
  97. bindEvents();
  98. })
  99. }).catch(function(e) {
  100. plus.nativeUI.closeWaiting();
  101. console && console.error(e);
  102. });
  103. template.helper("setPhoto", function(p) {
  104. return getImgUrl(p);
  105. });