2aec098e21e6ea5320fef83cec812d9d70ade11c.svn-base 4.2 KB

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