Commit c3773903 by luofan

279知识库更改,详情页,列表费用控制显示,处理工单视频改为控制显示

parent 045b38e1
Showing with 294 additions and 88 deletions
......@@ -5,8 +5,8 @@ buildscript {
ext.build_tools_version = "27.0.3"
ext.min_sdk_version = 17
ext.target_sdk_version = 26
ext.version_code = 277
ext.verson_name = "2.7.7"
ext.version_code = 279
ext.verson_name = "2.7.9"
ext.gradle_version = '3.1.4'
ext.isReleaseMinify = false
ext.isDebugMinify = false
......
......@@ -71,8 +71,8 @@ public class OrderApiFactory {
return Api.getService(OrderService.class).getTabNum(userId).compose(Api.applySchedulers());
}
public static Observable<OrderDetail> getOrderInfo(int orderId) {
return Api.getService(OrderService.class).getOrderInfo(orderId).compose(Api.applySchedulers());
public static Observable<OrderDetail> getOrderInfo(int orderId,int engineerId) {
return Api.getService(OrderService.class).getOrderInfo(orderId,engineerId).compose(Api.applySchedulers());
}
public static Observable<BasePageBean<ServerInstruction>> getInstruction(long id, int page, int pageSize) {
......
......@@ -167,7 +167,7 @@ public interface OrderService {
* @return
*/
@GET(OrderConstant.ORDER_DETAILS)
Observable<BaseResponse<OrderDetail>> getOrderInfo(@Path("orderId") int orderId);
Observable<BaseResponse<OrderDetail>> getOrderInfo(@Query("id") int orderId,@Query("engineerId") int engineerId);
/**
* 获取服务说明.
......@@ -573,7 +573,8 @@ public interface OrderService {
Observable<BaseResponse<BasePageBean<KnowledgeListBean>>> queryKnowledge(@Query("keyword") String keyword,
@Query("status") int status,
@Query("page") int page,
@Query("pageSize") int pageSize);
@Query("pageSize") int pageSize,
@Query("providerId") String providerId);
/**
* 知识库详情
......
......@@ -68,6 +68,15 @@ public class Order implements Serializable{
private double latitude;
private double longitude;
private String showPrice;
public String getShowPrice() {
return showPrice;
}
public void setShowPrice(String showPrice) {
this.showPrice = showPrice;
}
public int getIsCheck() {
return isCheck;
......
......@@ -85,6 +85,28 @@ public class OrderDetail implements Serializable {
private int alerted;
private int isCheck;
private String shortVideoUrl;
private String showPrice;
private String needShortVideo;
public String getNeedShortVideo() {
return needShortVideo;
}
public void setNeedShortVideo(String needShortVideo) {
this.needShortVideo = needShortVideo;
}
public void setOtherPrice(double otherPrice) {
this.otherPrice = otherPrice;
}
public String getShowPrice() {
return showPrice;
}
public void setShowPrice(String showPrice) {
this.showPrice = showPrice;
}
public String getShortVideoUrl() {
return shortVideoUrl;
......
......@@ -50,6 +50,15 @@ public class Spu implements Serializable, Parcelable {
private List<SpuModels> spuModels;
private Integer needSerialNumPic;//1需要;2不需要.
private String serialNumPicUrl;
private String needShortVideo;
public String getNeedShortVideo() {
return needShortVideo;
}
public void setNeedShortVideo(String needShortVideo) {
this.needShortVideo = needShortVideo;
}
public int getOrdersRelationSpuId() {
return ordersRelationSpuId;
......
......@@ -41,8 +41,17 @@ public class KnowledgeListBean {
private Object endTime;
private String kcateName;
private int kcateId;
private String providerName;
private List<FilesBean> files;
public String getProviderName() {
return providerName;
}
public void setProviderName(String providerName) {
this.providerName = providerName;
}
public int getId() {
return id;
}
......
......@@ -50,7 +50,7 @@ public class OrderConstant {
/**
* 工单详情信息,包含评价,投诉,服务记录.
*/
public static final String ORDER_DETAILS = "/api-order/" + "orders/{orderId}/detail";
public static final String ORDER_DETAILS = "/api-order/" + "orders/app/detail";
/**
* 工单完成,提交验收报告.
*/
......
......@@ -35,6 +35,8 @@ public interface MultiProcessOrderContract {
void showSnView(boolean show);
String getVideo();
void showVideo();
}
abstract class Presenter extends BasePresenter<View> {
......
......@@ -10,6 +10,7 @@ import android.text.TextUtils;
import com.dayu.base.api.BaseApiFactory;
import com.dayu.common.BaseApplication;
import com.dayu.common.Constants;
import com.dayu.event.UserInfo;
import com.dayu.order.R;
import com.dayu.order.api.OrderApiFactory;
import com.dayu.order.api.protocol.Pic;
......@@ -20,6 +21,7 @@ import com.dayu.order.ui.activity.MultipleProcessActivity;
import com.dayu.order.ui.activity.ServerInstructionActivity;
import com.dayu.order.ui.activity.SopWebViewActivity;
import com.dayu.utils.ToastUtils;
import com.dayu.utils.UserManager;
import com.luck.picture.lib.tools.PictureFileUtils;
import com.umeng.analytics.MobclickAgent;
......@@ -59,6 +61,8 @@ public class MultiProcessOrderPresenter extends MultiProcessOrderContract.Presen
private int mKaId;
private int sopOrderVersion;
private String videoUrl; //视频上传成功后的地址
private boolean isShowVideo;
private int mUserId;
@Override
public void onAttached() {
......@@ -84,7 +88,9 @@ public class MultiProcessOrderPresenter extends MultiProcessOrderContract.Presen
} else {
mSpuState.set(false);
}
if (Constants.serveOrderId>0)
UserInfo info = UserManager.getInstance().getUser();
mUserId = Integer.parseInt(info.getAccountId());
if (Constants.serveOrderId > 0)
getOrderDetailInfo(Constants.serveOrderId);
getInfo();
// if (mSpu.getStatus() == 2) {
......@@ -92,8 +98,8 @@ public class MultiProcessOrderPresenter extends MultiProcessOrderContract.Presen
// }
}
private void commitOrder(List<String> list, List<String> snList,String videoUrl) {
commitOrder(list, snList, mSpu.getId(), mInfo.get(),videoUrl);
private void commitOrder(List<String> list, List<String> snList, String videoUrl) {
commitOrder(list, snList, mSpu.getId(), mInfo.get(), videoUrl);
PictureFileUtils.deleteCacheDirFile(BaseApplication.getContext());
}
......@@ -121,7 +127,7 @@ public class MultiProcessOrderPresenter extends MultiProcessOrderContract.Presen
}
@Override
public void commitOrder(List<String> imageUrl, List<String> snImages, int id, String info,String videoUrl) {
public void commitOrder(List<String> imageUrl, List<String> snImages, int id, String info, String videoUrl) {
HashMap<String, Object> params = new HashMap<>();
params.put("customerCheckComment", info);
params.put("id", id);
......@@ -175,10 +181,10 @@ public class MultiProcessOrderPresenter extends MultiProcessOrderContract.Presen
ArrayList<Spu> list = new ArrayList<>();
list.add(mDetail.get());
Bundle bundle = new Bundle();
if (mSourceSpus != null && mSourceSpus.size() >list.size()){
if (mSourceSpus != null && mSourceSpus.size() > list.size()) {
bundle.putParcelableArrayList(OrderConstant.SPUS, mSourceSpus);
bundle.putInt(OrderConstant.ORDER_TYPE, 0);
}else {
} else {
bundle.putParcelableArrayList(OrderConstant.SPUS, list);
bundle.putInt(OrderConstant.ORDER_TYPE, 1);
}
......@@ -207,12 +213,16 @@ public class MultiProcessOrderPresenter extends MultiProcessOrderContract.Presen
ToastUtils.showShortToast(R.string.sn_not_null);
return;
}
if(TextUtils.isEmpty(mView.getVideo())){
if (isShowVideo && TextUtils.isEmpty(mView.getVideo())) {
ToastUtils.showShortToast("视频不能为空");
return;
}
mView.showDialog();
uploadVideo(mView.getVideo());
if (!isShowVideo) {
commitOrder(null, null, "");
} else {
uploadVideo(mView.getVideo());
}
// MultipartBody.Part[] parts;
// List<String> imageUrl = mView.getImages();
// if (imageUrl != null && imageUrl.size() > 0) {
......@@ -238,7 +248,7 @@ public class MultiProcessOrderPresenter extends MultiProcessOrderContract.Presen
BaseApiFactory.uploadVideo(body).subscribe(baseObserver(data -> {
if (!TextUtils.isEmpty(data)) {
videoUrl = data;
commitOrder(null, null,videoUrl);
commitOrder(null, null, videoUrl);
} else {
mView.showToast("视频上传失败");
}
......@@ -293,15 +303,21 @@ public class MultiProcessOrderPresenter extends MultiProcessOrderContract.Presen
}
public void getOrderDetailInfo(int orderId) {
OrderApiFactory.getOrderInfo(orderId).subscribe(baseObserver(
OrderApiFactory.getOrderInfo(orderId, mUserId).subscribe(baseObserver(
detail -> {
if (detail.getNeedSerialNumPic() != null && detail.getNeedSerialNumPic() == 1){
if (detail.getNeedSerialNumPic() != null && detail.getNeedSerialNumPic() == 1) {
mIsShowSn.set(true);
mView.showSnView(true);
}else {
} else {
mIsShowSn.set(false);
mView.showSnView(false);
}
if ("1".equals(detail.getNeedShortVideo())) {
mView.showVideo();
isShowVideo = true;
} else {
isShowVideo = false;
}
},
responeThrowable -> {
mIsShowSn.set(false);
......
......@@ -3,7 +3,9 @@ package com.dayu.order.presenter.orderdetail;
import android.os.Bundle;
import com.dayu.common.Constants;
import com.dayu.event.UserInfo;
import com.dayu.order.api.OrderApiFactory;
import com.dayu.utils.UserManager;
/**
* Created by luofan
......@@ -11,26 +13,29 @@ import com.dayu.order.api.OrderApiFactory;
*/
public class OrderDetailPresenter extends OrderDetailContract.Presenter {
private int mOrderId;
private int mUserId;
@Override
public void onAttached() {
Bundle bundle = mView.getBundle();
mOrderId = bundle.getInt(Constants.ORDER_ID, 0);
mView.showDialog();
UserInfo info = UserManager.getInstance().getUser();
mUserId = Integer.parseInt(info.getAccountId());
getOrderDetailInfo(mOrderId);
}
@Override
public void getOrderDetailInfo(int orderId) {
OrderApiFactory.getOrderInfo(orderId).subscribe(baseObserver(
OrderApiFactory.getOrderInfo(orderId,mUserId).subscribe(baseObserver(
detail -> mView.init(detail), responeThrowable -> mView.init(null)));
}
@Override
public void getInfo() {
mView.showDialog();
OrderApiFactory.getOrderInfo(mOrderId).subscribe(baseObserver(
OrderApiFactory.getOrderInfo(mOrderId,mUserId).subscribe(baseObserver(
detail -> mView.setDatas(detail)));
}
......
......@@ -2,6 +2,7 @@ package com.dayu.order.ui.activity;
import android.os.Bundle;
import android.support.v7.widget.LinearLayoutManager;
import android.view.View;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.chad.library.adapter.base.BaseQuickAdapter;
......@@ -49,8 +50,8 @@ public class KnowledgeCenterActivity extends BaseActivity<SImplePresenter, Activ
queryKnowledge();
});
mBind.titleBack.setOnClickListener(v-> dumpBack());
mBind.tvSearch.setOnClickListener(v->startActivity(KnowledgeQueryActivity.class));
mBind.titleBack.setOnClickListener(v -> dumpBack());
mBind.tvSearch.setOnClickListener(v -> startActivity(KnowledgeQueryActivity.class));
queryKnowledge();
}
......@@ -59,7 +60,7 @@ public class KnowledgeCenterActivity extends BaseActivity<SImplePresenter, Activ
//查询
private void queryKnowledge() {
showDialog();
Api.getService(OrderService.class).queryKnowledge("",1, mPage, Constants.PAGESIZE)
Api.getService(OrderService.class).queryKnowledge("", 1, mPage, Constants.PAGESIZE, "")
.compose(Api.applySchedulers()).subscribe(mPresenter.baseObserver(data -> {
mBind.refreshLayout.finishRefresh();
mBind.refreshLayout.finishLoadMore();
......@@ -85,17 +86,18 @@ public class KnowledgeCenterActivity extends BaseActivity<SImplePresenter, Activ
protected void convert(BaseViewHolder helper, KnowledgeListBean item) {
helper.setText(R.id.tv_title, item.getTitle());
helper.setText(R.id.tv_detail, item.getBrief());
helper.setText(R.id.tv_author, "贡献者: "+item.getCreated());
helper.setOnClickListener(R.id.tv_to_detail, view -> {
Bundle bundle = new Bundle();
bundle.putInt(Constants.ID, item.getId());
bundle.putString(Constants.TITLE, item.getTitle());
startActivity(KnowledgeDetailActivity.class, bundle);
});
helper.setText(R.id.tv_author, "贡献者: " + item.getCreated());
}
};
mBind.rvKnowledge.setLayoutManager(new LinearLayoutManager(mActivity));
mBind.rvKnowledge.setAdapter(knowledgeAdapter);
knowledgeAdapter.setOnItemClickListener((adapter, view, position) -> {
Bundle bundle = new Bundle();
KnowledgeListBean item = (KnowledgeListBean) adapter.getItem(position);
bundle.putInt(Constants.ID, item.getId());
bundle.putString(Constants.TITLE, item.getTitle());
startActivity(KnowledgeDetailActivity.class, bundle);
});
}
}
......
......@@ -28,7 +28,7 @@ import com.dayu.widgets.CustomDialog;
import java.util.ArrayList;
import java.util.List;
public class KnowledgeDetailActivity extends BaseActivity<SImplePresenter,ActivityKonwledgeDetailBinding> {
public class KnowledgeDetailActivity extends BaseActivity<SImplePresenter, ActivityKonwledgeDetailBinding> {
@Override
public void setPresenter() {
}
......@@ -43,9 +43,6 @@ public class KnowledgeDetailActivity extends BaseActivity<SImplePresenter,Activi
mBind.titleBack.setOnClickListener(view -> dumpBack());
int id = getBundle().getInt(Constants.ID);
String title = getBundle().getString(Constants.TITLE);
mBind.tvTitle.setText(title);
getData(id);
}
......@@ -53,28 +50,31 @@ public class KnowledgeDetailActivity extends BaseActivity<SImplePresenter,Activi
private void getData(int id) {
showDialog();
Api.getService(OrderService.class).getKnowledgeDetail(id).compose(Api.applySchedulers())
.subscribe(mPresenter.baseObserver(data->{
.subscribe(mPresenter.baseObserver(data -> {
mBind.tvDetail.setText(data.getDetail());
mBind.detailPerson.setText(data.getProviderName());
mBind.detailTime.setText(data.getCreateTime());
mBind.detailTitle.setText(data.getTitle());
setFileAdapter(data.getFiles());
}));
}
private void setFileAdapter(List<KnowledgeListBean.FilesBean> files) {
if (files!= null && files.size()>0){
BaseQuickAdapter<KnowledgeListBean.FilesBean,BaseViewHolder> fileAdapter
= new BaseQuickAdapter<KnowledgeListBean.FilesBean, BaseViewHolder>(R.layout.item_recycle_text,files) {
if (files != null && files.size() > 0) {
BaseQuickAdapter<KnowledgeListBean.FilesBean, BaseViewHolder> fileAdapter
= new BaseQuickAdapter<KnowledgeListBean.FilesBean, BaseViewHolder>(R.layout.item_recycle_text, files) {
@Override
protected void convert(BaseViewHolder helper, KnowledgeListBean.FilesBean item) {
helper.setText(R.id.tv_text,item.getName());
helper.setText(R.id.tv_text, item.getName());
}
};
mBind.recyclerview.setLayoutManager(new LinearLayoutManager(this));
mBind.recyclerview.setAdapter(fileAdapter);
fileAdapter.setOnItemClickListener((adapter, view, position) -> {
KnowledgeListBean.FilesBean item = files.get(position);
switch (item.getType()){
switch (item.getType()) {
case 1:
ImgGalleryActivty.launch(this,item.getUrl());
ImgGalleryActivty.launch(this, item.getUrl());
break;
case 2:
ArrayList<String> list = new ArrayList<>();
......@@ -84,12 +84,12 @@ public class KnowledgeDetailActivity extends BaseActivity<SImplePresenter,Activi
startActivity(intent);
break;
case 3:
if (item.getUrl().contains(".pdf")|| item.getUrl().contains(".PDF")){
if (item.getUrl().contains(".pdf") || item.getUrl().contains(".PDF")) {
Intent docIntent = new Intent(this, PdfWebViewActivity.class);
docIntent.putExtra(Constants.PICURL, item.getUrl());
docIntent.putExtra(OrderConstant.TITLE, item.getName());
startActivity(docIntent);
}else {
} else {
showDownloadDialog(item);
}
break;
......@@ -103,7 +103,7 @@ public class KnowledgeDetailActivity extends BaseActivity<SImplePresenter,Activi
CustomDialog dialog = new CustomDialog(mActivity, R.style.CustomDialog, "确定下载该文件吗?", (dialog1, confirm) -> {
if (confirm) {
showToast("download");
downloadBySystem(item.getUrl(),item.getName());
downloadBySystem(item.getUrl(), item.getName());
}
dialog1.dismiss();
});
......@@ -131,9 +131,9 @@ public class KnowledgeDetailActivity extends BaseActivity<SImplePresenter,Activi
// 允许漫游时下载
request.setAllowedOverRoaming(true);
// 允许下载的网路类型
request.setAllowedNetworkTypes(DownloadManager.Request.NETWORK_WIFI|DownloadManager.Request.NETWORK_MOBILE);
request.setAllowedNetworkTypes(DownloadManager.Request.NETWORK_WIFI | DownloadManager.Request.NETWORK_MOBILE);
// 设置下载文件保存的路径和文件名
String fileName = name;
String fileName = name;
request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, fileName);
// 另外可选一下方法,自定义下载路径
// request.setDestinationUri()
......
......@@ -4,6 +4,7 @@ import android.graphics.Color;
import android.os.Bundle;
import android.support.v7.widget.LinearLayoutManager;
import android.text.TextUtils;
import android.view.View;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
......@@ -29,6 +30,7 @@ public class KnowledgeQueryActivity extends BaseActivity<SImplePresenter, Activi
int mPage = 1;
private String keyStr; //搜索关键字
private int providerId;
@Override
......@@ -42,7 +44,11 @@ public class KnowledgeQueryActivity extends BaseActivity<SImplePresenter, Activi
@Override
public void initView() {
if (getBundle() != null) {
providerId = getBundle().getInt(Constants.ID);
}
mBind.refreshLayout.setEnableRefresh(false);
queryKnowledge();
mBind.refreshLayout.setOnLoadMoreListener(refreshLayout -> {
queryKnowledge();
});
......@@ -54,7 +60,7 @@ public class KnowledgeQueryActivity extends BaseActivity<SImplePresenter, Activi
queryKnowledge();
});
mBind.titleBack.setOnClickListener(v-> dumpBack());
mBind.titleBack.setOnClickListener(v -> dumpBack());
}
......@@ -65,12 +71,8 @@ public class KnowledgeQueryActivity extends BaseActivity<SImplePresenter, Activi
//查询
private void queryKnowledge() {
if (TextUtils.isEmpty(keyStr)){
showToast("请输入关键字");
return;
}
showDialog();
Api.getService(OrderService.class).queryKnowledge(keyStr,1, mPage, Constants.PAGESIZE)
Api.getService(OrderService.class).queryKnowledge(keyStr, 1, mPage, Constants.PAGESIZE, providerId + "")
.compose(Api.applySchedulers()).subscribe(mPresenter.baseObserver(data -> {
setResultCount(data.getTotalRows());
mBind.refreshLayout.finishRefresh();
......@@ -96,17 +98,29 @@ public class KnowledgeQueryActivity extends BaseActivity<SImplePresenter, Activi
knowledgeAdapter = new BaseQuickAdapter<KnowledgeListBean, BaseViewHolder>(R.layout.item_knowledge_list, knowledgeList) {
@Override
protected void convert(BaseViewHolder helper, KnowledgeListBean item) {
helper.setText(R.id.tv_title, FindUtils.findSearch(Color.parseColor("#FF5A4B"),item.getTitle(),keyStr));
helper.setText(R.id.tv_detail, FindUtils.findSearch(Color.parseColor("#FF5A4B"),item.getBrief(),keyStr));
helper.setText(R.id.tv_author, "贡献者: "+item.getCreated());
if (!TextUtils.isEmpty(keyStr)) {
helper.setText(R.id.tv_title, FindUtils.findSearch(Color.parseColor("#FF5A4B"), item.getTitle(), keyStr));
helper.setText(R.id.tv_detail, FindUtils.findSearch(Color.parseColor("#FF5A4B"), item.getBrief(), keyStr));
} else {
helper.setText(R.id.tv_title, item.getTitle());
helper.setText(R.id.tv_detail, item.getBrief());
}
helper.setText(R.id.tv_author, "贡献者: " + item.getCreated());
helper.setOnClickListener(R.id.tv_to_detail, view -> {
Bundle bundle = new Bundle();
bundle.putInt(Constants.ID, item.getId());
bundle.putString(Constants.TITLE, item.getTitle());
startActivity(KnowledgeDetailActivity.class, bundle);
});
}
};
knowledgeAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
KnowledgeListBean item = (KnowledgeListBean) adapter.getItem(position);
Bundle bundle = new Bundle();
bundle.putInt(Constants.ID, item.getId());
bundle.putString(Constants.TITLE, item.getTitle());
startActivity(KnowledgeDetailActivity.class, bundle);
}
});
mBind.rvKnowledge.setLayoutManager(new LinearLayoutManager(mActivity));
mBind.rvKnowledge.setAdapter(knowledgeAdapter);
}
......
......@@ -73,6 +73,7 @@ public class MultiProcessOrderActivity extends BaseActivity<MultiProcessOrderPre
@Override
public void initView() {
showSnView(false);
setListener();
}
......@@ -326,6 +327,12 @@ public class MultiProcessOrderActivity extends BaseActivity<MultiProcessOrderPre
return videoPath;
}
@Override
public void showVideo() {
mBind.tvServerInfo.setVisibility(View.VISIBLE);
mBind.timeThree.setVisibility(View.VISIBLE);
}
//设置视频布局显示状态
protected void setVideoView() {
if (TextUtils.isEmpty(videoPath)) {
......
......@@ -78,10 +78,10 @@ public class OrderDetailsActivity extends BaseActivity<OrderDetailPresenter, Act
ids[i] = detail.getSpus().get(i).getKaSpuId();
}
// ids[1] = 344;
mOperateFragment = OrderOperateFragment.newInstance(ids);
mOperateFragment = OrderOperateFragment.newInstance(ids,detail);
}else {
int [] ids ={-1};
mOperateFragment = OrderOperateFragment.newInstance(ids);
mOperateFragment = OrderOperateFragment.newInstance(ids,detail);
}
if (detail.getCreatedSource() == 2 || detail.getCreatedSource() == 3 || detail.getCreatedSource() == 4) {
......
......@@ -90,6 +90,11 @@ public class OrderAdapter extends CoreAdapter<Order, FragmentOrderdoingItemBindi
holder.tvPrice.setText(item.getPrice() + "元");
holder.tvPrice.setVisibility(!TextUtils.isEmpty(item.getGreenManStatus())
&& "false".equals(item.getGreenManStatus()) ? View.GONE : View.VISIBLE);
if ("1".equals(item.getShowPrice())) {
holder.tvPrice.setVisibility(View.VISIBLE);
} else {
holder.tvPrice.setVisibility(View.GONE);
}
holder.itemTextDizhi.setText(address);
holder.tvErrorState.setVisibility(View.GONE);
holder.itemUpdataTime.setVisibility(View.VISIBLE);
......@@ -133,7 +138,7 @@ public class OrderAdapter extends CoreAdapter<Order, FragmentOrderdoingItemBindi
});
holder.tvOrderTime.setText(mContext.getString(R.string.have_appointment));
time = item.getAppointmentTime();
setTimeStatus(holder,item, time);
setTimeStatus(holder, item, time);
break;
case 2://待预约
if (!haveCustomer) {
......@@ -151,7 +156,7 @@ public class OrderAdapter extends CoreAdapter<Order, FragmentOrderdoingItemBindi
holder.tvOrderTime.setText(mContext.getString(R.string.have_appointment));
time = item.getAppointmentTime();
setTimeStatus(holder,item, time);
setTimeStatus(holder, item, time);
break;
case 3://待服务
holder.tvItemProcess.setVisibility(View.GONE);
......@@ -196,11 +201,11 @@ public class OrderAdapter extends CoreAdapter<Order, FragmentOrderdoingItemBindi
holder.orderLineOne.setVisibility(View.VISIBLE);
holder.orderLineTwo.setVisibility(View.GONE);
// holder.itemUpdataTime.setText(mContext.getString(R.string.customer_acceptance));
if (item.getIsCheck() == 0){
if (item.getIsCheck() == 0) {
holder.itemUpdataTime.setText("待自动验收");
}else if (item.getIsCheck() == 2){
} else if (item.getIsCheck() == 2) {
holder.itemUpdataTime.setText("待商家验收");
}else {
} else {
holder.itemUpdataTime.setText("客户验收");
}
......@@ -235,7 +240,11 @@ public class OrderAdapter extends CoreAdapter<Order, FragmentOrderdoingItemBindi
// holder.itemTextPhone.setText(R.string.phone_back_customer);
// }
holder.llBottom.setVisibility(View.GONE);
holder.llOrderDoneBootom.setVisibility(View.VISIBLE);
if ("1".equals(item.getShowPrice())) {
holder.llOrderDoneBootom.setVisibility(View.VISIBLE);
} else {
holder.llOrderDoneBootom.setVisibility(View.GONE);
}
if (item.getSettlementType() == 1) {
holder.tvSettlementStatus.setText(mContext.getString(R.string.no_settelment_price));
holder.tvSettlementDate.setTextColor(mContext.getResources().getColor(R.color.text_common_blue));
......@@ -286,11 +295,11 @@ public class OrderAdapter extends CoreAdapter<Order, FragmentOrderdoingItemBindi
String temp = time;
holder.rlItemMid.setOnClickListener(v -> {
if (item.getStatus() == 4 && item.getSubStatus() == 6) {
if (item.getIsCheck() == 0){
if (item.getIsCheck() == 0) {
ToastUtils.showShortToast("请等待自动验收");
}else if (item.getIsCheck() == 2){
} else if (item.getIsCheck() == 2) {
ToastUtils.showShortToast("请等待商家验收");
}else {
} else {
Bundle bundle = new Bundle();
bundle.putInt(Constants.ORDER_ID, item.getId());
Intent intent = new Intent(mContext, QrCodeActivity.class);
......@@ -357,11 +366,11 @@ public class OrderAdapter extends CoreAdapter<Order, FragmentOrderdoingItemBindi
//根据时间状态设置不同颜色
private void setTimeStatus(FragmentOrderdoingItemBinding holder, Order item, String time) {
if (item.getAlerted() == 2 && (item.getStatus() == 1 || item.getStatus() == 2)){
if (item.getAlerted() == 2 && (item.getStatus() == 1 || item.getStatus() == 2)) {
holder.itemTody.setTextColor(Color.parseColor("#FF5A4B"));
holder.itemTime.setTextColor(Color.parseColor("#FF5A4B"));
holder.tvAlert.setVisibility(View.VISIBLE);
}else{
} else {
holder.tvAlert.setVisibility(View.GONE);
long timeDiff = CommonUtils.caluteTimeDiff(time);
double timeMin = timeDiff / 60000.0; //相差分钟数
......
......@@ -192,6 +192,11 @@ public class MultiOrderDetailFragment extends BaseFragment<SImplePresenter, Frag
mBind.customerSignature.setVisibility(View.GONE);
}
mBind.customerSignature.setOnClickListener(v -> imgMax(detail.getEsignatureImg()));
if ("1".equals(detail.getShowPrice())) {
mBind.llBottomPrice.setVisibility(View.VISIBLE);
} else {
mBind.llBottomPrice.setVisibility(View.GONE);
}
}
//小绿人相关信息
......@@ -282,6 +287,7 @@ public class MultiOrderDetailFragment extends BaseFragment<SImplePresenter, Frag
.subscribe(mPresenter.baseObserver(result -> {
if (!TextUtils.isEmpty(result) && "false".equals(result)) {
mBind.llBottomPrice.setVisibility(View.GONE);
}
}));
}
......@@ -300,11 +306,11 @@ public class MultiOrderDetailFragment extends BaseFragment<SImplePresenter, Frag
<OrderToolsBean, BaseViewHolder>(R.layout.item_order_tool, results) {
@Override
protected void convert(BaseViewHolder helper, OrderToolsBean item) {
helper.setText(R.id.tv_title,item.getTitle());
helper.setText(R.id.tv_title, item.getTitle());
ImageView ivPicture = helper.getView(R.id.iv_picture);
GlideImageLoader.load(mContext,item.getImgUrl(),ivPicture);
ivPicture.setOnClickListener(v->{
new ToolImageDialog().show(getActivity(),item.getImgUrl());
GlideImageLoader.load(mContext, item.getImgUrl(), ivPicture);
ivPicture.setOnClickListener(v -> {
new ToolImageDialog().show(getActivity(), item.getImgUrl());
});
}
};
......
package com.dayu.order.ui.fragment;
import android.annotation.SuppressLint;
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.widget.LinearLayoutManager;
import android.text.TextUtils;
......@@ -47,9 +48,10 @@ public class OperateDetailFragment extends BaseFragment<SImplePresenter, Fragmen
private int pageSize = 20;
private WeakHandler weakHandler = new WeakHandler();
public static OperateDetailFragment newInstance(OperateInfo info) {
public static OperateDetailFragment newInstance(OperateInfo info,int createProviderId) {
Bundle args = new Bundle();
args.putSerializable(Constants.OPERATE_DETAIL, info);
args.putInt(Constants.ID, createProviderId);
OperateDetailFragment fragment = new OperateDetailFragment();
fragment.setArguments(args);
return fragment;
......@@ -61,6 +63,7 @@ public class OperateDetailFragment extends BaseFragment<SImplePresenter, Fragmen
userInfo = mUserInfo;
GlideImageLoader.load(mActivity, mBind.ivAvatar, userInfo.getHeaderImg(), R.drawable.icon_user_default);
operateInfo = (OperateInfo) getArguments().getSerializable(Constants.OPERATE_DETAIL);
int createProviderId = getArguments().getInt(Constants.ID);
getCommentData();
initRefreshView();
phone = operateInfo.getHotline();
......@@ -89,7 +92,9 @@ public class OperateDetailFragment extends BaseFragment<SImplePresenter, Fragmen
CommonUtils.setVideoThumb(mActivity,mBind.jzVideo,url);
setListener();
mBind.tvKonwledge.setOnClickListener(view -> startActivity(KnowledgeQueryActivity.class));
Bundle bundle = new Bundle();
bundle.putInt(Constants.ID,createProviderId);
mBind.tvKonwledge.setOnClickListener(view -> startActivity(KnowledgeQueryActivity.class,bundle));
}
//下拉刷新
......
......@@ -24,6 +24,7 @@ import com.dayu.utils.ToastUtils;
import org.greenrobot.eventbus.EventBus;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
......@@ -35,10 +36,12 @@ public class OrderOperateFragment extends BaseFragment<OperatePresenter,Fragment
private OrderAdapter mAdapter;
private int curIndex;
private List<Fragment> fragments = new ArrayList<>();
private OrderDetail detail;
public static OrderOperateFragment newInstance(int[] ids) {
public static OrderOperateFragment newInstance(int[] ids,OrderDetail detail) {
Bundle args = new Bundle();
args.putSerializable(Constants.IDS, ids);
args.putSerializable(Constants.ORDER_DETAIL, detail);
OrderOperateFragment fragment = new OrderOperateFragment();
fragment.setArguments(args);
return fragment;
......@@ -53,6 +56,8 @@ public class OrderOperateFragment extends BaseFragment<OperatePresenter,Fragment
public void initView() {
mBind.ivPre.setOnClickListener(view -> mBind.vpOperate.setCurrentItem(curIndex-1));
mBind.ivNext.setOnClickListener(view -> mBind.vpOperate.setCurrentItem(curIndex+1));
Bundle bundle = getBundle();
detail = (OrderDetail) bundle.getSerializable(Constants.ORDER_DETAIL);
}
......@@ -67,7 +72,7 @@ public class OrderOperateFragment extends BaseFragment<OperatePresenter,Fragment
List<String> phones = new ArrayList<>();
for(OperateInfo info : operateInfos){
titles.add(info.getName());
fragments.add(OperateDetailFragment.newInstance(info));
fragments.add(OperateDetailFragment.newInstance(info,detail.getCreateProviderId()));
if (!TextUtils.isEmpty(info.getHotline())){
phones.add(info.getHotline());
}
......
......@@ -18,7 +18,7 @@
android:layout_marginRight="50dp"
android:singleLine="true"
android:gravity="center"
android:text="" />
android:text="知识详情"/>
<ImageView
android:id="@+id/title_back"
......@@ -39,10 +39,76 @@
android:layout_width="match_parent"
android:orientation="vertical"
android:layout_height="wrap_content">
<TextView
android:layout_width="match_parent"
android:layout_height="43dp"
android:paddingLeft="15dp"
android:gravity="center_vertical"
android:text="发布方"
android:background="#f5f5f5"
android:textColor="@color/cl_home_title_text_color"
android:textSize="14sp" />
<TextView
style="@style/common_text_style"
android:id="@+id/detail_person"
android:paddingLeft="10dp"
android:layout_margin="5dp"
android:textSize="14sp"
/>
<TextView
android:layout_width="match_parent"
android:layout_height="43dp"
android:paddingLeft="15dp"
android:gravity="center_vertical"
android:text="发布时间"
android:background="#f5f5f5"
android:textColor="@color/cl_home_title_text_color"
android:textSize="14sp" />
<TextView
style="@style/common_text_style"
android:id="@+id/detail_time"
android:layout_margin="5dp"
android:paddingLeft="10dp"
android:textSize="14sp"
/>
<TextView
android:layout_width="match_parent"
android:layout_height="43dp"
android:paddingLeft="15dp"
android:gravity="center_vertical"
android:text="知识标题"
android:background="#f5f5f5"
android:textColor="@color/cl_home_title_text_color"
android:textSize="14sp" />
<TextView
style="@style/common_text_style"
android:id="@+id/detail_title"
android:layout_margin="5dp"
android:paddingLeft="10dp"
android:textSize="14sp"
/>
<TextView
android:layout_width="match_parent"
android:layout_height="43dp"
android:paddingLeft="15dp"
android:gravity="center_vertical"
android:text="知识详情"
android:background="#f5f5f5"
android:textColor="@color/cl_home_title_text_color"
android:textSize="14sp" />
<TextView
style="@style/common_text_style"
android:id="@+id/tv_detail"
android:layout_margin="5dp"
android:paddingLeft="10dp"
android:textSize="14sp"
/>
......@@ -51,7 +117,7 @@
android:layout_height="43dp"
android:paddingLeft="15dp"
android:gravity="center_vertical"
android:text="附件"
android:text="知识附件"
android:background="#f5f5f5"
android:textColor="@color/cl_home_title_text_color"
android:textSize="14sp" />
......
......@@ -236,6 +236,7 @@
android:paddingLeft="@dimen/dp_15"
android:paddingTop="18dp"
android:text="@string/record_service_result"
android:visibility="gone"
android:textColor="@color/tv_cl"
android:textSize="14sp" />
......@@ -243,6 +244,7 @@
android:id="@+id/time_Three"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:visibility="gone"
android:layout_below="@+id/tv_server_info"
android:layout_alignParentStart="true"
android:layout_alignParentLeft="true"
......
......@@ -52,6 +52,7 @@
style="@style/ll_horizontal"
android:layout_marginLeft="6dp"
android:layout_marginTop="5dp"
android:visibility="gone"
android:gravity="center_vertical">
<TextView
......@@ -77,5 +78,18 @@
android:textColor="@color/text_common_blue" />
</LinearLayout>
<TextView
android:id="@+id/detail"
style="@style/common_text_style"
android:layout_width="160dp"
android:layout_height="35dp"
android:layout_marginTop="@dimen/dp_10"
android:layout_gravity="center_horizontal"
android:layout_marginLeft="10dp"
android:background="@drawable/btn_blue_whitecontent"
android:gravity="center"
android:text="查看详情"
android:textColor="@color/text_common_blue" />
</LinearLayout>
......@@ -4,12 +4,14 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:padding="5dp"
android:orientation="horizontal">
android:orientation="horizontal"
android:padding="5dp">
<TextView
android:id="@+id/tv_text"
style="@style/common_text_style"
android:paddingStart="@dimen/dp_10"
android:text=""
android:textColor="@color/text_common_blue"
android:textSize="14sp"
android:text="" />
android:textSize="14sp" />
</LinearLayout>
\ No newline at end of file
......@@ -53,7 +53,7 @@ public class UserLicenceFragment extends BaseFragment<UserLicencePresent, Fragme
mAdapter.setOnItemClickListener((item, bind) -> {
initUser();
Bundle bundle1 = new Bundle();
bundle1.putString(Constants.URL, item.getDetailUrl() + "&accountId=" + mUserId);
bundle1.putString(Constants.URL, item.getDetailUrl() + "&accountId=" + mUserId + "&token=" + mUserInfo.getToken());
bundle1.putString(Constants.TITLE, "商家详情");
Intent intent = new Intent(mActivity, CommeWebViewActivity.class);
intent.putExtra(Constants.BUNDLE, bundle1);
......
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