StockTaskMultipleAdapter.java 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. package com.uas.saiej.adapter;
  2. import android.content.Context;
  3. import android.graphics.drawable.Drawable;
  4. import android.view.LayoutInflater;
  5. import android.view.View;
  6. import android.view.ViewGroup;
  7. import android.widget.BaseAdapter;
  8. import android.widget.LinearLayout;
  9. import android.widget.TextView;
  10. import com.uas.saiej.R;
  11. import com.uas.saiej.bean.StockTaskMultipleBean;
  12. import com.uas.saiej.util.CommonUtil;
  13. import com.uas.saiej.view.MostListView;
  14. import java.util.ArrayList;
  15. import java.util.List;
  16. public class StockTaskMultipleAdapter extends BaseAdapter {
  17. private List<StockTaskMultipleBean> objects = new ArrayList<StockTaskMultipleBean>();
  18. private Context context;
  19. private LayoutInflater layoutInflater;
  20. private Drawable retractDrawable, spreadDrawable = null;
  21. public StockTaskMultipleAdapter(Context context, List<StockTaskMultipleBean> objects) {
  22. this.context = context;
  23. this.layoutInflater = LayoutInflater.from(context);
  24. this.objects = objects;
  25. retractDrawable = context.getResources().getDrawable(R.drawable.ic_menu_retract);
  26. spreadDrawable = context.getResources().getDrawable(R.drawable.ic_menu_spread);
  27. retractDrawable.setBounds(0, 0, retractDrawable.getMinimumWidth(), retractDrawable.getMinimumHeight());
  28. spreadDrawable.setBounds(0, 0, spreadDrawable.getMinimumWidth(), spreadDrawable.getMinimumHeight());
  29. }
  30. @Override
  31. public int getCount() {
  32. return objects.size();
  33. }
  34. @Override
  35. public StockTaskMultipleBean getItem(int position) {
  36. return objects.get(position);
  37. }
  38. @Override
  39. public long getItemId(int position) {
  40. return position;
  41. }
  42. @Override
  43. public View getView(int position, View convertView, ViewGroup parent) {
  44. if (convertView == null) {
  45. convertView = layoutInflater.inflate(R.layout.item_list_stock_task_multiple, null);
  46. convertView.setTag(new ViewHolder(convertView));
  47. }
  48. initializeViews((StockTaskMultipleBean) getItem(position), (ViewHolder) convertView.getTag());
  49. return convertView;
  50. }
  51. private void initializeViews(StockTaskMultipleBean object, final ViewHolder holder) {
  52. holder.stockTaskMultipleOrispeccode.setText(object.getPR_ORISPECCODE());
  53. holder.stockTaskMultipleProdcode.setText(object.getPD_PRODCODE());
  54. holder.stockTaskMultipleWaitNum.setText(object.getPD_RESTQTY());
  55. holder.stockTaskMultipleSum.setText(object.getPD_OUTQTY());
  56. holder.stockTaskMultipleZxbzs.setText(CommonUtil.doubleFormat(object.getBAR_REMAIN()));
  57. holder.stockTaskMultipleBatchcode.setText(object.getPD_BATCHCODE());
  58. holder.stockTaskMultipleLocation.setText(object.getBAR_LOCATION());
  59. holder.stockTaskMultipleDcTv.setText(object.getDC());
  60. holder.stockTaskMultipleHave.setText((object.getBA_HASBARCODE() == 0 ? "无" : "有"));
  61. holder.stockTaskMultipleDetailSpec.setText(object.getPR_DETAIL() + " " + object.getPR_SPEC());
  62. if (object.getNOS().size() > 0) {
  63. holder.stockTaskMultipleSpreadTv.setVisibility(View.VISIBLE);
  64. StockTaskMultipleDetailAdapter stockTaskMultipleDetailAdapter = new StockTaskMultipleDetailAdapter(context, object.getNOS());
  65. holder.stockTaskMultipleListLv.setAdapter(stockTaskMultipleDetailAdapter);
  66. holder.stockTaskMultipleSuperLl.setOnClickListener(new View.OnClickListener() {
  67. @Override
  68. public void onClick(View v) {
  69. if (holder.stockTaskMultipleListLv.getVisibility() == View.VISIBLE) {
  70. holder.stockTaskMultipleListLv.setVisibility(View.GONE);
  71. holder.stockTaskMultipleSpreadTv.setText("展开");
  72. holder.stockTaskMultipleSpreadTv.setCompoundDrawables(null, null, retractDrawable, null);
  73. holder.stockTaskMultipleSpreadTv.setCompoundDrawablePadding(5);
  74. } else {
  75. holder.stockTaskMultipleListLv.setVisibility(View.VISIBLE);
  76. holder.stockTaskMultipleSpreadTv.setText("收起");
  77. holder.stockTaskMultipleSpreadTv.setCompoundDrawables(null, null, spreadDrawable, null);
  78. holder.stockTaskMultipleSpreadTv.setCompoundDrawablePadding(5);
  79. }
  80. }
  81. });
  82. } else {
  83. holder.stockTaskMultipleSpreadTv.setVisibility(View.GONE);
  84. }
  85. }
  86. protected class ViewHolder {
  87. private TextView stockTaskMultipleOrispeccode;
  88. private TextView stockTaskMultipleProdcode;
  89. private TextView stockTaskMultipleWaitNum;
  90. private TextView stockTaskMultipleSum;
  91. private TextView stockTaskMultipleZxbzs;
  92. private TextView stockTaskMultipleBatchcode;
  93. private TextView stockTaskMultipleLocation;
  94. private TextView stockTaskMultipleHave;
  95. private TextView stockTaskMultipleDetailSpec;
  96. private MostListView stockTaskMultipleListLv;
  97. private LinearLayout stockTaskMultipleSuperLl;
  98. private TextView stockTaskMultipleSpreadTv;
  99. private TextView stockTaskMultipleDcTv;
  100. public ViewHolder(View view) {
  101. stockTaskMultipleOrispeccode = (TextView) view.findViewById(R.id.stock_task_multiple_orispeccode);
  102. stockTaskMultipleProdcode = (TextView) view.findViewById(R.id.stock_task_multiple_prodcode);
  103. stockTaskMultipleWaitNum = (TextView) view.findViewById(R.id.stock_task_multiple_wait_num);
  104. stockTaskMultipleSum = (TextView) view.findViewById(R.id.stock_task_multiple_sum);
  105. stockTaskMultipleZxbzs = (TextView) view.findViewById(R.id.stock_task_multiple_zxbzs);
  106. stockTaskMultipleBatchcode = (TextView) view.findViewById(R.id.stock_task_multiple_batchcode);
  107. stockTaskMultipleLocation = (TextView) view.findViewById(R.id.stock_task_multiple_location);
  108. stockTaskMultipleHave = (TextView) view.findViewById(R.id.stock_task_multiple_have);
  109. stockTaskMultipleDetailSpec = (TextView) view.findViewById(R.id.stock_task_multiple_detail_spec);
  110. stockTaskMultipleListLv = (MostListView) view.findViewById(R.id.stock_task_multiple_list_lv);
  111. stockTaskMultipleSuperLl = (LinearLayout) view.findViewById(R.id.stock_task_multiple_super_ll);
  112. stockTaskMultipleSpreadTv = (TextView) view.findViewById(R.id.stock_task_multiple_spread_tv);
  113. stockTaskMultipleDcTv = (TextView) view.findViewById(R.id.stock_task_multiple_dc);
  114. }
  115. }
  116. }