提交 977b30bd authored 作者: lgd's avatar lgd

1.库存类别

2.//TODO erp用户激活,忘记密码测试,产品下单还差附件,bat,mes,消息,我的,刷新token
上级 59bec11c
......@@ -392,6 +392,30 @@
android:screenOrientation="portrait"
android:theme="@style/Work.Base"
android:windowSoftInputMode="adjustPan" />
<activity
android:name=".ui.activity.bat.work.WorkFinancialActivity"
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.WorkInStockActivity"
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.WorkInStockSearchActivity"
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;
import java.util.List;
/**
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class InStockBean {
/**
* records : [{"createdBy":143,"createdByName":"冷益飞","createdTime":"2019-11-27 11:29:22","updatedBy":null,"updatedByName":null,"updatedTime":null,"id":917,"code":"WHGK","name":"钢水控制库","parentId":"0000","level":1,"sign":null,"type":"IN","status":"0","erpId":"WHGK","childCount":0,"stockInstanceCount":0,"children":null},{"createdBy":143,"createdByName":"冷益飞","createdTime":"2019-11-27 11:29:22","updatedBy":null,"updatedByName":null,"updatedTime":null,"id":887,"code":"WHGT","name":"锆碳制品库","parentId":"0000","level":1,"sign":null,"type":"IN","status":"0","erpId":"WHGT","childCount":0,"stockInstanceCount":0,"children":null}]
* total : 2
* size : 10
* current : 1
* orders : []
* searchCount : true
* pages : 1
*/
private int total;
private int size;
private int current;
private boolean searchCount;
private int pages;
private List<RecordsBean> records;
private List<?> orders;
public int getTotal() {
return total;
}
public void setTotal(int total) {
this.total = total;
}
public int getSize() {
return size;
}
public void setSize(int size) {
this.size = size;
}
public int getCurrent() {
return current;
}
public void setCurrent(int current) {
this.current = current;
}
public boolean isSearchCount() {
return searchCount;
}
public void setSearchCount(boolean searchCount) {
this.searchCount = searchCount;
}
public int getPages() {
return pages;
}
public void setPages(int pages) {
this.pages = pages;
}
public List<RecordsBean> getRecords() {
return records;
}
public void setRecords(List<RecordsBean> records) {
this.records = records;
}
public List<?> getOrders() {
return orders;
}
public void setOrders(List<?> orders) {
this.orders = orders;
}
public static class RecordsBean {
/**
* createdBy : 143
* createdByName : 冷益飞
* createdTime : 2019-11-27 11:29:22
* updatedBy : null
* updatedByName : null
* updatedTime : null
* id : 917
* code : WHGK
* name : 钢水控制库
* parentId : 0000
* level : 1
* sign : null
* type : IN
* status : 0
* erpId : WHGK
* childCount : 0
* stockInstanceCount : 0
* children : null
*/
private int createdBy;
private String createdByName;
private String createdTime;
private Object updatedBy;
private Object updatedByName;
private Object updatedTime;
private int id;
private String code;
private String name;
private String parentId;
private int level;
private Object sign;
private String type;
private String status;
private String erpId;
private int childCount;
private int stockInstanceCount;
private Object children;
public int getCreatedBy() {
return createdBy;
}
public void setCreatedBy(int createdBy) {
this.createdBy = createdBy;
}
public String getCreatedByName() {
return createdByName;
}
public void setCreatedByName(String 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 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 getParentId() {
return parentId;
}
public void setParentId(String parentId) {
this.parentId = parentId;
}
public int getLevel() {
return level;
}
public void setLevel(int level) {
this.level = level;
}
public Object getSign() {
return sign;
}
public void setSign(Object sign) {
this.sign = sign;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getErpId() {
return erpId;
}
public void setErpId(String erpId) {
this.erpId = erpId;
}
public int getChildCount() {
return childCount;
}
public void setChildCount(int childCount) {
this.childCount = childCount;
}
public int getStockInstanceCount() {
return stockInstanceCount;
}
public void setStockInstanceCount(int stockInstanceCount) {
this.stockInstanceCount = stockInstanceCount;
}
public Object getChildren() {
return children;
}
public void setChildren(Object children) {
this.children = children;
}
}
}
......@@ -6,7 +6,7 @@ package com.wd.workoffice.bean.listener;
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public interface WarehouseOrderclickListener {
public interface OneMenuClickListener {
void click(String value);
}
......@@ -6,10 +6,10 @@ package com.wd.workoffice.bean.listener;
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public interface ProFilterClickListener {
public void clickStatus(String value);
public interface ThreeMenuClickListener {
void clickOne(String value);
public void clickProcess(String value);
void clickTwo(String value);
public void clickOnSale(String value);
void clickThree(String value);
}
......@@ -508,5 +508,11 @@ public interface ApiService {
@GET("/sys/dept/{deptId}")
Observable<BaseBean> getDepDetail(@Path("deptId") String id);
/**
* 分页查询仓库类别信息
*
* @return
*/
@GET("/stockType/app/search/list")
Observable<BaseBean> getStockType(@QueryMap Map<String, Object> param);
}
package com.wd.workoffice.ui.activity.bat.work;
import android.os.Bundle;
import android.view.View;
import android.widget.LinearLayout;
import com.wd.workoffice.R;
import com.wd.workoffice.app.WorkToolBarActivity;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
/**
* 工作台 - 财务
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class WorkFinancialActivity extends WorkToolBarActivity {
@BindView(R.id.ll_back)
LinearLayout llBack;
@BindView(R.id.ll_pay)
LinearLayout llPay;
@BindView(R.id.ll_open_ticket)
LinearLayout llOpenTicket;
@BindView(R.id.ll_receive_ticket)
LinearLayout llReceiveTicket;
@BindView(R.id.ll_account)
LinearLayout llAccount;
@BindView(R.id.ll_logistics)
LinearLayout llLogistics;
@Override
protected void initView() {
ButterKnife.bind(this);
}
@Override
protected void initData() {
}
@Override
protected void initEvent() {
}
@Override
protected int layoutId() {
return R.layout.activity_work_financial;
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// TODO: add setContentView(...) invocation
ButterKnife.bind(this);
}
@OnClick({R.id.ll_back, R.id.ll_pay, R.id.ll_open_ticket, R.id.ll_receive_ticket, R.id.ll_account, R.id.ll_logistics})
public void onViewClicked(View view) {
switch (view.getId()) {
case R.id.ll_back:
break;
case R.id.ll_pay:
break;
case R.id.ll_open_ticket:
break;
case R.id.ll_receive_ticket:
break;
case R.id.ll_account:
break;
case R.id.ll_logistics:
break;
}
}
}
package com.wd.workoffice.ui.activity.bat.work;
import android.text.TextUtils;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
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.InStockBean;
import com.wd.workoffice.bean.ProPriceBean;
import com.wd.workoffice.bean.ProductBean;
import com.wd.workoffice.bean.listener.ThreeMenuClickListener;
import com.wd.workoffice.retrofit.RtfUtils;
import com.wd.workoffice.retrofit.WorkObserver;
import com.wd.workoffice.ui.activity.bat.work.WorkProDetailActivity;
import com.wd.workoffice.ui.adapter.WorkInStockAdapter;
import com.wd.workoffice.ui.adapter.WorkProPriceAdapter;
import com.wd.workoffice.util.WorkUtils;
import com.wd.workoffice.util.ddmfilter.InSotckFilterData;
import com.wd.workoffice.util.ddmfilter.ProFilterData;
import com.wd.workoffice.widget.DropDownMenu;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import androidx.recyclerview.widget.RecyclerView;
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 WorkInStockActivity extends WorkToolBarActivity {
@BindView(R.id.ddm_choose)
DropDownMenu ddmChoose;
private RecyclerView rvData;
private int page = 1;
private Map<String, Object> param;
private SmartRefreshLayout srlRefresh;
private List<InStockBean.RecordsBean> dataList;
private WorkInStockAdapter dataAdapter;
@Override
protected void initView() {
ButterKnife.bind(this);
InSotckFilterData filterData = new InSotckFilterData(ddmChoose, new ThreeMenuClickListener() {
@Override
public void clickOne(String value) {
if (TextUtils.equals(value, "全部状态")) {
param.put("level", "");
} else if (TextUtils.equals(value, "一级库")) {
param.put("level", "1");
} else {
param.put("level", "2");
}
page = 1;
param.put("current", page);
getData();
}
@Override
public void clickTwo(String value) {
if (TextUtils.equals(value, "全部类型")) {
param.put("type", "");
} else if (TextUtils.equals(value, "厂内库")) {
param.put("type", "IN");
} else {
param.put("type", "OUT");
}
page = 1;
param.put("page", page);
getData();
}
@Override
public void clickThree(String value) {
if (TextUtils.equals(value, "全部状态")) {
param.put("status", "");
} else if (TextUtils.equals(value, "未启用")) {
param.put("status", "0");
} else {
param.put("status", "1");
}
page = 1;
param.put("current", page);
getData();
}
});
rvData = filterData.getRvData();
srlRefresh = filterData.getSrlRefresh();
}
@Override
protected void initData() {
dataList = new ArrayList<>();
dataAdapter = new WorkInStockAdapter(R.layout.item_work_in_stock, dataList);
dataAdapter.bindToRecyclerView(rvData);
dataAdapter.setEmptyView(R.layout.view_empty_content, rvData);
param = WorkUtils.pageKey();
param.put("current", page);
getData();
}
private void getData() {
RtfUtils.getRtf().getStockType(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<InStockBean.RecordsBean> getList = JSON.parseObject(data.getData().toString(), InStockBean.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 -> {
page = 1;
param.put("current", page);
getData();
});
dataAdapter.setOnLoadMoreListener(() -> {
param.put("current", page);
getData();
}, rvData);
dataAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
startActivity(WorkProDetailActivity.class, "pro", JSON.toJSONString(dataList.get(position)));
}
});
}
@Override
protected int layoutId() {
return R.layout.fg_work_pro;
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_search, menu);
return super.onCreateOptionsMenu(menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.search:
startActivity(WorkInStockSearchActivity.class);
break;
}
return super.onOptionsItemSelected(item);
}
}
package com.wd.workoffice.ui.activity.bat.work;
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.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.wd.workoffice.R;
import com.wd.workoffice.app.BaseBean;
import com.wd.workoffice.app.WorkBaseActivity;
import com.wd.workoffice.app.WorkToolBarActivity;
import com.wd.workoffice.bean.InStockBean;
import com.wd.workoffice.retrofit.RtfUtils;
import com.wd.workoffice.retrofit.WorkObserver;
import com.wd.workoffice.ui.adapter.WorkInStockAdapter;
import com.wd.workoffice.util.WorkUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import androidx.appcompat.widget.Toolbar;
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 WorkInStockSearchActivity extends WorkBaseActivity {
@BindView(R.id.et_key)
EditText etKey;
@BindView(R.id.tv_search)
TextView tvSearch;
@BindView(R.id.tb_title)
Toolbar tbTitle;
@BindView(R.id.rv_data)
RecyclerView rvData;
@BindView(R.id.srl_refresh)
SmartRefreshLayout srlRefresh;
private int page = 1;
private Map<String, Object> param;
private List<InStockBean.RecordsBean> dataList;
private WorkInStockAdapter dataAdapter;
@Override
protected void initView() {
ButterKnife.bind(this);
rvData.setLayoutManager(new LinearLayoutManager(this,RecyclerView.VERTICAL,false));
setSupportActionBar(tbTitle);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
}
@Override
protected void initData() {
dataList = new ArrayList<>();
dataAdapter = new WorkInStockAdapter(R.layout.item_work_in_stock, dataList);
dataAdapter.bindToRecyclerView(rvData);
dataAdapter.setEmptyView(R.layout.view_empty_content, rvData);
param = WorkUtils.pageKey();
param.put("current", page);
getData();
}
private void getData() {
RtfUtils.getRtf().getStockType(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<InStockBean.RecordsBean> getList = JSON.parseObject(data.getData().toString(), InStockBean.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 -> {
page = 1;
param.put("current", page);
getData();
});
dataAdapter.setOnLoadMoreListener(() -> {
param.put("current", page);
getData();
}, rvData);
dataAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
}
});
}
@Override
protected int layoutId() {
return R.layout.activity_work_in_sotck_search;
}
@OnClick(R.id.tv_search)
public void onViewClicked() {
page = 1;
param.put("current", page);
param.put("searchValue", etKey.getText().toString());
getData();
}
}
......@@ -19,12 +19,10 @@ import com.wd.workoffice.app.Config;
import com.wd.workoffice.app.WorkBaseActivity;
import com.wd.workoffice.bean.OrderBean;
import com.wd.workoffice.bean.WarehoustBean;
import com.wd.workoffice.bean.listener.WarehouseOrderclickListener;
import com.wd.workoffice.contract.WorkWarehouseContract;
import com.wd.workoffice.presenter.WorkWarehousePresenter;
import com.wd.workoffice.ui.adapter.FilterBaseAdapter;
import com.wd.workoffice.ui.adapter.WorkWarehouseOrderAdapter;
import com.wd.workoffice.util.DialogUtils;
import com.wd.workoffice.util.WorkUtils;
import java.util.ArrayList;
......@@ -121,7 +119,7 @@ public class WorkWarehouseOrderSearchActivity extends WorkBaseActivity implement
@Override
protected int layoutId() {
return R.layout.activity_warehouse_sorder_earch;
return R.layout.activity_warehouse_order_search;
}
......
package com.wd.workoffice.ui.adapter;
import android.text.TextUtils;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.wd.workoffice.R;
import com.wd.workoffice.bean.InStockBean;
import com.wd.workoffice.bean.ProPriceBean;
import com.wd.workoffice.util.MathUtils;
import com.wd.workoffice.util.WorkUtils;
import java.util.List;
/**
* Created by flexible on 2018/8/13.
*/
public class WorkInStockAdapter extends BaseQuickAdapter<InStockBean.RecordsBean, BaseViewHolder> {
public WorkInStockAdapter(int layoutResId, List data) {
super(layoutResId, data);
}
@Override
protected void convert(BaseViewHolder helper, InStockBean.RecordsBean item) {
helper.setText(R.id.tv_name, item.getName());
helper.setText(R.id.tv_code, item.getCode());
helper.setText(R.id.tv_bottom_name, item.getErpId());
helper.setText(R.id.tv_num,String.valueOf(item.getStockInstanceCount()));
helper.setText(R.id.tv_level, "层级:".concat(MathUtils.conver(item.getLevel())+"级库"));
helper.setText(R.id.tv_diff, "区分:".concat(WorkUtils.getStockType(item.getType())));
if (TextUtils.equals("0",item.getStatus())){
helper.setText(R.id.tv_status, "未启用");
}else{
helper.setText(R.id.tv_status, "已启用");
}
}
}
......@@ -11,6 +11,7 @@ import com.wd.workoffice.app.WorkBaseFg;
import com.wd.workoffice.bean.vo.BatLayoutVo;
import com.wd.workoffice.retrofit.RtfUtils;
import com.wd.workoffice.retrofit.WorkObserver;
import com.wd.workoffice.ui.activity.bat.work.WorkInStockActivity;
import com.wd.workoffice.ui.activity.bat.store.StoreCrucibleActivity;
import com.wd.workoffice.ui.activity.bat.store.StoreOutsourcingActivity;
import com.wd.workoffice.ui.activity.bat.store.StoreSaleActivity;
......@@ -27,6 +28,7 @@ import com.wd.workoffice.ui.activity.bat.sale.SaleSupplierOrderActivity;
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.WorkFinancialActivity;
import com.wd.workoffice.ui.activity.bat.work.WorkProActivity;
import com.wd.workoffice.ui.activity.bat.work.WorkWarehouseActivity;
import com.wd.workoffice.ui.adapter.BatLayoutAdapter;
......@@ -260,6 +262,16 @@ public class MainFragment extends WorkBaseFg {
startActivity(WorkDepActivity.class);
break;
case 5:
startActivity(WorkFinancialActivity.class);
break;
case 6:
toast("暂无数据");
break;
case 7:
toast("暂无数据");
break;
case 8:
startActivity(WorkInStockActivity.class);
break;
}
}
......
......@@ -13,7 +13,7 @@ import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.wd.workoffice.R;
import com.wd.workoffice.app.WorkBaseFg;
import com.wd.workoffice.bean.ProductBean;
import com.wd.workoffice.bean.listener.ProFilterClickListener;
import com.wd.workoffice.bean.listener.ThreeMenuClickListener;
import com.wd.workoffice.contract.WorkProContract;
import com.wd.workoffice.presenter.WorkProPresenter;
import com.wd.workoffice.ui.activity.bat.work.WorkProDetailActivity;
......@@ -56,9 +56,9 @@ public class WorkProFragment extends WorkBaseFg implements WorkProContract.View
ButterKnife.bind(this, getContentView());
workProPresenter = new WorkProPresenter();
workProPresenter.onAttach(this);
ProFilterData filterData = new ProFilterData(ddmChoose, new ProFilterClickListener() {
ProFilterData filterData = new ProFilterData(ddmChoose, new ThreeMenuClickListener() {
@Override
public void clickStatus(String value) {
public void clickOne(String value) {
if (TextUtils.equals(value, "全部状态")) {
param.put("status", "");
} else if (TextUtils.equals(value, "正常")) {
......@@ -72,7 +72,7 @@ public class WorkProFragment extends WorkBaseFg implements WorkProContract.View
}
@Override
public void clickProcess(String value) {
public void clickTwo(String value) {
if (TextUtils.equals(value, "全部状态")) {
param.put("status", "");
} else if (TextUtils.equals(value, "正常")) {
......@@ -86,7 +86,7 @@ public class WorkProFragment extends WorkBaseFg implements WorkProContract.View
}
@Override
public void clickOnSale(String value) {
public void clickThree(String value) {
if (TextUtils.equals(value, "全部")) {
param.put("isExpectOut", "");
} else if (TextUtils.equals(value, "已上架")) {
......
package com.wd.workoffice.ui.fg;
import android.os.Bundle;
import android.text.TextUtils;
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;
......@@ -13,19 +9,12 @@ import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.wd.workoffice.R;
import com.wd.workoffice.app.WorkBaseFg;
import com.wd.workoffice.bean.OrderBean;
import com.wd.workoffice.bean.ProductBean;
import com.wd.workoffice.bean.WarehoustBean;
import com.wd.workoffice.bean.listener.ProFilterClickListener;
import com.wd.workoffice.bean.listener.WarehouseFilterClickListener;
import com.wd.workoffice.contract.WorkProContract;
import com.wd.workoffice.contract.WorkWarehouseContract;
import com.wd.workoffice.presenter.WorkProPresenter;
import com.wd.workoffice.presenter.WorkWarehousePresenter;
import com.wd.workoffice.ui.activity.bat.work.WorkProDetailActivity;
import com.wd.workoffice.ui.activity.bat.work.WorkWarehouseActivity;
import com.wd.workoffice.ui.adapter.WorkProductAdapter;
import com.wd.workoffice.ui.adapter.WorkWarehouseAdapter;
import com.wd.workoffice.util.ddmfilter.ProFilterData;
import com.wd.workoffice.util.WorkUtils;
import com.wd.workoffice.util.ddmfilter.WarehouseFilterData;
import com.wd.workoffice.widget.DropDownMenu;
......@@ -34,8 +23,6 @@ import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AlertDialog;
import androidx.recyclerview.widget.RecyclerView;
import butterknife.BindView;
import butterknife.ButterKnife;
......
package com.wd.workoffice.util;
import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import com.qmuiteam.qmui.util.QMUIDisplayHelper;
import com.qmuiteam.qmui.widget.dialog.QMUIDialog;
import com.qmuiteam.qmui.widget.popup.QMUIPopup;
import com.qmuiteam.qmui.widget.popup.QMUIPopups;
import com.wd.workoffice.R;
import com.wd.workoffice.app.Config;
import com.wd.workoffice.bean.listener.WarehouseOrderclickListener;
import com.wd.workoffice.ui.adapter.FilterBaseAdapter;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
/**
* author : flexible
......
......@@ -4,6 +4,9 @@ import android.text.TextUtils;
import android.util.Log;
import java.math.BigDecimal;
import java.util.Arrays;
import freemarker.template.utility.CollectionUtils;
/**
* author : flexible
......@@ -11,7 +14,65 @@ import java.math.BigDecimal;
* github: https://github.com/FlexibleXd
**/
public class MathUtils {
public static String conver(int amount){
String str ="";
if(amount<0||amount>99){
str="不合法的数字";
}else if(amount>=1&&amount<=10){
str = cast(amount);
}else if(amount>=11&&amount<=19){
int num = amount%10;
str = "十"+cast(num);
}else if(amount>=20&&amount<=99){
int num1 = amount/10%10;
int num2 = amount%10;
str = cast(num1)+"十"+cast(num2);
}
return str;
}
public static String cast(int num){
String str="";
switch(num){
case 0:
str="";
break;
case 1:
str="一";
break;
case 2:
str="二";
break;
case 3:
str="三";
break;
case 4:
str="四";
break;
case 5:
str="五";
break;
case 6:
str="六";
break;
case 7:
str="七";
break;
case 8:
str="八";
break;
case 9:
str="九";
break;
case 10:
str="十";
break;
}
return str;
}
public static String converData(String value,Integer scale){
if (TextUtils.isEmpty(value)) {
value = "0";
......
......@@ -87,6 +87,22 @@ public class WorkUtils {
return name;
}
/**
* code: IN:厂内库 OUT:场外库
*
* @param code
* @return
*/
public static String getStockType(String code) {
if (TextUtils.equals("IN", code)) {
return "厂内库";
} else if (TextUtils.equals("OUT", code)) {
return "场外库";
} else {
return "场外库";
}
}
public static File uriToFile(Uri uri, Context context) {
String path = null;
if ("file".equals(uri.getScheme())) {
......
package com.wd.workoffice.util.ddmfilter;
import android.view.LayoutInflater;
import android.view.View;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.wd.workoffice.R;
import com.wd.workoffice.app.WorkApp;
import com.wd.workoffice.bean.listener.ThreeMenuClickListener;
import com.wd.workoffice.bean.listener.WarehouseFilterClickListener;
import com.wd.workoffice.ui.adapter.FilterAdapter;
import com.wd.workoffice.widget.DropDownMenu;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
/**
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class InSotckFilterData {
DropDownMenu menu;
private List<View> viewList;
private View mainView;
private RecyclerView rvData;
private SmartRefreshLayout srlRefresh;
private List<String> levelList = Arrays.asList("全部类型", "一级库", "二级库");
private List<String> statusList = Arrays.asList("全部状态", "未启用", "已启用");
private List<String> typeList = Arrays.asList("全部类型", "厂内库", "场外库");
ThreeMenuClickListener listener;
String[] TABLIST = new String[]{"层级", "区分", "状态"};
public InSotckFilterData(DropDownMenu menu, ThreeMenuClickListener listener) {
this.menu = menu;
this.listener = listener;
initView();
}
private void initView() {
mainView = LayoutInflater.from(WorkApp.getApp()).inflate(R.layout.view_pro, null);
rvData = mainView.findViewById(R.id.rv_data);
srlRefresh = mainView.findViewById(R.id.srl_refresh);
rvData.setLayoutManager(new LinearLayoutManager(WorkApp.getApp(), RecyclerView.VERTICAL, false));
viewList = new ArrayList<>();
addTabView(levelList, 1);
addTabView(typeList, 2);
addTabView(statusList, 3);
menu.setDropDownMenu(Arrays.asList(TABLIST), viewList, mainView);
}
private void addTabView(List<String> dataList, int type) {
View view = LayoutInflater.from(WorkApp.getApp()).inflate(R.layout.view_filter_pro, null);
RecyclerView rvData = view.findViewById(R.id.rv_filter);
rvData.setLayoutManager(new LinearLayoutManager(WorkApp.getApp(), RecyclerView.VERTICAL, false));
FilterAdapter filterAdapter = new FilterAdapter(R.layout.item_filter, dataList);
filterAdapter.bindToRecyclerView(rvData);
viewList.add(view);
filterAdapter.setOnItemClickListener((adapter, v, position) -> {
filterAdapter.setChoosePos(position);
menu.setTabText(dataList.get(position));
if (listener != null) {
switch (type) {
case 1:
listener.clickOne(dataList.get(position));
break;
case 2:
listener.clickTwo(dataList.get(position));
break;
case 3:
listener.clickThree(dataList.get(position));
break;
}
}
menu.closeMenu();
filterAdapter.notifyDataSetChanged();
});
}
public SmartRefreshLayout getSrlRefresh() {
return srlRefresh;
}
public void setSrlRefresh(SmartRefreshLayout srlRefresh) {
this.srlRefresh = srlRefresh;
}
public RecyclerView getRvData() {
return rvData;
}
public void setRvData(RecyclerView rvData) {
this.rvData = rvData;
}
}
......@@ -5,9 +5,8 @@ import android.view.View;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.wd.workoffice.R;
import com.wd.workoffice.app.Config;
import com.wd.workoffice.app.WorkApp;
import com.wd.workoffice.bean.listener.ProFilterClickListener;
import com.wd.workoffice.bean.listener.ThreeMenuClickListener;
import com.wd.workoffice.ui.adapter.FilterAdapter;
import com.wd.workoffice.widget.DropDownMenu;
......@@ -32,11 +31,11 @@ public class ProFilterData {
private List<String> statusList = Arrays.asList("全部状态", "正常", "冻结");
private List<String> processList = Arrays.asList("全部流程", "外采购流程", "供应流程", "销售流程", "坩埚流程");
private List<String> onSaleList = Arrays.asList("全部", "已上架", "未上架");
ProFilterClickListener listener;
ThreeMenuClickListener listener;
String[] TABLIST = new String[]{"全部状态", "全部流程", "是否上架"};
public ProFilterData(DropDownMenu menu, ProFilterClickListener listener) {
public ProFilterData(DropDownMenu menu, ThreeMenuClickListener listener) {
this.menu = menu;
this.listener = listener;
initView();
......@@ -50,8 +49,8 @@ public class ProFilterData {
rvData.setLayoutManager(new LinearLayoutManager(WorkApp.getApp(), RecyclerView.VERTICAL, false));
viewList = new ArrayList<>();
addTabView(statusList, 1);
addTabView(processList, 1);
addTabView(onSaleList, 1);
addTabView(processList, 2);
addTabView(onSaleList, 3);
menu.setDropDownMenu(Arrays.asList(TABLIST), viewList, mainView);
}
......@@ -68,13 +67,13 @@ public class ProFilterData {
if (listener != null) {
switch (type) {
case 1:
listener.clickStatus(dataList.get(position));
listener.clickOne(dataList.get(position));
break;
case 2:
listener.clickProcess(dataList.get(position));
listener.clickTwo(dataList.get(position));
break;
case 3:
listener.clickOnSale(dataList.get(position));
listener.clickThree(dataList.get(position));
break;
}
}
......
......@@ -6,7 +6,6 @@ import android.view.View;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.wd.workoffice.R;
import com.wd.workoffice.app.WorkApp;
import com.wd.workoffice.bean.listener.ProFilterClickListener;
import com.wd.workoffice.bean.listener.WarehouseFilterClickListener;
import com.wd.workoffice.ui.adapter.FilterAdapter;
import com.wd.workoffice.widget.DropDownMenu;
......@@ -49,7 +48,7 @@ public class WarehouseFilterData {
rvData.setLayoutManager(new LinearLayoutManager(WorkApp.getApp(), RecyclerView.VERTICAL, false));
viewList = new ArrayList<>();
addTabView(typeList, 1);
addTabView(statusList, 1);
addTabView(statusList, 2);
menu.setDropDownMenu(Arrays.asList(TABLIST), viewList, mainView);
}
......
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="@color/input_background" />
<corners android:radius="9dp" />
</shape>
\ 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="match_parent"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10mm"
android:background="@color/white"
android:orientation="vertical">
<LinearLayout
android:id="@+id/ll_back"
style="@style/llStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginLeft="@dimen/dp_10"
android:layout_weight="3"
android:text="回款管理"
android:textSize="16sp" />
<ImageView
android:layout_width="20mm"
android:layout_height="20mm"
android:background="@mipmap/arrow_right_my" />
</LinearLayout>
<View style="@style/dividerX" />
<LinearLayout
style="@style/llStyle"
android:id="@+id/ll_pay"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginLeft="@dimen/dp_10"
android:layout_weight="1"
android:text="付款管理"
android:textSize="16sp" />
<ImageView
android:layout_width="20mm"
android:layout_height="20mm"
android:background="@mipmap/arrow_right_my" />
</LinearLayout>
<View style="@style/dividerX" />
<LinearLayout
style="@style/llStyle"
android:id="@+id/ll_open_ticket"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginLeft="@dimen/dp_10"
android:layout_weight="3"
android:text="开票管理"
android:textSize="16sp" />
<ImageView
android:layout_width="20mm"
android:layout_height="20mm"
android:background="@mipmap/arrow_right_my" />
</LinearLayout>
<View style="@style/dividerX" />
<LinearLayout
style="@style/llStyle"
android:id="@+id/ll_receive_ticket"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginLeft="@dimen/dp_10"
android:layout_weight="3"
android:text="收票管理"
android:textSize="16sp" />
<ImageView
android:layout_width="20mm"
android:layout_height="20mm"
android:background="@mipmap/arrow_right_my" />
</LinearLayout>
<View style="@style/dividerX" />
<LinearLayout
style="@style/llStyle"
android:id="@+id/ll_account"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginLeft="@dimen/dp_10"
android:layout_weight="3"
android:text="所有账户"
android:textSize="16sp" />
<ImageView
android:layout_width="20mm"
android:layout_height="20mm"
android:background="@mipmap/arrow_right_my" />
</LinearLayout>
<View style="@style/dividerX" />
<LinearLayout
android:id="@+id/ll_logistics"
style="@style/llStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginLeft="@dimen/dp_10"
android:layout_weight="3"
android:text="物流管理"
android:textSize="16sp" />
<ImageView
android:layout_width="20mm"
android:layout_height="20mm"
android:background="@mipmap/arrow_right_my" />
</LinearLayout>
<View style="@style/dividerX" />
</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"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<androidx.appcompat.widget.Toolbar
android:id="@+id/tb_title"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
android:theme="@style/ThemeOverlay.AppCompat.Light"
app:contentInsetEnd="0mm"
app:contentInsetEndWithActions="0mm"
app:contentInsetLeft="0mm"
app:contentInsetRight="0mm"
app:contentInsetStart="0mm"
app:contentInsetStartWithNavigation="0mm">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:paddingVertical="5mm">
<EditText
android:id="@+id/et_key"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginVertical="3mm"
android:layout_weight="1"
android:background="@drawable/shape_client_search"
android:hint="搜索库存类别"
android:paddingHorizontal="3mm"
android:textSize="14sp" />
<TextView
android:id="@+id/tv_search"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:gravity="center"
android:paddingHorizontal="8mm"
android:text="搜索" />
</LinearLayout>
</androidx.appcompat.widget.Toolbar>
<View style="@style/dividerX" />
<com.scwang.smartrefresh.layout.SmartRefreshLayout
android:id="@+id/srl_refresh"
android:layout_width="match_parent"
android:layout_height="match_parent">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_data"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</com.scwang.smartrefresh.layout.SmartRefreshLayout>
</LinearLayout>
\ No newline at end of file
......@@ -33,13 +33,13 @@
android:textSize="18sp" />
<!--<TextView-->
<!--android:id="@+id/tv_name"-->
<!--android:layout_width="wrap_content"-->
<!--android:layout_height="wrap_content"-->
<!--android:layout_marginTop="2mm"-->
<!--android:text="销售一部门/管理员"-->
<!--android:textColor="#ffdde2e6"-->
<!--android:textSize="13sp" />-->
<!--android:id="@+id/tv_name"-->
<!--android:layout_width="wrap_content"-->
<!--android:layout_height="wrap_content"-->
<!--android:layout_marginTop="2mm"-->
<!--android:text="销售一部门/管理员"-->
<!--android:textColor="#ffdde2e6"-->
<!--android:textSize="13sp" />-->
<TextView
android:id="@+id/tv_no"
......@@ -59,100 +59,100 @@
android:orientation="vertical">
<LinearLayout
android:id="@+id/ll_role"
style="@style/llStyle"
android:layout_width="match_parent"
<LinearLayout
android:id="@+id/ll_role"
style="@style/llStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="horizontal">
<ImageView
android:layout_width="24mm"
android:layout_height="24mm"
android:background="@mipmap/my_role" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="horizontal">
<ImageView
android:layout_width="24mm"
android:layout_height="24mm"
android:background="@mipmap/my_role" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginLeft="@dimen/dp_10"
android:layout_weight="3"
android:text="我的权限"
android:textSize="16sp" />
<ImageView
android:layout_width="20mm"
android:layout_height="20mm"
android:background="@mipmap/arrow_right_my" />
</LinearLayout>
android:layout_gravity="center"
android:layout_marginLeft="@dimen/dp_10"
android:layout_weight="3"
android:text="我的权限"
android:textSize="16sp" />
<ImageView
android:layout_width="20mm"
android:layout_height="20mm"
android:background="@mipmap/arrow_right_my" />
</LinearLayout>
<View
style="@style/dividerX"
android:layout_marginHorizontal="26mm" />
<LinearLayout
android:id="@+id/ll_info"
style="@style/llStyle"
android:gravity="center_vertical"
android:layout_width="match_parent"
<LinearLayout
android:id="@+id/ll_info"
style="@style/llStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="horizontal">
<ImageView
android:layout_width="24mm"
android:layout_height="24mm"
android:background="@mipmap/my_info" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<ImageView
android:layout_width="24mm"
android:layout_height="24mm"
android:background="@mipmap/my_info" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginLeft="@dimen/dp_10"
android:layout_weight="3"
android:text="个人资料"
android:textSize="16sp" />
<ImageView
android:layout_width="20mm"
android:layout_height="20mm"
android:background="@mipmap/arrow_right_my" />
</LinearLayout>
android:layout_gravity="center"
android:layout_marginLeft="@dimen/dp_10"
android:layout_weight="3"
android:text="个人资料"
android:textSize="16sp" />
<ImageView
android:layout_width="20mm"
android:layout_height="20mm"
android:background="@mipmap/arrow_right_my" />
</LinearLayout>
<View
style="@style/dividerX"
android:layout_marginHorizontal="26mm" />
<LinearLayout
android:id="@+id/ll_setting"
style="@style/llStyle"
android:gravity="center_vertical"
android:layout_width="match_parent"
<LinearLayout
android:id="@+id/ll_setting"
style="@style/llStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="horizontal">
<ImageView
android:layout_width="24mm"
android:layout_height="24mm"
android:background="@mipmap/my_setting" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<ImageView
android:layout_width="24mm"
android:layout_height="24mm"
android:background="@mipmap/my_setting" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginLeft="@dimen/dp_10"
android:layout_weight="3"
android:text="系统设置"
android:textSize="16sp" />
<ImageView
android:layout_width="20mm"
android:layout_height="20mm"
android:background="@mipmap/arrow_right_my" />
</LinearLayout>
android:layout_gravity="center"
android:layout_marginLeft="@dimen/dp_10"
android:layout_weight="3"
android:text="系统设置"
android:textSize="16sp" />
<ImageView
android:layout_width="20mm"
android:layout_height="20mm"
android:background="@mipmap/arrow_right_my" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
</androidx.core.widget.NestedScrollView>
\ 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_marginTop="10mm"
android:background="@color/white"
android:orientation="vertical"
android:paddingHorizontal="20mm"
android:paddingVertical="10mm">
<LinearLayout
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:maxWidth="250mm"
android:textColor="@color/black"
android:textSize="13sp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="/"
android:textSize="14sp" />
<TextView
android:id="@+id/tv_code"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ellipsize="end"
android:maxWidth="150mm"
android:textColor="@color/black"
android:textSize="13sp" />
<TextView
android:id="@+id/tv_status"
android:layout_width="40mm"
android:layout_height="wrap_content"
android:layout_marginLeft="5mm"
android:background="@drawable/shape_stock"
android:gravity="center_horizontal"
android:paddingVertical="5mm"
android:text="已启用"
android:textColor="@color/flexible_text_sup"
android:textSize="11sp" />
</LinearLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10mm">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentBottom="true"
android:orientation="vertical">
<TextView
android:id="@+id/tv_bottom_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="ZZZZZ"
android:textSize="12sp" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="3mm"
android:orientation="horizontal">
<TextView
android:id="@+id/tv_level"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="层级:"
android:textSize="12sp" />
<TextView
android:id="@+id/tv_diff"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="20mm"
android:text="区分:"
android:textSize="12sp" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentBottom="true"
android:gravity="center_horizontal"
android:orientation="vertical">
<TextView
android:id="@+id/tv_num"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="0"
android:textSize="18sp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5mm"
android:text="实例数量"
android:textColor="@color/flexible_text_gray"
android:textSize="12sp" />
</LinearLayout>
</RelativeLayout>
</LinearLayout>
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论