From 2fb397e4a31d14880ed2524f898ae67a0d664c06 Mon Sep 17 00:00:00 2001 From: zuoxiao <470321431@qq.com> Date: 星期二, 17 十二月 2024 11:24:29 +0800 Subject: [PATCH] 1.在地图中心显示中心点。 2.优化地图覆盖物显示,使显示的图标正对坐标。 3.优化地图覆盖物文字居中显示。 --- app/src/main/java/com/dayu/pipirrapp/activity/OrderDetailActivity.java | 116 +++++++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 99 insertions(+), 17 deletions(-) diff --git a/app/src/main/java/com/dayu/pipirrapp/activity/OrderDetailActivity.java b/app/src/main/java/com/dayu/pipirrapp/activity/OrderDetailActivity.java index 8f1d943..9fad7c6 100644 --- a/app/src/main/java/com/dayu/pipirrapp/activity/OrderDetailActivity.java +++ b/app/src/main/java/com/dayu/pipirrapp/activity/OrderDetailActivity.java @@ -6,28 +6,31 @@ import android.view.LayoutInflater; import android.view.View; +import androidx.activity.result.ActivityResultLauncher; +import androidx.activity.result.contract.ActivityResultContracts; import androidx.annotation.Nullable; +import androidx.core.content.res.ResourcesCompat; import androidx.recyclerview.widget.GridLayoutManager; import androidx.recyclerview.widget.RecyclerView; import androidx.recyclerview.widget.SimpleItemAnimator; +import com.dayu.pipirrapp.MyApplication; import com.dayu.pipirrapp.R; import com.dayu.pipirrapp.adapter.ImageAdapter; import com.dayu.pipirrapp.bean.net.DealDetailResult; import com.dayu.pipirrapp.bean.net.ImageResult; import com.dayu.pipirrapp.bean.net.OrderDetailResult; import com.dayu.pipirrapp.databinding.ActivityOrderDetailBinding; +import com.dayu.pipirrapp.fragment.OrderFragment; import com.dayu.pipirrapp.net.ApiManager; import com.dayu.pipirrapp.net.BaseResponse; import com.dayu.pipirrapp.net.Constants; import com.dayu.pipirrapp.net.subscribers.SubscriberListener; import com.dayu.pipirrapp.tool.FullyGridLayoutManager; -import com.dayu.pipirrapp.tool.GlideEngine; import com.dayu.pipirrapp.utils.ToastUtil; +import com.dayu.pipirrapp.view.ConfirmDialog; import com.dayu.pipirrapp.view.TitleBar; -import com.luck.picture.lib.basic.PictureSelector; import com.luck.picture.lib.decoration.GridSpacingItemDecoration; -import com.luck.picture.lib.engine.ImageEngine; import com.luck.picture.lib.utils.DensityUtil; import java.util.ArrayList; @@ -36,7 +39,6 @@ import java.util.Map; import cc.shinichi.library.ImagePreview; -import cc.shinichi.library.bean.ImageInfo; /** * OrderDetailActivity - @@ -54,6 +56,16 @@ List<ImageResult> images = new ArrayList<>(); RecyclerView mRecyclerView; final List<String> imageInfoList = new ArrayList<>(); + int ProResultStateId; + private ActivityResultLauncher<Intent> activityResultLauncher = + registerForActivityResult( + new ActivityResultContracts.StartActivityForResult(), + result -> { + if (result.getResultCode() == OrderFragment.RESULT_REFRESH) { + setResult(OrderFragment.RESULT_REFRESH); + finish(); + } + }); @Override protected void onCreate(@Nullable Bundle savedInstanceState) { @@ -68,8 +80,11 @@ void initView() { workOrderId = this.getIntent().getStringExtra("workOrderId"); if (this.getIntent().hasExtra("proResultId")) { + binding.orderDealLL.setVisibility(View.VISIBLE); proResultId = this.getIntent().getStringExtra("proResultId"); getHandleData(proResultId); + } else { + binding.orderDealLL.setVisibility(View.GONE); } if (!TextUtils.isEmpty(workOrderId)) { getMarkerData(workOrderId); @@ -114,30 +129,47 @@ if (!TextUtils.isEmpty(t.getContent().getProResultId()) && TextUtils.isEmpty(proResultId)) { getHandleData(orderDetailResult.getProResultId()); } - switch (orderDetailResult.getProResultStateId()) { + ProResultStateId = orderDetailResult.getProResultStateId(); + switch (ProResultStateId) { case 0://鏈笂鎶� - binding.stateText.setTextColor(OrderDetailActivity.this.getResources().getColor(R.color.black)); - binding.stateText.setBackground(OrderDetailActivity.this.getResources().getDrawable(R.drawable.order_state_no_bg)); + binding.stateText.setTextColor(OrderDetailActivity.this.getResources().getColor(R.color.black, null)); + binding.stateText.setBackground(ResourcesCompat.getDrawable(OrderDetailActivity.this.getResources(), R.drawable.order_state_no_bg, null)); + binding.dealButton.setBackgroundColor(getResources().getColor(R.color.title_color, null)); + binding.dealButton.setVisibility(View.VISIBLE); break; case 1://宸蹭笂鎶� - binding.stateText.setTextColor(OrderDetailActivity.this.getResources().getColor(R.color.white)); - binding.stateText.setBackground(OrderDetailActivity.this.getResources().getDrawable(R.drawable.order_state_wait_bg)); - binding.dealButton.setVisibility(View.GONE); + binding.stateText.setTextColor(OrderDetailActivity.this.getResources().getColor(R.color.white, null)); + binding.stateText.setBackground(ResourcesCompat.getDrawable(OrderDetailActivity.this.getResources(), R.drawable.order_state_wait_bg, null)); + binding.dealButton.setBackgroundColor(getResources().getColor(R.color.delete_color, null)); + binding.dealButton.setVisibility(View.VISIBLE); + binding.dealButton.setText("鍒犻櫎澶勭悊缁撴灉"); break; case 2://宸插畬鎴� - binding.stateText.setTextColor(OrderDetailActivity.this.getResources().getColor(R.color.white)); - binding.stateText.setBackground(OrderDetailActivity.this.getResources().getDrawable(R.drawable.order_state_finish_bg)); + binding.stateText.setTextColor(OrderDetailActivity.this.getResources().getColor(R.color.white, null)); + binding.stateText.setBackground(ResourcesCompat.getDrawable(OrderDetailActivity.this.getResources(), R.drawable.order_state_finish_bg, null)); binding.dealButton.setVisibility(View.GONE); break; case 3://琚┏鍥� - binding.stateText.setTextColor(OrderDetailActivity.this.getResources().getColor(R.color.white)); - binding.stateText.setBackground(OrderDetailActivity.this.getResources().getDrawable(R.drawable.order_state_reject_bg)); + binding.stateText.setTextColor(OrderDetailActivity.this.getResources().getColor(R.color.white, null)); + binding.stateText.setBackground(ResourcesCompat.getDrawable(OrderDetailActivity.this.getResources(), R.drawable.order_state_reject_bg, null)); + binding.dealButton.setBackgroundColor(getResources().getColor(R.color.title_color)); + binding.dealButton.setVisibility(View.VISIBLE); break; } } else { ToastUtil.showToast(OrderDetailActivity.this, t.getMsg()); } + } else if (t.DATA_NULL.equals(t.getCode())) { + //宸ュ崟宸茶鍒犻櫎 + ToastUtil.showToast(OrderDetailActivity.this, "璁㈠崟宸茶鍒犻櫎锛�"); + setResult(OrderFragment.RESULT_REFRESH); + OrderDetailActivity.this.finish(); + + } else { + + ToastUtil.showToast(OrderDetailActivity.this, t.getMsg()); + OrderDetailActivity.this.finish(); } } else { ToastUtil.showToast(OrderDetailActivity.this, t.getMsg()); @@ -149,6 +181,12 @@ super.onCloose(); } + @Override + public void onError(Throwable e) { + super.onError(e); + ToastUtil.showToastLong(OrderDetailActivity.this, "鑾峰彇璇︽儏澶辫触锛岃绋嶅悗鍐嶈瘯"); + OrderDetailActivity.this.finish(); + } }); } @@ -190,11 +228,55 @@ }); } + /** + * 鍒犻櫎澶勭悊璇︽儏 + */ + private void deleteDealData() { + + Map<String, Object> params = new HashMap<>(); + params.put("proResultId", proResultId); + params.put("inspectorId", MyApplication.myApplication.userId); + ApiManager.getInstance().requestPost(this, Constants.BASE_URL + "/app/workOrder/deleteProResult", DealDetailResult.class, params, new SubscriberListener<BaseResponse<DealDetailResult>>() { + @Override + public void onNext(BaseResponse<DealDetailResult> t) { + if (t.isSuccess()) { + if (t.isSuccess()) { + ToastUtil.showToastLong(OrderDetailActivity.this, "鍒犻櫎鎴愬姛!"); + setResult(OrderFragment.RESULT_REFRESH); + OrderDetailActivity.this.finish(); + } + } else { + ToastUtil.showToast(OrderDetailActivity.this, t.getMsg()); + } + } + + @Override + public void onCloose() { + super.onCloose(); + } + + }); + } public void startDealActivity() { - Intent intent = new Intent(this, OrderDealActivity.class); - intent.putExtra("workOrderId", workOrderId); - startActivityForResult(intent, 1); + + switch (ProResultStateId) { + case 0: + case 3: + Intent intent = new Intent(this, OrderDealActivity.class); + intent.putExtra("workOrderId", workOrderId); + activityResultLauncher.launch(intent); + break; + case 1: + ConfirmDialog confirmDialog = new ConfirmDialog(this, "纭鍒犻櫎璇ュ鐞嗙粨鏋滃悧锛�", (confirmDialog1, v) -> { + confirmDialog1.dismiss(); + deleteDealData(); + }); + confirmDialog.show(); + break; + } + + } } -- Gitblit v1.8.0