From 6a44973461e2a91f62f7eed681b4db3abb026289 Mon Sep 17 00:00:00 2001
From: zuoxiao <470321431@qq.com>
Date: 星期二, 24 十二月 2024 16:52:23 +0800
Subject: [PATCH] 1.优化地图相关代码,提高运行效率和可读性。 2.添加修改密码功能。 3.优化列表和详情页展示。

---
 app/src/main/java/com/dayu/pipirrapp/activity/ChangePSActivity.java |   74 ++++++++++++++++++++++++++++++++++++
 1 files changed, 73 insertions(+), 1 deletions(-)

diff --git a/app/src/main/java/com/dayu/pipirrapp/activity/ChangePSActivity.java b/app/src/main/java/com/dayu/pipirrapp/activity/ChangePSActivity.java
index 69711eb..f61d087 100644
--- a/app/src/main/java/com/dayu/pipirrapp/activity/ChangePSActivity.java
+++ b/app/src/main/java/com/dayu/pipirrapp/activity/ChangePSActivity.java
@@ -1,12 +1,23 @@
 package com.dayu.pipirrapp.activity;
 
 import android.os.Bundle;
+import android.text.TextUtils;
 import android.view.LayoutInflater;
 
 import androidx.annotation.Nullable;
 
+import com.dayu.pipirrapp.MyApplication;
+import com.dayu.pipirrapp.bean.net.IssueResult;
 import com.dayu.pipirrapp.databinding.ActivityChangePassWordBinding;
+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.utils.ToastUtil;
 import com.dayu.pipirrapp.view.TitleBar;
+
+import java.util.HashMap;
+import java.util.Map;
 
 /**
  * author: zuo
@@ -22,6 +33,67 @@
         super.onCreate(savedInstanceState);
         binding = ActivityChangePassWordBinding.inflate(LayoutInflater.from(this));
         setContentView(binding.getRoot());
-        new TitleBar(this).setTitleText("淇敼瀵嗙爜");
+        new TitleBar(this).setTitleText("淇敼瀵嗙爜").setLeftIco().setLeftIcoListening(v -> ChangePSActivity.this.finish());
+        initView();
+    }
+
+    private void initView() {
+        binding.changePSBtn.setOnClickListener(v -> {
+            String oldPassword = binding.oldPassword.getText().toString();
+            String newPSOne = binding.newPsone.getText().toString();
+            String newPStwo = binding.newPsTwo.getText().toString();
+            if (!TextUtils.isEmpty(oldPassword) && !TextUtils.isEmpty(newPSOne) && !TextUtils.isEmpty(newPStwo)) {
+                if (newPStwo.equals(newPSOne)) {
+                    if (isPasswordComplex(newPSOne)) {
+                        changePS(oldPassword, newPSOne);
+                    } else {
+                        ToastUtil.showToastShort(ChangePSActivity.this, "鏂板瘑鐮侀暱搴﹀簲涓�6-12浣嶏紝骞朵笖鑷冲皯鍖呭惈1涓暟瀛楁垨瀛楁瘝锛�");
+                    }
+                } else {
+                    ToastUtil.showToastShort(ChangePSActivity.this, "涓ゆ瀵嗙爜涓嶄竴鑷达紒");
+                }
+            } else {
+                ToastUtil.showToastShort(ChangePSActivity.this, "璇疯緭鍏ュ畬鏁翠俊鎭紒");
+            }
+        });
+    }
+
+
+    private void changePS(String oldPassword, String newPassword) {
+        Map<String, Object> params = new HashMap<>();
+        params.put("id", MyApplication.myApplication.userId);
+        params.put("oldPassword", oldPassword);
+        params.put("newPassword", newPassword);
+        ApiManager.getInstance().requestPost(this, Constants.BASE_URL + "/base/user/changePassword", IssueResult.class, params, new SubscriberListener<BaseResponse<IssueResult>>() {
+            @Override
+            public void onNext(BaseResponse<IssueResult> t) {
+                if (t.isSuccess()) {
+                    ToastUtil.showToastLong(ChangePSActivity.this, "淇敼鎴愬姛!");
+                    ChangePSActivity.this.finish();
+                } else {
+                    ToastUtil.showToast(ChangePSActivity.this, t.getMsg());
+                }
+            }
+
+            @Override
+            public void onCloose() {
+                super.onCloose();
+            }
+
+            @Override
+            public void onError(Throwable e) {
+                super.onError(e);
+                ToastUtil.showToastLong(ChangePSActivity.this, "淇敼澶辫触锛岃绋嶅悗鍐嶈瘯");
+
+            }
+        });
+    }
+
+    // 妫�鏌ュ瘑鐮佸鏉傚害鐨勬柟娉�
+    boolean isPasswordComplex(String password) {
+        // 瀵嗙爜澶嶆潅搴﹁鍒欙細闀垮害鍦�6鍒�12浣嶄箣闂达紝鑷冲皯鍖呭惈涓�涓暟瀛楀拰涓�涓瓧姣�
+        return password.length() >= 6 && password.length() <= 12 &&
+                password.matches(".*\\d.*") && // 鑷冲皯鍖呭惈涓�涓暟瀛�
+                password.matches(".*[a-zA-Z].*"); // 鑷冲皯鍖呭惈涓�涓瓧姣�
     }
 }

--
Gitblit v1.8.0