| 
					
				 | 
			
			
				@@ -105,6 +105,10 @@ public class AdminCustomerController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private RelationOrderService relationOrderService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private GenerateKeyUtil generateKeyUtil ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private CmRelationService cmRelationService ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private ProcMethodService procMethodService ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     /** 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -173,95 +177,18 @@ public class AdminCustomerController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         Integer loginAdminId = AdminUtils.getLoginAdminId(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         //查询客诉基本信息 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         CustomerInfo customerInfo = customerService.getCustomerInfo(customerId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        /*客诉信息处理-stast*/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        //对于区域处理 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (customerInfo != null && customerInfo.getCustomerArea() != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//            String[] customerAreaAndCity = customerInfo.getCustomerArea().split("-"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//            customerInfo.setProvinceName(customerAreaAndCity[0]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//            City city 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//            addressService.listCity(customerAreaAndCity[0]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//            customerInfo.setCityName(customerAreaAndCity[0]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        /*客诉信息处理-end*/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        CustomerCommon customerCommon = new CustomerCommon(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (customerInfo.getCustomerIsSolve() != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            switch (customerInfo.getCustomerIsSolve()) {   //处理结果: 1:已解决  2:未解决 3:换新  4:维修 5:补发 6:退货 7:无理由退货 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                case 3://获取换新 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    Renewed renewed = new Renewed(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    renewed.setCustomerId(customerInfo.getCustomerId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    renewed = renewedService.getRenewed(renewed); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    customerCommon = CustomerCommonUtil.getCustomerCommon(3, renewed); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                case 4://维修 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    Repair repair = new Repair(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    repair.setCustomerId(customerInfo.getCustomerId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    repair = repairService.getRepair(repair); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    customerCommon = CustomerCommonUtil.getCustomerCommon(4, repair); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                case 5: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    Reissue reissue = new Reissue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    reissue.setCustomerId(customerInfo.getCustomerId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    reissue = reissueService.getReissue(reissue); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    customerCommon = CustomerCommonUtil.getCustomerCommon(5, reissue); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                case 6: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    BackGoods backGoods = new BackGoods(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    backGoods.setCustomerId(customerInfo.getCustomerId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    backGoods = backGoodsService.getBackGoods(backGoods); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    customerCommon = CustomerCommonUtil.getCustomerCommon(6, backGoods); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                case 7: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    NoreasonBack noreasonBack = new NoreasonBack(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    noreasonBack.setCustomerId(customerInfo.getCustomerId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    noreasonBack = noreasonBackService.getNoreasonBack(noreasonBack); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    customerCommon = CustomerCommonUtil.getCustomerCommon(7, noreasonBack); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            /*查询所有需要寄入寄出的产品*/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            customerCommon.setCustomerIsSolve(customerInfo.getCustomerIsSolve()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            customerCommon = customerCommonService.getListProduceAndFitting(customerCommon); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            // 2018/4/18  页面只会给寄回的赋值,在处理方式为补发的情况下,寄出需要赋值到寄回当中 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            if (customerInfo.getCustomerIsSolve() == 5) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                //售后寄回产品表 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                List<ClosedProdcue> closedProdcues = new ArrayList<ClosedProdcue>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                for (SendProdcue sendProdcue : customerCommon.getSendProdcues()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    ClosedProdcue closedProdcue = new ClosedProdcue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    closedProdcue.setRelationId(sendProdcue.getRelationId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    closedProdcue.setProductType(sendProdcue.getProductType()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    closedProdcue.setProductId(sendProdcue.getProductId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    closedProdcue.setColorId(sendProdcue.getColorId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    closedProdcue.setClosedProductName(sendProdcue.getSendProduceName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    closedProdcue.setClosedColorName(sendProdcue.getSendColorName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    closedProdcue.setClosedProdcueNumber(sendProdcue.getSendProdcueNumber()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    closedProdcue.setColorBar(sendProdcue.getColorBar()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    closedProdcues.add(closedProdcue); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                //售后寄回产品配件表 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                List<ClosedFitting> closedFittings = new ArrayList<ClosedFitting>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                for (SendFitting sendFitting : customerCommon.getSendFittings()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    ClosedFitting closedFitting = new ClosedFitting(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    closedFitting.setRelationId(sendFitting.getRelationId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    closedFitting.setClosedFittingType(sendFitting.getSendFittingType()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    closedFitting.setProductId(sendFitting.getProductId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    closedFitting.setFittingsId(sendFitting.getFittingsId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    closedFitting.setClosedProductName(sendFitting.getSendProductName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    closedFitting.setClosedFittingsName(sendFitting.getSendFittingsName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    closedFitting.setClosedFittingNumber(sendFitting.getSendFittingNumber()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    closedFitting.setColorBar(sendFitting.getColorBar()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    closedFittings.add(closedFitting); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                customerCommon.setClosedProdcues(closedProdcues); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                customerCommon.setClosedFittings(closedFittings); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            mv.addObject("customerCommon", customerCommon); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            if (customerInfo.getTypeId() == 1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                customerInfo.setIsNeedSelectOrder(2);       //不需要订单 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                customerInfo.setIsNeedSelectOrder(1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        /*查询处理方式*/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        CmRelation cmRelation = cmRelationService.getCmRelationByCustomerId(customerInfo.getCustomerId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        /*获取寄出寄入产品*/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        cmRelationService.getSendAndBackProduct(cmRelation); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        /*处理方式*/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        ProcMethod procMethod = procMethodService.getProcMethodById(cmRelation.getProcMethodId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (customerInfo.getTypeId() == 1 || (procMethod.getProcMethodIsSend()==2 && procMethod.getProcMethodIsBack() == 2)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            customerInfo.setIsNeedSelectOrder(2);       //不需要订单 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            customerInfo.setIsNeedSelectOrder(1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             /*查询所有的产品,颜色和配件信息*/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 //            List<Product> productList = productService.listProduce(new Product()); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -278,31 +205,30 @@ public class AdminCustomerController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 //            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 //            mv.addObject("productList", productList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            if (customerInfo.getTypeId() != 1 && (customerInfo.getCustomerIsSolve() == 3 || customerInfo.getCustomerIsSolve() == 4 || customerInfo.getCustomerIsSolve() == 5 || 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    customerInfo.getCustomerIsSolve() == 6 || customerInfo.getCustomerIsSolve() == 7)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                RelationOrder relationOrder = new RelationOrder(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                relationOrder.setRelationType(customerCommon.getCustomerIsSolve()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                relationOrder.setRelationId(customerCommon.getRelationId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                List<RelationOrder> relationOrderList = relationOrderService.getRelationOrderList(relationOrder); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //setIsNeedSelectOrder 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (customerInfo.getIsNeedSelectOrder() == 1 ) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            RelationOrder relationOrder = new RelationOrder(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            relationOrder.setRelationId(cmRelation.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 = salesOrderService.listSalesOrder(so); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                for (SalesOrder sor : orderList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    SalesOrderItem salesOrderItem = new SalesOrderItem(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    salesOrderItem.setItemOrderId(sor.getSalesId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    List<SalesOrderItem> salesOrderItemList = salesOrderService.listSalesOrderItem(salesOrderItem); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    sor.setSalesOrderItemList(salesOrderItemList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                mv.addObject("salesOrderList", orderList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                mv.addObject("salesOrderList", null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            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 = salesOrderService.listSalesOrder(so); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            for (SalesOrder sor : orderList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                SalesOrderItem salesOrderItem = new SalesOrderItem(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                salesOrderItem.setItemOrderId(sor.getSalesId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                List<SalesOrderItem> salesOrderItemList = salesOrderService.listSalesOrderItem(salesOrderItem); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                sor.setSalesOrderItemList(salesOrderItemList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            mv.addObject("salesOrderList", orderList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            mv.addObject("salesOrderList", null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if ("2".equals(customerInfo.getCustomerIsVisit())) { //1:不需要回访  2:需要回访 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             Visit visit = new Visit(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             visit.setCustomerId(customerInfo.getCustomerId()); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -320,7 +246,8 @@ public class AdminCustomerController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ComplaintTypeInfo complaintTypeInfo = new ComplaintTypeInfo(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         List<ComplaintTypeInfo> complaintTypeInfoList = complaintTypeInfoService.listComplaintTypeInfo(complaintTypeInfo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        mv.addObject("cmRelation", cmRelation); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        mv.addObject("procMethod", procMethod); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         mv.addObject("customerInfo", customerInfo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         mv.addObject("typeList", typeList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         mv.addObject("complaintTypeList", complaintTypeList); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -863,7 +790,7 @@ public class AdminCustomerController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @RequiresPermissions("customer:add:customer") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @RequestMapping("/save_customer") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     public ResponseJson addCustomer(HttpServletRequest request, CustomerInfo customerInfo, SalesOrder salesOrder, CmRelation cmRelation, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                    String sendProdcuesJson,  String closedProdcuesJson) throws Exception { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    String sendProdcuesJson,String closedProdcuesJson) throws Exception { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ResponseJson rjx = this.isValiData(customerInfo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (rjx.getResultCode() == 500) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             return rjx; 
			 |