From fbb64f0b4151a4fefb90191991aa0fba7b26c52a Mon Sep 17 00:00:00 2001
From: zuoxiao <470321431@qq.com>
Date: 星期一, 09 十二月 2024 18:08:59 +0800
Subject: [PATCH] 1.优化MQ相关设置 2.上报问题界面相关

---
 app/src/main/java/com/dayu/pipirrapp/activity/OrderDetailActivity.java |   83 +++++++++++++++++++++++++++++++++++++----
 1 files changed, 74 insertions(+), 9 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..9bcd497 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,30 @@
 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.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 +38,6 @@
 import java.util.Map;
 
 import cc.shinichi.library.ImagePreview;
-import cc.shinichi.library.bean.ImageInfo;
 
 /**
  * OrderDetailActivity -
@@ -54,6 +55,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 +79,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,15 +128,20 @@
                             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.dealButton.setBackgroundColor(getResources().getColor(R.color.title_color));
+                                    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.dealButton.setBackgroundColor(getResources().getColor(R.color.delete_color));
+                                    binding.dealButton.setVisibility(View.VISIBLE);
+                                    binding.dealButton.setText("鍒犻櫎澶勭悊缁撴灉");
                                     break;
                                 case 2://宸插畬鎴�
                                     binding.stateText.setTextColor(OrderDetailActivity.this.getResources().getColor(R.color.white));
@@ -132,6 +151,8 @@
                                 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.dealButton.setBackgroundColor(getResources().getColor(R.color.title_color));
+                                    binding.dealButton.setVisibility(View.VISIBLE);
                                     break;
 
                             }
@@ -190,11 +211,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