注册/登录接口联调

个人信息接口联调
This commit is contained in:
fengjignqi
2026-05-19 11:43:49 +08:00
parent c485b1e059
commit 695ace9209
24 changed files with 276 additions and 217 deletions

View File

@@ -16,7 +16,7 @@ import com.ckkj.water.fate.util.LunarDateLoader;
import com.ckkj.water.login.entity.LoginEntity;
import com.ckkj.water.network.NetWorkManager;
import com.ckkj.water.utils.dataUtil.SharePreUtil;
import com.ckkj.water.utils.manager.MingDengUserInfoManager;
import com.ckkj.water.utils.manager.WaterUserInfoManager;
import java.util.List;
@@ -76,16 +76,12 @@ public class MyApplication extends Application {
NetWorkManager.getInstance().init(this);
AppConfig.USER_LOGIN = SharePreUtil.getBoolean(ConstantUtil.SHARE_PRE_NAME,context,ConstantUtil.USER_LOGIN);
AppConfig.USER_TOKEN = SharePreUtil.getString(ConstantUtil.SHARE_PRE_NAME,context,ConstantUtil.USER_TOKEN);
AppConfig.USER_SET_BIRTH_INFO = SharePreUtil.getBoolean(ConstantUtil.SHARE_PRE_NAME,context,ConstantUtil.USER_HAS_SET_BIRTH);
//单位JSON
AppConfig.PRODUCT_UNIT_JSON = SharePreUtil.getString(ConstantUtil.SHARE_PRE_NAME,context,ConstantUtil.GOODS_UNIT_JSON);
AppConfig.PRODUCT_BRAND_JSON = SharePreUtil.getString(ConstantUtil.SHARE_PRE_NAME,context,ConstantUtil.GOODS_BRAND_JSON);
AppConfig.USER_ID = SharePreUtil.getString(ConstantUtil.SHARE_PRE_NAME,context, ConstantUtil.USER_ID);
String userInfoJson = SharePreUtil.getString(ConstantUtil.SHARE_PRE_NAME,context, ConstantUtil.USER_INFO_JSON_CONTENT);
if(!TextUtils.isEmpty(userInfoJson)){
LoginEntity entity = new Gson().fromJson(userInfoJson, LoginEntity.class);
MingDengUserInfoManager.getInstance().setEntity(entity);
MingDengUserInfoManager.getInstance().setUserInfo(entity.getUser_info());
WaterUserInfoManager.getInstance().setEntity(entity);
// WaterUserInfoManager.getInstance().setUserInfo(entity.getUser_info());
}
registerActivityLifecycleCallbacks(new ActivityLifecycleCallbacks() {
@Override

View File

@@ -1,6 +1,10 @@
package com.ckkj.water.base.entity;
import java.io.Serializable;
import java.util.List;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* @author fengxiaoyang
@@ -8,44 +12,55 @@ import java.io.Serializable;
* @description TODO: 描述该类的作用
*/
@NoArgsConstructor
@Data
public class MineUserInfoBean implements Serializable {
private UserInfoEntity userInfo;
private boolean hasEightCharacters;
private String constellation;
private String birthTime;
/**
* userId : 2056543507514097665
* tenantId : 000000
* deptId : null
* userName : null
* nickName : 用户1779153155517
* userType : app_user
* email :
* phonenumber : 133****6054
* sex : 0
* avatar : null
* password : $2a$10$KsCb1Z1znyQgL7W.GoljuuVPctzZ7tS7obu8W2WkK5ydsejQOjRi2
* status : 0
* loginIp : 192.168.1.7
* loginDate : 2026-05-19 11:06:22
* remark : null
* createTime : 2026-05-19 09:12:36
* deptName : null
* roles : []
* roleIds : null
* postIds : null
* roleId : null
* oldPassword : null
*/
public String getConstellation() {
return constellation;
}
public void setConstellation(String constellation) {
this.constellation = constellation;
}
public String getBirthTime() {
return birthTime;
}
public void setBirthTime(String birthTime) {
this.birthTime = birthTime;
}
public UserInfoEntity getUserInfo() {
return userInfo;
}
public void setUserInfo(UserInfoEntity userInfo) {
this.userInfo = userInfo;
}
public boolean isHasEightCharacters() {
return hasEightCharacters;
}
public void setHasEightCharacters(boolean hasEightCharacters) {
this.hasEightCharacters = hasEightCharacters;
}
private String userId;
private String tenantId;
private Object deptId;
private Object userName;
private String nickName;
private String userType;
private String email;
private String phonenumber;
private String sex;
private Object avatar;
private String password;
private String status;
private String loginIp;
private String loginDate;
private Object remark;
private String createTime;
private Object deptName;
private Object roleIds;
private Object postIds;
private Object roleId;
private Object oldPassword;
private List<?> roles;
}

View File

@@ -35,7 +35,6 @@ import com.ckkj.water.base.BaseFragment;
import com.ckkj.water.base.entity.MineUserInfoBean;
import com.ckkj.water.custom.view.CustomRefreshHeader;
import com.ckkj.water.databinding.FateLayoutBinding;
import com.ckkj.water.dialog.ContentReportDialog;
import com.ckkj.water.fate.entity.CityDataEntity;
import com.ckkj.water.fate.entity.FateHistoryEntity;
import com.ckkj.water.fate.entity.TodayFateEntity;
@@ -47,7 +46,7 @@ import com.ckkj.water.utils.WeatherIconUtil;
import com.ckkj.water.utils.click.ClickUtil;
import com.ckkj.water.utils.color.FateDataUtil;
import com.ckkj.water.utils.dataUtil.SharePreUtil;
import com.ckkj.water.utils.manager.MingDengUserInfoManager;
import com.ckkj.water.utils.manager.WaterUserInfoManager;
import com.ckkj.water.utils.number.NumberDecimalFilter;
import com.ckkj.water.utils.show.ToastUtil;
import com.ckkj.water.utils.time.ZYTimeUtils;
@@ -492,19 +491,6 @@ public class FateFragment extends BaseFragment<FateLayoutBinding, FatePresenter>
@Override
public void getUserInfoSuccess(MineUserInfoBean bean) {
if(bean != null){
MingDengUserInfoManager.getInstance().setUserInfo(bean.getUserInfo());
SharePreUtil.putBoolean(ConstantUtil.SHARE_PRE_NAME,mContext,ConstantUtil.USER_HAS_SET_BIRTH,bean.isHasEightCharacters());
AppConfig.USER_SET_BIRTH_INFO = bean.isHasEightCharacters();
//是否设置过生辰
if(AppConfig.USER_SET_BIRTH_INFO){
viewBinding.llInput.setVisibility(View.GONE);
viewBinding.refresh.setVisibility(View.VISIBLE);
}else{
viewBinding.llInput.setVisibility(View.VISIBLE);
viewBinding.refresh.setVisibility(View.GONE);
}
}
}
/**

View File

@@ -2,8 +2,10 @@ package com.ckkj.water.login;
import static android.view.View.GONE;
import static android.view.View.INVISIBLE;
import static android.view.View.VISIBLE;
import android.graphics.Color;
import android.graphics.Typeface;
import android.os.Bundle;
import android.os.CountDownTimer;
@@ -20,8 +22,6 @@ import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.core.content.ContextCompat;
import com.ckkj.water.custom.view.PhotoViewActivity;
import com.ckkj.water.utils.DownFileUtil;
import com.google.gson.Gson;
import com.gyf.immersionbar.ImmersionBar;
import com.ckkj.water.AppConfig;
@@ -34,11 +34,10 @@ import com.ckkj.water.login.mvp.LoginContract;
import com.ckkj.water.login.mvp.LoginImpl;
import com.ckkj.water.login.mvp.LoginPresenter;
import com.ckkj.water.main.activity.MainActivity;
import com.ckkj.water.mine.WebviewUserAgreement;
import com.ckkj.water.network.BaseBean;
import com.ckkj.water.utils.click.ClickUtil;
import com.ckkj.water.utils.dataUtil.SharePreUtil;
import com.ckkj.water.utils.manager.MingDengUserInfoManager;
import com.ckkj.water.utils.manager.WaterUserInfoManager;
import com.ckkj.water.utils.number.PhoneNumberUtils;
import com.ckkj.water.utils.show.ToastUtil;
import com.lxj.xpopup.XPopup;
@@ -140,6 +139,7 @@ public class LoginActivity extends BaseActivity<LoginLayoutBinding, LoginPresent
tvAgreement.setText(spannableString);
tvAgreement.setMovementMethod(LinkMovementMethod.getInstance()); // 开启点击事件
tvAgreement.setHighlightColor(Color.TRANSPARENT);
}
public void onClick(View v) {
@@ -167,7 +167,7 @@ public class LoginActivity extends BaseActivity<LoginLayoutBinding, LoginPresent
viewBinding.tvLoginByPsd.setTextColor(mContext.getResources().getColor(R.color.color_999999));
viewBinding.tvLoginByPsd.setTypeface(Typeface.DEFAULT);
viewBinding.viewLinePsd.setVisibility(GONE);
viewBinding.viewLinePsd.setVisibility(INVISIBLE);
viewBinding.linearVerfiCode.setVisibility(VISIBLE);
viewBinding.linearPsd.setVisibility(GONE);
@@ -182,7 +182,7 @@ public class LoginActivity extends BaseActivity<LoginLayoutBinding, LoginPresent
viewBinding.tvLoginByCode.setTextColor(mContext.getResources().getColor(R.color.color_999999));
viewBinding.tvLoginByCode.setTypeface(Typeface.DEFAULT);
viewBinding.viewLineCode.setVisibility(GONE);
viewBinding.viewLineCode.setVisibility(INVISIBLE);
viewBinding.linearVerfiCode.setVisibility(GONE);
viewBinding.linearPsd.setVisibility(VISIBLE);
@@ -199,11 +199,10 @@ public class LoginActivity extends BaseActivity<LoginLayoutBinding, LoginPresent
ToastUtil.showShort(mContext, getString(R.string.login_error_phone_invalid));
return;
}
cdTimer.start();
// showLoadingDialog();
// mPresenter.getPhoneCode(
// viewBinding.edPhoneInput.getText().toString().trim(),
// AppConfig.SMS_CODE_TYPE_LOGIN);
// cdTimer.start();
showLoadingDialog();
//发送短信
mPresenter.getPhoneCode(viewBinding.etAccount.getText().toString(),"");
break;
case R.id.tv_language:
@@ -241,28 +240,35 @@ public class LoginActivity extends BaseActivity<LoginLayoutBinding, LoginPresent
ToastUtil.showShort(mContext, getString(R.string.login_error_phone_invalid));
return;
}
if (TextUtils.isEmpty(viewBinding.edCodeInput.getText().toString())) {
ToastUtil.showShort(mContext, getString(R.string.login_error_code_empty));
return;
}
if (viewBinding.edCodeInput.getText().toString().trim().length() < 6) {
ToastUtil.showShort(mContext, getString(R.string.login_error_code_invalid));
return;
String loginType = "sms";
if(LOGIN_TYPE_STATUS_CODE == 100){//验证码登录
loginType = "sms";
if (TextUtils.isEmpty(viewBinding.edCodeInput.getText().toString())) {
ToastUtil.showShort(mContext, getString(R.string.login_error_code_empty));
return;
}
if (viewBinding.edCodeInput.getText().toString().trim().length() < 6) {
ToastUtil.showShort(mContext, getString(R.string.login_error_code_invalid));
return;
}
}else{//密码登录
loginType = "password";
if (TextUtils.isEmpty(viewBinding.etInputPsd.getText().toString())) {
ToastUtil.showShort(mContext, getString(R.string.login_error_psd_empty));
return;
}
}
if (!mYinsiConfirm) {
ToastUtil.showShort(mContext, getString(R.string.login_error_agreement));
return;
}
String loginType = "sms";
if(LOGIN_TYPE_STATUS_CODE == 100){
loginType = "sms";
}else{
loginType = "password";
}
showLoadingDialog();
mPresenter.loginBySmsCode(loginType,
viewBinding.etAccount.getText().toString().trim(),
viewBinding.edCodeInput.getText().toString().trim());
viewBinding.edCodeInput.getText().toString().trim(),
viewBinding.etInputPsd.getText().toString());
// new Handler().postDelayed(() -> hideDialogLoading(), 1000);
break;
@@ -298,26 +304,22 @@ public class LoginActivity extends BaseActivity<LoginLayoutBinding, LoginPresent
@Override
public void getPhoneCodeSuccess(BaseBean bean) {
hideDialogLoading();
ToastUtil.showShort(mContext, getString(R.string.login_code_sent));
cdTimer.start();
ToastUtil.showLong(mContext, getString(R.string.login_code_sent) + ":" + bean.getDataString());
// cdTimer.start();
}
@Override
public void loginBySmsCodeSuccess(LoginEntity entity) {
hideDialogLoading();
ToastUtil.showShort(mContext, getString(R.string.login_success));
// SharePreUtil.putBoolean(ConstantUtil.SHARE_PRE_NAME, mContext, ConstantUtil.USER_LOGIN, true);
// SharePreUtil.putString(ConstantUtil.SHARE_PRE_NAME, mContext, ConstantUtil.USER_TOKEN, entity.getAccess_token());
// SharePreUtil.putString(ConstantUtil.SHARE_PRE_NAME, mContext, ConstantUtil.USER_NICKNAME, entity.getUser_info().getNickname());
// SharePreUtil.putString(ConstantUtil.SHARE_PRE_NAME, mContext, ConstantUtil.USER_ID, String.valueOf(entity.getUser_info().getUserId()));
// MingDengUserInfoManager.getInstance().setEntity(entity);
// MingDengUserInfoManager.getInstance().setUserInfo(entity.getUser_info());
SharePreUtil.putBoolean(ConstantUtil.SHARE_PRE_NAME, mContext, ConstantUtil.USER_LOGIN, true);
SharePreUtil.putString(ConstantUtil.SHARE_PRE_NAME, mContext, ConstantUtil.USER_TOKEN, entity.getAccess_token());
WaterUserInfoManager.getInstance().setEntity(entity);
// Gson gson = new Gson();
// String userInfoJson = gson.toJson(entity);
// SharePreUtil.putString(ConstantUtil.SHARE_PRE_NAME, mContext, ConstantUtil.USER_INFO_JSON_CONTENT, userInfoJson);
// AppConfig.USER_LOGIN = true;
// AppConfig.USER_TOKEN = entity.getAccess_token();
// AppConfig.USER_ID = String.valueOf(entity.getUser_info().getUserId());
AppConfig.USER_LOGIN = true;
AppConfig.USER_TOKEN = entity.getAccess_token();
new Handler().postDelayed(() -> {
goTo(mContext, MainActivity.class, null);
finish();

View File

@@ -1,41 +1,35 @@
package com.ckkj.water.login.entity;
import com.ckkj.water.base.entity.UserInfoEntity;
import java.io.Serializable;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* @author fengxiaoyang
* @date 2025/7/28
* @description TODO: 描述该类的作用
*/
@NoArgsConstructor
@Data
public class LoginEntity implements Serializable {
/**
* scope : null
* openid : null
* access_token : eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJsb2dpblR5cGUiOiJsb2dpbiIsImxvZ2luSWQiOiJhcHBfdXNlcjoyMDU2NTQzNTA3NTE0MDk3NjY1Iiwicm5TdHIiOiJFOVE4a1VzT2dJbjRCZWtGY0pTRXZGdkljNjhFOG1FQSIsImNsaWVudGlkIjoiNDI4YTgzMTBjZDQ0Mjc1N2FlNjk5ZGY1ZDg5NGYwNTEiLCJ0ZW5hbnRJZCI6IjAwMDAwMCIsInVzZXJJZCI6MjA1NjU0MzUwNzUxNDA5NzY2NX0.nh38mcgK2JOtuBR4ogQlcnQbMTiLJ_TXln_BGFhlUkU
* refresh_token : null
* expire_in : 60480000
* refresh_expire_in : null
* client_id : 428a8310cd442757ae699df5d894f051
*/
private Object scope;
private Object openid;
private String access_token;
private UserInfoEntity user_info;
private long expires_in;
public String getAccess_token() {
return access_token;
}
public void setAccess_token(String access_token) {
this.access_token = access_token;
}
public UserInfoEntity getUser_info() {
return user_info;
}
public void setUser_info(UserInfoEntity user_info) {
this.user_info = user_info;
}
public long getExpires_in() {
return expires_in;
}
public void setExpires_in(long expires_in) {
this.expires_in = expires_in;
}
private Object refresh_token;
private int expire_in;
private Object refresh_expire_in;
private String client_id;
}

View File

@@ -1,16 +1,9 @@
package com.ckkj.water.login.mvp;
import com.ckkj.water.AppConfig;
import com.ckkj.water.ConstantUtil;
import com.ckkj.water.EventMessage;
import com.ckkj.water.MyApplication;
import com.ckkj.water.base.BasePresenter;
import com.ckkj.water.base.entity.MineUserInfoBean;
import com.ckkj.water.login.entity.LoginEntity;
import com.ckkj.water.mine.mvp.MineImpl;
import com.ckkj.water.network.BaseBean;
import com.ckkj.water.utils.dataUtil.SharePreUtil;
import com.ckkj.water.utils.manager.MingDengUserInfoManager;
import org.json.JSONException;
import org.json.JSONObject;
@@ -18,8 +11,6 @@ import org.json.JSONObject;
import java.util.HashMap;
import java.util.Map;
import de.greenrobot.event.EventBus;
/**
* @author fengxiaoyang
* @date 2025/7/26
@@ -95,17 +86,16 @@ public class LoginPresenter extends BasePresenter<LoginContract.LoginView> {
* @param account
* @param code
*/
public void loginBySmsCode(String loginType,String account, String code) {
public void loginBySmsCode(String loginType,String account, String code,String psd) {
try {
JSONObject json = new JSONObject();
json.put("grantType",loginType);
if(loginType.equals("sms")){
json.put("phonenumber",account);
json.put("sms",code);
json.put("smsCode",code);
}else{
json.put("username",account);
json.put("password",code);
json.put("password",psd);
}
json.put("clientId",AppConfig.APP_CLIENT_ID);
json.put("userType",AppConfig.APP_USER_TYPE);

View File

@@ -28,18 +28,15 @@ import com.ckkj.water.base.entity.MineUserInfoBean;
import com.ckkj.water.chat.ChatFragment;
import com.ckkj.water.databinding.MainActivityLayoutBinding;
import com.ckkj.water.dialog.DialogAppUpdate;
import com.ckkj.water.fate.view.FateFragment;
import com.ckkj.water.main.MainContract;
import com.ckkj.water.main.MainImpl;
import com.ckkj.water.main.MainPresenter;
import com.ckkj.water.main.entity.CheckVersionEntity;
import com.ckkj.water.mine.MineFragment;
import com.ckkj.water.network.BaseBean;
import com.ckkj.water.plate.PlateFragment;
import com.ckkj.water.utils.AppInfoUtil;
import com.ckkj.water.utils.dataUtil.SharePreUtil;
import com.ckkj.water.utils.manager.ActivityManager;
import com.ckkj.water.utils.manager.MingDengUserInfoManager;
import com.ckkj.water.utils.manager.WaterUserInfoManager;
import com.ckkj.water.utils.show.ToastUtil;
import org.jetbrains.annotations.NotNull;
@@ -289,9 +286,7 @@ public class MainActivity extends BaseActivity<MainActivityLayoutBinding, MainPr
@Override
public void getUserInfoSuccess(MineUserInfoBean bean) {
if(bean != null){
MingDengUserInfoManager.getInstance().setUserInfo(bean.getUserInfo());
SharePreUtil.putBoolean(ConstantUtil.SHARE_PRE_NAME,mContext,ConstantUtil.USER_HAS_SET_BIRTH,bean.isHasEightCharacters());
AppConfig.USER_SET_BIRTH_INFO = bean.isHasEightCharacters();
WaterUserInfoManager.getInstance().setUserInfo(bean);
}
}

View File

@@ -5,6 +5,7 @@ import android.view.View;
import com.ckkj.water.R;
import com.ckkj.water.base.BaseActivity;
import com.ckkj.water.base.entity.MineUserInfoBean;
import com.ckkj.water.databinding.AppThemeChangeLayoutBinding;
import com.ckkj.water.mine.mvp.MineContract;
import com.ckkj.water.mine.mvp.MineImpl;
@@ -96,4 +97,9 @@ public class AppThemActivity extends BaseActivity<AppThemeChangeLayoutBinding, M
public void logOut(BaseBean bean) {
}
@Override
public void getUserInfoSuccess(MineUserInfoBean bean) {
}
}

View File

@@ -2,30 +2,22 @@ package com.ckkj.water.mine;
import android.os.Bundle;
import android.os.CountDownTimer;
import android.os.Handler;
import android.text.TextUtils;
import android.view.View;
import com.ckkj.water.base.entity.MineUserInfoBean;
import com.gyf.immersionbar.ImmersionBar;
import com.ckkj.water.AppConfig;
import com.ckkj.water.R;
import com.ckkj.water.base.BaseActivity;
import com.ckkj.water.base.entity.MineUserInfoBean;
import com.ckkj.water.databinding.ChangePhoneActivityBinding;
import com.ckkj.water.login.LoginActivity;
import com.ckkj.water.main.entity.CheckVersionEntity;
import com.ckkj.water.mine.entity.MemberComboEntity;
import com.ckkj.water.mine.mvp.MineContract;
import com.ckkj.water.mine.mvp.MineImpl;
import com.ckkj.water.mine.mvp.MinePresenter;
import com.ckkj.water.network.BaseBean;
import com.ckkj.water.utils.manager.ActivityManager;
import com.ckkj.water.utils.manager.MingDengUserInfoManager;
import com.ckkj.water.utils.manager.WaterUserInfoManager;
import com.ckkj.water.utils.number.PhoneNumberUtils;
import com.ckkj.water.utils.show.ToastUtil;
import java.util.List;
/**
* @Description TODO
@@ -54,7 +46,6 @@ public class ChangePhoneActivity extends BaseActivity<ChangePhoneActivityBinding
.titleBar(viewBinding.rlTitle)
.init();
viewBinding.includeTitle.tvTitle.setText("更换手机号");
viewBinding.tvUserPhone.setText(MingDengUserInfoManager.getInstance().getUserInfo().getMobile());
initListener();
}
@@ -140,4 +131,9 @@ public class ChangePhoneActivity extends BaseActivity<ChangePhoneActivityBinding
public void logOut(BaseBean bean) {
}
@Override
public void getUserInfoSuccess(MineUserInfoBean bean) {
}
}

View File

@@ -5,6 +5,7 @@ import static android.view.View.INVISIBLE;
import android.os.Bundle;
import android.view.View;
import com.ckkj.water.AppConfig;
import com.ckkj.water.R;
import com.ckkj.water.base.BaseFragment;
import com.ckkj.water.base.entity.MineUserInfoBean;
@@ -43,6 +44,14 @@ public class MineCenterFragment extends BaseFragment<MineFragmentLayoutBinding,
initListener();
}
@Override
protected void onResumeInitData() {
super.onResumeInitData();
if(AppConfig.USER_LOGIN){
mPresenter.getUserinfo();
}
}
private void initListener() {
setClick(viewBinding.imgAvatar);
setClick(viewBinding.linearLanguage);
@@ -91,6 +100,15 @@ public class MineCenterFragment extends BaseFragment<MineFragmentLayoutBinding,
}
}
/**
* 获取个人信息
* @param bean
*/
@Override
public void getUserInfoSuccess(MineUserInfoBean bean) {
}
@Override
public MinePresenter createPresenter() {
return new MinePresenter(new MineImpl());
@@ -111,4 +129,5 @@ public class MineCenterFragment extends BaseFragment<MineFragmentLayoutBinding,
public void logOut(BaseBean bean) {
}
}

View File

@@ -14,19 +14,16 @@ import androidx.annotation.Nullable;
import com.alibaba.sdk.android.oss.ClientException;
import com.alibaba.sdk.android.oss.ServiceException;
import com.bumptech.glide.Glide;
import com.ckkj.water.base.entity.MineUserInfoBean;
import com.esafirm.imagepicker.features.ImagePicker;
import com.esafirm.imagepicker.model.Image;
import com.ckkj.water.AppConfig;
import com.ckkj.water.EventMessage;
import com.ckkj.water.R;
import com.ckkj.water.base.BaseFragment;
import com.ckkj.water.base.entity.MineUserInfoBean;
import com.ckkj.water.base.inter.UploadCallback;
import com.ckkj.water.databinding.MineFragmentBinding;
import com.ckkj.water.login.LoginActivity;
import com.ckkj.water.main.entity.CheckVersionEntity;
import com.ckkj.water.mine.entity.MemberComboEntity;
import com.ckkj.water.mine.mvp.MineContract;
import com.ckkj.water.mine.mvp.MineImpl;
import com.ckkj.water.mine.mvp.MinePresenter;
@@ -35,10 +32,9 @@ import com.ckkj.water.utils.LubanCompressUtil;
import com.ckkj.water.utils.PreviewFileUtil;
import com.ckkj.water.utils.click.ClickUtil;
import com.ckkj.water.utils.dataUtil.FileUtil;
import com.ckkj.water.utils.manager.MingDengUserInfoManager;
import com.ckkj.water.utils.manager.WaterUserInfoManager;
import com.ckkj.water.utils.oss.OssUploadHelper;
import com.ckkj.water.utils.show.ToastUtil;
import com.ckkj.water.utils.time.ZYTimeUtils;
import com.lxj.xpopup.XPopup;
import com.lxj.xpopup.interfaces.OnSelectListener;
import com.yalantis.ucrop.UCrop;
@@ -112,8 +108,8 @@ public class MineFragment extends BaseFragment<MineFragmentBinding, MinePresente
}
break;
case 1:
String suffix = FileUtil.getFileSuffixWithQuestion(MingDengUserInfoManager.getInstance().getUserInfo().getAvatar());
PreviewFileUtil.previewFiles(mContext, suffix, MingDengUserInfoManager.getInstance().getUserInfo().getAvatar());
// String suffix = FileUtil.getFileSuffixWithQuestion(WaterUserInfoManager.getInstance().getUserInfo().getAvatar());
// PreviewFileUtil.previewFiles(mContext, suffix, WaterUserInfoManager.getInstance().getUserInfo().getAvatar());
break;
}
}
@@ -266,4 +262,8 @@ public class MineFragment extends BaseFragment<MineFragmentBinding, MinePresente
}
@Override
public void getUserInfoSuccess(MineUserInfoBean bean) {
}
}

