Browse Source

抄表业务实现离线操作

YEJAVON\Tfly 3 years ago
parent
commit
b10554deeb

+ 1 - 1
app/src/main/java/com/tofly/route/util/AmapUtils/AmapLocationUtils.java

@@ -182,7 +182,7 @@ public class AmapLocationUtils {
                             LogRecorder.writeAmapLog(context, logMsg, userid);
 
 
-                            ToastUtil.showToast("logMsg:" +logMsg);
+                          //  ToastUtil.showToast("logMsg:" +logMsg);
                         }
                     }
 

+ 42 - 34
app/src/main/java/com/tofly/tyuan/ui/activity/MeterInputActivity.java

@@ -11,6 +11,7 @@ import android.os.Message;
 import android.text.Editable;
 import android.text.TextUtils;
 import android.text.TextWatcher;
+import android.util.Log;
 import android.view.View;
 import android.widget.CheckBox;
 import android.widget.EditText;
@@ -327,9 +328,14 @@ public class MeterInputActivity extends TakePhotoActivity implements TextWatcher
             }
 
             if (!TextUtils.isEmpty(cbyhEntity.getIsEstimate())) {
-                cbIsEstimate.setChecked(true);
+                boolean checked = cbyhEntity.getIsEstimate() == "1";
+                if (checked)
+                    llEstimate.setVisibility(View.VISIBLE);
+                else
+                    llEstimate.setVisibility(View.GONE);
+                cbIsEstimate.setChecked(checked);
+
 
-                llEstimate.setVisibility(View.VISIBLE);
             } else {
                 cbIsEstimate.setChecked(false);
                 llEstimate.setVisibility(View.GONE);
@@ -586,27 +592,27 @@ public class MeterInputActivity extends TakePhotoActivity implements TextWatcher
         // Y 轴的水平网格线
 
 
-        tvCurrentWaterNum.addTextChangedListener(new TextWatcher() {
-            @Override
-            public void beforeTextChanged(CharSequence s, int start, int count, int after) {
-
-            }
-
-            @Override
-            public void onTextChanged(CharSequence s, int start, int before, int count) {
-                //如果上月水量 0  不用计算异常
-                mCurrentNum.setText(s.toString() + "");
-                mCurrentNum.setTextColor(getResources().getColor(R.color.color_2194FF));
-                tv_slss.setText("方");
-                tvMainException.setText("");
-                tv_slss.setTextColor(getResources().getColor(R.color.color_2194FF));
-            }
-
-            @Override
-            public void afterTextChanged(Editable s) {
-
-            }
-        });
+//        tvCurrentWaterNum.addTextChangedListener(new TextWatcher() {
+//            @Override
+//            public void beforeTextChanged(CharSequence s, int start, int count, int after) {
+//
+//            }
+//
+//            @Override
+//            public void onTextChanged(CharSequence s, int start, int before, int count) {
+//                //如果上月水量 0  不用计算异常
+//                mCurrentNum.setText(s.toString() + "");
+//                mCurrentNum.setTextColor(getResources().getColor(R.color.color_2194FF));
+//                tv_slss.setText("方2");
+//                tvMainException.setText("");
+//                tv_slss.setTextColor(getResources().getColor(R.color.color_2194FF));
+//            }
+//
+//            @Override
+//            public void afterTextChanged(Editable s) {
+//
+//            }
+//        });
 
     }
 
@@ -676,18 +682,18 @@ public class MeterInputActivity extends TakePhotoActivity implements TextWatcher
                 if (isOverTime()) {
                     if (!isUpload) {
 
-                        if (isSign) {
-                            if (checkData()) {
-                                if (cbyhEntity.getIsupload() != 1) {
-                                    cbyhEntityDbUtils.update(cbyhEntity);
-                                    ToastUtil.showToast("保存成功");
-                                } else {
-                                    ToastUtil.showToast("当前数据已上传,禁止修改");
-                                }
+                        // if (isSign) {
+                        if (checkData()) {
+                            if (cbyhEntity.getIsupload() != 1) {
+                                cbyhEntityDbUtils.update(cbyhEntity);
+                                ToastUtil.showToast("保存成功");
+                            } else {
+                                ToastUtil.showToast("当前数据已上传,禁止修改");
                             }
-                        } else {
-                            forwardToUiSign();
                         }
+//                        } else {
+//                            forwardToUiSign();
+//                        }
                     }
                 }
 
@@ -1057,7 +1063,8 @@ public class MeterInputActivity extends TakePhotoActivity implements TextWatcher
                             mCurrentNum.setTextColor(getResources().getColor(R.color.qmui_config_color_red));
                             tv_slss.setText("方(异常)");
                             tv_slss.setTextColor(getResources().getColor(R.color.qmui_config_color_red));
-                            tvMainException.setText(sbException.get("exceptionStr").toString());
+                            String exceptionStr = sbException.get("exceptionStr").toString();
+                            tvMainException.setText(exceptionStr + "");
 
                         } else {
                             mCurrentNum.setTextColor(getResources().getColor(R.color.color_2194FF));
@@ -1075,6 +1082,7 @@ public class MeterInputActivity extends TakePhotoActivity implements TextWatcher
                     }
                 }
             } catch (NumberFormatException ignored) {
+                Log.e("TAG", "afterTextChanged: ------------------" + ignored);
             }
         }
     }

