70c86b866d1e62402d0a2b310f790fbacb4fded8.svn-base 9.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257
  1. package eVVM.apk.ui.report.vndetail;
  2. import android.content.Intent;
  3. import android.net.Uri;
  4. import android.text.SpannableString;
  5. import android.text.Spanned;
  6. import android.text.TextUtils;
  7. import android.text.method.LinkMovementMethod;
  8. import android.text.style.ClickableSpan;
  9. import android.util.Log;
  10. import android.view.View;
  11. import android.widget.ImageView;
  12. import android.widget.RelativeLayout;
  13. import android.widget.TextView;
  14. import com.hjq.image.ImageLoader;
  15. import butterknife.BindView;
  16. import butterknife.OnClick;
  17. import eVVM.apk.R;
  18. import eVVM.apk.helper.MD5;
  19. import eVVM.apk.helper.SPUtils;
  20. import eVVM.apk.mvp.MvpActivity;
  21. import eVVM.apk.ui.bean.VnDetailBean;
  22. import eVVM.apk.ui.login.LoginActivity;
  23. import eVVM.apk.ui.login.PasswordForgetActivity;
  24. import eVVM.apk.ui.webview.WebActivity;
  25. public class VnReportDetailForDoctorActivity extends MvpActivity<VnDetailPresenter> implements VnDetailContract.View {
  26. private boolean isWarning = true;
  27. private String vnchipNumber = "";
  28. @BindView(R.id.vndetail_tv_vncode)
  29. TextView vndetailTvVncode;
  30. @BindView(R.id.vndetail_tv_vndate)
  31. TextView vndetailTvVndate;
  32. @BindView(R.id.vndetail_tv_factoryName)
  33. TextView vndetailTvFactoryName;
  34. @BindView(R.id.vndetail_tv_gmpName)
  35. TextView vndetailTvGmpName;
  36. @BindView(R.id.vndetail_tv_gmpPath)
  37. TextView vndetailTvGmpPath;
  38. @BindView(R.id.vndetail_tv_hospitalName)
  39. TextView vndetailTvHospitalName;
  40. @BindView(R.id.vndetail_tv_doctorName)
  41. TextView vndetailTvDoctorName;
  42. @BindView(R.id.vndetail_tv_doctorTelephone)
  43. TextView vndetailTvDoctorTelephone;
  44. @BindView(R.id.vndetail_tv_chatImage)
  45. ImageView vndetailTvChatImage;
  46. @BindView(R.id.vndetail_tv_othervn1)
  47. TextView vndetailTvOthervn1;
  48. @BindView(R.id.vndetail_tv_othervn2)
  49. TextView vndetailTvOthervn2;
  50. @BindView(R.id.vndetail_tv_othervn3)
  51. TextView vndetailTvOthervn3;
  52. @BindView(R.id.vndetail_iv_tipsimg)
  53. ImageView vndetailIvTipsimg;
  54. @BindView(R.id.vndetail_tv_tips)
  55. TextView vndetailTvTips;
  56. @BindView(R.id.vndetail_tv_disclaimer)
  57. TextView vndetailTvDisclaimer;
  58. @BindView(R.id.report_rl)
  59. RelativeLayout report_rl;
  60. @Override
  61. protected int getLayoutId() {
  62. return R.layout.activity_vn_report_detail_for_doctor;
  63. }
  64. @Override
  65. protected int getTitleId() {
  66. return R.id.tb_vndetail_title;
  67. }
  68. @Override
  69. protected void initView() {
  70. if (isWarning){
  71. vndetailTvChatImage.setImageResource(R.mipmap.report_warning_ico);
  72. }else{
  73. vndetailTvChatImage.setImageResource(R.mipmap.report_normal_ico);
  74. }
  75. }
  76. @Override
  77. protected void initData() {
  78. Intent in = getIntent();
  79. showLoading();
  80. // vnchipNumber = in.getStringExtra("VnchipNumber");
  81. vnchipNumber = "3130303030303033F3EE79B7F702D5B34100007F6009CFA99E4335965B47D31C5BAF7B1C534FDB14";
  82. isWarning = in.getBooleanExtra("isWarning",true);
  83. getPresenter().getDetail(vnchipNumber);
  84. }
  85. @Override
  86. protected VnDetailPresenter createPresenter() {
  87. return new VnDetailPresenter();
  88. }
  89. @Override
  90. public void getDetailError(String msg) {
  91. showComplete();
  92. toast(msg);
  93. }
  94. @Override
  95. public void getDetailSuccess(VnDetailBean data) {
  96. showComplete();
  97. VnDetailBean.DataBean dataBean = data.getData();
  98. //给页面赋值
  99. setViewData(dataBean);
  100. // toast(data.getData().toString());
  101. i("getDetailSuccess", data.getData().toString());
  102. }
  103. private void setViewData(final VnDetailBean.DataBean dataBean) {
  104. vndetailTvVncode.setText("evvm Code "+dataBean.getCode());
  105. vndetailTvVndate.setText(""+dataBean.getBeginDate());
  106. vndetailTvFactoryName.setText(""+dataBean.getFactoryName());
  107. vndetailTvGmpName.setText(""+dataBean.getGmpName());
  108. vndetailTvHospitalName.setText(""+dataBean.getHospitalName());
  109. vndetailTvDoctorName.setText(""+dataBean.getDoctorName());
  110. vndetailTvDoctorTelephone.setText(""+dataBean.getDoctorTelephone());
  111. vndetailTvChatImage.setScaleType(ImageView.ScaleType.CENTER);
  112. SpannableString spanGmpPath = new SpannableString("点击查看");
  113. spanGmpPath.setSpan(new ClickableSpan() {
  114. @Override
  115. public void onClick(View view) {
  116. //点击的响应事件
  117. if (TextUtils.isEmpty(dataBean.getGmpPath())){
  118. startActivity(WebActivity.class);
  119. }else {
  120. Intent in = new Intent(VnReportDetailForDoctorActivity.this,WebActivity.class);
  121. in.putExtra("WebViewUrl",""+dataBean.getGmpPath()+"");
  122. startActivity(in);
  123. }
  124. }
  125. }, 0, spanGmpPath.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
  126. //vndetailTvGmpPath.setText("这是一条测试文本");
  127. vndetailTvGmpPath.setText(spanGmpPath);
  128. vndetailTvGmpPath.setMovementMethod(LinkMovementMethod.getInstance());//开始响应点击事件
  129. SpannableString spanvndetailTvOthervn1 = new SpannableString("点击查询");
  130. spanvndetailTvOthervn1.setSpan(new ClickableSpan() {
  131. @Override
  132. public void onClick(View view) {
  133. //点击的响应事件
  134. if (TextUtils.isEmpty(dataBean.getGmpPath())){
  135. startActivity(WebActivity.class);
  136. }else {
  137. Intent in = new Intent(VnReportDetailForDoctorActivity.this,WebActivity.class);
  138. in.putExtra("WebViewUrl",""+dataBean.getSameBatchOtherColdChain()+"");
  139. startActivity(in);
  140. }
  141. }
  142. }, 0, spanvndetailTvOthervn1.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
  143. //vndetailTvGmpPath.setText("这是一条测试文本");
  144. vndetailTvOthervn1.setText(spanvndetailTvOthervn1);
  145. vndetailTvOthervn1.setMovementMethod(LinkMovementMethod.getInstance());//开始响应点击事件
  146. SpannableString spanvndetailTvOthervn2 = new SpannableString("点击查询");
  147. spanvndetailTvOthervn2.setSpan(new ClickableSpan() {
  148. @Override
  149. public void onClick(View view) {
  150. //点击的响应事件
  151. if (TextUtils.isEmpty(dataBean.getGmpPath())){
  152. startActivity(WebActivity.class);
  153. }else {
  154. Intent in = new Intent(VnReportDetailForDoctorActivity.this,WebActivity.class);
  155. in.putExtra("WebViewUrl",""+dataBean.getSameBatchOtherFlow()+"");
  156. startActivity(in);
  157. }
  158. }
  159. }, 0, spanvndetailTvOthervn2.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
  160. //vndetailTvGmpPath.setText("这是一条测试文本");
  161. vndetailTvOthervn2.setText(spanvndetailTvOthervn2);
  162. vndetailTvOthervn2.setMovementMethod(LinkMovementMethod.getInstance());//开始响应点击事件
  163. SpannableString spanvndetailTvOthervn3 = new SpannableString("点击查询");
  164. spanvndetailTvOthervn3.setSpan(new ClickableSpan() {
  165. @Override
  166. public void onClick(View view) {
  167. //点击的响应事件
  168. if (TextUtils.isEmpty(dataBean.getGmpPath())){
  169. startActivity(WebActivity.class);
  170. }else {
  171. Intent in = new Intent(VnReportDetailForDoctorActivity.this,WebActivity.class);
  172. in.putExtra("WebViewUrl",""+dataBean.getSameFactoryOtherVaccines()+"");
  173. startActivity(in);
  174. }
  175. }
  176. }, 0, spanvndetailTvOthervn3.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
  177. //vndetailTvGmpPath.setText("这是一条测试文本");
  178. vndetailTvOthervn3.setText(spanvndetailTvOthervn3);
  179. vndetailTvOthervn3.setMovementMethod(LinkMovementMethod.getInstance());//开始响应点击事件
  180. }
  181. @OnClick({R.id.send_btn_report,R.id.next_btn_report,R.id.send_btn_email,R.id.cancel_btn_email})
  182. public void onViewClicked(View view) {
  183. switch (view.getId()) {
  184. case R.id.send_btn_report:
  185. report_rl.setVisibility(View.VISIBLE);
  186. break;
  187. case R.id.next_btn_report:
  188. finish();
  189. break;
  190. case R.id.send_btn_email:
  191. getPresenter().sendMailToInoculator(vnchipNumber);
  192. finish();
  193. break;
  194. case R.id.cancel_btn_email:
  195. report_rl.setVisibility(View.GONE);
  196. break;
  197. }
  198. }
  199. @Override
  200. public void getSendMailError(String msg) {
  201. }
  202. @Override
  203. public void getSendMailSuccess(VnDetailBean data) {
  204. }
  205. public static void i(String tag, String msg) { //信息太长,分段打印
  206. //因为String的length是字符数量不是字节数量所以为了防止中文字符过多,
  207. // 把4*1024的MAX字节打印长度改为2001字符数
  208. int max_str_length = 2001 - tag.length();
  209. //大于4000时
  210. while (msg.length() > max_str_length) {
  211. Log.i(tag, msg.substring(0, max_str_length));
  212. msg = msg.substring(max_str_length);
  213. }
  214. //剩余部分
  215. Log.i(tag, msg);
  216. }
  217. }