View File

@@ -3,21 +3,16 @@ package com.ckkj.water.mine;
import android.Manifest;
import android.content.Intent;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.alibaba.sdk.android.oss.ClientException;
import com.alibaba.sdk.android.oss.ServiceException;
import com.bumptech.glide.Glide;
import com.ckkj.water.R;
import com.ckkj.water.base.BaseActivity;
import com.ckkj.water.base.entity.MineUserInfoBean;
import com.ckkj.water.databinding.MineInformationLayoutBinding;
import com.ckkj.water.main.entity.CheckVersionEntity;
import com.ckkj.water.mine.entity.MemberComboEntity;
import com.ckkj.water.mine.mvp.MineContract;
import com.ckkj.water.mine.mvp.MineImpl;
import com.ckkj.water.mine.mvp.MinePresenter;
@@ -25,7 +20,7 @@ import com.ckkj.water.network.BaseBean;
import com.ckkj.water.utils.LubanCompressUtil;
import com.ckkj.water.utils.PreviewFileUtil;
import com.ckkj.water.utils.dataUtil.FileUtil;
import com.ckkj.water.utils.manager.MingDengUserInfoManager;
import com.ckkj.water.utils.manager.WaterUserInfoManager;
import com.ckkj.water.utils.show.ToastUtil;
import com.esafirm.imagepicker.features.ImagePicker;
import com.esafirm.imagepicker.model.Image;
@@ -34,7 +29,6 @@ import com.lxj.xpopup.XPopup;
import com.lxj.xpopup.interfaces.OnSelectListener;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
import pub.devrel.easypermissions.EasyPermissions;
@@ -98,8 +92,8 @@ public class MineInfomationActivity extends BaseActivity<MineInformationLayoutBi
}
break;
case 1:
String suffix = FileUtil.getFileSuffixWithQuestion(MingDengUserInfoManager.getInstance().getUserInfo().getAvatar());
PreviewFileUtil.previewFiles(mContext, suffix, MingDengUserInfoManager.getInstance().getUserInfo().getAvatar());
// String suffix = FileUtil.getFileSuffixWithQuestion(WaterUserInfoManager.getInstance().getUserInfo().getAvatar());
// PreviewFileUtil.previewFiles(mContext, suffix, WaterUserInfoManager.getInstance().getUserInfo().getAvatar());
break;
}
}
@@ -211,4 +205,9 @@ public class MineInfomationActivity extends BaseActivity<MineInformationLayoutBi
}
}
}
@Override
public void getUserInfoSuccess(MineUserInfoBean bean) {
}
}

