瀏覽代碼

修改登录流程

Pq 1 年之前
父節點
當前提交
b35a9c5730

+ 68 - 0
usercenter/src/main/java/com/cooleshow/usercenter/bean/StudentUserInfo.java

@@ -0,0 +1,68 @@
+package com.cooleshow.usercenter.bean;
+
+import java.io.Serializable;
+
+/**
+ * 创建日期:2022/5/26 13:51
+ *
+ * @author Ryan
+ * 类说明:
+ */
+public class StudentUserInfo implements Serializable {
+    /*
+    	"birthdate": "",
+		"cloudStudySequenceDays": 0,
+		"cloudStudyUseLastDay": "",
+		"createTime": "",
+		"exerciseDays": 0,
+		"exerciseHours": 0,
+		"finshClassHours": 0,
+		"gender": "",
+		"heardUrl": "",
+		"idCardNo": "",
+		"isReal": "",
+		"memberRankSettingId": 0,
+		"membershipDays": 0,
+		"membershipEndTime": "",
+		"membershipStartTime": "",
+		"phone": "",
+		"realName": "",
+		"starTeacherNum": 0,
+		"subjectId": "",
+		"subjectName": "",
+		"testingNum": 0,
+		"unfinshClassHours": 0,
+		"updateTime": "",
+		"userId": 0,
+		"username": ""
+     */
+    public String birthdate;
+    public int cloudStudySequenceDays;
+    public String cloudStudyUseLastDay;
+    public String createTime;
+    public int exerciseDays;
+    public int exerciseHours;
+    public int finshClassHours;
+    public int isVip;
+    public String gender;
+    public String heardUrl;
+    public String idCardNo;
+    public String isReal;
+    public long memberRankSettingId;
+    public int membershipDays;
+    public String membershipEndTime;
+    public String membershipStartTime;
+    public String phone;
+    public String realName;
+    public String starTeacherNum;
+    public String subjectId;
+    public String subjectName;
+    public int testingNum;
+    public int unfinshClassHours;
+    public String updateTime;
+    public long userId;
+    public String username;
+    public int tenantId;
+
+
+}

+ 104 - 0
usercenter/src/main/java/com/cooleshow/usercenter/bean/TeacherUserInfo.java

@@ -0,0 +1,104 @@
+package com.cooleshow.usercenter.bean;
+
+import android.text.TextUtils;
+
+import java.io.Serializable;
+
+/**
+ * Author by pq, Date on 2022/4/26.
+ */
+public class TeacherUserInfo implements Serializable {
+
+    /**
+     * username : 张三
+     * musicianAuthStatus : UNPAALY
+     * phone : 136****1518
+     * birthdate : null
+     * subjectName : 西洋管乐
+     * fansNum : 0
+     * expTime : 8
+     * unExpTime : 0
+     * starGrade : 4
+     * idCardNo :
+     * gender : null
+     * isReal : 0
+     * liveFlag : 0
+     * isBank : 0
+     * heardUrl : https://daya.ks3-cn-beijing.ksyun.com/202204/T3R3yxq.jpeg
+     * entryStatus : UNPAALY
+     * realName :
+     * subject :
+     * entryFlag : 0
+     * userId : 15
+     * subjectId : 1
+     * updateTime : 2022-04-25 17:41:45
+     * musicianFlag : 0
+     * entryAuthDate : null
+     * musicianDate : null
+     * introduction : 个人介绍
+     * graduateSchool : 12
+     * gradCertificate :
+     * degreeCertificate :
+     * teacherCertificate :
+     * memo :
+     * educationBackground :
+     * technicalTitles :
+     * workUnit :
+     * liveDate : null
+     * createTime : 2022-04-06 18:23:36
+     */
+
+    public String username;
+    public String musicianAuthStatus;
+    public String phone;
+    public Object birthdate;
+    public String subjectName;
+    public String fansNum;
+    public String expTime;
+    public String unExpTime;
+    public String membershipDays;
+    public int starGrade;
+    public String idCardNo;
+    public String gender;
+    public int isReal;
+    public int liveFlag;//是否有直播权限 0 否 1 是
+    public int isBank;
+    public String heardUrl;
+    public String entryStatus;
+    public String realName;
+    public String subject;
+    public int entryFlag;
+    public int degreeFlag;// 老师学历认证
+    public int teacherFlag;//教资认证
+    public int userId;
+    public String subjectId;
+    public String updateTime;
+    public int musicianFlag;
+    public Object entryAuthDate;
+    public Object musicianDate;
+    public String introduction;
+    public String graduateSchool;
+    public String gradCertificate;
+    public String degreeCertificate;
+    public String teacherCertificate;
+    public String memo;
+    public String educationBackground;
+    public String technicalTitles;
+    public String workUnit;
+    public Object liveDate;
+    public String createTime;
+    public boolean isSettlement;
+    public String tag;//用于显示老师徽章
+    public int isVip;//0非会员 1会员
+    private String defaultSubject;//当前声部id 为0表示没有默认声部id
+    public String defaultSubjectName;//当前声部name
+    public int tenantId;
+
+    public String getDefaultSubject() {
+        if (!TextUtils.equals(defaultSubject, "0")) {
+            return defaultSubject;
+        }
+        return "";
+    }
+
+}

