提交 2491a337 authored 作者: lgd's avatar lgd

1.修改bug,添加组装订单

2.//TODO erp用户激活测试,忘记/重置密码测试,审核规则,领用申请列表/退件列表/参数,坩埚下单页面,组装下单,产品下单还差附件测试,mes,刷新token
上级 88fa03d6
......@@ -1201,6 +1201,14 @@ public interface ApiService {
@GET("/useApply/so/page/list")
Observable<BaseBean> useApply(@QueryMap Map<String, Object> param);
/**
* step8_1-领用申请分页查询
*
* @return
*/
@GET("/useApply/ao/page/list")
Observable<BaseBean> useAoApply(@QueryMap Map<String, Object> param);
/**
* step8_3-领用申请审核
*
......@@ -1208,6 +1216,14 @@ public interface ApiService {
*/
@PUT("/useApply/so/audit/{applyId}")
Observable<BaseBean> useApplyCheck(@Path("applyId") String applyId, @Body RequestBody requestBody);
/**
* step8_3-领用申请审核
*
* @return
*/
@PUT("/procedureStart/ao/applyUse/{orderId}")
Observable<BaseBean> useAoApplyCheck(@Path("applyId") String applyId, @Body RequestBody requestBody);
/**
* step7_7-退货申请流水列表
*
......
......@@ -164,7 +164,7 @@ public class InsideOrderDetailActivity extends WorkToolBarActivity {
proList = new ArrayList<>();
proAdapter = new InsideOrderDetailProductAdapter(R.layout.item_order_product, proList, status);
proAdapter.bindToRecyclerView(rvPro);
proAdapter.setEmptyView(R.layout.view_empty_order, rvProcess);
proAdapter.setEmptyView(R.layout.view_empty_order, rvPro);
}
private void getData() {
......
package com.wd.workoffice.ui.activity.bat.order;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextUtils;
import android.text.TextWatcher;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;
import com.alibaba.fastjson.JSON;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.wd.workoffice.R;
import com.wd.workoffice.app.BaseBean;
import com.wd.workoffice.app.WorkToolBarActivity;
import com.wd.workoffice.bean.OrderDetail;
import com.wd.workoffice.bean.event.CheckOrderEvent;
import com.wd.workoffice.retrofit.RtfUtils;
import com.wd.workoffice.retrofit.WorkObserver;
import com.wd.workoffice.ui.adapter.OrderDetailProductAdapter;
import com.wd.workoffice.ui.adapter.OrderProcessAdapter;
import com.wd.workoffice.ui.adapter.ProductOrderDetailProductAdapter;
import com.wd.workoffice.util.WorkUtils;
import org.greenrobot.eventbus.EventBus;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import androidx.appcompat.app.AlertDialog;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
import flexible.xd.android_base.network.rtfhttp.Transformer;
import io.reactivex.disposables.Disposable;
/**
* 组装订单详情
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class ProductOrderDetailActivity extends WorkToolBarActivity {
@BindView(R.id.ll_bottom)
LinearLayout llBottom;
@BindView(R.id.tv_name)
TextView tvName;
@BindView(R.id.tv_dep)
TextView tvDep;
@BindView(R.id.rl_dep)
RelativeLayout rlDep;
@BindView(R.id.tv_place_name)
TextView tvPlaceName;
@BindView(R.id.tv_company)
TextView tvCompany;
@BindView(R.id.tv_order_no)
TextView tvOrderNo;
@BindView(R.id.tv_time)
TextView tvTime;
@BindView(R.id.tv_send_time)
TextView tvSendTime;
@BindView(R.id.tv_order_price)
TextView tvOrderPrice;
@BindView(R.id.ll_sale)
LinearLayout llSale;
@BindView(R.id.rv_pro)
RecyclerView rvPro;
private OrderDetail dataBean;
private ProductOrderDetailProductAdapter proAdapter;
private List<OrderDetail.OrderItemsBean> proList;
private String identity;
private Integer status;
@Override
protected void initView() {
ButterKnife.bind(this);
rvPro.setLayoutManager(new LinearLayoutManager(this, RecyclerView.VERTICAL, false));
status = Integer.valueOf(getIntent().getStringExtra("status"));
identity = getIntent().getStringExtra("identity");
if (TextUtils.equals(identity, "1")) {//销售1
} else {
rlDep.setVisibility(View.GONE);
}
}
@Override
protected void initData() {
getData();
proList = new ArrayList<>();
proAdapter = new ProductOrderDetailProductAdapter(R.layout.item_order_product, proList, status);
proAdapter.bindToRecyclerView(rvPro);
}
private void getData() {
RtfUtils.getRtf().saleOrderDetail(getIntent().getStringExtra("id"), "3").compose(Transformer.schedule()).subscribe(new WorkObserver<BaseBean>() {
@Override
public void doOnSubscribe(Disposable d) {
}
@Override
public void onFail(String errorMsg) {
hideLoading();
toast(errorMsg);
}
@Override
public void onSuccess(BaseBean data) {
hideLoading();
if (data.getCode() != 0) {
toast(data.getMessage());
return;
}
dataBean = JSON.parseObject(data.getData().toString(), OrderDetail.class);
proList.addAll(dataBean.getOrderItems());
proAdapter.notifyDataSetChanged();
tvName.setText(dataBean.getCustomerName());
tvDep.setText(dataBean.getReceiveDeptName());
tvPlaceName.setText(dataBean.getLaunchUserName());
tvCompany.setText(dataBean.getLaunchDeptName());
tvOrderNo.setText(dataBean.getId());
tvTime.setText(dataBean.getCreatedTime());
tvSendTime.setText(dataBean.getRequireTime());
tvOrderPrice.setText(String.valueOf(dataBean.getLaunchOrderAmount()));
}
});
}
@Override
protected void initEvent() {
proAdapter.setOnItemChildClickListener(new BaseQuickAdapter.OnItemChildClickListener() {
@Override
public void onItemChildClick(BaseQuickAdapter adapter, View view, int position) {
switch (view.getId()) {
case R.id.tv_get:
startActivity(UseApplyActivity.class,
"status", dataBean.getStatus() + "",
"num", proList.get(position).getCanOutStoreProductSum() + "",
"product", proList.get(position).getProductName(),
"simpleCode", proList.get(position).getProductSimpleCode(),
"orderId", getIntent().getStringExtra("id"),
"productId", proList.get(position).getProductId() + "");
break;
case R.id.tv_add:
startActivity(AddStockApplyActivity.class,
"status", dataBean.getStatus() + "",
"num", proList.get(position).getCanInStoreProductSum() + "",
"product", proList.get(position).getProductName(),
"simpleCode", proList.get(position).getProductSimpleCode(),
"orderId", getIntent().getStringExtra("id"),
"orderItemId", proList.get(position).getId(),
"productId", proList.get(position).getProductId() + "");
break;
case R.id.tv_return:
startActivity(ReturnApplyActivity.class,
"status", dataBean.getStatus() + "",
"num", proList.get(position).getStoreSum() + "",
"product", proList.get(position).getProductName(),
"simpleCode", proList.get(position).getProductSimpleCode(),
"orderId", getIntent().getStringExtra("id"),
"productId", proList.get(position).getProductId() + "");
break;
case R.id.tv_flow:
startActivity(ProFlowActivity.class,
"status", dataBean.getStatus() + "",
"num", proList.get(position).getStoreSum() + "",
"product", proList.get(position).getProductName(),
"simpleCode", proList.get(position).getProductSimpleCode(),
"orderId", getIntent().getStringExtra("id"),
"productId", proList.get(position).getProductId() + "",
"orderItemId", proList.get(position).getId(),
"info", JSON.toJSONString(proList.get(position)));
break;
}
}
});
}
@Override
protected int layoutId() {
return R.layout.activity_product_order;
}
}
......@@ -173,7 +173,7 @@ public class SaleOrderDetailActivity extends WorkToolBarActivity {
proList = new ArrayList<>();
proAdapter = new OrderDetailProductAdapter(R.layout.item_order_product, proList, status);
proAdapter.bindToRecyclerView(rvPro);
proAdapter.setEmptyView(R.layout.view_empty_order, rvProcess);
proAdapter.setEmptyView(R.layout.view_empty_order, rvPro);
}
private void getData() {
......
......@@ -173,7 +173,7 @@ public class SupplierOrderDetailActivity extends WorkToolBarActivity {
proList = new ArrayList<>();
proAdapter = new SupplierOrderDetailProductAdapter(R.layout.item_order_product, proList, status);
proAdapter.bindToRecyclerView(rvPro);
proAdapter.setEmptyView(R.layout.view_empty_order, rvProcess);
proAdapter.setEmptyView(R.layout.view_empty_order, rvPro);
}
private void getData() {
......
......@@ -55,6 +55,7 @@ public class UseApplyActivity extends WorkToolBarActivity {
Bundle bundle = new Bundle();
bundle.putString("state", order[i]);
bundle.putString("orderId", getIntent().getStringExtra("orderId"));
bundle.putString("orderType", getIntent().getStringExtra("orderType"));
bundle.putString("simpleCode", getIntent().getStringExtra("simpleCode"));
bundle.putString("product", getIntent().getStringExtra("product"));
saleFragment.setArguments(bundle);
......
......@@ -17,6 +17,7 @@ import com.wd.workoffice.app.WorkToolBarActivity;
import com.wd.workoffice.bean.UseApplyBean;
import com.wd.workoffice.bean.event.CheckSendEvent;
import com.wd.workoffice.bean.event.CheckUseEvent;
import com.wd.workoffice.bean.workEnum.OrderType;
import com.wd.workoffice.retrofit.RtfUtils;
import com.wd.workoffice.retrofit.WorkObserver;
import com.wd.workoffice.util.WorkUtils;
......@@ -30,6 +31,7 @@ import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
import flexible.xd.android_base.network.rtfhttp.Transformer;
import io.reactivex.Observable;
import io.reactivex.disposables.Disposable;
/**
......@@ -64,6 +66,7 @@ public class UseApplyDetailActivity extends WorkToolBarActivity {
@BindView(R.id.ll_check)
LinearLayout llCheck;
private UseApplyBean.RecordsBean info;
private String orderType;
@Override
protected void initView() {
......@@ -72,6 +75,7 @@ public class UseApplyDetailActivity extends WorkToolBarActivity {
@Override
protected void initData() {
orderType = getIntent().getStringExtra("orderType");
info = JSON.parseObject(getIntent().getStringExtra("info"), UseApplyBean.RecordsBean.class);
tvNum.setText(String.valueOf(info.getProductAmount()));
tvPerson.setText(String.valueOf(info.getCreatedByName()));
......@@ -167,7 +171,15 @@ public class UseApplyDetailActivity extends WorkToolBarActivity {
checkParam.put("auditRemark", remark);
checkParam.put("productAmount", productAmount);
checkParam.put("id", id);
RtfUtils.getRtf().useApplyCheck(id + "", WorkUtils.convertMapToBody(checkParam)).compose(Transformer.schedule()).subscribe(new WorkObserver<BaseBean>() {
Observable<BaseBean> observable;
if (TextUtils.equals(orderType, OrderType.SALE.getCode())) {
observable = RtfUtils.getRtf().useApplyCheck(id + "", WorkUtils.convertMapToBody(checkParam));
} else if (TextUtils.equals(orderType, OrderType.BUILD.getCode())) {
observable = RtfUtils.getRtf().useAoApplyCheck(id + "", WorkUtils.convertMapToBody(checkParam));
} else {
observable = RtfUtils.getRtf().useApplyCheck(id + "", WorkUtils.convertMapToBody(checkParam));
}
observable.compose(Transformer.schedule()).subscribe(new WorkObserver<BaseBean>() {
@Override
public void doOnSubscribe(Disposable d) {
}
......
......@@ -24,7 +24,7 @@ import butterknife.ButterKnife;
import static com.google.android.material.tabs.TabLayout.MODE_FIXED;
/**
* 销售 - 供应订单
* 组装订单
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
......
package com.wd.workoffice.ui.adapter;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.wd.workoffice.R;
import com.wd.workoffice.bean.OrderDetail;
import com.wd.workoffice.util.WorkUtils;
import java.util.List;
/**
* Created by flexible on 2018/8/13.
*/
public class ProductOrderDetailProductAdapter extends BaseQuickAdapter<OrderDetail.OrderItemsBean, BaseViewHolder> {
int status;
public ProductOrderDetailProductAdapter(int layoutResId, List data, Integer status) {
super(layoutResId, data);
this.status = status;
}
@Override
protected void convert(BaseViewHolder helper, OrderDetail.OrderItemsBean item) {
helper.setText(R.id.tv_name, item.getProductName());
helper.setText(R.id.tv_card, item.getProductSoleCode());
helper.setText(R.id.tv_card_name, item.getProductSimpleCode());
helper.setText(R.id.tv_spec, item.getProductSpec());
helper.setText(R.id.tv_price, "¥".concat(String.valueOf(item.getInnerPrice())));
helper.setText(R.id.tv_all_price, "¥".concat(String.valueOf(item.getInnerPrice())));
helper.setText(R.id.tv_unit, item.getProductUnit());
helper.setText(R.id.tv_from, WorkUtils.getOrderFrom(item.getType()));
helper.setText(R.id.tv_num, String.valueOf(item.getProductCount()));
helper.addOnClickListener(R.id.tv_get);
helper.addOnClickListener(R.id.tv_return);
helper.addOnClickListener(R.id.tv_flow);
helper.addOnClickListener(R.id.tv_add);
helper.addOnClickListener(R.id.tv_quality);
helper.setGone(R.id.tv_quality, false);
helper.setGone(R.id.tv_add, false);
helper.setGone(R.id.tv_return, false);
helper.setGone(R.id.tv_flow, false);
}
}
......@@ -15,6 +15,8 @@ import com.wd.workoffice.bean.event.CheckLogisticEvent;
import com.wd.workoffice.bean.event.CheckOrderEvent;
import com.wd.workoffice.retrofit.RtfUtils;
import com.wd.workoffice.retrofit.WorkObserver;
import com.wd.workoffice.ui.activity.bat.order.ProductOrderDetailActivity;
import com.wd.workoffice.ui.activity.bat.order.SupplierOrderDetailActivity;
import com.wd.workoffice.ui.activity.bat.work.WorkLogisticsDetailActivity;
import com.wd.workoffice.ui.adapter.SaleProductAdapter;
import com.wd.workoffice.ui.adapter.WorkLogisticAdapter;
......@@ -136,7 +138,10 @@ public class ProductOrderFragment extends WorkBaseFg {
dataAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
startActivity(WorkLogisticsDetailActivity.class, "info", JSON.toJSONString(dataList.get(position)));
startActivity(ProductOrderDetailActivity.class,
"identity",identity,
"id", dataList.get(position).getId() + "",
"status", dataList.get(position).getStatus() + "");
}
});
}
......
......@@ -19,6 +19,7 @@ import com.wd.workoffice.bean.SendApplyBean;
import com.wd.workoffice.bean.UseApplyBean;
import com.wd.workoffice.bean.event.CheckSendEvent;
import com.wd.workoffice.bean.event.CheckUseEvent;
import com.wd.workoffice.bean.workEnum.OrderType;
import com.wd.workoffice.retrofit.RtfUtils;
import com.wd.workoffice.retrofit.WorkObserver;
import com.wd.workoffice.ui.activity.bat.order.SendApplyDetailActivity;
......@@ -41,6 +42,7 @@ import androidx.recyclerview.widget.RecyclerView;
import butterknife.BindView;
import butterknife.ButterKnife;
import flexible.xd.android_base.network.rtfhttp.Transformer;
import io.reactivex.Observable;
import io.reactivex.disposables.Disposable;
......@@ -63,6 +65,7 @@ public class UseApplyFragment extends WorkBaseFg {
private String orderId;
private String simpleCode;
private String product;
private String orderType;
@Override
protected void initView() {
......@@ -95,11 +98,20 @@ public class UseApplyFragment extends WorkBaseFg {
orderId = arguments.getString("orderId");
simpleCode = arguments.getString("simpleCode");
product = arguments.getString("product");
orderType = arguments.getString("orderType");
}
}
private void getData() {
RtfUtils.getRtf().useApply(param).compose(Transformer.schedule()).subscribe(new WorkObserver<BaseBean>() {
Observable<BaseBean> observable;
if (TextUtils.equals(orderType, OrderType.SALE.getCode())) {
observable = RtfUtils.getRtf().useApply(param);
} else if (TextUtils.equals(orderType, OrderType.BUILD.getCode())) {
observable = RtfUtils.getRtf().useAoApply(param);
} else {
observable = RtfUtils.getRtf().useApply(param);
}
observable.compose(Transformer.schedule()).subscribe(new WorkObserver<BaseBean>() {
@Override
public void doOnSubscribe(Disposable d) {
}
......@@ -152,7 +164,9 @@ public class UseApplyFragment extends WorkBaseFg {
dataAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
startActivity(UseApplyDetailActivity.class, "info", JSON.toJSONString(dataList.get(position)));
startActivity(UseApplyDetailActivity.class,
"orderType", orderType,
"info", JSON.toJSONString(dataList.get(position)));
}
});
dataAdapter.setOnItemChildClickListener(new BaseQuickAdapter.OnItemChildClickListener() {
......@@ -172,7 +186,7 @@ public class UseApplyFragment extends WorkBaseFg {
}
private void checkDialog(int status, int id,double productAmount) {
private void checkDialog(int status, int id, double productAmount) {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
View view = LayoutInflater.from(getActivity()).inflate(R.layout.view_check, null);
TextView tvOk = view.findViewById(R.id.tv_ok);
......@@ -206,7 +220,7 @@ public class UseApplyFragment extends WorkBaseFg {
toast("请填写备注");
return;
}
check(status, etRemark.getText().toString(), id,productAmount);
check(status, etRemark.getText().toString(), id, productAmount);
addCartDialog.dismiss();
}
});
......@@ -220,13 +234,21 @@ public class UseApplyFragment extends WorkBaseFg {
}
private void check(int status, String remark, int id,double productAmount) {
private void check(int status, String remark, int id, double productAmount) {
Map<String, Object> checkParam = WorkUtils.simpleParam();
checkParam.put("status", status);
checkParam.put("auditRemark", remark);
checkParam.put("productAmount", productAmount);
checkParam.put("id", id);
RtfUtils.getRtf().useApplyCheck(id+"", WorkUtils.convertMapToBody(checkParam)).compose(Transformer.schedule()).subscribe(new WorkObserver<BaseBean>() {
Observable<BaseBean> observable;
if (TextUtils.equals(orderType, OrderType.SALE.getCode())) {
observable = RtfUtils.getRtf().useApplyCheck(id + "", WorkUtils.convertMapToBody(checkParam));
} else if (TextUtils.equals(orderType, OrderType.BUILD.getCode())) {
observable = RtfUtils.getRtf().useAoApplyCheck(id + "", WorkUtils.convertMapToBody(checkParam));
} else {
observable = RtfUtils.getRtf().useApplyCheck(id + "", WorkUtils.convertMapToBody(checkParam));
}
observable.compose(Transformer.schedule()).subscribe(new WorkObserver<BaseBean>() {
@Override
public void doOnSubscribe(Disposable d) {
}
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论