View File

@@ -5,6 +5,7 @@ import android.view.View;
import com.ckkj.water.R;
import com.ckkj.water.base.BaseActivity;
import com.ckkj.water.base.entity.MineUserInfoBean;
import com.ckkj.water.databinding.PasswordManLayoutBinding;
import com.ckkj.water.login.ForgetPasswordActivity;
import com.ckkj.water.mine.mvp.MineContract;
@@ -79,4 +80,9 @@ public class PsdManageActivity extends BaseActivity<PasswordManLayoutBinding, Mi
public void logOut(BaseBean bean) {
}
@Override
public void getUserInfoSuccess(MineUserInfoBean bean) {
}
}

View File

@@ -6,6 +6,7 @@ import android.view.View;
import com.ckkj.water.R;
import com.ckkj.water.base.BaseActivity;
import com.ckkj.water.base.entity.MineUserInfoBean;
import com.ckkj.water.databinding.ResetPsdLayoutBinding;
import com.ckkj.water.mine.mvp.MineContract;
import com.ckkj.water.mine.mvp.MineImpl;
@@ -95,4 +96,9 @@ public class ResetPsdActivity extends BaseActivity<ResetPsdLayoutBinding, MinePr
public void logOut(BaseBean bean) {
}
@Override
public void getUserInfoSuccess(MineUserInfoBean bean) {
}
}

