NewReceiptDetailActivity.java
4.41 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
package com.huaheng.mobilewms.refactor;
import android.content.Context;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.View;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.ListView;
import android.widget.TextView;
import com.huaheng.mobilewms.R;
import com.huaheng.mobilewms.activity.model.CommonActivity;
import com.huaheng.mobilewms.bean.Receipt;
import com.huaheng.mobilewms.bean.ReceiptBill;
import com.huaheng.mobilewms.bean.ReceiptDetail;
import com.huaheng.mobilewms.bean.ReceiptHeader;
import com.huaheng.mobilewms.https.HttpInterface;
import com.huaheng.mobilewms.https.Subscribers.ProgressSubscriber;
import com.huaheng.mobilewms.https.Subscribers.SubscriberOnNextListener;
import com.huaheng.mobilewms.util.WMSUtils;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
public class NewReceiptDetailActivity extends CommonActivity implements View.OnClickListener {
private String receiptCode, label;
public Context mContext;
ListView receiptListView;
ImageView backImage;
LinearLayout contentLayout;
TextView receiptNoView;
EditText containerEdit;
ReceiptHeader receiptHeader;
List<ReceiptDetail> receiptDetailList;
//收货容器
HashMap<String, List<ReceiptBill>> containerMap = new HashMap<>();
//当前容器编码
String currentContainerCode;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_new_receipt_detail);
Bundle bundle = getIntent().getExtras();
receiptCode = bundle.getString("receiptCode");
label = bundle.getString("label");
mContext = this;
findReceipt(receiptCode);
initView();
}
private void initView() {
backImage = findViewById(R.id.backImage);
backImage.setOnClickListener(this);
contentLayout = findViewById(R.id.contentLayout);
receiptListView = findViewById(R.id.receiptListView);
receiptNoView = findViewById(R.id.receipt_no);
receiptNoView.setText(receiptCode);
containerEdit = findViewById(R.id.containerEdit);
containerEdit.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView textView, int i, KeyEvent keyEvent) {
String text = textView.getText().toString();
text = text.trim().toUpperCase();
textView.setText(text);
if (WMSUtils.isNotEmpty(text)) {
isContainer(text);
}
return false;
}
});
}
private void initList() {
ReceiptDetailAdapter adapter = new ReceiptDetailAdapter(mContext, receiptDetailList);
receiptListView.setAdapter(adapter);
adapter.notifyDataSetChanged();
}
private void findReceipt(String receiptCode) {
HttpInterface.getInsstance().findReceipt(new ProgressSubscriber<Receipt>(mContext, receiptListener), receiptCode);
}
SubscriberOnNextListener receiptListener = new SubscriberOnNextListener<Receipt>() {
@Override
public void onNext(Receipt receipt) {
if (receipt != null) {
receiptHeader = receipt.getReceiptHeader();
receiptDetailList = receipt.getReceiptDetails();
initList();
} else {
WMSUtils.showShort(getString(R.string.toast_error));
}
}
@Override
public void onError(String str) {
}
};
private void isContainer(String containerCode) {
HttpInterface.getInsstance().isContainer(new ProgressSubscriber<String>(this, isContainerListener), containerCode);
}
SubscriberOnNextListener isContainerListener = new SubscriberOnNextListener<String>() {
@Override
public void onNext(String str) {
//添加容器
List<ReceiptBill> receiptBillList = new ArrayList<>();
currentContainerCode = str;
containerMap.put(str, receiptBillList);
}
@Override
public void onError(String str) {
}
};
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.backImage:
finish();
default:
break;
}
}
}