fb4a35b2ac20aac48b756126710031a0396c8dcd.svn-base 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  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) {
  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.setInterfaceName("chip");
  73. netReConnectEntity.setInterfaceUrl("uploadChip");
  74. NetReConnectDaoOpe.insertData(MyApplication.getAppContext(), netReConnectEntity);
  75. }
  76. getListener().onFail(errorMsg);
  77. }
  78. @Override
  79. protected void onSuccess(VnDetailBean data) {
  80. if (data.getCode() == 200) {
  81. getListener().onSucceed(data);
  82. } else {
  83. getListener().onFail(data.getMsg());
  84. }
  85. }
  86. @Override
  87. protected boolean isHideToast() {
  88. return true;
  89. }
  90. });
  91. }
  92. /**
  93. * string转map
  94. *
  95. * @param map
  96. * @return
  97. */
  98. private String mapToJson(Map<String, Object> map) {
  99. String jsonString = new Gson().toJson(map);
  100. return jsonString;
  101. }
  102. }