+ 14 - 3
usercenter/src/main/java/com/cooleshow/usercenter/data/api/UserApi.kt

@@ -4,6 +4,8 @@ package com.cooleshow.usercenter.data.api
 import com.cooleshow.base.bean.QueryParamsConfigBean
 import com.cooleshow.base.common.BaseConstant
 import com.cooleshow.base.data.net.BaseResponse
+import com.cooleshow.usercenter.bean.StudentUserInfo
+import com.cooleshow.usercenter.bean.TeacherUserInfo
 import com.cooleshow.usercenter.bean.UserInfo
 import com.cooleshow.usercenter.bean.UserLoginInfo
 import com.cooleshow.usercenter.data.protocol.RegisterReq
@@ -134,12 +136,21 @@ interface UserApi {
     @GET(BaseConstant.STUDENT_GROUP + "sysConfig/queryByParamName")
     fun queryModifyNickConfig(@Query("paramName") last_username_month: String?): Observable<BaseResponse<QueryParamsConfigBean?>?>?
 
+
     /**
-     * 查询个人信息
+     * 查询老师个人信息
      *
      * @param
      * @return
      */
-    @GET(BaseConstant.AUTH_GROUP + "api/queryUserInfo")
-    fun getUserInfo(@Query("clientType") clientType: String?): Observable<BaseResponse<UserInfo?>?>?
+    @GET(BaseConstant.TEACHER_GROUP + "teacher/queryUserInfo")
+    fun getTeacherUserInfo(): Observable<BaseResponse<TeacherUserInfo?>?>?
+
+    /**
+     * 查询学员基本信息
+     *
+     * @return
+     */
+    @GET(BaseConstant.STUDENT_GROUP + "student/queryUserInfo")
+    fun queryUserInfo(): Observable<BaseResponse<StudentUserInfo?>?>?
 }

+ 23 - 9
usercenter/src/main/java/com/cooleshow/usercenter/presenter/LoginPresenter.kt

@@ -5,7 +5,8 @@ import com.cooleshow.base.constanst.Constants
 import com.cooleshow.base.presenter.BasePresenter
 import com.cooleshow.base.rx.BaseObserver
 import com.cooleshow.base.utils.DeviceUtils
-import com.cooleshow.usercenter.bean.UserInfo
+import com.cooleshow.usercenter.bean.StudentUserInfo
+import com.cooleshow.usercenter.bean.TeacherUserInfo
 import com.cooleshow.usercenter.bean.UserLoginInfo
 import com.cooleshow.usercenter.data.api.UserApi
 import com.cooleshow.usercenter.helper.UserHelper
@@ -36,15 +37,28 @@ class LoginPresenter constructor() : BasePresenter<LoginContract.LoginView>(),
     }
 
     fun queryUserInfo(loginInfo: UserLoginInfo?) {
-        addSubscribe(
-            create<UserApi>(UserApi::class.java).getUserInfo(BaseConstant.CLIENT_TYPE),
-            object : BaseObserver<UserInfo?>(view) {
-                override fun onSuccess(data: UserInfo?) {
-                    view?.let {
-                        view.onLoginResult(loginInfo,data)
+        val isStudentClient = BaseConstant.isStudentClient()
+        if (isStudentClient) {
+            addSubscribe(
+                create<UserApi>(UserApi::class.java).queryUserInfo(),
+                object : BaseObserver<StudentUserInfo>(view) {
+                    override fun onSuccess(data: StudentUserInfo) {
+                        if (view != null) {
+                            view.onLoginResult(loginInfo, data.tenantId)
+                        }
                     }
-                }
-            })
+                })
+        } else {
+            addSubscribe(
+                create<UserApi>(UserApi::class.java).getTeacherUserInfo(),
+                object : BaseObserver<TeacherUserInfo>(view) {
+                    override fun onSuccess(data: TeacherUserInfo) {
+                        if (view != null) {
+                            view.onLoginResult(loginInfo, data.tenantId)
+                        }
+                    }
+                })
+        }
     }
 
 }

+ 22 - 7
usercenter/src/main/java/com/cooleshow/usercenter/presenter/VerifyLoginPresenter.java

@@ -11,6 +11,8 @@ import com.cooleshow.base.utils.DeviceUtils;
 import com.cooleshow.base.utils.ErrorParse;
 import com.cooleshow.base.utils.ToastUtil;
 import com.cooleshow.base.utils.ToastUtils;
