|
@@ -1,13 +1,21 @@
|
|
|
package com.iamberry.rst.controllers.cm;
|
|
|
|
|
|
import com.iamberry.rst.core.cm.*;
|
|
|
+import com.iamberry.rst.core.order.ProductColor;
|
|
|
import com.iamberry.rst.faces.cm.ComplaintQuestionInfoService;
|
|
|
import com.iamberry.rst.faces.cm.CustomerCommonService;
|
|
|
import com.iamberry.rst.faces.cm.RelationOrderService;
|
|
|
import com.iamberry.rst.faces.cm.SalesOrderService;
|
|
|
import com.iamberry.rst.faces.order.EfastOrderService;
|
|
|
+import com.iamberry.rst.faces.product.ProductService;
|
|
|
+import com.iamberry.rst.service.cm.CustomerServiceImpl;
|
|
|
+import com.iamberry.rst.service.cm.mapper.FittingsInfoMapper;
|
|
|
+import com.iamberry.wechat.tools.DateTimeUtil;
|
|
|
import com.iamberry.wechat.tools.ResponseJson;
|
|
|
+import net.sf.json.JSONArray;
|
|
|
import net.sf.json.JSONObject;
|
|
|
+import org.slf4j.Logger;
|
|
|
+import org.slf4j.LoggerFactory;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Controller;
|
|
|
import org.springframework.web.bind.annotation.PathVariable;
|
|
@@ -17,6 +25,7 @@ import org.springframework.web.servlet.ModelAndView;
|
|
|
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
import java.util.ArrayList;
|
|
|
+import java.util.Date;
|
|
|
import java.util.List;
|
|
|
|
|
|
/**
|
|
@@ -25,7 +34,7 @@ import java.util.List;
|
|
|
*/
|
|
|
@Controller
|
|
|
public class AppComplaintQuestionInfoController {
|
|
|
-
|
|
|
+ private static Logger logger = LoggerFactory.getLogger(CustomerServiceImpl.class);
|
|
|
private Object lock = new Object();
|
|
|
|
|
|
/**
|
|
@@ -43,6 +52,10 @@ public class AppComplaintQuestionInfoController {
|
|
|
private SalesOrderService salesOrderService;
|
|
|
@Autowired
|
|
|
private EfastOrderService efastOrderService;
|
|
|
+ @Autowired
|
|
|
+ private ProductService productService;
|
|
|
+ @Autowired
|
|
|
+ private FittingsInfoMapper fittingsInfoMapper;
|
|
|
|
|
|
/**
|
|
|
* 进入客诉问题描述
|
|
@@ -231,5 +244,76 @@ public class AppComplaintQuestionInfoController {
|
|
|
// return msg;
|
|
|
// }
|
|
|
|
|
|
+/**
|
|
|
+ * 清理所有没有订单项的订单
|
|
|
+ * 并重新拉去订单
|
|
|
+ * @param request
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @ResponseBody
|
|
|
+ @RequestMapping(value = "/synOrder")
|
|
|
+ public ResponseJson synCustomerOrder(HttpServletRequest request){
|
|
|
+ ResponseJson msg = new ResponseJson();
|
|
|
+ List<String> orderId = new ArrayList<>();
|
|
|
+ List<SalesOrder> salesOrderList = salesOrderService.listSalesOrder(new SalesOrder());
|
|
|
+ for (int i=0;i<salesOrderList.size();i++){
|
|
|
+ SalesOrder so = salesOrderList.get(i);
|
|
|
+ SalesOrderItem soi = new SalesOrderItem();
|
|
|
+ soi.setItemOrderId(so.getSalesId());
|
|
|
+ List<SalesOrderItem> salesOrderItemList = salesOrderService.listSalesOrderItem(soi);
|
|
|
+ if(salesOrderItemList != null && salesOrderItemList.size() > 1){
|
|
|
+ if(so.getSalesDealCode() != null && !"".equals(so.getSalesDealCode()) ){
|
|
|
+ //获取订单详情
|
|
|
+ JSONObject orderInfo = null;
|
|
|
+ try{
|
|
|
+ orderInfo = efastOrderService.getOrderFormEfast(so.getSalesDealCode());
|
|
|
+ }catch (Exception e){
|
|
|
+ logger.info("获取订单失败;异常编号:505;失败原因:"+ e.getMessage() +"--获取失败交易号:" + so.getSalesDealCode());
|
|
|
+ }
|
|
|
+ if (orderInfo == null) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ if (!orderInfo.has("orders")) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ //获取订单项集合
|
|
|
+ JSONArray itemArray = orderInfo.getJSONArray("orders");
|
|
|
+ if (itemArray == null || itemArray.size() == 0) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+
|
|
|
+ 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) {
|
|
|
+ item.setItemColorBar(itemJson.getString("goods_sn"));//商品69码
|
|
|
+ item.setItemNum(itemJson.getInt("goods_number"));//商品数量
|
|
|
+ item.setItemOrderId(so.getSalesId());
|
|
|
+ salesOrderService.updateOrderItem(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;
|
|
|
+ }
|
|
|
+ item.setItemColorBar(itemJson.getString("goods_sn"));//商品69码
|
|
|
+ item.setItemNum(itemJson.getInt("goods_number"));//商品数量
|
|
|
+ item.setItemOrderId(so.getSalesId());
|
|
|
+ salesOrderService.updateOrderItem(item);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ logger.info("----交易号为空--");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
+ return msg;
|
|
|
+ }
|
|
|
}
|