Commit dec8c936 by 罗翻

增加资质说明

parent 7b966d09
Showing with 506 additions and 7 deletions
...@@ -33,6 +33,7 @@ ...@@ -33,6 +33,7 @@
<color name="tv_bg">#FFEFEFF4</color> <color name="tv_bg">#FFEFEFF4</color>
<color name="tv_cl">#FF888888</color> <color name="tv_cl">#FF888888</color>
<color name="common_red">#FF5A4B</color> <color name="common_red">#FF5A4B</color>
<color name="light_grey">#FF666666</color>
......
...@@ -29,6 +29,7 @@ ...@@ -29,6 +29,7 @@
<string name="tv_person_center_phone">暂无</string> <string name="tv_person_center_phone">暂无</string>
<string name="tv_person_center_fen">3.5分</string> <string name="tv_person_center_fen">3.5分</string>
<string name="tv_person_center_jinriyeji">今日业绩(元)</string> <string name="tv_person_center_jinriyeji">今日业绩(元)</string>
<string name="tv_person_center_licence">认证资质</string>
<string name="tv_person_center_jinrijiedan">账户余额</string> <string name="tv_person_center_jinrijiedan">账户余额</string>
<string name="tv_person_center_jinriyeji_value">8</string> <string name="tv_person_center_jinriyeji_value">8</string>
<string name="tv_login">&#160;</string> <string name="tv_login">&#160;</string>
......
...@@ -9,7 +9,7 @@ buildscript { ...@@ -9,7 +9,7 @@ buildscript {
ext.verson_name = "1.4.0" ext.verson_name = "1.4.0"
ext.gradle_version = '3.0.1' ext.gradle_version = '3.0.1'
ext.isReleaseMinify = true ext.isReleaseMinify = true
ext.isDebugMinify = false ext.isDebugMinify = true
ext.arouter_api_version = '1.3.1' ext.arouter_api_version = '1.3.1'
ext.arouter_compiler_version = '1.1.4' ext.arouter_compiler_version = '1.1.4'
......
...@@ -38,5 +38,11 @@ ...@@ -38,5 +38,11 @@
<activity <activity
android:name=".ui.activity.WithdrawalsActivity" android:name=".ui.activity.WithdrawalsActivity"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<activity
android:name=".ui.activity.QualityCertificationActivity"
android:screenOrientation="portrait" />
<activity
android:name=".ui.activity.LicenceDetailActivity"
android:screenOrientation="portrait" />
</application> </application>
</manifest> </manifest>
...@@ -6,10 +6,13 @@ import com.dayu.event.UserInfo; ...@@ -6,10 +6,13 @@ import com.dayu.event.UserInfo;
import com.dayu.usercenter.data.protocol.AccountBalance; import com.dayu.usercenter.data.protocol.AccountBalance;
import com.dayu.usercenter.data.protocol.AlipayInfo; import com.dayu.usercenter.data.protocol.AlipayInfo;
import com.dayu.usercenter.data.protocol.EngineerInfo; import com.dayu.usercenter.data.protocol.EngineerInfo;
import com.dayu.usercenter.data.protocol.LicenceInfo;
import com.dayu.usercenter.data.protocol.OrderRecord; import com.dayu.usercenter.data.protocol.OrderRecord;
import com.dayu.usercenter.data.protocol.TodayAchievement; import com.dayu.usercenter.data.protocol.TodayAchievement;
import com.dayu.usercenter.data.protocol.TodayBalance; import com.dayu.usercenter.data.protocol.TodayBalance;
import java.util.List;
import io.reactivex.Observable; import io.reactivex.Observable;
import okhttp3.RequestBody; import okhttp3.RequestBody;
...@@ -66,4 +69,12 @@ public class UserApiFactory { ...@@ -66,4 +69,12 @@ public class UserApiFactory {
public static Observable<Boolean> modifyAlipay(RequestBody body) { public static Observable<Boolean> modifyAlipay(RequestBody body) {
return Api.getService(UserService.class).modifyAlipay(body).compose(Api.applySchedulers()); return Api.getService(UserService.class).modifyAlipay(body).compose(Api.applySchedulers());
} }
public static Observable<List<LicenceInfo>> getLicences(int accountId) {
return Api.getService(UserService.class).getLicences(accountId).compose(Api.applySchedulers());
}
public static Observable<LicenceInfo> getLicence(int id) {
return Api.getService(UserService.class).getLicence(id).compose(Api.applySchedulers());
}
} }
...@@ -8,10 +8,13 @@ import com.dayu.usercenter.common.UserConstant; ...@@ -8,10 +8,13 @@ import com.dayu.usercenter.common.UserConstant;
import com.dayu.usercenter.data.protocol.AccountBalance; import com.dayu.usercenter.data.protocol.AccountBalance;
import com.dayu.usercenter.data.protocol.AlipayInfo; import com.dayu.usercenter.data.protocol.AlipayInfo;
import com.dayu.usercenter.data.protocol.EngineerInfo; import com.dayu.usercenter.data.protocol.EngineerInfo;
import com.dayu.usercenter.data.protocol.LicenceInfo;
import com.dayu.usercenter.data.protocol.OrderRecord; import com.dayu.usercenter.data.protocol.OrderRecord;
import com.dayu.usercenter.data.protocol.TodayAchievement; import com.dayu.usercenter.data.protocol.TodayAchievement;
import com.dayu.usercenter.data.protocol.TodayBalance; import com.dayu.usercenter.data.protocol.TodayBalance;
import java.util.List;
import io.reactivex.Observable; import io.reactivex.Observable;
import okhttp3.RequestBody; import okhttp3.RequestBody;
import retrofit2.http.Body; import retrofit2.http.Body;
...@@ -141,4 +144,21 @@ public interface UserService { ...@@ -141,4 +144,21 @@ public interface UserService {
*/ */
@POST(UserConstant.PERSONAL_ALIPAY_MODIFY) @POST(UserConstant.PERSONAL_ALIPAY_MODIFY)
Observable<BaseResponse<Boolean>> modifyAlipay(@Body RequestBody body); Observable<BaseResponse<Boolean>> modifyAlipay(@Body RequestBody body);
/**
* 获取资质列表.
*
* @param accountId
* @return
*/
@GET(UserConstant.PERSON_LICENCES)
Observable<BaseResponse<List<LicenceInfo>>> getLicences(@Path("accountId") int accountId);
/**
* 获取资质详情.
* @param id
* @return
*/
@GET(UserConstant.PERSON_LICENCE)
Observable<BaseResponse<LicenceInfo>> getLicence(@Path("id") int id);
} }
...@@ -59,4 +59,11 @@ public class UserConstant { ...@@ -59,4 +59,11 @@ public class UserConstant {
*/ */
public final static String USER_REVENUE = "/api-count/" + "ordersStatistics/total/siteId/{siteId}/engineerId/{engineerId}"; public final static String USER_REVENUE = "/api-count/" + "ordersStatistics/total/siteId/{siteId}/engineerId/{engineerId}";
/**
* 获取资质列表.
*/
public final static String PERSON_LICENCES = "/api-user/" + "licenceInfo/accountId/{accountId}";
public final static String PERSON_LICENCE = "/api-user/" + "licenceInfo/{id}";
} }
package com.dayu.usercenter.data.protocol;
/**
* Created by luofan
* on 2018/5/3.
*/
public class LicenceInfo {
private String url;
private String name;
private String licenceAuthorityName;
private String detail;
private int id;
public String getDetail() {
return detail;
}
public void setDetail(String detail) {
this.detail = detail;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getLicenceAuthorityName() {
return licenceAuthorityName;
}
public void setLicenceAuthorityName(String licenceAuthorityName) {
this.licenceAuthorityName = licenceAuthorityName;
}
}
package com.dayu.usercenter.data.protocol; package com.dayu.usercenter.data.protocol;
/** /**
* Created by luofan on 2017/11/14. * Created by luofan
* on 2017/11/14.
*/ */
public class OrderRecord { public class OrderRecord {
...@@ -13,6 +14,15 @@ public class OrderRecord { ...@@ -13,6 +14,15 @@ public class OrderRecord {
private double cumulativeIncome; private double cumulativeIncome;
private int orderRecord; private int orderRecord;
private double score; private double score;
private int licenceInfoNum;
public int getLicenceInfoNum() {
return licenceInfoNum;
}
public void setLicenceInfoNum(int licenceInfoNum) {
this.licenceInfoNum = licenceInfoNum;
}
public double getScore() { public double getScore() {
return score; return score;
......
...@@ -41,6 +41,7 @@ public interface HomeFourContract { ...@@ -41,6 +41,7 @@ public interface HomeFourContract {
* 跳转到工单记录. * 跳转到工单记录.
*/ */
void dumpToOrderRecord(); void dumpToOrderRecord();
} }
abstract class Presenter extends BasePresenter<View> { abstract class Presenter extends BasePresenter<View> {
...@@ -68,5 +69,10 @@ public interface HomeFourContract { ...@@ -68,5 +69,10 @@ public interface HomeFourContract {
* 跳转到个人资料. * 跳转到个人资料.
*/ */
public abstract void dumpToPersonalInfo(); public abstract void dumpToPersonalInfo();
/**
* 跳转到资质列表.
*/
public abstract void dumpToLicence();
} }
} }
...@@ -9,6 +9,7 @@ import com.dayu.usercenter.data.protocol.OrderRecord; ...@@ -9,6 +9,7 @@ import com.dayu.usercenter.data.protocol.OrderRecord;
import com.dayu.usercenter.data.protocol.TodayAchievement; import com.dayu.usercenter.data.protocol.TodayAchievement;
import com.dayu.usercenter.data.protocol.TodayBalance; import com.dayu.usercenter.data.protocol.TodayBalance;
import com.dayu.usercenter.ui.activity.PersonInfoActivity; import com.dayu.usercenter.ui.activity.PersonInfoActivity;
import com.dayu.usercenter.ui.activity.QualityCertificationActivity;
import com.umeng.analytics.MobclickAgent; import com.umeng.analytics.MobclickAgent;
import io.reactivex.Observable; import io.reactivex.Observable;
...@@ -67,6 +68,11 @@ public class HomePersonPresenter extends HomeFourContract.Presenter { ...@@ -67,6 +68,11 @@ public class HomePersonPresenter extends HomeFourContract.Presenter {
} }
@Override @Override
public void dumpToLicence() {
mView.startActivity(QualityCertificationActivity.class);
}
@Override
public void dumpToPersonalInfo() { public void dumpToPersonalInfo() {
mView.startActivity(PersonInfoActivity.class); mView.startActivity(PersonInfoActivity.class);
MobclickAgent.onEvent(BaseApplication.getContext(), "check_personInfo"); MobclickAgent.onEvent(BaseApplication.getContext(), "check_personInfo");
......
package com.dayu.usercenter.presenter.licencedetail;
import com.dayu.base.ui.presenter.BasePresenter;
import com.dayu.common.BaseView;
/**
* Created by luo
* on 2016/8/4.
*/
public interface LicenceDetailContract {
interface View extends BaseView {
}
abstract class Presenter extends BasePresenter<View> {
public abstract void getLicence();
}
}
package com.dayu.usercenter.presenter.licencedetail;
import android.databinding.ObservableField;
import com.dayu.common.Constants;
import com.dayu.usercenter.api.UserApiFactory;
import com.dayu.usercenter.data.protocol.LicenceInfo;
/**
* Created by luofan
* on 2017/11/14.
*/
public class LicenceDetailPresenter extends LicenceDetailContract.Presenter {
public ObservableField<LicenceInfo> mItem = new ObservableField<>();
private int mId;
@Override
public void onAttached() {
mId = mView.getBundle().getInt(Constants.ID);
getLicence();
}
@Override
public void getLicence() {
mView.showDialog();
UserApiFactory.getLicence(mId).subscribe(baseObserver(licenceInfo -> mItem.set(licenceInfo)));
}
}
package com.dayu.usercenter.presenter.quality;
import com.dayu.base.ui.presenter.BaseListPresenter;
import com.dayu.common.BaseView;
/**
* Created by luo
* on 2016/8/4.
*/
public interface QualityCertificaitonContract {
interface View extends BaseView {
}
abstract class Presenter extends BaseListPresenter<View> {
public abstract void getLicences();
}
}
package com.dayu.usercenter.presenter.quality;
import android.databinding.ObservableField;
import com.dayu.usercenter.api.UserApiFactory;
import com.dayu.utils.UserManager;
/**
* Created by luofan
* on 2017/11/14.
*/
public class QualityCertificaitonPresenter extends QualityCertificaitonContract.Presenter {
public ObservableField<Object> mDatas = new ObservableField<>();
private int mAccountId;
@Override
public void onAttached() {
mAccountId = Integer.parseInt(UserManager.getInstance().getUser().getAccountId());
getLicences();
}
@Override
public ObservableField<Object> getSourceDatas() {
return mDatas;
}
@Override
public void getLicences() {
UserApiFactory.getLicences(mAccountId).subscribe(baseObserver(licenceInfos -> mDatas.set(licenceInfos)));
}
@Override
public void refresh() {
getLicences();
}
}
...@@ -5,7 +5,8 @@ import com.dayu.usercenter.R; ...@@ -5,7 +5,8 @@ import com.dayu.usercenter.R;
import com.dayu.usercenter.databinding.ActivityAgreementBinding; import com.dayu.usercenter.databinding.ActivityAgreementBinding;
/** /**
* Created by luofan on 2017/11/13. * Created by luofan
* on 2017/11/13.
*/ */
public class AgreementActivity extends DataBindingActivity<ActivityAgreementBinding> { public class AgreementActivity extends DataBindingActivity<ActivityAgreementBinding> {
......
package com.dayu.usercenter.ui.activity;
import com.dayu.base.ui.activity.BaseActivity;
import com.dayu.usercenter.R;
import com.dayu.usercenter.databinding.ActivityLicenceDetailBinding;
import com.dayu.usercenter.presenter.licencedetail.LicenceDetailContract;
import com.dayu.usercenter.presenter.licencedetail.LicenceDetailPresenter;
/**
* Created by luofan
* on 2018/5/3.
*/
public class LicenceDetailActivity extends BaseActivity<LicenceDetailPresenter, ActivityLicenceDetailBinding> implements LicenceDetailContract.View {
@Override
public int getLayoutId() {
return R.layout.activity_licence_detail;
}
@Override
public void initView() {
mBind.tvTitle.setText("资质说明");
}
@Override
public void setPresenter() {
mBind.setPresenter(mPresenter);
}
}
package com.dayu.usercenter.ui.activity;
import android.os.Bundle;
import com.dayu.base.ui.activity.BaseActivity;
import com.dayu.common.Constants;
import com.dayu.usercenter.R;
import com.dayu.usercenter.data.protocol.LicenceInfo;
import com.dayu.usercenter.databinding.ActivityQualityCertificationBinding;
import com.dayu.usercenter.databinding.ItemQualityCertificationBinding;
import com.dayu.usercenter.presenter.quality.QualityCertificaitonContract;
import com.dayu.usercenter.presenter.quality.QualityCertificaitonPresenter;
import com.dayu.widgets.listener.OnItemClickListener;
/**
* Created by luofan
* on 2018/5/3.
*/
public class QualityCertificationActivity extends BaseActivity<QualityCertificaitonPresenter, ActivityQualityCertificationBinding>
implements QualityCertificaitonContract.View {
@Override
public void setPresenter() {
mBind.setPresenter(mPresenter);
}
@Override
public int getLayoutId() {
return R.layout.activity_quality_certification;
}
@Override
public void initView() {
mBind.tvTitle.setText("认证资质");
mBind.recyclerView.setOnItemClickListener(new OnItemClickListener<LicenceInfo, ItemQualityCertificationBinding>() {
@Override
public void OnItemClick(LicenceInfo item, ItemQualityCertificationBinding bind) {
Bundle bundle = new Bundle();
bundle.putInt(Constants.ID, item.getId());
startActivity(LicenceDetailActivity.class, bundle);
}
});
}
}
...@@ -112,7 +112,7 @@ public class HomePersonFragment extends BaseFragment<HomePersonPresenter, Fragme ...@@ -112,7 +112,7 @@ public class HomePersonFragment extends BaseFragment<HomePersonPresenter, Fragme
@Override @Override
public void getOrderRecordSuccess(OrderRecord record) { public void getOrderRecordSuccess(OrderRecord record) {
//累计业绩 //累计业绩
mBind.tvAllAchivement.setText(record.getCumulativeIncome() + ""); mBind.tvAllAchivement.setText(record.getLicenceInfoNum() + "");
//工单记录 //工单记录
mBind.tvOrderRecord.setText(record.getOrderRecord() + ""); mBind.tvOrderRecord.setText(record.getOrderRecord() + "");
//个人评分 //个人评分
...@@ -252,7 +252,7 @@ public class HomePersonFragment extends BaseFragment<HomePersonPresenter, Fragme ...@@ -252,7 +252,7 @@ public class HomePersonFragment extends BaseFragment<HomePersonPresenter, Fragme
public void onResume() { public void onResume() {
super.onResume(); super.onResume();
UserInfo userInfo = UserManager.getInstance().getUser(); UserInfo userInfo = UserManager.getInstance().getUser();
if(userInfo!=null){ if (userInfo != null) {
mPresenter.mUrl.set(userInfo.getHeaderImg()); mPresenter.mUrl.set(userInfo.getHeaderImg());
} }
} }
......
...@@ -30,6 +30,12 @@ ...@@ -30,6 +30,12 @@
android:name=".ui.activity.LoginActivity" android:name=".ui.activity.LoginActivity"
android:launchMode="singleTask" android:launchMode="singleTask"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<activity
android:name=".ui.activity.QualityCertificationActivity"
android:screenOrientation="portrait" />
<activity
android:name=".ui.activity.LicenceDetailActivity"
android:screenOrientation="portrait" />
</application> </application>
</manifest> </manifest>
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android">
<data>
<variable
name="presenter"
type="com.dayu.usercenter.presenter.licencedetail.LicenceDetailPresenter" />
</data>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<RelativeLayout
android:id="@+id/title_back"
style="@style/title">
<TextView
android:id="@+id/tv_title"
style="@style/text_title" />
<ImageView
android:id="@+id/receiving_back"
style="@style/title_image_back"
android:onClick="@{()->presenter.dumpBack()}"
/>
</RelativeLayout>
<ImageView style="@style/card_line" />
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/white">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center_horizontal"
android:orientation="vertical">
<ImageView
imageUrl="@{presenter.mItem.url}"
android:layout_width="@dimen/dp_60"
android:layout_height="@dimen/dp_60"
android:layout_marginBottom="22.2dp"
android:layout_marginTop="28dp"
android:src="@drawable/ic_camera" />
<TextView
android:id="@+id/tv_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text='@{presenter.mItem.name,default="维修电脑初级工程师》"}'
android:textColor="@color/default_text_color"
android:textSize="16sp" />
<TextView
android:id="@+id/certificaiton_authority"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/dp_20"
android:layout_marginTop="10dp"
android:text='@{presenter.mItem.licenceAuthorityName,default="大鱼官方认证"}'
android:textColor="@color/default_editext_color"
android:textSize="14sp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/dp_20"
android:layout_marginRight="@dimen/dp_20"
android:text="@{presenter.mItem.detail}"
android:textColor="@color/light_grey"
android:textSize="14sp" />
</LinearLayout>
</ScrollView>
</LinearLayout>
</layout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<data>
<variable
name="presenter"
type="com.dayu.base.ui.presenter.BaseListPresenter" />
</data>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<RelativeLayout
android:id="@+id/title_back"
style="@style/title">
<TextView
android:id="@+id/tv_title"
style="@style/text_title" />
<ImageView
android:id="@+id/receiving_back"
style="@style/title_image_back"
android:onClick="@{()->presenter.dumpBack()}"
/>
</RelativeLayout>
<ImageView style="@style/card_line" />
<com.dayu.widgets.LRecyclerView
android:id="@+id/recyclerView"
setPresenter="@{presenter}"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#f5f5f5"
app:itemType="@layout/item_quality_certification"
app:needCoreAdapter="true" />
</LinearLayout>
</layout>
\ No newline at end of file
...@@ -276,7 +276,8 @@ ...@@ -276,7 +276,8 @@
<RelativeLayout <RelativeLayout
android:layout_width="160dp" android:layout_width="160dp"
android:layout_height="100dp" android:layout_height="100dp"
android:background="@drawable/personal_center_selector"> android:background="@drawable/personal_center_selector"
android:onClick="@{()->presenter.dumpToLicence()}">
<TextView <TextView
android:id="@+id/text_leiji" android:id="@+id/text_leiji"
...@@ -284,7 +285,7 @@ ...@@ -284,7 +285,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_centerHorizontal="true" android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/dp_16.7" android:layout_marginTop="@dimen/dp_16.7"
android:text="@string/tv_person_center_leijiyeji" android:text="@string/tv_person_center_licence"
android:textColor="@color/cl_home_title_text_color" android:textColor="@color/cl_home_title_text_color"
android:textSize="@dimen/sp_12" /> android:textSize="@dimen/sp_12" />
......
<?xml version="1.0" encoding="utf-8"?>
<layout>
<data>
<variable
name="item"
type="com.dayu.usercenter.data.protocol.LicenceInfo" />
</data>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="70dp"
android:layout_marginBottom="@dimen/dp_13"
android:layout_marginLeft="@dimen/dp_10"
android:layout_marginRight="@dimen/dp_10"
android:background="@color/white">
<ImageView
android:id="@+id/iv_quality"
imageUrl="@{item.url}"
android:layout_width="30dp"
android:layout_height="30dp"
android:layout_centerVertical="true"
android:layout_marginLeft="20dp"
android:layout_marginRight="@dimen/dp_27" />
<TextView
android:id="@+id/tv_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_10"
android:layout_toRightOf="@+id/iv_quality"
android:text='@{item.name}'
android:textColor="@color/default_text_color"
android:textSize="16sp" />
<TextView
android:id="@+id/certificaiton_authority"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/tv_name"
android:layout_marginBottom="@dimen/dp_10"
android:layout_marginTop="10dp"
android:layout_toRightOf="@+id/iv_quality"
android:text='@{item.licenceAuthorityName}'
android:textColor="@color/default_editext_color"
android:textSize="14sp" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="25.7dp"
android:src="@drawable/icon_arrow_right" />
</RelativeLayout>
</layout>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment