管灌系统巡查员智能手机App
zuoxiao
2024-11-28 fbfa859ff0fe312cbb49a3345b6e3d67d574a946
app/src/main/java/com/dayu/pipirrapp/fragment/MapFragment.java
@@ -41,6 +41,7 @@
import com.dayu.pipirrapp.utils.SharedPreferencesHelper;
import com.dayu.pipirrapp.utils.ToastUtil;
import com.dayu.pipirrapp.utils.WebViewUtils;
import com.dayu.pipirrapp.view.ConfirmDialog;
import com.jeremyliao.liveeventbus.LiveEventBus;
import java.io.File;
@@ -101,11 +102,14 @@
        Intent location = new Intent(this.getActivity(), MyLocationService.class);
        location.putExtra("isSingle", false);
        if (isStartInspec) {
            //获取定位服务传过来的坐标点
            LiveEventBus.get(CommonKeyName.locationData).observeForever(new Observer<Object>() {
                @Override
                public void onChanged(Object o) {
                    LatLonBean latLonBean = (LatLonBean) o;
                    mWebView.evaluateJavascript("javascript:locationOverLay(\"" + latLonBean.getLongitude() + "\",\"" + latLonBean.getLatitude() + "\")", value -> {
                    Log.i("chageInspecState", "lat:" + latLonBean.getLatitude() + ",log:" + latLonBean.getLongitude());
                    mWebView.evaluateJavascript("javascript:updateLocation(\"" + latLonBean.getLatitude() + "\",\"" + latLonBean.getLongitude() + "\")", value -> {
                    });
                }
            });
@@ -198,7 +202,7 @@
     * 获取取水口列表
     */
    private void getMarkerData() {
        ApiManager.getInstance().requestGetHideLoading(this.getContext(), Constants.BASE_URL + ":8085/project/intake/all", MarkerResult.class, null, new SubscriberListener<BaseResponse<MarkerResult>>() {
        ApiManager.getInstance().requestGetHideLoading(this.getContext(), Constants.BASE_URL + "/project/intake/all", MarkerResult.class, null, new SubscriberListener<BaseResponse<MarkerResult>>() {
            @Override
            public void onNext(BaseResponse<MarkerResult> t) {
                if (t.isSuccess()) {
@@ -282,15 +286,12 @@
    void initView() {
        //跳转到指定位置
        binding.flyBtn.setOnClickListener(v -> {
            mWebView.evaluateJavascript("javascript:locationOverLay(116.399565,39.89432)", value -> {
            });
        });
        mWebView.setWebViewClient(new WebViewClient() {
            @Override
            public WebResourceResponse shouldInterceptRequest(WebView view, WebResourceRequest request) {
                String url = request.getUrl().toString();
                Log.i(TAG, "加载地址>>>" + url);
                //判断当前是否为加载瓦片
                if (MapJpgUtils.getInsatance().isTianDiTuTileRequest(url)) {
                    String androidUrl = url.replace(CommonData.webKey, CommonData.androidKey);
@@ -314,6 +315,8 @@
                    }
                    Log.i(TAG, "在线加载>>>" + url);
                }
                return super.shouldInterceptRequest(view, request);
            }
@@ -341,8 +344,19 @@
        });
        //巡检按钮
        binding.inspectButton.setOnClickListener(v -> {
            isStartInspec = !isStartInspec;
            chageInspecState();
            if (isStartInspec) {
                ConfirmDialog confirmDialog = new ConfirmDialog(MapFragment.this.getActivity(), "提示", "确认关闭巡检吗?", new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        isStartInspec = !isStartInspec;
                        chageInspecState();
                    }
                });
            } else {
                isStartInspec = !isStartInspec;
                chageInspecState();
            }
        });
    }
@@ -358,7 +372,7 @@
     */
    private void getCenterPoint() {
        ApiManager.getInstance().requestGet(this.getContext(), Constants.BASE_URL + ":8080/base/dict_item/map_center", CenterPointResult.class, null, new SubscriberListener<BaseResponse<CenterPointResult>>() {
        ApiManager.getInstance().requestGet(this.getContext(), Constants.BASE_URL + "/base/dict_item/map_center", CenterPointResult.class, null, new SubscriberListener<BaseResponse<CenterPointResult>>() {
            @Override
            public void onNext(BaseResponse<CenterPointResult> t) {
                if (t.isSuccess()) {