|
@@ -214,6 +214,9 @@ public class SalesOrderServiceImpl implements SalesOrderService {
|
|
|
if (orderInfo == null) {
|
|
|
return;
|
|
|
}
|
|
|
+ if (!orderInfo.has("orders")) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
|
|
|
JSONArray itemArray = orderInfo.getJSONArray("orders");
|
|
|
if (itemArray == null || itemArray.size() == 0) {
|
|
@@ -231,9 +234,6 @@ public class SalesOrderServiceImpl implements SalesOrderService {
|
|
|
salesOrder.setSalesIsLocked(order.getInt("is_locked"));
|
|
|
salesOrder.setSalesIsSeparate(order.getInt("is_separate"));
|
|
|
salesOrder.setSalesStatus(order.getInt("order_status"));
|
|
|
-
|
|
|
- continue;
|
|
|
- }*/
|
|
|
salesOrder.setSalesPostFirm(order.getString("shipping_name"));
|
|
|
salesOrder.setSalesPostNum(order.getString("invoice_no"));
|
|
|
salesOrder.setSalesOpenId(order.getString("mobile"));
|
|
@@ -326,6 +326,131 @@ public class SalesOrderServiceImpl implements SalesOrderService {
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
+ public boolean syncEfastOrder(JSONObject orderInfo) throws Exception {
|
|
|
+ if (orderInfo == null) {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ if (!orderInfo.has("orders")) {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+
|
|
|
+ JSONArray itemArray = orderInfo.getJSONArray("orders");
|
|
|
+ if (itemArray == null || itemArray.size() == 0) {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+
|
|
|
+ SalesOrder salesOrder = new SalesOrder();
|
|
|
+ salesOrder.setSalesOrderId(orderInfo.getString("order_sn"));
|
|
|
+ salesOrder.setSalesDealCode(orderInfo.getString("deal_code"));
|
|
|
+ salesOrder.setSalesOrderStatus(1);
|
|
|
+ salesOrder.setSalesShippingStatus(orderInfo.getInt("shipping_status"));
|
|
|
+ salesOrder.setSalesPayStatus(orderInfo.getInt("pay_status"));
|
|
|
+ salesOrder.setSalesProcessStatus(orderInfo.getInt("process_status"));
|
|
|
+ salesOrder.setSalesIsSend(orderInfo.getInt("is_send"));
|
|
|
+ salesOrder.setSalesIsLocked(orderInfo.getInt("is_locked"));
|
|
|
+ salesOrder.setSalesIsSeparate(orderInfo.getInt("is_separate"));
|
|
|
+ salesOrder.setSalesStatus(orderInfo.getInt("order_status"));
|
|
|
+ salesOrder.setSalesPostFirm(orderInfo.getString("shipping_name"));
|
|
|
+ salesOrder.setSalesPostNum(orderInfo.getString("invoice_no"));
|
|
|
+ salesOrder.setSalesOpenId(orderInfo.getString("mobile"));
|
|
|
+ salesOrder.setSalesPayType(efastOrderService.getPayType(orderInfo.getString("pay_name")));
|
|
|
+ salesOrder.setSalesPayTime(new Date(orderInfo.getLong("pay_time")*1000));
|
|
|
+ salesOrder.setSalesUserRemark(orderInfo.getString("postscript"));
|
|
|
+ salesOrder.setSalesAdminRemark(orderInfo.getString("to_buyer"));
|
|
|
+ salesOrder.setSalesAmount((int)(orderInfo.getDouble("order_amount")*100));
|
|
|
+ salesOrder.setSalesPayMoney((int)(orderInfo.getDouble("money_paid")*100));
|
|
|
+ salesOrder.setSalesAddressName(orderInfo.getString("consignee"));
|
|
|
+ salesOrder.setSalesAddressTel(orderInfo.getString("mobile"));
|
|
|
+ salesOrder.setSalesAddressInfo(orderInfo.getString("address").replaceAll(" ","-"));
|
|
|
+ salesOrder.setSalesShippingFee((int)(orderInfo.getDouble("shipping_fee")*100));
|
|
|
+ salesOrder.setSalesCreateTime(new Date(orderInfo.getLong("pay_time")*1000));
|
|
|
+ if (orderInfo.getInt("shipping_status") == 1) {
|
|
|
+ salesOrder.setSalesSendTime(DateTimeUtil.parse(orderInfo.getString("delivery_time"),"yyyy-MM-dd HH:mm:ss"));
|
|
|
+ }
|
|
|
+ salesOrder.setSalesDiscountMoney(salesOrder.getSalesAmount() - salesOrder.getSalesPayMoney());
|
|
|
+ salesOrder.setSalesPledgeMoney(0);
|
|
|
+ salesOrder.setSalesRemainDeposit(0);
|
|
|
+ salesOrder.setSalesSendType(2);
|
|
|
+ salesOrder.setSalesSalesTime(salesOrder.getSalesCreateTime());
|
|
|
+ salesOrder.setSalesWaitMoney(0);
|
|
|
+ salesOrder.setSalesLastMoney(salesOrder.getSalesPayMoney());
|
|
|
+ salesOrder.setSalesPayNumber("0000");
|
|
|
+ salesOrder.setSalesType(1);
|
|
|
+
|
|
|
+ StoreInfo storeInfo = new StoreInfo();
|
|
|
+ if (orderInfo.has("sd_id")) {
|
|
|
+ storeInfo.setStoreEfast(orderInfo.getString("sd_id"));
|
|
|
+ } else {
|
|
|
+ storeInfo.setStoreEfast("1");
|
|
|
+ }
|
|
|
+
|
|
|
+ List<StoreInfo> storeList = storeInfoService.listStore(storeInfo);
|
|
|
+ int storeId = 0;
|
|
|
+ int companyId = 0;
|
|
|
+ if (storeList != null && storeList.size() > 0) {
|
|
|
+ storeInfo = storeList.get(0);
|
|
|
+ storeId = storeInfo.getStoreId();
|
|
|
+ companyId = storeInfo.getCompanyId();
|
|
|
+ }
|
|
|
+ salesOrder.setSalesStoreId(storeId);
|
|
|
+ salesOrder.setSalesCompanyId(companyId);
|
|
|
+
|
|
|
+ List<SalesOrderItem> itemList = new ArrayList<SalesOrderItem>();
|
|
|
+ for (int j = 0;j < itemArray.size();j++) {
|
|
|
+ ProductColor color = new ProductColor();
|
|
|
+ JSONObject itemJson = itemArray.getJSONObject(j);
|
|
|
+ SalesOrderItem item = new SalesOrderItem();
|
|
|
+ color.setColorBar(itemJson.getString("goods_sn"));
|
|
|
+ List<ProductColor> colorList = productService.listproductAndColor(color);
|
|
|
+ if (colorList != null && colorList.size() > 0) {
|
|
|
+ color = colorList.get(0);
|
|
|
+ item.setItemColorBar(itemJson.getString("goods_sn"));
|
|
|
+ item.setItemNum(itemJson.getInt("sn"));
|
|
|
+ item.setItemCreateTime(salesOrder.getSalesCreateTime());
|
|
|
+ item.setItemColorId(color.getColorId());
|
|
|
+ item.setItemProductColor(color.getColorName());
|
|
|
+ item.setItemProductDiscount(color.getColorDiscount());
|
|
|
+ item.setItemProductId(color.getColorProductId());
|
|
|
+ item.setItemProductName(color.getProductName());
|
|
|
+ item.setItemProductPic(color.getColorPicture());
|
|
|
+ item.setItemProductType(color.getProductType());
|
|
|
+ item.setItemProductPrice(color.getColorPrice());
|
|
|
+ item.setItemIsSource(1);
|
|
|
+ itemList.add(item);
|
|
|
+ } else {
|
|
|
+
|
|
|
+ FittingsInfo fittingsInfo = new FittingsInfo();
|
|
|
+ fittingsInfo.setFittingsBar(itemJson.getString("goods_sn"));
|
|
|
+ List<FittingsInfo> Fittings = fittingsInfoMapper.listFittings(fittingsInfo);
|
|
|
+ if (Fittings == null || Fittings.size() == 0) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ fittingsInfo = Fittings.get(0);
|
|
|
+ item.setItemColorBar(itemJson.getString("goods_sn"));
|
|
|
+ item.setItemNum(itemJson.getInt("sn"));
|
|
|
+ item.setItemCreateTime(salesOrder.getSalesCreateTime());
|
|
|
+ item.setItemColorId(fittingsInfo.getFittingsId());
|
|
|
+ item.setItemProductColor(fittingsInfo.getFittingsName());
|
|
|
+ item.setItemProductDiscount(fittingsInfo.getFittingsDiscount());
|
|
|
+ item.setItemProductId(fittingsInfo.getProductId());
|
|
|
+ item.setItemProductName(fittingsInfo.getFittingsName());
|
|
|
+ item.setItemProductPic("");
|
|
|
+ item.setItemProductType(0);
|
|
|
+ item.setItemProductPrice(fittingsInfo.getFittingsPrice());
|
|
|
+ item.setItemIsSource(2);
|
|
|
+ itemList.add(item);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ boolean flag = salesOrderService.addOrderAndItem(salesOrder,itemList);
|
|
|
+ if (flag) {
|
|
|
+ return true;
|
|
|
+ } else {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
public Integer getOrderInfoCount(SalesOrder salesOrder) {
|
|
|
return salesOrderMapper.getOrderInfoCount(salesOrder);
|
|
|
}
|