+ 37 - 4
app/src/main/java/com/tofly/tyuan/ui/activity/MeterListActivity.java

@@ -80,6 +80,7 @@ public class MeterListActivity extends LatteActivity {
     private MeterListZoneAdapter zoneAdapter;
     private HashMap<String, Object> map;
     private boolean isSign;
+    private int isGeneral = 0;
 
 
     public static void create(Context context) {
@@ -108,7 +109,7 @@ public class MeterListActivity extends LatteActivity {
                 .load(AccountManager.getUserImage())
                 .apply(new RequestOptions().error(R.mipmap.user_default_icon))
                 .into(imgUserInfoHead);
-        initBaseInfo();
+        //initBaseInfo();
 
 
         isSign = MyApp.getSignState() == SignHistoryDataBean.SIGN_CHECKED_ON_TYPE;
@@ -138,10 +139,10 @@ public class MeterListActivity extends LatteActivity {
 
         if (NetworkUtil.isNetworkAvailable(this)) {
             map = new HashMap<>();
+            map.put("isGeneral", isGeneral);
+            mPresenter.getResultFour(this, map);
 
-            map.put("isGeneral", 0);
 
-            mPresenter.getResultFour(this, map);
         } else {
             //加载本地缓存任务
             DbUtils<CbqyTaskEntity> cbqyTaskEntityDaoUtils = DaoUtilsStore.getInstance().getCbqyTaskEntityDaoUtils();
@@ -346,6 +347,23 @@ public class MeterListActivity extends LatteActivity {
         }
     }
 
+    /**
+     * 抄表计划--区域任务汇总
+     *
+     * @param response
+     * @param <T>
+     */
+    @Override
+    public <T> void getResultFive(T response) {
+        super.getResultFive(response);
+
+        List<CbqyTaskEntity> cbqyTaskEntityList = (List<CbqyTaskEntity>) response;
+
+        //缓存本地
+        DaoUtilsStore.getInstance().getCbqyTaskEntityDaoUtils().insertMulti(cbqyTaskEntityList, false);
+        // meterListAdapter.setNewData(cbqyTaskEntityList);
+
+    }
 
     /**
      * 抄表计划--区域任务汇总
@@ -358,8 +376,23 @@ public class MeterListActivity extends LatteActivity {
         super.getResultFour(response);
         if (response != null) {
             List<CbqyTaskEntity> cbqyTaskEntityList = (List<CbqyTaskEntity>) response;
-
             DaoUtilsStore.getInstance().getCbqyTaskEntityDaoUtils().insertMulti(cbqyTaskEntityList, true);
+            List<CbqyTaskEntity> cbqyTaskEntityList1 = DaoUtilsStore.getInstance().getCbqyTaskEntityDaoUtils().queryByQueryBuilder(CbqyTaskEntityDao.Properties.IsQy.eq("0"));
+            for (CbqyTaskEntity cb :
+                    cbqyTaskEntityList1) {
+                DaoUtilsStore.getInstance().getCbqyTaskEntityDaoUtils().delete(cb);
+            }
+
+            //同步缓存 各区域分段数据
+            for (int i = 0; i < cbqyTaskEntityList.size(); i++) {
+                CbqyTaskEntity cbqyTaskEntity = cbqyTaskEntityList.get(i);
+
+                HashMap<String, Object> map = new HashMap<>();
+                map.put("qybm", cbqyTaskEntity.getCbqyBm());
+                map.put("isGeneral", isGeneral);//type
+                mPresenter.getResultFive(this, map);
+            }
+
 
             zoneAdapter.setNewData(cbqyTaskEntityList);
         } else {

+ 5 - 3
app/src/main/java/com/tofly/tyuan/ui/activity/MeterListZoneActivity.java

@@ -160,7 +160,9 @@ public class MeterListZoneActivity extends LatteActivity {
             //加载本地缓存任务
             DbUtils<CbqyTaskEntity> cbqyTaskEntityDaoUtils = DaoUtilsStore.getInstance().getCbqyTaskEntityDaoUtils();
 
-            List<CbqyTaskEntity> cbqyTaskEntityList = cbqyTaskEntityDaoUtils.queryByQueryBuilder(CbqyTaskEntityDao.Properties.IsGeneral.eq("0"),
+            List<CbqyTaskEntity> cbqyTaskEntityList = cbqyTaskEntityDaoUtils.queryByQueryBuilder(
+                    CbqyTaskEntityDao.Properties.IsGeneral.eq("0"),
+                    CbqyTaskEntityDao.Properties.CbqyBm.eq(cbqybm),
                     CbqyTaskEntityDao.Properties.IsQy.eq("0"));
 
             if (meterListAdapter != null) {
@@ -348,12 +350,12 @@ public class MeterListZoneActivity extends LatteActivity {
      */
     @Override
     public <T> void getResultFive(T response) {
-        super.getResultFour(response);
+        super.getResultFive(response);
 
         List<CbqyTaskEntity> cbqyTaskEntityList = (List<CbqyTaskEntity>) response;
 
         //缓存本地
-        DaoUtilsStore.getInstance().getCbqyTaskEntityDaoUtils().insertMulti(cbqyTaskEntityList, true);
+       // DaoUtilsStore.getInstance().getCbqyTaskEntityDaoUtils().insertMulti(cbqyTaskEntityList, false);
         meterListAdapter.setNewData(cbqyTaskEntityList);
 
     }

+ 14 - 7
app/src/main/java/com/tofly/tyuan/ui/activity/MeterUserListActivity.java

@@ -31,6 +31,7 @@ import com.tofly.latte_core.base.LatteContract;
 import com.tofly.latte_core.net.bean.BaseResponse;
 import com.tofly.latte_core.utils.AccountManager;
 import com.tofly.latte_core.utils.ActivityUtils;
+import com.tofly.latte_core.utils.NetworkUtil;
 import com.tofly.route.base.BaseMapController;
 import com.tofly.route.module.map.MapLoadHelper;
 import com.tofly.route.module.sign.data.SignHistoryDataBean;
@@ -432,13 +433,19 @@ public class MeterUserListActivity extends LatteActivity implements MapLoadHelpe
         switch (view.getId()) {
             case R.id.tv_upload:
                 if (isOverTime()) {
-                    updataList = DaoUtilsStore.getInstance().getCbyhUtils().queryByQueryBuilder(CbyhEntityDao.Properties.Qydbm.eq(cbbbm), CbyhEntityDao.Properties.IsSave.eq(1), CbyhEntityDao.Properties.Isupload.eq("0"));
-                    if (updataList.size() > 0) {
-                        index = 0;
-                        mPresenter.getResultSix(this, initCbData(index), null);
+
+
+                    if (NetworkUtil.isNetworkAvailable(this)) {
+                        updataList = DaoUtilsStore.getInstance().getCbyhUtils().queryByQueryBuilder(CbyhEntityDao.Properties.Qydbm.eq(cbbbm), CbyhEntityDao.Properties.IsSave.eq(1), CbyhEntityDao.Properties.Isupload.eq("0"));
+                        if (updataList.size() > 0) {
+                            index = 0;
+                            mPresenter.getResultSix(this, initCbData(index), null);
 //                        ToastUtil.showToast("上传数据");
-                    } else {
-                        ToastUtil.showToast("暂无可上传的数据");
+                        } else {
+                            ToastUtil.showToast("暂无可上传的数据");
+                        }
+                    }else {
+                        ToastUtil.showToast("网络连接失败");
                     }
                 }
                 break;
@@ -494,7 +501,7 @@ public class MeterUserListActivity extends LatteActivity implements MapLoadHelpe
             files.put("x", RequestBodyUtils.toRequestBodyString(String.valueOf(cbyhEntity.getX())));
             files.put("y", RequestBodyUtils.toRequestBodyString(String.valueOf(cbyhEntity.getY())));
             files.put("isGeneral", RequestBodyUtils.toRequestBodyString(cbyhEntity.getIsGeneral()));
-            files.put("addressState", RequestBodyUtils.toRequestBodyString(cbyhEntity.getAddressState() +""));
+            files.put("addressState", RequestBodyUtils.toRequestBodyString(cbyhEntity.getAddressState() + ""));
             files.put("imgUrl", RequestBodyUtils.toRequestBodyString(cbyhEntity.getImgUrl()));
             if (!TextUtils.isEmpty(cbyhEntity.getImgUrl())) {
                 String[] picture = cbyhEntity.getImgUrl().split(",");