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

1.物流新增

2.//TODO erp用户激活测试,忘记/重置密码测试,往来物流和应付测试,产品下单还差附件,mes,消息,刷新token
上级 d6032a03
...@@ -760,7 +760,31 @@ ...@@ -760,7 +760,31 @@
android:screenOrientation="portrait" android:screenOrientation="portrait"
android:theme="@style/Work.Base" android:theme="@style/Work.Base"
android:windowSoftInputMode="adjustPan" /> android:windowSoftInputMode="adjustPan" />
<activity
android:name=".ui.activity.bat.work.WorkFinancialLogisticAddActivity"
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.work.WorkFinancialLogisticsProActivity"
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.work.WorkFinancialLogisticsSubmitActivity"
android:configChanges="keyboardHidden|orientation"
android:label="运费开票申请"
android:launchMode="singleTop"
android:screenOrientation="portrait"
android:theme="@style/Work.Base"
android:windowSoftInputMode="adjustPan" />
<provider <provider
android:name="androidx.core.content.FileProvider" android:name="androidx.core.content.FileProvider"
android:authorities="com.wd.workoffice.fileprovider" android:authorities="com.wd.workoffice.fileprovider"
......
...@@ -909,6 +909,21 @@ public interface ApiService { ...@@ -909,6 +909,21 @@ public interface ApiService {
*/ */
@GET("/finance-dept-ar-ap-part/flow/page/list") @GET("/finance-dept-ar-ap-part/flow/page/list")
Observable<BaseBean> contactsMoneyFlow(@QueryMap Map<String, Object> param); Observable<BaseBean> contactsMoneyFlow(@QueryMap Map<String, Object> param);
/**
* 部门应收应付账款流水
*
* @return
*/
@GET("/finance-logistics-log/page/list")
Observable<BaseBean> contactsLogistic(@QueryMap Map<String, Object> param);
/**
* 部门应收应付账款流水
*
* @return
*/
@POST("/finance-logistics-apply")
Observable<BaseBean> logisticsApply(@Body RequestBody requestBody);
} }
...@@ -81,7 +81,10 @@ public class StoreSaleClientActivity extends WorkToolBarActivity { ...@@ -81,7 +81,10 @@ public class StoreSaleClientActivity extends WorkToolBarActivity {
if (TextUtils.isEmpty(getIntent().getStringExtra("flag"))) { if (TextUtils.isEmpty(getIntent().getStringExtra("flag"))) {
observable = RtfUtils.getRtf().getClient(param); observable = RtfUtils.getRtf().getClient(param);
} else { } else {
param.put("deptId", getIntent().getStringExtra("depId")); String depId = getIntent().getStringExtra("depId");
if (!TextUtils.isEmpty(depId)) {
param.put("deptId", depId);
}
observable = RtfUtils.getRtf().getClientOut(param); observable = RtfUtils.getRtf().getClientOut(param);
} }
observable.compose(Transformer.schedule()).subscribe(new WorkObserver<BaseBean>() { observable.compose(Transformer.schedule()).subscribe(new WorkObserver<BaseBean>() {
...@@ -153,6 +156,11 @@ public class StoreSaleClientActivity extends WorkToolBarActivity { ...@@ -153,6 +156,11 @@ public class StoreSaleClientActivity extends WorkToolBarActivity {
intent.putExtra("clientName", clientList.get(position).getName()); intent.putExtra("clientName", clientList.get(position).getName());
intent.putExtra("id", clientList.get(position).getId()); intent.putExtra("id", clientList.get(position).getId());
setResult(10001, intent); setResult(10001, intent);
} else if (TextUtils.equals(getIntent().getStringExtra("code"), "TRANSPORTERS")) {
Intent intent = new Intent();
intent.putExtra("clientName", clientList.get(position).getName());
intent.putExtra("id", clientList.get(position).getId());
setResult(10001, intent);
} else { } else {
Intent intent = new Intent(); Intent intent = new Intent();
intent.putExtra("clientName", clientList.get(position).getName()); intent.putExtra("clientName", clientList.get(position).getName());
......
package com.wd.workoffice.ui.activity.bat.work;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.LinearLayout;
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.event.CheckLogisticEvent;
import com.wd.workoffice.bean.event.CheckTicketEvent;
import com.wd.workoffice.ui.activity.bat.store.StoreSaleClientActivity;
import com.wd.workoffice.util.DialogUtils;
import com.wd.workoffice.util.WorkUtils;
import org.greenrobot.eventbus.EventBus;
import org.greenrobot.eventbus.Subscribe;
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 WorkFinancialLogisticAddActivity extends WorkToolBarActivity {
@BindView(R.id.tv_next)
TextView tvNext;
@BindView(R.id.tv_dep)
TextView tvDep;
@BindView(R.id.rl_transport)
LinearLayout rlTransport;
@BindView(R.id.tv_process)
TextView tvProcess;
@BindView(R.id.rl_process)
LinearLayout rlProcess;
@BindView(R.id.rl_dep)
LinearLayout rlDep;
@BindView(R.id.tv_transport)
TextView tvTransport;
private Map<String, Object> param;
private Integer clientId;
private QMUIDialog.MenuDialogBuilder typeDialog;
String[] typeList = new String[]{"销售流程", "外采购流程"};
private String chooseType;
private Integer depId;
@Override
protected void initView() {
ButterKnife.bind(this);
param = WorkUtils.simpleParam();
typeDialog = DialogUtils.listDialog(this);
typeDialog.addItems(typeList, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
chooseType =typeList[which];
tvProcess.setText(typeList[which]);
dialog.dismiss();
}
});
}
@Override
protected void initData() {
}
@Override
protected void initEvent() {
}
@Override
protected int layoutId() {
return R.layout.activity_logistics_add;
}
@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);
tvTransport.setText(clientName);
} else if (requestCode == 10003 && resultCode == 10003) {
String depName = data.getStringExtra("clientName");
depId = data.getIntExtra("id", 0);
tvDep.setText(depName);
}
}
@Override
public void onStart() {
super.onStart();
EventBus.getDefault().register(this);
}
@Override
public void onStop() {
super.onStop();
EventBus.getDefault().unregister(this);
}
@Subscribe
public void refresh(CheckLogisticEvent event) {
finish();
}
@OnClick({R.id.rl_dep,R.id.tv_next, R.id.rl_transport, R.id.rl_process})
public void onViewClicked(View view) {
switch (view.getId()) {
case R.id.rl_dep:
startActivityForResult(WorkChooseDepActivity.class, 10003);
break;
case R.id.rl_transport:
startActivityForResult(StoreSaleClientActivity.class, 10001,
"flag", "1", "supplier", "选择运输商", "code", "TRANSPORTERS");
break;
case R.id.rl_process:
typeDialog.show();
break;
case R.id.tv_next:
if (depId == null) {
toast("请先选择部门");
return;
}
if (clientId == null) {
toast("请先选择运输商");
return;
}
if (TextUtils.isEmpty(chooseType)) {
toast("请选择流程");
return;
}
startActivity(WorkFinancialLogisticsProActivity.class,
"logisticsId", clientId + "", "orderType", tvProcess.getText().toString(), "depId", depId + "");
break;
}
}
}
package com.wd.workoffice.ui.activity.bat.work;
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.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.LogisticBean;
import com.wd.workoffice.bean.LogisticDetailBean;
import com.wd.workoffice.bean.event.CheckLogisticEvent;
import com.wd.workoffice.retrofit.RtfUtils;
import com.wd.workoffice.retrofit.WorkObserver;
import com.wd.workoffice.ui.adapter.WorkAddLogisticProAdapter;
import com.wd.workoffice.ui.adapter.WorkLogisticDetailAdapter;
import com.wd.workoffice.util.WorkUtils;
import org.greenrobot.eventbus.EventBus;
import org.greenrobot.eventbus.Subscribe;
import java.util.ArrayList;
import java.util.HashMap;
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 WorkFinancialLogisticsProActivity extends WorkToolBarActivity {
@BindView(R.id.tv_bottom)
TextView tvBottom;
@BindView(R.id.rv_data)
RecyclerView rvData;
private List<LogisticDetailBean.RecordsBean> dataList;
private WorkAddLogisticProAdapter dataAdapter;
private Map<String, Object> param;
private int page = 1;
@Override
protected void initView() {
ButterKnife.bind(this);
rvData.setLayoutManager(new LinearLayoutManager(this, RecyclerView.VERTICAL, false));
}
@Override
protected void initData() {
dataList = new ArrayList<>();
dataAdapter = new WorkAddLogisticProAdapter(R.layout.item_logistic_add_pro, dataList);
dataAdapter.bindToRecyclerView(rvData);
param = new HashMap<>();
param.put("current", 1);
param.put("status", 0);
param.put("receiveDeptId", getIntent().getStringExtra("depId"));
param.put("logisticsId", getIntent().getStringExtra("logisticsId"));
if (TextUtils.equals("销售流程", getIntent().getStringExtra("orderType"))) {
param.put("processCode", "SO");
} else {
param.put("processCode", "PO");
}
getData();
}
private void getData() {
RtfUtils.getRtf().contactsLogistic(param).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;
}
List<LogisticDetailBean.RecordsBean> dataBean = JSON.parseObject(data.getData().toString(), LogisticDetailBean.class).getRecords();
if (page == 1) {
dataList.clear();
dataList.addAll(dataBean);
dataAdapter.notifyDataSetChanged();
dataAdapter.loadMoreComplete();
} else {
dataAdapter.loadMoreComplete();
dataList.addAll(dataBean);
dataAdapter.notifyDataSetChanged();
}
if (dataBean.size() == 0) {
dataAdapter.loadMoreEnd();
} else {
page++;
}
}
});
}
@Override
protected void initEvent() {
dataAdapter.setOnLoadMoreListener(new BaseQuickAdapter.RequestLoadMoreListener() {
@Override
public void onLoadMoreRequested() {
param.put("current", page);
getData();
}
}, rvData);
}
@Override
protected int layoutId() {
return R.layout.activity_logistics_pro;
}
@OnClick(R.id.tv_bottom)
public void onViewClicked() {
Map<Integer, Boolean> isChoose = dataAdapter.getIsChoose();
List<LogisticDetailBean.RecordsBean> info = new ArrayList<>();
for (Map.Entry<Integer, Boolean> entry : isChoose.entrySet()) {
if (entry.getValue()) {
LogisticDetailBean.RecordsBean recordsBean = dataList.get(entry.getKey());
info.add(recordsBean);
}
}
if (info.size() == 0) {
toast("请选择货品");
return;
}
startActivity(WorkFinancialLogisticsSubmitActivity.class, "info", JSON.toJSONString(info),
"receiveDeptId", getIntent().getStringExtra("depId"),
"logisticsId", getIntent().getStringExtra("logisticsId"),
"processCode", TextUtils.equals("销售流程", getIntent().getStringExtra("orderType")) ? "SO" : "PO");
}
@Override
public void onStart() {
super.onStart();
EventBus.getDefault().register(this);
}
@Override
public void onStop() {
super.onStop();
EventBus.getDefault().unregister(this);
}
@Subscribe
public void refresh(CheckLogisticEvent event) {
finish();
}
}
package com.wd.workoffice.ui.activity.bat.work;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextUtils;
import android.text.TextWatcher;
import android.widget.EditText;
import android.widget.TextView;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.wd.workoffice.R;
import com.wd.workoffice.app.BaseBean;
import com.wd.workoffice.app.WorkToolBarActivity;
import com.wd.workoffice.bean.LogisticDetailBean;
import com.wd.workoffice.bean.TicketAddBean;
import com.wd.workoffice.bean.event.CheckLogisticEvent;
import com.wd.workoffice.bean.event.CheckTicketEvent;
import com.wd.workoffice.retrofit.RtfUtils;
import com.wd.workoffice.retrofit.WorkObserver;
import com.wd.workoffice.ui.adapter.WorkAddLogisticProAdapter;
import com.wd.workoffice.ui.adapter.WorkAddTicketOrderAdapter;
import com.wd.workoffice.ui.adapter.WorkLogisticDetailAdapter;
import com.wd.workoffice.util.MathUtils;
import com.wd.workoffice.util.WorkUtils;
import org.greenrobot.eventbus.EventBus;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
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.Observable;
import io.reactivex.disposables.Disposable;
/**
* 工作台 - 财务 - 物流- 提交
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class WorkFinancialLogisticsSubmitActivity extends WorkToolBarActivity {
@BindView(R.id.tv_bottom)
TextView tvBottom;
@BindView(R.id.rv_data)
RecyclerView rvData;
@BindView(R.id.tv_weight)
TextView tvWeight;
@BindView(R.id.tv_price)
TextView tvPrice;
@BindView(R.id.et_position)
EditText etPosition;
@BindView(R.id.et_company)
EditText etCompany;
@BindView(R.id.et_code)
EditText etCode;
private List<LogisticDetailBean.RecordsBean> dataList;
private WorkLogisticDetailAdapter dataAdapter;
private Map<String, Object> param;
@Override
protected void initView() {
ButterKnife.bind(this);
rvData.setLayoutManager(new LinearLayoutManager(this, RecyclerView.VERTICAL, false));
}
@Override
protected void initData() {
dataList = JSON.parseArray(getIntent().getStringExtra("info"), LogisticDetailBean.RecordsBean.class);
dataAdapter = new WorkLogisticDetailAdapter(R.layout.item_logistics_detail, dataList);
dataAdapter.bindToRecyclerView(rvData);
param = new HashMap<>();
param.put("receiveDeptId", getIntent().getStringExtra("receiveDeptId"));
param.put("logisticsId", getIntent().getStringExtra("logisticsId"));
param.put("processCode", getIntent().getStringExtra("processCode"));
changeNumAndPrice();
coverProInfo(dataList);
}
@Override
protected void initEvent() {
}
@Override
protected int layoutId() {
return R.layout.activity_logistics_submit;
}
/**
* 转换pro,生成上传参数
*
* @param proList
* @return
*/
private void coverProInfo(List<LogisticDetailBean.RecordsBean> proList) {
List<JSONObject> orderItems = new ArrayList<>();
for (LogisticDetailBean.RecordsBean recordsBean : proList) {
JSONObject data = new JSONObject();
data.put("id", recordsBean.getId());
orderItems.add(data);
}
param.put("logisticsLogList", orderItems);
}
private void changeNumAndPrice() {
String totalWeight = "";
String applyAmount = "";
for (LogisticDetailBean.RecordsBean recordsBean : dataList) {
totalWeight = MathUtils.add(totalWeight, String.valueOf(recordsBean.getWeight()), 3);
applyAmount = MathUtils.add(applyAmount, String.valueOf(recordsBean.getFareMoney()), 3);
}
param.put("totalWeight", totalWeight);
param.put("applyAmount", applyAmount);
tvWeight.setText(totalWeight);
tvPrice.setText(applyAmount);
}
private void submit() {
param.put("distributionSite", etPosition.getText().toString());
param.put("issuingUnit", etCompany.getText().toString());
param.put("invoiceNumber", etCode.getText().toString());
RtfUtils.getRtf().logisticsApply(WorkUtils.convertMapToBody(param)).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;
}
toast("操作成功");
EventBus.getDefault().post(new CheckLogisticEvent());
finish();
}
});
}
@OnClick(R.id.tv_bottom)
public void onViewClicked() {
if (TextUtils.isEmpty(etCompany.getText().toString())) {
toast("请输入税费");
return;
}
if (TextUtils.isEmpty(etPosition.getText().toString())) {
toast("请输入税费");
return;
}
submit();
}
}
...@@ -7,6 +7,7 @@ import android.view.MenuItem; ...@@ -7,6 +7,7 @@ import android.view.MenuItem;
import com.google.android.material.tabs.TabLayout; import com.google.android.material.tabs.TabLayout;
import com.wd.workoffice.R; import com.wd.workoffice.R;
import com.wd.workoffice.app.WorkToolBarActivity; import com.wd.workoffice.app.WorkToolBarActivity;
import com.wd.workoffice.ui.activity.bat.InsideOrderSearchActivity;
import com.wd.workoffice.ui.adapter.VpDataAdapter; import com.wd.workoffice.ui.adapter.VpDataAdapter;
import com.wd.workoffice.ui.fg.WorkLogisticsFragment; import com.wd.workoffice.ui.fg.WorkLogisticsFragment;
...@@ -74,15 +75,15 @@ public class WorkLogisticActivity extends WorkToolBarActivity { ...@@ -74,15 +75,15 @@ public class WorkLogisticActivity extends WorkToolBarActivity {
@Override @Override
public boolean onCreateOptionsMenu(Menu menu) { public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_search, menu); getMenuInflater().inflate(R.menu.menu_add, menu);
return super.onCreateOptionsMenu(menu); return super.onCreateOptionsMenu(menu);
} }
@Override @Override
public boolean onOptionsItemSelected(MenuItem item) { public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) { switch (item.getItemId()) {
case R.id.search: case R.id.add:
// startActivity(InsideOrderSearchActivity.class, "identity", "2","",""); startActivity(WorkFinancialLogisticAddActivity.class);
break; break;
} }
return super.onOptionsItemSelected(item); return super.onOptionsItemSelected(item);
......
package com.wd.workoffice.ui.adapter;
import android.view.View;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.wd.workoffice.R;
import com.wd.workoffice.bean.LogisticDetailBean;
import com.wd.workoffice.bean.TicketAddBean;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import androidx.annotation.Nullable;
/**
* Created by flexible on 2018/8/13.
*/
public class WorkAddLogisticProAdapter extends BaseQuickAdapter<LogisticDetailBean.RecordsBean, BaseViewHolder> {
Map<Integer, Boolean> isChoose = new HashMap<>();
public WorkAddLogisticProAdapter(int layoutResId, List data) {
super(layoutResId, data);
for (int i = 0; i < isChoose.entrySet().size(); i++) {
isChoose.put(i, false);
}
}
@Override
protected void convert(BaseViewHolder helper, LogisticDetailBean.RecordsBean item) {
helper.setText(R.id.tv_company, item.getLaunchDeptName());
helper.setText(R.id.tv_client, item.getCustomerName());
helper.setText(R.id.tv_name, "快递单号:"+item.getTrackingNumber());
helper.setText(R.id.tv_weight, String.valueOf(item.getWeight()));
helper.setText(R.id.tv_tax, String.valueOf(item.getFareMoney()));
helper.setText(R.id.tv_person, item.getCreatedUser());
CheckBox cbChoose = helper.getView(R.id.cb_check);
cbChoose.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
isChoose.put(helper.getAdapterPosition(), cbChoose.isChecked());
}
});
}
public Map<Integer, Boolean> getIsChoose() {
return isChoose;
}
public void setIsChoose(Map<Integer, Boolean> isChoose) {
this.isChoose = isChoose;
}
}
<?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">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView
android:id="@+id/tv_next"
android:layout_width="match_parent"
android:layout_height="48mm"
android:layout_alignParentBottom="true"
android:background="#5C768A"
android:gravity="center"
android:text="下一步,选择产品来源"
android:textColor="@color/white" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@id/tv_next"
android:orientation="vertical">
<LinearLayout
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="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center_vertical|right">
<TextView
android:id="@+id/tv_dep"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="10mm"
android:maxLines="1"
android:text="请选择部门"
android:textSize="15sp"
android:textStyle="bold" />
<ImageView
android:layout_width="6mm"
android:layout_height="10mm"
android:background="@mipmap/arrow_right_blue" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:id="@+id/rl_transport"
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: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="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="3mm"
>
<TextView
android:id="@+id/tv_transport"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:gravity="end"
android:ellipsize="end"
android:singleLine="true"
android:text="请选择运输商"
android:textSize="15sp"
android:textStyle="bold" />
<ImageView
android:layout_width="6mm"
android:layout_height="10mm"
android:layout_marginLeft="10mm"
android:layout_gravity="center_vertical"
android:background="@mipmap/arrow_right_blue" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:id="@+id/rl_process"
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:gravity="center_vertical">
<View
android:layout_width="12mm"
android:layout_height="12mm"
android:layout_centerVertical="true"
android:background="#E3AD6E" />
<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="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="3mm">
<TextView
android:id="@+id/tv_process"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:gravity="right"
android:singleLine="true"
android:text="选择流程"
android:textSize="15sp"
android:textStyle="bold" />
<ImageView
android:layout_width="6mm"
android:layout_height="10mm"
android:layout_marginLeft="10mm"
android:layout_gravity="center_vertical"
android:background="@mipmap/arrow_right_blue" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
</RelativeLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
<?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">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/tv_bottom"
android:layout_width="match_parent"
android:layout_height="48mm"
android:layout_alignParentBottom="true"
android:background="#5C768A"
android:gravity="center"
android:orientation="horizontal"
android:text="下一步"
android:textColor="@color/white"
android:textSize="16sp"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@id/tv_bottom"
android:orientation="vertical">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingVertical="10mm">
<View
android:layout_width="8mm"
android:layout_height="18mm"
android:background="@color/red_btn_bg" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10mm"
android:text="货品信息 ( 可多选 )"
android:textSize="15sp" />
</LinearLayout>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_data"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
</RelativeLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/tv_bottom"
android:layout_width="match_parent"
android:layout_height="48mm"
android:layout_alignParentBottom="true"
android:background="#5C768A"
android:gravity="center"
android:orientation="horizontal"
android:text="发货"
android:textColor="@color/white"
android:textSize="16sp"></TextView>
<androidx.core.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@id/tv_bottom">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@id/ll_bottom"
android:background="@color/white"
android:orientation="vertical">
<View style="@style/ViewX" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingVertical="10mm">
<View
android:layout_width="8mm"
android:layout_height="18mm"
android:background="@color/red_btn_bg" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10mm"
android:text="基本信息"
android:textSize="15sp" />
</LinearLayout>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_data"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<View style="@style/ViewX" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingVertical="10mm">
<View
android:layout_width="8mm"
android:layout_height="18mm"
android:background="@color/red_btn_bg" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10mm"
android:text="开票来源"
android:textSize="15sp" />
</LinearLayout>
<RelativeLayout
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="15mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="总重"
android:textSize="15sp" />
<TextView
android:id="@+id/tv_weight"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:textColor="@color/flexible_text_gray"
android:textSize="15sp" />
</RelativeLayout>
<View style="@style/dividerX" />
<RelativeLayout
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="15mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="运费"
android:textSize="15sp" />
<TextView
android:id="@+id/tv_price"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:text="销售二公司"
android:textColor="@color/flexible_text_gray"
android:textSize="15sp" />
</RelativeLayout>
<View style="@style/dividerX" />
<LinearLayout
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="15mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="配送站点"
android:textSize="15sp" />
<EditText
android:id="@+id/et_position"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@null"
android:gravity="right"
android:hint="输入配送站点"
android:inputType="numberDecimal"
android:textColor="@color/flexible_text_gray"
android:textSize="15sp" />
</LinearLayout>
<View style="@style/dividerX" />
<LinearLayout
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="15mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="运费发票单位"
android:textSize="15sp" />
<EditText
android:id="@+id/et_company"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@null"
android:gravity="right"
android:hint="输入运费发票单位"
android:inputType="numberDecimal"
android:textColor="@color/flexible_text_gray"
android:textSize="15sp" />
</LinearLayout>
<View style="@style/dividerX" />
<LinearLayout
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="15mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="运费发票票号"
android:textSize="15sp" />
<EditText
android:id="@+id/et_code"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@null"
android:gravity="right"
android:hint="输入运费发票票号"
android:inputType="numberDecimal"
android:textColor="@color/flexible_text_gray"
android:textSize="15sp" />
</LinearLayout>
</LinearLayout>
</androidx.core.widget.NestedScrollView>
</RelativeLayout>
...@@ -33,7 +33,7 @@ ...@@ -33,7 +33,7 @@
android:layout_alignParentRight="true" android:layout_alignParentRight="true"
android:background="@color/red_btn_bg" android:background="@color/red_btn_bg"
android:gravity="center" android:gravity="center"
android:text="申请下单" android:text="下一步"
android:textColor="@color/white" /> android:textColor="@color/white" />
</RelativeLayout> </RelativeLayout>
......
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="10mm"
android:background="@color/white"
android:orientation="vertical"
android:paddingHorizontal="20mm"
android:paddingTop="10mm"
android:paddingBottom="20mm">
<LinearLayout
android:layout_width="match_parent"
android:layout_marginTop="5mm"
android:gravity="center_vertical"
android:layout_height="wrap_content">
<CheckBox
android:layout_width="wrap_content"
android:id="@+id/cb_check"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/tv_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="16sp"
android:textStyle="bold" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="14mm"
android:background="#FCFCFD"
android:orientation="vertical"
android:paddingVertical="10mm">
<RelativeLayout
android:id="@+id/rl_dep"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingHorizontal="10mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="10mm"
android:text="销售公司"
android:textColor="@color/flexible_text_gray"
android:textSize="13sp" />
<TextView
android:id="@+id/tv_company"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:textColor="@color/flexible_text_gray"
android:textSize="13sp" />
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10mm"
android:paddingHorizontal="10mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="10mm"
android:text="客户名称"
android:textColor="@color/flexible_text_gray"
android:textSize="13sp" />
<TextView
android:id="@+id/tv_client"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:textColor="@color/flexible_text_gray"
android:textSize="13sp" />
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10mm"
android:paddingHorizontal="10mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="10mm"
android:text="发货重量"
android:textColor="@color/flexible_text_gray"
android:textSize="13sp" />
<TextView
android:id="@+id/tv_weight"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:textColor="@color/flexible_text_gray"
android:textSize="13sp" />
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10mm"
android:paddingHorizontal="10mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="10mm"
android:text="运费"
android:textColor="@color/flexible_text_gray"
android:textSize="13sp" />
<TextView
android:id="@+id/tv_tax"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:textColor="@color/flexible_text_gray"
android:textSize="13sp" />
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10mm"
android:paddingHorizontal="10mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="10mm"
android:text="审批人"
android:textColor="@color/flexible_text_gray"
android:textSize="13sp" />
<TextView
android:id="@+id/tv_person"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:textColor="@color/flexible_text_gray"
android:textSize="13sp" />
</RelativeLayout>
</LinearLayout>
</LinearLayout>
\ No newline at end of file
...@@ -65,7 +65,6 @@ ...@@ -65,7 +65,6 @@
android:id="@+id/tv_bottom_name" android:id="@+id/tv_bottom_name"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:text="ZZZZZ"
android:textSize="12sp" /> android:textSize="12sp" />
<LinearLayout <LinearLayout
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论