+import com.cooleshow.usercenter.bean.StudentUserInfo;
+import com.cooleshow.usercenter.bean.TeacherUserInfo;
 import com.cooleshow.usercenter.bean.UserInfo;
 import com.cooleshow.usercenter.bean.UserLoginInfo;
 import com.cooleshow.usercenter.constants.UserConstants;
@@ -135,13 +137,26 @@ public class VerifyLoginPresenter extends BasePresenter<VerifyLoginContract.Veri
     }
 
     public void queryUserInfo(UserLoginInfo loginInfo) {
-        addSubscribe(create(UserApi.class).getUserInfo(BaseConstant.CLIENT_TYPE), new BaseObserver<UserInfo>(getView()) {
-            @Override
-            protected void onSuccess(UserInfo data) {
-                if (getView() != null) {
-                    getView().loginByCodeSuccess(loginInfo, data);
+        boolean isStudentClient = BaseConstant.isStudentClient();
+        if(isStudentClient){
+            addSubscribe(create(UserApi.class).queryUserInfo(), new BaseObserver<StudentUserInfo>(getView()) {
+                @Override
+                protected void onSuccess(StudentUserInfo data) {
+                    if (getView() != null) {
+                        getView().loginByCodeSuccess(loginInfo, data.tenantId);
+                    }
                 }
-            }
-        });
+            });
+        }else{
+            addSubscribe(create(UserApi.class).getTeacherUserInfo(), new BaseObserver<TeacherUserInfo>(getView()) {
+                @Override
+                protected void onSuccess(TeacherUserInfo data) {
+                    if (getView() != null) {
+                        getView().loginByCodeSuccess(loginInfo, data.tenantId);
+                    }
+                }
+            });
+        }
+
     }
 }

+ 1 - 1
usercenter/src/main/java/com/cooleshow/usercenter/presenter/contract/LoginContract.java

@@ -10,7 +10,7 @@ import com.cooleshow.usercenter.bean.UserLoginInfo;
 public interface LoginContract {
 
     interface LoginView extends BaseView {
-        void onLoginResult(UserLoginInfo userInfo, UserInfo data);
+        void onLoginResult(UserLoginInfo userInfo, int tenantId);
     }
 
     interface Presenter {

+ 1 - 1
usercenter/src/main/java/com/cooleshow/usercenter/presenter/contract/VerifyLoginContract.java

@@ -11,7 +11,7 @@ public interface VerifyLoginContract {
     interface VerifyLoginView extends BaseView {
         void sendVerifyCodeSuccess();
         void sendVerifyCodeFail();
-        void loginByCodeSuccess(UserLoginInfo data, UserInfo userInfo);
+        void loginByCodeSuccess(UserLoginInfo data, int tenantId);
     }
 
     interface Presenter {

+ 4 - 4
usercenter/src/main/java/com/cooleshow/usercenter/ui/activity/LoginActivity.kt

@@ -91,17 +91,17 @@ class LoginActivity : BaseMVPActivity<ActivityLoginBinding, LoginPresenter>(),
     /**
      * 登录成功
      */
-    override fun onLoginResult(result: UserLoginInfo, userInfo: UserInfo) {
+    override fun onLoginResult(result: UserLoginInfo, tenantId: Int) {
         if (isFinishing || isDestroyed) {
             return;
         }
-        if (userInfo.tenantId != UserConstants.NO_HAVE_TENANT) {
-            UserHelper.addTenantIdParams(userInfo.tenantId)
+        if (tenantId != UserConstants.NO_HAVE_TENANT) {
+            UserHelper.addTenantIdParams(tenantId)
         } else {
             UserHelper.removeTenantIdParams()
         }
         UserHelper.handleLoginSuccessAction(result)
-        setLoginResult(userInfo.tenantId)
+        setLoginResult(tenantId)
     }
 
     private fun setLoginResult(tenantId: Int) {

+ 4 - 4
usercenter/src/main/java/com/cooleshow/usercenter/ui/activity/VerifyCodeInputActivity.java

@@ -192,15 +192,15 @@ public class VerifyCodeInputActivity extends BaseMVPActivity<ActivityInputCodeLa
     }
 
     @Override
-    public void loginByCodeSuccess(UserLoginInfo data, UserInfo userInfo) {
+    public void loginByCodeSuccess(UserLoginInfo data, int tenantId) {
         //添加公共参数
         if (isFinishing() || isDestroyed()) {
             return;
         }
         if (data != null) {
-            if (userInfo.getTenantId() != UserConstants.NO_HAVE_TENANT) {
-                this.tenantId = userInfo.getTenantId();
-                UserHelper.addTenantIdParams(userInfo.getTenantId());
+            if (tenantId != UserConstants.NO_HAVE_TENANT) {
+                this.tenantId = tenantId;
+                UserHelper.addTenantIdParams(tenantId);
             } else {
                 UserHelper.removeTenantIdParams();
             }