提交 b56d982b authored 作者: lgd's avatar lgd

1.bat页面商店 两步下单页面

2.//TODO erp用户激活,忘记密码测试,bat,mes,消息,我的,刷新token
上级 dd88c3e8
......@@ -137,6 +137,30 @@
android:screenOrientation="portrait"
android:theme="@style/Work.Base"
android:windowSoftInputMode="adjustPan" />
<activity
android:name=".ui.activity.bat.StoreOutsourcingActivity"
android:configChanges="keyboardHidden|orientation"
android:label="下单"
android:launchMode="singleTop"
android:screenOrientation="portrait"
android:theme="@style/Work.Base"
android:windowSoftInputMode="adjustPan" />
<activity
android:name=".ui.activity.bat.StoreSupplierActivity"
android:configChanges="keyboardHidden|orientation"
android:label="下单"
android:launchMode="singleTop"
android:screenOrientation="portrait"
android:theme="@style/Work.Base"
android:windowSoftInputMode="adjustPan" />
<activity
android:name=".ui.activity.bat.StoreCrucibleActivity"
android:configChanges="keyboardHidden|orientation"
android:label="下单"
android:launchMode="singleTop"
android:screenOrientation="portrait"
android:theme="@style/Work.Base"
android:windowSoftInputMode="adjustPan" />
<provider
android:name="androidx.core.content.FileProvider"
android:authorities="com.wd.workoffice.fileprovider"
......
package com.wd.workoffice.bean;
/**
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class StockBean {
/**
* createdBy : null
* createdByName : null
* createdTime : 2019-11-27 14:33:47
* updatedBy : null
* updatedByName : null
* updatedTime : null
* id : 13
* deptId : null
* stockTypeId : null
* customerId : null
* code : MUJU_IN
* name : 模具成品内库1
* status : 启用
* ofType : null
* getOfTypeErpId : null
* customerName : null
* deptName : null
* siteType : 铝碳成品库
* isShowByDateDesc : null
* sign : null
* stTypeName : 厂内库
*/
private Object createdBy;
private Object createdByName;
private String createdTime;
private Object updatedBy;
private Object updatedByName;
private Object updatedTime;
private int id;
private Object deptId;
private Object stockTypeId;
private Object customerId;
private String code;
private String name;
private String status;
private Object ofType;
private Object getOfTypeErpId;
private Object customerName;
private Object deptName;
private String siteType;
private Object isShowByDateDesc;
private Object sign;
private String stTypeName;
public Object getCreatedBy() {
return createdBy;
}
public void setCreatedBy(Object createdBy) {
this.createdBy = createdBy;
}
public Object getCreatedByName() {
return createdByName;
}
public void setCreatedByName(Object createdByName) {
this.createdByName = createdByName;
}
public String getCreatedTime() {
return createdTime;
}
public void setCreatedTime(String createdTime) {
this.createdTime = createdTime;
}
public Object getUpdatedBy() {
return updatedBy;
}
public void setUpdatedBy(Object updatedBy) {
this.updatedBy = updatedBy;
}
public Object getUpdatedByName() {
return updatedByName;
}
public void setUpdatedByName(Object updatedByName) {
this.updatedByName = updatedByName;
}
public Object getUpdatedTime() {
return updatedTime;
}
public void setUpdatedTime(Object updatedTime) {
this.updatedTime = updatedTime;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public Object getDeptId() {
return deptId;
}
public void setDeptId(Object deptId) {
this.deptId = deptId;
}
public Object getStockTypeId() {
return stockTypeId;
}
public void setStockTypeId(Object stockTypeId) {
this.stockTypeId = stockTypeId;
}
public Object getCustomerId() {
return customerId;
}
public void setCustomerId(Object customerId) {
this.customerId = customerId;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public Object getOfType() {
return ofType;
}
public void setOfType(Object ofType) {
this.ofType = ofType;
}
public Object getGetOfTypeErpId() {
return getOfTypeErpId;
}
public void setGetOfTypeErpId(Object getOfTypeErpId) {
this.getOfTypeErpId = getOfTypeErpId;
}
public Object getCustomerName() {
return customerName;
}
public void setCustomerName(Object customerName) {
this.customerName = customerName;
}
public Object getDeptName() {
return deptName;
}
public void setDeptName(Object deptName) {
this.deptName = deptName;
}
public String getSiteType() {
return siteType;
}
public void setSiteType(String siteType) {
this.siteType = siteType;
}
public Object getIsShowByDateDesc() {
return isShowByDateDesc;
}
public void setIsShowByDateDesc(Object isShowByDateDesc) {
this.isShowByDateDesc = isShowByDateDesc;
}
public Object getSign() {
return sign;
}
public void setSign(Object sign) {
this.sign = sign;
}
public String getStTypeName() {
return stTypeName;
}
public void setStTypeName(String stTypeName) {
this.stTypeName = stTypeName;
}
}
......@@ -5,7 +5,7 @@ package com.wd.workoffice.bean.workEnum;
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public enum PermissType {
public enum PermissionType {
// 供应流程 PROCESS_SUPPLY 接单:SUPPLY_SELL 下单:SUPPLY_BUY
//* 内部交易流程 PROCESS_INSIDE 接单:INSIDE_SELL 下单:INSIDE_BUY
//
......@@ -42,7 +42,7 @@ public enum PermissType {
return code;
}
PermissType(String code, String name) {
PermissionType(String code, String name) {
this.code = code;
this.name = name;
}
......
......@@ -3,8 +3,10 @@ package com.wd.workoffice.contract;
import com.wd.workoffice.app.BaseBean;
import com.wd.workoffice.bean.DepBean;
import com.wd.workoffice.bean.ProcessBean;
import com.wd.workoffice.bean.StockBean;
import java.util.List;
import java.util.Map;
import flexible.xd.android_base.mvpBase.IBaseModel;
import flexible.xd.android_base.mvpBase.IBasePresenter;
......@@ -20,26 +22,25 @@ public interface BatSaleContract {
interface Model extends IBaseModel {
Observable<BaseBean> getProcess(String processCode, Integer transitPartId);
Observable<BaseBean> getProduct(String phone, String verifyCode, String type);
Observable<BaseBean> getDep(String permission);
Observable<BaseBean> getStock(Map<String,Object> param);
}
interface View extends IBaseView {
void processList(List<ProcessBean> dataList);
void productList(List<Object> dataList);
void depList(List<DepBean> dataList);
void getStock(List<StockBean> dataList);
}
interface Presenter extends IBasePresenter<View> {
void getProcess(String processCode, Integer transitPartId);
void getProduct(String phone, String verifyCode, String type);
void getDep(String permission);
void getStock(Map<String,Object> param);
}
}
......@@ -4,6 +4,8 @@ import com.wd.workoffice.app.BaseBean;
import com.wd.workoffice.contract.BatSaleContract;
import com.wd.workoffice.retrofit.RtfUtils;
import java.util.Map;
import io.reactivex.Observable;
/**
......@@ -21,13 +23,13 @@ public class BatSaleModel implements BatSaleContract.Model {
return RtfUtils.getRtf().getProcess(processCode, transitPartId);
}
@Override
public Observable<BaseBean> getProduct(String phone, String verifyCode, String type) {
return null;
}
@Override
public Observable<BaseBean> getDep(String permission) {
return RtfUtils.getRtf().getDepByPermission(permission);
}
@Override
public Observable<BaseBean> getStock(Map<String,Object> param) {
return RtfUtils.getRtf().getStock(param);
}
}
package com.wd.workoffice.presenter;
import android.content.Intent;
import com.alibaba.fastjson.JSON;
import com.wd.workoffice.app.BaseBean;
import com.wd.workoffice.bean.DepBean;
import com.wd.workoffice.bean.ProcessBean;
import com.wd.workoffice.contract.BatSaleContract;
import com.wd.workoffice.contract.ForgetOneContract;
import com.wd.workoffice.model.BatSaleModel;
import com.wd.workoffice.retrofit.WorkObserver;
import java.util.Map;
import flexible.xd.android_base.mvpBase.BasePresenter;
import flexible.xd.android_base.network.rtfhttp.Transformer;
import io.reactivex.disposables.Disposable;
......@@ -55,10 +52,6 @@ public class BatSalePresenter extends BasePresenter<BatSaleContract.View, BatSal
});
}
@Override
public void getProduct(String phone, String verifyCode, String type) {
}
@Override
public void getDep(String permission) {
......@@ -86,4 +79,31 @@ public class BatSalePresenter extends BasePresenter<BatSaleContract.View, BatSal
}
});
}
@Override
public void getStock(Map<String, Object> param) {
mView.showLoading();
mModel.getStock(param).compose(Transformer.schedule()).subscribe(new WorkObserver<BaseBean>() {
@Override
public void doOnSubscribe(Disposable d) {
mDisposable.add(d);
}
@Override
public void onFail(String errorMsg) {
mView.hideLoading();
mView.onError(errorMsg);
}
@Override
public void onSuccess(BaseBean data) {
mView.hideLoading();
if (data.getCode() != 0) {
mView.onError(data.getMessage());
return;
}
// mView.getStock(JSON.parseArray(data.getData().toString(), DepBean.class));
}
});
}
}
......@@ -246,4 +246,17 @@ public interface ApiService {
@GET("product/page/list/by/outDept/transit-part")
Observable<BaseBean> getProductList(@QueryMap Map<String, Object> param);
/**
* 仓库
*
* @param deptId
* @param customerId
* @param sign 固定值send
* 内部交易和供应一样的 一个参数 deptId
* 坩埚的话参数是3个
* @return
*/
@GET("/stock/search-list")
Observable<BaseBean> getStock(@QueryMap Map<String, Object> param);
}
package com.wd.workoffice.ui.activity.bat;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.RelativeLayout;
import android.widget.TextView;
import com.qmuiteam.qmui.widget.dialog.QMUIDialog;
import com.wd.workoffice.R;
import com.wd.workoffice.app.WorkToolBarActivity;
import com.wd.workoffice.bean.DepBean;
import com.wd.workoffice.bean.ProcessBean;
import com.wd.workoffice.bean.StockBean;
import com.wd.workoffice.bean.workEnum.PermissionType;
import com.wd.workoffice.contract.BatSaleContract;
import com.wd.workoffice.presenter.BatSalePresenter;
import com.wd.workoffice.util.DialogUtils;
import com.wd.workoffice.util.WorkUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import androidx.annotation.Nullable;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
/**
* 商店-坩埚
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class StoreCrucibleActivity extends WorkToolBarActivity implements BatSaleContract.View {
@BindView(R.id.tv_dep)
TextView tvDep;
@BindView(R.id.rl_dep)
RelativeLayout rlDep;
@BindView(R.id.tv_warehouse)
TextView tvWarehouse;
@BindView(R.id.rl_warehouse)
RelativeLayout rlWarehouse;
@BindView(R.id.tv_product)
TextView tvProduct;
@BindView(R.id.rl_product)
RelativeLayout rlProduct;
private BatSalePresenter batSalePresenter;
private QMUIDialog.MenuDialogBuilder depDialog;
private QMUIDialog.MenuDialogBuilder stockDialog;
private List<DepBean> depList;
List<String> depNameList = new ArrayList<>();
private DepBean chooseDep;
private Integer supplierId;
private Map<String, Object> stockParam;
private List<StockBean> stockList;
private List<String> stockNameList;
private StockBean chooseStock;
@Override
protected void initView() {
ButterKnife.bind(this);
batSalePresenter = new BatSalePresenter();
batSalePresenter.onAttach(this);
depDialog = DialogUtils.listDialog(this);
stockDialog = DialogUtils.listDialog(this);
}
@Override
protected void initData() {
batSalePresenter.getDep(PermissionType.PROCESS_CRUCIBLE.getCode());
stockParam = WorkUtils.simpleParam();
}
@Override
protected void initEvent() {
}
@Override
protected int layoutId() {
return R.layout.activity_bat_crucible;
}
@OnClick({ R.id.rl_product, R.id.rl_warehouse, R.id.rl_dep})
public void onViewClicked(View view) {
switch (view.getId()) {
case R.id.rl_dep:
depDialog.show();
break;
case R.id.rl_warehouse:
if (supplierId == null) {
toast("请先选择供应商");
return;
}
stockDialog.show();
break;
case R.id.rl_product:
if (chooseDep == null) {
toast("请先选择接单部门");
return;
}
if (supplierId == null) {
toast("请先选择供应商");
return;
}
if (chooseStock == null) {
toast("请选择入库仓库");
return;
}
startActivity(StoreSaleProductActivity.class, "depId", chooseDep.getId() + "",
"depName", chooseDep.getName(), "transitPartId", supplierId.toString(), "code", PermissionType.PROCESS_SUPPLY.getCode());
break;
}
}
@Override
public void processList(List<ProcessBean> dataList) {
}
@Override
public void depList(List<DepBean> dataList) {
depList = dataList;
for (DepBean dep : dataList) {
depNameList.add(dep.getName());
}
depDialog.addItems(depNameList.toArray(new String[depNameList.size()]), new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
chooseDep = depList.get(which);
tvDep.setText(depNameList.get(which));
dialog.dismiss();
stockParam.put("deptId", chooseDep.getId());
batSalePresenter.getStock(stockParam);
}
});
}
@Override
public void getStock(List<StockBean> dataList) {
stockList = dataList;
for (StockBean dep : dataList) {
stockNameList.add(dep.getName());
}
stockDialog.addItems(stockNameList.toArray(new String[stockNameList.size()]), new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
chooseStock = stockList.get(which);
tvWarehouse.setText(depNameList.get(which));
dialog.dismiss();
}
});
}
}
package com.wd.workoffice.ui.activity.bat;
import android.content.DialogInterface;
import android.content.Intent;
import android.view.View;
import android.widget.RelativeLayout;
import android.widget.TextView;
import com.qmuiteam.qmui.widget.dialog.QMUIDialog;
import com.wd.workoffice.R;
import com.wd.workoffice.app.WorkToolBarActivity;
import com.wd.workoffice.bean.DepBean;
import com.wd.workoffice.bean.ProcessBean;
import com.wd.workoffice.bean.StockBean;
import com.wd.workoffice.bean.workEnum.PermissionType;
import com.wd.workoffice.contract.BatSaleContract;
import com.wd.workoffice.presenter.BatSalePresenter;
import com.wd.workoffice.util.DialogUtils;
import java.util.ArrayList;
import java.util.List;
import androidx.annotation.Nullable;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
/**
* 商店-外出库
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class StoreOutsourcingActivity extends WorkToolBarActivity implements BatSaleContract.View {
@BindView(R.id.tv_client)
TextView tvClient;
@BindView(R.id.rl_client)
RelativeLayout rlClient;
@BindView(R.id.tv_dep)
TextView tvDep;
@BindView(R.id.rl_dep)
RelativeLayout rlDep;
@BindView(R.id.tv_process)
TextView tvProcess;
@BindView(R.id.rl_process)
RelativeLayout rlProcess;
@BindView(R.id.tv_product)
TextView tvProduct;
@BindView(R.id.rl_product)
RelativeLayout rlProduct;
@BindView(R.id.tv_supplier)
TextView tvSupplier;
@BindView(R.id.rl_supplier)
RelativeLayout rlSupplier;
private BatSalePresenter batSalePresenter;
private QMUIDialog.MenuDialogBuilder depDialog;
private QMUIDialog.MenuDialogBuilder processDialog;
private List<DepBean> depList;
List<String> depNameList = new ArrayList<>();
private DepBean chooseDep;
private Integer clientId;
private List<String> processNameList = new ArrayList<>();
private List<ProcessBean> processList;
private ProcessBean chooseProcess;
private Integer supplierId;
@Override
protected void initView() {
ButterKnife.bind(this);
batSalePresenter = new BatSalePresenter();
batSalePresenter.onAttach(this);
depDialog = DialogUtils.listDialog(this);
processDialog = DialogUtils.listDialog(this);
}
@Override
protected void initData() {
batSalePresenter.getDep(PermissionType.PURCHASE_SELL.getCode());
}
@Override
protected void initEvent() {
}
@Override
protected int layoutId() {
return R.layout.activity_bat_outsourcing;
}
@OnClick({R.id.rl_client, R.id.rl_dep, R.id.rl_process, R.id.rl_product,R.id.rl_supplier})
public void onViewClicked(View view) {
switch (view.getId()) {
case R.id.rl_client:
startActivityForResult(StoreSaleClientActivity.class, 10001,"code","CUSTOMER");
break;
case R.id.rl_dep:
depDialog.show();
break;
case R.id.rl_supplier:
startActivityForResult(StoreSaleClientActivity.class, 10002,"code","SUPPLIER");
break;
case R.id.rl_process:
if (clientId == null) {
toast("请先选择客户");
return;
}
processDialog.show();
break;
case R.id.rl_product:
if (clientId == null) {
toast("请选择客户");
return;
}
if (chooseDep == null) {
toast("请选择生产厂");
return;
}
if (chooseProcess == null) {
toast("请选择子流程");
return;
}
startActivity(StoreSaleProductActivity.class, "depId", chooseDep.getId() + "",
"process", chooseProcess.getName(), "clientName", tvClient.getText().toString(),
"depName", chooseDep.getName(),"transitPartId", supplierId.toString(),"code", PermissionType.PROCESS_PURCHASE.getCode());
break;
}
}
@Override
public void processList(List<ProcessBean> dataList) {
processList = dataList;
for (ProcessBean process : dataList) {
processNameList.add(process.getName());
}
processDialog.addItems(processNameList.toArray(new String[processNameList.size()]), new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
chooseProcess = processList.get(which);
tvProcess.setText(processNameList.get(which));
dialog.dismiss();
}
});
}
@Override
public void depList(List<DepBean> dataList) {
depList = dataList;
for (DepBean dep : dataList) {
depNameList.add(dep.getName());
}
depDialog.addItems(depNameList.toArray(new String[depNameList.size()]), new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
chooseDep = depList.get(which);
tvDep.setText(depNameList.get(which));
dialog.dismiss();
}
});
}
@Override
public void getStock(List<StockBean> dataList) {
}
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 10001 && resultCode == 10001) {
String clientName = data.getStringExtra("clientName");
clientId = data.getIntExtra("id", 0);
tvClient.setText(clientName);
batSalePresenter.getProcess(PermissionType.PROCESS_SALE.getCode(), clientId);
}else if (requestCode == 10002 && resultCode == 10002){
String clientName = data.getStringExtra("clientName");
supplierId = data.getIntExtra("id", 0);
tvSupplier.setText(clientName);
// batSalePresenter.getProcess(PermissionType.PROCESS_SALE.getCode(), clientId);
}
}
}
......@@ -11,7 +11,8 @@ import com.wd.workoffice.R;
import com.wd.workoffice.app.WorkToolBarActivity;
import com.wd.workoffice.bean.DepBean;
import com.wd.workoffice.bean.ProcessBean;
import com.wd.workoffice.bean.workEnum.PermissType;
import com.wd.workoffice.bean.StockBean;
import com.wd.workoffice.bean.workEnum.PermissionType;
import com.wd.workoffice.contract.BatSaleContract;
import com.wd.workoffice.presenter.BatSalePresenter;
import com.wd.workoffice.util.DialogUtils;
......@@ -70,7 +71,7 @@ public class StoreSaleActivity extends WorkToolBarActivity implements BatSaleCon
@Override
protected void initData() {
batSalePresenter.getDep(PermissType.ES_SELL.getCode());
batSalePresenter.getDep(PermissionType.ES_SELL.getCode());
}
@Override
......@@ -87,7 +88,7 @@ public class StoreSaleActivity extends WorkToolBarActivity implements BatSaleCon
public void onViewClicked(View view) {
switch (view.getId()) {
case R.id.rl_client:
startActivityForResult(StoreSaleClientActivity.class, 10001);
startActivityForResult(StoreSaleClientActivity.class, 10001,"code","CUSTOMER");
break;
case R.id.rl_dep:
depDialog.show();
......@@ -114,7 +115,7 @@ public class StoreSaleActivity extends WorkToolBarActivity implements BatSaleCon
}
startActivity(StoreSaleProductActivity.class, "depId", chooseDep.getId() + "",
"process", chooseProcess.getName(), "clientName", tvClient.getText().toString(),
"depName", chooseDep.getName());
"depName", chooseDep.getName(),"transitPartId", clientId.toString(),"code", PermissionType.PROCESS_SALE.getCode());
break;
}
}
......@@ -135,10 +136,6 @@ public class StoreSaleActivity extends WorkToolBarActivity implements BatSaleCon
});
}
@Override
public void productList(List<Object> dataList) {
}
@Override
public void depList(List<DepBean> dataList) {
......@@ -156,6 +153,11 @@ public class StoreSaleActivity extends WorkToolBarActivity implements BatSaleCon
});
}
@Override
public void getStock(List<StockBean> dataList) {
}
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
......@@ -163,7 +165,7 @@ public class StoreSaleActivity extends WorkToolBarActivity implements BatSaleCon
String clientName = data.getStringExtra("clientName");
clientId = data.getIntExtra("id", 0);
tvClient.setText(clientName);
batSalePresenter.getProcess(PermissType.PROCESS_SALE.getCode(), clientId);
batSalePresenter.getProcess(PermissionType.PROCESS_SALE.getCode(), clientId);
}
}
}
package com.wd.workoffice.ui.activity.bat;
import android.content.Intent;
import android.text.TextUtils;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
......@@ -28,7 +29,7 @@ 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
......@@ -59,7 +60,7 @@ public class StoreSaleClientActivity extends WorkToolBarActivity {
clientAdapter = new StoreClientAdapter(R.layout.item_store_client, clientList);
clientAdapter.bindToRecyclerView(rvClient);
param = WorkUtils.pageKey();
param.put("partTypeCode", "CUSTOMER");
param.put("partTypeCode", getIntent().getStringExtra("code"));
getData();
}
......@@ -114,10 +115,17 @@ public class StoreSaleClientActivity extends WorkToolBarActivity {
clientAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
if (TextUtils.equals(getIntent().getStringExtra("code"),"CUSTOMER")){
Intent intent = new Intent();
intent.putExtra("clientName", clientList.get(position).getName());
intent.putExtra("id", clientList.get(position).getId());
setResult(10001, intent);
}else {
Intent intent = new Intent();
intent.putExtra("clientName", clientList.get(position).getName());
intent.putExtra("id", clientList.get(position).getId());
setResult(10002, intent);
}
finish();
}
});
......
......@@ -16,7 +16,6 @@ import com.wd.workoffice.app.BaseBean;
import com.wd.workoffice.app.WorkToolBarActivity;
import com.wd.workoffice.bean.ProductBean;
import com.wd.workoffice.bean.event.ModifyCarEvent;
import com.wd.workoffice.bean.workEnum.PermissType;
import com.wd.workoffice.retrofit.RtfUtils;
import com.wd.workoffice.retrofit.WorkObserver;
import com.wd.workoffice.ui.adapter.StoreProductAdapter;
......@@ -152,8 +151,11 @@ public class StoreSaleProductActivity extends WorkToolBarActivity {
clientAdapter.bindToRecyclerView(rvProduct);
param = WorkUtils.pageKey();
param.put("current", 1);
param.put("processType", PermissType.PROCESS_SALE.getCode());
param.put("processType", getIntent().getStringExtra("code"));
param.put("outDeptId", getIntent().getStringExtra("depId"));
if (TextUtils.isEmpty( getIntent().getStringExtra("transitPartId"))){
param.put("transitPartId",getIntent().getStringExtra("transitPartId"));
}
// param.put("searchValue", "1");
getData();
}
......
package com.wd.workoffice.ui.activity.bat;
import android.content.DialogInterface;
import android.content.Intent;
import android.view.View;
import android.widget.RelativeLayout;
import android.widget.TextView;
import com.qmuiteam.qmui.widget.dialog.QMUIDialog;
import com.wd.workoffice.R;
import com.wd.workoffice.app.WorkToolBarActivity;
import com.wd.workoffice.bean.DepBean;
import com.wd.workoffice.bean.ProcessBean;
import com.wd.workoffice.bean.StockBean;
import com.wd.workoffice.bean.workEnum.PermissionType;
import com.wd.workoffice.contract.BatSaleContract;
import com.wd.workoffice.presenter.BatSalePresenter;
import com.wd.workoffice.util.DialogUtils;
import com.wd.workoffice.util.WorkUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import androidx.annotation.Nullable;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
/**
* 商店-供应商
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class StoreSupplierActivity extends WorkToolBarActivity implements BatSaleContract.View {
@BindView(R.id.tv_supplier)
TextView tvSupplier;
@BindView(R.id.rl_supplier)
RelativeLayout rlSupplier;
@BindView(R.id.tv_warehouse)
TextView tvWarehouse;
@BindView(R.id.rl_warehouse)
RelativeLayout rlWarehouse;
@BindView(R.id.tv_product)
TextView tvProduct;
@BindView(R.id.rl_product)
RelativeLayout rlProduct;
@BindView(R.id.tv_dep)
TextView tvDep;
@BindView(R.id.rl_dep)
RelativeLayout rlDep;
private BatSalePresenter batSalePresenter;
private QMUIDialog.MenuDialogBuilder depDialog;
private QMUIDialog.MenuDialogBuilder stockDialog;
private List<DepBean> depList;
List<String> depNameList = new ArrayList<>();
private DepBean chooseDep;
private Integer supplierId;
private Map<String, Object> stockParam;
private List<StockBean> stockList;
private List<String> stockNameList;
private StockBean chooseStock;
@Override
protected void initView() {
ButterKnife.bind(this);
batSalePresenter = new BatSalePresenter();
batSalePresenter.onAttach(this);
depDialog = DialogUtils.listDialog(this);
stockDialog = DialogUtils.listDialog(this);
}
@Override
protected void initData() {
batSalePresenter.getDep(PermissionType.SUPPLY_SELL.getCode());
stockParam = WorkUtils.simpleParam();
}
@Override
protected void initEvent() {
}
@Override
protected int layoutId() {
return R.layout.activity_bat_supplier;
}
@OnClick({R.id.rl_supplier, R.id.rl_product, R.id.rl_warehouse, R.id.rl_dep})
public void onViewClicked(View view) {
switch (view.getId()) {
case R.id.rl_supplier:
if (supplierId == null) {
toast("请先选择接单部门");
return;
}
startActivityForResult(StoreSaleClientActivity.class, 10002,"code","SUPPLIER");
break;
case R.id.rl_dep:
depDialog.show();
break;
case R.id.rl_warehouse:
if (supplierId == null) {
toast("请先选择供应商");
return;
}
stockDialog.show();
break;
case R.id.rl_product:
if (chooseDep == null) {
toast("请先选择接单部门");
return;
}
if (supplierId == null) {
toast("请先选择供应商");
return;
}
if (chooseStock == null) {
toast("请选择入库仓库");
return;
}
startActivity(StoreSaleProductActivity.class, "depId", chooseDep.getId() + "",
"depName", chooseDep.getName(), "transitPartId", supplierId.toString(), "code", PermissionType.PROCESS_SUPPLY.getCode());
break;
}
}
@Override
public void processList(List<ProcessBean> dataList) {
}
@Override
public void depList(List<DepBean> dataList) {
depList = dataList;
for (DepBean dep : dataList) {
depNameList.add(dep.getName());
}
depDialog.addItems(depNameList.toArray(new String[depNameList.size()]), new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
chooseDep = depList.get(which);
tvDep.setText(depNameList.get(which));
dialog.dismiss();
stockParam.put("deptId",chooseDep.getId());
batSalePresenter.getStock(stockParam);
}
});
}
@Override
public void getStock(List<StockBean> dataList) {
stockList = dataList;
for (StockBean dep : dataList) {
stockNameList.add(dep.getName());
}
stockDialog.addItems(stockNameList.toArray(new String[stockNameList.size()]), new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
chooseStock = stockList.get(which);
tvWarehouse.setText(depNameList.get(which));
dialog.dismiss();
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 10002 && resultCode == 10002){
String clientName = data.getStringExtra("clientName");
supplierId = data.getIntExtra("id", 0);
tvSupplier.setText(clientName);
}
}
}
......@@ -8,7 +8,10 @@ import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.wd.workoffice.R;
import com.wd.workoffice.app.WorkBaseFg;
import com.wd.workoffice.bean.vo.BatLayoutVo;
import com.wd.workoffice.ui.activity.bat.StoreCrucibleActivity;
import com.wd.workoffice.ui.activity.bat.StoreOutsourcingActivity;
import com.wd.workoffice.ui.activity.bat.StoreSaleActivity;
import com.wd.workoffice.ui.activity.bat.StoreSupplierActivity;
import com.wd.workoffice.ui.adapter.BatLayoutAdapter;
import java.util.ArrayList;
......@@ -124,7 +127,7 @@ public class MainFragment extends WorkBaseFg {
batLayoutAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
switch (position){
switch (position) {
case 0:
break;
}
......@@ -135,10 +138,26 @@ public class MainFragment extends WorkBaseFg {
batLayoutAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
switch (position){
switch (position) {
case 0:
startActivity(StoreSaleActivity.class);
break;
case 1:
startActivity(StoreOutsourcingActivity.class);
break;
case 2:
startActivity(StoreSupplierActivity.class);
break;
case 3:
break;
case 4:
break;
case 5:
startActivity(StoreCrucibleActivity.class);
break;
case 6:
break;
}
}
});
......
......@@ -35,7 +35,10 @@ public class WorkUtils {
public static RequestBody convertMapToBody(Map<?,?> map) {
return RequestBody.create(MediaType.parse("application/json; charset=utf-8"), JSON.toJSONString(map));
}
public static Map<String, Object> simpleParam() {
Map<String, Object> param = new HashMap<>();
return param;
}
public static Map<String, Object> pageKey() {
Map<String, Object> param = new HashMap<>();
param.put("size", Config.SIZE);
......
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView
android:layout_width="match_parent"
android:layout_height="60mm"
android:layout_centerInParent="true"
android:gravity="center"
android:text="第一步"
android:textColor="#ff9eaab1"
android:textSize="16sp" />
<RelativeLayout
android:id="@+id/rl_dep"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@color/white"
android:gravity="center"
android:paddingHorizontal="20mm"
android:paddingVertical="22mm">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:gravity="center_vertical">
<View
android:layout_width="12mm"
android:layout_height="12mm"
android:background="#ff3f617f" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="10mm"
android:text="选择接单部门"
android:textSize="16sp" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:gravity="center_vertical">
<TextView
android:id="@+id/tv_dep"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="10mm"
android:text="请选择接单部门"
android:textSize="16sp"
android:textStyle="bold" />
<ImageView
android:layout_width="6mm"
android:layout_height="10mm"
android:background="@mipmap/arrow_right_blue" />
</LinearLayout>
</RelativeLayout>
<RelativeLayout
android:id="@+id/rl_warehouse"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@color/white"
android:gravity="center"
android:paddingHorizontal="20mm"
android:paddingVertical="22mm">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:gravity="center_vertical">
<View
android:layout_width="12mm"
android:layout_height="12mm"
android:background="#C45D5D" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="10mm"
android:text="选择入库仓库"
android:textSize="16sp" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:gravity="center_vertical">
<TextView
android:id="@+id/tv_warehouse"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="10mm"
android:text="请选择入库仓库"
android:textSize="16sp"
android:textStyle="bold" />
<ImageView
android:layout_width="6mm"
android:layout_height="10mm"
android:background="@mipmap/arrow_right_blue" />
</LinearLayout>
</RelativeLayout>
<TextView
android:layout_width="match_parent"
android:layout_height="60mm"
android:layout_centerInParent="true"
android:gravity="center"
android:text="第二步"
android:textColor="#ff9eaab1"
android:textSize="16sp" />
<!--Product selection-->
<RelativeLayout
android:id="@+id/rl_product"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@color/white"
android:gravity="center"
android:paddingHorizontal="20mm"
android:paddingVertical="22mm">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:gravity="center_vertical">
<View
android:layout_width="12mm"
android:layout_height="12mm"
android:background="#359486" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="10mm"
android:text="选择产品"
android:textSize="16sp" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:gravity="center_vertical">
<TextView
android:id="@+id/tv_product"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="10mm"
android:textSize="16sp"
android:textStyle="bold" />
<ImageView
android:layout_width="6mm"
android:layout_height="10mm"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:background="@mipmap/arrow_right_blue" />
</LinearLayout>
</RelativeLayout>
</LinearLayout>
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论