|
@@ -1,5 +1,6 @@
|
|
|
package com.iamberry.rst.service.order;
|
|
|
|
|
|
+import com.github.pagehelper.PageHelper;
|
|
|
import com.iamberry.app.tool.util.MD5;
|
|
|
import com.iamberry.rst.core.address.City;
|
|
|
import com.iamberry.rst.core.address.District;
|
|
@@ -9,6 +10,8 @@ import com.iamberry.rst.core.cm.SalesOrderItem;
|
|
|
import com.iamberry.rst.core.dm.DealerChannel;
|
|
|
import com.iamberry.rst.core.dm.DealerProduct;
|
|
|
import com.iamberry.rst.core.order.*;
|
|
|
+import com.iamberry.rst.core.page.PagedResult;
|
|
|
+import com.iamberry.rst.core.sys.SysConfig;
|
|
|
import com.iamberry.rst.core.tools.LogisticsInfo;
|
|
|
import com.iamberry.rst.faces.address.AddressService;
|
|
|
import com.iamberry.rst.faces.cm.SalesOrderService;
|
|
@@ -22,7 +25,9 @@ import com.iamberry.rst.service.order.mapper.OrderSyncLogMapper;
|
|
|
import com.iamberry.rst.service.order.mapper.OrderSyncPlatformMapper;
|
|
|
import com.iamberry.rst.service.product.mapper.ProductColorMapper;
|
|
|
import com.iamberry.rst.service.product.mapper.ProductMapper;
|
|
|
+import com.iamberry.rst.service.sys.mapper.SysConfigMapper;
|
|
|
import com.iamberry.rst.util.GenerateKeyUtil;
|
|
|
+import com.iamberry.rst.util.PageUtil;
|
|
|
import org.apache.http.HttpResponse;
|
|
|
import org.apache.http.HttpStatus;
|
|
|
import org.apache.http.client.methods.HttpPost;
|
|
@@ -35,10 +40,12 @@ import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import java.io.BufferedReader;
|
|
|
import java.io.InputStream;
|
|
|
import java.io.InputStreamReader;
|
|
|
+import java.text.ParseException;
|
|
|
import java.text.SimpleDateFormat;
|
|
|
import java.util.*;
|
|
|
|
|
@@ -74,6 +81,8 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
|
|
|
private AddressService addressService;
|
|
|
@Autowired
|
|
|
private ProductMapper productMapper;
|
|
|
+ @Autowired
|
|
|
+ private SysConfigMapper sysConfigMapper;
|
|
|
|
|
|
//Map最大容量
|
|
|
static int maxSize = 20;
|
|
@@ -93,6 +102,10 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
|
|
|
return orderSyncPlatformMapper.getSyncPlatformById(XYT_ID);
|
|
|
}
|
|
|
|
|
|
+ //配置小亚通拉取订单时间参数设置id
|
|
|
+ private static final Integer CONFIG_ID = 9;
|
|
|
+ SimpleDateFormat SYS_CONFIG_SDF = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
+
|
|
|
|
|
|
/**
|
|
|
* 获取集合
|
|
@@ -104,6 +117,13 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
|
|
|
return orderSyncLogMapper.getSyncLogList(orderSyncLog);
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public PagedResult<OrderSyncLog> listOrderSyncLogPage(int pageNO, int pageSize,OrderSyncLog orderSyncLog, boolean isTotalNum) {
|
|
|
+ PageHelper.startPage(pageNO, pageSize, isTotalNum);
|
|
|
+ List<OrderSyncLog> list = orderSyncLogMapper.getSyncLogList(orderSyncLog);
|
|
|
+ return PageUtil.getPage(list);
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 查询单条数据
|
|
|
* @param id
|
|
@@ -130,7 +150,29 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
|
|
|
* @return
|
|
|
*/
|
|
|
@Override
|
|
|
- public synchronized Integer syncXYTOrder(Integer type,Date creatTime) {
|
|
|
+ @Transactional
|
|
|
+ public synchronized Integer syncXYTOrder(Integer type,String sta,Date creatTime) {
|
|
|
+ if(type == 1){
|
|
|
+ SysConfig sysConfig = sysConfigMapper.getSysConfigAllLock(CONFIG_ID);
|
|
|
+ Date date = new Date();
|
|
|
+ try {
|
|
|
+ date = SYS_CONFIG_SDF.parse(sysConfig.getConfigRemarks());
|
|
|
+ } catch (ParseException e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ logger.info("获取配置文件失败!");
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
+ Long timeDifference = date.getTime() - new Date().getTime();
|
|
|
+ timeDifference = Math.abs(timeDifference);
|
|
|
+ if(timeDifference < 270000){
|
|
|
+ Integer configParameter = Integer.valueOf(sysConfig.getConfigParameter());
|
|
|
+ if(2 == configParameter){
|
|
|
+ logger.info("该定时任务已经运行!");
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
OrderSyncPlatform orderSyncPlatform = getXYTPlatform();
|
|
|
if(orderSyncPlatform.getSyncPlatStatus() != 1){
|
|
|
logger.info("小亚通接口已关闭!");
|
|
@@ -159,12 +201,14 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
|
|
|
conditionTypeList.add(endCreateTimeMap);
|
|
|
|
|
|
//订单状态 只获取代发货的订单
|
|
|
- Map<String,Object> statusTimeMap = new HashMap<>();
|
|
|
- statusTimeMap.put("condType","orderStatus"); //receiverName 收件人姓名 //receiverMobile收件人手机号码 //outOrderId原始订单号 //orderId系统订单号
|
|
|
- String[] condValueStatuss = new String[1];
|
|
|
- condValueStatuss[0] = "20"; //只查询待发货
|
|
|
- statusTimeMap.put("condValue",condValueStatuss);//生成结束时间
|
|
|
- conditionTypeList.add(statusTimeMap);
|
|
|
+ if(sta != null && !"".equals(sta)){
|
|
|
+ Map<String,Object> statusTimeMap = new HashMap<>();
|
|
|
+ statusTimeMap.put("condType","orderStatus"); //receiverName 收件人姓名 //receiverMobile收件人手机号码 //outOrderId原始订单号 //orderId系统订单号
|
|
|
+ String[] condValueStatuss = new String[1];
|
|
|
+ condValueStatuss[0] = sta; //只查询待发货
|
|
|
+ statusTimeMap.put("condValue",condValueStatuss);//生成结束时间
|
|
|
+ conditionTypeList.add(statusTimeMap);
|
|
|
+ }
|
|
|
|
|
|
StringBuffer stringBuffer = new StringBuffer();
|
|
|
Integer amountAllNum = 0; //同步总数量
|
|
@@ -218,13 +262,25 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
|
|
|
orderSyncLog.setSyncLogErrorMsg(newErrorMsg); //失败信息
|
|
|
}
|
|
|
//因为系统每10分钟拉取一次订单,日志过多,所以在此控制,没有必要的日志,没有必要录入
|
|
|
- if(orderSyncLog.getSyncLogRecentNum() != 0){
|
|
|
+ if(type == 1){
|
|
|
+ if(orderSyncLog.getSyncLogRecentNum() != 0){
|
|
|
+ //该条查询当天最近的一条日志,与当前日志想匹配,如果错误相同,则不处理,如果不相同与添加日志,进一步节省sql存储空间
|
|
|
+ OrderSyncLog osl = orderSyncLogMapper.getSyncLogLast(orderSyncPlatform.getSyncPlatId());
|
|
|
+ if(osl != null && orderSyncLog.getSyncLogErrorMsg() != null){
|
|
|
+ if(!orderSyncLog.getSyncLogErrorMsg().equals(osl.getSyncLogErrorMsg())){
|
|
|
+ orderSyncLogMapper.save(orderSyncLog);
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ orderSyncLogMapper.save(orderSyncLog);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }else{
|
|
|
orderSyncLogMapper.save(orderSyncLog);
|
|
|
}
|
|
|
|
|
|
if(type == 1){
|
|
|
//刷新定会任务最新获取时间-小亚通订单生成之后还需要审核操作,所以中间会存在时间差导致订单拉取不过来,
|
|
|
- // 因此时间不会及时刷新,考虑到系统等问题,因为时间调整每晚12点刷新拉取时间
|
|
|
+ // 因此时间不会及时刷新,考虑到系统等问题,因为时间调整7天前的时间
|
|
|
Calendar endCreateTimeCalendar = Calendar.getInstance();
|
|
|
endCreateTimeCalendar.setTime(orderSyncPlatform.getSyncOrderLastTime());
|
|
|
endCreateTimeCalendar.add(Calendar.DATE, 7);//增加7天
|
|
@@ -236,7 +292,7 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
|
|
|
newDateCalendar.set(Calendar.HOUR_OF_DAY,0);
|
|
|
newDateCalendar.set(Calendar.MINUTE,0);
|
|
|
newDateCalendar.set(Calendar.SECOND,0);
|
|
|
- newDateCalendar.add(Calendar.DATE, -1);
|
|
|
+ newDateCalendar.add(Calendar.DATE, -7);
|
|
|
endCreateTime = newDateCalendar.getTime();
|
|
|
orderSyncPlatform.setSyncOrderLastTime(endCreateTime);
|
|
|
|
|
@@ -246,13 +302,176 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
|
|
|
orderSyncPlatformMapper.update(newOrderSyncPlatform);
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ if(type == 1){
|
|
|
+ //修改配置文件
|
|
|
+ Calendar newConfigDate = Calendar.getInstance();
|
|
|
+ newConfigDate.set(Calendar.SECOND,0);
|
|
|
+
|
|
|
+ SysConfig newSysConfig = new SysConfig();
|
|
|
+ newSysConfig.setConfigId(CONFIG_ID);
|
|
|
+ newSysConfig.setConfigParameter("2");
|
|
|
+ newSysConfig.setConfigRemarks(SYS_CONFIG_SDF.format(newConfigDate.getTime()));
|
|
|
+ sysConfigMapper.updateSysConfig(newSysConfig);
|
|
|
+ }
|
|
|
return amountSuccessAllNum;
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public Integer syncXYTOrderPostNum(Integer salesId){
|
|
|
+ SalesOrder salesOrder = salesOrderService.getSalesOrderByIdConcise(salesId);
|
|
|
+ OrderSyncPlatform orderSyncPlatform = getXYTPlatform();
|
|
|
+ Map<String,Object> paramsMap = new HashMap<>();
|
|
|
+ List<Map<String,Object>> conditionTypeList = new ArrayList<>();
|
|
|
+
|
|
|
+ String[] orderIds = {salesOrder.getSalesDealCode()};
|
|
|
+
|
|
|
+ Map<String,Object> orderIdMap = new HashMap<>();
|
|
|
+ orderIdMap.put("condType","orderId");
|
|
|
+ orderIdMap.put("condValue",orderIds);
|
|
|
+ conditionTypeList.add(orderIdMap);
|
|
|
+
|
|
|
+ boolean flag = true;
|
|
|
+
|
|
|
+ StringBuffer errorMsg = new StringBuffer();
|
|
|
+ errorMsg.append( "京东仓订单同步订单("+ salesOrder.getSalesDealCode() +")状态,京东订单号:"+ salesOrder.getSalesExOrderId() +",");
|
|
|
+
|
|
|
+ Map<String,Object> condMap = new HashMap<>();
|
|
|
+ condMap.put("pageNumber",1);
|
|
|
+ condMap.put("pageSize",20);
|
|
|
+ condMap.put("conditionType",conditionTypeList);
|
|
|
+ paramsMap.put("cond",condMap);
|
|
|
+ String json = this.syncXYT("IOrderService.query",paramsMap);
|
|
|
+ try {
|
|
|
+ JSONObject jsonObj = new JSONObject(json);//转化为json格式
|
|
|
+ String resultMsg = jsonObj.getString("result_msg");
|
|
|
+ if(resultMsg.equals("success")) {
|
|
|
+ JSONObject dataObj = jsonObj.getJSONObject("data"); //数据
|
|
|
+ JSONArray beanListArray = dataObj.getJSONArray("beanList");
|
|
|
+ if (beanListArray.length() > 0) {
|
|
|
+ for (int i = 0; i < beanListArray.length(); i++) {
|
|
|
+ JSONObject job = beanListArray.getJSONObject(i);
|
|
|
+ Long otherOrderId = null;
|
|
|
+ String otherExtOrderId = null;
|
|
|
+
|
|
|
+// JSONObject consigneeObj = job.getJSONObject("consignee"); //用户信息
|
|
|
+ JSONObject infoObj = job.getJSONObject("info"); //订单基本信息
|
|
|
+// JSONArray itemsArray = job.getJSONArray("items"); //订单项基本信息
|
|
|
+
|
|
|
+ //小亚通订单编号
|
|
|
+ otherOrderId = infoObj.getLong("orderId");
|
|
|
+ String otherOrderIdStr = String.valueOf(otherOrderId);
|
|
|
+ if(!Objects.equals(salesOrder.getSalesDealCode(),otherOrderIdStr)){
|
|
|
+ errorMsg.append("未查询到该订单!");
|
|
|
+ flag = false;
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+
|
|
|
+ //订单状态::0 待支付;10 待成团;20 待发货;30 预售中;40 待审批;50 仓库代发货;60 已发货;70 已签收;80 已拒收;999 已作废
|
|
|
+ Integer orderStatus = infoObj.getInt("orderStatus");
|
|
|
+ if (60 == orderStatus) {
|
|
|
+ JSONArray logisticsArray = null;
|
|
|
+ if(job.has("logistics")){
|
|
|
+ logisticsArray = job.getJSONArray("logistics");
|
|
|
+ }
|
|
|
+ if(logisticsArray.length() < 1){
|
|
|
+ errorMsg.append("该订单发货异常!");
|
|
|
+ flag = false;
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ JSONObject logistics = logisticsArray.getJSONObject(0);
|
|
|
+
|
|
|
+ String companyCode = logistics.getString("companyCode");
|
|
|
+ String deliveryNo = logistics.getString("deliveryNo");
|
|
|
+
|
|
|
+ SalesOrder so = new SalesOrder();
|
|
|
+ switch (companyCode){
|
|
|
+ case "2087":{
|
|
|
+ so.setSalesPostFirm("jd"); //快递公司
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ case "STO":{
|
|
|
+ so.setSalesPostFirm("STO"); //快递公司
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ default:{
|
|
|
+ so.setSalesPostFirm(companyCode);
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ so.setSalesPostNum(deliveryNo); //快递单号
|
|
|
+ so.setSalesId(salesId);
|
|
|
+ so.setSalesStatus(1);
|
|
|
+ so.setSalesShippingStatus(1);
|
|
|
+ so.setSalesDeliver(2);
|
|
|
+ Integer res = salesOrderMapper.updateSalesOrder(so);
|
|
|
+ if(res > 0){
|
|
|
+ //添加操作跟踪信息
|
|
|
+ OrderTracking orderTracking = new OrderTracking();
|
|
|
+ orderTracking.setAdminId(1);
|
|
|
+ orderTracking.setSalesDealCode(salesOrder.getSalesDealCode());
|
|
|
+ orderTracking.setTrackingDesc("发货(同步京东仓发货信息)");
|
|
|
+ salesOrderService.addTracking(orderTracking);
|
|
|
+ }
|
|
|
+ }else if(80 == orderStatus){
|
|
|
+ errorMsg.append("该订单已被拒收!");
|
|
|
+ flag = false;
|
|
|
+ continue;
|
|
|
+ }else if(999 == orderStatus){
|
|
|
+ //如果该订单已作废,那么本系统将跟随作废
|
|
|
+ SalesOrder so = new SalesOrder();
|
|
|
+ so.setSalesId(salesOrder.getSalesId());
|
|
|
+ so.setSalesStatus(3);
|
|
|
+ Integer res = salesOrderService.updateSalesOrder(so);
|
|
|
+ if(res > 0){
|
|
|
+ //添加操作跟踪信息
|
|
|
+ OrderTracking orderTracking = new OrderTracking();
|
|
|
+ orderTracking.setAdminId(1);
|
|
|
+ orderTracking.setSalesDealCode(salesOrder.getSalesDealCode());
|
|
|
+ orderTracking.setTrackingDesc("作废订单(同步第三方系统状态已作废)");
|
|
|
+ salesOrderService.addTracking(orderTracking);
|
|
|
+ }
|
|
|
+ errorMsg.append("该订单已被作废,系统自动作废!");
|
|
|
+ flag = false;
|
|
|
+ continue;
|
|
|
+ }else{
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ errorMsg.append("未查询到该订单");
|
|
|
+ flag = false;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ errorMsg.append("<br>");
|
|
|
+
|
|
|
+ if(!flag){
|
|
|
+ OrderSyncLog orderSyncLog = new OrderSyncLog();
|
|
|
+ orderSyncLog.setSyncPlatId(orderSyncPlatform.getSyncPlatId());
|
|
|
+ orderSyncLog.setSyncLogType(1);
|
|
|
+ orderSyncLog.setSyncLogMode(4);
|
|
|
+ orderSyncLog.setSyncLogRecentNum(1); //同步总数量
|
|
|
+ orderSyncLog.setSyncLogErrorNum(1); //同步失败数量
|
|
|
+ orderSyncLog.setSyncLogMsg("同步状态"); //备注
|
|
|
+ if(!errorMsg.toString().equals("")){
|
|
|
+ String newErrorMsg = errorMsg.toString();
|
|
|
+ if(newErrorMsg.length() > 5000){
|
|
|
+ newErrorMsg.substring(0,4999);
|
|
|
+ }
|
|
|
+ orderSyncLog.setSyncLogErrorMsg(newErrorMsg); //失败信息
|
|
|
+ }
|
|
|
+ orderSyncLogMapper.save(orderSyncLog);
|
|
|
+ }
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 单个订单拉取
|
|
|
* @param type
|
|
|
- * @param orderId 小亚通订单账号
|
|
|
+ * @param orderId 小亚通订单id
|
|
|
* @return
|
|
|
*/
|
|
|
@Override
|
|
@@ -509,6 +728,7 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
|
|
|
*/
|
|
|
@Override
|
|
|
public boolean syncXYTOrderShip(Integer[] salesOrderIds) {
|
|
|
+ boolean flag = true;
|
|
|
Integer successNum = 0,errorNum = 0;
|
|
|
StringBuffer allSb = new StringBuffer();
|
|
|
StringBuffer errorSb = new StringBuffer();
|
|
@@ -535,13 +755,21 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
|
|
|
|
|
|
if(salesOrderItemList==null || salesOrderItemList.size()<1){
|
|
|
logger.info("小亚通发货失败,未查询到订单信息!");
|
|
|
+ errorSb.append("发货失败交易号:" + salesOrder.getSalesDealCode() + ",失败原因:未查询到订单信息;");
|
|
|
continue;
|
|
|
}
|
|
|
|
|
|
HashSet<Long> itemIdSet = new HashSet();
|
|
|
- for (SalesOrderItem salesOrderItem:salesOrderItemList) {
|
|
|
- Long otherItemId = Long.valueOf(salesOrderItem.getItemOtherId());
|
|
|
- itemIdSet.add(otherItemId);
|
|
|
+ try{
|
|
|
+ for (SalesOrderItem salesOrderItem:salesOrderItemList) {
|
|
|
+ Long otherItemId = Long.valueOf(salesOrderItem.getItemOtherId());
|
|
|
+ itemIdSet.add(otherItemId);
|
|
|
+ }
|
|
|
+ }catch (Exception e){
|
|
|
+ e.printStackTrace();
|
|
|
+ logger.info("小亚通发货失败,订单项没有商城订单项Id!");
|
|
|
+ errorSb.append("发货失败交易号:" + salesOrder.getSalesDealCode() + ",失败原因:订单项没有商城订单项Id;");
|
|
|
+ continue;
|
|
|
}
|
|
|
|
|
|
Long[] itemIds = new Long[itemIdSet.size()];
|
|
@@ -594,10 +822,12 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
|
|
|
salesOrderService.update(shipSalesOrder);
|
|
|
successNum++;
|
|
|
}else{
|
|
|
+ flag = false;
|
|
|
errorSb.append("发货失败交易号:" + salesOrder.getSalesDealCode() + ",失败原因:"+shipResultJson+";");
|
|
|
errorNum++;
|
|
|
}
|
|
|
}catch (Exception e){
|
|
|
+ flag = false;
|
|
|
errorSb.append("发货失败交易号:" + salesOrder.getSalesDealCode() + ",失败原因:"+shipResultJson+";");
|
|
|
errorNum++;
|
|
|
e.printStackTrace();
|
|
@@ -623,7 +853,7 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
|
|
|
}
|
|
|
orderSyncLogMapper.save(orderSyncLog);
|
|
|
}
|
|
|
- return true;
|
|
|
+ return flag;
|
|
|
}
|
|
|
|
|
|
@Override
|
|
@@ -782,7 +1012,6 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
|
|
|
salesOrder.setSalesDealCode(String.valueOf(otherOrderId)); //小亚通订单编号
|
|
|
salesOrder.setSalesExOrderId(otherExtOrderId);
|
|
|
|
|
|
-
|
|
|
//平台 SELF- 自身
|
|
|
//有赞平台:KDT 虚拟店铺:OFFLINE 天猫:TMALL 微店:WEIDIAN 京东:JD 阿里巴巴:1688 微盟微商城:WEIMENGWSC
|
|
|
//有量平台:YOULIANG 拼多多:PINDUODUO 楚楚街:CHUCHUJIE 蘑菇街:MGJ 美丽说:MLS 贝贝网:BEIBEI 云集:YUNJI
|
|
@@ -805,15 +1034,15 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
|
|
|
}
|
|
|
case "JD":{
|
|
|
//JD店铺id:100206182446
|
|
|
- salesOrder.setSalesStoreId(40); //天猫爱贝源旗舰店
|
|
|
+ salesOrder.setSalesStoreId(40); //京东
|
|
|
salesOrder.setSalesCompanyId(1); //深圳爱贝源
|
|
|
- salesOrder.setSalesPayType(5);//付款方式5:支付宝支付
|
|
|
+ salesOrder.setSalesPayType(1);
|
|
|
break;
|
|
|
}
|
|
|
case "OFFLINE": //小亚通虚拟店铺
|
|
|
default:
|
|
|
- salesOrder.setSalesStoreId(124); //天猫爱贝源旗舰店
|
|
|
- salesOrder.setSalesCompanyId(1); //深圳爱贝源
|
|
|
+ salesOrder.setSalesStoreId(124); //虚拟店铺
|
|
|
+ salesOrder.setSalesCompanyId(1); //
|
|
|
salesOrder.setSalesPayType(5);//付款方式5:支付宝支付
|
|
|
break;
|
|
|
}
|
|
@@ -999,7 +1228,7 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
|
|
|
salesOrder.setSalesIsSend(0);//是否通知配货0:否1:是
|
|
|
salesOrder.setSalesIsLocked(0);//是否锁定0:否1:是
|
|
|
salesOrder.setSalesIsSeparate(0);//是否缺货0:否1:是
|
|
|
- salesOrder.setSalesStatus(0); //确认状态0(未确认)
|
|
|
+ salesOrder.setSalesStatus(0); //确认状态0(未确认) -- 在订单项判断中,可能会变成京东仓库自发状态
|
|
|
salesOrder.setSalesShippingStatus(0);////发货状态0(未发货)1(已发货,即已扫描出库)3(备货中)4(收货)11(已通知配货,后加)
|
|
|
salesOrder.setSalesDeliver(1); //出库状态1:未出库2:已出库
|
|
|
salesOrder.setSalesAdminId(1); //录入人id
|
|
@@ -1024,12 +1253,16 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
|
|
|
break;
|
|
|
}
|
|
|
|
|
|
+ if(productColor.getColorIsJdAuto() == 1 && salesOrder.getSalesStoreId() == 40){
|
|
|
+ //京东仓自发 && 京东店铺
|
|
|
+ salesOrder.setSalesStatus(4); //4:京东自发
|
|
|
+ }
|
|
|
+
|
|
|
Long orderItemId = item.getLong("orderItemId"); //小亚通订单项编号
|
|
|
Integer num = item.getInt("num"); //数量
|
|
|
Long totalFeeLong = item.getLong("totalFee"); //应付金额是指:购买数量的总应付金额
|
|
|
Integer totalFeeInt = totalFeeLong.intValue();
|
|
|
|
|
|
-
|
|
|
if(productColor.getProductIsSplit() == 1){
|
|
|
List<ProductCombinatInfo> productCombinatList = productMapper.combinatList(productColor.getColorProductId());
|
|
|
if(productCombinatList == null || productCombinatList.size() < 1){
|
|
@@ -1314,7 +1547,7 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
|
|
|
salesOrderService.addTracking(orderTracking);
|
|
|
amountSuccessNum++;
|
|
|
}catch (Exception e){
|
|
|
- errorMsg.append(otherOrderId+"添加订单失败,失败原因"+ e.getMessage() +";");
|
|
|
+ errorMsg.append(otherOrderId+"添加订单失败,失败原因"+ e.getMessage() +";</br>");
|
|
|
e.printStackTrace();
|
|
|
logger.info("XYT拉取订单-添加订单错误-错误信息:"+e.getMessage());
|
|
|
}
|