Commit 7fc3e508 by 倪力烽

1. 调入、调出功能已完成

2. 成功、失败提示已完成
parent 1977857b
......@@ -82,8 +82,6 @@ public class LoginActivity extends BaseActivity implements LoginView{
@Override
public void toLoginActivity(LoginUser loginUser) {
Toast.makeText(this, loginUser.getUserName() +
" login success , to MainActivity", Toast.LENGTH_SHORT).show();
if (rememberCb.isChecked()) {
saveInfo(loginUser,true);
}else {
......
......@@ -54,8 +54,6 @@ public class MainActivity extends BaseActivity {
TabLayout mTabLayout;
@BindView(R.id.viewpager)
ViewPager mViewPager;
// @BindView(R.id.main_toolbar)
// Toolbar mToolbar;
private TextView mExtraTv;
private MyViewPagerAdapter viewPagerAdapter;
......@@ -98,25 +96,6 @@ public class MainActivity extends BaseActivity {
}
});
mTabLayout.setOnTabSelectedListener(new TabLayout.ViewPagerOnTabSelectedListener(mViewPager));
// mToolbar = (Toolbar) findViewById(R.id.main_toolbar);
// setSupportActionBar(mToolbar);
// mExtraTv = (TextView) mToolbar.findViewById(R.id.tv_extra_text);
// mExtraTv.setText(getString(R.string.list));
// mExtraTv.setOnClickListener(new View.OnClickListener() {
// @Override
// public void onClick(View v) {
// String text = mExtraTv.getText().toString();
// if (text.equals(getString(R.string.list))) {
// // 如果是显示的列表,则执行
// Log.i(TAG, "onClick: list" );
// }else if (text.equals(getString(R.string.submit))) {
//
// }else if (text.equals(getString(R.string.logout))) {
// finish();
// }
// }
// });
// Log.i(TAG, "initViews: " + mToolbar.getChildCount());
}
......
......@@ -4,11 +4,11 @@ import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.os.PersistableBundle;
import android.text.Editable;
import android.text.TextWatcher;
import android.util.Log;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.TextView;
......@@ -17,7 +17,7 @@ import com.senthink.ebike_administrer_tool.adapter.SearchParkAdapter;
import com.senthink.ebike_administrer_tool.asynchttp.AsyncHttp;
import com.senthink.ebike_administrer_tool.asynchttp.HttpCallback;
import com.senthink.ebike_administrer_tool.bean.dispatch.DispatchIn;
import com.senthink.ebike_administrer_tool.bean.dispatch.SearchParkInfo;
import com.senthink.ebike_administrer_tool.common.Common;
import com.senthink.ebike_administrer_tool.common.CommonUrl;
import com.senthink.ebike_administrer_tool.widget.ClearEditText;
......@@ -41,7 +41,7 @@ public class SearchParkActivity extends BaseActivity {
private TextView mCancelTv;
private String[] data;
private ArrayAdapter<String> arrayAdapter;
private List<SearchParkInfo> mDatas = new ArrayList<>();
private List<DispatchIn> mDatas = new ArrayList<>();
private SearchParkAdapter searchParkAdapter;
AsyncHttp http;
String token;
......@@ -63,7 +63,28 @@ public class SearchParkActivity extends BaseActivity {
// user_list.setVisibility(View.VISIBLE);
}
});
user_list.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Bundle bundle = new Bundle();
DispatchIn in = mDatas.get(position);
Log.i(TAG, "id: " + in.getCarId());
Log.i(TAG, "parkingName: " + in.getParkingNmae());
Log.i(TAG, "parkingCode: " + in.getParkingCode());
Log.i(TAG, "totalCarDigit: " + in.getTotalCarDigit());
Log.i(TAG, "reserveCarDigit: " + in.getReserveCarDigit());
bundle.putInt("parkId",in.getCarId());
bundle.putString("parkingNmae",in.getParkingNmae());
bundle.putString("parkingCode",in.getParkingCode());
bundle.putInt("totalCarDigit",in.getTotalCarDigit());
bundle.putInt("reserveCarDigit",in.getReserveCarDigit());
// bundle.putParcelable(Common.PARKING_INFO);
Intent intent = new Intent();
intent.putExtra(Common.PARKING_INFO,bundle);
setResult(1002,intent);
finish();
}
});
mCancelTv.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
......@@ -84,6 +105,7 @@ public class SearchParkActivity extends BaseActivity {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
// if (s.length() >= 3) {
mDatas.clear();
searchParkAdapter.getFilter().filter(s);
JSONObject obj = new JSONObject();
try {
......@@ -106,12 +128,10 @@ public class SearchParkActivity extends BaseActivity {
int totalCarDigit = obj.getInt("totalCarDigit");
int reserveCarDigit = obj.getInt("reserveCarDigit");
DispatchIn in = new DispatchIn(id,parkingName,parkingCode,totalCarDigit,reserveCarDigit);
Log.i(TAG, "id: " + in.getCarId());
Log.i(TAG, "parkingName: " + in.getParkingNmae());
Log.i(TAG, "parkingCode: " + in.getParkingCode());
Log.i(TAG, "totalCarDigit: " + in.getTotalCarDigit());
Log.i(TAG, "reserveCarDigit: " + in.getReserveCarDigit());
mDatas.add(in);
}
searchParkAdapter.setmDatas(mDatas);
searchParkAdapter.notifyDataSetChanged();
}
} catch (JSONException e) {
e.printStackTrace();
......
......@@ -10,7 +10,7 @@ import android.widget.Filterable;
import android.widget.TextView;
import com.senthink.ebike_administrer_tool.R;
import com.senthink.ebike_administrer_tool.bean.dispatch.SearchParkInfo;
import com.senthink.ebike_administrer_tool.bean.dispatch.DispatchIn;
import java.util.ArrayList;
import java.util.List;
......@@ -29,7 +29,7 @@ public class SearchParkAdapter extends BaseAdapter implements Filterable {
* Contains the list of objects that represent the data of this Adapter.
* Adapter数据源
*/
private List<SearchParkInfo> mDatas;
private List<DispatchIn> mDatas;
private LayoutInflater mInflater;
......@@ -45,13 +45,13 @@ public class SearchParkAdapter extends BaseAdapter implements Filterable {
// A copy of the original mObjects array, initialized from and then used instead as soon as
// the mFilter ArrayFilter is used. mObjects will then only contain the filtered values.
//对象数组的备份,当调用ArrayFilter的时候初始化和使用。此时,对象数组只包含已经过滤的数据。
private ArrayList<SearchParkInfo> mOriginalValues;
private ArrayList<DispatchIn> mOriginalValues;
private ArrayFilter mFilter;
public SearchParkAdapter(Context context, List<SearchParkInfo> datas) {
mContext = context;
mDatas = datas;
mInflater = LayoutInflater.from(context);
public SearchParkAdapter(Context context, List<DispatchIn> datas) {
this.mContext = context;
this.mDatas = datas;
this.mInflater = LayoutInflater.from(context);
}
@Override
......@@ -80,8 +80,8 @@ public class SearchParkAdapter extends BaseAdapter implements Filterable {
} else {
holder = (ViewHolder) convertView.getTag();
}
SearchParkInfo info = mDatas.get(position);
holder.name.setText(info.getParkName());
DispatchIn info = mDatas.get(position);
holder.name.setText(info.getParkingNmae());
return convertView;
}
......@@ -89,6 +89,10 @@ public class SearchParkAdapter extends BaseAdapter implements Filterable {
TextView name;
}
public void setmDatas(List<DispatchIn> mDatas) {
this.mDatas = mDatas;
}
@Override
public Filter getFilter() {
if (mFilter == null) {
......@@ -120,7 +124,7 @@ public class SearchParkAdapter extends BaseAdapter implements Filterable {
}
//当首字母为空时
if (prefix == null || prefix.length() == 0) {
ArrayList<SearchParkInfo> list;
ArrayList<DispatchIn> list;
synchronized (mLock) {//同步复制一个原始备份数据
list = new ArrayList<>(mOriginalValues);
}
......@@ -129,17 +133,17 @@ public class SearchParkAdapter extends BaseAdapter implements Filterable {
} else {
String prefixString = prefix.toString().toLowerCase();//转化为小写
ArrayList<SearchParkInfo> values;
ArrayList<DispatchIn> values;
synchronized (mLock) {//同步复制一个原始备份数据
values = new ArrayList<>(mOriginalValues);
}
final int count = values.size();
final ArrayList<SearchParkInfo> newValues = new ArrayList<>();
final ArrayList<DispatchIn> newValues = new ArrayList<>();
for (int i = 0; i < count; i++) {
final SearchParkInfo value = values.get(i);//从List<User>中拿到User对象
final DispatchIn value = values.get(i);//从List<User>中拿到User对象
// final String valueText = value.toString().toLowerCase();
final String valueText = value.getParkName().toString().toLowerCase();//User对象的name属性作为过滤的参数
final String valueText = value.getParkingNmae().toString().toLowerCase();//User对象的name属性作为过滤的参数
// First match against the whole, non-splitted value
if (valueText.startsWith(prefixString) || valueText.indexOf(prefixString.toString()) != -1) {//第一个字符是否匹配
newValues.add(value);//将这个item加入到数组对象中
......@@ -166,7 +170,7 @@ public class SearchParkAdapter extends BaseAdapter implements Filterable {
@Override
protected void publishResults(CharSequence prefix, FilterResults results) {
//noinspection unchecked
mDatas = (List<SearchParkInfo>) results.values;//此时,Adapter数据源就是过滤后的Results
mDatas = (List<DispatchIn>) results.values;//此时,Adapter数据源就是过滤后的Results
if (results.count > 0) {
notifyDataSetChanged();//这个相当于从mDatas中删除了一些数据,只是数据的变化,故使用notifyDataSetChanged()
} else {
......
package com.senthink.ebike_administrer_tool.bean.dispatch;
import android.os.Parcel;
import android.os.Parcelable;
/**
* @Description :
* @Author : ni
......@@ -21,6 +24,27 @@ public class DispatchIn {
this.totalCarDigit = totalCarDigit;
this.reserveCarDigit = reserveCarDigit;
}
protected DispatchIn(Parcel in) {
parkId = in.readInt();
parkingNmae = in.readString();
parkingCode = in.readString();
totalCarDigit = in.readInt();
reserveCarDigit = in.readInt();
}
// public static final Creator<DispatchIn> CREATOR = new Creator<DispatchIn>() {
// @Override
// public DispatchIn createFromParcel(Parcel in) {
// return new DispatchIn(in);
// }
//
// @Override
// public DispatchIn[] newArray(int size) {
// return new DispatchIn[size];
// }
// };
public int getCarId() {
return parkId;
}
......@@ -60,4 +84,18 @@ public class DispatchIn {
public String getParkingNmae() {
return parkingNmae;
}
// @Override
// public int describeContents() {
// return 0;
// }
//
// @Override
// public void writeToParcel(Parcel dest, int flags) {
// dest.writeInt(parkId);
// dest.writeString(parkingNmae);
// dest.writeString(parkingCode);
// dest.writeInt(totalCarDigit);
// dest.writeInt(reserveCarDigit);
// }
}
package com.senthink.ebike_administrer_tool.bean.dispatch;
/**
* @Description :
* @Author : ni
* @Email : lifengni2015@gmail.com
* @Date : 2017/6/13
*/
public class SearchParkInfo {
private String parkName;
private int id;
public SearchParkInfo(String parkName,int id) {
this.parkName = parkName;
this.id = id;
}
public void setId(int id) {
this.id = id;
}
public int getId() {
return id;
}
public String getParkName() {
return parkName;
}
public void setParkName(String parkName) {
this.parkName = parkName;
}
}
......@@ -15,4 +15,5 @@ public class Common {
public static final String USER_PASSWORD_SHAREDPREFERENCE = "password";
public static final String USER_TOKEN_SHAREDPREFERENCE = "token";
public static final String USER_CHECKBOX_SELECTED_SHAREDPREFERENCE = "checkBox";
public static final String PARKING_INFO = "parking_info";
}
......@@ -2,41 +2,34 @@ package com.senthink.ebike_administrer_tool.fragment;
import android.app.Activity;
import android.app.Dialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.text.Editable;
import android.text.TextWatcher;
import android.util.Log;
import android.view.Display;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewGroup;
import android.view.Window;
import android.view.WindowManager;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
import com.google.zxing.client.android.CaptureActivity;
import com.senthink.ebike_administrer_tool.R;
import com.senthink.ebike_administrer_tool.SearchParkActivity;
import com.senthink.ebike_administrer_tool.adapter.DispatchInAdapter;
import com.senthink.ebike_administrer_tool.adapter.SearchParkAdapter;
import com.senthink.ebike_administrer_tool.bean.dispatch.DispatchCarInfo;
import com.senthink.ebike_administrer_tool.bean.dispatch.DispatchIn;
import com.senthink.ebike_administrer_tool.bean.dispatch.SearchParkInfo;
import com.senthink.ebike_administrer_tool.common.Common;
import com.senthink.ebike_administrer_tool.presenter.impl.DispatchInPresenterImpl;
import com.senthink.ebike_administrer_tool.presenter.impl.DispatchOutPresenterImpl;
import com.senthink.ebike_administrer_tool.view.IDispatchFragment;
import com.senthink.ebike_administrer_tool.widget.ClearEditText;
import java.util.ArrayList;
import java.util.List;
......@@ -53,16 +46,26 @@ import butterknife.ButterKnife;
public class DispatchInFragment extends Fragment implements IDispatchFragment{
private List<DispatchCarInfo> mList = new ArrayList<>();
private List<DispatchCarInfo> tmpList = new ArrayList<>();
@BindView(R.id.recycleView_dispatch_in)
RecyclerView recyclerView;
@BindView(R.id.btn_dispatch_in_scan)
Button scanInBtn;
@BindView(R.id.et_input_parkname)
EditText searchText;
@BindView(R.id.tv_limit_num)
TextView mLimitNumTv;
@BindView(R.id.tv_max_num)
TextView mMaxNumTv;
private DispatchInAdapter mAdapter;
DispatchInPresenterImpl presenter;
private static final int REQUEST_CODE = 1000;
private String parkingName;
private int parkId = 0;
private int totalCarDigit = 0;
private int reserveCarDigit = 0;
private int max = 0; // 最多停车数 = totalCarDigit + reserveCarDigit
private List<Integer> idList = new ArrayList<>();
private List<String> shellList = new ArrayList<>(); // 车架号列表
private static final int ACTION_SCAN_BARCODE = 1001;
......@@ -128,14 +131,16 @@ public class DispatchInFragment extends Fragment implements IDispatchFragment{
@Override
public void updateInfo(DispatchCarInfo out) {
mList.add(out);
mAdapter.notifyItemInserted(mList.size() - 1);
}
@Override
public void submitSuccess() {
Log.i(TAG, "submitSuccess: ");
dialog = new Dialog(getContext(),R.style.modify_psw_dialog);
inflate = LayoutInflater.from(getContext()).inflate(R.layout.layout_dialog_success,null);
inflate = LayoutInflater.from(getContext()).inflate(R.layout.dialog_success_layout,null);
TextView tv = (TextView) inflate.findViewById(R.id.tv_success);
tv.setText(getString(R.string.dispatch_in_success));
dialog.setContentView(inflate);
Window dialogWindow = dialog.getWindow();
dialogWindow.setGravity( Gravity.CENTER);
......@@ -147,11 +152,51 @@ public class DispatchInFragment extends Fragment implements IDispatchFragment{
//// lp.y = 20;
dialogWindow.setAttributes(lp);
dialog.show();
mList.clear();
mAdapter.notifyDataSetChanged();
shellList.clear();
}
@Override
public void submitFailed(List<Integer> list) {
public void submitFailed(final List<DispatchCarInfo> list) {
Log.i(TAG, "submitFailed: ");
StringBuilder sb_success = new StringBuilder(getString(R.string.dispatch_in_success))
.append(String.valueOf(mList.size() - list.size())).append(getString(R.string.liang));
StringBuilder sb_failure = new StringBuilder(String.valueOf(list.size())).append(getString(R.string.liang))
.append(getString(R.string.dispatch_in_failure));
dialog = new Dialog(getContext(),R.style.modify_psw_dialog);
inflate = LayoutInflater.from(getContext()).inflate(R.layout.dialog_failure_layout,null);
TextView tv_success = (TextView) inflate.findViewById(R.id.tv_success_num);
tv_success.setText(sb_success.toString());
TextView tv_failure = (TextView) inflate.findViewById(R.id.tv_failure_num);
tv_failure.setText(sb_failure.toString());
Button confirmBtn = (Button) inflate.findViewById(R.id.btn_queding);
confirmBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
dialog.dismiss();
}
});
dialog.setContentView(inflate);
Window dialogWindow = dialog.getWindow();
dialogWindow.setGravity( Gravity.CENTER);
WindowManager m = getActivity().getWindowManager();
Display d = m.getDefaultDisplay();
WindowManager.LayoutParams lp = dialogWindow.getAttributes();
lp.width = (int) (d.getWidth() * 0.64);
lp.height = (int) (d.getHeight() * 0.25);
dialogWindow.setAttributes(lp);
dialog.show();
dialog.setOnDismissListener(new DialogInterface.OnDismissListener() {
@Override
public void onDismiss(DialogInterface dialog) {
Log.i(TAG, "onDismiss: " + list.size());
mList = list;
Log.i(TAG, "onDismiss: " + mList.size());
mAdapter.notifyDataSetChanged();
}
});
}
......@@ -170,16 +215,33 @@ public class DispatchInFragment extends Fragment implements IDispatchFragment{
shellList.add(shellId);
presenter.getCarInfo(shellId);
}
}else if (resultCode == 1002) {
Bundle in = data.getBundleExtra(Common.PARKING_INFO);
parkId = in.getInt("parkId");
parkingName = in.getString("parkingNmae");
totalCarDigit = in.getInt("totalCarDigit");
reserveCarDigit = in.getInt("reserveCarDigit");
max = totalCarDigit + reserveCarDigit;
refreshView();
}
}
/**
* @Description 刷新界面
* */
private void refreshView() {
searchText.setText(parkingName);
mLimitNumTv.setText(String.valueOf(totalCarDigit));
mMaxNumTv.setText(String.valueOf(max));
}
public void submit(String token) {
for (DispatchCarInfo info : mList) {
idList.add(info.getId());
}
// 没有车时不进行post请求
// 有车时才进行post请求
if (mList.size()>0) {
presenter.submit(idList,2,token);
presenter.submit(idList,parkId,token);
Log.i(TAG, "submit: " + mList.size());
}else {
Toast.makeText(getActivity(),getString(R.string.no_car),Toast.LENGTH_SHORT).show();
......
package com.senthink.ebike_administrer_tool.fragment;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Build;
import android.os.Bundle;
......@@ -20,7 +20,7 @@ import android.view.ViewGroup;
import android.view.Window;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
import com.google.zxing.client.android.CaptureActivity;
......@@ -119,7 +119,7 @@ public class DispatchOutFragment extends Fragment implements IDispatchFragment {
@Override
public void submitSuccess() {
dialog = new Dialog(getContext(),R.style.modify_psw_dialog);
inflate = LayoutInflater.from(getContext()).inflate(R.layout.layout_dialog_success,null);
inflate = LayoutInflater.from(getContext()).inflate(R.layout.dialog_success_layout,null);
dialog.setContentView(inflate);
Window dialogWindow = dialog.getWindow();
dialogWindow.setGravity( Gravity.CENTER);
......@@ -137,10 +137,46 @@ public class DispatchOutFragment extends Fragment implements IDispatchFragment {
}
@Override
public void submitFailed(List<Integer> list) {
for (int i : list) {
public void submitFailed(final List<DispatchCarInfo> list) {
Log.i(TAG, "submitFailed: ");
StringBuilder sb_success = new StringBuilder(getString(R.string.dispatch_out_success))
.append(String.valueOf(mList.size() - list.size())).append(getString(R.string.liang));
StringBuilder sb_failure = new StringBuilder(String.valueOf(list.size())).append(getString(R.string.liang))
.append(getString(R.string.dispatch_out_failure));
dialog = new Dialog(getContext(),R.style.modify_psw_dialog);
inflate = LayoutInflater.from(getContext()).inflate(R.layout.dialog_failure_layout,null);
TextView tv_success = (TextView) inflate.findViewById(R.id.tv_success_num);
tv_success.setText(sb_success.toString());
TextView tv_failure = (TextView) inflate.findViewById(R.id.tv_failure_num);
tv_failure.setText(sb_failure.toString());
Button confirmBtn = (Button) inflate.findViewById(R.id.btn_queding);
confirmBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
dialog.dismiss();
}
});
dialog.setContentView(inflate);
Window dialogWindow = dialog.getWindow();
dialogWindow.setGravity( Gravity.CENTER);
WindowManager m = getActivity().getWindowManager();
Display d = m.getDefaultDisplay();
WindowManager.LayoutParams lp = dialogWindow.getAttributes();
lp.width = (int) (d.getWidth() * 0.64);
lp.height = (int) (d.getHeight() * 0.25);
dialogWindow.setAttributes(lp);
dialog.show();
dialog.setOnDismissListener(new DialogInterface.OnDismissListener() {
@Override
public void onDismiss(DialogInterface dialog) {
Log.i(TAG, "onDismiss: " + list.size());
mList = list;
Log.i(TAG, "onDismiss: " + mList.size());
mAdapter.notifyDataSetChanged();
}
});
}
@Override
......
......@@ -19,5 +19,5 @@ public interface DispatchCallback {
/** 修改密码成功 */
void submitSuccess();
/** 修改密码失败 */
void submitFailed(List<Integer> list);
void submitFailed(List<DispatchCarInfo> list);
}
......@@ -67,7 +67,6 @@ public class UserInfoModelImpl extends BasePresenterImpl implements UserInfoMode
*/
@Override
public void getUserIdByUserName(String userName, final UserInfoCallback callback) {
userApi = ApiManager.getInstance().getUserId();
StringBuilder url = new StringBuilder().append("http://10.200.2.109:9011/challenger/user/get/");
url.append(userName);
AsyncHttp http = new AsyncHttp(MyApplication.getContext());
......
......@@ -81,8 +81,10 @@ public class DispatchInModelImpl extends BasePresenterImpl implements DispatchI
try{
for (int i = 0;i<mList.size();i++) {
obj = new JSONObject();
Log.i(TAG, "submit: " + mList.get(i));
Log.i(TAG, "submit: " + parkId);
obj.put("id",mList.get(i));
obj.put("inParkingId",115);
obj.put("inParkingId",parkId);
array.put(obj);
}
} catch (JSONException e) {
......@@ -91,21 +93,25 @@ public class DispatchInModelImpl extends BasePresenterImpl implements DispatchI
http.PostHttpClient(CommonUrl.DISPATCH_IN_SUBMIT, token, array.toString(), new HttpCallback() {
@Override
public void HttpCallbackResult(int code, JSONObject response) {
Log.i(TAG, "HttpCallbackResult: " + code);
try {
String responseCode = response.getString("code");
if (responseCode.equals("8001")) {
Log.i(TAG, "HttpCallbackResult: " + responseCode);
if (responseCode.equals("8001")) {
callback.submitSuccess();
}else if (responseCode.equals("4001")) {
// 存在失败的车辆
// 存在失败的车辆,失败车辆会返回信息
JSONArray array = response.getJSONArray("data");
List<Integer> tmpList = new ArrayList<Integer>();
List<DispatchCarInfo> tmpList = new ArrayList<DispatchCarInfo>();
JSONObject obj1 = null;
for (int i = 0;i < array.length();i++) {
obj1 = array.getJSONObject(i);
int id = obj1.getInt("id");
tmpList.add(id);
String vehicleNo = obj1.getString("vehicleNo");
DispatchCarInfo out = new DispatchCarInfo();
out.setId(id);
out.setVehicleNo(vehicleNo);
tmpList.add(out);
}
callback.submitFailed(tmpList);
}
......
......@@ -84,21 +84,24 @@ public class DispatchOutModelImpl extends BasePresenterImpl implements DispatchO
http.PostHttpClient(CommonUrl.DISPATCH_OUT_SUBMIT, token, array.toString(), new HttpCallback() {
@Override
public void HttpCallbackResult(int code, JSONObject response) {
Log.i(TAG, "HttpCallbackResult: " + code);
try {
String responseCode = response.getString("code");
Log.i(TAG, "HttpCallbackResult: " + responseCode);
if (responseCode.equals("8001")) {
Log.i(TAG, "HttpCallbackResult: " + responseCode);
callback.submitSuccess();
}else if (responseCode.equals("4001")) {
// 存在车辆失败
JSONArray array = response.getJSONArray("data");
List<Integer> tmpList = new ArrayList<Integer>();
List<DispatchCarInfo> tmpList = new ArrayList<DispatchCarInfo>();
JSONObject obj1 = null;
for (int i = 0;i < array.length();i++) {
obj1 = array.getJSONObject(i);
int id = obj1.getInt("id");
tmpList.add(id);
DispatchCarInfo out = new DispatchCarInfo();
out.setId(id);
tmpList.add(out);
}
callback.submitFailed(tmpList);
}
......
......@@ -42,7 +42,7 @@ public class DispatchInPresenterImpl implements DispatchInPresenter {
}
@Override
public void submitFailed(List<Integer> list) {
public void submitFailed(List<DispatchCarInfo> list) {
fragment.submitFailed(list);
}
});
......@@ -67,7 +67,7 @@ public class DispatchInPresenterImpl implements DispatchInPresenter {
}
@Override
public void submitFailed(List<Integer> list) {
public void submitFailed(List<DispatchCarInfo> list) {
fragment.submitFailed(list);
}
});
......
......@@ -44,7 +44,7 @@ public class DispatchOutPresenterImpl implements DispatchOutPresenter {
}
@Override
public void submitFailed(List<Integer> list) {
public void submitFailed(List<DispatchCarInfo> list) {
}
});
}
......@@ -68,7 +68,7 @@ public class DispatchOutPresenterImpl implements DispatchOutPresenter {
}
@Override
public void submitFailed(List<Integer> list) {
public void submitFailed(List<DispatchCarInfo> list) {
fragment.submitFailed(list);
}
});
......
......@@ -17,5 +17,5 @@ public interface IDispatchFragment extends IBaseFragment {
// 提交成功
void submitSuccess();
void submitFailed(List<Integer> list);
void submitFailed(List<DispatchCarInfo> list);
}
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:bottomLeftRadius="@dimen/switch_button_corners_radius"
android:bottomRightRadius="@dimen/switch_button_corners_radius"
android:topLeftRadius="@dimen/switch_button_corners_radius"
android:topRightRadius="@dimen/switch_button_corners_radius"/>
<solid android:color="@color/white"/>
</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"
android:background="@drawable/failure_dialog"
android:paddingTop="15dp"
android:paddingBottom="5dp">
<TextView
android:id="@+id/tv_success_num"
android:layout_gravity="center"
android:textSize="@dimen/title_text_size"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/tab_tv_normal"
/>
<TextView
android:layout_marginTop="5dp"
android:layout_gravity="center"
android:id="@+id/tv_failure_num"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="@dimen/small_text"
android:textColor="@color/tab_tv_normal"/>
<Button
android:layout_marginTop="15dp"
android:layout_gravity="center|bottom"
android:id="@+id/btn_queding"
android:text="@string/confirm"
android:background="@drawable/login_btn"
android:layout_width="100dp"
android:layout_height="wrap_content" />
</LinearLayout>
\ No newline at end of file
......@@ -12,6 +12,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/tv_success"
android:layout_centerInParent="true"
android:layout_marginTop="15dp"
android:layout_below="@+id/iv_cg"
......
<?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="30dp"
android:orientation="horizontal">
android:layout_height="50dp"
android:paddingTop="5dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:orientation="vertical">
<TextView
android:id="@+id/tv_search_parkname"
android:layout_marginRight="10dp"
android:layout_marginRight="5dp"
android:text="上官婉儿"
android:textSize="18sp"
android:textColor="@color/tab_tv_normal"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
android:layout_height="wrap_content"/>
<View
android:layout_marginTop="10dp"
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="@color/tab_tv_normal"
/>
</LinearLayout>
\ No newline at end of file
......@@ -111,6 +111,9 @@
<string name="button_share_by_email">通过 E-mail 分享</string>
<string name="button_share_by_sms">通过短信分享</string>
<string name="no_car">尚未添加车辆</string>
<string name="liang">辆</string>
<string name="dispatch_out_success">成功调出</string>
<string name="dispatch_out_failure">调出失败</string>
<string name="dispatch_in_success">成功调入</string>
<string name="dispatch_in_failure">调入失败</string>
</resources>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment