Commit adb702b0 by 张建升

代码同步

parent d9bcad5e
...@@ -24,6 +24,7 @@ public class DishDetailBean { ...@@ -24,6 +24,7 @@ public class DishDetailBean {
private boolean deletes;// 非必须 删除 false 未删除 true 删除 private boolean deletes;// 非必须 删除 false 未删除 true 删除
private String foodBasicUnit;// string 非必须 食材基本单位 private String foodBasicUnit;// string 非必须 食材基本单位
private List<DeputyUnitBean> foodUnits; private List<DeputyUnitBean> foodUnits;
private boolean show=true;
public DishDetailBean(PurchaseFoodBean foodBean , DishNode dishNode ) { public DishDetailBean(PurchaseFoodBean foodBean , DishNode dishNode ) {
// this.id = foodBean.get; ///此时的 id 一定是null deletes必是f // this.id = foodBean.get; ///此时的 id 一定是null deletes必是f
...@@ -40,5 +41,6 @@ public class DishDetailBean { ...@@ -40,5 +41,6 @@ public class DishDetailBean {
this.foodNo = foodBean.getFoodNo(); this.foodNo = foodBean.getFoodNo();
this.type = 0; this.type = 0;
this.foodUnits = foodBean.getFoodUnits(); this.foodUnits = foodBean.getFoodUnits();
this.show = true;
} }
} }
...@@ -35,11 +35,9 @@ public interface DishesContract { ...@@ -35,11 +35,9 @@ public interface DishesContract {
void loadDishesFail(); void loadDishesFail();
/** /**
* 加載/修改菜品食材信息 * 食材綁定成功
*
* @param buyIngredientsBeans 顯示的食材
*/ */
void loadFood(List<BuyIngredientsBean> buyIngredientsBeans); void bindDishFoods(DishNode dishNode);
void selectDishGroupByIndex(int position); void selectDishGroupByIndex(int position);
......
...@@ -94,12 +94,6 @@ public class DishesPresenter extends BasePresenter<DishesContract.Model, DishesC ...@@ -94,12 +94,6 @@ public class DishesPresenter extends BasePresenter<DishesContract.Model, DishesC
} }
@Override @Override
public void onComplete() {
super.onComplete();
LogUtil.e("ZJS"," onComplete ");
}
@Override
public void onError(@NotNull Throwable t) { public void onError(@NotNull Throwable t) {
super.onError(t); super.onError(t);
mRootView.loadDishGroupFail(); mRootView.loadDishGroupFail();
...@@ -140,7 +134,7 @@ public class DishesPresenter extends BasePresenter<DishesContract.Model, DishesC ...@@ -140,7 +134,7 @@ public class DishesPresenter extends BasePresenter<DishesContract.Model, DishesC
} }
public void bindDishFoods(List<DishDetailBean> dishDetailBeans ) { public void bindDishFoods( final DishNode dishNode,List<DishDetailBean> dishDetailBeans ) {
mModel.bindDishes(RequestBody.create(MediaType.parse("application/json"), JsonUtils.toJson(dishDetailBeans)))//發送請求 mModel.bindDishes(RequestBody.create(MediaType.parse("application/json"), JsonUtils.toJson(dishDetailBeans)))//發送請求
.subscribeOn(Schedulers.io())//切換到io異步線程 .subscribeOn(Schedulers.io())//切換到io異步線程
.doOnSubscribe(disposable -> mRootView.showLoading(AppConstant.GET_INFO_LOADING))//顯示加載提示框 .doOnSubscribe(disposable -> mRootView.showLoading(AppConstant.GET_INFO_LOADING))//顯示加載提示框
...@@ -154,7 +148,12 @@ public class DishesPresenter extends BasePresenter<DishesContract.Model, DishesC ...@@ -154,7 +148,12 @@ public class DishesPresenter extends BasePresenter<DishesContract.Model, DishesC
public void onNext(BaseResult bindResult) {//數據處理 public void onNext(BaseResult bindResult) {//數據處理
if (bindResult.isSuccess()) { if (bindResult.isSuccess()) {
LogUtil.e("ZJS"," 菜品食材綁定成功 bindResult"+bindResult.toString()); LogUtil.e("ZJS"," 菜品食材綁定成功 bindResult"+bindResult.toString());
DishDetailResultBean dishDetailResultBean=new DishDetailResultBean();
dishDetailResultBean.setData(dishDetailBeans);
dishNode.setDetailBean(dishDetailResultBean);
mRootView.showMessage("菜品食材綁定成功"); mRootView.showMessage("菜品食材綁定成功");
mRootView.bindDishFoods(dishNode);
} else if (TextUtil.isNotEmptyOrNullOrUndefined(bindResult.getErrMsg())) { } else if (TextUtil.isNotEmptyOrNullOrUndefined(bindResult.getErrMsg())) {
mRootView.showMessage(bindResult.getErrMsg()); mRootView.showMessage(bindResult.getErrMsg());
} else { } else {
......
...@@ -2,16 +2,12 @@ package com.gingersoft.supply_chain.mvp.ui.adapter.dishes; ...@@ -2,16 +2,12 @@ package com.gingersoft.supply_chain.mvp.ui.adapter.dishes;
import android.content.Context; import android.content.Context;
import androidx.core.content.ContextCompat;
import com.chad.library.adapter.base.BaseQuickAdapter; import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.viewholder.BaseViewHolder; import com.chad.library.adapter.base.viewholder.BaseViewHolder;
import com.gingersoft.gsa.cloud.common.utils.CollectionUtils; import com.gingersoft.gsa.cloud.common.utils.CollectionUtils;
import com.gingersoft.gsa.cloud.common.utils.MoneyUtil;
import com.gingersoft.supply_chain.R; import com.gingersoft.supply_chain.R;
import com.gingersoft.supply_chain.mvp.bean.DeputyUnitBean; import com.gingersoft.supply_chain.mvp.bean.DeputyUnitBean;
import com.gingersoft.supply_chain.mvp.bean.DishDetailBean; import com.gingersoft.supply_chain.mvp.bean.DishDetailBean;
import com.gingersoft.supply_chain.mvp.bean.PurchaseWarehousingOrderDetailsVO;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
...@@ -23,14 +19,9 @@ import java.util.List; ...@@ -23,14 +19,9 @@ import java.util.List;
*/ */
public class DishDetailAdapter extends BaseQuickAdapter<DishDetailBean, BaseViewHolder> { public class DishDetailAdapter extends BaseQuickAdapter<DishDetailBean, BaseViewHolder> {
private Context context;
private int[] colors = new int[]{R.color.color_f9, R.color.white};
public DishDetailAdapter(Context context, List<DishDetailBean> foods) { public DishDetailAdapter(Context context, List<DishDetailBean> foods) {
super(R.layout.item_dishes_foods,foods); super(R.layout.item_dishes_foods,foods);
this.context = context;
addChildClickViewIds(R.id.tv_dishes_unit,R.id.tv_dishes_del); addChildClickViewIds(R.id.tv_dishes_unit,R.id.tv_dishes_del);
// TODO: 2021/7/25 扶單位處理
} }
...@@ -38,6 +29,13 @@ public class DishDetailAdapter extends BaseQuickAdapter<DishDetailBean, BaseView ...@@ -38,6 +29,13 @@ public class DishDetailAdapter extends BaseQuickAdapter<DishDetailBean, BaseView
protected void convert(@NotNull BaseViewHolder viewHolder, DishDetailBean item) { protected void convert(@NotNull BaseViewHolder viewHolder, DishDetailBean item) {
viewHolder.setText(R.id.tv_dishes_name, item.getFoodName());//食材名字 viewHolder.setText(R.id.tv_dishes_name, item.getFoodName());//食材名字
viewHolder.setText(R.id.tv_dishes_unit, item.getBasicUnitName());//配置的單位 viewHolder.setText(R.id.tv_dishes_unit, item.getBasicUnitName());//配置的單位
if (item.isShow()) {
// viewHolder.itemView.setVisibility(View.VISIBLE);
// viewHolder.setTextColor(R.id.tv_dishes_name, ArmsUtils.getColor(context, R.color.color_18));
} else {
// viewHolder.itemView.setVisibility(View.GONE);
// viewHolder.setTextColor(R.id.tv_dishes_name, ArmsUtils.getColor(context, R.color.switcher_off_color));
}
// viewHolder.setText(R.id.tv_dishes_unit, item.getUnitName()); // viewHolder.setText(R.id.tv_dishes_unit, item.getUnitName());
List<DeputyUnitBean> deputyUnitBeans= item.getFoodUnits();//副單位 List<DeputyUnitBean> deputyUnitBeans= item.getFoodUnits();//副單位
......
...@@ -115,7 +115,9 @@ public class DishNode extends BaseExpandNode { ...@@ -115,7 +115,9 @@ public class DishNode extends BaseExpandNode {
", isParent=" + isParent + ", isParent=" + isParent +
", seqNo=" + seqNo + ", seqNo=" + seqNo +
", foodName='" + foodName + '\'' + ", foodName='" + foodName + '\'' +
", isSelect=" + isSelect +
", childNode=" + childNode + ", childNode=" + childNode +
", detailBean=" + detailBean +
'}'; '}';
} }
......
...@@ -16,7 +16,7 @@ import com.gingersoft.gsa.cloud.common.utils.log.LogUtil; ...@@ -16,7 +16,7 @@ import com.gingersoft.gsa.cloud.common.utils.log.LogUtil;
import com.gingersoft.supply_chain.R; import com.gingersoft.supply_chain.R;
import com.gingersoft.supply_chain.R2; import com.gingersoft.supply_chain.R2;
import com.gingersoft.supply_chain.di.component.DaggerDishesComponent; import com.gingersoft.supply_chain.di.component.DaggerDishesComponent;
import com.gingersoft.supply_chain.mvp.bean.BuyIngredientsBean; import com.gingersoft.supply_chain.mvp.bean.DeputyUnitBean;
import com.gingersoft.supply_chain.mvp.bean.DishDetailBean; import com.gingersoft.supply_chain.mvp.bean.DishDetailBean;
import com.gingersoft.supply_chain.mvp.bean.DishDetailResultBean; import com.gingersoft.supply_chain.mvp.bean.DishDetailResultBean;
import com.gingersoft.supply_chain.mvp.bean.PurchaseFoodBean; import com.gingersoft.supply_chain.mvp.bean.PurchaseFoodBean;
...@@ -27,7 +27,9 @@ import com.gingersoft.supply_chain.mvp.ui.adapter.dishes.DishNode; ...@@ -27,7 +27,9 @@ import com.gingersoft.supply_chain.mvp.ui.adapter.dishes.DishNode;
import com.gingersoft.supply_chain.mvp.ui.adapter.dishes.DishesGroupNode; import com.gingersoft.supply_chain.mvp.ui.adapter.dishes.DishesGroupNode;
import com.gingersoft.supply_chain.mvp.ui.adapter.dishes.DishesTreeAdapter; import com.gingersoft.supply_chain.mvp.ui.adapter.dishes.DishesTreeAdapter;
import com.gingersoft.supply_chain.mvp.ui.fragment.food.OtherFunctionFragment; import com.gingersoft.supply_chain.mvp.ui.fragment.food.OtherFunctionFragment;
import com.gingersoft.supply_chain.mvp.ui.widget.ChooseUnitPopup;
import com.jess.arms.di.component.AppComponent; import com.jess.arms.di.component.AppComponent;
import com.lxj.xpopup.XPopup;
import com.qmuiteam.qmui.widget.QMUITopBar; import com.qmuiteam.qmui.widget.QMUITopBar;
import java.util.ArrayList; import java.util.ArrayList;
...@@ -86,22 +88,57 @@ public class DishesFragment extends BaseSupplyChainFragment<DishesPresenter> imp ...@@ -86,22 +88,57 @@ public class DishesFragment extends BaseSupplyChainFragment<DishesPresenter> imp
List<DishDetailBean> foods=dishesResultBean.getData(); List<DishDetailBean> foods=dishesResultBean.getData();
if (dishDetailAdapter == null) { if (dishDetailAdapter == null) {
dishDetailAdapter = new DishDetailAdapter(requireContext(), new ArrayList<>()); dishDetailAdapter = new DishDetailAdapter(requireContext(), new ArrayList<>());
// addChildClickViewIds(R.id.tv_dishes_unit,R.id.tv_dishes_del);
dishDetailAdapter.setOnItemChildClickListener((adapter, view, position) -> {
LogUtil.e("zjs","position="+position+" curSelectDishNode "+(curSelectDishNode==null));
if (curSelectDishNode != null) {
DishDetailBean detailBean=dishDetailAdapter.getItem(position);
int id = view.getId();
if (id == R.id.tv_dishes_del) {
detailBean.setShow(false);
dishDetailAdapter.notifyItemChanged(position);
} else if (id == R.id.tv_dishes_unit) {
List<DeputyUnitBean> foodUnits= detailBean.getFoodUnits();
if (CollectionUtils.isNotNullOrEmpty(foodUnits)) {
List<String> units = new ArrayList<>();
for (int i = 0; i < foodUnits.size(); i++) {
units.add(foodUnits.get(i).getDeputyUnit());
}
if (units.size() > 1) {
ChooseUnitPopup popup = new ChooseUnitPopup(requireContext()).setStringData(units).setOnSelectListener((pos, text) -> {
//將用戶之前輸入的值,修改到新選擇的單位匯中
String unitName= detailBean.getBasicUnitName();
DeputyUnitBean deputyUnitBean = foodUnits.get(pos);
LogUtil.e("zjs"," unitName="+unitName+" deputyUnitBean="+deputyUnitBean.toString());
String selectUnitName=deputyUnitBean.getDeputyUnit();
if (!unitName.equals(selectUnitName)) {
detailBean.setBasicUnitName(selectUnitName);
dishDetailAdapter.notifyItemChanged(position);
}
});
new XPopup.Builder(getContext())
.hasShadowBg(false)
.atView(view) // 依附于所点击的View,内部会自动判断在上方或者下方显示
.asCustom(popup)
.show();
}
}
}
}
});
rvDishes.setLayoutManager(new LinearLayoutManager(requireContext(), LinearLayoutManager.VERTICAL, false)); rvDishes.setLayoutManager(new LinearLayoutManager(requireContext(), LinearLayoutManager.VERTICAL, false));
dishDetailAdapter.addFooterView(getFooterView(CollectionUtils.isNotNullOrEmpty(foods))); dishDetailAdapter.addFooterView(getFooterView(CollectionUtils.isNotNullOrEmpty(foods)));
rvDishes.setAdapter(dishDetailAdapter); rvDishes.setAdapter(dishDetailAdapter);
LogUtil.e("ZJS", " initDishDetail==");
} }
if (CollectionUtils.isNullOrEmpty(foods)) { if (CollectionUtils.isNotNullOrEmpty(foods)) {
dishDetailAdapter.setList(foods); dishDetailAdapter.setList(foods);
}else {
dishDetailAdapter.setList(new ArrayList<>());
} }
LogUtil.e("ZJS"," dishDetailAdapter count=="+dishDetailAdapter.getItemCount());
int count=dishDetailAdapter.getItemCount();
int size=dishDetailAdapter.getData().size(); int size=dishDetailAdapter.getData().size();
getFooterView(size>0); getFooterView(size>0);
LogUtil.e("ZJS"," dishDetailAdapter count== " +count+" size="+size); LogUtil.e("ZJS"," dishDetailAdapter== " +" size="+size);
} }
private View getFooterView(boolean showDone) { private View getFooterView(boolean showDone) {
...@@ -114,7 +151,7 @@ public class DishesFragment extends BaseSupplyChainFragment<DishesPresenter> imp ...@@ -114,7 +151,7 @@ public class DishesFragment extends BaseSupplyChainFragment<DishesPresenter> imp
if (curSelectDishNode != null) { if (curSelectDishNode != null) {
List<DishDetailBean> detailBeans= dishDetailAdapter.getData(); List<DishDetailBean> detailBeans= dishDetailAdapter.getData();
if (CollectionUtils.isNotNullOrEmpty(detailBeans)) { if (CollectionUtils.isNotNullOrEmpty(detailBeans)) {
mPresenter.bindDishFoods(detailBeans); mPresenter.bindDishFoods(curSelectDishNode ,detailBeans);
} }
} }
...@@ -153,12 +190,16 @@ public class DishesFragment extends BaseSupplyChainFragment<DishesPresenter> imp ...@@ -153,12 +190,16 @@ public class DishesFragment extends BaseSupplyChainFragment<DishesPresenter> imp
dishesTreeAdapter.notifyItemChanged(lastPost); dishesTreeAdapter.notifyItemChanged(lastPost);
dishesTreeAdapter.notifyItemChanged(position); dishesTreeAdapter.notifyItemChanged(position);
DishDetailResultBean detailBean= curDishNode.getDetailBean(); DishDetailResultBean detailBean= curDishNode.getDetailBean();
LogUtil.e("ZJS"," detailBean="+(detailBean==null)); if (detailBean == null) {
mPresenter.getDishesDetailData(curDishNode); mPresenter.getDishesDetailData(curDishNode);
} else {
LogUtil.e("ZJS", " detailBean= " + detailBean.toString());
loadDishesInfo(curDishNode, detailBean);
}
} }
} }
LogUtil.e("ZJS"," onItemChildClick position="+position+" 父节点="+ppos +" getFoodName"+ curDishNode.getFoodName());
} }
}); });
...@@ -189,8 +230,8 @@ public class DishesFragment extends BaseSupplyChainFragment<DishesPresenter> imp ...@@ -189,8 +230,8 @@ public class DishesFragment extends BaseSupplyChainFragment<DishesPresenter> imp
} }
@Override @Override
public void loadFood(List<BuyIngredientsBean> buyIngredientsBeans) { public void bindDishFoods(DishNode dishNode) {
LogUtil.e("zjs"," 绑定车工 "+dishNode.toString());
} }
@Override @Override
......
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