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

1.产品搜索弹窗,

2.//TODO erp用户激活,忘记密码测试,上下架需要在调试,产品下单还缺几个参数,bat,mes,消息,我的,刷新token
上级 e46756f5
......@@ -297,6 +297,23 @@
android:screenOrientation="portrait"
android:theme="@style/Work.Base"
android:windowSoftInputMode="adjustPan" />
<activity
android:name=".ui.activity.bat.store.StoreClientFactoryActivity"
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.store.StoreOrderSuccessActivity"
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"
......
......@@ -167,6 +167,23 @@ public class ProductBean {
private Object remark;
private String carPrice;
private int carNum;
private int factoryId;
private String factoryName;
public int getFactoryId() {
return factoryId;
}
public void setFactoryId(int factoryId) {
this.factoryId = factoryId;
}
public String getFactoryName() {
return factoryName;
}
public void setFactoryName(String factoryName) {
this.factoryName = factoryName;
}
public String getCarPrice() {
return carPrice;
......
......@@ -224,11 +224,12 @@ public interface ApiService {
/**
* 根据往来单位的类别 获取当前用户所维护的往来单位列表
*
* <p>
* name
* partTypeCode partTypeCode:SUPPLIER-供应商
* * CUSTOMER-客户
* * TRANSPORTERS-运输商
*
* @return
*/
@GET("/transitpart/page/list/current-user/part-type")
......@@ -236,12 +237,13 @@ public interface ApiService {
/**
* 根据关联往来单位(类别为客户)和生产厂(产品上架部门) --> 获取产品列表
*
* <p>
* outDeptId
* transitPartId 销售订单(客户id),外采购订单(供应商id)
* <p>
* processType 销售流程PROCESS_SALE
* 外采购流程PROCESS_PURCHAS
*
* @return
*/
@GET("product/page/list/by/outDept/transit-part")
......@@ -249,12 +251,13 @@ public interface ApiService {
/**
* 仓库
*
* <p>
* deptId
* customerId
* sign 固定值send
* 供应 参数是3个
* 坩埚的话 内部交易一个参数 deptId
*
* @return
*/
@GET("/stock/search-list")
......@@ -271,7 +274,7 @@ public interface ApiService {
/**
* 订单
*
* <p>
* orderStatus app端订单筛选:
* 100:待审核
* 200:待接单
......@@ -280,6 +283,7 @@ public interface ApiService {
* 600: 已交付
* 960:已关闭 (审核失败、已拒单、已提前结束)
* identity 1:作为买家(销售部门) 2:作为卖家(生产部门)
*
* @return
*/
@GET("/saleOrder/current-user/page/list")
......@@ -287,7 +291,7 @@ public interface ApiService {
/**
* 外采购订单
*
* <p>
* orderStatus app端订单筛选:
* 100:待审核
* 200:待接单
......@@ -296,6 +300,7 @@ public interface ApiService {
* 600: 已交付
* 220 + 320 + 420 = 960 :已关闭 (审核失败、已拒单、已提前结束)
* identity 1:作为买家(销售部门) 2:作为卖家(生产部门)
*
* @return
*/
@GET("/purchaseOrder/current-user/page/list")
......@@ -303,7 +308,7 @@ public interface ApiService {
/**
* 内部
*
* <p>
* orderStatus app端订单筛选:
* 100:待审核
* 200:待接单
......@@ -312,6 +317,7 @@ public interface ApiService {
* 600: 已交付
* 220 + 320 + 420 = 960 :已关闭 (审核失败、已拒单、已提前结束)
* identity 1:作为买家(销售部门) 2:作为卖家(生产部门)
*
* @return
*/
@GET("/insideOrder/current-user/page/list")
......@@ -319,7 +325,7 @@ public interface ApiService {
/**
* 供应订单
*
* <p>
* orderStatus app端订单筛选:
* 100:待审核
* 200:待接单
......@@ -327,6 +333,7 @@ public interface ApiService {
* 500:已入库
* 220 + 320 + 420 = 960 :已关闭 (审核失败、已拒单、已提前结束)
* identity 1:作为买家(销售部门) 2:作为卖家(生产部门)
*
* @return
*/
@GET("/supplierOrder/current-user/page/list")
......@@ -393,9 +400,30 @@ public interface ApiService {
* shelfAction
* id
*
*
* @return
*/
@PUT("/product/app/shelf")
Observable<BaseBean> onSalePro(@Body RequestBody requestBody);
/**
* 下单
* <p>
* customerId 客户ID
* launchUserId 下单用户ID
* launchDeptId 下单部门ID
* receiveDeptId 接单部门ID
* launchOrderAmount下单总金额
* subProcessId 子流程ID
* expandInfo 第二层:订单扩展信息
* 备注: 第二层:订单扩展信息
* <p>
* orderItems
*
* @return
*/
@POST("saleOrder/start")
Observable<BaseBean> submitSaleOrder(@Body RequestBody requestBody);
@GET("/customer-branch-factory/page/init")
Observable<BaseBean> getClientFactory(@QueryMap Map<String, Object> param);
}
package com.wd.workoffice.ui.activity.bat.store;
import android.content.Intent;
import android.text.TextUtils;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
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.ClientBean;
import com.wd.workoffice.retrofit.RtfUtils;
import com.wd.workoffice.retrofit.WorkObserver;
import com.wd.workoffice.ui.adapter.StoreClientAdapter;
import com.wd.workoffice.util.WorkUtils;
import java.util.ArrayList;
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.disposables.Disposable;
/**
* 商店-销售-下单/选择分厂
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class StoreClientFactoryActivity extends WorkToolBarActivity {
@BindView(R.id.et_key)
EditText etKey;
@BindView(R.id.btn_search)
Button btnSearch;
@BindView(R.id.rv_client)
RecyclerView rvClient;
private Map<String, Object> param;
private List<ClientBean.RecordsBean> clientList;
private StoreClientAdapter clientAdapter;
private int page = 1;
@Override
protected void initView() {
ButterKnife.bind(this);
rvClient.setLayoutManager(new LinearLayoutManager(this, RecyclerView.VERTICAL, false));
}
@Override
protected void initData() {
clientList = new ArrayList<>();
clientAdapter = new StoreClientAdapter(R.layout.item_store_client, clientList);
clientAdapter.bindToRecyclerView(rvClient);
clientAdapter.setEmptyView(R.layout.view_empty_content, rvClient);
param = WorkUtils.pageKey();
param.put("customerId", getIntent().getStringExtra("customerId"));
getData();
}
private void getData() {
RtfUtils.getRtf().getClientFactory(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<ClientBean.RecordsBean> dataList = JSON.parseObject(data.getData().toString(), ClientBean.class).getRecords();
if (page == 1) {
clientList.clear();
clientList.addAll(dataList);
clientAdapter.notifyDataSetChanged();
clientAdapter.loadMoreComplete();
} else {
clientAdapter.loadMoreComplete();
clientList.addAll(dataList);
clientAdapter.notifyDataSetChanged();
}
if (dataList.size() == 0) {
clientAdapter.loadMoreEnd();
} else {
page++;
}
}
});
}
@Override
protected void initEvent() {
clientAdapter.setOnLoadMoreListener(new BaseQuickAdapter.RequestLoadMoreListener() {
@Override
public void onLoadMoreRequested() {
param.put("current", page);
getData();
}
}, rvClient);
clientAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
Intent intent = new Intent();
intent.putExtra("position", getIntent().getStringExtra("position"));
intent.putExtra("id", clientList.get(position).getId());
intent.putExtra("name", clientList.get(position).getName());
setResult(10001, intent);
finish();
}
});
}
@Override
protected int layoutId() {
return R.layout.activity_bat_sale_client;
}
@OnClick(R.id.btn_search)
public void onViewClicked() {
param.put("name", etKey.getText().toString());
param.put("current", 1);
page = 1;
getData();
}
}
package com.wd.workoffice.ui.activity.bat.store;
import android.content.Intent;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
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.ClientBean;
import com.wd.workoffice.retrofit.RtfUtils;
import com.wd.workoffice.retrofit.WorkObserver;
import com.wd.workoffice.ui.activity.MainActivity;
import com.wd.workoffice.ui.adapter.StoreClientAdapter;
import com.wd.workoffice.util.WorkUtils;
import java.util.ArrayList;
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.disposables.Disposable;
/**
* 商店-销售-下单/选择分厂
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class StoreOrderSuccessActivity extends WorkToolBarActivity {
@Override
protected void initView() {
ButterKnife.bind(this);
}
@Override
protected void initData() {
}
@Override
protected void initEvent() {
}
@Override
protected int layoutId() {
return R.layout.activity_store_order_success;
}
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
startActivity(MainActivity.class);
return true;
}
return super.onOptionsItemSelected(item);
}
}
......@@ -88,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,"code","CUSTOMER");
startActivityForResult(StoreSaleClientActivity.class, 10001, "code", "CUSTOMER");
break;
case R.id.rl_dep:
depDialog.show();
......@@ -114,8 +114,8 @@ public class StoreSaleActivity extends WorkToolBarActivity implements BatSaleCon
return;
}
startActivity(StoreSaleProductActivity.class, "depId", chooseDep.getId() + "",
"process", chooseProcess.getName(), "clientName", tvClient.getText().toString(),
"depName", chooseDep.getName(),"transitPartId", clientId.toString(),"code", PermissionType.PROCESS_SALE.getCode());
"process", chooseProcess.getName(), "subProcess", chooseProcess.getId() + "", "clientName", tvClient.getText().toString(),
"depName", chooseDep.getName(), "transitPartId", clientId.toString(), "code", PermissionType.PROCESS_SALE.getCode());
break;
}
}
......@@ -123,6 +123,7 @@ public class StoreSaleActivity extends WorkToolBarActivity implements BatSaleCon
@Override
public void processList(List<ProcessBean> dataList) {
processList = dataList;
processNameList.clear();
for (ProcessBean process : dataList) {
processNameList.add(process.getName());
}
......@@ -140,6 +141,7 @@ public class StoreSaleActivity extends WorkToolBarActivity implements BatSaleCon
@Override
public void depList(List<DepBean> dataList) {
depList = dataList;
depNameList.clear();
for (DepBean dep : dataList) {
depNameList.add(dep.getName());
}
......
......@@ -98,7 +98,16 @@ public class StoreSaleCarActivity extends WorkToolBarActivity {
@OnClick(R.id.tv_ok)
public void onViewClicked() {
startActivity(StoreSaleConfirmActivity.class, "pro", JSON.toJSONString(productList));
String allPrice = "";
for (ProductBean.RecordsBean recordsBean : productList) {
allPrice = MathUtils.add(allPrice, MathUtils.multiply(recordsBean.getCarNum() + "", recordsBean.getCarPrice(), 2), 2);
}
startActivity(StoreSaleConfirmActivity.class, "pro", JSON.toJSONString(productList),
"subProcess", getIntent().getStringExtra("subProcess"),
"customerId", getIntent().getStringExtra("customerId"),
"receiveDeptId", getIntent().getStringExtra("receiveDeptId")
, "code", getIntent().getStringExtra("code")
, "launchOrderAmount", allPrice);
}
@Override
......
package com.wd.workoffice.ui.activity.bat.store;
import android.content.DialogInterface;
import android.content.Intent;
import android.text.Editable;
import android.text.TextWatcher;
import android.view.View;
......@@ -9,27 +10,39 @@ import android.widget.RelativeLayout;
import android.widget.TextView;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.bigkoo.pickerview.listener.OnTimeSelectListener;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.qmuiteam.qmui.widget.dialog.QMUIDialog;
import com.wd.workoffice.R;
import com.wd.workoffice.app.BaseBean;
import com.wd.workoffice.app.WorkToolBarActivity;
import com.wd.workoffice.bean.ProductBean;
import com.wd.workoffice.retrofit.RtfUtils;
import com.wd.workoffice.retrofit.WorkObserver;
import com.wd.workoffice.ui.adapter.StoreCarAdapter;
import com.wd.workoffice.util.DialogUtils;
import com.wd.workoffice.util.MathUtils;
import com.wd.workoffice.util.PickTimeUtils;
import com.wd.workoffice.util.UserKeeper;
import com.wd.workoffice.util.WorkUtils;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import androidx.annotation.Nullable;
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 flexible.xd.android_base.utils.TimeUtils;
import io.reactivex.disposables.Disposable;
/**
* 商店-销售-产品-确认订单
......@@ -83,6 +96,9 @@ public class StoreSaleConfirmActivity extends WorkToolBarActivity {
private StoreCarAdapter proAdapter;
private QMUIDialog.MenuDialogBuilder setDialog;
private String[] setArray = new String[]{"钢控", "锆碳"};
private Map<String, Object> param;
private Map<String, Object> expandInfo;
private List<JSONObject> orderItems;
@Override
protected void initView() {
......@@ -92,6 +108,11 @@ public class StoreSaleConfirmActivity extends WorkToolBarActivity {
setDialog.addItems(setArray, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
if (which == 0) {
expandInfo.put("outdeptLedger", "gk");
} else {
expandInfo.put("outdeptLedger", "gt");
}
tvSet.setText(setArray[which]);
dialog.dismiss();
}
......@@ -105,6 +126,39 @@ public class StoreSaleConfirmActivity extends WorkToolBarActivity {
proAdapter = new StoreCarAdapter(R.layout.item_confirm_pro, proList, 1);
proAdapter.bindToRecyclerView(rvPro);
proList.addAll(JSON.parseArray(getIntent().getStringExtra("pro"), ProductBean.RecordsBean.class));
proAdapter.notifyDataSetChanged();
changeNumAndPrice();
param = new HashMap<>();
param.put("subProcessId", getIntent().getStringExtra("subProcess"));
param.put("customerId", getIntent().getStringExtra("customerId"));
param.put("receiveDeptId", getIntent().getStringExtra("receiveDeptId"));
param.put("launchOrderAmount", getIntent().getStringExtra("launchOrderAmount"));
param.put("launchUserId", UserKeeper.getInstance().getUserId());
param.put("launchDeptId", UserKeeper.getInstance().getUserDepId());
expandInfo = new HashMap<>();
}
/**
* 转换pro,生成上传参数
*
* @param proList
* @return
*/
private List<JSONObject> coverProInfo(List<ProductBean.RecordsBean> proList) {
List<JSONObject> orderItems = new ArrayList<>();
for (ProductBean.RecordsBean recordsBean : proList) {
JSONObject data = new JSONObject();
data.put("productId", recordsBean.getId());
data.put("type", "PDS");
// data.put("tranFromStockId", recordsBean.getCarPrice());
data.put("innerPrice", recordsBean.getInternalPrice());
data.put("customerBranchFactoryId", recordsBean.getFactoryId());//3.分厂客户ID
// data.put("outerPrice", recordsBean.getCarPrice());
data.put("productCount", recordsBean.getCarNum());
// data.put("annex", recordsBean.getCarPrice());
orderItems.add(data);
}
return orderItems;
}
......@@ -118,6 +172,14 @@ public class StoreSaleConfirmActivity extends WorkToolBarActivity {
proAdapter.setOnItemChildClickListener(new BaseQuickAdapter.OnItemChildClickListener() {
@Override
public void onItemChildClick(BaseQuickAdapter adapter, View view, int position) {
switch (view.getId()) {
case R.id.rl_upload:
break;
case R.id.rl_choose_dep:
startActivityForResult(StoreClientFactoryActivity.class, 10001,
"customerId", getIntent().getStringExtra("customerId"), "position", position + "");
break;
}
}
});
}
......@@ -157,6 +219,22 @@ public class StoreSaleConfirmActivity extends WorkToolBarActivity {
public void onViewClicked(View view) {
switch (view.getId()) {
case R.id.tv_ok:
if (expandInfo.get("outdeptLedger") == null) {
toast("请选择账套");
return;
}
if (expandInfo.get("requireTime") == null) {
toast("请选择客户要求交货时间");
return;
}
expandInfo.put("demond1", etInput2.getText().toString());
expandInfo.put("demond2", etInput3.getText().toString());
expandInfo.put("demond3", etInput4.getText().toString());
expandInfo.put("demond4", etAddress.getText().toString());
expandInfo.put("demond5", etInput1.getText().toString());
expandInfo.put("comments", etInput5.getText().toString());
orderItems = coverProInfo(proList);
submitOrder();
break;
case R.id.rl_set:
setDialog.show();
......@@ -165,10 +243,66 @@ public class StoreSaleConfirmActivity extends WorkToolBarActivity {
PickTimeUtils.showPickThree(StoreSaleConfirmActivity.this, new OnTimeSelectListener() {
@Override
public void onTimeSelect(Date date, View v) {
tvTime.setText(TimeUtils.date2String(date, new SimpleDateFormat("yyyy-MM-dd")));
String time = TimeUtils.date2String(date, new SimpleDateFormat("yyyy-MM-dd"));
expandInfo.put("requireTime", time);
tvTime.setText(time);
}
}).show();
break;
}
}
/**
* 下单
*/
private void submitOrder() {
param.put("expandInfo", expandInfo);
param.put("orderItems", orderItems);
showLoading();
RtfUtils.getRtf().submitSaleOrder(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("下单成功");
startActivity(StoreOrderSuccessActivity.class);
}
});
}
private void changeNumAndPrice() {
tvNum.setText("共 ".concat(proList.size() + "").concat(" 件"));
String allPrice = "";
for (ProductBean.RecordsBean recordsBean : proList) {
allPrice = MathUtils.add(allPrice, MathUtils.multiply(recordsBean.getCarNum() + "", recordsBean.getCarPrice(), 2), 2);
}
tvPrice.setText("总计: ¥ ".concat(allPrice));
}
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 10001 && resultCode == 10001) {
Integer clientId = data.getIntExtra("id", 0);
String name = data.getStringExtra("name");
Integer position = Integer.valueOf(data.getStringExtra("position"));
proList.get(position).setFactoryId(clientId);
proList.get(position).setFactoryName(name);
proAdapter.notifyItemChanged(position);
}
}
}
......@@ -152,8 +152,8 @@ public class StoreSaleProductActivity extends WorkToolBarActivity {
param.put("current", 1);
param.put("processType", getIntent().getStringExtra("code"));
param.put("outDeptId", getIntent().getStringExtra("depId"));
if (TextUtils.isEmpty( getIntent().getStringExtra("transitPartId"))){
param.put("transitPartId",getIntent().getStringExtra("transitPartId"));
if (TextUtils.isEmpty(getIntent().getStringExtra("transitPartId"))) {
param.put("transitPartId", getIntent().getStringExtra("transitPartId"));
}
// param.put("searchValue", "1");
getData();
......@@ -235,7 +235,9 @@ public class StoreSaleProductActivity extends WorkToolBarActivity {
toast("购物车没有产品");
return super.onOptionsItemSelected(item);
}
startActivity(StoreSaleCarActivity.class, "pro", JSON.toJSONString(carList));
startActivity(StoreSaleCarActivity.class, "pro", JSON.toJSONString(carList),
"subProcess", getIntent().getStringExtra("subProcess"), "customerId", getIntent().getStringExtra("transitPartId"),
"receiveDeptId", getIntent().getStringExtra("depId"), "code", getIntent().getStringExtra("code"));
break;
}
return super.onOptionsItemSelected(item);
......
......@@ -83,8 +83,13 @@ public class StoreCarAdapter extends BaseQuickAdapter<ProductBean.RecordsBean, B
}
});
num.setNumber(item.getCarNum());
} else {
helper.addOnClickListener(R.id.rl_choose_dep);
helper.addOnClickListener(R.id.rl_upload);
if (!TextUtils.isEmpty(item.getFactoryName())) {
helper.setText(R.id.tv_choose_dep, item.getFactoryName());
}
}
}
}
......
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center_horizontal"
android:background="@color/white"
android:orientation="vertical">
<ImageView
android:layout_width="80mm"
android:layout_height="90mm"
android:layout_marginTop="120mm"
android:src="@mipmap/order_success" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10mm"
android:text="下单成功"
android:textColor="@color/mainTextColor"
android:textSize="18sp" />
</LinearLayout>
\ No newline at end of file
......@@ -159,6 +159,70 @@
</LinearLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5mm"
android:paddingVertical="9mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:text="产品来源"
android:textColor="@color/flexible_text_gray"
android:textSize="14sp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_marginRight="18mm"
android:layout_alignParentRight="true"
android:textColor="@color/flexible_text_gray"
android:textSize="14sp" />
</RelativeLayout>
<RelativeLayout
android:id="@+id/rl_choose_dep"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingVertical="9mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:text="选择分厂"
android:textColor="@color/flexible_text_gray"
android:textSize="14sp" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:gravity="center_vertical">
<TextView
android:id="@+id/tv_choose_dep"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_marginRight="3mm"
android:text="请选择客户分厂"
android:textColor="@color/flexible_text_gray"
android:textSize="14sp" />
<ImageView
android:layout_width="15mm"
android:layout_height="20mm"
android:src="@mipmap/arrow_right_gray" />
</LinearLayout>
</RelativeLayout>
<RelativeLayout
android:id="@+id/rl_upload"
android:layout_width="match_parent"
......@@ -181,6 +245,7 @@
android:gravity="center_vertical">
<TextView
android:id="@+id/tv_upload"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论