Commit dec8c936 by 罗翻

增加资质说明

parent 7b966d09
Showing with 506 additions and 7 deletions
......@@ -33,6 +33,7 @@
<color name="tv_bg">#FFEFEFF4</color>
<color name="tv_cl">#FF888888</color>
<color name="common_red">#FF5A4B</color>
<color name="light_grey">#FF666666</color>
......
......@@ -29,6 +29,7 @@
<string name="tv_person_center_phone">暂无</string>
<string name="tv_person_center_fen">3.5分</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_jinriyeji_value">8</string>
<string name="tv_login">&#160;</string>
......
......@@ -9,7 +9,7 @@ buildscript {
ext.verson_name = "1.4.0"
ext.gradle_version = '3.0.1'
ext.isReleaseMinify = true
ext.isDebugMinify = false
ext.isDebugMinify = true
ext.arouter_api_version = '1.3.1'
ext.arouter_compiler_version = '1.1.4'
......
......@@ -38,5 +38,11 @@
<activity
android:name=".ui.activity.WithdrawalsActivity"
android:screenOrientation="portrait" />
<activity
android:name=".ui.activity.QualityCertificationActivity"
android:screenOrientation="portrait" />
<activity
android:name=".ui.activity.LicenceDetailActivity"
android:screenOrientation="portrait" />
</application>
</manifest>
......@@ -6,10 +6,13 @@ import com.dayu.event.UserInfo;
import com.dayu.usercenter.data.protocol.AccountBalance;
import com.dayu.usercenter.data.protocol.AlipayInfo;
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.TodayAchievement;
import com.dayu.usercenter.data.protocol.TodayBalance;
import java.util.List;
import io.reactivex.Observable;
import okhttp3.RequestBody;
......@@ -66,4 +69,12 @@ public class UserApiFactory {
public static Observable<Boolean> modifyAlipay(RequestBody body) {
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;
import com.dayu.usercenter.data.protocol.AccountBalance;
import com.dayu.usercenter.data.protocol.AlipayInfo;
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.TodayAchievement;
import com.dayu.usercenter.data.protocol.TodayBalance;
import java.util.List;
import io.reactivex.Observable;
import okhttp3.RequestBody;
import retrofit2.http.Body;
......@@ -141,4 +144,21 @@ public interface UserService {
*/
@POST(UserConstant.PERSONAL_ALIPAY_MODIFY)
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 {
*/
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;
/**
* Created by luofan on 2017/11/14.
* Created by luofan
* on 2017/11/14.
*/
public class OrderRecord {
......@@ -13,6 +14,15 @@ public class OrderRecord {
private double cumulativeIncome;
private int orderRecord;
private double score;
private int licenceInfoNum;
public int getLicenceInfoNum() {
return licenceInfoNum;
}
public void setLicenceInfoNum(int licenceInfoNum) {
this.licenceInfoNum = licenceInfoNum;
}
public double getScore() {
return score;
......
......@@ -41,6 +41,7 @@ public interface HomeFourContract {
* 跳转到工单记录.
*/
void dumpToOrderRecord();
}
abstract class Presenter extends BasePresenter<View> {
......@@ -68,5 +69,10 @@ public interface HomeFourContract {
* 跳转到个人资料.
*/
public abstract void dumpToPersonalInfo();
/**
* 跳转到资质列表.
*/
public abstract void dumpToLicence();
}
}
......@@ -9,6 +9,7 @@ import com.dayu.usercenter.data.protocol.OrderRecord;
import com.dayu.usercenter.data.protocol.TodayAchievement;
import com.dayu.usercenter.data.protocol.TodayBalance;
import com.dayu.usercenter.ui.activity.PersonInfoActivity;
import com.dayu.usercenter.ui.activity.QualityCertificationActivity;
import com.umeng.analytics.MobclickAgent;
import io.reactivex.Observable;
......@@ -67,6 +68,11 @@ public class HomePersonPresenter extends HomeFourContract.Presenter {
}
@Override
public void dumpToLicence() {
mView.startActivity(QualityCertificationActivity.class);
}
@Override
public void dumpToPersonalInfo() {
mView.startActivity(PersonInfoActivity.class);
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;
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> {
......
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
@Override
public void getOrderRecordSuccess(OrderRecord record) {
//累计业绩
mBind.tvAllAchivement.setText(record.getCumulativeIncome() + "");
mBind.tvAllAchivement.setText(record.getLicenceInfoNum() + "");
//工单记录
mBind.tvOrderRecord.setText(record.getOrderRecord() + "");
//个人评分
......@@ -252,7 +252,7 @@ public class HomePersonFragment extends BaseFragment<HomePersonPresenter, Fragme
public void onResume() {
super.onResume();
UserInfo userInfo = UserManager.getInstance().getUser();
if(userInfo!=null){
if (userInfo != null) {
mPresenter.mUrl.set(userInfo.getHeaderImg());
}
}
......
......@@ -30,6 +30,12 @@
android:name=".ui.activity.LoginActivity"
android:launchMode="singleTask"
android:screenOrientation="portrait" />
<activity
android:name=".ui.activity.QualityCertificationActivity"
android:screenOrientation="portrait" />
<activity
android:name=".ui.activity.LicenceDetailActivity"
android:screenOrientation="portrait" />
</application>
</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 @@
<RelativeLayout
android:layout_width="160dp"
android:layout_height="100dp"
android:background="@drawable/personal_center_selector">
android:background="@drawable/personal_center_selector"
android:onClick="@{()->presenter.dumpToLicence()}">
<TextView
android:id="@+id/text_leiji"
......@@ -284,7 +285,7 @@
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
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: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