Commit 26b2c06b by mReturn

修改留言

parent b4d6d947
Showing with 384 additions and 525 deletions

19 KB | W: | H:

223 KB | W: | H:

baseSDK/src/main/res/drawable-xxhdpi/icon_money_bag2.png
baseSDK/src/main/res/drawable-xxhdpi/icon_money_bag2.png
baseSDK/src/main/res/drawable-xxhdpi/icon_money_bag2.png
baseSDK/src/main/res/drawable-xxhdpi/icon_money_bag2.png
  • 2-up
  • Swipe
  • Onion skin
...@@ -15,6 +15,18 @@ ...@@ -15,6 +15,18 @@
</style> </style>
<style name="user_info_text">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:textSize">@dimen/size_login_hint_text</item>
<!--<item name="android:textSize">12sp</item>-->
<item name="android:textColor">#5a5a5a</item>
</style>
<style name="user_info_text2" parent="user_info_text">
<item name="android:layout_marginLeft">3dp</item>
</style>
<style name="sale_linearlayout"> <style name="sale_linearlayout">
<item name="android:layout_width">match_parent</item> <item name="android:layout_width">match_parent</item>
<item name="android:layout_height">wrap_content</item> <item name="android:layout_height">wrap_content</item>
...@@ -54,7 +66,7 @@ ...@@ -54,7 +66,7 @@
<style name="sale_detail_text2" parent="sale_item_text"> <style name="sale_detail_text2" parent="sale_item_text">
<item name="android:layout_marginLeft">3dp</item> <item name="android:layout_marginLeft">3dp</item>
<item name="android:maxLines">5</item> <item name="android:maxLines">10</item>
</style> </style>
<style name="sale_record_text" parent="sale_item_text"> <style name="sale_record_text" parent="sale_item_text">
......
...@@ -5,6 +5,7 @@ import com.dayu.base.api.protocol.BasePageBean; ...@@ -5,6 +5,7 @@ import com.dayu.base.api.protocol.BasePageBean;
import com.dayu.base.api.protocol.BaseResponse; import com.dayu.base.api.protocol.BaseResponse;
import com.dayu.order.api.protocol.CommentBean; import com.dayu.order.api.protocol.CommentBean;
import com.dayu.order.api.protocol.CommentPostData; import com.dayu.order.api.protocol.CommentPostData;
import com.dayu.order.api.protocol.CommentReplyData;
import com.dayu.order.api.protocol.ErrorOrder; import com.dayu.order.api.protocol.ErrorOrder;
import com.dayu.order.api.protocol.KaAddress; import com.dayu.order.api.protocol.KaAddress;
import com.dayu.order.api.protocol.LogsticsInfo; import com.dayu.order.api.protocol.LogsticsInfo;
...@@ -178,9 +179,12 @@ public class OrderApiFactory { ...@@ -178,9 +179,12 @@ public class OrderApiFactory {
} }
public static Observable<BasePageBean<CommentBean>> getComment(int targetId, int status, int targetType,int accountType, int page, int pageSize) { public static Observable<BasePageBean<CommentBean>> getComment(int targetId, int status, int targetType,int accountType, int page, int pageSize) {
return Api.getService(OrderService.class).getComment(targetId, status, targetType,accountType, page, pageSize).compose(Api.applySchedulers()); return Api.getService(OrderService.class).getComment(targetId, page, pageSize).compose(Api.applySchedulers());
} }
public static Observable<Boolean> addComment(CommentPostData data) { public static Observable<Boolean> addComment(CommentPostData data) {
return Api.getService(OrderService.class).addComment(data).compose(Api.applySchedulers()); return Api.getService(OrderService.class).addComment(data).compose(Api.applySchedulers());
} }
public static Observable<Boolean> addCommentReply(CommentReplyData data) {
return Api.getService(OrderService.class).addCommentReply(data).compose(Api.applySchedulers());
}
} }
...@@ -2,8 +2,10 @@ package com.dayu.order.api; ...@@ -2,8 +2,10 @@ package com.dayu.order.api;
import com.dayu.base.api.protocol.BasePageBean; import com.dayu.base.api.protocol.BasePageBean;
import com.dayu.base.api.protocol.BaseResponse; import com.dayu.base.api.protocol.BaseResponse;
import com.dayu.common.Constants;
import com.dayu.order.api.protocol.CommentBean; import com.dayu.order.api.protocol.CommentBean;
import com.dayu.order.api.protocol.CommentPostData; import com.dayu.order.api.protocol.CommentPostData;
import com.dayu.order.api.protocol.CommentReplyData;
import com.dayu.order.api.protocol.ErrorOrder; import com.dayu.order.api.protocol.ErrorOrder;
import com.dayu.order.api.protocol.KaAddress; import com.dayu.order.api.protocol.KaAddress;
import com.dayu.order.api.protocol.LogsticsInfo; import com.dayu.order.api.protocol.LogsticsInfo;
...@@ -18,6 +20,7 @@ import com.dayu.order.api.protocol.Spu; ...@@ -18,6 +20,7 @@ import com.dayu.order.api.protocol.Spu;
import com.dayu.order.api.protocol.Tab; import com.dayu.order.api.protocol.Tab;
import com.dayu.order.api.protocol.companyManager; import com.dayu.order.api.protocol.companyManager;
import com.dayu.order.common.OrderConstant; import com.dayu.order.common.OrderConstant;
import com.megvii.idcardlib.util.Constant;
import java.util.List; import java.util.List;
...@@ -398,21 +401,20 @@ interface OrderService { ...@@ -398,21 +401,20 @@ interface OrderService {
/** /**
* 获取留言 * 获取留言
* @param targetId
* @param status
* @param targetType
* @return * @return
*/ */
@GET(OrderConstant.COMMENT_URL) @GET(Constants.API_7400+"/leaveMessage/spu/engineer/spuId/{spuId}")
Observable<BaseResponse<BasePageBean<CommentBean>>> getComment(@Query("targetId") int targetId, Observable<BaseResponse<BasePageBean<CommentBean>>> getComment(@Path("spuId") int spuId,
@Query("status") int status,
@Query("targetType") int targetType,
@Query("accountType ") int accountType,
@Query("page") int page, @Query("page") int page,
@Query("pageSize") int pageSize); @Query("pageSize") int pageSize);
/** /**
* 留言/回复 * 留言
*/ */
@POST(OrderConstant.COMMENT_URL) @POST(Constants.API_7400+"/leaveMessage/spu/engineer")
Observable<BaseResponse<Boolean>> addComment(@Body CommentPostData data); Observable<BaseResponse<Boolean>> addComment(@Body CommentPostData data);
/**
* 回复
*/
@POST(Constants.API_7400+"/leaveMessage/spu/engineer")
Observable<BaseResponse<Boolean>> addCommentReply(@Body CommentReplyData data);
} }
...@@ -7,29 +7,14 @@ package com.dayu.order.api.protocol; ...@@ -7,29 +7,14 @@ package com.dayu.order.api.protocol;
public class CommentBean { public class CommentBean {
private int id; private int id;
private int targetId;
private int targetType;
private String targetName;
private int accountId;
private String accountName; private String accountName;
private int accountType; private String beName;
private Object name; private String targetName;
private String messageAvatarUrl;
private int beAccountId;
private Object beName;
private int beMessageId;
private String content; private String content;
private Object reContent;
private String createTime;
private int messageType; private int messageType;
private int parentId;
private String orderNum;
private int status;
private int isRead; private int isRead;
private Object updateTime; private String createTime;
private String updated; private String messageAvatarUrl;
private Object companyId;
private Object keyword;
public int getId() { public int getId() {
return id; return id;
...@@ -39,38 +24,6 @@ public class CommentBean { ...@@ -39,38 +24,6 @@ public class CommentBean {
this.id = id; this.id = id;
} }
public int getTargetId() {
return targetId;
}
public void setTargetId(int targetId) {
this.targetId = targetId;
}
public int getTargetType() {
return targetType;
}
public void setTargetType(int targetType) {
this.targetType = targetType;
}
public String getTargetName() {
return targetName;
}
public void setTargetName(String targetName) {
this.targetName = targetName;
}
public int getAccountId() {
return accountId;
}
public void setAccountId(int accountId) {
this.accountId = accountId;
}
public String getAccountName() { public String getAccountName() {
return accountName; return accountName;
} }
...@@ -79,52 +32,20 @@ public class CommentBean { ...@@ -79,52 +32,20 @@ public class CommentBean {
this.accountName = accountName; this.accountName = accountName;
} }
public int getAccountType() { public String getBeName() {
return accountType;
}
public void setAccountType(int accountType) {
this.accountType = accountType;
}
public Object getName() {
return name;
}
public void setName(Object name) {
this.name = name;
}
public String getMessageAvatarUrl() {
return messageAvatarUrl;
}
public void setMessageAvatarUrl(String messageAvatarUrl) {
this.messageAvatarUrl = messageAvatarUrl;
}
public int getBeAccountId() {
return beAccountId;
}
public void setBeAccountId(int beAccountId) {
this.beAccountId = beAccountId;
}
public Object getBeName() {
return beName; return beName;
} }
public void setBeName(Object beName) { public void setBeName(String beName) {
this.beName = beName; this.beName = beName;
} }
public int getBeMessageId() { public String getTargetName() {
return beMessageId; return targetName;
} }
public void setBeMessageId(int beMessageId) { public void setTargetName(String targetName) {
this.beMessageId = beMessageId; this.targetName = targetName;
} }
public String getContent() { public String getContent() {
...@@ -135,22 +56,6 @@ public class CommentBean { ...@@ -135,22 +56,6 @@ public class CommentBean {
this.content = content; this.content = content;
} }
public Object getReContent() {
return reContent;
}
public void setReContent(Object reContent) {
this.reContent = reContent;
}
public String getCreateTime() {
return createTime;
}
public void setCreateTime(String createTime) {
this.createTime = createTime;
}
public int getMessageType() { public int getMessageType() {
return messageType; return messageType;
} }
...@@ -159,30 +64,6 @@ public class CommentBean { ...@@ -159,30 +64,6 @@ public class CommentBean {
this.messageType = messageType; this.messageType = messageType;
} }
public int getParentId() {
return parentId;
}
public void setParentId(int parentId) {
this.parentId = parentId;
}
public String getOrderNum() {
return orderNum;
}
public void setOrderNum(String orderNum) {
this.orderNum = orderNum;
}
public int getStatus() {
return status;
}
public void setStatus(int status) {
this.status = status;
}
public int getIsRead() { public int getIsRead() {
return isRead; return isRead;
} }
...@@ -191,35 +72,19 @@ public class CommentBean { ...@@ -191,35 +72,19 @@ public class CommentBean {
this.isRead = isRead; this.isRead = isRead;
} }
public Object getUpdateTime() { public String getCreateTime() {
return updateTime; return createTime;
}
public void setUpdateTime(Object updateTime) {
this.updateTime = updateTime;
}
public String getUpdated() {
return updated;
}
public void setUpdated(String updated) {
this.updated = updated;
}
public Object getCompanyId() {
return companyId;
} }
public void setCompanyId(Object companyId) { public void setCreateTime(String createTime) {
this.companyId = companyId; this.createTime = createTime;
} }
public Object getKeyword() { public String getMessageAvatarUrl() {
return keyword; return messageAvatarUrl;
} }
public void setKeyword(Object keyword) { public void setMessageAvatarUrl(String messageAvatarUrl) {
this.keyword = keyword; this.messageAvatarUrl = messageAvatarUrl;
} }
} }
...@@ -5,23 +5,19 @@ package com.dayu.order.api.protocol; ...@@ -5,23 +5,19 @@ package com.dayu.order.api.protocol;
* on 2020\1\9 0009. * on 2020\1\9 0009.
*/ */
public class CommentPostData { public class CommentPostData {
public int accountId; //留言人或回复人ID public int accountId; //留言人或回复人账号ID
public String accountName; //账号名称 public String content; // 留言内容 ,
public int accountType = 1;// 账号类型:1工程师或服务商 2小程序用户 3大鱼公司 , public int targetId; //商品ID ,
public int companyId; //ka companyId public String targetName; //商品名称
public String content; //留言
public String messageAvatarUrl; //头像
public int messageType; //留言类型 1留言 2回复
public String name; //SP名称或KA名称
public int status = 1; //状态 1显示 2屏蔽
public int targetId; //招标、授权、SPM服务ID
public String targetName; //招标授权名称
public int targetType = 3; //类型:1:招标 2:授权 3:SPM服务 4:销售商品
public String updated; //更新人名称
public int beMessageId; //被回复的留言ID public CommentPostData() {
public String beName; //被回复人昵称 }
public int parentId; //父节点
public int beAccountId; //被回复人ID public CommentPostData(int accountId, String content, int targetId, String targetName) {
this.accountId = accountId;
this.content = content;
this.targetId = targetId;
this.targetName = targetName;
}
} }
package com.dayu.order.api.protocol;
public class CommentReplyData {
public int accountId; //留言人或回复人账号ID
public int beMessageId ; //留言人或回复人账号ID
public String content; // 留言内容 ,
public int targetId; //商品ID ,
public String targetName; //商品名称
public CommentReplyData() {
}
public CommentReplyData(int accountId, String content, int targetId, String targetName) {
this.accountId = accountId;
this.content = content;
this.targetId = targetId;
this.targetName = targetName;
}
}
...@@ -7,6 +7,7 @@ import android.text.TextUtils; ...@@ -7,6 +7,7 @@ import android.text.TextUtils;
import android.view.View; import android.view.View;
import com.badoo.mobile.util.WeakHandler; import com.badoo.mobile.util.WeakHandler;
import com.dayu.base.api.Api;
import com.dayu.base.api.protocol.BasePageBean; import com.dayu.base.api.protocol.BasePageBean;
import com.dayu.base.ui.adapter.CoreAdapter; import com.dayu.base.ui.adapter.CoreAdapter;
import com.dayu.base.ui.fragment.BaseFragment; import com.dayu.base.ui.fragment.BaseFragment;
...@@ -17,6 +18,7 @@ import com.dayu.order.R; ...@@ -17,6 +18,7 @@ import com.dayu.order.R;
import com.dayu.order.api.OrderApiFactory; import com.dayu.order.api.OrderApiFactory;
import com.dayu.order.api.protocol.CommentBean; import com.dayu.order.api.protocol.CommentBean;
import com.dayu.order.api.protocol.CommentPostData; import com.dayu.order.api.protocol.CommentPostData;
import com.dayu.order.api.protocol.CommentReplyData;
import com.dayu.order.api.protocol.OperateInfo; import com.dayu.order.api.protocol.OperateInfo;
import com.dayu.order.databinding.FragmentOperateDetailBinding; import com.dayu.order.databinding.FragmentOperateDetailBinding;
import com.dayu.order.ui.adapter.CommentAdapter; import com.dayu.order.ui.adapter.CommentAdapter;
...@@ -44,7 +46,7 @@ public class OperateDetailFragment extends BaseFragment<SImplePresenter, Fragmen ...@@ -44,7 +46,7 @@ public class OperateDetailFragment extends BaseFragment<SImplePresenter, Fragmen
private List<CommentBean> commentList = new ArrayList<>(); private List<CommentBean> commentList = new ArrayList<>();
private CommentBean selectedItem; private CommentBean selectedItem;
private int page = 1; private int page = 1;
private int pageSize = 2000; private int pageSize = 20;
private WeakHandler weakHandler = new WeakHandler(); private WeakHandler weakHandler = new WeakHandler();
public static OperateDetailFragment newInstance(OperateInfo info) { public static OperateDetailFragment newInstance(OperateInfo info) {
...@@ -57,10 +59,12 @@ public class OperateDetailFragment extends BaseFragment<SImplePresenter, Fragmen ...@@ -57,10 +59,12 @@ public class OperateDetailFragment extends BaseFragment<SImplePresenter, Fragmen
@Override @Override
public void initView() { public void initView() {
userInfo = UserManager.getInstance().getUser(); initUser();
userInfo = mUserInfo;
GlideImageLoader.load(mActivity, mBind.ivAvatar, userInfo.getHeaderImg(), R.drawable.icon_user_default); GlideImageLoader.load(mActivity, mBind.ivAvatar, userInfo.getHeaderImg(), R.drawable.icon_user_default);
operateInfo = (OperateInfo) getArguments().getSerializable(Constants.OPERATE_DETAIL); operateInfo = (OperateInfo) getArguments().getSerializable(Constants.OPERATE_DETAIL);
getCommentData(); getCommentData();
initRefreshView();
phone = operateInfo.getHotline(); phone = operateInfo.getHotline();
mSopAdapter = new CoreAdapter<>(false); mSopAdapter = new CoreAdapter<>(false);
...@@ -87,10 +91,21 @@ public class OperateDetailFragment extends BaseFragment<SImplePresenter, Fragmen ...@@ -87,10 +91,21 @@ public class OperateDetailFragment extends BaseFragment<SImplePresenter, Fragmen
mBind.jzVideo.setUp(url, ""); mBind.jzVideo.setUp(url, "");
GlideImageLoader.load(mActivity, mBind.jzVideo.thumbImageView, url, R.drawable.icon_app_logo); GlideImageLoader.load(mActivity, mBind.jzVideo.thumbImageView, url, R.drawable.icon_app_logo);
setListener(); setListener();
} }
//下拉刷新
private void initRefreshView() {
mBind.refreshLayout.setEnableLoadMore(false);
mBind.refreshLayout.setOnRefreshListener(refreshLayout -> {
page = 1;
getCommentData();
});
mBind.refreshLayout.setOnLoadMoreListener(refreshLayout -> {
getCommentData();
});
}
@SuppressLint("ClickableViewAccessibility") @SuppressLint("ClickableViewAccessibility")
private void setListener() { private void setListener() {
KeyboardStateObserver.getKeyboardStateObserver(mActivity).setKeyboardVisibilityListener( KeyboardStateObserver.getKeyboardStateObserver(mActivity).setKeyboardVisibilityListener(
...@@ -104,7 +119,7 @@ public class OperateDetailFragment extends BaseFragment<SImplePresenter, Fragmen ...@@ -104,7 +119,7 @@ public class OperateDetailFragment extends BaseFragment<SImplePresenter, Fragmen
public void onKeyboardHide() { public void onKeyboardHide() {
weakHandler.postDelayed(() -> { weakHandler.postDelayed(() -> {
mBind.btnComment.setVisibility(View.VISIBLE); mBind.btnComment.setVisibility(View.VISIBLE);
},100); }, 100);
} }
}); });
mBind.nsvOperate.setOnTouchListener((view, motionEvent) -> { mBind.nsvOperate.setOnTouchListener((view, motionEvent) -> {
...@@ -126,35 +141,23 @@ public class OperateDetailFragment extends BaseFragment<SImplePresenter, Fragmen ...@@ -126,35 +141,23 @@ public class OperateDetailFragment extends BaseFragment<SImplePresenter, Fragmen
String content = mBind.edtComment.getText().toString(); String content = mBind.edtComment.getText().toString();
if (TextUtils.isEmpty(content)) return; if (TextUtils.isEmpty(content)) return;
ProgressUtil.startLoad(mActivity); ProgressUtil.startLoad(mActivity);
CommentPostData commentData = new CommentPostData(); if (selectedItem != null) {
commentData.targetId = operateInfo.getId(); CommentReplyData commentReplyData = new CommentReplyData(mUserId, content, operateInfo.getId(), operateInfo.getName());
commentData.targetName = operateInfo.getName(); commentReplyData.beMessageId = selectedItem.getId();
commentData.accountId = Integer.parseInt(userInfo.getAccountId()); OrderApiFactory.addCommentReply(commentReplyData).subscribe(mPresenter.baseObserver(result -> {
commentData.accountName = userInfo.getAccountName(); if (result) {
commentData.messageAvatarUrl = userInfo.getHeaderImg(); selectedItem = null;
commentData.content = content; sendCommendSuccess();
commentData.updated = userInfo.getAccountName(); }
commentData.messageType = 2; }));
if (selectedItem == null) {
commentData.messageType = 1;
} else { } else {
commentData.messageType = 2; CommentPostData commentData = new CommentPostData(mUserId, content, operateInfo.getId(), operateInfo.getName());
commentData.beAccountId = selectedItem.getAccountId(); OrderApiFactory.addComment(commentData).subscribe(mPresenter.baseObserver(result -> {
commentData.beName = selectedItem.getAccountName(); if (result)
commentData.beMessageId = selectedItem.getId(); sendCommendSuccess();
if (commentData.parentId > 0) { }));
commentData.parentId = selectedItem.getParentId();
} else {
commentData.parentId = selectedItem.getId();
}
} }
OrderApiFactory.addComment(commentData).subscribe(mPresenter.baseObserver(result -> {
if (result)
getCommentData();
}));
selectedItem = null;
mBind.edtComment.setText("");
CommonUtils.hideSoftInput(mActivity, mBind.edtComment); CommonUtils.hideSoftInput(mActivity, mBind.edtComment);
}); });
...@@ -173,48 +176,35 @@ public class OperateDetailFragment extends BaseFragment<SImplePresenter, Fragmen ...@@ -173,48 +176,35 @@ public class OperateDetailFragment extends BaseFragment<SImplePresenter, Fragmen
}); });
} }
private void sendCommendSuccess() {
page = 1;
mBind.edtComment.setText("");
getCommentData();
}
private void getCommentData() { private void getCommentData() {
ProgressUtil.startLoad(mActivity); ProgressUtil.startLoad(mActivity);
OrderApiFactory.getComment(operateInfo.getId(), 1, 3,1, page, pageSize) OrderApiFactory.getComment(operateInfo.getId(), 1, 3, 1, page, pageSize)
.subscribe(mPresenter.baseObserver(data -> { .subscribe(mPresenter.baseObserver(data -> {
mBind.refreshLayout.finishRefresh();
mBind.refreshLayout.finishLoadMore();
if (page == 1) { if (page == 1) {
commentList.clear(); commentList.clear();
mBind.refreshLayout.setEnableLoadMore(data.getData().size() > 0);
} }
commentList = transData(data.getData()); // commentList = transData(data.getData());
mBind.tvComponent.setText("留言. " + commentList.size()); commentList.addAll(data.getData());
mBind.tvComponent.setText("留言. " + data.getTotalRows());
mCommentAdapter.setData(commentList); mCommentAdapter.setData(commentList);
mBind.refreshLayout.setEnableLoadMore(page < data.getTotalPages());
page += 1;
}, responeThrowable -> {
mBind.refreshLayout.finishRefresh();
mBind.refreshLayout.finishLoadMore();
})); }));
} }
private List<CommentBean> transData(List<CommentBean> datas) {
List<CommentBean> tempList = new ArrayList<>();
for (int i = 0; i < datas.size(); i++) {
CommentBean cData = datas.get(i);
if (cData.getMessageType() == 1) {
if (!tempList.contains(cData))
tempList.add(cData);
} else {
int parentId = cData.getParentId();
for (int j = 0; j < datas.size(); j++) {
CommentBean cData2 = datas.get(j);
if (cData2.getId() == parentId) {
if (!tempList.contains(cData2)) {
tempList.add(cData2);
if (!tempList.contains(cData))
if (!tempList.contains(cData))
tempList.add(tempList.indexOf(cData2) + 1, cData);
} else if (!tempList.contains(cData)) {
tempList.add(tempList.indexOf(cData2) + 1, cData);
}
} else if (!tempList.contains(cData2)) {
tempList.add(cData2);
}
}
}
}
return tempList;
}
@Override @Override
public int getLayoutId() { public int getLayoutId() {
......
...@@ -29,7 +29,7 @@ public class SaleOrderAdapter extends CoreAdapter<OrdersBean,ItemSaleOrderBindin ...@@ -29,7 +29,7 @@ public class SaleOrderAdapter extends CoreAdapter<OrdersBean,ItemSaleOrderBindin
holder.tvStatus.setText(CommonUtils.getOrderStauts(mContext,item.getStatus())); holder.tvStatus.setText(CommonUtils.getOrderStauts(mContext,item.getStatus()));
holder.tvStatus.setTextColor(CommonUtils.getOrderStautsColor(mContext,item.getStatus())); holder.tvStatus.setTextColor(CommonUtils.getOrderStautsColor(mContext,item.getStatus()));
holder.tvDate.setText(item.getCreateTime()); holder.tvDate.setText(item.getCreateTime());
holder.tvCompany.setText(item.getReceiverName()); holder.tvCompany.setText(item.getBuyerNickName());
holder.tvDateDesc.setText(type == 1?mContext.getString(R.string.sale_order_date):mContext.getString(R.string.sale_order_date2)); holder.tvDateDesc.setText(type == 1?mContext.getString(R.string.sale_order_date):mContext.getString(R.string.sale_order_date2));
} }
} }
...@@ -4,6 +4,7 @@ import com.bigfish.salecenter.event.SaleTabNumEvent; ...@@ -4,6 +4,7 @@ import com.bigfish.salecenter.event.SaleTabNumEvent;
import com.bigfish.salecenter.model.CollectProductData; import com.bigfish.salecenter.model.CollectProductData;
import com.bigfish.salecenter.model.CommentBean; import com.bigfish.salecenter.model.CommentBean;
import com.bigfish.salecenter.model.CommentPostData; import com.bigfish.salecenter.model.CommentPostData;
import com.bigfish.salecenter.model.CommentReplyData;
import com.bigfish.salecenter.model.OrdersBean; import com.bigfish.salecenter.model.OrdersBean;
import com.bigfish.salecenter.model.ProductDetailBean; import com.bigfish.salecenter.model.ProductDetailBean;
import com.bigfish.salecenter.model.ProductListBean; import com.bigfish.salecenter.model.ProductListBean;
...@@ -116,17 +117,19 @@ public interface SaleService { ...@@ -116,17 +117,19 @@ public interface SaleService {
* *
* @return * @return
*/ */
@GET("/api-message/" + "leaveMessage") @GET(Constants.API_7400 + "/leaveMessage/goods/engineer/goodsId/{goodsId}")
Observable<BaseResponse<BasePageBean<CommentBean>>> getComment(@Query("targetId") int targetId, Observable<BaseResponse<BasePageBean<CommentBean>>> getComment(@Path("goodsId") int goodsId,
@Query("status") int status,
@Query("targetType") int targetType,
@Query("accountType ") int accountType,
@Query("page") int page, @Query("page") int page,
@Query("pageSize") int pageSize); @Query("pageSize") int pageSize);
/** /**
* 留言/回复 * 留言
*/ */
@POST("/api-message/" + "leaveMessage") @POST(Constants.API_7400 + "/leaveMessage/goods/engineer")
Observable<BaseResponse<Boolean>> addComment(@Body CommentPostData data); Observable<BaseResponse<Boolean>> addComment(@Body CommentPostData data);
/**
* 回复
*/
@POST(Constants.API_7400 + "/leaveMessage/goods/engineer")
Observable<BaseResponse<Boolean>> addCommentReply(@Body CommentReplyData data);
} }
...@@ -6,30 +6,27 @@ package com.bigfish.salecenter.model; ...@@ -6,30 +6,27 @@ package com.bigfish.salecenter.model;
*/ */
public class CommentBean { public class CommentBean {
/**
* id : 271
* accountName : 曹立明
* beName : null
* targetName : 商品1
* content : 留言1-小程序
* messageType : 1
* isRead : 2
* createTime : 2020-03-17 17:45:39
* messageAvatarUrl : https://wx.qlogo.cn/mmopen/vi_32/Q0j4TwGTfTJKEXJZcqmEdrgl7VXyMWZ7BGIFLbfLTYWHPbonbMqibyicObslJXe7ZicdlS7zLmNH4ScYxbfPzW0lA/132
*/
private int id; private int id;
private int targetId;
private int targetType;
private String targetName;
private int accountId;
private String accountName; private String accountName;
private int accountType; private String beName;
private Object name; private String targetName;
private String messageAvatarUrl;
private int beAccountId;
private Object beName;
private int beMessageId;
private String content; private String content;
private Object reContent;
private String createTime;
private int messageType; private int messageType;
private int parentId;
private String orderNum;
private int status;
private int isRead; private int isRead;
private Object updateTime; private String createTime;
private String updated; private String messageAvatarUrl;
private Object companyId;
private Object keyword;
public int getId() { public int getId() {
return id; return id;
...@@ -39,38 +36,6 @@ public class CommentBean { ...@@ -39,38 +36,6 @@ public class CommentBean {
this.id = id; this.id = id;
} }
public int getTargetId() {
return targetId;
}
public void setTargetId(int targetId) {
this.targetId = targetId;
}
public int getTargetType() {
return targetType;
}
public void setTargetType(int targetType) {
this.targetType = targetType;
}
public String getTargetName() {
return targetName;
}
public void setTargetName(String targetName) {
this.targetName = targetName;
}
public int getAccountId() {
return accountId;
}
public void setAccountId(int accountId) {
this.accountId = accountId;
}
public String getAccountName() { public String getAccountName() {
return accountName; return accountName;
} }
...@@ -79,52 +44,20 @@ public class CommentBean { ...@@ -79,52 +44,20 @@ public class CommentBean {
this.accountName = accountName; this.accountName = accountName;
} }
public int getAccountType() { public String getBeName() {
return accountType;
}
public void setAccountType(int accountType) {
this.accountType = accountType;
}
public Object getName() {
return name;
}
public void setName(Object name) {
this.name = name;
}
public String getMessageAvatarUrl() {
return messageAvatarUrl;
}
public void setMessageAvatarUrl(String messageAvatarUrl) {
this.messageAvatarUrl = messageAvatarUrl;
}
public int getBeAccountId() {
return beAccountId;
}
public void setBeAccountId(int beAccountId) {
this.beAccountId = beAccountId;
}
public Object getBeName() {
return beName; return beName;
} }
public void setBeName(Object beName) { public void setBeName(String beName) {
this.beName = beName; this.beName = beName;
} }
public int getBeMessageId() { public String getTargetName() {
return beMessageId; return targetName;
} }
public void setBeMessageId(int beMessageId) { public void setTargetName(String targetName) {
this.beMessageId = beMessageId; this.targetName = targetName;
} }
public String getContent() { public String getContent() {
...@@ -135,22 +68,6 @@ public class CommentBean { ...@@ -135,22 +68,6 @@ public class CommentBean {
this.content = content; this.content = content;
} }
public Object getReContent() {
return reContent;
}
public void setReContent(Object reContent) {
this.reContent = reContent;
}
public String getCreateTime() {
return createTime;
}
public void setCreateTime(String createTime) {
this.createTime = createTime;
}
public int getMessageType() { public int getMessageType() {
return messageType; return messageType;
} }
...@@ -159,30 +76,6 @@ public class CommentBean { ...@@ -159,30 +76,6 @@ public class CommentBean {
this.messageType = messageType; this.messageType = messageType;
} }
public int getParentId() {
return parentId;
}
public void setParentId(int parentId) {
this.parentId = parentId;
}
public String getOrderNum() {
return orderNum;
}
public void setOrderNum(String orderNum) {
this.orderNum = orderNum;
}
public int getStatus() {
return status;
}
public void setStatus(int status) {
this.status = status;
}
public int getIsRead() { public int getIsRead() {
return isRead; return isRead;
} }
...@@ -191,35 +84,19 @@ public class CommentBean { ...@@ -191,35 +84,19 @@ public class CommentBean {
this.isRead = isRead; this.isRead = isRead;
} }
public Object getUpdateTime() { public String getCreateTime() {
return updateTime; return createTime;
}
public void setUpdateTime(Object updateTime) {
this.updateTime = updateTime;
}
public String getUpdated() {
return updated;
}
public void setUpdated(String updated) {
this.updated = updated;
}
public Object getCompanyId() {
return companyId;
} }
public void setCompanyId(Object companyId) { public void setCreateTime(String createTime) {
this.companyId = companyId; this.createTime = createTime;
} }
public Object getKeyword() { public String getMessageAvatarUrl() {
return keyword; return messageAvatarUrl;
} }
public void setKeyword(Object keyword) { public void setMessageAvatarUrl(String messageAvatarUrl) {
this.keyword = keyword; this.messageAvatarUrl = messageAvatarUrl;
} }
} }
package com.bigfish.salecenter.model; package com.bigfish.salecenter.model;
/**
* Created by mReturn
* on 2020\1\9 0009.
*/
public class CommentPostData { public class CommentPostData {
public int accountId; //留言人或回复人ID public int accountId; //留言人或回复人账号ID
public String accountName; //账号名称 public String content; // 留言内容 ,
public int accountType = 1; // 账号类型:1工程师或服务商 2小程序用户 3大鱼公司 public int targetId; //商品ID ,
public int companyId; //ka companyId public String targetName; //商品名称
public String content; //留言
public String messageAvatarUrl; //头像
public int messageType; //留言类型 1留言 2回复
public String name; //SP名称或KA名称
public int status = 1; //状态 1显示 2屏蔽
public int targetId; //招标、授权、SPM服务ID
public String targetName; //招标授权名称
public int targetType = 4; //类型:1:招标 2:授权 3:SPM服务 4:销售商品
public String updated; //更新人名称
public int beMessageId; //被回复的留言ID public CommentPostData() {
public String beName; //被回复人昵称 }
public int parentId; //父节点
public int beAccountId; //被回复人ID
public CommentPostData(int accountId, String content, int targetId, String targetName) {
this.accountId = accountId;
this.content = content;
this.targetId = targetId;
this.targetName = targetName;
}
} }
package com.bigfish.salecenter.model;
public class CommentReplyData {
public int accountId; //留言人或回复人账号ID
public int beMessageId ; //留言人或回复人账号ID
public String content; // 留言内容 ,
public int targetId; //商品ID ,
public String targetName; //商品名称
public CommentReplyData() {
}
public CommentReplyData(int accountId, String content, int targetId, String targetName) {
this.accountId = accountId;
this.content = content;
this.targetId = targetId;
this.targetName = targetName;
}
}
...@@ -58,7 +58,8 @@ public class SaleOrderDetailActivity extends BaseActivity<SImplePresenter, Activ ...@@ -58,7 +58,8 @@ public class SaleOrderDetailActivity extends BaseActivity<SImplePresenter, Activ
private void setDetailViewData(SaleOrderDetailsBean data) { private void setDetailViewData(SaleOrderDetailsBean data) {
mBind.tvOrderNumber.setText(data.getOrderGoodsNum()); mBind.tvOrderNumber.setText(data.getOrderGoodsNum());
mBind.tvCompanyName.setText(data.getOrgName()); // mBind.tvCompanyName.setText(data.getOrgName());
mBind.tvCompanyName.setText(data.getBuyerNickName());
mBind.tvCustomerName.setText(data.getReceiverName()); mBind.tvCustomerName.setText(data.getReceiverName());
String address = data.getProvinceName()+" "+data.getCityName()+" " String address = data.getProvinceName()+" "+data.getCityName()+" "
+data.getDistrictName()+" "+data.getReceiverAddress(); +data.getDistrictName()+" "+data.getReceiverAddress();
......
...@@ -17,6 +17,7 @@ import com.bigfish.salecenter.api.SaleService; ...@@ -17,6 +17,7 @@ import com.bigfish.salecenter.api.SaleService;
import com.bigfish.salecenter.databinding.FragmentSaleInstructionBinding; import com.bigfish.salecenter.databinding.FragmentSaleInstructionBinding;
import com.bigfish.salecenter.model.CommentBean; import com.bigfish.salecenter.model.CommentBean;
import com.bigfish.salecenter.model.CommentPostData; import com.bigfish.salecenter.model.CommentPostData;
import com.bigfish.salecenter.model.CommentReplyData;
import com.bigfish.salecenter.model.ProductDetailBean; import com.bigfish.salecenter.model.ProductDetailBean;
import com.chad.library.adapter.base.BaseQuickAdapter; import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder; import com.chad.library.adapter.base.BaseViewHolder;
...@@ -78,7 +79,8 @@ public class SaleInstructionFragment extends BaseFragment<SImplePresenter, Fragm ...@@ -78,7 +79,8 @@ public class SaleInstructionFragment extends BaseFragment<SImplePresenter, Fragm
@Override @Override
public void initView() { public void initView() {
userInfo = UserManager.getInstance().getUser(); initUser();
userInfo = mUserInfo;
GlideImageLoader.load(mActivity, mBind.ivAvatar, userInfo.getHeaderImg(), R.drawable.icon_user_default); GlideImageLoader.load(mActivity, mBind.ivAvatar, userInfo.getHeaderImg(), R.drawable.icon_user_default);
if (getArguments() != null) { if (getArguments() != null) {
mDetail = (ProductDetailBean) getArguments().getSerializable("data"); mDetail = (ProductDetailBean) getArguments().getSerializable("data");
...@@ -204,35 +206,26 @@ public class SaleInstructionFragment extends BaseFragment<SImplePresenter, Fragm ...@@ -204,35 +206,26 @@ public class SaleInstructionFragment extends BaseFragment<SImplePresenter, Fragm
String content = mBind.edtComment.getText().toString(); String content = mBind.edtComment.getText().toString();
if (TextUtils.isEmpty(content)) return; if (TextUtils.isEmpty(content)) return;
ProgressUtil.startLoad(mActivity); ProgressUtil.startLoad(mActivity);
CommentPostData commentData = new CommentPostData(); if (selectedItem != null){
commentData.targetId = mDetail.getId(); CommentReplyData commentReplyData = new CommentReplyData(mUserId,content,mDetail.getId(),mDetail.getGoodsModel());
commentData.targetName = mDetail.getGoodsModel(); commentReplyData.beMessageId = selectedItem.getId();
commentData.accountId = Integer.parseInt(userInfo.getAccountId()); Api.getService(SaleService.class).addCommentReply(commentReplyData).compose(Api.applySchedulers())
commentData.accountName = userInfo.getAccountName(); .subscribe(mPresenter.baseObserver(result -> {
commentData.messageAvatarUrl = userInfo.getHeaderImg(); if (result){
commentData.content = content; selectedItem = null;
commentData.updated = userInfo.getAccountName(); sendCommendSuccess();
if (selectedItem == null) { }
commentData.messageType = 1; }));
} else { }else {
commentData.messageType = 2; CommentPostData commentData = new CommentPostData(mUserId,content,mDetail.getId(),mDetail.getGoodsModel());
commentData.beAccountId = selectedItem.getAccountId(); Api.getService(SaleService.class).addComment(commentData).compose(Api.applySchedulers())
commentData.beName = selectedItem.getAccountName(); .subscribe(mPresenter.baseObserver(result -> {
commentData.beMessageId = selectedItem.getId(); if (result){
if (commentData.parentId > 0) { sendCommendSuccess();
commentData.parentId = selectedItem.getParentId(); }
} else { }));
commentData.parentId = selectedItem.getId();
}
} }
Api.getService(SaleService.class).addComment(commentData).compose(Api.applySchedulers())
.subscribe(mPresenter.baseObserver(result -> {
if (result)
getCommentData();
}));
selectedItem = null;
mBind.edtComment.setText("");
CommonUtils.hideSoftInput(mActivity, mBind.edtComment); CommonUtils.hideSoftInput(mActivity, mBind.edtComment);
}); });
...@@ -251,9 +244,15 @@ public class SaleInstructionFragment extends BaseFragment<SImplePresenter, Fragm ...@@ -251,9 +244,15 @@ public class SaleInstructionFragment extends BaseFragment<SImplePresenter, Fragm
}); });
} }
private void sendCommendSuccess() {
page =1;
getCommentData();
mBind.edtComment.setText("");
}
//获取评论数据 //获取评论数据
private void getCommentData() { private void getCommentData() {
Api.getService(SaleService.class).getComment(mDetail.getId(), 1, 4, 1, page, pageSize).compose(Api.applySchedulers()) Api.getService(SaleService.class).getComment(mDetail.getId(), page, pageSize).compose(Api.applySchedulers())
.subscribe(mPresenter.baseObserver(data -> { .subscribe(mPresenter.baseObserver(data -> {
mBind.refreshLayout.finishRefresh(); mBind.refreshLayout.finishRefresh();
mBind.refreshLayout.finishLoadMore(); mBind.refreshLayout.finishLoadMore();
...@@ -265,9 +264,7 @@ public class SaleInstructionFragment extends BaseFragment<SImplePresenter, Fragm ...@@ -265,9 +264,7 @@ public class SaleInstructionFragment extends BaseFragment<SImplePresenter, Fragm
commentList.addAll(data.getData()); commentList.addAll(data.getData());
mBind.tvComponent.setText("留言. " + data.getTotalRows()); mBind.tvComponent.setText("留言. " + data.getTotalRows());
mCommentAdapter.setData(commentList); mCommentAdapter.setData(commentList);
if (page == data.getTotalPages()){ mBind.refreshLayout.setEnableLoadMore(page < data.getTotalPages());
mBind.refreshLayout.setEnableLoadMore(false);
}
page += 1; page += 1;
}, responeThrowable -> { }, responeThrowable -> {
mBind.refreshLayout.finishRefresh(); mBind.refreshLayout.finishRefresh();
...@@ -275,34 +272,4 @@ public class SaleInstructionFragment extends BaseFragment<SImplePresenter, Fragm ...@@ -275,34 +272,4 @@ public class SaleInstructionFragment extends BaseFragment<SImplePresenter, Fragm
})); }));
} }
//转换评论数据
private List<CommentBean> transData(List<CommentBean> datas) {
List<CommentBean> tempList = new ArrayList<>();
for (int i = 0; i < datas.size(); i++) {
CommentBean cData = datas.get(i);
if (cData.getMessageType() == 1) {
if (!tempList.contains(cData))
tempList.add(cData);
} else {
int parentId = cData.getParentId();
for (int j = 0; j < datas.size(); j++) {
CommentBean cData2 = datas.get(j);
if (cData2.getId() == parentId) {
if (!tempList.contains(cData2)) {
tempList.add(cData2);
if (!tempList.contains(cData))
if (!tempList.contains(cData))
tempList.add(tempList.indexOf(cData2) + 1, cData);
} else if (!tempList.contains(cData)) {
tempList.add(tempList.indexOf(cData2) + 1, cData);
}
} else if (!tempList.contains(cData2)) {
tempList.add(cData2);
}
}
}
}
return tempList;
}
} }
...@@ -89,7 +89,6 @@ public class SaleOrderFragment extends BaseFragment<SaleOrderPresent,FragmentCom ...@@ -89,7 +89,6 @@ public class SaleOrderFragment extends BaseFragment<SaleOrderPresent,FragmentCom
mPresenter.keyStr = mBind.edtSeacher.getText().toString(); mPresenter.keyStr = mBind.edtSeacher.getText().toString();
mPresenter.refresh(); mPresenter.refresh();
CommonUtils.hideSoftInput(mActivity); CommonUtils.hideSoftInput(mActivity);
return true; return true;
} }
} }
......
...@@ -127,10 +127,10 @@ ...@@ -127,10 +127,10 @@
<TextView <TextView
style="@style/sale_detail_text" style="@style/sale_detail_text"
android:text="@string/goods_company" /> android:text="@string/goods_pn" />
<TextView <TextView
android:id="@+id/tv_seller_company" android:id="@+id/tv_company_pn"
style="@style/sale_detail_text2" /> style="@style/sale_detail_text2" />
</LinearLayout> </LinearLayout>
...@@ -138,10 +138,10 @@ ...@@ -138,10 +138,10 @@
<TextView <TextView
style="@style/sale_detail_text" style="@style/sale_detail_text"
android:text="@string/goods_pn" /> android:text="@string/goods_company" />
<TextView <TextView
android:id="@+id/tv_company_pn" android:id="@+id/tv_seller_company"
style="@style/sale_detail_text2" /> style="@style/sale_detail_text2" />
</LinearLayout> </LinearLayout>
......
...@@ -119,9 +119,9 @@ ...@@ -119,9 +119,9 @@
<Button <Button
android:id="@+id/btn_contact" android:id="@+id/btn_contact"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="40dp" android:layout_height="43dp"
android:layout_weight="1" android:layout_weight="1"
android:background="@color/cl_home_button" android:background="@drawable/btn_blue_commom"
android:gravity="center" android:gravity="center"
android:text="@string/advice_seller" android:text="@string/advice_seller"
android:textColor="@color/white" /> android:textColor="@color/white" />
...@@ -129,10 +129,10 @@ ...@@ -129,10 +129,10 @@
<Button <Button
android:id="@+id/btn_share" android:id="@+id/btn_share"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="40dp" android:layout_height="43dp"
android:layout_marginLeft="20dp" android:layout_marginLeft="15dp"
android:layout_weight="1.6" android:layout_weight="1.6"
android:background="@color/cl_order_item_date" android:background="@drawable/btn_green_commom"
android:gravity="center" android:gravity="center"
android:text="@string/share_recommend_now" android:text="@string/share_recommend_now"
android:textColor="@color/white" /> android:textColor="@color/white" />
......
...@@ -10,7 +10,11 @@ import com.dayu.common.BaseView; ...@@ -10,7 +10,11 @@ import com.dayu.common.BaseView;
public interface PersonInfoContract { public interface PersonInfoContract {
interface View extends BaseView { interface View extends BaseView {
void showPicDialog();
/**
* 清除图片缓存.
*/
void deleteCacheDirFile();
} }
abstract class Presenter extends BasePresenter<View> { abstract class Presenter extends BasePresenter<View> {
......
...@@ -4,8 +4,10 @@ import android.databinding.ObservableField; ...@@ -4,8 +4,10 @@ import android.databinding.ObservableField;
import android.os.Bundle; import android.os.Bundle;
import android.text.TextUtils; import android.text.TextUtils;
import com.dayu.base.api.BaseApiFactory;
import com.dayu.common.BaseApplication; import com.dayu.common.BaseApplication;
import com.dayu.event.UserInfo; import com.dayu.event.UserInfo;
import com.dayu.usercenter.R;
import com.dayu.usercenter.api.UserApiFactory; import com.dayu.usercenter.api.UserApiFactory;
import com.dayu.usercenter.common.UserConstant; import com.dayu.usercenter.common.UserConstant;
import com.dayu.usercenter.data.protocol.EngineerInfo; import com.dayu.usercenter.data.protocol.EngineerInfo;
...@@ -15,6 +17,13 @@ import com.dayu.usercenter.ui.activity.MyHeaderIvActivity; ...@@ -15,6 +17,13 @@ import com.dayu.usercenter.ui.activity.MyHeaderIvActivity;
import com.dayu.utils.UserManager; import com.dayu.utils.UserManager;
import com.umeng.analytics.MobclickAgent; import com.umeng.analytics.MobclickAgent;
import java.io.File;
import io.reactivex.functions.Consumer;
import okhttp3.MediaType;
import okhttp3.MultipartBody;
import okhttp3.RequestBody;
/** /**
* Created by luofan * Created by luofan
* on 2017/11/14. * on 2017/11/14.
...@@ -36,8 +45,9 @@ public class PersonInfoPresenter extends PersonInfoContract.Presenter { ...@@ -36,8 +45,9 @@ public class PersonInfoPresenter extends PersonInfoContract.Presenter {
@Override @Override
public void dumpToHeader() { public void dumpToHeader() {
mView.startActivityForReult(MyHeaderIvActivity.class, 1); // mView.startActivityForReult(MyHeaderIvActivity.class, 1);
MobclickAgent.onEvent(BaseApplication.getContext(), "check_header_pic"); // MobclickAgent.onEvent(BaseApplication.getContext(), "check_header_pic");
mView.showPicDialog();
} }
@Override @Override
...@@ -67,4 +77,34 @@ public class PersonInfoPresenter extends PersonInfoContract.Presenter { ...@@ -67,4 +77,34 @@ public class PersonInfoPresenter extends PersonInfoContract.Presenter {
bundle.putString(UserConstant.PHONE, UserManager.getInstance().getUserPhone()); bundle.putString(UserConstant.PHONE, UserManager.getInstance().getUserPhone());
mView.startActivity(ModifyPwdActivity.class, bundle); mView.startActivity(ModifyPwdActivity.class, bundle);
} }
public void uploadPic(String path) {
File file = new File(path);
RequestBody requestFile = RequestBody.create(MediaType.parse("multipart/form-data"), file);
MultipartBody.Part body = MultipartBody.Part.createFormData("fileUpload", file.getName(), requestFile);
mView.showDialog();
BaseApiFactory.uploadPhoto(body).subscribe(baseObserver(list -> {
if (list != null && list.size() > 0) {
modifyHead(list.get(0));
} else {
mView.showToast(R.string.modify_header_failed);
}
}));
}
public void modifyHead(String path) {
UserApiFactory.modifyHead(mAccountId, path).subscribe(baseObserver(new Consumer<Boolean>() {
@Override
public void accept(Boolean aBoolean) throws Exception {
if (info.get() != null && path != null) {
info.get().setAccountUrl(path);
}
UserInfo mUserInfo = UserManager.getInstance().getUser();
mUserInfo.setHeaderImg(path);
UserManager.getInstance().saveUser(mUserInfo);
mView.deleteCacheDirFile();
}
}));
}
} }
...@@ -53,10 +53,13 @@ public class PwLoginPresenter extends PwLoginContract.Presenter { ...@@ -53,10 +53,13 @@ public class PwLoginPresenter extends PwLoginContract.Presenter {
@Override @Override
public void loginHx(String hxAccount, String hxPwd) { public void loginHx(String hxAccount, String hxPwd) {
// hxAccount = "test1";
// hxPwd = "123456";
if (!(TextUtils.isEmpty(hxAccount)) && !(TextUtils.isEmpty(hxPwd))) { if (!(TextUtils.isEmpty(hxAccount)) && !(TextUtils.isEmpty(hxPwd))) {
EMClient.getInstance().login(hxAccount, hxPwd, new EMCallBack() { EMClient.getInstance().login(hxAccount, hxPwd, new EMCallBack() {
@Override @Override
public void onSuccess() { public void onSuccess() {
LogUtils.e("hx success");
EMClient.getInstance().groupManager().loadAllGroups(); EMClient.getInstance().groupManager().loadAllGroups();
EMClient.getInstance().chatManager().loadAllConversations(); EMClient.getInstance().chatManager().loadAllConversations();
} }
...@@ -67,6 +70,7 @@ public class PwLoginPresenter extends PwLoginContract.Presenter { ...@@ -67,6 +70,7 @@ public class PwLoginPresenter extends PwLoginContract.Presenter {
@Override @Override
public void onError(int code, String message) { public void onError(int code, String message) {
LogUtils.e("hx error "+message);
LogUtils.d(code + message); LogUtils.d(code + message);
} }
}); });
...@@ -140,6 +144,7 @@ public class PwLoginPresenter extends PwLoginContract.Presenter { ...@@ -140,6 +144,7 @@ public class PwLoginPresenter extends PwLoginContract.Presenter {
@Override @Override
public void dumpAndSave(UserInfo info) { public void dumpAndSave(UserInfo info) {
LogUtils.e("HxAccount: "+info.getHxAccount());
switch (UserManager.getInstance().getRole(info)) { switch (UserManager.getInstance().getRole(info)) {
case Constants.MANAGER: case Constants.MANAGER:
UserManager.getInstance().saveUser(info); UserManager.getInstance().saveUser(info);
......
package com.dayu.usercenter.ui.activity; package com.dayu.usercenter.ui.activity;
import android.content.Intent; import android.content.Intent;
import android.os.Environment;
import com.dayu.base.ui.activity.BaseActivity; import com.dayu.base.ui.activity.BaseActivity;
import com.dayu.common.Constants; import com.dayu.common.Constants;
...@@ -8,6 +9,16 @@ import com.dayu.usercenter.R; ...@@ -8,6 +9,16 @@ import com.dayu.usercenter.R;
import com.dayu.usercenter.databinding.ActivityPersonInfoBinding; import com.dayu.usercenter.databinding.ActivityPersonInfoBinding;
import com.dayu.usercenter.presenter.personinfo.PersonInfoContract; import com.dayu.usercenter.presenter.personinfo.PersonInfoContract;
import com.dayu.usercenter.presenter.personinfo.PersonInfoPresenter; import com.dayu.usercenter.presenter.personinfo.PersonInfoPresenter;
import com.luck.picture.lib.PictureSelectionModel;
import com.luck.picture.lib.PictureSelector;
import com.luck.picture.lib.config.PictureConfig;
import com.luck.picture.lib.config.PictureMimeType;
import com.luck.picture.lib.entity.LocalMedia;
import com.luck.picture.lib.tools.PictureFileUtils;
import com.umeng.analytics.MobclickAgent;
import java.io.File;
import java.util.List;
public class PersonInfoActivity extends BaseActivity<PersonInfoPresenter, ActivityPersonInfoBinding> implements PersonInfoContract.View { public class PersonInfoActivity extends BaseActivity<PersonInfoPresenter, ActivityPersonInfoBinding> implements PersonInfoContract.View {
@Override @Override
...@@ -24,13 +35,70 @@ public class PersonInfoActivity extends BaseActivity<PersonInfoPresenter, Activi ...@@ -24,13 +35,70 @@ public class PersonInfoActivity extends BaseActivity<PersonInfoPresenter, Activi
mBind.setPresenter(mPresenter); mBind.setPresenter(mPresenter);
} }
// @Override
// protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// super.onActivityResult(requestCode, resultCode, data);
// if (requestCode == 1 && data != null) {
// String url = data.getStringExtra(Constants.PICURL);
// if (mPresenter.info.get() != null) {
// mPresenter.info.get().setAccountUrl(url);
// }
// }
// }
@Override
public void showPicDialog() {
PictureSelectionModel selector = PictureSelector.create(mActivity)
.openGallery(PictureMimeType.ofImage())//全部.PictureMimeType.ofAll()、图片.ofImage()、视频.ofVideo()
.maxSelectNum(1)// 最大图片选择数量 int
.imageSpanCount(4)// 每行显示个数 int
.selectionMode(PictureConfig.MULTIPLE)// 多选 or 单选 PictureConfig.MULTIPLE or PictureConfig.SINGLE
.previewImage(true)// 是否可预览图片 true or false
.isCamera(true)// 是否显示拍照按钮 true or false
.isZoomAnim(true)// 图片列表点击 缩放效果 默认true
.sizeMultiplier(0.1f)// glide 加载图片大小 0~1之间 如设置 .glideOverride()无效
.setOutputCameraPath("/CustomPath")// 自定义拍、照保存路径,可不填
.compress(true)// 是否压缩 true or false
.glideOverride(300, 300)// int glide 加载宽高,越小图片列表越流畅,但会影响列表图片浏览的清晰度
.hideBottomControls(true)// 是否显示uCrop工具栏,默认不显示 true or false
.compressSavePath(getPath())//压缩图片保存地址
.previewEggs(true)// 预览图片时 是否增强左右滑动图片体验(图片滑动一半即可看到上一张是否选中) true or false
.minimumCompressSize(100)// 小于100kb的图片不压缩
.synOrAsy(true)//同步true或异步false 压缩 默认同步、
.enableCrop(true)//是否裁剪
.withAspectRatio(1, 1)
.freeStyleCropEnabled(false);
selector.forResult(PictureConfig.CHOOSE_REQUEST);
MobclickAgent.onEvent(mActivity, "modify_header_pic");
}
private String getPath() {
String path = Environment.getExternalStorageDirectory() + "/dayu/image/";
File file = new File(path);
if (file.mkdirs()) {
return path;
}
return path;
}
@Override
public void deleteCacheDirFile() {
PictureFileUtils.deleteCacheDirFile(mActivity);
}
@Override @Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) { protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data); super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 1 && data != null) { if (resultCode == RESULT_OK) {
String url = data.getStringExtra(Constants.PICURL); switch (requestCode) {
if (mPresenter.info.get() != null) { case PictureConfig.CHOOSE_REQUEST:
mPresenter.info.get().setAccountUrl(url); List<LocalMedia> mSelectList = PictureSelector.obtainMultipleResult(data);
if (mSelectList != null) {
for (int a = 0; a < mSelectList.size(); a++) {
mPresenter.uploadPic(mSelectList.get(a).getCutPath());
}
}
break;
} }
} }
} }
......
...@@ -48,9 +48,9 @@ public class UserInfoActivity extends BaseActivity<UserInfoPresenter, ActivityUs ...@@ -48,9 +48,9 @@ public class UserInfoActivity extends BaseActivity<UserInfoPresenter, ActivityUs
public void initView() { public void initView() {
EventBus.getDefault().register(this); EventBus.getDefault().register(this);
setUserRule2(globelRate+"%"); setUserRule2(globelRate+"%");
mBind.cvHeader.setOnClickListener(view -> startActivity(PersonInfoActivity.class)); mBind.rlUser.setOnClickListener(view -> startActivity(PersonInfoActivity.class));
mBind.btnEditBank.setOnClickListener(view -> startActivity(EditBankActivity.class)); mBind.rlBank.setOnClickListener(view -> startActivity(EditBankActivity.class));
mBind.btnEditAddr.setOnClickListener(view -> startActivity(EditAddressActivity.class)); mBind.rlAddress.setOnClickListener(view -> startActivity(EditAddressActivity.class));
mBind.tvHotLine.setOnClickListener(view -> CommonUtils.dialPhone(this,getString(R.string.customer_hot_line2))); mBind.tvHotLine.setOnClickListener(view -> CommonUtils.dialPhone(this,getString(R.string.customer_hot_line2)));
} }
...@@ -76,13 +76,6 @@ public class UserInfoActivity extends BaseActivity<UserInfoPresenter, ActivityUs ...@@ -76,13 +76,6 @@ public class UserInfoActivity extends BaseActivity<UserInfoPresenter, ActivityUs
StarRatioBean ratioBean = new StarRatioBean(); StarRatioBean ratioBean = new StarRatioBean();
ratioBean.setId(-1); ratioBean.setId(-1);
starRatios.add(0,ratioBean); starRatios.add(0,ratioBean);
// for (int i=0;i<7;i++){
// StarRatioBean bean = new StarRatioBean();
// bean.setRatio(10*i);
// bean.setStarLevelName(i+"星");
// starRatios.add(bean);
// }
// ToastUtils.showShortToast("star ratio: "+starRatios.size());
BaseQuickAdapter<StarRatioBean, BaseViewHolder> mAdapter = BaseQuickAdapter<StarRatioBean, BaseViewHolder> mAdapter =
new BaseQuickAdapter<StarRatioBean, BaseViewHolder>(R.layout.item_rule_star_ratio, starRatios) { new BaseQuickAdapter<StarRatioBean, BaseViewHolder>(R.layout.item_rule_star_ratio, starRatios) {
@Override @Override
......
...@@ -118,6 +118,12 @@ public class HomeUserFragment extends BaseFragment<HomeUserPresenter, FragmentHo ...@@ -118,6 +118,12 @@ public class HomeUserFragment extends BaseFragment<HomeUserPresenter, FragmentHo
mBind.tvPhone.setText(mUserPhone); mBind.tvPhone.setText(mUserPhone);
SPUtils.put("USER_PHONE", mUserPhone); SPUtils.put("USER_PHONE", mUserPhone);
SPUtils.put("USER_NAME", mUserName); SPUtils.put("USER_NAME", mUserName);
mPresenter.mUrl.set(info.getAccountUrl());
UserInfo userInfo = UserManager.getInstance().getUser();
if (userInfo != null) {
userInfo.setHeaderImg(info.getAccountUrl());
UserManager.getInstance().saveUser(userInfo);
}
} }
@Override @Override
......
...@@ -61,9 +61,7 @@ public class SaleRecordArriveFragment extends BaseFragment<SImplePresenter,Fragm ...@@ -61,9 +61,7 @@ public class SaleRecordArriveFragment extends BaseFragment<SImplePresenter,Fragm
} }
mDatas.addAll(data.getData()); mDatas.addAll(data.getData());
setAdapter(); setAdapter();
if (page == data.getTotalPages()){ mBind.refreshLayout.setEnableLoadMore(page < data.getTotalPages());
mBind.refreshLayout.setEnableLoadMore(false);
}
page += 1; page += 1;
}, responeThrowable -> { }, responeThrowable -> {
mBind.refreshLayout.finishRefresh(); mBind.refreshLayout.finishRefresh();
......
...@@ -60,9 +60,7 @@ public class SaleRecordDetailFragment extends BaseFragment<SImplePresenter,Fragm ...@@ -60,9 +60,7 @@ public class SaleRecordDetailFragment extends BaseFragment<SImplePresenter,Fragm
} }
mDatas.addAll(data.getData()); mDatas.addAll(data.getData());
setAdapter(); setAdapter();
if (page == data.getTotalPages()){ mBind.refreshLayout.setEnableLoadMore(page < data.getTotalPages());
mBind.refreshLayout.setEnableLoadMore(false);
}
page += 1; page += 1;
}, responeThrowable -> { }, responeThrowable -> {
mBind.refreshLayout.finishRefresh(); mBind.refreshLayout.finishRefresh();
......
...@@ -46,9 +46,11 @@ ...@@ -46,9 +46,11 @@
<LinearLayout <LinearLayout
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="70dp" android:layout_height="wrap_content"
android:background="@color/white" android:background="@color/white"
android:gravity="center_vertical" android:gravity="center_vertical"
android:paddingTop="5dp"
android:paddingBottom="5dp"
android:onClick="@{()->presenter.dumpToHeader()}" android:onClick="@{()->presenter.dumpToHeader()}"
android:orientation="horizontal"> android:orientation="horizontal">
...@@ -64,8 +66,8 @@ ...@@ -64,8 +66,8 @@
<com.dayu.widgets.CircleImageView <com.dayu.widgets.CircleImageView
android:id="@+id/cv_header" android:id="@+id/cv_header"
imageUrl="@{presenter.info.accountUrl}" imageUrl="@{presenter.info.accountUrl}"
android:layout_width="50dp" android:layout_width="120dp"
android:layout_height="50dp" android:layout_height="120dp"
android:layout_alignParentRight="true" android:layout_alignParentRight="true"
android:layout_marginLeft="10dp" android:layout_marginLeft="10dp"
android:src="@drawable/user" /> android:src="@drawable/user" />
......
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