Browse Source

订单变更BUG修复

anderx 3 years ago
parent
commit
44dd7732c4

+ 4 - 4
src/main/java/com/goafanti/common/mapper/NewOrderChangeMapper.xml

@@ -515,10 +515,10 @@ select
       and d.manager_id= #{aid}
     </if>
 	<if test="processState==3 and complete !=5">
-	and  x.aid=#{aid}  and a.process_state &gt;= 2
+	and  x.aid=#{aid}  and a.process_state &gt;= #{processState}
 	</if>
 	<if test="processState==4 and complete !=5">
-	and x.aid=#{aid}  and a.process_state &gt;= 3
+	and x.aid=#{aid}  and a.process_state &gt;= #{processState}
 	</if>
 	<if test="processState==3 and complete ==5">
 	and  x.aid=#{aid}  and a.back_status &gt;= #{processState}
@@ -628,10 +628,10 @@ select
       and d.manager_id= #{aid}
     </if>
 	<if test="processState==3 and complete !=5">
-	and  x.aid=#{aid}  and a.process_state &gt;= 2
+	and  x.aid=#{aid}  and a.process_state &gt;= #{processState}
 	</if>
 	<if test="processState==4 and complete !=5">
-	and x.aid=#{aid}  and a.process_state &gt;= 3
+	and x.aid=#{aid}  and a.process_state &gt;= #{processState}
 	</if>
 	<if test="processState==3 and complete ==5">
 	and  x.aid=#{aid}  and a.back_status &gt;= #{processState}

+ 44 - 78
src/main/java/com/goafanti/order/service/impl/OrderChangeServiceImpl.java