View File

@@ -6,29 +6,25 @@ import android.os.Bundle;
import android.os.Handler;
import android.view.View;
import com.ckkj.water.base.entity.MineUserInfoBean;
import com.gyf.immersionbar.ImmersionBar;
import com.ckkj.water.AppConfig;
import com.ckkj.water.EventMessage;
import com.ckkj.water.R;
import com.ckkj.water.base.BaseActivity;
import com.ckkj.water.base.BaseFragment;
import com.ckkj.water.base.entity.MineUserInfoBean;
import com.ckkj.water.databinding.ActivitySettingsLayoutBinding;
import com.ckkj.water.dialog.DialogAppUpdate;
import com.ckkj.water.login.LoginActivity;
import com.ckkj.water.main.entity.CheckVersionEntity;
import com.ckkj.water.mine.entity.MemberComboEntity;
import com.ckkj.water.mine.mvp.MineContract;
import com.ckkj.water.mine.mvp.MineImpl;
import com.ckkj.water.mine.mvp.MinePresenter;
import com.ckkj.water.network.BaseBean;
import com.ckkj.water.utils.AppInfoUtil;
import com.ckkj.water.utils.manager.ActivityManager;
import com.ckkj.water.utils.manager.MingDengUserInfoManager;
import com.ckkj.water.utils.manager.WaterUserInfoManager;
import com.ckkj.water.utils.show.ToastUtil;
import java.io.File;
import java.util.List;
import de.greenrobot.event.EventBus;
@@ -54,7 +50,7 @@ public class SettingsActivity extends BaseActivity<ActivitySettingsLayoutBinding
viewBinding.includeTitle.tvTitle.setText("设置");
viewBinding.includeTitle.imgBack.setOnClickListener(c -> finish());
if(AppConfig.USER_LOGIN){
viewBinding.tvUserPhone.setText(MingDengUserInfoManager.getInstance().getUserInfo().getMobile());
// viewBinding.tvUserPhone.setText(WaterUserInfoManager.getInstance().getUserInfo().getMobile());
viewBinding.tvLogOut.setVisibility(View.VISIBLE);
}
//获取本应用所占用的缓存
@@ -119,7 +115,7 @@ public class SettingsActivity extends BaseActivity<ActivitySettingsLayoutBinding
@Override
public void onConfirmClick() {
MingDengUserInfoManager.getInstance().clearUser(mContext);
WaterUserInfoManager.getInstance().clearUser(mContext);
ActivityManager.removeAllActivity();
goTo(mContext, LoginActivity.class,null);
EventBus.getDefault().post(new EventMessage(EventMessage.USER_LOGIN_LOST));
@@ -205,4 +201,9 @@ public class SettingsActivity extends BaseActivity<ActivitySettingsLayoutBinding
}
return dir.delete();
}
@Override
public void getUserInfoSuccess(MineUserInfoBean bean) {
}
}

