提交 23e61e44 authored 作者: lgd's avatar lgd

1.设备列表

2.//TODO 设备三个子菜单,坩埚下单,下单时间选择器当前时间验证,mes其他页面,mes用户反馈空也展示,编辑任务担当无法修改
上级 b7484339
......@@ -1969,7 +1969,22 @@
android:screenOrientation="portrait"
android:theme="@style/Work.Base"
android:windowSoftInputMode="adjustPan" />
<activity
android:name=".ui.activity.bat.work.WorkDeviceDetailActivity"
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.WorkDeviceNextActivity"
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"
......
......@@ -137,7 +137,9 @@ public enum PagePermissionType {
SYS_UPDATE("sys:dept:ruler:update", "设置部门管理员"),
SYS_DETAIL("app:sys:dept:details", "一个部门的详情"),
//备件
SPARE_PART_LIST("equipment:spare-part:page:list", "备件"),
//设备
EQUIPMENT_LIST("equipment:equipment:page:list", "设备"),
//部门账户
UPDATE_SHELF("app:finance:dept-account-balance:balance:update-shelf", "冻结解冻当前用户所在部门的可用余额"),
BALANCE_UPDATE("finance:dept-account-balance:balance:update", "冻结解冻指定部门可用余额"),
......
......@@ -1754,6 +1754,12 @@ public interface ApiService {
*/
@GET("/back/noticeAnnounce/{id}")
Observable<BaseBean> noticeDetail(@Path("id") String id);
/**
* 获取设备列表
*
* @return
*/
@GET("/equipment/page/list")
Observable<BaseBean> equipmentList(@QueryMap Map<String, Object> param);
}
package com.wd.workoffice.ui.activity.bat.work;
import android.os.Bundle;
import android.view.View;
import android.widget.RelativeLayout;
......
package com.wd.workoffice.ui.activity.bat.work;
import android.os.Bundle;
import android.widget.TextView;
import com.alibaba.fastjson.JSON;
import com.wd.workoffice.R;
import com.wd.workoffice.app.BaseBean;
import com.wd.workoffice.app.WorkToolBarActivity;
import com.wd.workoffice.bean.DeviceBean;
import com.wd.workoffice.bean.SendApplyDetailBean;
import com.wd.workoffice.retrofit.RtfUtils;
import com.wd.workoffice.retrofit.WorkObserver;
import com.wd.workoffice.ui.adapter.SendApplyDetailAdapter;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import butterknife.BindView;
import butterknife.ButterKnife;
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 WorkDeviceDetailActivity extends WorkToolBarActivity {
@BindView(R.id.tv_type)
TextView tvType;
@BindView(R.id.tv_big_clazz)
TextView tvBigClazz;
@BindView(R.id.tv_small_clazz)
TextView tvSmallClazz;
@BindView(R.id.tv_desc)
TextView tvDesc;
@BindView(R.id.tv_money_card)
TextView tvMoneyCard;
@BindView(R.id.tv_spec)
TextView tvSpec;
@BindView(R.id.tv_order)
TextView tvOrder;
@BindView(R.id.tv_make_time)
TextView tvMakeTime;
@BindView(R.id.tv_install_time)
TextView tvInstallTime;
@BindView(R.id.tv_valid_time)
TextView tvValidTime;
@BindView(R.id.tv_check_time)
TextView tvCheckTime;
@BindView(R.id.tv_check_month)
TextView tvCheckMonth;
@BindView(R.id.tv_code)
TextView tvCode;
private List<SendApplyDetailBean> dataList;
private SendApplyDetailAdapter dataAdapter;
private Map<String, Object> param;
private DeviceBean.RecordsBean info;
@Override
protected void initView() {
ButterKnife.bind(this);
}
@Override
protected void initData() {
info = JSON.parseObject(getIntent().getStringExtra("info"), DeviceBean.RecordsBean.class);
tvCode.setText(info.getAssetCode());
tvType.setText(String.valueOf(info.getAssetCode()));
tvBigClazz.setText(String.valueOf(info.getEquipmentCategory()));
tvSmallClazz.setText(info.getEquipmentSubcategory());
tvDesc.setText(info.getDescription());
tvMoneyCard.setText(info.getCardCode());
tvSpec.setText(info.getSpecification());
tvOrder.setText(info.getSerialCode());
tvMakeTime.setText(info.getManufactureDate());
tvInstallTime.setText(info.getInstallDate());
tvValidTime.setText(info.getEffectiveDate());
tvCheckTime.setText(info.getVerificationDate());
tvCheckMonth.setText(info.getVerificationCycle()+"");
}
@Override
protected void initEvent() {
}
@Override
protected int layoutId() {
return R.layout.activity_device_detail;
}
}
......@@ -12,7 +12,8 @@ import com.wd.workoffice.bean.workEnum.OrderType;
import com.wd.workoffice.bean.workEnum.PagePermissionType;
import com.wd.workoffice.ui.activity.bat.order.SendApplyAddActivity;
import com.wd.workoffice.ui.adapter.VpDataAdapter;
import com.wd.workoffice.ui.fg.SendApplyFragment;
import com.wd.workoffice.ui.fg.DeviceListFragment;
import com.wd.workoffice.ui.fg.SparePartsFragment;
import com.wd.workoffice.util.WorkUtils;
import java.util.ArrayList;
......@@ -25,7 +26,7 @@ import butterknife.BindView;
import butterknife.ButterKnife;
/**
* 发货申请列表
* 设备申请列表
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
......@@ -50,13 +51,14 @@ public class WorkDeviceListActivity extends WorkToolBarActivity {
protected void initData() {
FragmentManager sfm = getSupportFragmentManager();
List<Fragment> data = new ArrayList<>();
SendApplyFragment saleFragment = new SendApplyFragment();
Bundle bundle = new Bundle();
bundle.putString("orderId", getIntent().getStringExtra("orderId"));
bundle.putString("orderType", getIntent().getStringExtra("orderType"));
saleFragment.setArguments(bundle);
data.add(saleFragment);
DeviceListFragment deviceListFragment = new DeviceListFragment();
SparePartsFragment sparePartsFragment = new SparePartsFragment();
// Bundle bundle = new Bundle();
// bundle.putString("orderId", getIntent().getStringExtra("orderId"));
// bundle.putString("orderType", getIntent().getStringExtra("orderType"));
// saleFragment.setArguments(bundle);
data.add(deviceListFragment);
data.add(sparePartsFragment);
VpDataAdapter vpFgAdapter = new VpDataAdapter(sfm, data);
vpData.setAdapter(vpFgAdapter);
for (int i = 0; i < tab.length; i++) {
......@@ -73,34 +75,34 @@ public class WorkDeviceListActivity extends WorkToolBarActivity {
return R.layout.activity_order;
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
String orderType = getIntent().getStringExtra("orderType");
if (TextUtils.equals(orderType, OrderType.SALE.getCode())) {
if (WorkUtils.hasPermission(PagePermissionType.SO_OUT_SAVE.getPermission())) {
getMenuInflater().inflate(R.menu.menu_add, menu);
}
} else if (TextUtils.equals(orderType, OrderType.OUT_BUY.getCode())) {
if (WorkUtils.hasPermission(PagePermissionType.PO_OUT_SAVE.getPermission())) {
getMenuInflater().inflate(R.menu.menu_add, menu);
}
} else if (TextUtils.equals(orderType, OrderType.CRUCIBLE.getCode())) {
if (WorkUtils.hasPermission(PagePermissionType.CO_OUT_SAVE.getPermission())) {
getMenuInflater().inflate(R.menu.menu_add, menu);
}
}
return super.onCreateOptionsMenu(menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.add:
startActivity(SendApplyAddActivity.class,
"orderType", getIntent().getStringExtra("orderType"),
"id", getIntent().getStringExtra("orderId"));
break;
}
return super.onOptionsItemSelected(item);
}
// @Override
// public boolean onCreateOptionsMenu(Menu menu) {
// String orderType = getIntent().getStringExtra("orderType");
// if (TextUtils.equals(orderType, OrderType.SALE.getCode())) {
// if (WorkUtils.hasPermission(PagePermissionType.SO_OUT_SAVE.getPermission())) {
// getMenuInflater().inflate(R.menu.menu_add, menu);
// }
// } else if (TextUtils.equals(orderType, OrderType.OUT_BUY.getCode())) {
// if (WorkUtils.hasPermission(PagePermissionType.PO_OUT_SAVE.getPermission())) {
// getMenuInflater().inflate(R.menu.menu_add, menu);
// }
// } else if (TextUtils.equals(orderType, OrderType.CRUCIBLE.getCode())) {
// if (WorkUtils.hasPermission(PagePermissionType.CO_OUT_SAVE.getPermission())) {
// getMenuInflater().inflate(R.menu.menu_add, menu);
// }
// }
// return super.onCreateOptionsMenu(menu);
// }
//
// @Override
// public boolean onOptionsItemSelected(MenuItem item) {
// switch (item.getItemId()) {
// case R.id.add:
// startActivity(SendApplyAddActivity.class,
// "orderType", getIntent().getStringExtra("orderType"),
// "id", getIntent().getStringExtra("orderId"));
// break;
// }
// return super.onOptionsItemSelected(item);
// }
}
package com.wd.workoffice.ui.activity.bat.work;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.LinearLayout;
import com.alibaba.fastjson.JSON;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.wd.workoffice.R;
import com.wd.workoffice.app.BaseBean;
import com.wd.workoffice.app.WorkToolBarActivity;
import com.wd.workoffice.bean.DeviceBean;
import com.wd.workoffice.bean.workEnum.PagePermissionType;
import com.wd.workoffice.retrofit.RtfUtils;
import com.wd.workoffice.retrofit.WorkObserver;
import com.wd.workoffice.ui.adapter.DeviceAdapter;
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 WorkDeviceNextActivity extends WorkToolBarActivity {
@BindView(R.id.rv_data)
RecyclerView rvData;
@BindView(R.id.srl_refresh)
SmartRefreshLayout srlRefresh;
@BindView(R.id.et_key)
EditText etKey;
@BindView(R.id.btn_search)
Button btnSearch;
@BindView(R.id.ll_search)
LinearLayout llSearch;
private int page = 1;
private Map<String, Object> param;
private DeviceAdapter dataAdapter;
private List<DeviceBean.RecordsBean> dataList;
@Override
protected void initView() {
ButterKnife.bind(this);
rvData.setLayoutManager(new LinearLayoutManager(this, RecyclerView.VERTICAL, false));
}
@Override
protected void initData() {
param = WorkUtils.pageKey();
param.put("parentId", getIntent().getStringExtra("id"));
page = 1;
param.put("current", page);
dataList = new ArrayList<>();
dataAdapter = new DeviceAdapter(R.layout.item_device, dataList);
dataAdapter.bindToRecyclerView(rvData);
dataAdapter.setEmptyView(R.layout.view_empty_content, rvData);
llSearch.setVisibility(View.GONE);
if (WorkUtils.hasPermission(PagePermissionType.EQUIPMENT_LIST.getPermission())) {
getData();
} else {
toast(R.string.permission);
}
}
private void getData() {
RtfUtils.getRtf().equipmentList(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<DeviceBean.RecordsBean> getList = JSON.parseObject(data.getData().toString(), DeviceBean.class).getRecords();
if (page == 1) {
srlRefresh.finishRefresh();
dataList.clear();
dataList.addAll(getList);
dataAdapter.notifyDataSetChanged();
dataAdapter.loadMoreComplete();
} else {
dataAdapter.loadMoreComplete();
dataList.addAll(getList);
dataAdapter.notifyDataSetChanged();
}
if (getList.size() == 0) {
dataAdapter.loadMoreEnd();
} else {
page++;
}
}
});
}
@Override
protected void initEvent() {
srlRefresh.setOnRefreshListener(refreshLayout -> {
if (WorkUtils.hasPermission(PagePermissionType.EQUIPMENT_LIST.getPermission())) {
page = 1;
param.put("current", page);
getData();
} else {
toast(R.string.permission);
}
});
dataAdapter.setOnLoadMoreListener(() -> {
param.put("current", page);
getData();
}, rvData);
dataAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
startActivity(WorkDeviceDetailActivity.class,
"info", JSON.toJSONString(dataList.get(position)));
}
});
dataAdapter.setOnItemChildClickListener(new BaseQuickAdapter.OnItemChildClickListener() {
@Override
public void onItemChildClick(BaseQuickAdapter adapter, View view, int position) {
switch (view.getId()) {
case R.id.tv_component:
startActivity(WorkDeviceNextActivity.class,
"id", dataList.get(position).getId()+"");
break;
case R.id.tv_agree:
break;
}
}
});
}
@Override
protected int layoutId() {
return R.layout.fg_device_list;
}
@OnClick(R.id.btn_search)
public void onViewClicked() {
if (WorkUtils.hasPermission(PagePermissionType.EQUIPMENT_LIST.getPermission())) {
page = 1;
param.put("searchValue", etKey.getText().toString());
param.put("current", page);
getData();
} else {
toast(R.string.permission);
}
}
}
package com.wd.workoffice.ui.adapter;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.wd.workoffice.R;
import com.wd.workoffice.bean.DeviceBean;
import com.wd.workoffice.bean.SendApplyBean;
import com.wd.workoffice.bean.workEnum.PagePermissionType;
import com.wd.workoffice.util.WorkUtils;
import java.util.List;
import androidx.annotation.Nullable;
/**
* Created by flexible on 2018/8/13.
*/
public class DeviceAdapter extends BaseQuickAdapter<DeviceBean.RecordsBean, BaseViewHolder> {
public DeviceAdapter(int layoutResId, List data) {
super(layoutResId, data);
}
@Override
protected void convert(BaseViewHolder helper, DeviceBean.RecordsBean item) {
helper.setText(R.id.tv_name, item.getTitle());
helper.setText(R.id.tv_code, String.format("编号:%s",item.getAssetCode()));
helper.setText(R.id.tv_rule,String.format("规格:%s",item.getSpecification()));
// helper.setText(R.id.tv_type, item.getCreatedTime());
helper.setGone(R.id.tv_component, WorkUtils.hasPermission(PagePermissionType.EQUIPMENT_LIST .getPermission()));
helper.setGone(R.id.tv_spare_parts, WorkUtils.hasPermission(PagePermissionType.SPARE_PART_LIST.getPermission()));
helper.addOnClickListener(R.id.tv_component);
helper.addOnClickListener(R.id.tv_spare_parts);
}
}
......@@ -113,7 +113,6 @@ public class MesFragment extends WorkBaseFg {
startActivity(MesAnalysisActivity.class);
break;
case 3:
break;
case 4:
break;
......
......@@ -54,12 +54,10 @@ public class SparePartsFragment extends WorkBaseFg {
RecyclerView rvData;
@BindView(R.id.srl_refresh)
SmartRefreshLayout srlRefresh;
private String state;
private int page = 1;
private Map<String, Object> param;
private SendApplyAdapter dataAdapter;
private List<SendApplyBean.RecordsBean> dataList;
private String orderId;
private String orderType;
@Override
......@@ -72,12 +70,10 @@ public class SparePartsFragment extends WorkBaseFg {
@Override
protected void initData() {
param = WorkUtils.pageKey();
param.put("status", state);
param.put("orderId", orderId);
page = 1;
param.put("current", page);
dataList = new ArrayList<>();
dataAdapter = new SendApplyAdapter(R.layout.item_send_apply, dataList, Integer.valueOf(state));
dataAdapter = new SendApplyAdapter(R.layout.item_send_apply, dataList, Integer.valueOf(1));
dataAdapter.bindToRecyclerView(rvData);
dataAdapter.setEmptyView(R.layout.view_empty_content, rvData);
getData();
......@@ -102,8 +98,6 @@ public class SparePartsFragment extends WorkBaseFg {
super.onCreate(savedInstanceState);
Bundle arguments = getArguments();
if (arguments != null) {
state = arguments.getString("state");
orderId = arguments.getString("orderId");
orderType = arguments.getString("orderType");
}
}
......@@ -283,7 +277,7 @@ public class SparePartsFragment extends WorkBaseFg {
@Override
protected int layoutId() {
return R.layout.fg_work_contacts;
return R.layout.fg_device;
}
@Override
......
......@@ -14,6 +14,7 @@ import com.wd.workoffice.ui.activity.bat.approval.ApprovalToMeActivity;
import com.wd.workoffice.ui.activity.bat.work.WorkAccountActivity;
import com.wd.workoffice.ui.activity.bat.work.WorkContactsActivity;
import com.wd.workoffice.ui.activity.bat.work.WorkDepActivity;
import com.wd.workoffice.ui.activity.bat.work.WorkDeviceActivity;
import com.wd.workoffice.ui.activity.bat.work.WorkFinancialActivity;
import com.wd.workoffice.ui.activity.bat.work.WorkInStockActivity;
import com.wd.workoffice.ui.activity.bat.work.WorkProActivity;
......@@ -178,7 +179,7 @@ public class WorkFragment extends WorkBaseFg {
startActivity(WorkFinancialActivity.class);
break;
case 5:
toast("暂无数据");
startActivity(WorkDeviceActivity.class);
break;
// case 7:
// toast("暂无数据");
......
<?xml version="1.0" encoding="utf-8"?>
<com.scwang.smartrefresh.layout.SmartRefreshLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/srl_refresh"
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">
<LinearLayout
android:id="@+id/ll_search"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/white"
android:orientation="horizontal"
android:paddingHorizontal="20mm"
android:paddingVertical="10mm">
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/shape_client_search"
android:gravity="center_vertical"
android:paddingHorizontal="10mm">
<ImageView
android:layout_width="15mm"
android:layout_height="15mm"
android:src="@mipmap/client_search" />
<EditText
android:id="@+id/et_key"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginLeft="2mm"
android:background="@null"
android:hint="搜索设备名称"
android:maxLines="1"
android:textColor="#91ABBA"
android:textColorHint="#91ABBA"
android:textSize="14sp" />
</LinearLayout>
<Button
android:id="@+id/btn_search"
android:layout_width="60mm"
android:layout_height="wrap_content"
android:layout_marginLeft="10mm"
android:background="@color/mainTextColor"
android:text="搜索"
android:textColor="@color/white"
android:textSize="16sp" />
</LinearLayout>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_data"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
</com.scwang.smartrefresh.layout.SmartRefreshLayout>
\ No newline at end of file
<?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:background="@color/white"
android:orientation="vertical"
android:paddingHorizontal="20mm"
android:paddingVertical="10mm">
<TextView
android:id="@+id/tv_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="图号TH82739857"
android:textColor="@color/black"
android:textSize="16sp" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="14mm"
android:background="#FCFCFD"
android:orientation="vertical"
android:padding="10mm">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="vertical">
<TextView
android:id="@+id/tv_code"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:text="编号:"
android:textColor="@color/flexible_text_gray"
android:textSize="12sp" />
<TextView
android:id="@+id/tv_rule"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_marginTop="4mm"
android:text="规则:"
android:textColor="@color/flexible_text_gray"
android:textSize="12sp" />
</LinearLayout>
<TextView
android:id="@+id/tv_type"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:text="品号"
android:textColor="@color/flexible_text_gray"
android:textSize="12sp" />
</RelativeLayout>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:layout_marginTop="5mm">
<TextView
android:id="@+id/tv_component"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/selector_btn_color"
android:paddingHorizontal="10mm"
android:paddingVertical="3mm"
android:text="查看部件"
android:textColor="@color/white"
android:textSize="12sp" />
<TextView
android:id="@+id/tv_spare_parts"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10mm"
android:background="@drawable/selector_btn_color"
android:paddingHorizontal="10mm"
android:paddingVertical="3mm"
android:text="查看备件"
android:textColor="@color/white"
android:textSize="12sp" />
</LinearLayout>
</LinearLayout>
\ No newline at end of file
<?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:background="@color/white"
android:orientation="vertical"
android:paddingHorizontal="20mm"
android:paddingTop="10mm"
android:paddingBottom="20mm">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/tv_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5mm"
android:text="邢台德龙钢铁客户"
android:textSize="16sp"
android:textStyle="bold" />
</RelativeLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="14mm"
android:background="#FCFCFD"
android:orientation="vertical"
android:paddingVertical="10mm">
<TextView
android:id="@+id/tv_code"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:paddingHorizontal="10mm"
android:text="编号"
android:textColor="@color/flexible_text_gray"
android:textSize="13sp" />
<TextView
android:id="@+id/tv_spec"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginTop="4mm"
android:paddingHorizontal="10mm"
android:text="规格"
android:textColor="@color/flexible_text_gray"
android:textSize="13sp" />
<TextView
android:id="@+id/tv_num"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginTop="4mm"
android:paddingHorizontal="10mm"
android:text="数量"
android:textColor="@color/flexible_text_gray"
android:textSize="13sp" />
<TextView
android:id="@+id/tv_send_num"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginTop="4mm"
android:paddingHorizontal="10mm"
android:text="已发货数量"
android:textColor="@color/flexible_text_gray"
android:textSize="13sp" />
</LinearLayout>
</LinearLayout>
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论