|
@@ -6,6 +6,7 @@ import com.iamberry.rst.core.order.*;
|
|
|
import com.iamberry.rst.core.page.PagedResult;
|
|
|
import com.iamberry.rst.faces.cm.CustomerCommonService;
|
|
|
import com.iamberry.rst.faces.cm.CustomerService;
|
|
|
+import com.iamberry.rst.faces.cm.RelationOrderService;
|
|
|
import com.iamberry.rst.faces.order.EfastOrderService;
|
|
|
import com.iamberry.rst.service.address.mapper.AddressMapper;
|
|
|
import com.iamberry.rst.service.cm.mapper.*;
|
|
@@ -76,6 +77,9 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
private StoreInfoMapper storeInfoMapper;
|
|
|
@Autowired
|
|
|
private CustomerCommonService customerCommonService;
|
|
|
+ @Autowired
|
|
|
+ private RelationOrderService relationOrderService;
|
|
|
+
|
|
|
|
|
|
@Override
|
|
|
public CustomerInfo getCustomerInfo(Integer customerId) {
|
|
@@ -87,6 +91,8 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
public Integer saveCustomerInfo(CustomerInfo customerInfo,SalesOrder salesOrder){
|
|
|
Integer isNeedSelectOrder = customerInfo.getIsNeedSelectOrder();
|
|
|
|
|
|
+ List<SalesOrder> orderList = new ArrayList<>();
|
|
|
+
|
|
|
//添加客诉基本信息
|
|
|
Integer flag = 0;
|
|
|
flag = customerInfoMapper.insert(customerInfo);
|
|
@@ -129,8 +135,13 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
){
|
|
|
|
|
|
if(isNeedSelectOrder == 1){
|
|
|
- salesOrder = salesOrderMapper.getSalesOrderById(salesOrder.getSalesId());
|
|
|
- logger.info("-----------添加客诉-查询订单--------------");
|
|
|
+ SalesOrder so = new SalesOrder();
|
|
|
+ if(salesOrder.getIds()!= null && salesOrder.getIds().indexOf("_") > -1){
|
|
|
+ String[] salesIds = salesOrder.getIds().split("_");
|
|
|
+ so.setSalesIds(salesIds);
|
|
|
+ orderList = salesOrderMapper.listSalesOrder(so);
|
|
|
+ logger.info("-----------添加客诉-查询订单--------------");
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
CustomerCommon customerCommon = customerInfo.getCustomerCommon();
|
|
@@ -138,7 +149,6 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
customerCommon.setRelationBackStatus(1); //寄回状态 1:未寄回
|
|
|
customerCommon.setRelationSendStatus(1); //寄送状态 1:未寄送
|
|
|
customerCommon.setRelationState(1); //状态 默认使用中
|
|
|
- customerCommon.setOrderId(salesOrder.getSalesId()); //订单id
|
|
|
customerCommon.setTransactionNumber(customerInfo.getTransactionNumber()); //外部交易号
|
|
|
|
|
|
// TODO: 2018/3/27 是否转账邮费,默认为不需要转账 : 0
|
|
@@ -166,10 +176,10 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
// }else{
|
|
|
// throw new RuntimeException("换新创建Efast订单失败");
|
|
|
// }
|
|
|
- complaintSignclosedInfo.setOldEfastId(salesOrder.getSalesOrderId()); //原有订单的Efast的订单编号
|
|
|
- customerService.saveComplaintSignclosedInfo(complaintSignclosedInfo,customerCommon);//创建仓储任务
|
|
|
- complaintDetectInfo.setSignclosedId(complaintSignclosedInfo.getSignclosedId()); //设置仓储签收id
|
|
|
- customerService.saveComplaintDetectInfo(complaintDetectInfo,customerCommon); //创建品检
|
|
|
+ //complaintSignclosedInfo.setOldEfastId(salesOrder.getSalesOrderId()); //原有订单的Efast的订单编号
|
|
|
+ //customerService.saveComplaintSignclosedInfo(complaintSignclosedInfo,customerCommon);//创建仓储任务
|
|
|
+ //complaintDetectInfo.setSignclosedId(complaintSignclosedInfo.getSignclosedId()); //设置仓储签收id
|
|
|
+ //customerService.saveComplaintDetectInfo(complaintDetectInfo,customerCommon); //创建品检
|
|
|
break;
|
|
|
case 4: //维修
|
|
|
// customerService.chargebackEfastOrder(customerCommon,salesOrder,2); //原订单生成退单
|
|
@@ -180,10 +190,10 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
// }else{
|
|
|
// throw new RuntimeException("维修创建Efast订单失败");
|
|
|
// }
|
|
|
- complaintSignclosedInfo.setOldEfastId(salesOrder.getSalesOrderId()); //原有订单的Efast的订单编号
|
|
|
- customerService.saveComplaintSignclosedInfo(complaintSignclosedInfo,customerCommon);//创建仓储任务
|
|
|
- complaintDetectInfo.setSignclosedId(complaintSignclosedInfo.getSignclosedId()); //设置仓储签收id
|
|
|
- customerService.saveComplaintDetectInfo(complaintDetectInfo,customerCommon); //创建品检
|
|
|
+ //complaintSignclosedInfo.setOldEfastId(salesOrder.getSalesOrderId()); //原有订单的Efast的订单编号
|
|
|
+ //customerService.saveComplaintSignclosedInfo(complaintSignclosedInfo,customerCommon);//创建仓储任务
|
|
|
+ //complaintDetectInfo.setSignclosedId(complaintSignclosedInfo.getSignclosedId()); //设置仓储签收id
|
|
|
+ //customerService.saveComplaintDetectInfo(complaintDetectInfo,customerCommon); //创建品检
|
|
|
break;
|
|
|
case 5: //补发 不用创建仓储签收任务
|
|
|
// map = customerService.sendEfastOrder(customerCommon,salesOrder); //补发需要向Efast推送一条发货的订单
|
|
@@ -196,63 +206,96 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
break;
|
|
|
case 6: //退货
|
|
|
|
|
|
-// customerService.chargebackEfastOrder(customerCommon,salesOrder,3); //原订单生成退单
|
|
|
+// customerService.chargebackEfastOrder(customerCommon,salesOrder,3); //原订单生成退单
|
|
|
|
|
|
- complaintSignclosedInfo.setOldEfastId(salesOrder.getSalesOrderId()); //原有订单的Efast的订单编号
|
|
|
- customerService.saveComplaintSignclosedInfo(complaintSignclosedInfo,customerCommon);//创建仓储任务
|
|
|
- complaintDetectInfo.setSignclosedId(complaintSignclosedInfo.getSignclosedId()); //设置仓储签收id
|
|
|
- customerService.saveComplaintDetectInfo(complaintDetectInfo,customerCommon); //创建品检
|
|
|
+ //complaintSignclosedInfo.setOldEfastId(salesOrder.getSalesOrderId()); //原有订单的Efast的订单编号
|
|
|
+ //customerService.saveComplaintSignclosedInfo(complaintSignclosedInfo,customerCommon);//创建仓储任务
|
|
|
+ //complaintDetectInfo.setSignclosedId(complaintSignclosedInfo.getSignclosedId()); //设置仓储签收id
|
|
|
+ //customerService.saveComplaintDetectInfo(complaintDetectInfo,customerCommon); //创建品检
|
|
|
break;
|
|
|
case 7: //无理由退货
|
|
|
|
|
|
-// customerService.chargebackEfastOrder(customerCommon,salesOrder,3); //原订单生成退单
|
|
|
+// customerService.chargebackEfastOrder(customerCommon,salesOrder,3); //原订单生成退单
|
|
|
|
|
|
- complaintSignclosedInfo.setOldEfastId(salesOrder.getSalesOrderId()); //原有订单的Efast的订单编号
|
|
|
- customerService.saveComplaintSignclosedInfo(complaintSignclosedInfo,customerCommon);//创建仓储任务
|
|
|
- complaintDetectInfo.setSignclosedId(complaintSignclosedInfo.getSignclosedId()); //设置仓储签收id
|
|
|
- customerService.saveComplaintDetectInfo(complaintDetectInfo,customerCommon); //创建品检
|
|
|
+ //complaintSignclosedInfo.setOldEfastId(salesOrder.getSalesOrderId()); //原有订单的Efast的订单编号
|
|
|
+ //customerService.saveComplaintSignclosedInfo(complaintSignclosedInfo,customerCommon);//创建仓储任务
|
|
|
+ //complaintDetectInfo.setSignclosedId(complaintSignclosedInfo.getSignclosedId()); //设置仓储签收id
|
|
|
+ //customerService.saveComplaintDetectInfo(complaintDetectInfo,customerCommon); //创建品检
|
|
|
break;
|
|
|
}
|
|
|
logger.info("-----------添加客诉-创建仓储/品检成功--------------");
|
|
|
customerCommon.setSignclosedId(complaintSignclosedInfo.getSignclosedId()); //设置仓储id
|
|
|
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
/*将公共的对象 转换换新/维修/退款等*/
|
|
|
Object object = CustomerCommonUtil.getRelation(customerInfo.getCustomerIsSolve(), customerCommon);
|
|
|
|
|
|
Integer relationId = 0;
|
|
|
+ Integer orderStatus = 1;
|
|
|
switch (customerInfo.getCustomerIsSolve()) { //处理结果: 1:已解决 2:未解决 3:换新 4:维修 5:补发 6:退货 7:无理由退货
|
|
|
case 3: //换新
|
|
|
Renewed renewed = (Renewed) object;
|
|
|
flag = renewedMapper.insert(renewed);
|
|
|
relationId = renewed.getRenewedId();
|
|
|
+ orderStatus = 2;
|
|
|
break;
|
|
|
case 4: //维修
|
|
|
Repair repair = (Repair) object;
|
|
|
flag = repairMapper.insert(repair);
|
|
|
relationId = repair.getRepairId();
|
|
|
+ orderStatus = 4;
|
|
|
break;
|
|
|
case 5: //补发
|
|
|
Reissue reissue = (Reissue) object;
|
|
|
flag = reissueMapper.insert(reissue);
|
|
|
relationId = reissue.getReissueId();
|
|
|
+ orderStatus = 5;
|
|
|
break;
|
|
|
case 6: //退货
|
|
|
BackGoods backGoods = (BackGoods) object;
|
|
|
flag = backGoodsMapper.insert(backGoods);
|
|
|
relationId = backGoods.getBackGoodsId();
|
|
|
+ orderStatus = 3;
|
|
|
break;
|
|
|
case 7: //无理由退货
|
|
|
NoreasonBack noreasonBack = (NoreasonBack) object;
|
|
|
flag = noreasonBackMapper.insert(noreasonBack);
|
|
|
relationId = noreasonBack.getNoreasonBackId();
|
|
|
+ orderStatus = 3;
|
|
|
break;
|
|
|
}
|
|
|
if (flag < 1) {
|
|
|
throw new RuntimeException("添加客诉处理结果失败");
|
|
|
}
|
|
|
logger.info("-----------添加客诉-添加换新/维修/补发/退货/无理由退货信息成功--------------");
|
|
|
- customerCommon.setRelationId(relationId);
|
|
|
|
|
|
+ /*添加客诉-添加处理与订单关联表*/
|
|
|
+ List<RelationOrder> relationOrderList = new ArrayList<>();
|
|
|
+ for (SalesOrder sor : orderList) {
|
|
|
+ RelationOrder ro = new RelationOrder();
|
|
|
+ ro.setRelationType(customerInfo.getCustomerIsSolve());
|
|
|
+ ro.setRelationId(relationId);
|
|
|
+ ro.setSalesId(sor.getSalesId());
|
|
|
+ relationOrderList.add(ro);
|
|
|
+ }
|
|
|
+ flag = relationOrderService.saveList(relationOrderList);
|
|
|
+ if(flag < 1){
|
|
|
+ throw new RuntimeException("添加客诉,关联订单失败");
|
|
|
+ }
|
|
|
+ for (SalesOrder sor : orderList) {
|
|
|
+ SalesOrder newOrder = new SalesOrder(); //salesOrderStatus
|
|
|
+ newOrder.setSalesId(sor.getSalesId());
|
|
|
+ newOrder.setSalesOrderStatus(orderStatus);
|
|
|
+ flag = salesOrderMapper.updateSalesOrder(newOrder);
|
|
|
+ if(flag < 1){
|
|
|
+ throw new RuntimeException("添加客诉,修改订单失败");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ logger.info("-----------添加客诉-添加处理与订单关联表--------------");
|
|
|
+
|
|
|
+ customerCommon.setRelationId(relationId);
|
|
|
CustomerCommonUtil.setProduceOrFitting(customerInfo.getCustomerIsSolve(),customerCommon);
|
|
|
|
|
|
if(customerCommon.getClosedFittings()!=null && customerCommon.getClosedFittings().size() > 0){
|
|
@@ -287,6 +330,8 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
//删除旧的售后数据
|
|
|
customerService.deleteCustomerAfterSales(customerInfo);
|
|
|
|
|
|
+ List<SalesOrder> orderList = new ArrayList<>();
|
|
|
+
|
|
|
//修改客诉基本信息
|
|
|
Integer flag = 0;
|
|
|
flag = customerInfoMapper.updateCustomerInfo(customerInfo);
|
|
@@ -325,10 +370,15 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
){
|
|
|
|
|
|
if(isNeedSelectOrder == 1){
|
|
|
- salesOrder = salesOrderMapper.getSalesOrderById(salesOrder.getSalesId());
|
|
|
+ SalesOrder so = new SalesOrder();
|
|
|
+ if(salesOrder.getIds()!= null && salesOrder.getIds().indexOf("_") > -1){
|
|
|
+ String[] salesIds = salesOrder.getIds().split("_");
|
|
|
+ so.setSalesIds(salesIds);
|
|
|
+ orderList = salesOrderMapper.listSalesOrder(so);
|
|
|
+ logger.info("-----------添加客诉-查询订单--------------");
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
- logger.info("-----------修改客诉-查询订单--------------");
|
|
|
CustomerCommon customerCommon = customerInfo.getCustomerCommon();
|
|
|
if(ccList.size() > 0){
|
|
|
cc = ccList.get(0);
|
|
@@ -379,10 +429,10 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
// }else{
|
|
|
// throw new RuntimeException("换新创建Efast订单失败");
|
|
|
// }
|
|
|
- complaintSignclosedInfo.setOldEfastId(salesOrder.getSalesOrderId()); //原有订单的Efast的订单编号
|
|
|
- customerService.saveComplaintSignclosedInfo(complaintSignclosedInfo,customerCommon);//创建仓储任务
|
|
|
- complaintDetectInfo.setSignclosedId(complaintSignclosedInfo.getSignclosedId()); //设置仓储签收id
|
|
|
- customerService.saveComplaintDetectInfo(complaintDetectInfo,customerCommon); //创建品检
|
|
|
+// complaintSignclosedInfo.setOldEfastId(salesOrder.getSalesOrderId()); //原有订单的Efast的订单编号
|
|
|
+// customerService.saveComplaintSignclosedInfo(complaintSignclosedInfo,customerCommon);//创建仓储任务
|
|
|
+// complaintDetectInfo.setSignclosedId(complaintSignclosedInfo.getSignclosedId()); //设置仓储签收id
|
|
|
+// customerService.saveComplaintDetectInfo(complaintDetectInfo,customerCommon); //创建品检
|
|
|
break;
|
|
|
case 4: //维修
|
|
|
// customerService.chargebackEfastOrder(customerCommon,salesOrder,2); //原订单生成退单
|
|
@@ -393,10 +443,10 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
// }else{
|
|
|
// throw new RuntimeException("维修创建Efast订单失败");
|
|
|
// }
|
|
|
- complaintSignclosedInfo.setOldEfastId(salesOrder.getSalesOrderId()); //原有订单的Efast的订单编号
|
|
|
- customerService.saveComplaintSignclosedInfo(complaintSignclosedInfo,customerCommon);//创建仓储任务
|
|
|
- complaintDetectInfo.setSignclosedId(complaintSignclosedInfo.getSignclosedId()); //设置仓储签收id
|
|
|
- customerService.saveComplaintDetectInfo(complaintDetectInfo,customerCommon); //创建品检
|
|
|
+// complaintSignclosedInfo.setOldEfastId(salesOrder.getSalesOrderId()); //原有订单的Efast的订单编号
|
|
|
+// customerService.saveComplaintSignclosedInfo(complaintSignclosedInfo,customerCommon);//创建仓储任务
|
|
|
+// complaintDetectInfo.setSignclosedId(complaintSignclosedInfo.getSignclosedId()); //设置仓储签收id
|
|
|
+// customerService.saveComplaintDetectInfo(complaintDetectInfo,customerCommon); //创建品检
|
|
|
break;
|
|
|
case 5: //补发 不用创建仓储签收任务
|
|
|
// map = customerService.sendEfastOrder(customerCommon,salesOrder); //补发需要向Efast推送一条发货的订单
|
|
@@ -408,20 +458,19 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
// }
|
|
|
break;
|
|
|
case 6: //退货
|
|
|
-
|
|
|
// customerService.chargebackEfastOrder(customerCommon,salesOrder,3); //原订单生成退单
|
|
|
|
|
|
- complaintSignclosedInfo.setOldEfastId(salesOrder.getSalesOrderId()); //原有订单的Efast的订单编号
|
|
|
- customerService.saveComplaintSignclosedInfo(complaintSignclosedInfo,customerCommon);//创建仓储任务
|
|
|
- complaintDetectInfo.setSignclosedId(complaintSignclosedInfo.getSignclosedId()); //设置仓储签收id
|
|
|
- customerService.saveComplaintDetectInfo(complaintDetectInfo,customerCommon); //创建品检
|
|
|
+// complaintSignclosedInfo.setOldEfastId(salesOrder.getSalesOrderId()); //原有订单的Efast的订单编号
|
|
|
+// customerService.saveComplaintSignclosedInfo(complaintSignclosedInfo,customerCommon);//创建仓储任务
|
|
|
+// complaintDetectInfo.setSignclosedId(complaintSignclosedInfo.getSignclosedId()); //设置仓储签收id
|
|
|
+// customerService.saveComplaintDetectInfo(complaintDetectInfo,customerCommon); //创建品检
|
|
|
break;
|
|
|
case 7: //无理由退货
|
|
|
// customerService.chargebackEfastOrder(customerCommon,salesOrder,3); //原订单生成退单
|
|
|
- complaintSignclosedInfo.setOldEfastId(salesOrder.getSalesOrderId()); //原有订单的Efast的订单编号
|
|
|
- customerService.saveComplaintSignclosedInfo(complaintSignclosedInfo,customerCommon);//创建仓储任务
|
|
|
- complaintDetectInfo.setSignclosedId(complaintSignclosedInfo.getSignclosedId()); //设置仓储签收id
|
|
|
- customerService.saveComplaintDetectInfo(complaintDetectInfo,customerCommon); //创建品检
|
|
|
+// complaintSignclosedInfo.setOldEfastId(salesOrder.getSalesOrderId()); //原有订单的Efast的订单编号
|
|
|
+// customerService.saveComplaintSignclosedInfo(complaintSignclosedInfo,customerCommon);//创建仓储任务
|
|
|
+// complaintDetectInfo.setSignclosedId(complaintSignclosedInfo.getSignclosedId()); //设置仓储签收id
|
|
|
+// customerService.saveComplaintDetectInfo(complaintDetectInfo,customerCommon); //创建品检
|
|
|
break;
|
|
|
}
|
|
|
logger.info("-----------修改客诉-创建仓储/品检成功--------------");
|
|
@@ -429,45 +478,75 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
|
|
|
Object object = CustomerCommonUtil.getRelation(customerInfo.getCustomerIsSolve(), customerCommon);
|
|
|
Integer relationId = 0;
|
|
|
+ Integer orderStatus = 1;
|
|
|
switch (customerInfo.getCustomerIsSolve()) { //处理结果: 1:已解决 2:未解决 3:换新 4:维修 5:补发 6:退货 7:无理由退货
|
|
|
case 3: //换新
|
|
|
Renewed renewed = (Renewed) object;
|
|
|
flag = renewedMapper.insert(renewed);
|
|
|
relationId = renewed.getRenewedId();
|
|
|
+ orderStatus = 2;
|
|
|
break;
|
|
|
case 4: //维修
|
|
|
Repair repair = (Repair) object;
|
|
|
flag = repairMapper.insert(repair);
|
|
|
relationId = repair.getRepairId();
|
|
|
+ orderStatus = 4;
|
|
|
break;
|
|
|
case 5: //补发
|
|
|
Reissue reissue = (Reissue) object;
|
|
|
flag = reissueMapper.insert(reissue);
|
|
|
relationId = reissue.getReissueId();
|
|
|
+ orderStatus = 5;
|
|
|
break;
|
|
|
case 6: //退货
|
|
|
BackGoods backGoods = (BackGoods) object;
|
|
|
flag = backGoodsMapper.insert(backGoods);
|
|
|
relationId = backGoods.getBackGoodsId();
|
|
|
+ orderStatus = 3;
|
|
|
break;
|
|
|
case 7: //无理由退货
|
|
|
NoreasonBack noreasonBack = (NoreasonBack) object;
|
|
|
flag = noreasonBackMapper.insert(noreasonBack);
|
|
|
relationId = noreasonBack.getNoreasonBackId();
|
|
|
+ orderStatus = 3;
|
|
|
break;
|
|
|
}
|
|
|
if (flag < 1) {
|
|
|
throw new RuntimeException("添加客诉处理结果失败");
|
|
|
}
|
|
|
logger.info("-----------修改客诉-添加换新/维修/补发/退货/无理由退货信息成功--------------");
|
|
|
- customerCommon.setRelationId(relationId);
|
|
|
|
|
|
+ /*添加客诉-添加处理与订单关联表*/
|
|
|
+ List<RelationOrder> relationOrderList = new ArrayList<>();
|
|
|
+ for (SalesOrder sor : orderList) {
|
|
|
+ RelationOrder ro = new RelationOrder();
|
|
|
+ ro.setRelationType(customerInfo.getCustomerIsSolve());
|
|
|
+ ro.setRelationId(relationId);
|
|
|
+ ro.setSalesId(sor.getSalesId());
|
|
|
+ relationOrderList.add(ro);
|
|
|
+ }
|
|
|
+ flag = relationOrderService.saveList(relationOrderList);
|
|
|
+ if(flag < 1){
|
|
|
+ throw new RuntimeException("添加客诉,关联订单失败");
|
|
|
+ }
|
|
|
+ for (SalesOrder sor : orderList) {
|
|
|
+ SalesOrder newOrder = new SalesOrder(); //salesOrderStatus
|
|
|
+ newOrder.setSalesId(sor.getSalesId());
|
|
|
+ newOrder.setSalesOrderStatus(orderStatus);
|
|
|
+ flag = salesOrderMapper.updateSalesOrder(newOrder);
|
|
|
+ if(flag < 1){
|
|
|
+ throw new RuntimeException("添加客诉,修改订单状态失败");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ logger.info("-----------添加客诉-添加处理与订单关联表--------------");
|
|
|
+
|
|
|
+ customerCommon.setRelationId(relationId);
|
|
|
if(customerCommon.getIsNeedSelectOrder() == 1){
|
|
|
CustomerCommonUtil.setProduceOrFitting(customerInfo.getCustomerIsSolve(),customerCommon);
|
|
|
if(customerCommon.getClosedFittings()!=null && customerCommon.getClosedFittings().size() > 0){
|
|
|
closedFittingMapper.insert(customerCommon.getClosedFittings());
|
|
|
}
|
|
|
- if(customerCommon.getClosedProdcues() != null && customerCommon.getClosedProdcues().size()>0){
|
|
|
+ if(customerCommon.getClosedProdcues() != null && customerCommon.getClosedProdcues().size() > 0){
|
|
|
closedProdcueMapper.insert(customerCommon.getClosedProdcues());
|
|
|
}
|
|
|
if(customerCommon.getSendProdcues() != null && customerCommon.getSendProdcues().size() > 0){
|
|
@@ -517,6 +596,7 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
/* 初始化产品类型,名称,配件名称 */
|
|
|
/*customerService.setName(customerCommon);*/
|
|
|
}
|
|
|
+ Integer relationId = 0;
|
|
|
switch (oldIsSolve){
|
|
|
case 3:
|
|
|
//删除换新数据
|
|
@@ -524,9 +604,10 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
renewed.setCustomerId(customer.getCustomerId());
|
|
|
//查询换新数据id
|
|
|
renewed = renewedMapper.getRenewedInfo(renewed);
|
|
|
+ relationId = renewed.getRenewedId();
|
|
|
if(customer.getCustomerIsSolve() < 3){ //从维修换货补发修改为已解决或未解决时,原订单生成退单
|
|
|
//salesOrder = salesOrderMapper.getSalesOrderById(renewed.getOrderId()); //salesOrder.getSalesId() 全场最佳,就你戏多
|
|
|
- customerCommon.setOrderId(renewed.getOrderId()); //订单id
|
|
|
+ //customerCommon.setOrderId(renewed.getOrderId()); //订单id
|
|
|
SendProdcue record = new SendProdcue();
|
|
|
record.setRelationId(renewed.getRenewedId());
|
|
|
customerCommon.setSendProdcues(sendProdcueMapper.listSendProdcue(record));
|
|
@@ -550,9 +631,10 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
repair.setCustomerId(customer.getCustomerId());
|
|
|
//查询维修数据id
|
|
|
repair = repairMapper.getRepairInfo(repair);
|
|
|
+ relationId = repair.getRepairId();
|
|
|
if(customer.getCustomerIsSolve() < 3) { //从维修换货补发修改为已解决或未解决时,原订单生成退单
|
|
|
//salesOrder = salesOrderMapper.getSalesOrderById(repair.getOrderId());
|
|
|
- customerCommon.setOrderId(repair.getOrderId()); //订单id
|
|
|
+ //customerCommon.setOrderId(repair.getOrderId()); //订单id
|
|
|
SendProdcue record = new SendProdcue();
|
|
|
record.setRelationId(repair.getRepairId());
|
|
|
customerCommon.setSendProdcues(sendProdcueMapper.listSendProdcue(record));
|
|
@@ -576,9 +658,10 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
reissue.setCustomerId(customer.getCustomerId());
|
|
|
//查询补发数据id
|
|
|
reissue = reissueMapper.getReissue(reissue);
|
|
|
+ relationId = reissue.getReissueId();
|
|
|
if(customer.getCustomerIsSolve() < 3) { //从维修换货补发修改为已解决或未解决时,原订单生成退单
|
|
|
//salesOrder = salesOrderMapper.getSalesOrderById(reissue.getOrderId());
|
|
|
- customerCommon.setOrderId(reissue.getOrderId()); //订单id
|
|
|
+ //customerCommon.setOrderId(reissue.getOrderId()); //订单id
|
|
|
SendProdcue record = new SendProdcue();
|
|
|
record.setRelationId(reissue.getReissueId());
|
|
|
customerCommon.setSendProdcues(sendProdcueMapper.listSendProdcue(record));
|
|
@@ -598,6 +681,7 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
backGoods.setCustomerId(customer.getCustomerId());
|
|
|
//查询维修数据id
|
|
|
backGoods = backGoodsMapper.getBackGoods(backGoods);
|
|
|
+ relationId = backGoods.getBackGoodsId();
|
|
|
//删除寄出寄回产品
|
|
|
closedRecord.setRelationId(backGoods.getBackGoodsId());
|
|
|
closedFittingMapper.deleteByPrimaryKey(closedRecord);
|
|
@@ -611,7 +695,8 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
noreasonBack.setCustomerId(customer.getCustomerId());
|
|
|
//查询维修数据id
|
|
|
noreasonBack = noreasonBackMapper.getNoreasonBack(noreasonBack);
|
|
|
- //删除寄出寄回产品
|
|
|
+ relationId = noreasonBack.getNoreasonBackId();
|
|
|
+ //删除寄出寄回产品
|
|
|
closedRecord.setRelationId(noreasonBack.getNoreasonBackId());
|
|
|
closedFittingMapper.deleteByPrimaryKey(closedRecord);
|
|
|
closedrecord.setRelationId(noreasonBack.getNoreasonBackId());
|
|
@@ -619,6 +704,21 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
noreasonBackMapper.deleteByPrimaryKey(noreasonBack);
|
|
|
break;
|
|
|
}
|
|
|
+
|
|
|
+ /*恢复订单状态*/
|
|
|
+ RelationOrder relationOrder = new RelationOrder();
|
|
|
+ relationOrder.setRelationType(oldIsSolve);
|
|
|
+ relationOrder.setRelationId(relationId);
|
|
|
+ List<RelationOrder> relationOrderList = relationOrderService.getRelationOrderList(relationOrder);
|
|
|
+ for (int k=0; k<relationOrderList.size();k++){
|
|
|
+ SalesOrder newOrder = new SalesOrder(); //salesOrderStatus
|
|
|
+ newOrder.setSalesId(relationOrderList.get(k).getSalesId());
|
|
|
+ newOrder.setSalesOrderStatus(1); //恢复订单到之前的状态
|
|
|
+ Integer flag = salesOrderMapper.updateSalesOrder(newOrder);
|
|
|
+ }
|
|
|
+
|
|
|
+ /* 删除掉订单与处理的关联表 */
|
|
|
+ relationOrderService.deleteByRelationId(relationId);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
@@ -963,10 +1063,31 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 向Efast推送订单--添加订单
|
|
|
+ * 添加订单
|
|
|
* @return
|
|
|
*/
|
|
|
@Transactional
|
|
|
+ public Integer addOrder(SalesOrder salesOrder) {
|
|
|
+ //添加订单数据
|
|
|
+ int orderNum = salesOrderMapper.addSalesOrder(salesOrder);
|
|
|
+ if (orderNum <= 0) {
|
|
|
+ throw new RuntimeException("系统添加订单失败");
|
|
|
+ }
|
|
|
+ for (SalesOrderItem item : salesOrder.getSalesOrderItemList()) {
|
|
|
+ item.setItemOrderId(salesOrder.getSalesId());
|
|
|
+ }
|
|
|
+ //批量添加订单项数据
|
|
|
+ int itemNum = salesOrderMapper.addOrderItemList(salesOrder.getSalesOrderItemList());
|
|
|
+ if (itemNum <= 0) {
|
|
|
+ throw new RuntimeException("系统添加订单项失败");
|
|
|
+ }
|
|
|
+ return orderNum;
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 向Efast推送订单--添加订单
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @Transactional
|
|
|
public Map<String,Object> sendEfastOrder(SalesOrder salesOrder){
|
|
|
|
|
|
//添加订单数据
|
|
@@ -1277,7 +1398,7 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
renewedInfo.setCustomerId(customerInfo.getCustomerId());
|
|
|
//查询售后换新详情
|
|
|
renewedInfo = renewedMapper.getRenewedInfo(renewedInfo);
|
|
|
- orderId = renewedInfo.getOrderId();
|
|
|
+ //orderId = renewedInfo.getOrderId();
|
|
|
customerCommon = CustomerCommonUtil.getCustomerCommon(3,renewedInfo);
|
|
|
customerCommon = customerService.selectProdcueAndFitting(customerCommon,3);
|
|
|
break;
|
|
@@ -1290,7 +1411,7 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
if (repairInfo.getComplaintDetectList() != null && repairInfo.getComplaintDetectList().size() > 0) {
|
|
|
repairInfo.setDetectState(repairInfo.getComplaintDetectList().get(0).getDetectState());
|
|
|
}
|
|
|
- orderId = repairInfo.getOrderId();
|
|
|
+ //orderId = repairInfo.getOrderId();
|
|
|
customerCommon = CustomerCommonUtil.getCustomerCommon(4,repairInfo);
|
|
|
customerCommon = customerService.selectProdcueAndFitting(customerCommon,4);
|
|
|
break;
|
|
@@ -1304,7 +1425,7 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
return null;
|
|
|
}
|
|
|
reissueInfo = reissueList.get(0);
|
|
|
- orderId = reissueInfo.getOrderId();
|
|
|
+ //orderId = reissueInfo.getOrderId();
|
|
|
customerCommon = CustomerCommonUtil.getCustomerCommon(5,reissueInfo);
|
|
|
customerCommon = customerService.selectProdcueAndFitting(customerCommon,5);
|
|
|
break;
|
|
@@ -1321,7 +1442,7 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
if (backGoodsInfo.getComplaintDetectList() != null && backGoodsInfo.getComplaintDetectList().size() > 0) {
|
|
|
backGoodsInfo.setDetectState(backGoodsInfo.getComplaintDetectList().get(0).getDetectState());
|
|
|
}
|
|
|
- orderId = backGoodsInfo.getOrderId();
|
|
|
+ //orderId = backGoodsInfo.getOrderId();
|
|
|
customerCommon = CustomerCommonUtil.getCustomerCommon(6,backGoodsInfo);
|
|
|
customerCommon = customerService.selectProdcueAndFitting(customerCommon,6);
|
|
|
break;
|
|
@@ -1338,24 +1459,32 @@ public class CustomerServiceImpl implements CustomerService {
|
|
|
if (noreasonBackInfo.getComplaintDetectList() != null && noreasonBackInfo.getComplaintDetectList().size() > 0) {
|
|
|
noreasonBackInfo.setDetectState(noreasonBackInfo.getComplaintDetectList().get(0).getDetectState());
|
|
|
}
|
|
|
- orderId = noreasonBackInfo.getOrderId();
|
|
|
+ //orderId = noreasonBackInfo.getOrderId();
|
|
|
customerCommon = CustomerCommonUtil.getCustomerCommon(7,noreasonBackInfo);
|
|
|
customerCommon = customerService.selectProdcueAndFitting(customerCommon,7);
|
|
|
break;
|
|
|
}
|
|
|
- SalesOrder salesOrder = new SalesOrder();
|
|
|
- salesOrder.setSalesId(orderId);
|
|
|
- //查询订单信息
|
|
|
- List<SalesOrder> orderList = salesOrderMapper.listSalesOrder(salesOrder);
|
|
|
+
|
|
|
+ RelationOrder relationOrder = new RelationOrder();
|
|
|
+ relationOrder.setRelationType(customerCommon.getCustomerIsSolve());
|
|
|
+ relationOrder.setRelationId(customerCommon.getRelationId());
|
|
|
+ List<RelationOrder> relationOrderList = relationOrderService.getRelationOrderList(relationOrder);
|
|
|
+ String[] salesIds = new String[relationOrderList.size()];
|
|
|
+ for (int k=0; k<relationOrderList.size();k++){
|
|
|
+ salesIds[k] = String.valueOf(relationOrderList.get(k).getSalesId());
|
|
|
+ }
|
|
|
+ SalesOrder so = new SalesOrder();
|
|
|
+ so.setSalesIds(salesIds);
|
|
|
+ List<SalesOrder> orderList = salesOrderMapper.listSalesOrder(so);
|
|
|
if (orderList != null && orderList.size() > 0) {
|
|
|
SalesOrder order = orderList.get(0);
|
|
|
SalesOrderItem salesOrderItem = new SalesOrderItem();
|
|
|
salesOrderItem.setItemOrderId(order.getSalesId());
|
|
|
order.setSalesOrderItemList(salesOrderMapper.listSalesOrderItem(salesOrderItem));
|
|
|
- map.put("salesOrder",order);
|
|
|
} else {
|
|
|
- map.put("salesOrder",null);
|
|
|
+ map.put("orderList",null);
|
|
|
}
|
|
|
+ map.put("orderList",orderList);
|
|
|
map.put("customerCommon",customerCommon);
|
|
|
return map;
|
|
|
}
|