@@ -193,8 +193,6 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
 		for (TOrderTaskBo t : list) {
 			if (type==OrderChangeType.CB.getCode()||type==OrderChangeType.JXMBG.getCode()){
 				Integer receiverType=null;
-				System.out.println(t.getTaskReceiver()+"="+t.getManagerId());
-				System.out.println(t.getTaskReceiver().equals(t.getManagerId()));
 				if (t.getTaskReceiver()!=null){
 					if (t.getTaskReceiver().equals(t.getConsultantId())) {
 						receiverType=0;
@@ -204,7 +202,7 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
 				}
 				if (receiverType!=null){
 					OrderExamine o=new OrderExamine();
-					o.setAid(t.getConsultantId());
+					o.setAid(t.getTaskReceiver());
 					o.setOrderNo(orderNo);
 					o.setCreateTime(new Date());
 					o.setType(receiverType);//咨询师
@@ -301,52 +299,24 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
 								nb.getType()==OrderChangeType.TDTK.getCode()||
 								nb.getType()==OrderChangeType.TDBTK.getCode()){
 							int zxs=orderExamineMapper.checkCountStatus(orderNo,0,null);
-							int zxsjl=orderExamineMapper.checkCountStatus(orderNo,1,null);
+
 							if (zxs>0){
 								nb.setProcessState(OrderChangeProcess.JSY.getCode());
 							}else {
-								 if (nb.getType()==OrderChangeType.XMJJEBG.getCode()||
-										nb.getType()==OrderChangeType.TDTK.getCode()||
-										nb.getType()==OrderChangeType.TDBTK.getCode()||
-										nb.getType()==OrderChangeType.CB.getCode()||
-										nb.getType()==OrderChangeType.JXMBG.getCode()){
-									if (zxsjl>0){
-										nb.setProcessState(OrderChangeProcess.JSJL.getCode());
-									}else {
-										//重报 没有技术员跳入财务
-										if (nb.getType()==OrderChangeType.CB.getCode()){
-											nb.setProcessState(OrderChangeProcess.CWZY.getCode());
-											//项目变更没有跳入技术总监
-										}else if (nb.getType()==OrderChangeType.JXMBG.getCode()){
-											nb.setProcessState(OrderChangeProcess.JSZJ.getCode());
-
-										}else{
-											nb.setProcessState(OrderChangeProcess.JSZJ.getCode());
-										}
-									}
-								}
+								addOrderChangeLog("无咨询师自动通过", status, orderNo, nb.getId());
+								upshZXSJLprocess(nb);
 							}
 						}else if (nb.getType()==OrderChangeType.JJEBG.getCode()){
 							nb.setProcessState(OrderChangeProcess.JSZJ.getCode());
+						}else if (nb.getType()==OrderChangeType.ZS.getCode()){
+							nb.setProcessState(OrderChangeProcess.CWZY.getCode());
 						}
 					}else if (nb.getProcessState()==OrderChangeProcess.JSY.getCode()){
 						//咨询师审核,将自己审核的全部标记已审核
 						orderExamineMapper.updateByOrderNoAndAid(orderNo,TokenManager.getAdminId(),0);
 						int wsh=orderExamineMapper.checkCountStatus(orderNo,0,0);
 						if (wsh==0){
-							if (nb.getType()==OrderChangeType.CB.getCode()){
-								nb.setProcessState(OrderChangeProcess.CWZY.getCode());
-							}else if (nb.getType()==OrderChangeType.JXMBG.getCode()){
-								nb.setProcessState(OrderChangeProcess.JSZJ.getCode());
-							}else if (nb.getType()==OrderChangeType.XMJJEBG.getCode()||nb.getType()==OrderChangeType.TDTK.getCode()||
-									nb.getType()==OrderChangeType.TDBTK.getCode()){
-								int zxsjl=orderExamineMapper.checkCountStatus(orderNo,1,null);
-								if (zxsjl>0){
-									nb.setProcessState(OrderChangeProcess.JSJL.getCode());
-								}else {
-									nb.setProcessState(OrderChangeProcess.JSZJ.getCode());
-								}
-							}
+							upshZXSJLprocess( nb);
 						}
 
 					}else if (nb.getProcessState()==OrderChangeProcess.JSJL.getCode()){
@@ -422,17 +392,43 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
 				orderExamineMapper.updateByOrderNo(orderNo,null);
 			}
 		}
-		OrderChangeLog ocl=new OrderChangeLog();
+		addOrderChangeLog(remarks, status, orderNo, nb.getId());
+		sendNotice(status,nb);
+		pushOrderCangeProcess(nb);
+		newOrderChangeMapper.updateByPrimaryKeySelective(nb);
+		return 1;
+	}
+
+	private void upshZXSJLprocess(NewOrderChangeBo nb) {
+		int zxsjl=orderExamineMapper.checkCountStatus(nb.getOrderNo(),1,null);
+		if (nb.getType()==OrderChangeType.XMJJEBG.getCode()||
+				nb.getType()==OrderChangeType.TDTK.getCode()||
+				nb.getType()==OrderChangeType.TDBTK.getCode()||
+				nb.getType()==OrderChangeType.CB.getCode()||
+				nb.getType()==OrderChangeType.JXMBG.getCode()){
+			if (zxsjl>0){
+				nb.setProcessState(OrderChangeProcess.JSJL.getCode());
+			}else {
+				addOrderChangeLog("无咨询师经理自动通过", nb.getStatus(), nb.getOrderNo(), nb.getId());
+				//重报 没有技术员跳入财务
+				if (nb.getType()==OrderChangeType.CB.getCode()){
+					nb.setProcessState(OrderChangeProcess.CWZY.getCode());
+					//项目变更没有跳入技术总监
+				}else{
+					nb.setProcessState(OrderChangeProcess.JSZJ.getCode());
+				}
+			}
+		}
+	}
+
+	private void addOrderChangeLog(String remarks, Integer status, String orderNo, Integer id) {
+		OrderChangeLog ocl = new OrderChangeLog();
 		ocl.setAuditor(TokenManager.getAdminId());
 		ocl.setOrderNo(orderNo);
 		ocl.setRemarks(remarks);
-		ocl.setChangeId(nb.getId());
+		ocl.setChangeId(id);
 		ocl.setStatus(status);
 		orderChangeLogMapper.insertSelective(ocl);
-		sendNotice(status,nb);
-		pushOrderCangeProcess(nb);
-		newOrderChangeMapper.updateByPrimaryKeySelective(nb);
-		return 1;
 	}
 
 	private void sendNotice(Integer status,NewOrderChangeBo nb) {
@@ -648,13 +644,7 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
 			noc.setApplicant(t.getApplicant());
 			noc.setStatus(1);//订单置为正常
 			noc.setDepName(t.getDepName());
-			OrderChangeLog ocl=new OrderChangeLog();
-			ocl.setAuditor(TokenManager.getAdminId());
-			ocl.setOrderNo(t.getOrderNo());
-			ocl.setRemarks(startRemarks==null?"":startRemarks);
-			ocl.setChangeId(noc.getId());
-			ocl.setStatus(0);
-			orderChangeLogMapper.insertSelective(ocl);
+			addOrderChangeLog(startRemarks==null?"":startRemarks, 0, t.getOrderNo(), noc.getId());
 			if(t.getType()!=0)chekeAmout(t);
 			TOrderNew ton=new TOrderNew();
 			ton.setOrderNo(noc.getOrderNo());
@@ -665,13 +655,7 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
 				if (tOrderNew.getManagerName()!=null){
 					noc.setProcessState(OrderChangeProcess.YXJL.getCode());
 				}else {
-					OrderChangeLog cl=new OrderChangeLog();
-					cl.setAuditor(TokenManager.getAdminId());
-					cl.setOrderNo(t.getOrderNo());
-					cl.setRemarks("未设置营销经理自动通过");
-					cl.setChangeId(noc.getId());
-					cl.setStatus(2);
-					orderChangeLogMapper.insertSelective(cl);
+					addOrderChangeLog("未设置营销经理自动通过", 2, t.getOrderNo(), noc.getId());
 					noc.setProcessState(OrderChangeProcess.YXGLY.getCode());
 				}
 			}else {
@@ -815,13 +799,7 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
 		newOrderChangeMapper.updateByPrimaryKeySelective(nb);
 		TOrderNewBo order=tOrderNewMapper.getSaleIdByOno(nb.getOrderNo());
 		List<String> alist = getAllAid(nb.getId());
-		OrderChangeLog ocl=new OrderChangeLog();
-		ocl.setAuditor(TokenManager.getAdminId());
-		ocl.setOrderNo(nb.getOrderNo());
-		ocl.setRemarks("变更完成。");
-		ocl.setChangeId(nb.getId());
-		ocl.setStatus(4);
-		orderChangeLogMapper.insertSelective(ocl);
+		addOrderChangeLog("变更完成。", 4, nb.getOrderNo(), nb.getId());
 		orderNewService.pushGeneralSendNoticeAndEmail(alist,NoticeStatus.ORDER_CHANGE_END.getCode(), order, TokenManager.getAdminId(),0);
 		return 1;
 	}
