Commit 886a01b0 authored by david's avatar david Committed by 杨秀秀

bug修复

parent ccf52a43
package com.xx.hbhconsumer.adapter; package com.xx.hbhconsumer.adapter;
import android.content.Context; import android.content.Context;
import android.graphics.Typeface;
import android.util.TypedValue;
import com.xx.hbhconsumer.R; import com.xx.hbhconsumer.R;
import com.xx.hbhconsumer.data.http.respons.CategoryBean; import com.xx.hbhconsumer.data.http.respons.CategoryBean;
...@@ -26,9 +28,15 @@ public class FirstCategoryAdapter extends xxBaseRecyclerViewAdapter<ItemFirstCat ...@@ -26,9 +28,15 @@ public class FirstCategoryAdapter extends xxBaseRecyclerViewAdapter<ItemFirstCat
dataBind.setCategoryBean(data); dataBind.setCategoryBean(data);
dataBind.tvCategoryName.setText(data.getCategoryName()); dataBind.tvCategoryName.setText(data.getCategoryName());
if (data.getChecked()) { if (data.getChecked()) {
dataBind.rlBg.setBackgroundColor(mContext.getColor(R.color.white)); // dataBind.rlBg.setBackgroundColor(mContext.getColor(R.color.white));
dataBind.tvCategoryName.setTextColor(mContext.getColor(R.color.foreground));
dataBind.tvCategoryName.setTextSize(TypedValue.COMPLEX_UNIT_SP, 16);
dataBind.tvCategoryName.setTypeface(Typeface.DEFAULT_BOLD);
} else { } else {
dataBind.rlBg.setBackgroundColor(mContext.getColor(R.color.bg_grey)); // dataBind.rlBg.setBackgroundColor(mContext.getColor(R.color.bg_grey));
dataBind.tvCategoryName.setTextColor(mContext.getColor(R.color.content_grey));
dataBind.tvCategoryName.setTextSize(TypedValue.COMPLEX_UNIT_SP, 14);
dataBind.tvCategoryName.setTypeface(Typeface.DEFAULT);
} }
} }
} }
...@@ -79,6 +79,7 @@ public class OrderAdapter extends xxBaseRecyclerViewAdapter<ItemOrderBinding, Or ...@@ -79,6 +79,7 @@ public class OrderAdapter extends xxBaseRecyclerViewAdapter<ItemOrderBinding, Or
dataBind.tvReceiveCoupon.setVisibility(View.GONE); dataBind.tvReceiveCoupon.setVisibility(View.GONE);
dataBind.llGift.setVisibility(View.GONE); dataBind.llGift.setVisibility(View.GONE);
dataBind.tvOrderState.setText("交易关闭"); dataBind.tvOrderState.setText("交易关闭");
dataBind.tvOrderState.setTextColor(mContext.getColor(R.color.xx_text_hint));
} }
dataBind.tvShopName.setText(data.getMerchant().getStoreName()); dataBind.tvShopName.setText(data.getMerchant().getStoreName());
......
package com.xx.hbhconsumer.adapter;
import android.content.Context;
import com.xx.hbhconsumer.R;
import com.xx.hbhconsumer.data.http.respons.RecruitBean;
import com.xx.hbhconsumer.databinding.ItemRecruitBinding;
import com.xx.hbhconsumer.databinding.ItemRecruitShopBinding;
import com.xx.xxviewlibrary.base.xxBaseRecyclerViewAdapter;
public class RecruitShopAdapter extends xxBaseRecyclerViewAdapter<ItemRecruitShopBinding, RecruitBean> {
public RecruitShopAdapter(Context context) {
super(context);
mContext = context;
}
@Override
public int initLayout() {
return R.layout.item_recruit_shop;
}
@Override
protected void covert(ItemRecruitShopBinding dataBind, RecruitBean data, int position) {
// 将接口调出来的布局遍历上去
dataBind.setRecruitBean(data);
dataBind.tvRecruitTitle.setText(data.getPostName());
dataBind.tvAddress.setText(data.getWorkPlace());
dataBind.tvShopName.setText(data.getRecruitmentEnterprise());
dataBind.tvSalary.setText(data.getPostWage());
}
}
package com.xx.hbhconsumer.adapter; package com.xx.hbhconsumer.adapter;
import android.content.Context; import android.content.Context;
import android.view.View;
import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.LinearLayoutManager;
...@@ -49,6 +50,14 @@ public class SearchShopAdapter extends xxBaseRecyclerViewAdapter<ItemSearchShopB ...@@ -49,6 +50,14 @@ public class SearchShopAdapter extends xxBaseRecyclerViewAdapter<ItemSearchShopB
dataBind.rbLevel.setRating(Float.parseFloat(String.valueOf(data.getRating()))); dataBind.rbLevel.setRating(Float.parseFloat(String.valueOf(data.getRating())));
dataBind.rvGoodsList.setNestedScrollingEnabled(false); dataBind.rvGoodsList.setNestedScrollingEnabled(false);
if (data.getCommodityList() == null || data.getCommodityList().isEmpty()) {
dataBind.rvGoodsList.setVisibility(View.GONE);
dataBind.rlNoData.setVisibility(View.VISIBLE);
} else {
dataBind.rvGoodsList.setVisibility(View.VISIBLE);
dataBind.rlNoData.setVisibility(View.GONE);
}
//获取适配器上下文 //获取适配器上下文
SearchShopGoodsAdapter orderListAdapter = new SearchShopGoodsAdapter(mContext); SearchShopGoodsAdapter orderListAdapter = new SearchShopGoodsAdapter(mContext);
//把adapterset进去 //把adapterset进去
......
...@@ -16,6 +16,7 @@ import com.xx.hbhconsumer.data.http.respons.CreditGoodsBean ...@@ -16,6 +16,7 @@ import com.xx.hbhconsumer.data.http.respons.CreditGoodsBean
import com.xx.hbhconsumer.data.http.respons.CreditGoodsDetailBean import com.xx.hbhconsumer.data.http.respons.CreditGoodsDetailBean
import com.xx.hbhconsumer.data.http.respons.CreditOrderBean import com.xx.hbhconsumer.data.http.respons.CreditOrderBean
import com.xx.hbhconsumer.data.http.respons.CreditRecordBean import com.xx.hbhconsumer.data.http.respons.CreditRecordBean
import com.xx.hbhconsumer.data.http.respons.DictValueBean
import com.xx.hbhconsumer.data.http.respons.Filebean import com.xx.hbhconsumer.data.http.respons.Filebean
import com.xx.hbhconsumer.data.http.respons.GoodsBean import com.xx.hbhconsumer.data.http.respons.GoodsBean
import com.xx.hbhconsumer.data.http.respons.GoodsDetailBean import com.xx.hbhconsumer.data.http.respons.GoodsDetailBean
...@@ -61,6 +62,16 @@ import retrofit2.http.Url ...@@ -61,6 +62,16 @@ import retrofit2.http.Url
interface ApiService { interface ApiService {
/**
* 根据字典类型查询字典数据信息
* @param dictType 字典类型
* @return 字典列表
*/
@Headers("Content-type:application/json")
@GET("/system/dict/data/type/{dictType}")
fun getDictValueByDictType(@Path("dictType") dictType: String): Observable<BaseResponse<List<DictValueBean>>>
@Streaming @Streaming
@GET @GET
fun downloadFileWithUrlSync(@Url url: String?): Call<ResponseBody?>? fun downloadFileWithUrlSync(@Url url: String?): Call<ResponseBody?>?
...@@ -161,7 +172,7 @@ interface ApiService { ...@@ -161,7 +172,7 @@ interface ApiService {
*/ */
@Headers("Content-type:application/json") @Headers("Content-type:application/json")
@GET("app/message/getMessageList") @GET("app/message/getMessageList")
fun getMessageList(@Query("flag") flag: Int): Observable<BasePageResponse<MessageBean>> fun getMessageList(@Query("flag") flag: Int, @Query("pageNum") num: Int): Observable<BasePageResponse<MessageBean>>
/** /**
* APP广告位查询 * APP广告位查询
*/ */
......
...@@ -29,8 +29,8 @@ public class HomeRequest extends BaseRespons { ...@@ -29,8 +29,8 @@ public class HomeRequest extends BaseRespons {
* 获取广告列表 * 获取广告列表
* @return * @return
*/ */
public Observable<BasePageResponse<MessageBean>> getMessageList() { public Observable<BasePageResponse<MessageBean>> getMessageList(int page) {
return getApiService().getMessageList(0); return getApiService().getMessageList(0, page);
} }
/** /**
......
...@@ -15,8 +15,8 @@ public class MessageRequest extends BaseRespons { ...@@ -15,8 +15,8 @@ public class MessageRequest extends BaseRespons {
* 获取广告列表 * 获取广告列表
* @return * @return
*/ */
public Observable<BasePageResponse<MessageBean>> getMessageList(Integer flag) { public Observable<BasePageResponse<MessageBean>> getMessageList(Integer flag, Integer page) {
return getApiService().getMessageList(flag); return getApiService().getMessageList(flag, page);
} }
/** /**
......
...@@ -45,7 +45,7 @@ public class MineRequest extends BaseRespons { ...@@ -45,7 +45,7 @@ public class MineRequest extends BaseRespons {
* @return * @return
*/ */
public Observable<BasePageResponse<MessageBean>> getMessageList() { public Observable<BasePageResponse<MessageBean>> getMessageList() {
return getApiService().getMessageList(0); return getApiService().getMessageList(0, 1);
} }
/** /**
......
package com.xx.hbhconsumer.data.http.requst; package com.xx.hbhconsumer.data.http.requst;
import com.xx.hbhconsumer.data.http.BaseRespons; import com.xx.hbhconsumer.data.http.BaseRespons;
import com.xx.hbhconsumer.data.http.respons.DictValueBean;
import com.xx.hbhconsumer.data.http.respons.RecruitBean; import com.xx.hbhconsumer.data.http.respons.RecruitBean;
import java.util.List; import java.util.List;
...@@ -13,6 +14,10 @@ import okhttp3.RequestBody; ...@@ -13,6 +14,10 @@ import okhttp3.RequestBody;
public class RecruitRequest extends BaseRespons { public class RecruitRequest extends BaseRespons {
public Observable<BaseResponse<List<DictValueBean>>> getDictValueByDictType(String dictType) {
return getApiService().getDictValueByDictType(dictType);
}
public Observable<BaseResponse<Integer>> recruitment(String recruitmentId, String resumeFileId) { public Observable<BaseResponse<Integer>> recruitment(String recruitmentId, String resumeFileId) {
ApiParams<RecruitmentRequestBody> apiParams = new ApiParams<>(); ApiParams<RecruitmentRequestBody> apiParams = new ApiParams<>();
RecruitmentRequestBody requestBody = new RecruitmentRequestBody("1", recruitmentId, resumeFileId); RecruitmentRequestBody requestBody = new RecruitmentRequestBody("1", recruitmentId, resumeFileId);
......
package com.xx.hbhconsumer.data.http.respons
/**
* 字典数据
*/
class DictValueBean(
var dictLabel :String = "", // 字典标签
var dictValue :String = "", // 字典值
var dictType :String = "", // 字典类型
)
...@@ -34,16 +34,22 @@ public class CouponListActivity extends BaseActivity<ActivityCouponListBinding, ...@@ -34,16 +34,22 @@ public class CouponListActivity extends BaseActivity<ActivityCouponListBinding,
} else { } else {
binding.rlNoData.setVisibility(View.GONE); binding.rlNoData.setVisibility(View.GONE);
binding.rvCouponList.setVisibility(View.VISIBLE); binding.rvCouponList.setVisibility(View.VISIBLE);
couponAdapter.mList = couponBeanList;
couponAdapter.notifyDataSetChanged();
if (viewModel.page == 1) {
binding.refresh.finishRefresh();
} else {
binding.refresh.finishLoadMore();
}
} }
couponAdapter.mList = couponBeanList;
couponAdapter.notifyDataSetChanged();
if (viewModel.page == 1) {
binding.refresh.finishRefresh();
} else {
binding.refresh.finishLoadMore();
}
if (viewModel.page == viewModel.totalPage) {
binding.refresh.setEnableLoadMore(false);
binding.tvNoMore.setVisibility(View.VISIBLE);
} else {
binding.refresh.setEnableLoadMore(true);
binding.tvNoMore.setVisibility(View.GONE);
}
}); });
} }
......
...@@ -91,22 +91,30 @@ public class HomeFragment extends BaseFragment<FragmentHomeBinding, HomeViewMode ...@@ -91,22 +91,30 @@ public class HomeFragment extends BaseFragment<FragmentHomeBinding, HomeViewMode
@Override @Override
public void onChanged(List<AdvertisingBean> advertisingBeans) { public void onChanged(List<AdvertisingBean> advertisingBeans) {
BannerAdapter bannerAdapter=new BannerAdapter(requireContext(), advertisingBeans); if (advertisingBeans == null || advertisingBeans.isEmpty()) {
binding.banner.setAdapter(bannerAdapter); binding.banner.setVisibility(View.GONE);
bannerAdapter.setOnBannerListener(new OnBannerListener<AdvertisingBean>() { binding.ivBanner.setVisibility(View.VISIBLE);
@Override } else {
public void OnBannerClick(AdvertisingBean data, int position) { binding.banner.setVisibility(View.VISIBLE);
if ("0".equals(data.getRotographType())) { binding.ivBanner.setVisibility(View.GONE);
viewModel.goGoodsDetail(data.getUrlId());
} else if ("1".equals(data.getRotographType())) { BannerAdapter bannerAdapter=new BannerAdapter(requireContext(), advertisingBeans);
viewModel.goShopDetail(data.getUrlId()); binding.banner.setAdapter(bannerAdapter);
} else if ("2".equals(data.getRotographType())) { bannerAdapter.setOnBannerListener(new OnBannerListener<AdvertisingBean>() {
viewModel.goNewsDetail(data.getUrlId()); @Override
} else if ("3".equals(data.getRotographType())) { public void OnBannerClick(AdvertisingBean data, int position) {
viewModel.goPdfDetail(data.getUrlId(), data.getInformationTitle()); if ("0".equals(data.getRotographType())) {
viewModel.goGoodsDetail(data.getUrlId());
} else if ("1".equals(data.getRotographType())) {
viewModel.goShopDetail(data.getUrlId());
} else if ("2".equals(data.getRotographType())) {
viewModel.goNewsDetail(data.getUrlId());
} else if ("3".equals(data.getRotographType())) {
viewModel.goPdfDetail(data.getUrlId(), data.getInformationTitle());
}
} }
} });
}); }
} }
}); });
......
...@@ -114,7 +114,7 @@ public class HomeViewModel extends BaseViewModel<HomeRequest> { ...@@ -114,7 +114,7 @@ public class HomeViewModel extends BaseViewModel<HomeRequest> {
} }
public void getMessageList() { public void getMessageList() {
model.getMessageList() model.getMessageList(1)
.compose(RxUtils.schedulersTransformer()) //线程调度 .compose(RxUtils.schedulersTransformer()) //线程调度
.doOnSubscribe(HomeViewModel.this) .doOnSubscribe(HomeViewModel.this)
.doOnSubscribe(new Consumer<Disposable>() { .doOnSubscribe(new Consumer<Disposable>() {
......
...@@ -2,23 +2,24 @@ package com.xx.hbhconsumer.ui.messagecenter; ...@@ -2,23 +2,24 @@ package com.xx.hbhconsumer.ui.messagecenter;
import android.os.Bundle; import android.os.Bundle;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.lifecycle.Observer;
import com.scwang.smart.refresh.layout.api.RefreshLayout;
import com.scwang.smart.refresh.layout.listener.OnLoadMoreListener;
import com.scwang.smart.refresh.layout.listener.OnRefreshListener;
import com.xx.hbhconsumer.BR; import com.xx.hbhconsumer.BR;
import com.xx.hbhconsumer.R; import com.xx.hbhconsumer.R;
import com.xx.hbhconsumer.adapter.MessageAdapter; import com.xx.hbhconsumer.adapter.MessageAdapter;
import com.xx.hbhconsumer.data.http.requst.MessageRequest; import com.xx.hbhconsumer.data.http.requst.MessageRequest;
import com.xx.hbhconsumer.data.http.respons.MessageBean;
import com.xx.hbhconsumer.databinding.FragmentMessageListBinding; import com.xx.hbhconsumer.databinding.FragmentMessageListBinding;
import java.util.List;
import me.goldze.mvvmhabit.base.BaseFragment; import me.goldze.mvvmhabit.base.BaseFragment;
public class MessageListFragment extends BaseFragment<FragmentMessageListBinding, MessageListViewModel> { public class MessageListFragment extends BaseFragment<FragmentMessageListBinding, MessageListViewModel> implements OnRefreshListener, OnLoadMoreListener {
public static MessageListFragment newInstance(Integer flag) { public static MessageListFragment newInstance(Integer flag) {
Bundle args = new Bundle(); Bundle args = new Bundle();
...@@ -30,6 +31,10 @@ public class MessageListFragment extends BaseFragment<FragmentMessageListBinding ...@@ -30,6 +31,10 @@ public class MessageListFragment extends BaseFragment<FragmentMessageListBinding
@Override @Override
public void initData() { public void initData() {
binding.refresh.setOnRefreshListener(this);
binding.refresh.setOnLoadMoreListener(this);
//获取适配器上下文 //获取适配器上下文
MessageAdapter messageAdapter = new MessageAdapter(getActivity()); MessageAdapter messageAdapter = new MessageAdapter(getActivity());
...@@ -38,12 +43,26 @@ public class MessageListFragment extends BaseFragment<FragmentMessageListBinding ...@@ -38,12 +43,26 @@ public class MessageListFragment extends BaseFragment<FragmentMessageListBinding
messageAdapter.setOnItemClick((position, data) -> viewModel.goMessageDetail(data)); messageAdapter.setOnItemClick((position, data) -> viewModel.goMessageDetail(data));
viewModel.messageBeanList.observe(this, new Observer<List<MessageBean>>() { viewModel.messageBeanList.observe(this, messageBeanList -> {
@Override if (messageBeanList == null || messageBeanList.isEmpty()) {
public void onChanged(List<MessageBean> messageBeanList) { binding.llNoData.setVisibility(View.VISIBLE);
messageAdapter.mList = messageBeanList; binding.rvMessageList.setVisibility(View.GONE);
messageAdapter.notifyDataSetChanged(); } else {
binding.llNoData.setVisibility(View.GONE);
binding.rvMessageList.setVisibility(View.VISIBLE);
} }
if (viewModel.page == 1) {
binding.refresh.finishRefresh();
} else {
binding.refresh.finishLoadMore();
}
if (viewModel.page == viewModel.totalPage) {
binding.refresh.setEnableLoadMore(false);
} else {
binding.refresh.setEnableLoadMore(true);
}
messageAdapter.mList = messageBeanList;
messageAdapter.notifyDataSetChanged();
}); });
} }
...@@ -69,4 +88,25 @@ public class MessageListFragment extends BaseFragment<FragmentMessageListBinding ...@@ -69,4 +88,25 @@ public class MessageListFragment extends BaseFragment<FragmentMessageListBinding
Integer flag = args.getInt("flag"); Integer flag = args.getInt("flag");
return new MessageListViewModel(getActivity().getApplication(), model, flag); return new MessageListViewModel(getActivity().getApplication(), model, flag);
} }
@Override
public void onLoadMore(@NonNull RefreshLayout refreshLayout) {
viewModel.page++;
if (viewModel.page > viewModel.totalPage) {
binding.tvNoMore.setVisibility(View.VISIBLE);
} else if (viewModel.page == viewModel.totalPage) {
binding.refresh.setEnableLoadMore(false);
viewModel.getMessageList();
binding.tvNoMore.setVisibility(View.VISIBLE);
} else {
viewModel.getMessageList();
}
}
@Override
public void onRefresh(@NonNull RefreshLayout refreshLayout) {
viewModel.page=1;
viewModel.getMessageList();
binding.refresh.setEnableLoadMore(true);
}
} }
...@@ -8,6 +8,7 @@ import androidx.lifecycle.MutableLiveData; ...@@ -8,6 +8,7 @@ import androidx.lifecycle.MutableLiveData;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.xx.hbhconsumer.data.http.requst.MessageRequest; import com.xx.hbhconsumer.data.http.requst.MessageRequest;
import com.xx.hbhconsumer.data.http.respons.ActivityCouponBean;
import com.xx.hbhconsumer.data.http.respons.MessageBean; import com.xx.hbhconsumer.data.http.respons.MessageBean;
import java.util.ArrayList; import java.util.ArrayList;
...@@ -21,7 +22,8 @@ import me.goldze.mvvmhabit.http.ApiDisposablePageObserver; ...@@ -21,7 +22,8 @@ import me.goldze.mvvmhabit.http.ApiDisposablePageObserver;
import me.goldze.mvvmhabit.utils.RxUtils; import me.goldze.mvvmhabit.utils.RxUtils;
public class MessageListViewModel extends BaseViewModel<MessageRequest> { public class MessageListViewModel extends BaseViewModel<MessageRequest> {
public int page = 1;
public int totalPage = 1;
private Integer flag; private Integer flag;
public MutableLiveData<List<MessageBean>> messageBeanList = new MutableLiveData<>(new ArrayList<>()); public MutableLiveData<List<MessageBean>> messageBeanList = new MutableLiveData<>(new ArrayList<>());
...@@ -73,7 +75,7 @@ public class MessageListViewModel extends BaseViewModel<MessageRequest> { ...@@ -73,7 +75,7 @@ public class MessageListViewModel extends BaseViewModel<MessageRequest> {
public void getMessageList() { public void getMessageList() {
model.getMessageList(flag) model.getMessageList(flag, page)
.compose(RxUtils.schedulersTransformer()) //线程调度 .compose(RxUtils.schedulersTransformer()) //线程调度
.doOnSubscribe(MessageListViewModel.this) .doOnSubscribe(MessageListViewModel.this)
.doOnSubscribe(new Consumer<Disposable>() { .doOnSubscribe(new Consumer<Disposable>() {
...@@ -83,7 +85,14 @@ public class MessageListViewModel extends BaseViewModel<MessageRequest> { ...@@ -83,7 +85,14 @@ public class MessageListViewModel extends BaseViewModel<MessageRequest> {
}).subscribe(new ApiDisposablePageObserver<MessageBean>() { }).subscribe(new ApiDisposablePageObserver<MessageBean>() {
@Override @Override
public void onSuccess(List<MessageBean> resultBean) { public void onSuccess(List<MessageBean> resultBean) {
messageBeanList.postValue(resultBean);
if (page == 1) {
messageBeanList.postValue(resultBean);
} else {
List<MessageBean> messageBeans = messageBeanList.getValue();
messageBeans.addAll(resultBean);
messageBeanList.postValue(messageBeans);
}
} }
@Override @Override
public void onError(String Error) { public void onError(String Error) {
...@@ -91,7 +100,7 @@ public class MessageListViewModel extends BaseViewModel<MessageRequest> { ...@@ -91,7 +100,7 @@ public class MessageListViewModel extends BaseViewModel<MessageRequest> {
} }
@Override @Override
public void getTotal(int total) { public void getTotal(int total) {
totalPage = (total - 1) / 10 + 1;
} }
}); });
......
...@@ -44,7 +44,7 @@ class ChooseCouponDialog(context:Context, var data: ClaimedCoupon, var viewModel ...@@ -44,7 +44,7 @@ class ChooseCouponDialog(context:Context, var data: ClaimedCoupon, var viewModel
orderListAdapter.mList = data.availableCoupons orderListAdapter.mList = data.availableCoupons
val notAvailableCouponAdapter = NotAvailableCouponAdapter(context) val notAvailableCouponAdapter = NotAvailableCouponAdapter(context)
binding.rvCouponList.setAdapter(orderListAdapter) binding.rvCouponList.setAdapter(notAvailableCouponAdapter)
binding.tabLayout.addOnTabSelectedListener(object : binding.tabLayout.addOnTabSelectedListener(object :
TabLayout.OnTabSelectedListener { TabLayout.OnTabSelectedListener {
......
...@@ -137,7 +137,7 @@ public class OrderDetailActivity extends BaseActivity<ActivityOrderDetailBinding ...@@ -137,7 +137,7 @@ public class OrderDetailActivity extends BaseActivity<ActivityOrderDetailBinding
String countdownText = String.format("%02d小时%02d分%02d秒", hours, minutes, seconds); String countdownText = String.format("%02d小时%02d分%02d秒", hours, minutes, seconds);
TextView countDownTextView = findViewById(R.id.tv_countdown); TextView countDownTextView = findViewById(R.id.tv_countdown);
countDownTextView.setText(countdownText); countDownTextView.setText("剩余:" + countdownText);
} }
/* /*
* 将时分秒转为秒数 * 将时分秒转为秒数
...@@ -146,7 +146,7 @@ public class OrderDetailActivity extends BaseActivity<ActivityOrderDetailBinding ...@@ -146,7 +146,7 @@ public class OrderDetailActivity extends BaseActivity<ActivityOrderDetailBinding
public void onFinish() { public void onFinish() {
// 倒计时完成后调用此方法 // 倒计时完成后调用此方法
TextView countDownTextView = findViewById(R.id.tv_countdown); TextView countDownTextView = findViewById(R.id.tv_countdown);
countDownTextView.setText("00小时00分00秒"); countDownTextView.setText("剩余:00小时00分00秒");
/*设置到时间后底部提交按钮禁用-并置灰*/ /*设置到时间后底部提交按钮禁用-并置灰*/
Button button = binding.btnPay; Button button = binding.btnPay;
button.setEnabled(false); button.setEnabled(false);
......
...@@ -9,6 +9,7 @@ import androidx.lifecycle.MutableLiveData; ...@@ -9,6 +9,7 @@ import androidx.lifecycle.MutableLiveData;
import com.xx.hbhconsumer.data.http.requst.LoginRequest; import com.xx.hbhconsumer.data.http.requst.LoginRequest;
import com.xx.hbhconsumer.data.http.requst.RecruitRequest; import com.xx.hbhconsumer.data.http.requst.RecruitRequest;
import com.xx.hbhconsumer.data.http.respons.AppInformationBean; import com.xx.hbhconsumer.data.http.respons.AppInformationBean;
import com.xx.hbhconsumer.data.http.respons.DictValueBean;
import com.xx.hbhconsumer.data.http.respons.RecruitBean; import com.xx.hbhconsumer.data.http.respons.RecruitBean;
import com.xx.hbhconsumer.ui.news.NewsListViewModel; import com.xx.hbhconsumer.ui.news.NewsListViewModel;
import com.xx.hbhconsumer.ui.order.OrderDetailActivity; import com.xx.hbhconsumer.ui.order.OrderDetailActivity;
...@@ -26,6 +27,7 @@ import me.goldze.mvvmhabit.utils.RxUtils; ...@@ -26,6 +27,7 @@ import me.goldze.mvvmhabit.utils.RxUtils;
public class RecruitListViewModel extends BaseViewModel<RecruitRequest> { public class RecruitListViewModel extends BaseViewModel<RecruitRequest> {
public MutableLiveData<List<RecruitBean>> recruitBeanList = new MutableLiveData<>(new ArrayList<>()); public MutableLiveData<List<RecruitBean>> recruitBeanList = new MutableLiveData<>(new ArrayList<>());
public MutableLiveData<List<DictValueBean>> dictValueBeanList = new MutableLiveData<>(new ArrayList<>());
String recruitmentType; String recruitmentType;
public RecruitListViewModel(@NonNull Application application, RecruitRequest model, String recruitmentType) { public RecruitListViewModel(@NonNull Application application, RecruitRequest model, String recruitmentType) {
...@@ -55,6 +57,29 @@ public class RecruitListViewModel extends BaseViewModel<RecruitRequest> { ...@@ -55,6 +57,29 @@ public class RecruitListViewModel extends BaseViewModel<RecruitRequest> {
loadData(); loadData();
} }
public void loadDictValue() {
model.getDictValueByDictType("work_place")
.compose(RxUtils.schedulersTransformer()) //线程调度
.doOnSubscribe(RecruitListViewModel.this)
.doOnSubscribe(new Consumer<Disposable>() {
@Override
public void accept(Disposable disposable) throws Exception {
}
}).subscribe(new ApiDisposableObserver<List<DictValueBean>>() {
@Override
public void onSuccess(List<DictValueBean> recruitBeans) {
dictValueBeanList.postValue(recruitBeans);
}
@Override
public void onError(String Error) {
dismissDialog();
}
});
}
public void loadData() { public void loadData() {
model.queryAppRecruitmentList(recruitmentType) model.queryAppRecruitmentList(recruitmentType)
.compose(RxUtils.schedulersTransformer()) //线程调度 .compose(RxUtils.schedulersTransformer()) //线程调度
......
...@@ -141,6 +141,13 @@ public class SearchActivity extends BaseActivity<ActivitySearchBinding, SearchVi ...@@ -141,6 +141,13 @@ public class SearchActivity extends BaseActivity<ActivitySearchBinding, SearchVi
searchGoodsAdapter.setOnItemClick((position, data) -> viewModel.goGoodsDetail(data.getBusinessId())); searchGoodsAdapter.setOnItemClick((position, data) -> viewModel.goGoodsDetail(data.getBusinessId()));
viewModel.searchGoodsBeanList.observe(this, goodsBeanList -> { viewModel.searchGoodsBeanList.observe(this, goodsBeanList -> {
if (goodsBeanList == null || goodsBeanList.isEmpty()) {
binding.rlNoData.setVisibility(View.VISIBLE);
binding.rlSearchBar.setVisibility(View.GONE);
} else {
binding.rlNoData.setVisibility(View.GONE);
binding.rlSearchBar.setVisibility(View.VISIBLE);
}
searchGoodsAdapter.mList = goodsBeanList; searchGoodsAdapter.mList = goodsBeanList;
searchGoodsAdapter.notifyDataSetChanged(); searchGoodsAdapter.notifyDataSetChanged();
}); });
......
...@@ -45,7 +45,8 @@ ...@@ -45,7 +45,8 @@
android:layout_marginLeft="13dp" android:layout_marginLeft="13dp"
android:layout_marginRight="13dp" android:layout_marginRight="13dp"
android:layout_centerVertical="true" android:layout_centerVertical="true"
android:src="@mipmap/home_icon_sousuo"/> android:src="@mipmap/home_icon_sousuo"
binding:onClickCommand="@{goodsListViewModel.goSearch}"/>
<TextView <TextView
android:id="@+id/et_search" android:id="@+id/et_search"
...@@ -57,7 +58,8 @@ ...@@ -57,7 +58,8 @@
android:layout_toLeftOf="@id/view_divider" android:layout_toLeftOf="@id/view_divider"
android:singleLine="true" android:singleLine="true"
android:inputType="text" android:inputType="text"
android:maxLines="1"/> android:maxLines="1"
binding:onClickCommand="@{goodsListViewModel.goSearch}"/>
<View <View
android:id="@+id/view_divider" android:id="@+id/view_divider"
...@@ -78,7 +80,8 @@ ...@@ -78,7 +80,8 @@
android:layout_centerVertical="true" android:layout_centerVertical="true"
android:layout_alignParentRight="true" android:layout_alignParentRight="true"
android:textSize="14sp" android:textSize="14sp"
android:text="@string/search"/> android:text="@string/search"
binding:onClickCommand="@{goodsListViewModel.goSearch}"/>
</RelativeLayout> </RelativeLayout>
......
...@@ -16,7 +16,7 @@ ...@@ -16,7 +16,7 @@
<com.xx.xxviewlibrary.witget.XxBar <com.xx.xxviewlibrary.witget.XxBar
android:id="@+id/bar" android:id="@+id/bar"
bar_title="@{@string/my_order}" bar_title="@{@string/message_center}"
on_click="@{messageCenterViewModel.clickFinish}" on_click="@{messageCenterViewModel.clickFinish}"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="55dp" android:layout_height="55dp"
......
...@@ -153,10 +153,14 @@ ...@@ -153,10 +153,14 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_toRightOf="@id/iv_shop_logo" android:layout_toRightOf="@id/iv_shop_logo"
android:layout_toLeftOf="@id/tv_total_num"
android:layout_marginRight="8dp"
android:layout_centerVertical="true" android:layout_centerVertical="true"
android:text="索菲亚家具有限公司" android:text="索菲亚家具有限公司"
android:textSize="16sp" android:textSize="16sp"
android:textColor="#FF333333"/> android:textColor="#FF333333"
android:maxLines="1"
android:ellipsize="end"/>
<TextView <TextView
android:id="@+id/tv_total_num" android:id="@+id/tv_total_num"
......
...@@ -283,6 +283,19 @@ ...@@ -283,6 +283,19 @@
</RelativeLayout> </RelativeLayout>
<RelativeLayout
android:id="@+id/rl_no_data"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@id/rl_search_tab">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:src="@mipmap/zhanwei_img_wushuju" />
</RelativeLayout>
<RelativeLayout <RelativeLayout
android:id="@+id/rl_search_area" android:id="@+id/rl_search_area"
......
...@@ -152,6 +152,13 @@ ...@@ -152,6 +152,13 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="211dp" /> android:layout_height="211dp" />
<ImageView
android:id="@+id/iv_banner"
android:layout_width="match_parent"
android:layout_height="211dp"
android:scaleType="centerCrop"
android:src="@mipmap/home_img_banner"/>
<!--中间-导航栏(店铺信息,店铺积分,店员管理)--> <!--中间-导航栏(店铺信息,店铺积分,店员管理)-->
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="fill_parent" android:layout_width="fill_parent"
......
...@@ -14,15 +14,58 @@ ...@@ -14,15 +14,58 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="#F3F3F3"> android:background="#F3F3F3">
<com.scwang.smart.refresh.layout.SmartRefreshLayout
android:id="@+id/refresh"
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_message_list"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_marginTop="17dp" android:background="@color/bg_grey">
android:orientation="vertical"
binding:layoutManager="@{LayoutManagers.linear(1,false)}"/> <com.scwang.smart.refresh.header.BezierRadarHeader
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_message_list"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="17dp"
android:orientation="vertical"
binding:layoutManager="@{LayoutManagers.linear(1,false)}"/>
<TextView
android:id="@+id/tv_no_more"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:visibility="gone"
android:layout_below="@id/rv_search_goods_list"
android:text="~ 没有更多啦 ~"
android:textSize="13sp"
android:textColor="#FF999999"/>
<!--暂无数据-->
<LinearLayout
android:id="@+id/ll_no_data"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical"
android:visibility="gone">
<ImageView
android:layout_width="120dp"
android:layout_height="129dp"
android:src="@mipmap/zhanwei_img_wushuju" />
</LinearLayout>
</LinearLayout>
</com.scwang.smart.refresh.layout.SmartRefreshLayout>
</RelativeLayout> </RelativeLayout>
</layout> </layout>
\ No newline at end of file
...@@ -13,24 +13,23 @@ ...@@ -13,24 +13,23 @@
android:id="@+id/rl_bg" android:id="@+id/rl_bg"
android:layout_width="109dp" android:layout_width="109dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:background="@color/white"> android:background="@color/bg_grey">
<TextView <TextView
android:id="@+id/tv_category_name" android:id="@+id/tv_category_name"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_centerInParent="true" android:layout_centerInParent="true"
android:layout_marginTop="16dp"
android:layout_marginBottom="16dp"
android:layout_marginLeft="17dp" android:layout_marginLeft="17dp"
android:layout_marginTop="16dp"
android:layout_marginRight="17dp" android:layout_marginRight="17dp"
android:layout_marginBottom="16dp"
android:ellipsize="end"
android:gravity="center" android:gravity="center"
android:text="住宅家具"
android:textColor="#FF5971A4"
android:textSize="16sp"
android:maxLines="2" android:maxLines="2"
android:ellipsize="end" android:text="住宅家具"
android:textStyle="bold" /> android:textColor="@color/content_grey"
android:textSize="14sp" />
</RelativeLayout> </RelativeLayout>
</layout> </layout>
\ No newline at end of file
...@@ -47,10 +47,13 @@ ...@@ -47,10 +47,13 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@id/tv_goods_name" android:layout_below="@id/tv_goods_name"
android:layout_toRightOf="@id/iv_goods_img" android:layout_toRightOf="@id/iv_goods_img"
android:layout_marginRight="11dp"
android:layout_marginTop="17dp" android:layout_marginTop="17dp"
android:text="上海迷雾之森家具有限公司" android:text="上海迷雾之森家具有限公司"
android:textSize="14sp" android:textSize="14sp"
android:textColor="#FF757575"/> android:textColor="#FF757575"
android:ellipsize="end"
android:maxLines="1"/>
<LinearLayout <LinearLayout
......
...@@ -222,7 +222,6 @@ ...@@ -222,7 +222,6 @@
android:id="@+id/tv_desc_2" android:id="@+id/tv_desc_2"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginBottom="13dp"
android:layout_marginTop="6dp" android:layout_marginTop="6dp"
android:text="2、每人最多可领1次" android:text="2、每人最多可领1次"
android:textSize="14sp" android:textSize="14sp"
...@@ -233,6 +232,7 @@ ...@@ -233,6 +232,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginBottom="13dp" android:layout_marginBottom="13dp"
android:layout_marginTop="13dp"
android:text="券编号:27868866" android:text="券编号:27868866"
android:textSize="14sp" android:textSize="14sp"
android:textColor="#FF5971A4"/> android:textColor="#FF5971A4"/>
......
...@@ -52,7 +52,7 @@ ...@@ -52,7 +52,7 @@
android:id="@+id/iv_news_views_count" android:id="@+id/iv_news_views_count"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:src="@mipmap/huodong_icon_zhankai"/> android:src="@mipmap/huanbohai_icon_yuedushu"/>
<TextView <TextView
android:id="@+id/tv_news_views_count" android:id="@+id/tv_news_views_count"
......
...@@ -158,6 +158,7 @@ ...@@ -158,6 +158,7 @@
android:layout_centerVertical="true" android:layout_centerVertical="true"
android:layout_alignParentRight="true" android:layout_alignParentRight="true"
android:src="@mipmap/huodong_icon_zhedie" android:src="@mipmap/huodong_icon_zhedie"
android:visibility="gone"
/> />
<TextView <TextView
...@@ -168,6 +169,7 @@ ...@@ -168,6 +169,7 @@
android:layout_marginRight="7dp" android:layout_marginRight="7dp"
android:textSize="14sp" android:textSize="14sp"
android:textColor="#666666" android:textColor="#666666"
android:visibility="gone"
android:text="详细信息"/> android:text="详细信息"/>
</RelativeLayout> </RelativeLayout>
......
...@@ -232,7 +232,7 @@ ...@@ -232,7 +232,7 @@
android:paddingBottom="4dp" android:paddingBottom="4dp"
android:background="@drawable/bg_white_border_radius_15" android:background="@drawable/bg_white_border_radius_15"
android:textSize="14sp" android:textSize="14sp"
android:text="领取优惠券"/> android:text="领赠品券"/>
<LinearLayout <LinearLayout
android:id="@+id/ll_gift" android:id="@+id/ll_gift"
......
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:binding="http://schemas.android.com/apk/res-auto"
xmlns:app="http://schemas.android.com/apk/res-auto">
<data>
<variable
name="recruitBean"
type="com.xx.hbhconsumer.data.http.respons.RecruitBean" />
</data>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="17dp"
android:layout_marginRight="17dp"
android:background="@color/white">
<TextView
android:id="@+id/tv_recruit_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="30dp"
android:textStyle="bold"
android:textSize="16sp"
android:textColor="#333333"
android:text="木质家具 打造温馨的家"/>
<TextView
android:id="@+id/tv_salary"
android:layout_width="80dp"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:gravity="right"
android:layout_toRightOf="@id/tv_recruit_title"
android:layout_marginTop="30dp"
android:layout_marginLeft="11dp"
android:textSize="16sp"
android:textColor="#C8382A"
android:singleLine="true"
android:ellipsize="end"
android:text="5-8K/月"/>
<TextView
android:id="@+id/tv_shop_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/tv_recruit_title"
android:layout_marginTop="21dp"
android:layout_marginBottom="17dp"
android:textSize="14sp"
android:textColor="#757575"
android:text="搜狐"
/>
<TextView
android:id="@+id/tv_address"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_below="@id/tv_recruit_title"
android:layout_marginTop="21dp"
android:textSize="14sp"
android:textColor="#757575"
android:text="天津市河西区"
/>
</RelativeLayout>
</layout>
\ No newline at end of file
...@@ -31,7 +31,8 @@ ...@@ -31,7 +31,8 @@
android:text="单人沙发扶手椅" android:text="单人沙发扶手椅"
android:textSize="16sp" android:textSize="16sp"
android:textColor="#FF333333" android:textColor="#FF333333"
/> android:ellipsize="end"
android:singleLine="true"/>
<LinearLayout <LinearLayout
android:layout_width="wrap_content" android:layout_width="wrap_content"
......
...@@ -42,9 +42,13 @@ ...@@ -42,9 +42,13 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="7dp" android:layout_marginTop="7dp"
android:layout_toRightOf="@id/iv_shop_logo" android:layout_toRightOf="@id/iv_shop_logo"
android:layout_toLeftOf="@id/btn_register"
android:layout_marginRight="8dp"
android:text="曲美家具有限公司" android:text="曲美家具有限公司"
android:textColor="#FF333333" android:textColor="#FF333333"
android:textSize="16sp" /> android:textSize="16sp"
android:maxLines="1"
android:ellipsize="end"/>
<RatingBar <RatingBar
android:id="@+id/rb_level" android:id="@+id/rb_level"
...@@ -76,6 +80,8 @@ ...@@ -76,6 +80,8 @@
android:textSize="14sp" /> android:textSize="14sp" />
</RelativeLayout> </RelativeLayout>
<androidx.recyclerview.widget.RecyclerView <androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_goods_list" android:id="@+id/rv_goods_list"
android:layout_width="match_parent" android:layout_width="match_parent"
...@@ -83,5 +89,21 @@ ...@@ -83,5 +89,21 @@
android:layout_below="@+id/rl_shop_info" android:layout_below="@+id/rl_shop_info"
android:layout_marginBottom="18dp" android:layout_marginBottom="18dp"
binding:layoutManager="@{LayoutManagers.linear(0,false)}"/> binding:layoutManager="@{LayoutManagers.linear(0,false)}"/>
<RelativeLayout
android:id="@+id/rl_no_data"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/rl_shop_info">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:layout_marginTop="30dp"
android:layout_marginBottom="30dp"
android:src="@mipmap/zhanwei_img_wushuju" />
</RelativeLayout>
</RelativeLayout> </RelativeLayout>
</layout> </layout>
\ No newline at end of file
...@@ -108,6 +108,7 @@ ...@@ -108,6 +108,7 @@
<string name="my_credit_order_detail">积分订单详情</string> <string name="my_credit_order_detail">积分订单详情</string>
<string name="my_credit">我的积分</string> <string name="my_credit">我的积分</string>
<string name="my_coupon">我的优惠券</string> <string name="my_coupon">我的优惠券</string>
<string name="message_center">消息中心</string>
<!--2--> <!--2-->
<string name="change_password">修改密码</string> <string name="change_password">修改密码</string>
<!--更换手机号--> <!--更换手机号-->
......
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 to comment