|
@@ -90,7 +90,17 @@ public class TakeSuccessFragment extends Fragment {
|
|
|
if (null != timer2) {
|
|
|
timer2.cancel();
|
|
|
}
|
|
|
- NavUtils.navigate(this, R.id.action_takeSuccessFragment_to_takeCodeFragment);
|
|
|
+ MainActivity activity = (MainActivity) getActivity();
|
|
|
+ // 取件码页面跳转
|
|
|
+ Bundle continueTakeBundle = activity.getBundleMap().get("continueTake");
|
|
|
+ // 快递员揽件页面跳转页面
|
|
|
+ String navigatePage = continueTakeBundle.getString("navigatePage");
|
|
|
+ if(!StringUtils.isNullOrEmpty(navigatePage) && navigatePage.equals("takeCodePage")){
|
|
|
+ NavUtils.navigate(this, R.id.action_takeSuccessFragment_to_takeCodeFragment);
|
|
|
+ }if(!StringUtils.isNullOrEmpty(navigatePage) && navigatePage.equals("courierPage")){
|
|
|
+ NavUtils.navigate(this, R.id.action_takeSuccessFragment_to_collectMaterialsFragment);
|
|
|
+ }
|
|
|
+
|
|
|
});
|
|
|
|
|
|
binding.returnMainBtn.setOnClickListener(view1 -> {
|
|
@@ -146,11 +156,20 @@ public class TakeSuccessFragment extends Fragment {
|
|
|
|
|
|
// TODO 取件逻辑
|
|
|
String takeParcelCode = null;
|
|
|
+ String materTakeParcelCode = null;
|
|
|
+ String navigatePage = null;
|
|
|
MainActivity activity = null;
|
|
|
try {
|
|
|
activity = (MainActivity) getActivity();
|
|
|
- Bundle bundle = activity.getBundleMap().get(TakeCodeFragment.class.getName());
|
|
|
- takeParcelCode = bundle.getString("takeParcelCode");
|
|
|
+ // 取件码页面跳转
|
|
|
+// Bundle bundle = activity.getBundleMap().get(TakeCodeFragment.class.getName());
|
|
|
+ Bundle continueTakeBundle = activity.getBundleMap().get("continueTake");
|
|
|
+ // 快递员揽件页面跳转页面
|
|
|
+ navigatePage = continueTakeBundle.getString("navigatePage");
|
|
|
+ // 快递员揽件页面跳转页面
|
|
|
+// Bundle materBundle = activity.getBundleMap().get(ExpressSendOrderPickUpDto.class.getName());
|
|
|
+ takeParcelCode = continueTakeBundle.getString("takeParcelCode");
|
|
|
+ materTakeParcelCode = continueTakeBundle.getString("mailNo");
|
|
|
if (StringUtils.isNullOrEmpty(takeParcelCode)){
|
|
|
takeParcelCode = activity.getBundleMap().get(ExpressSendOrderPickUpDto.class.getName()).getString("pickUp");
|
|
|
}
|
|
@@ -164,57 +183,117 @@ public class TakeSuccessFragment extends Fragment {
|
|
|
takeParcelVo.setPickUp(takeParcelCode);
|
|
|
takeParcelVo.setReopen("1");
|
|
|
MainActivity finalActivity = activity;
|
|
|
- ICSPClient.takeParcel(LocalStorage.getInstance().getSession().getToken(), takeParcelVo, new Callback() {
|
|
|
- @Override
|
|
|
- public void onFailure(@NotNull Call call, @NotNull IOException e) {
|
|
|
- // TODO 取件接口请求失败逻辑处理
|
|
|
- ToastUtils.make(getContext(), "取件失败!网络异常!");
|
|
|
- Log.e(TAG, "onFailure: 取件请求失败!", e);
|
|
|
- LoggingUtils.sendErrorLog("业务异常: 取件失败!网络异常! ", e);
|
|
|
- }
|
|
|
|
|
|
- @Override
|
|
|
- public void onResponse(@NotNull Call call, @NotNull Response response) throws IOException {
|
|
|
- // TODO 返回锁板和锁id, 开柜门
|
|
|
- getActivity().runOnUiThread(() -> {
|
|
|
- String parseResponse = ICSPClient.isSuccessfulAndParseResponse(response);
|
|
|
- if (!StringUtils.isNullOrEmpty(parseResponse)) {
|
|
|
- try {
|
|
|
- ObjectMapper objectMapper = JacksonUtils.objectmapper;
|
|
|
- ResponseData<PreparedOrderResponseVo> responseData = null;
|
|
|
+
|
|
|
+ if(!StringUtils.isNullOrEmpty(navigatePage) && navigatePage.equals("takeCodePage")){
|
|
|
+ // 判断是哪个页面过来的 如果是取件码取件页面 用原来的就可以 如果是揽件页面需要走揽件开门接口
|
|
|
+
|
|
|
+ ICSPClient.takeParcel(LocalStorage.getInstance().getSession().getToken(), takeParcelVo, new Callback() {
|
|
|
+ @Override
|
|
|
+ public void onFailure(@NotNull Call call, @NotNull IOException e) {
|
|
|
+ // TODO 取件接口请求失败逻辑处理
|
|
|
+ ToastUtils.make(getContext(), "取件失败!网络异常!");
|
|
|
+ Log.e(TAG, "onFailure: 取件请求失败!", e);
|
|
|
+ LoggingUtils.sendErrorLog("业务异常: 取件失败!网络异常! ", e);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void onResponse(@NotNull Call call, @NotNull Response response) throws IOException {
|
|
|
+ // TODO 返回锁板和锁id, 开柜门
|
|
|
+ getActivity().runOnUiThread(() -> {
|
|
|
+ String parseResponse = ICSPClient.isSuccessfulAndParseResponse(response);
|
|
|
+ if (!StringUtils.isNullOrEmpty(parseResponse)) {
|
|
|
try {
|
|
|
- responseData = objectMapper.readValue(parseResponse, new TypeReference<ResponseData<PreparedOrderResponseVo>>() {
|
|
|
- });
|
|
|
- ToastUtils.make(getContext(), responseData.getMsg());
|
|
|
- } catch (JsonProcessingException e) {
|
|
|
- Log.e(TAG, "onResponse: 解析取件开门响应信息失败! ", e);
|
|
|
- LoggingUtils.sendErrorLog("业务异常: 解析取件开门响应信息失败! ", e);
|
|
|
+ ObjectMapper objectMapper = JacksonUtils.objectmapper;
|
|
|
+ ResponseData<PreparedOrderResponseVo> responseData = null;
|
|
|
+ try {
|
|
|
+ responseData = objectMapper.readValue(parseResponse, new TypeReference<ResponseData<PreparedOrderResponseVo>>() {
|
|
|
+ });
|
|
|
+ ToastUtils.make(getContext(), responseData.getMsg());
|
|
|
+ } catch (JsonProcessingException e) {
|
|
|
+ Log.e(TAG, "onResponse: 解析取件开门响应信息失败! ", e);
|
|
|
+ LoggingUtils.sendErrorLog("业务异常: 解析取件开门响应信息失败! ", e);
|
|
|
+ } catch (RuntimeException e) {
|
|
|
+ Log.e(TAG, "onResponse: 未知错误! ", e);
|
|
|
+ ToastUtils.make(getContext(), "未知错误!");
|
|
|
+ LoggingUtils.sendErrorLog("业务异常: 解析取件开门响应信息失败! 未知错误! ", e);
|
|
|
+ }
|
|
|
+ if (null != responseData && responseData.getCode().equals(ICSPConstant.OK)) {
|
|
|
+ // 开门
|
|
|
+ Log.i(TAG, "onResponse: 取件成功! ");
|
|
|
+ ToastUtils.make(getContext(), "取件成功!");
|
|
|
+ PreparedOrderResponseVo data = responseData.getData();
|
|
|
+ binding.openCabinetHintNo.setText(data.getLockerName());
|
|
|
+ finalActivity.getBundleMap().remove(TakeCodeFragment.class.getName());
|
|
|
+ } else {
|
|
|
+ ToastUtils.make(getContext(), responseData.getMsg());
|
|
|
+ }
|
|
|
} catch (RuntimeException e) {
|
|
|
- Log.e(TAG, "onResponse: 未知错误! ", e);
|
|
|
- ToastUtils.make(getContext(), "未知错误!");
|
|
|
- LoggingUtils.sendErrorLog("业务异常: 解析取件开门响应信息失败! 未知错误! ", e);
|
|
|
+ Log.e(TAG, "onResponse: 取件失败! ", e);
|
|
|
+ ToastUtils.make(getContext(), "取件失败!");
|
|
|
+ LoggingUtils.sendErrorLog("业务异常: 取件失败! 未知错误! ", e);
|
|
|
}
|
|
|
- if (null != responseData && responseData.getCode().equals(ICSPConstant.OK)) {
|
|
|
- // 开门
|
|
|
- Log.i(TAG, "onResponse: 取件成功! ");
|
|
|
- ToastUtils.make(getContext(), "取件成功!");
|
|
|
- PreparedOrderResponseVo data = responseData.getData();
|
|
|
- binding.openCabinetHintNo.setText(data.getLockerName());
|
|
|
- finalActivity.getBundleMap().remove(TakeCodeFragment.class.getName());
|
|
|
- } else {
|
|
|
- ToastUtils.make(getContext(), responseData.getMsg());
|
|
|
+ } else {
|
|
|
+ ToastUtils.make(getContext(), "服务器异常! 请稍后重试!");
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }else if(!StringUtils.isNullOrEmpty(navigatePage) && navigatePage.equals("courierPage")){
|
|
|
+ // todo:调用揽件接口,使用运单号开门
|
|
|
+ ExpressSendOrderPickUpDto expressSendOrderPickUpDto = new ExpressSendOrderPickUpDto();
|
|
|
+ expressSendOrderPickUpDto.setExprSn(materTakeParcelCode);
|
|
|
+ expressSendOrderPickUpDto.setCabSn(BaseUtils.getClientId());
|
|
|
+
|
|
|
+ ICSPClient.takeParcelByExpressNo(LocalStorage.getInstance().getSession().getToken(), expressSendOrderPickUpDto, new Callback() {
|
|
|
+ @Override
|
|
|
+ public void onFailure(@NotNull Call call, @NotNull IOException e) {
|
|
|
+ // TODO 取件接口请求失败逻辑处理
|
|
|
+ ToastUtils.make(getContext(), "取件失败!网络异常!");
|
|
|
+ Log.e(TAG, "onFailure: 取件请求失败!", e);
|
|
|
+ LoggingUtils.sendErrorLog("业务异常: 取件请求失败! 网络异常! ", e);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void onResponse(@NotNull Call call, @NotNull Response response) throws IOException {
|
|
|
+ // TODO 返回锁板和锁id, 开柜门
|
|
|
+ getActivity().runOnUiThread(() -> {
|
|
|
+ String parseResponse = ICSPClient.isSuccessfulAndParseResponse(response);
|
|
|
+ if (!StringUtils.isNullOrEmpty(parseResponse)) {
|
|
|
+ try {
|
|
|
+ ObjectMapper objectMapper = JacksonUtils.objectmapper;
|
|
|
+ ResponseData<PreparedOrderResponseVo> responseData = null;
|
|
|
+ try {
|
|
|
+ responseData = objectMapper.readValue(parseResponse, new TypeReference<ResponseData<PreparedOrderResponseVo>>() {
|
|
|
+ });
|
|
|
+ ToastUtils.make(getContext(), responseData.getMsg());
|
|
|
+ } catch (JsonProcessingException e) {
|
|
|
+ Log.e(TAG, "onResponse: 解析取件开门响应信息失败! ", e);
|
|
|
+ LoggingUtils.sendErrorLog("业务异常: 解析取件开门响应信息失败! ", e);
|
|
|
+ } catch (RuntimeException e) {
|
|
|
+ Log.e(TAG, "onResponse: 未知错误! ", e);
|
|
|
+ ToastUtils.make(getContext(), "未知错误!");
|
|
|
+ LoggingUtils.sendErrorLog("业务异常: 解析取件开门响应信息失败! 未知错误! ", e);
|
|
|
+ }
|
|
|
+ if (null != responseData && responseData.getCode().equals(ICSPConstant.OK)) {
|
|
|
+ // 开门
|
|
|
+ Log.i(TAG, "onResponse: 取件成功! ");
|
|
|
+ ToastUtils.make(getContext(), "取件成功!");
|
|
|
+ }
|
|
|
+ } catch (RuntimeException e) {
|
|
|
+ Log.e(TAG, "onResponse: 取件失败! ", e);
|
|
|
+ ToastUtils.make(getContext(), "取件失败!");
|
|
|
+ LoggingUtils.sendErrorLog("业务异常: 取件失败! ", e);
|
|
|
}
|
|
|
- } catch (RuntimeException e) {
|
|
|
- Log.e(TAG, "onResponse: 取件失败! ", e);
|
|
|
- ToastUtils.make(getContext(), "取件失败!");
|
|
|
- LoggingUtils.sendErrorLog("业务异常: 取件失败! 未知错误! ", e);
|
|
|
+ } else {
|
|
|
+ ToastUtils.make(getContext(), "服务器异常! 请稍后重试!");
|
|
|
}
|
|
|
- } else {
|
|
|
- ToastUtils.make(getContext(), "服务器异常! 请稍后重试!");
|
|
|
- }
|
|
|
- });
|
|
|
- }
|
|
|
- });
|
|
|
+ });
|
|
|
+ }
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ ToastUtils.make(getContext(), "重新开门失败!如确实需要重开,请联系客服操作!");
|
|
|
+ }
|
|
|
});
|
|
|
}
|
|
|
|