@@ -857,13 +835,7 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
 		nb.setExamineName("");
 		nb.setType(nob.getType());
 		newOrderChangeMapper.updateByPrimaryKeySelective(nb);
-		OrderChangeLog ocl=new OrderChangeLog();
-		ocl.setAuditor(TokenManager.getAdminId());
-		ocl.setOrderNo(nob.getOrderNo());
-		ocl.setRemarks("变更财务退票。");
-		ocl.setChangeId(nb.getId());
-		ocl.setStatus(2);
-		orderChangeLogMapper.insertSelective(ocl);
+		addOrderChangeLog("变更财务退票。", 2, nob.getOrderNo(), nb.getId());
 		orderNewService.pushGeneralSendNoticeAndEmail(alist,NoticeStatus.ORDER_CHANGE_YES.getCode(), o, TokenManager.getAdminId(),0);
 		nb.setStatus(4);
 		pushCompleteOrderChange(nb);
@@ -1435,13 +1407,7 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
 				TOrderNew t=new TOrderNew();
 				t.setOrderNo(nb.getOrderNo());
 				t.setDeleteSign(0);
-				OrderChangeLog ocl=new OrderChangeLog();
-				ocl.setAuditor(TokenManager.getAdminId());
-				ocl.setOrderNo(nb.getOrderNo());
-				ocl.setRemarks("变更撤销成功");
-				ocl.setChangeId(nb.getId());
-				ocl.setStatus(5);
-				orderChangeLogMapper.insertSelective(ocl);
+				addOrderChangeLog("变更撤销成功", 5, nb.getOrderNo(), nb.getId());
 				tOrderNewMapper.updateByPrimaryKeySelective(t);
 				return 1;
 			}