package eVVM.apk.ui.report.vndetail; import android.content.Intent; import android.net.Uri; import android.text.SpannableString; import android.text.Spanned; import android.text.TextUtils; import android.text.method.LinkMovementMethod; import android.text.style.ClickableSpan; import android.util.Log; import android.view.View; import android.widget.ImageView; import android.widget.RelativeLayout; import android.widget.TextView; import com.hjq.image.ImageLoader; import butterknife.BindView; import butterknife.OnClick; import eVVM.apk.R; import eVVM.apk.helper.MD5; import eVVM.apk.helper.SPUtils; import eVVM.apk.mvp.MvpActivity; import eVVM.apk.ui.bean.VnDetailBean; import eVVM.apk.ui.login.LoginActivity; import eVVM.apk.ui.login.PasswordForgetActivity; import eVVM.apk.ui.webview.WebActivity; public class VnReportDetailForDoctorActivity extends MvpActivity implements VnDetailContract.View { private boolean isWarning = true; private String vnchipNumber = ""; @BindView(R.id.vndetail_tv_vncode) TextView vndetailTvVncode; @BindView(R.id.vndetail_tv_vndate) TextView vndetailTvVndate; @BindView(R.id.vndetail_tv_factoryName) TextView vndetailTvFactoryName; @BindView(R.id.vndetail_tv_gmpName) TextView vndetailTvGmpName; @BindView(R.id.vndetail_tv_gmpPath) TextView vndetailTvGmpPath; @BindView(R.id.vndetail_tv_hospitalName) TextView vndetailTvHospitalName; @BindView(R.id.vndetail_tv_doctorName) TextView vndetailTvDoctorName; @BindView(R.id.vndetail_tv_doctorTelephone) TextView vndetailTvDoctorTelephone; @BindView(R.id.vndetail_tv_chatImage) ImageView vndetailTvChatImage; @BindView(R.id.vndetail_tv_othervn1) TextView vndetailTvOthervn1; @BindView(R.id.vndetail_tv_othervn2) TextView vndetailTvOthervn2; @BindView(R.id.vndetail_tv_othervn3) TextView vndetailTvOthervn3; @BindView(R.id.vndetail_iv_tipsimg) ImageView vndetailIvTipsimg; @BindView(R.id.vndetail_tv_tips) TextView vndetailTvTips; @BindView(R.id.vndetail_tv_disclaimer) TextView vndetailTvDisclaimer; @Override protected int getLayoutId() { return R.layout.activity_vn_report_detail_for_doctor; } @Override protected int getTitleId() { return R.id.tb_vndetail_title; } @Override protected void initView() { if (isWarning){ vndetailTvChatImage.setImageResource(R.mipmap.report_warning_ico); }else{ vndetailTvChatImage.setImageResource(R.mipmap.report_normal_ico); } } @Override protected void initData() { Intent in = getIntent(); showLoading(); // vnchipNumber = in.getStringExtra("VnchipNumber"); vnchipNumber = "3130303030303033F3EE79B7F702D5B34100007F6009CFA99E4335965B47D31C5BAF7B1C534FDB14"; isWarning = in.getBooleanExtra("isWarning",true); getPresenter().getDetail(vnchipNumber); } @Override protected VnDetailPresenter createPresenter() { return new VnDetailPresenter(); } @Override public void getDetailError(String msg) { showComplete(); toast(msg); } @Override public void getDetailSuccess(VnDetailBean data) { showComplete(); VnDetailBean.DataBean dataBean = data.getData(); //给页面赋值 setViewData(dataBean); // toast(data.getData().toString()); i("getDetailSuccess", data.getData().toString()); } private void setViewData(final VnDetailBean.DataBean dataBean) { vndetailTvVncode.setText("evvm Code "+dataBean.getCode()); vndetailTvVndate.setText(""+dataBean.getBeginDate()); vndetailTvFactoryName.setText(""+dataBean.getFactoryName()); vndetailTvGmpName.setText(""+dataBean.getGmpName()); vndetailTvHospitalName.setText(""+dataBean.getHospitalName()); vndetailTvDoctorName.setText(""+dataBean.getDoctorName()); vndetailTvDoctorTelephone.setText(""+dataBean.getDoctorTelephone()); vndetailTvChatImage.setScaleType(ImageView.ScaleType.CENTER); SpannableString spanGmpPath = new SpannableString("点击查看"); spanGmpPath.setSpan(new ClickableSpan() { @Override public void onClick(View view) { //点击的响应事件 if (TextUtils.isEmpty(dataBean.getGmpPath())){ startActivity(WebActivity.class); }else { Intent in = new Intent(VnReportDetailForDoctorActivity.this,WebActivity.class); in.putExtra("WebViewUrl",""+dataBean.getGmpPath()+""); startActivity(in); } } }, 0, spanGmpPath.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //vndetailTvGmpPath.setText("这是一条测试文本"); vndetailTvGmpPath.setText(spanGmpPath); vndetailTvGmpPath.setMovementMethod(LinkMovementMethod.getInstance());//开始响应点击事件 SpannableString spanvndetailTvOthervn1 = new SpannableString("点击查询"); spanvndetailTvOthervn1.setSpan(new ClickableSpan() { @Override public void onClick(View view) { //点击的响应事件 if (TextUtils.isEmpty(dataBean.getGmpPath())){ startActivity(WebActivity.class); }else { Intent in = new Intent(VnReportDetailForDoctorActivity.this,WebActivity.class); in.putExtra("WebViewUrl",""+dataBean.getSameBatchOtherColdChain()+""); startActivity(in); } } }, 0, spanvndetailTvOthervn1.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //vndetailTvGmpPath.setText("这是一条测试文本"); vndetailTvOthervn1.setText(spanvndetailTvOthervn1); vndetailTvOthervn1.setMovementMethod(LinkMovementMethod.getInstance());//开始响应点击事件 SpannableString spanvndetailTvOthervn2 = new SpannableString("点击查询"); spanvndetailTvOthervn2.setSpan(new ClickableSpan() { @Override public void onClick(View view) { //点击的响应事件 if (TextUtils.isEmpty(dataBean.getGmpPath())){ startActivity(WebActivity.class); }else { Intent in = new Intent(VnReportDetailForDoctorActivity.this,WebActivity.class); in.putExtra("WebViewUrl",""+dataBean.getSameBatchOtherFlow()+""); startActivity(in); } } }, 0, spanvndetailTvOthervn2.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //vndetailTvGmpPath.setText("这是一条测试文本"); vndetailTvOthervn2.setText(spanvndetailTvOthervn2); vndetailTvOthervn2.setMovementMethod(LinkMovementMethod.getInstance());//开始响应点击事件 SpannableString spanvndetailTvOthervn3 = new SpannableString("点击查询"); spanvndetailTvOthervn3.setSpan(new ClickableSpan() { @Override public void onClick(View view) { //点击的响应事件 if (TextUtils.isEmpty(dataBean.getGmpPath())){ startActivity(WebActivity.class); }else { Intent in = new Intent(VnReportDetailForDoctorActivity.this,WebActivity.class); in.putExtra("WebViewUrl",""+dataBean.getSameFactoryOtherVaccines()+""); startActivity(in); } } }, 0, spanvndetailTvOthervn3.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //vndetailTvGmpPath.setText("这是一条测试文本"); vndetailTvOthervn3.setText(spanvndetailTvOthervn3); vndetailTvOthervn3.setMovementMethod(LinkMovementMethod.getInstance());//开始响应点击事件 } @OnClick({R.id.send_btn_report,R.id.next_btn_report}) public void onViewClicked(View view) { switch (view.getId()) { case R.id.send_btn_report: getPresenter().sendMailToInoculator(vnchipNumber); break; case R.id.next_btn_report: finish(); break; } } @Override public void getSendMailSuccess(VnDetailBean data) { finish(); } @Override public void getSendMailError(String msg) { toast(msg); } public static void i(String tag, String msg) { //信息太长,分段打印 //因为String的length是字符数量不是字节数量所以为了防止中文字符过多, // 把4*1024的MAX字节打印长度改为2001字符数 int max_str_length = 2001 - tag.length(); //大于4000时 while (msg.length() > max_str_length) { Log.i(tag, msg.substring(0, max_str_length)); msg = msg.substring(max_str_length); } //剩余部分 Log.i(tag, msg); } }