View File

@@ -2,30 +2,23 @@ package com.ckkj.water.mine;
import android.os.Bundle;
import android.os.CountDownTimer;
import android.os.Handler;
import android.text.TextUtils;
import android.view.View;
import com.ckkj.water.base.entity.MineUserInfoBean;
import com.gyf.immersionbar.ImmersionBar;
import com.ckkj.water.AppConfig;
import com.ckkj.water.R;
import com.ckkj.water.base.BaseActivity;
import com.ckkj.water.base.entity.MineUserInfoBean;
import com.ckkj.water.databinding.UserLogOffActivityBinding;
import com.ckkj.water.login.LoginActivity;
import com.ckkj.water.main.entity.CheckVersionEntity;
import com.ckkj.water.mine.entity.MemberComboEntity;
import com.ckkj.water.mine.mvp.MineContract;
import com.ckkj.water.mine.mvp.MineImpl;
import com.ckkj.water.mine.mvp.MinePresenter;
import com.ckkj.water.network.BaseBean;
import com.ckkj.water.utils.manager.ActivityManager;
import com.ckkj.water.utils.manager.MingDengUserInfoManager;
import com.ckkj.water.utils.manager.WaterUserInfoManager;
import com.ckkj.water.utils.number.PhoneNumberUtils;
import com.ckkj.water.utils.show.ToastUtil;
import java.util.List;
/**
* @Description 用户注销账号
@@ -56,10 +49,10 @@ public class UserLogOffAccountActivity extends BaseActivity<UserLogOffActivityBi
.init();
viewBinding.includeTitle.tvTitle.setText("注销账号");
if(AppConfig.USER_LOGIN){
String phoneNum = MingDengUserInfoManager.getInstance().getUserInfo().getMobile();
if(!TextUtils.isEmpty(phoneNum)){
viewBinding.tvUserPhone.setText(PhoneNumberUtils.hidePhoneNumber(phoneNum));
}
// String phoneNum = WaterUserInfoManager.getInstance().getUserInfo().getMobile();
// if(!TextUtils.isEmpty(phoneNum)){
// viewBinding.tvUserPhone.setText(PhoneNumberUtils.hidePhoneNumber(phoneNum));
// }
}
}
@@ -118,4 +111,9 @@ public class UserLogOffAccountActivity extends BaseActivity<UserLogOffActivityBi
public void logOut(BaseBean bean) {
}
@Override
public void getUserInfoSuccess(MineUserInfoBean bean) {
}
}

View File

@@ -27,11 +27,15 @@ public class MineContract {
void fail(String msg);
}
public interface DataModel{
//获取个人信息
void getUserInfo(Map<String,Object> map, CallBack callBack);
}
public interface MineView extends IView {
void getUserInfoSuccess(MineUserInfoBean bean);
}
public interface RecommendModel{

View File

@@ -25,4 +25,38 @@ import io.reactivex.schedulers.Schedulers;
public class MineImpl implements MineContract.DataModel {
/**
* 获取个人信息
* @param map
* @param callBack
*/
@Override
public void getUserInfo(Map<String, Object> map, MineContract.CallBack callBack) {
NetWorkManager.getRequest().getMineUserInfo(NetWorkManager.getToken(), map)
.subscribeOn(Schedulers.io())
.unsubscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Observer<BaseBean<MineUserInfoBean>>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
}
@Override
public void onNext(@NonNull BaseBean<MineUserInfoBean> bean) {
if (bean.getCode() == 200) {
callBack.success(bean.getData());
}
}
@Override
public void onError(@NonNull Throwable e) {
callBack.fail(e.getMessage());
}
@Override
public void onComplete() {
}
});
}
}

