24dace0a960400d4c4d73c581282f5dcd15039bd.svn-base 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. package eVVM.apk.ui.home.uploadChip;
  2. import android.util.Log;
  3. import com.allen.library.RxHttpUtils;
  4. import com.allen.library.interceptor.Transformer;
  5. import com.google.gson.Gson;
  6. import java.util.HashMap;
  7. import java.util.Map;
  8. import eVVM.apk.api.ApiService;
  9. import eVVM.apk.app.MyApplication;
  10. import eVVM.apk.common.MyDataObsever;
  11. import eVVM.apk.db.netteconnectdb.NetReConnectDaoOpe;
  12. import eVVM.apk.entity.NetReConnectEntity;
  13. import eVVM.apk.mvp.MvpModel;
  14. import eVVM.apk.ui.bean.VnDetailBean;
  15. /**
  16. * Created by Android Studio.
  17. * User: zbb
  18. * Date: 2019/6/1
  19. * Describe: UploadChipModel
  20. */
  21. public class UploadChipModel extends MvpModel<UploadChipOnListener> {
  22. public UploadChipModel() {
  23. }
  24. //操作员提交数据
  25. public void forFactoryOperator(String chipNumber, String cipherText, double longitude, double latitude) {
  26. Map<String, Object> map = new HashMap<>();
  27. map.put("chipNumber", chipNumber);
  28. map.put("longitude", longitude);
  29. map.put("latitude", latitude);
  30. map.put("cipherText", cipherText);
  31. RxHttpUtils.createApi(ApiService.class)
  32. .saveChip(map)
  33. .compose(Transformer.<VnDetailBean>switchSchedulers())
  34. .subscribe(new MyDataObsever<VnDetailBean>() {
  35. @Override
  36. protected void onError(String errorMsg) {
  37. getListener().onFail(errorMsg);
  38. }
  39. @Override
  40. protected void onSuccess(VnDetailBean data) {
  41. if (data.getCode() == 200) {
  42. getListener().onSucceed(data);
  43. } else {
  44. getListener().onFail(data.getMsg());
  45. }
  46. }
  47. @Override
  48. protected boolean isHideToast() {
  49. return true;
  50. }
  51. });
  52. }
  53. //医生提交数据
  54. public void forDoctor(String chipNumber, String cipherText, String inoculators, double longitude, double latitude, boolean again, final boolean isWarning) {
  55. Map<String, Object> map = new HashMap<>();
  56. map.put("chipNumber", chipNumber);
  57. map.put("inoculators", inoculators);
  58. map.put("longitude", longitude);
  59. map.put("latitude", latitude);
  60. map.put("vaccinationCipher", cipherText);
  61. map.put("agin", true);
  62. //Log.e("forDoctorinoculators",""+inoculators);
  63. final String setJsonmap = mapToJson(map);
  64. RxHttpUtils.createApi(ApiService.class)
  65. .uploadChip(map)
  66. .compose(Transformer.<VnDetailBean>switchSchedulers())
  67. .subscribe(new MyDataObsever<VnDetailBean>() {
  68. @Override
  69. protected void onError(String errorMsg) {
  70. if ("网络连接异常,请检查您的网络状态,稍后重试!".equals(errorMsg)) {
  71. NetReConnectEntity netReConnectEntity = new NetReConnectEntity();
  72. netReConnectEntity.setType(1);
  73. netReConnectEntity.setJsonmap(setJsonmap);
  74. netReConnectEntity.setIsWarning(isWarning);
  75. netReConnectEntity.setInterfaceName("chip");
  76. netReConnectEntity.setInterfaceUrl("uploadChip");
  77. NetReConnectDaoOpe.insertData(MyApplication.getAppContext(), netReConnectEntity);
  78. }
  79. getListener().onFail(errorMsg);
  80. }
  81. @Override
  82. protected void onSuccess(VnDetailBean data) {
  83. if (data.getCode() == 200) {
  84. getListener().onSucceed(data);
  85. } else {
  86. getListener().onFail(data.getMsg());
  87. }
  88. }
  89. @Override
  90. protected boolean isHideToast() {
  91. return true;
  92. }
  93. });
  94. }
  95. /**
  96. * string转map
  97. *
  98. * @param map
  99. * @return
  100. */
  101. private String mapToJson(Map<String, Object> map) {
  102. String jsonString = new Gson().toJson(map);
  103. return jsonString;
  104. }
  105. }