|
@@ -11,6 +11,7 @@ import com.iamberry.rst.core.order.Product;
|
|
|
import com.iamberry.rst.core.order.ProductColor;
|
|
|
import com.iamberry.rst.core.page.PagedResult;
|
|
|
import com.iamberry.rst.faces.cm.CustomerService;
|
|
|
+import com.iamberry.rst.faces.order.EfastOrderService;
|
|
|
import com.iamberry.rst.service.address.mapper.AddressMapper;
|
|
|
import com.iamberry.rst.service.cm.mapper.*;
|
|
|
import com.iamberry.rst.service.order.EfastOrderServiceImpl;
|
|
@@ -68,6 +69,8 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
private ComplaintSignclosedProductInfoMapper complaintSignclosedProductInfoMapper;
|
|
|
@Autowired
|
|
|
private FittingsInfoMapper fittingsInfoMapper;
|
|
|
+ @Autowired
|
|
|
+ private EfastOrderService efastOrderService;
|
|
|
|
|
|
|
|
|
@Override
|
|
@@ -133,7 +136,7 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
Map<String,Object> map;
|
|
|
switch (customerInfo.getCustomerIsSolve()) {
|
|
|
case 3:
|
|
|
- map = this.sendEfastOrder(customerCommon);
|
|
|
+ map = this.sendEfastOrder(customerCommon,salesOrder);
|
|
|
if(map.get("status") == 1){
|
|
|
customerCommon.setRelationBackEfastOrderId(String.valueOf(map.get("EfastOrderId")));
|
|
|
complaintSignclosedInfo.setNewEfastId(String.valueOf(map.get("EfastOrderId")));
|
|
@@ -146,7 +149,7 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
this.saveComplaintDetectInfo(complaintDetectInfo,customerCommon);
|
|
|
break;
|
|
|
case 4:
|
|
|
- map = this.sendEfastOrder(customerCommon);
|
|
|
+ map = this.sendEfastOrder(customerCommon,salesOrder);
|
|
|
if(map.get("status") == 1){
|
|
|
customerCommon.setRelationBackEfastOrderId(String.valueOf(map.get("EfastOrderId")));
|
|
|
complaintSignclosedInfo.setNewEfastId(String.valueOf(map.get("EfastOrderId")));
|
|
@@ -159,7 +162,7 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
this.saveComplaintDetectInfo(complaintDetectInfo,customerCommon);
|
|
|
break;
|
|
|
case 5:
|
|
|
- map = this.sendEfastOrder(customerCommon);
|
|
|
+ map = this.sendEfastOrder(customerCommon,salesOrder);
|
|
|
if(map.get("status") == 1){
|
|
|
customerCommon.setRelationBackEfastOrderId(String.valueOf(map.get("EfastOrderId")));
|
|
|
complaintSignclosedInfo.setNewEfastId(String.valueOf(map.get("EfastOrderId")));
|
|
@@ -352,14 +355,16 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
* 向Efast推送订单 仅换新,维修 ,补发
|
|
|
* @return
|
|
|
*/
|
|
|
- public Map<String,Object> sendEfastOrder(CustomerCommon customerCommon){
|
|
|
+ @Transactional
|
|
|
+ public Map<String,Object> sendEfastOrder(CustomerCommon customerCommon,SalesOrder salesOrder) throws Exception{
|
|
|
Map<String,Object> map = new HashMap<String,Object>();
|
|
|
- EfastOrderServiceImpl efastOrderService = new EfastOrderServiceImpl();
|
|
|
List<EfastOrder> orderList = new ArrayList<EfastOrder>();
|
|
|
List<OrderItem> itemList = new ArrayList<OrderItem>();
|
|
|
|
|
|
Integer num = 0;
|
|
|
Integer amout = 0;
|
|
|
+ String orderProductBarCode = "";
|
|
|
+ String productName = "";
|
|
|
for(int i=0;i<customerCommon.getSendProdcues().size();i++){
|
|
|
SendProdcue sendProdcue = customerCommon.getSendProdcues().get(i);
|
|
|
OrderItem orderItem = new OrderItem();
|
|
@@ -368,6 +373,8 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
orderItem.setItemProductPrice(sendProdcue.getProductColor().getColorPrice());
|
|
|
orderItem.setItemColorBar(sendProdcue.getProductColor().getColorBar());
|
|
|
itemList.add(orderItem);
|
|
|
+ orderProductBarCode = sendProdcue.getProductColor().getColorBar();
|
|
|
+ productName = sendProdcue.getSendProduceName();
|
|
|
num += sendProdcue.getSendProdcueNumber();
|
|
|
amout += sendProdcue.getProductColor().getColorPrice();
|
|
|
}
|
|
@@ -375,7 +382,7 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
EfastOrder efastOrder = new EfastOrder();
|
|
|
efastOrder.setOrderAddressName(customerCommon.getRelationSendName());
|
|
|
efastOrder.setOrderAddressTel(customerCommon.getRelationSendTel());
|
|
|
- efastOrder.setOrderOpenId("");
|
|
|
+ efastOrder.setOrderOpenId("1");
|
|
|
|
|
|
String[] address = customerCommon.getRelationSendMergeAddress().split("-");
|
|
|
efastOrder.setOrderProvince(address[0]);
|
|
@@ -388,31 +395,45 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
efastOrder.setOrderAmount(amout);
|
|
|
efastOrder.setOrderPayMoney(amout);
|
|
|
|
|
|
- efastOrder.setOrderId(customerCommon.getTransactionNumber());
|
|
|
+
|
|
|
+ switch (salesOrder.getSalesPayType()){
|
|
|
+ case 1:
|
|
|
+ efastOrder.setOrderPayType(1);
|
|
|
+ break;
|
|
|
+ case 2:
|
|
|
+ efastOrder.setOrderPayType(2);
|
|
|
+ break;
|
|
|
+ case 3:
|
|
|
+ break;
|
|
|
+ case 4:
|
|
|
+ efastOrder.setOrderPayType(4);
|
|
|
+ break;
|
|
|
+ case 5:
|
|
|
+ efastOrder.setOrderPayType(5);
|
|
|
+ break;
|
|
|
+ }
|
|
|
|
|
|
- efastOrder.setOrderPayType(0);
|
|
|
+ efastOrder.setOrderProductBarCode(orderProductBarCode);
|
|
|
+ efastOrder.setOrderProductName(productName);
|
|
|
+
|
|
|
+ efastOrder.setOrderId(customerCommon.getTransactionNumber());
|
|
|
+ efastOrder.setOid(1);
|
|
|
|
|
|
orderList.add(efastOrder);
|
|
|
|
|
|
Integer status = 1;
|
|
|
+ Map<String,Object> orderMap = new HashMap<String,Object>();
|
|
|
try {
|
|
|
- efastOrderService.sendOrderInfoToEfast(orderList,itemList);
|
|
|
+ orderMap = efastOrderService.sendOrder(orderList,itemList);
|
|
|
} catch (Exception e) {
|
|
|
status = 0;
|
|
|
}
|
|
|
- if(status == 0){
|
|
|
- map.put("status",status);
|
|
|
- map.put("EfastOrderId","");
|
|
|
- return map;
|
|
|
- }
|
|
|
- EfastOrder efOrder = new EfastOrder();
|
|
|
- try {
|
|
|
- efOrder = efastOrderService.getOrderInfoFromEfast(customerCommon.getTransactionNumber());
|
|
|
- } catch (Exception e) {
|
|
|
+ List<EfastOrder> oList = (List<EfastOrder>) orderMap.get("efastOrderList");
|
|
|
+ if(oList == null || oList.size() < 1){
|
|
|
status = 0;
|
|
|
}
|
|
|
map.put("status",status);
|
|
|
- map.put("EfastOrderId",efOrder.getOid());
|
|
|
+ map.put("EfastOrderId",oList.get(0).getEfastOrderId());
|
|
|
return map;
|
|
|
}
|
|
|
|