View File

@@ -5,20 +5,9 @@ import android.text.TextUtils;
import com.ckkj.water.base.BasePresenter;
import com.ckkj.water.base.entity.MineUserInfoBean;
import com.ckkj.water.base.entity.UserInfoEntity;
import com.ckkj.water.login.mvp.LoginContract;
import com.ckkj.water.login.mvp.LoginImpl;
import com.ckkj.water.main.MainContract;
import com.ckkj.water.main.MainImpl;
import com.ckkj.water.main.entity.CheckVersionEntity;
import com.ckkj.water.mine.entity.MemberComboEntity;
import com.ckkj.water.network.BaseBean;
import com.ckkj.water.utils.manager.MingDengUserInfoManager;
import org.json.JSONException;
import org.json.JSONObject;
import com.ckkj.water.utils.manager.WaterUserInfoManager;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
@@ -38,4 +27,24 @@ public class MinePresenter extends BasePresenter<MineContract.MineView> {
/**
* 获取个人信息
*/
public void getUserinfo() {
Map<String,Object> map = new HashMap<>();
impl.getUserInfo(map, new MineContract.CallBack<MineUserInfoBean>() {
@Override
public void success(MineUserInfoBean bean) {
if(MinePresenter.this.getView() != null){
WaterUserInfoManager.getInstance().setUserInfo(bean);
MinePresenter.this.getView().getUserInfoSuccess(bean);
}
}
@Override
public void fail(String msg) {
if(MinePresenter.this.getView() != null){
MinePresenter.this.getView().showError(msg);
}
}
});
}
}

