|
@@ -6,11 +6,13 @@ import com.iamberry.rst.core.order.EfastOrder;
|
|
|
import com.iamberry.rst.core.order.EfastOrderItem;
|
|
|
import com.iamberry.rst.core.order.Order;
|
|
|
import com.iamberry.rst.core.order.OrderItem;
|
|
|
+import com.iamberry.rst.core.pts.PtsBomComponents;
|
|
|
import com.iamberry.rst.faces.order.EfastOrderService;
|
|
|
import com.iamberry.wechat.tools.DateTimeUtil;
|
|
|
import com.iamberry.wechat.tools.HttpClient431Util;
|
|
|
import com.iamberry.wechat.tools.NameUtils;
|
|
|
import com.iamberry.wechat.tools.payUtil.StringUtil;
|
|
|
+import net.sf.json.JSONArray;
|
|
|
import net.sf.json.JSONObject;
|
|
|
import org.apache.commons.lang3.StringEscapeUtils;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
@@ -366,7 +368,7 @@ public class EfastOrderServiceImpl implements EfastOrderService {
|
|
|
|
|
|
Map<String, String> requestData = getRequestData(EFAST_ORDER_SELECT);
|
|
|
requestData.put("oid", orderid);
|
|
|
- requestData.put("feilds","order_status,shipping_status,consignee,address,mobile,province,city,district,invoice_no,shipping_name"); //1.order_status 订单状态:0(未确认)1(确认)2(挂起)3(作废) 2.shipping_status发货状态: 0(未发货)1(已发货,即已扫描出库)3(备货中)
|
|
|
+ requestData.put("feilds","order_status,shipping_status,consignee,address,mobile,province,city,district,invoice_no,shipping_name,goods_sn,order_amount,orders.goods_sn,orders.goods_name,orders.goods_number"); //1.order_status 订单状态:0(未确认)1(确认)2(挂起)3(作废) 2.shipping_status发货状态: 0(未发货)1(已发货,即已扫描出库)3(备货中)
|
|
|
|
|
|
try {
|
|
|
String result = HttpClient431Util.doGet(requestData, EFAST_BASE_URL);
|
|
@@ -380,32 +382,50 @@ public class EfastOrderServiceImpl implements EfastOrderService {
|
|
|
// parse JSON String to Object
|
|
|
JSONObject jsonObject = JSONObject.fromObject(result);
|
|
|
JSONObject respData = JSONObject.fromObject(jsonObject.get("resp_data"));
|
|
|
- // 发货状态 : shipping_status
|
|
|
- String shoppingStatus = respData.getString("shipping_status");
|
|
|
- String shoppingOrderId = respData.getString("order_id");
|
|
|
- String consignee = respData.getString("consignee");//收货人
|
|
|
- String address = respData.getString("address");//收货地址
|
|
|
- String mobile = respData.getString("mobile");//手机号
|
|
|
- String province = respData.getString("province");//省
|
|
|
- String city = respData.getString("city");//市
|
|
|
- String district = respData.getString("district");//区
|
|
|
- String invoice_no = respData.getString("invoice_no");//快递单号
|
|
|
- String shipping_name = respData.getString("shipping_name");//快递公司
|
|
|
|
|
|
- if(StringUtils.isNotEmpty(shoppingStatus)){
|
|
|
- EfastOrder efastOrder = new EfastOrder();
|
|
|
- efastOrder.setOrderStatus(Integer.parseInt(shoppingStatus));
|
|
|
- efastOrder.setOrderId(shoppingOrderId);
|
|
|
- efastOrder.setOrderAddressName(consignee);
|
|
|
- efastOrder.setOrderAddress(address);
|
|
|
- efastOrder.setOrderAddressTel(mobile);
|
|
|
- efastOrder.setOrderProvince(province);
|
|
|
- efastOrder.setOrderCity(city);
|
|
|
- efastOrder.setOrderArea(district);
|
|
|
- efastOrder.setOrderPostNum(invoice_no);
|
|
|
- efastOrder.setOrderPostFirm(shipping_name);
|
|
|
- efastOrder.setRepairSendMergeAddress(province+"-"+city+"-"+district);
|
|
|
- return efastOrder;
|
|
|
+ // 在此处做判断,包含字段的话再继续从JSON中获取code字段的内容
|
|
|
+ if(respData.has("code")){
|
|
|
+ String code = respData.getString("code");
|
|
|
+ return new EfastOrder();
|
|
|
+ }else{
|
|
|
+ // 发货状态 : shipping_status
|
|
|
+ String shoppingStatus = respData.getString("shipping_status");
|
|
|
+ String shoppingOrderId = respData.getString("order_id");
|
|
|
+ String consignee = respData.getString("consignee");//收货人
|
|
|
+ String address = respData.getString("address");//收货地址
|
|
|
+ String mobile = respData.getString("mobile");//手机号
|
|
|
+ String province = respData.getString("province");//省
|
|
|
+ String city = respData.getString("city");//市
|
|
|
+ String district = respData.getString("district");//区
|
|
|
+ String invoice_no = respData.getString("invoice_no");//快递单号
|
|
|
+ String shipping_name = respData.getString("shipping_name");//快递公司
|
|
|
+
|
|
|
+ String goods_name = "";
|
|
|
+ String goods_number = "";
|
|
|
+ JSONArray citys= respData.getJSONArray("orders");
|
|
|
+ for(int i=0;i<citys.size();i++){
|
|
|
+ JSONObject orderJson = JSONObject.fromObject(citys.get(i));
|
|
|
+ goods_name = orderJson.getString("goods_name");
|
|
|
+ goods_number = orderJson.getString("goods_number");
|
|
|
+ }
|
|
|
+
|
|
|
+ if(StringUtils.isNotEmpty(shoppingStatus)){
|
|
|
+ EfastOrder efastOrder = new EfastOrder();
|
|
|
+ efastOrder.setOrderStatus(Integer.parseInt(shoppingStatus));
|
|
|
+ efastOrder.setOrderId(shoppingOrderId);
|
|
|
+ efastOrder.setOrderAddressName(consignee);
|
|
|
+ efastOrder.setOrderAddress(address);
|
|
|
+ efastOrder.setOrderAddressTel(mobile);
|
|
|
+ efastOrder.setOrderProvince(province);
|
|
|
+ efastOrder.setOrderCity(city);
|
|
|
+ efastOrder.setOrderArea(district);
|
|
|
+ efastOrder.setOrderPostNum(invoice_no);
|
|
|
+ efastOrder.setOrderPostFirm(shipping_name);
|
|
|
+ efastOrder.setRepairSendMergeAddress(province+"-"+city+"-"+district);
|
|
|
+ efastOrder.setOrderProductName(goods_name);
|
|
|
+ efastOrder.setOrderNum(Integer.valueOf(goods_number));
|
|
|
+ return efastOrder;
|
|
|
+ }
|
|
|
}
|
|
|
logger.error("rst-获取百胜出错,订单号-->>" + orderid + ",百胜返回信息-->" + result);
|
|
|
throw new Exception(respData.getString("msg"));
|