View File

@@ -337,6 +337,7 @@ public class NetWorkManager {
Map<String, String> map = new HashMap<>();
try {
map.put("Authorization", "Bearer " + AppConfig.USER_TOKEN);
map.put("clientId", AppConfig.APP_CLIENT_ID);
// map.put("Authorization", "Bearer " + "eyJhbGciOiJIUzUxMiJ9.eyJ1c2VyX2lkIjoxOTI1NzYwMTgxMTMyNzI2MDIyLCJ1c2VyX2tleSI6IjY0YjVmMjRjLTIyM2ItNDRkZC1iMDJlLTI0ZTRiNzNmODgxZCIsInVzZXJuYW1lIjoiMTg2NDU5MDQzMDIifQ.PiIjBZlQ9UtOuotfhd5mZZO2e8SbMpbXU7VDvVeiWZIecsFDUd51Rae09EFxQ_MJmBUEvIdyysnyqYiBC2AEfw");
} catch (Exception e) {
e.printStackTrace();

View File

@@ -87,6 +87,8 @@ public interface Request {
@POST("auth/login")
Observable<BaseBean<LoginEntity>> loginBySmsCode(@HeaderMap Map<String, String> headMap, @Body RequestBody requestBody);
//获取个人信息
@GET("app/v1/getUserInfo")
Observable<BaseBean<MineUserInfoBean>> getMineUserInfo(@HeaderMap Map<String, String> headMap, @QueryMap Map<String, Object> map);
//更新用户头像
//获取今日运势
@POST("mobile/yourhoroscope/today")

View File

@@ -4,6 +4,7 @@ import android.content.Context;
import com.ckkj.water.AppConfig;
import com.ckkj.water.ConstantUtil;
import com.ckkj.water.base.entity.MineUserInfoBean;
import com.ckkj.water.base.entity.UserInfoEntity;
import com.ckkj.water.login.entity.LoginEntity;
import com.ckkj.water.utils.dataUtil.SharePreUtil;
@@ -15,20 +16,20 @@ import com.ckkj.water.utils.dataUtil.SharePreUtil;
* @Date 04-07-2025 周一 12:51
*/
public class MingDengUserInfoManager {
private static MingDengUserInfoManager instance;
public class WaterUserInfoManager {
private static WaterUserInfoManager instance;
private LoginEntity entity;
private UserInfoEntity userInfo;
private MineUserInfoBean userInfo;
private MingDengUserInfoManager() {
private WaterUserInfoManager() {
// 私有构造方法防止外部直接创建实例
}
public static MingDengUserInfoManager getInstance() {
public static WaterUserInfoManager getInstance() {
if (instance == null) {
synchronized (MingDengUserInfoManager.class) {
synchronized (WaterUserInfoManager.class) {
if (instance == null) {
instance = new MingDengUserInfoManager();
instance = new WaterUserInfoManager();
}
}
}
@@ -43,11 +44,11 @@ public class MingDengUserInfoManager {
this.entity = entity;
}
public UserInfoEntity getUserInfo() {
public MineUserInfoBean getUserInfo() {
return userInfo;
}
public void setUserInfo(UserInfoEntity userInfo) {
public void setUserInfo(MineUserInfoBean userInfo) {
this.userInfo = userInfo;
}