From 425675051e544cf29b2132615cfbf7a93dc5e51f Mon Sep 17 00:00:00 2001
From: cy <1664593601@qq.com>
Date: 星期三, 22 六月 2022 15:50:59 +0800
Subject: [PATCH] fix(dm): MySQL=》DMSQL

---
 src/cn/ksource/web/facade/question/QuestionFacadeImpl.java | 1081 ++++++++++++++++++++++++++++----------------------------
 1 files changed, 541 insertions(+), 540 deletions(-)

diff --git a/src/cn/ksource/web/facade/question/QuestionFacadeImpl.java b/src/cn/ksource/web/facade/question/QuestionFacadeImpl.java
index 462db7c..f81b635 100644
--- a/src/cn/ksource/web/facade/question/QuestionFacadeImpl.java
+++ b/src/cn/ksource/web/facade/question/QuestionFacadeImpl.java
@@ -29,37 +29,37 @@
 
 @Service("questionFacade")
 public class QuestionFacadeImpl implements QuestionFacade {
-	
+
 	@Autowired
 	private BaseDao baseDao;
-	
+
 	@Autowired
 	private FileService fileService;
-	
+
 	@Autowired
 	private RecordService recordService;
-	
+
 	@Autowired
 	private OrderService orderService;
-	
+
 	@Autowired
 	private DeviceService deviceService;
-	
+
 	@Autowired
 	private WorkOrderCodeService workOrderCodeService;
-	
+
 	@Autowired
 	private WorkflowBusinessService workflowBusinessService;
-	
+
 	@Autowired
 	private WorkflowCoreService workflowCoreService;
-	
+
 	@Autowired
 	private MessageFacade messageFacade;
-	
+
 	@Autowired
 	private DataDictionaryService dataDictionaryService;
-	
+
 	@Override
 	public Map getQuestionMsgByOrderId(HttpServletRequest request) {
 		String orderId = request.getParameter("changeId");
@@ -90,7 +90,7 @@
 	@Override
 	public Map saveQuestion(HttpServletRequest request,
 			SC_WORKFLOW_QUESTION sc_workflow_question) {
-		
+
 		String changeId = request.getParameter("changeId");
 		String bustype = request.getParameter("bustype");
 		Map resultMap = new HashMap();
@@ -102,7 +102,7 @@
 		String bz = request.getParameter("bz");
 		String userId = ConvertUtil.obj2StrBlank(user.get("ID"));
 		String userName = ConvertUtil.obj2StrBlank(user.get("ZSXM"));
-		
+
 		String serivceListId = request.getParameter("serivceListId");
 		String serivceList = request.getParameter("serivceList");
 		String first_category_id = new String();
@@ -111,7 +111,7 @@
 		String second_category_name = new String();
 		String third_category_id = new String();
 		String third_category_name = new String();
-			
+
 		if(StringUtil.notEmpty(serivceListId) && StringUtil.notEmpty(serivceList)) {
 			String[] serivceListIds = serivceListId.split("-");
 			String[] serivceLists = serivceList.split("->");
@@ -135,7 +135,7 @@
 				nextnodeid = userMsg[1];
 				dealUserId = userMsg[2];
 				dealUserName = userMsg[3];
-				
+
 				if(nextnodeid.equals(Constants.WTSL)) {
 					state = Constants.SC_WORKFLOW_QUESTION_STATE_SL;
 				} else if(nextnodeid.equals(Constants.WTSH)) {
@@ -151,7 +151,7 @@
 				}else{
 					state = Constants.SC_WORKFLOW_QUESTION_STATE_YDJ;
 				}
-				
+
 				String sla_id = request.getParameter("sla_id");
 				String sla_name = request.getParameter("sla_name");
 				String order_code = workOrderCodeService.getQuestionOrderCode();
@@ -164,15 +164,15 @@
 					sc_workflow_question.setCreate_user_id(userId).setCreate_user_name(userName).setCreate_time(createTime);
 					sc_workflow_question.setOrder_code(order_code);
 				}
-				
+
 				sc_workflow_question.setState(ConvertUtil.obj2Integer(state)).setFlow_name(sc_workflow_question.getName()).insertOrUpdate();
-				
+
 				//鑾峰彇褰撳墠鎵�澶勭殑鑺傜偣
 				Map flowMsg = getFlowMsg(flowId,userId);
 				String nodeid = ConvertUtil.obj2StrBlank(flowMsg.get("ID"));
 				String nodeName = ConvertUtil.obj2StrBlank(flowMsg.get("NODENAME"));
 				if("1".equals(sh)){
-					
+
 					//澧炲姞闂澶勭悊璁板綍
 					GG_RECORD record = new GG_RECORD();
 					record.setDeal_content("淇敼闂锛�"+userName+"淇敼浜嗛棶棰樹俊鎭�");
@@ -183,9 +183,9 @@
 					record.setNode_id(nodeid).setNode_name(nodeName);
 					recordService.addRecord(record);
 				}
-				
-				
-				
+
+
+
 				if(!"1".equals(sh)){
 					WORKFLOW_BASE base = new WORKFLOW_BASE();
 					if(!"2".equals(sh)){
@@ -202,9 +202,9 @@
 						recordService.addRecord(record);
 						flowId = base.getId();
 					}else{
-						
+
 						base = new WORKFLOW_BASE(flowId).getInstanceById();
-						
+
 						NodeFinishEntity finishEntity = new NodeFinishEntity();
 						finishEntity.setDeal_result(1);
 						finishEntity.setDeal_note_title(userName+"瀹屾垚浜嗚妭鐐�");
@@ -212,10 +212,10 @@
 						WORKFLOW_NODE node = new WORKFLOW_NODE(nodeId).getInstanceById();
 						//鍏抽棴褰撳墠鑺傜偣
 						workflowCoreService.finishNode(base, node, finishEntity);
-						
+
 					}
-					
-					
+
+
 					NodeDealEntity entity = new NodeDealEntity();
 					List<Map> userMap = new ArrayList();
 					if("2".equals(sh)){
@@ -242,7 +242,7 @@
 						dealer_type = getDealUser(entity,flowId,dealer_type,userMap,dealUserId,dealUserName);
 					}
 					workflowCoreService.toNode(base,nextnodeid , entity);
-					
+
 					String hasMsg = request.getParameter("hasMsg");
 					/*if(StringUtil.notEmptyNum(hasMsg) && hasMsg.equals("2")) {
 						//淇濆瓨鑱旂郴浜虹殑淇℃伅
@@ -267,8 +267,8 @@
 					.setType(Constants.GG_MESSAGE_TYPE_WTGL);
 					messageFacade.doSendMessage(message, userMap);
 					resultMap.put("result", 1);
-					
-					
+
+
 				}
 				String usertype = "1";
 				if("1".equals(dealer_type)){
@@ -284,7 +284,7 @@
 				} else if(nextnodeid.equals(Constants.WTSH)) {
 					baseDao.execute("UPDATE WORKFLOW_PARAMETER SET PVALUE=:PVALUE WHERE WORKFLOWID = :WORKFLOWID AND PNAME = :PNAME ", paramuser);
 				}
-			
+
 				Map paramrecord = new HashMap();
 				paramrecord.put("flowId", flowId);
 				//鎻愪氦宸ュ崟鏃舵坊鍔犲叧鑱斿伐鍗�
@@ -292,11 +292,11 @@
 				baseDao.execute("DELETE FROM ORDER_REF_ORDER WHERE BUSINESS_ID = :flowId ", paramrecord);
 				String[] orderId = request.getParameterValues("orderId");
 				orderService.saveLinkOrders(flowId,orderId,request);
-				
+
 				//鎻愪氦宸ュ崟鏃朵笂浼犳枃妗i檮浠�
 				fileService.uploadFile(request,flowId,flowId,null,null,Constants.GG_FOLDERS_WTFOLDERS,Constants.FILE_STATE_SHTG,null);
-				
-				
+
+
 				//鎻愪氦宸ュ崟鏃舵坊鍔犲叧鑱旇澶�
 				//鍏堝垹闄ゅ凡瀛樺湪鐨勮澶�
 				baseDao.execute("DELETE FROM CMDB_CI_REF_ORDER WHERE FLOW_ID = :flowId ", paramrecord);
@@ -315,19 +315,19 @@
 					zcyw.setQuestionid(sc_workflow_question.getId()).update();
 				}
 			}
-			
+
 		}else{
 			resultMap.put("nouser", "1");
 		}
 		return resultMap;
 	}
-	
+
     public String getDealUser(NodeDealEntity entity,String flowId,String dealer_type,List<Map> userMap,String dealUserId,String dealUserName) {
     	Map param = new HashMap();
 		param.put("ID", StringUtil.getUUID());
 		param.put("WORKFLOWID", flowId);
 		param.put("PNAME", "澶勭悊浜�");
-    	
+
     	entity.setDealer_type(3);
 		if(dealer_type.equals("1")||dealer_type.equals("3")) {
 			entity.setBefore_Dealer_type(2);
@@ -350,7 +350,7 @@
 					map.put("USER_ID", userList2[i]);
 					map.put("USER_NAME", cacheuser.get(userList2[i]));
 				}
-				
+
 				userMap.add(map);
 			}
 			dealer_type = "2";
@@ -365,7 +365,7 @@
 			dealer_type = "1";
 		}
 		entity.setDealerList(userMap);
-		
+
 		baseDao.execute("INSERT INTO WORKFLOW_PARAMETER(ID,WORKFLOWID,PNAME,PVALUE) VALUES(:ID,:WORKFLOWID,:PNAME,:PVALUE)", param);
 		return dealer_type;
 	}
@@ -373,46 +373,46 @@
 	@Override
 	public Map queryQuestionCount(HttpServletRequest request) {
         //鍒濆鍖栧彉閲�
-		
+
 		//闂鍙楃悊鍝嶅簲涓�
 		int wtsldxy = 0;
 		//闂鍙楃悊澶勭悊涓�
 		int wtslclz = 0;
-		
+
 		//闂瀹℃牳寰呭搷搴�
 		int wtshdxy = 0;
 		//闂瀹℃牳澶勭悊涓�
 		int wtshclz = 0;
-		
+
 		//闂璇婃柇寰呭搷搴�
 		int wtzddxy = 0;
 		//闂璇婃柇澶勭悊涓�
 		int wtzdclz = 0;
-		
-		
+
+
 		//鏂规瀹℃壒寰呭搷搴�
 		int faspdxy = 0;
 		//鏂规瀹℃壒澶勭悊涓�
 		int faspclz = 0;
-		
+
 		//鏂规瀹炴柦寰呭搷搴�
 		int fassdxy = 0;
 		//鏂规瀹炴柦澶勭悊涓�
 		int fassclz = 0;
-		
+
 		//闂鍥為【寰呭搷搴�
 		int wthgdxy = 0;
 		//闂鍥為【澶勭悊涓�
 		int wthgclz = 0;
-		
+
 		//宸插畬鎴�
 		int ywc = 0;
 		//杩涜涓�
 		int jxz = 0;
-		
+
 		StringBuffer selectSql = new StringBuffer();
 		StringBuffer sql = new StringBuffer();
-		
+
 		Map paramMap = new HashMap();
 		selectSql.append("SELECT COUNT(*) AS NUM,A.STATE,C.FLOWSTATE FROM SC_WORKFLOW_QUESTION A,WORKFLOW_BASE B LEFT JOIN WORKFLOW_NODE C ON B.ID = C.FLOWID AND B.CURRENT_NODE_ID = C.ID  WHERE A.ID = B.BUSINESS_ID  AND C.FLOWSTATE is not null   ");
 		sql.append("SELECT COUNT(ID) FROM SC_WORKFLOW_QUESTION WHERE STATE != :yjj AND STATE !=:gb AND STATE != :ypj ");
@@ -422,9 +422,9 @@
 		   sql.append(" AND CUSTOMER_ID = :customerId ");
 		   paramMap.put("customerId", customerId);
 	    }
-	    	   
+
 		paramMap.put("flowstate", 3);
-		
+
 		selectSql.append(" GROUP BY A.STATE,C.FLOWSTATE ");
 		List<Map> list = baseDao.queryForList(selectSql.toString(),paramMap);
 		if(null!=list && list.size()>0) {
@@ -459,7 +459,7 @@
 					}
 					continue;
 				}
-				
+
 				if(state.equals(Constants.SC_WORKFLOW_QUESTION_STATE_FASP)) {
 					if(flowstate == Constants.WORKFLOW_NODE_FLOWSTATE_UNDISPOSE){
 						faspdxy += num;
@@ -468,7 +468,7 @@
 					}
 					continue;
 				}
-				
+
 				if(state.equals(Constants.SC_WORKFLOW_QUESTION_STATE_FASS)) {
 					if(flowstate == Constants.WORKFLOW_NODE_FLOWSTATE_UNDISPOSE){
 						fassdxy += num;
@@ -477,7 +477,7 @@
 					}
 					continue;
 				}
-				
+
 				if(state.equals(Constants.SC_WORKFLOW_QUESTION_STATE_HG)) {
 					if(flowstate == Constants.WORKFLOW_NODE_FLOWSTATE_UNDISPOSE){
 						wthgdxy += num;
@@ -486,51 +486,51 @@
 					}
 					continue;
 				}
-				
+
 				if(state.equals(Constants.SC_WORKFLOW_QUESTION_STATE_YWC)) {
 					ywc += num;
 					continue;
 				}
-				
+
 				if(state.equals(Constants.SC_WORKFLOW_QUESTION_STATE_YPJ)) {
 					ywc += num;
 					continue;
 				}
-				
+
 			}
 		}
-		
+
 		Map map = new HashMap();
 		map.put("wtsldxy", wtsldxy);
 		map.put("wtslclz", wtslclz);
-		
+
 		map.put("wtshdxy", wtshdxy);
 		map.put("wtshclz", wtshclz);
-		
+
 		map.put("wtzddxy", wtzddxy);
 		map.put("wtzdclz", wtzdclz);
-		
+
 		map.put("faspdxy", faspdxy);
 		map.put("faspclz", faspclz);
-		
+
 		map.put("fassdxy", fassdxy);
 		map.put("fassclz", fassclz);
-		
+
 		map.put("wthgdxy", wthgdxy);
 		map.put("wthgclz", wthgclz);
-		
+
 		//鏌ヨ璇ュ姞鐩熷晢鏈畬鎴愮殑浜嬩欢
-		
+
 		paramMap.put("yjj", Constants.SC_WORKFLOW_QUESTION_STATE_YWC);
 		paramMap.put("gb", Constants.SC_WORKFLOW_QUESTION_STATE_YGB);
 		paramMap.put("ypj", Constants.SC_WORKFLOW_QUESTION_STATE_YPJ);
-		
-		
+
+
 		jxz = baseDao.queryForInteger(sql.toString(),paramMap);
-		
+
 		map.put("ywc", ywc);
 		map.put("jxz", jxz);
-		
+
 		return map;
 	}
 
@@ -538,21 +538,21 @@
 	public int queryQuestionOrderCount(Map<String, String> params) {
 		StringBuilder sql = new StringBuilder();
 		StringBuilder sqlpart = new StringBuilder();
-		
+
 		sql.append("SELECT COUNT(WB.ID) FROM SC_WORKFLOW_QUESTION B,WORKFLOW_BASE WB LEFT JOIN WORKFLOW_NODE C ON  C.FLOWID = WB.ID AND WB.CURRENT_NODE_ID = C.ID AND C.FLOWSTATE <> 3  ");
 		sqlpart.append(" WHERE WB.BUSINESS_ID = B.ID AND WB.BUSINESSTYPE = :businessType ");
 		sqlpart = getOrderSql(sqlpart,params);
 		sql.append(sqlpart);
 		params.put("businessType", ConvertUtil.obj2StrBlank(Constants.WORKFLOW_BASE_BUSINESS_TYPE_QUESTION));
-		
+
 		return baseDao.queryForInteger(sql.toString(),params);
 	}
 
 	@Override
 	public PageInfo queryQuestionOrderList(PageInfo pageInfo,
 			Map<String, String> params) {
-		
-		
+
+
 		StringBuilder sql = new StringBuilder();
 		StringBuilder sqlpart = new StringBuilder();
 		sql.append("SELECT WB.ID,WB.ORDER_CODE,WB.WFNAME,WB.BUSINESSTYPE,WB.CREATERNAME,WB.CREATETIME,WB.WFNOTE,C.FLOWSTATE , ");
@@ -561,45 +561,45 @@
 		sqlpart.append(" WHERE WB.BUSINESS_ID = B.ID AND WB.BUSINESSTYPE = :businessType ");
 		params.put("businessType", ConvertUtil.obj2StrBlank(Constants.WORKFLOW_BASE_BUSINESS_TYPE_QUESTION));
 		sqlpart = getOrderSql(sqlpart,params);
-		
+
 		sql.append(sqlpart);
 		sql.append( " ORDER BY WB.CREATETIME DESC ");
-		
+
 		return baseDao.queryforSplitPageInfo(pageInfo, sql.toString(), params);
 	}
-	
+
 	public StringBuilder getOrderSql(StringBuilder sqlpart,Map<String, String> params){
 		String customerid = params.get("customerId");
 		if(StringUtil.notEmpty(customerid)) {
 			sqlpart.append(" AND B.CUSTOMER_ID = :customerId ");
 		}
-		
+
 		String subCustomerId = params.get("subCustomerId");
 		if(StringUtil.notEmpty(subCustomerId)) {
 			sqlpart.append(" AND B.SUB_CUSTOMER_ID = :subCustomerId ");
 			params.put("subCustomerId", subCustomerId);
 		}
-		
+
 		String orderName = params.get("orderName");
 		if(StringUtil.notEmpty(orderName)) {
 			sqlpart.append(" AND B.NAME LIKE :orderName ");
 			params.put("orderName", "%"+orderName+"%");
 		}
-		
+
 		String orderCode = params.get("orderCode");
 		if(StringUtil.notEmpty(orderCode)) {
 			sqlpart.append(" AND B.ORDER_CODE LIKE :orderCode ");
 			params.put("orderCode", "%"+orderCode+"%");
 		}
-		
-		
+
+
 		String contract = params.get("contract");
 		if(StringUtil.notEmpty(contract)) {
 			sqlpart.append(" AND B.CONTACT_NAME LIKE :contract ");
 			params.put("contract", "%"+contract+"%");
 		}
-		
-		
+
+
 		String pri = params.get("pri");
 		if(StringUtil.notEmpty(pri)) {
 			String[] pris = pri.split(",");
@@ -617,9 +617,9 @@
 				sqlpart.append(")");
 			}
 		}
-		
-		
-		
+
+
+
 		String dg = params.get("dg");
 		if(StringUtil.notEmpty(dg)) {
 			String[] dgs = dg.split(",");
@@ -637,8 +637,8 @@
 				sqlpart.append(")");
 			}
 		}
-		
-		
+
+
 		String source = params.get("source");
 		if(StringUtil.notEmpty(source)) {
 			String[] sources = source.split(",");
@@ -656,8 +656,8 @@
 				sqlpart.append(")");
 			}
 		}
-		
-		
+
+
 		String sl = params.get("sl");
 		if(StringUtil.notEmpty(sl)) {
 			String[] sls = sl.split(",");
@@ -694,10 +694,10 @@
 					sqlpart.append( "  AND C.FLOWSTATE = :flowstate ");
 					params.put("flowstate", state[1]);
 				}
-				
-				
+
+
 			}
-			
+
 		}
 		return sqlpart;
 	}
@@ -706,7 +706,7 @@
 	public int queryMyQuestionCount(Map<String, String> params) {
 		StringBuilder builder = new StringBuilder();
 		params.put("ysc",ConvertUtil.obj2StrBlank( Constants.WORKFLOW_BASE_WFSTATE_DELETE));
-		
+
 		/**
 		 * 鏌ヨ閫昏緫
 		 * 1.濡傛灉鑺傜偣鐘舵�侀�夋嫨涓哄叏閮紝鍒欐煡璇㈣妭鐐硅〃涓鐞嗕汉鏄垜鐨勶紝鎴栬�呭鐞嗚鑹叉槸鎴戠殑骞朵笖娌℃湁鍒嗛厤澶勭悊浜虹殑锛�
@@ -715,7 +715,7 @@
 		 * 3.濡傛灉鑺傜偣鐘舵�侀�夋嫨涓鸿繘琛屼腑锛屽垯鏌ヨ鑺傜偣琛ㄤ腑澶勭悊浜烘槸鎴戠殑 锛堜笉闇�瑕佽繃婊わ紝鍥犱负涓�涓伐鍗曡繘琛屼腑鑺傜偣锛屽彧浼氭湁涓�涓級
 		 * 4.濡傛灉鑺傜偣鐘舵�佹煡璇㈡湭宸插鐞嗭紝鍒欐煡璇㈣妭鐐硅〃涓鐞嗕汉鏄垜鐨勶紝闇�瑕佽繃婊わ紙鍥犱负涓�涓妭鐐逛竴涓汉鍙互澶勭悊澶氭锛岄�氳繃鑺傜偣琛ㄤ綔涓轰富琛ㄦ煡璇㈠嚭鏉ョ殑宸ュ崟浼氭湁閲嶅锛�
 		 */
-		
+
 		String flowstate = params.get("flowstate");
 		if(StringUtil.notEmpty(flowstate)) {
 			if(flowstate.equals("1")) {
@@ -745,28 +745,28 @@
 			builder.append(")D");
 			builder.append(" WHERE  D.WFSTATE != :ysc  ");
 		}
-		
+
 		builder = getMyquestionSql(builder,params);
-		
+
 		builder.append(" AND D.BUSINESSTYPE = :businessType");
 		params.put("businessType", ConvertUtil.obj2StrBlank(Constants.WORKFLOW_BASE_BUSINESS_TYPE_QUESTION));
-		
+
 		StringBuilder newBuild = new StringBuilder();
 		newBuild.append("SELECT COUNT(*) FROM ( ");
 		newBuild.append(builder.toString());
 		newBuild.append(") E");
-		
+
 		return baseDao.queryForInteger(newBuild.toString(),params);
 	}
 
 	@Override
 	public PageInfo queryMyQuestionData(PageInfo pageInfo,
 			Map<String, String> params) {
-		
+
 		StringBuilder builder = new StringBuilder();
 		params.put("ysc", ConvertUtil.obj2StrBlank(Constants.WORKFLOW_BASE_WFSTATE_DELETE));
-		
-		
+
+
 		/**
 		 * 鏌ヨ閫昏緫
 		 * 1.濡傛灉鑺傜偣鐘舵�侀�夋嫨涓哄叏閮紝鍒欐煡璇㈣妭鐐硅〃涓鐞嗕汉鏄垜鐨勶紝鎴栬�呭鐞嗚鑹叉槸鎴戠殑骞朵笖娌℃湁鍒嗛厤澶勭悊浜虹殑锛�
@@ -775,14 +775,14 @@
 		 * 3.濡傛灉鑺傜偣鐘舵�侀�夋嫨涓鸿繘琛屼腑锛屽垯鏌ヨ鑺傜偣琛ㄤ腑澶勭悊浜烘槸鎴戠殑 锛堜笉闇�瑕佽繃婊わ紝鍥犱负涓�涓伐鍗曡繘琛屼腑鑺傜偣锛屽彧浼氭湁涓�涓級
 		 * 4.濡傛灉鑺傜偣鐘舵�佹煡璇㈡湭宸插鐞嗭紝鍒欐煡璇㈣妭鐐硅〃涓鐞嗕汉鏄垜鐨勶紝闇�瑕佽繃婊わ紙鍥犱负涓�涓妭鐐逛竴涓汉鍙互澶勭悊澶氭锛岄�氳繃鑺傜偣琛ㄤ綔涓轰富琛ㄦ煡璇㈠嚭鏉ョ殑宸ュ崟浼氭湁閲嶅锛�
 		 */
-		
+
 		String flowstate = params.get("flowstate");
 		if(StringUtil.notEmpty(flowstate)) {
 			if(flowstate.equals("1")) {
 				builder.append(" SELECT D.* FROM ( ");
 				//鏌ヨ澶勭悊浜烘槸鎴戠殑
 				builder.append(" SELECT B.*,A.FLOWSTATE,C.NAME,C.CONTACT_NAME,C.PRIORITY_ID,C.INFLUENCE_ID,C.THIRD_CATEGORY_ID,C.SOURCE_ID,C.STATE FROM WORKFLOW_NODE A,WORKFLOW_BASE B,SC_WORKFLOW_QUESTION C WHERE A.FLOWID = B.ID AND B.BUSINESS_ID = C.ID  AND A.CURRENT_DEALER_ID = :userId ");
-				
+
 				builder.append(")D");
 				builder.append(" WHERE D.FLOWSTATE = :jddcl ");
 				params.put("jddcl", ConvertUtil.obj2StrBlank(Constants.WORKFLOW_NODE_FLOWSTATE_UNDISPOSE));
@@ -807,10 +807,10 @@
 			builder.append(" WHERE D.WFSTATE != :ysc ");
 		}
 		builder = getMyquestionSql(builder,params);
-		
+
 		builder.append(" AND D.BUSINESSTYPE = :businessType");
 		params.put("businessType", ConvertUtil.obj2StrBlank(Constants.WORKFLOW_BASE_BUSINESS_TYPE_QUESTION));
-		
+
 		String pageSize = pageInfo.getPageSize();
 		String currPage = pageInfo.getCurrPage();
 		if(!StringUtil.notEmptyNum(pageSize)){
@@ -821,7 +821,7 @@
 		}
 		int begin = Integer.valueOf(currPage);
 		int size = Integer.valueOf(pageSize);
-		
+
 		if(!StringUtil.notEmpty(flowstate)) {
 			builder.append( " ORDER BY D.FLOWSTATE,D.CREATETIME DESC" );
 			List<Map> result = baseDao.queryForList(builder.toString(),params);
@@ -844,14 +844,14 @@
 						list.add(flowId);
 					}
 				}
-				
+
 				if(cacheMap.size()>0) {
 					for(String str : list) {
 						resultList.add(cacheMap.get(str));
 					}
 				}
 			}
-			
+
 			int infoCount = resultList.size();
 			int bin = (begin-1)* size ;
 			int end = (begin-1)* size + size;
@@ -868,7 +868,7 @@
 			return result;
 		}
 	}
-	
+
 	public StringBuilder getMyquestionSql(StringBuilder builder,Map<String, String> params){
 		String customerId = params.get("customerId");
 		if(StringUtil.notEmpty(customerId)) {
@@ -879,39 +879,39 @@
 			builder.append(" AND D.SUB_CUSTOMER_ID = :subCustomerId ");
 			params.put("subCustomerId", subCustomerId);
 		}
-		
+
 		String status = params.get("status");
 		if(StringUtil.notEmpty(status)) {
 			builder.append(" AND D.WFSTATE = :status ");
 			params.put("status", status);
 		}
-		
+
 		String orderName = params.get("orderName");
 		if(StringUtil.notEmpty(orderName)) {
 			builder.append(" AND D.NAME LIKE :orderName ");
 			params.put("orderName", "%"+orderName+"%");
 		}
-		
-		
+
+
 		String hjName = params.get("hjName");
 		if(StringUtil.notEmpty(hjName)) {
 			builder.append(" AND D.CURRENT_NODE_NAME LIKE :hjName ");
 			params.put("hjName", "%"+hjName+"%");
 		}
-		
+
 		String orderCode = params.get("orderCode");
 		if(StringUtil.notEmpty(orderCode)) {
 			builder.append(" AND D.ORDER_CODE LIKE :orderCode");
 			params.put("orderCode", "%"+orderCode+"%");
 		}
 
-		
+
 		String contract = params.get("contract");
 		if(StringUtil.notEmpty(contract)) {
 			builder.append(" AND D.CONTACT_NAME LIKE :contract ");
 			params.put("contract", "%"+contract+"%");
 		}
-		
+
 		String pri = params.get("pri");
 		if(StringUtil.notEmpty(pri)) {
 			String[] pris = pri.split(",");
@@ -929,9 +929,9 @@
 				builder.append(")");
 			}
 		}
-		
-		
-		
+
+
+
 		String dg = params.get("dg");
 		if(StringUtil.notEmpty(dg)) {
 			String[] dgs = dg.split(",");
@@ -949,8 +949,8 @@
 				builder.append(")");
 			}
 		}
-		
-		
+
+
 		String source = params.get("source");
 		if(StringUtil.notEmpty(source)) {
 			String[] sources = source.split(",");
@@ -968,8 +968,8 @@
 				builder.append(")");
 			}
 		}
-		
-		
+
+
 		String sl = params.get("sl");
 		if(StringUtil.notEmpty(sl)) {
 			String[] sls = sl.split(",");
@@ -989,10 +989,10 @@
 		}
 		return builder;
 	}
-	
+
 	@Override
 	public Map queryLevel(String priority_id, String influence_id,String customerId) {
-		
+
 		String selectSql = "SELECT LEVEL_ID,LEVEL_NAME FROM SC_SLA_LEVEL_CONFIG WHERE INFLUENCE_ID = :influence_id AND PRIORITY_ID = :priority_id AND CUSTOMER_ID = :customerId";
 		Map paramMap = new HashMap();
 		paramMap.put("influence_id", influence_id);
@@ -1001,7 +1001,7 @@
 		Map levelMap = baseDao.queryForMap(selectSql,paramMap);
 		return levelMap;
 	}
-	
+
 	@Override
 	public List<Map> getFlueNode(HttpServletRequest request) {
 		String flowId = request.getParameter("flowId");
@@ -1013,24 +1013,24 @@
 		} else {
 			currentNode = Constants.WTFQ;
 		}
-			
+
 		//鏌ヨ褰撳墠鑺傜偣鑳藉彂閫佺殑鑺傜偣
 		String selectSql = "SELECT * FROM QUESTION_FLOWRULE WHERE CUSTOMER_ID = :customer_id";
 		List<Map> list = baseDao.queryForList(selectSql,new SqlParameter("customer_id",customer_id));
 		Map prom = new HashMap();
 		if(null!=list && list.size()>0) {
 			prom = list.get(0);
-			
+
 			String json = ConvertUtil.obj2StrBlank(prom.get(Constants.questionNodeColunm.get(currentNode)));
 			List<Map> nodes = JsonUtil.json2List(json);
 			return nodes;
-			
+
 		}else{
 			String gsSql = "SELECT * FROM QUESTION_FLOWRULE WHERE (CUSTOMER_ID IS NULL OR CUSTOMER_ID = '')";
 			List<Map> gslist = baseDao.queryForList(gsSql);
 			if(null!=gslist && gslist.size()>0){
 				prom = gslist.get(0);
-				
+
 				String json = ConvertUtil.obj2StrBlank(prom.get(Constants.questionNodeColunm.get(currentNode)));
 				List<Map> nodes = JsonUtil.json2List(json);
 				return nodes;
@@ -1038,12 +1038,12 @@
 		}
 		return new ArrayList<Map>();
 	}
-	
+
 	public Map getCurrentNode(String flowId) {
 		String selectSql = "SELECT B.NODE_TEMPLATE_ID FROM WORKFLOW_BASE A,WORKFLOW_NODE B WHERE A.CURRENT_NODE_ID = B.ID AND A.ID = :id";
 		return baseDao.queryForMap(selectSql,new SqlParameter("id",flowId));
 	}
-	
+
 	@Override
 	public List<Map> getZdyGroupList(HttpServletRequest request) {
 		String customer_id = request.getParameter("customer_id");
@@ -1070,7 +1070,7 @@
 				map.put("userlist", userName.deleteCharAt(userName.lastIndexOf(",")));
 				map.put("useridlist", userId.deleteCharAt(userId.lastIndexOf(",")));
 			}
-			
+
 		}
 		return groupList;
 	}
@@ -1079,13 +1079,13 @@
 	public List<Map> groupuser(String groupId) {
 		String usersql = "SELECT * FROM CUSTOM_GROUP WHERE GROUP_ID = :group_id";
 		List<Map> groupuser = baseDao.queryForList(usersql, new SqlParameter("group_id",groupId));
-		
+
 		return groupuser;
 	}
 
 	@Override
 	public Map usersbyGroup(HttpServletRequest request) {
-		Map main = new HashMap(); 
+		Map main = new HashMap();
 		String groupId = request.getParameter("groupId");
 		String customer_id = request.getParameter("customer_id");
 		String usersql = "SELECT * FROM CUSTOM_GROUP WHERE ID = :group_id";
@@ -1105,11 +1105,11 @@
 		StringBuilder sql = new StringBuilder();
 		List<Map> cateList = new ArrayList<Map>();
 		List<Map> userList = new ArrayList<Map>();
-		
+
 		sql.setLength(0);
 		sql.append(" select G.ID ,G.ROLENAME from AC_USER_REF_ROLE U,AC_ROLE G WHERE G.ID = U.JSBH AND G.STATE=1 GROUP BY G.ID ORDER BY G.ID");
 		cateList = baseDao.queryForList(sql.toString(),param);
-		
+
 		sql.setLength(0);
 		sql.append(" select U.JSBH,G.ROLENAME,D.ID,D.ZSXM from AC_USER_REF_ROLE U,AC_ROLE G,GG_USER D WHERE G.ID = U.JSBH AND U.YHBH = D.ID AND D.ZT = 1 AND G.STATE=1 ORDER BY D.ID");
 		userList = baseDao.queryForList(sql.toString(),param);
@@ -1127,7 +1127,7 @@
 					}
 					tempList.add(userMap);
 				}
-				
+
 			}
 			tempMap.put("dataList", tempList);
 			resList.add(tempMap);
@@ -1143,11 +1143,11 @@
 		String groupId = request.getParameter("groupId");
 		String customer_id = request.getParameter("customer_id");
 		String groupname = request.getParameter("name");
-		//浜哄憳  
-		String[] user = request.getParameterValues("users");   
+		//浜哄憳
+		String[] user = request.getParameterValues("users");
 		//涓昏璐熻矗浜�
 		String userMain = request.getParameter("userid");
-		
+
 		String sqluser = "SELECT * FROM GG_USER  ";
 		List<Map> userList = baseDao.queryForList(sqluser);
 		Map cacheuser = new HashMap();
@@ -1155,9 +1155,9 @@
 			cacheuser.put(users.get("ID"), users.get("ZSXM"));
 		}
         List<Map> list = new ArrayList<Map>();
-        
+
 		Map cacheMap = new HashMap();
-        
+
 		for(int i=0;i<user.length;i++){
 			String userId = user[i];
 			if(!cacheMap.containsKey(userId)) {
@@ -1186,9 +1186,9 @@
 			.setCreate_time(DateUtil.getCurrentDate14());
 		}
 		group.insertOrUpdate();
-		
+
 	}
-	
+
 	/**
 	 * 閫氳繃orderid鑾峰彇娴佺▼淇℃伅
 	 */
@@ -1197,7 +1197,7 @@
 		String selectSql = "SELECT * FROM WORKFLOW_NODE WHERE FLOWID = :flowId AND CURRENT_DEALER_ID = :userId AND FLOWSTATE <> 3 ";
 		return baseDao.queryForMap(selectSql,new SqlParameter("flowId",flowId).addValue("userId", userId));
 	}
-	
+
 	@Override
 	public Map queryQuestionBaseMsg(String orderId) {
 		String selectSql = "SELECT A.*,B.WFSTATE,N.ANSWER_TIME,B.BUSINESSTYPE,B.CURRENT_DEALER_ID clr FROM SC_WORKFLOW_QUESTION A LEFT JOIN  WORKFLOW_BASE B ON A.ID = B.BUSINESS_ID LEFT JOIN WORKFLOW_NODE N ON B.CURRENT_NODE_ID = N.ID  WHERE A.ID = :orderId  ";
@@ -1242,15 +1242,15 @@
 
 		return baseMap;
 	}
-	
-	@Override	
+
+	@Override
     public String anwerSubmit(HttpServletRequest request){
-		
+
         WORKFLOW_BASE base = new WORKFLOW_BASE(request.getParameter("flowId")).getInstanceById();
-		
+
         WORKFLOW_NODE node = new WORKFLOW_NODE(request.getParameter("nodeId")).getInstanceById();
         NodeAnswerEntity entity = new NodeAnswerEntity();
-        
+
         Map user = WebUtil.getLoginUser(request).getLoginUser();
         entity.setUser_id(user.get("ID").toString());
         entity.setUser_name(user.get("ZSXM").toString());
@@ -1263,34 +1263,34 @@
 		Map map = baseDao.queryForMap(selectSql,new SqlParameter("questionid",base.getBusiness_id()));
 		String shouli_time = ConvertUtil.obj2StrBlank(map.get("SHOULI_TIME"));
 		long create_time = ConvertUtil.obj2Long(map.get("CREATE_TIME"));
-		
+
 		Map paramMap = new HashMap();
-		
-		
+
+
 		if(!StringUtil.notEmpty(shouli_time)) {
 			StringBuilder builder = new StringBuilder("UPDATE SC_WORKFLOW_QUESTION SET ");
 			long answer_time = DateUtil.getCurrentDate14();
-			
+
 			builder.append(" SHOULI_USERID = :shouli_userid,SHOULI_USERNAME = :shouli_username,SHOULI_TIME = :answerTime,SHOULI_USE_TIME = :answer_user_time ");
 			paramMap.put("answerTime",answer_time);
 			paramMap.put("shouli_userid",user.get("ID"));
 			paramMap.put("shouli_username",user.get("ZSXM"));
-			
+
 			//璁$畻绗竴娆″搷搴旀椂闂村拰鍒涘缓闂鐨勬椂闂村樊 灏嗘椂闂村樊杞寲涓哄垎閽�
 			long seconds = DateUtil.getSecondsFormDate2Date(create_time, answer_time);
 			//灏嗙杞寲涓哄垎閽�
 			double sjxysj = NumberUtil.div(ConvertUtil.obj2Double(seconds), ConvertUtil.obj2Double(60), 1);
-			
+
 			paramMap.put("answer_user_time", sjxysj);
-			
+
 			builder.append(" WHERE ID = :questionid");
 			paramMap.put("questionid", base.getBusiness_id());
 			baseDao.execute(builder.toString(), paramMap);
 		}
 		return "1";
-		
+
 	}
-	
+
 	@Override
 	public void updateQuestion(HttpServletRequest request,
 			SC_WORKFLOW_QUESTION sc_workflow_question) {
@@ -1318,8 +1318,8 @@
 		sc_workflow_question.setPri_level_id(sla_id).setPri_level(sla_name);
 		sc_workflow_question.setFirst_category_id(first_category_id).setFirst_category_name(first_category_name).setSecond_category_id(second_category_id)
 		.setSecond_category_name(second_category_name).setThird_category_id(third_category_id).setThird_category_name(third_category_name);
-		
-		
+
+
 		sc_workflow_question.update();
 		//娣诲姞澶勭悊璁板綍
 		Map userlogin = WebUtil.getLoginUser(request).getLoginUser();
@@ -1329,7 +1329,7 @@
 		Map flowMsg = getFlowMsg(flowId,createUserId);
 		String nodeid = ConvertUtil.obj2StrBlank(flowMsg.get("ID"));
 		String nodeName = ConvertUtil.obj2StrBlank(flowMsg.get("NODENAME"));
-		
+
 		//澧炲姞闂澶勭悊璁板綍
 		GG_RECORD record = new GG_RECORD();
 		record.setDeal_content("淇敼闂锛�"+createUserName+"淇敼浜嗛棶棰樹俊鎭�");
@@ -1339,13 +1339,13 @@
 		record.setBusiness_id(flowId);
 		record.setNode_id(nodeid).setNode_name(nodeName);
 		recordService.addRecord(record);
-		
+
 	}
-	
+
 	@Override
 	public List<Map> getZdMsgList(String flowId) {
 		String sql = "SELECT * FROM QUESTION_ZD_HISTORY WHERE FLOWID = :flowid ORDER BY CREATE_TIME DESC";
-		
+
 		return baseDao.queryForList(sql, new SqlParameter("flowid",flowId));
 	}
 
@@ -1355,9 +1355,9 @@
 		String type = request.getParameter("type");
 		String flowId = request.getParameter("flowId");
 		Map zdMsg = new HashMap();
-		
+
 		if(!StringUtil.isEmpty(type)){
-			
+
 			if("1".equals(type)){
 				SC_WORKFLOW_QUESTION question = new SC_WORKFLOW_QUESTION(id).getInstanceById();
 				zdMsg.put("ID", question.getId());
@@ -1370,7 +1370,7 @@
 			}else{
 				zdMsg = new QUESTION_ZD_HISTORY(id).getBeanMapById();
 			}
-		
+
 		}
 		return zdMsg;
 	}
@@ -1380,16 +1380,16 @@
 		String flowId = request.getParameter("flowId");
 		String id = request.getParameter("id");
 		String type = request.getParameter("type");
-		
-		
+
+
 		String resolve = request.getParameter("resolve");
 		String suggest = request.getParameter("suggest");
 		String reason = request.getParameter("reason");
-		
+
 		Map user = WebUtil.getLoginUser(request).getLoginUser();
 		String userId = ConvertUtil.obj2StrBlank(user.get("ID"));
 		String userName = ConvertUtil.obj2StrBlank(user.get("ZSXM"));
-		
+
 		long resolveTime = DateUtil.getCurrentDate14();
 		QUESTION_ZD_HISTORY zd = new QUESTION_ZD_HISTORY();
 		if("1".equals(type)){
@@ -1405,11 +1405,11 @@
 			String zdid = baseDao.queryForString(selsql, param);
 			zd.setId(zdid);
 			String sql = "UPDATE QUESTION_ZD_HISTORY SET REASON = :reason ,RESOLVE = :resolve,SUGGEST = :suggest WHERE FLOWID = :flowid AND ISTHEEND = :istheend ";
-		   
+
 		    baseDao.execute(sql, param);
-		
+
 		}else{
-		
+
 			if(!StringUtil.isEmpty(id)){
 				zd.setId(id);
 			}else{
@@ -1418,9 +1418,9 @@
 			zd.setReason(reason).setResolve(resolve).setSuggest(suggest).insertOrUpdate();
 		}
 		fileService.uploadFile(request, zd.getId(), flowId, null, null);
-		
+
 	}
-	
+
 	@Override
 	public String issave(HttpServletRequest request) {
 		String nodeId = request.getParameter("nodeId");
@@ -1450,7 +1450,7 @@
 		}
 		return result;
 	}
-	
+
 	@Override
 	public Map gettempMsg(String id,String userId) {
 		//鑾峰彇褰撳墠鎵�澶勭殑鑺傜偣
@@ -1461,7 +1461,7 @@
 		Map msg = baseDao.queryForMap(sql, new SqlParameter("node_id",nodeid));
 		return msg;
 	}
-	
+
 	@Override
 	public Map updateAssign(HttpServletRequest request) {
 		Map resultMap = new HashMap();
@@ -1477,14 +1477,14 @@
 		String resolve = request.getParameter("resolve");
 		String suggest = request.getParameter("suggest");
 		String bz = request.getParameter("bz");
-		
+
 		Map user = WebUtil.getLoginUser(request).getLoginUser();
 		String userId = ConvertUtil.obj2StrBlank(user.get("ID"));
 		String userName = ConvertUtil.obj2StrBlank(user.get("ZSXM"));
-		
+
 		WORKFLOW_BASE base = new WORKFLOW_BASE(id).getInstanceById();
 		SC_WORKFLOW_QUESTION myQuestion = new SC_WORKFLOW_QUESTION(base.getBusiness_id()).getInstanceById();
-		
+
 		//鑾峰彇褰撳墠鎵�澶勭殑鑺傜偣
 		Map flowMsg = getFlowMsg(id,userId);
 		String nodeid = ConvertUtil.obj2StrBlank(flowMsg.get("ID"));
@@ -1497,14 +1497,14 @@
 			ORDER_ASSIGN_TEMP temp = new ORDER_ASSIGN_TEMP();
 			temp.setDealer(JsonUtil.map2Json(dealuser)).setNode_id(nodeid)
 			.setExtend1(usertype).setExtend2(true_reason).setExtend3(resolve).setExtend4(suggest).setExtend5(bz).insert();
-			
+
 		}else{
-		
+
 			String dealUserId = new String();
 			String dealUserName = new String();
 			String state = new String();
 			String type = new String();
-			
+
 			String node_template_id = Constants.WTFQ;
 			if(StringUtil.notEmpty(selectUser)) {
 					if(usertype.equals("3")){
@@ -1533,11 +1533,11 @@
 					}else{
 						state = Constants.SC_WORKFLOW_QUESTION_STATE_YDJ;
 					}
-			}    
+			}
 			if(StringUtil.notEmpty(selectUser)) {
 				//鎵ц鍒嗘淳浠诲姟
-				
-				
+
+
 				NodeDealEntity entity = new NodeDealEntity();
 				entity.setDealer_type(3);
 				List<Map> dealerList = new ArrayList<Map>();
@@ -1563,44 +1563,44 @@
 							map.put("USER_NAME", cacheuser.get(userList2[i]));
 							dealUserName += cacheuser.get(userList2[i])+",";
 						}
-						
+
 						dealerList.add(map);
 					}
 					dealUserName = dealUserName.substring(0, dealUserName.length()-1);
-					
+
 				} else {
 					entity.setBefore_Dealer_type(1);
 					entity.setRoleID(selectUser.split("&")[0]);
 					entity.setRoleName(selectUser.split("&")[1]);
-					
+
 					//鏌ヨ鏀圭粍涓嬮潰鐨勬墍鏈変汉鍛樹俊鎭�
 					String sqlUser = "SELECT B.ID AS USER_ID ,B.ZSXM AS USER_NAME FROM AC_USER_REF_ROLE A,GG_USER B WHERE A.YHBH = B.ID AND A.JSBH = :groupId ";
 					dealerList = baseDao.queryForList(sqlUser,new SqlParameter("groupId",selectUser.split("&")[0]));
 					dealUserName = entity.getRoleName();
 				}
 				entity.setDealerList(dealerList);
-				
+
 				NodeFinishEntity finishEntity = new NodeFinishEntity();
 				finishEntity.setDeal_result(1);
 				finishEntity.setDeal_note_title("鑺傜偣杞嚦 锛�" + dealUserName);
 				finishEntity.setDeal_note(bz);
 				WORKFLOW_NODE node = new WORKFLOW_NODE(base.getCurrent_node_id()).getInstanceById();
-				
-				
-				
+
+
+
 				boolean canFinish = workflowCoreService.finishNode(base, node, finishEntity);
 				if (canFinish) {
 					workflowBusinessService.toNode(base, node_template_id, entity);
-				} 
-				
-	
+				}
+
+
 				//鏇存柊闂鐘舵��
 				Map param = new HashMap();
 				param.put("state", state);
 				param.put("questionId", base.getBusiness_id());
 				String updateIncidentSql = "UPDATE SC_WORKFLOW_QUESTION SET STATE = :state  ";
 				if(curnodeId .equals(Constants.WTZD)){
-					
+
 					updateIncidentSql += " ,RESOLVE_USER_ID = :userId,RESOLVE_USER_NAME = :userName,TRUE_REASON = :true_reason ,RESOLVE = :resolve ,SUGGEST = :suggest ";
 					param.put("true_reason",true_reason );
 					param.put("resolve", resolve);
@@ -1622,13 +1622,13 @@
 				   }
 
 					fileService.uploadFile(request,businessid, id, null, null);
-					
+
 				}
 				updateIncidentSql += " WHERE ID = :questionId ";
 				baseDao.execute(updateIncidentSql, param);
-				
+
 				baseDao.execute("DELETE FROM ORDER_ASSIGN_TEMP WHERE NODE_ID = :node_id ", new SqlParameter("node_id",nodeid));
-				
+
 				//澧炲姞闂澶勭悊璁板綍
 				GG_RECORD record = new GG_RECORD();
 				record.setDeal_content("鎸囨淳浠诲姟锛�"+userName+"灏嗛棶棰樻寚娲剧粰浜�"+dealUserName);
@@ -1654,15 +1654,15 @@
 				messageFacade.doSendMessage(message, dealerList);
 				resultMap.put("result", 1);
 				type = ConvertUtil.obj2StrBlank(entity.getBefore_Dealer_type());
-				
+
 			}
 	        SysInfoMsg msg = new SysInfoMsg(type,dealUserName,Constants.questionNode.get(node_template_id));
-			
+
 			resultMap.put("msg", msg);
 		}
 		return resultMap;
 	}
-	
+
 	@Override
 	public void updatefinishnode(HttpServletRequest request) {
 	    String nodeId = request.getParameter("nodeId");
@@ -1677,7 +1677,7 @@
 		//鍏抽棴褰撳墠鑺傜偣
 		workflowCoreService.finishNode(base, node, finishEntity);
 	}
-	
+
 	@Override
 	public Map getBeforeNodeMsg(String nodeId) {
 		WORKFLOW_NODE node = new WORKFLOW_NODE(nodeId).getInstanceById();
@@ -1691,20 +1691,20 @@
 		Map nodeMap = baseDao.queryForMap(sql, param);
 		return nodeMap;
 	}
-	
-	
+
+
 	@Override
 	public Map gobackNodeSubmit(HttpServletRequest request) {
 		String flowId = request.getParameter("flowId");
 		String nodeId = request.getParameter("nodeId");
 		String orderId = request.getParameter("orderId");
-		
+
 		WORKFLOW_BASE base = new WORKFLOW_BASE(flowId).getInstanceById();
-		
+
 		Map user = WebUtil.getLoginUser(request).getLoginUser();
 		String userId = ConvertUtil.obj2StrBlank(user.get("ID"));
 		String userName = ConvertUtil.obj2StrBlank(user.get("ZSXM"));
-		
+
 		NodeFinishEntity finishEntity = new NodeFinishEntity();
 		finishEntity.setDeal_result(3);
 		finishEntity.setDeal_note_title(userName+"鍥為��浜嗚妭鐐�");
@@ -1712,7 +1712,7 @@
 		WORKFLOW_NODE node = new WORKFLOW_NODE(nodeId).getInstanceById();
 		WORKFLOW_NODE beforenode = new WORKFLOW_NODE(node.getSource_node_instance_id()).getInstanceById();
 		String node_template_id = beforenode.getNode_template_id();
-		
+
 		Map nodeMap = getBeforeNodeMsg(nodeId);
 		List<Map> nodesList = baseDao.queryForList("SELECT * FROM WORKFLOW_NODE WHERE FLOWID = :flowid AND SAME_NODE_KEY = :same_node_key ",new SqlParameter("flowid",flowId).addValue("same_node_key", node.getSame_node_key()));
 		//鍥為��鏃讹紝鍏抽棴鎵�鏈夎妭鐐�
@@ -1721,7 +1721,7 @@
 			nodeid.setDealtime(ConvertUtil.obj2Long(nodes.get("DEALTIME"))).setAnswer_time(ConvertUtil.obj2Long(nodes.get("ANSWER_TIME")));
 			workflowCoreService.finishNode(base,nodeid , finishEntity);
 		}
-		
+
 		String state = "";
 		if(node_template_id.equals(Constants.WTSL)) {
 			state = Constants.SC_WORKFLOW_QUESTION_STATE_SL;
@@ -1738,18 +1738,18 @@
 		}else{
 			state = Constants.SC_WORKFLOW_QUESTION_STATE_YDJ;
 		}
-		
+
 		//鏇存柊闂鐘舵��
 		String updateSql = "UPDATE SC_WORKFLOW_QUESTION SET STATE = :state WHERE ID = :questionId ";
 		baseDao.execute(updateSql, new SqlParameter("state",state).addValue("questionId", orderId));
-		
+
 		List<Map> list = new ArrayList<Map>();
 		Map map = new HashMap();
 		map.put("USER_ID", nodeMap.get("CURRENT_DEALER_ID"));
 		map.put("USER_NAME", nodeMap.get("CURRENT_DEALER_NAME"));
 		map.put("IS_ADMIN", "1");
 		list.add(map);
-		
+
 		NodeDealEntity entity = new NodeDealEntity();
 		entity.setBefore_Dealer_type(2);
 		entity.setDealer_type(2);
@@ -1777,7 +1777,7 @@
 		resultMap.put("msg", msg);
 		return resultMap;
 	}
-	
+
 	@Override
 	public Map updateApplyEnd(HttpServletRequest request) {
 		Map resultMap = new HashMap();
@@ -1959,17 +1959,17 @@
 
 		resultMap.put("msg", msg);
 		return resultMap;
-		
-		
+
+
 	}
-	
+
 	@Override
 	public Map getEndMsgById(String orderId) {
 		String sql ="SELECT RESOLVE_TYPE_ID,TRUE_REASON,RESOLVE,SUGGEST FROM SC_WORKFLOW_QUESTION WHERE ID = :id ";
 		Map faMap = baseDao.queryForMap(sql, new SqlParameter("id",orderId));
 		return faMap;
 	}
-	
+
 	@Override
 	public void updateEndQuestion(HttpServletRequest request) {
 		String orderId = request.getParameter("orderId");
@@ -1978,17 +1978,17 @@
 		String solveWay = request.getParameter("solveWay");
 		String solveWayName = request.getParameter("solveWayName");
 		String solve = request.getParameter("solve");
-		
-		
+
+
 		String reason = request.getParameter("reason");
-		
-		
+
+
 		Map user = WebUtil.getLoginUser(request).getLoginUser();
 		String userId = ConvertUtil.obj2StrBlank(user.get("ID"));
 		String userName = ConvertUtil.obj2StrBlank(user.get("ZSXM"));
-		
+
 		long resolveTime = DateUtil.getCurrentDate14();
-		
+
 		String state = "";
 		if("1".equals(solve)){
 			state = Constants.SC_WORKFLOW_QUESTION_STATE_YWC;
@@ -1996,8 +1996,8 @@
 			state = Constants.SC_WORKFLOW_QUESTION_STATE_YGB;
 		}
 		SC_WORKFLOW_QUESTION question = new SC_WORKFLOW_QUESTION(orderId).getInstanceById();
-		
-		
+
+
 		StringBuffer updateSql = new StringBuffer("UPDATE SC_WORKFLOW_QUESTION SET STATE = :state , RESOLVE_USER_ID = :userId,RESOLVE_USER_NAME = :userName,RESOLVE_TIME = :resolveTime,RESOLVE_TYPE_ID = :solveWay,RESOLVE_TYPE_NAME = :solveWayName  ");
 		Map paramMap = new HashMap();
 		if(StringUtil.isEmpty(question.getResolve_user_id())){
@@ -2016,10 +2016,10 @@
 				paramMap.put("resolve", map.get("RESOLVE"));
 				paramMap.put("suggest", map.get("SUGGEST"));
 			}
-			
+
 		}
 		paramMap.put("state", state);
-		
+
 		paramMap.put("resolveTime", resolveTime);
 		paramMap.put("solveWay", solveWay);
 		paramMap.put("solveWayName", solveWayName);
@@ -2043,18 +2043,18 @@
 		record.setBusiness_id(flowId);
 		record.setNode_id(nodeid).setNode_name(nodeName);
 		recordService.addRecord(record);
-		
+
 		//缁撴潫宸ュ崟
         WORKFLOW_BASE base = new WORKFLOW_BASE(flowId).getInstanceById();
-		
+
 		List<Map> list = new ArrayList<Map>();
 		NodeFinishEntity finishEntity = new NodeFinishEntity();
 		finishEntity.setDeal_result(1);
 		finishEntity.setDeal_note_title(userName+"澶勭悊瀹屾垚");
 		finishEntity.setDeal_note(reason);
-		
+
 		WORKFLOW_NODE node = new WORKFLOW_NODE(nodeId).getInstanceById();
-		
+
 		workflowCoreService.finishNode(base, node, finishEntity);
 		if("1".equals(solve)){
 			workflowCoreService.finishWorkFlow(base);
@@ -2062,7 +2062,7 @@
 			workflowCoreService.closeWorkFlow(base);
 		}
 	}
-	
+
 	@Override
 	public List queryLinkwtOrder(HttpServletRequest request) {
 		String orderCode = request.getParameter("orderCode");
@@ -2077,27 +2077,27 @@
 		param.addValue("orderid", orderid);
 		param.addValue("wfstate", Constants.WORKFLOW_BASE_WFSTATE_DELETE);
 		param.addValue("businesstype", Constants.WORKFLOW_BASE_BUSINESS_TYPE_QUESTION);
-		
+
 		if (StringUtils.isNotBlank(reordercode)) {
 			sql.append("AND A.ORDER_CODE != :reordercode ");
 			param.addValue("reordercode", reordercode);
 		}
-		
+
 		if (StringUtils.isNotBlank(orderName)) {
 			sql.append("AND B.NAME like :wfname ");
 			param.addValue("wfname", "%"+orderName+"%");
 		}
-		
+
 		if (StringUtils.isNotBlank(orderCode)) {
 			sql.append("AND A.ORDER_CODE like :orderCode ");
 			param.addValue("orderCode", "%"+orderCode+"%");
 		}
-		
+
 		sql.append("ORDER BY A.WFSTATE ASC,A.CREATETIME DESC");
-		
-		
+
+
 		List<Map> list = baseDao.queryForList(sql.toString(),param);
-		
+
 		for (Map map2 : list) {
 			map2.put("BUSINESSTYPE_TEXT", Constants.mapWORKFLOW_BUSINESS_TYPE_Label(ConvertUtil.obj2Str(map2.get("BUSINESSTYPE"))));
 			map2.put("WFSTATE_TEXT", Constants.getWORKFLOW_BASE_WFSTATE_Label(ConvertUtil.obj2Str(map2.get("WFSTATE"))));
@@ -2105,7 +2105,7 @@
 		}
 		return list;
 	}
-	
+
 	@Override
 	public String getIsOpenQuestion(HttpServletRequest request) {
 		String orderId = request.getParameter("orderId");
@@ -2114,7 +2114,7 @@
 		Map param = new HashMap();
 		param.put("bus_id", orderId);
 		param.put("userId", userId);
-		
+
 		int count = baseDao.queryForInteger(sql, param);
 		if(count > 0){
 			return "1";
@@ -2122,7 +2122,7 @@
 			return "0";
 		}
 	}
-	
+
 	@Override
 	public Map questionInfo(HttpServletRequest request) {
 		String questionId=request.getParameter("orderId");
@@ -2168,7 +2168,7 @@
 		map.put("fileList", fileList);
 		return map;
 	}
-	
+
 	@Override
 	public void updateResolveType(HttpServletRequest request) {
 		String orderId = request.getParameter("orderId");
@@ -2204,10 +2204,10 @@
 		record.setNode_id(nodeid).setNode_name(nodeName);
 		record = recordService.addRecord(record);
 		fileService.uploadFile(request, record.getId(), flowId, null, null);
-		
-		
+
+
         WORKFLOW_BASE base = new WORKFLOW_BASE(flowId).getInstanceById();
-		
+
 		NodeFinishEntity finishEntity = new NodeFinishEntity();
 		finishEntity.setDeal_result(1);
 		finishEntity.setDeal_note_title(createUserName+"缁撴潫鑺傜偣");
@@ -2217,9 +2217,9 @@
 		workflowCoreService.finishNode(base, node, finishEntity);
 		//鍏抽棴宸ュ崟
 		workflowCoreService.closeWorkFlow(base);
-		
+
 	}
-	
+
 	@Override
 	public void updateQuestiongq(HttpServletRequest request) {
 		String orderId = request.getParameter("orderId");
@@ -2232,7 +2232,7 @@
 		Map user = WebUtil.getLoginUser(request).getLoginUser();
 		String createUserId = ConvertUtil.obj2StrBlank(user.get("ID"));
 		String createUserName = ConvertUtil.obj2StrBlank(user.get("ZSXM"));
-		
+
 		String sql = "INSERT INTO HANG_UP_INFO(ID,BUS_ID,BUS_STATE,STATE,HANG_UP_USERID,HANG_UP_USERNAME,HANG_UP_TIME,HANG_UP_REASONID,HANG_UP_REASON,HANG_UP_NOTE) VALUES(:id,:bus_id,:bus_state,:state,:hang_up_userid,:hang_up_username,:hang_up_time,:hang_up_reasonid,:hang_up_reason,:hang_up_note)";
 		Map  param = new HashMap();
 		param.put("id", StringUtil.getUUID());
@@ -2267,9 +2267,9 @@
 		record.setNode_id(nodeid).setNode_name(nodeName);
 		record = recordService.addRecord(record);
 		fileService.uploadFile(request, record.getId(), flowId, null, null);
-		
+
 	}
-	
+
 	@Override
 	public List queryGqhistoryData(HttpServletRequest request) {
 		String orderId = request.getParameter("orderId");
@@ -2286,7 +2286,7 @@
 		}
 		return gqList;
 	}
-	
+
 	@Override
 	public void updateQuestionOpen(HttpServletRequest request) {
 		Map user = WebUtil.getLoginUser(request).getLoginUser();
@@ -2305,7 +2305,7 @@
 		HANG_UP_INFO qg = new HANG_UP_INFO(ConvertUtil.obj2StrBlank(qgMap.get("ID")));
 		qg.setState(2).setHang_down_reason(note).update();
 	}
-	
+
 	@Override
 	public Map querymyQuestionpoolCount(HttpServletRequest request) {
 		String userId = WebUtil.getLoginedUserId(request);
@@ -2313,19 +2313,19 @@
 		int ywc = 0;
 		//闂鍙楃悊
 		int wtsl = 0;
-		
+
 		//闂瀹℃牳
 		int wtsh = 0;
-		
+
 		//闂璇婃柇
 		int wtzd = 0;
-		
+
 		//鏂规瀹℃壒
 		int fasp = 0;
-		
+
 		//鏂规瀹炴柦
 		int fass = 0;
-		
+
 		//闂鍥為【
 		int wthg = 0;
 		StringBuilder sql = new StringBuilder();
@@ -2334,7 +2334,7 @@
 		paramMap.put("wfstate", Constants.WORKFLOW_BASE_WFSTATE_DELETE);
 		sql.append("SELECT COUNT(*) AS  NUM,E.STATE FROM SC_WORKFLOW_QUESTION E, WORKFLOW_BASE D,(SELECT DISTINCT B.JSBH FROM GG_USER A,AC_USER_REF_ROLE B WHERE A.ID = B.YHBH AND A.ID = :userId) C WHERE  D.CURRENT_DEAL_ROLEIDA = C.JSBH AND E.ID = D.BUSINESS_ID AND D.WFSTATE != :wfstate AND (D.CURRENT_DEALER_ID IS NULL OR D.CURRENT_DEALER_ID = '' )  AND D.BUSINESSTYPE = :businessType ");
 		sqlall.append("SELECT COUNT(G.ID) FROM (SELECT E.ID FROM SC_WORKFLOW_QUESTION E, WORKFLOW_BASE D,(SELECT DISTINCT B.JSBH FROM GG_USER A,AC_USER_REF_ROLE B WHERE A.ID = B.YHBH AND A.ID = :userId) C WHERE  D.CURRENT_DEAL_ROLEIDA = C.JSBH AND E.ID = D.BUSINESS_ID AND D.WFSTATE != :wfstate AND (D.CURRENT_DEALER_ID IS NULL OR D.CURRENT_DEALER_ID = '' ) AND D.BUSINESSTYPE = :businessType ");
-		
+
 		String customer_Id = request.getParameter("customerId");
 		if(!StringUtil.isEmpty(customer_Id)){
 			sql.append(" AND E.CUSTOMER_ID = :customer_Id ");
@@ -2362,57 +2362,57 @@
 					wtzd += num;
 					continue;
 				}
-				
+
 				if(state.equals(Constants.SC_WORKFLOW_QUESTION_STATE_FASP)) {
 					fasp += num;
 					continue;
 				}
-				
+
 				if(state.equals(Constants.SC_WORKFLOW_QUESTION_STATE_FASS)) {
 					fass += num;
 					continue;
 				}
-				
+
 				if(state.equals(Constants.SC_WORKFLOW_QUESTION_STATE_HG)) {
 					wthg += num;
 					continue;
 				}
-				
+
 			}
 		}
 		int all = baseDao.queryForInteger(sqlall.toString(), paramMap);
 		Map map = new HashMap();
 		map.put("wtsl", wtsl);
-		
+
 		map.put("wtsh", wtsh);
-		
+
 		map.put("wtzd", wtzd);
-		
+
 		map.put("fasp", fasp);
-		
+
 		map.put("fass", fass);
-		
+
 		map.put("wthg", wthg);
-		
+
 		map.put("all", all);
 		return map;
 	}
 
 	@Override
 	public int myquestionpoolCount(Map<String, String> params) {
-		
+
 		String sql = new String();
 		params.put("wfstate", ConvertUtil.obj2StrBlank(Constants.WORKFLOW_BASE_WFSTATE_DELETE));
 		sql = "SELECT COUNT(D.ID) FROM  SC_WORKFLOW_QUESTION E,WORKFLOW_BASE D,(SELECT DISTINCT B.JSBH FROM GG_USER A,AC_USER_REF_ROLE B WHERE A.ID = B.YHBH AND A.ID = :userId) C WHERE  E.ID = D.BUSINESS_ID AND D.CURRENT_DEAL_ROLEIDA = C.JSBH AND D.WFSTATE != :wfstate AND (D.CURRENT_DEALER_ID IS NULL OR D.CURRENT_DEALER_ID = '' ) ";
-		
-		
+
+
 		if(StringUtil.notEmpty(sql)) {
 			StringBuilder builder = new StringBuilder(sql);
-			
+
 			builder = getMypoolsql(builder,params);
-			
+
 			int count = baseDao.queryForInteger(builder.toString(),params);
-			
+
 			return count;
 		}
 
@@ -2422,19 +2422,19 @@
 	@Override
 	public PageInfo myquestionpoolData(PageInfo pageInfo,
 			Map<String, String> params) {
-		
+
 		String sql = new String();
 		params.put("wfstate", ConvertUtil.obj2StrBlank(Constants.WORKFLOW_BASE_WFSTATE_DELETE));
 		sql = "SELECT D.* FROM SC_WORKFLOW_QUESTION E,WORKFLOW_BASE D,(SELECT DISTINCT B.JSBH FROM GG_USER A,AC_USER_REF_ROLE B WHERE A.ID = B.YHBH AND A.ID = :userId) C WHERE E.ID = D.BUSINESS_ID AND D.CURRENT_DEAL_ROLEIDA = C.JSBH AND D.WFSTATE != :wfstate AND (D.CURRENT_DEALER_ID IS NULL OR D.CURRENT_DEALER_ID = '' ) ";
-		
+
 		if(StringUtil.notEmpty(sql)) {
-			
+
 			StringBuilder builder = new StringBuilder(sql);
 			builder = getMypoolsql(builder,params);
-			
+
 			builder.append(" ORDER BY D.CREATETIME DESC ");
 			PageInfo result = baseDao.queryforSplitPageInfo(pageInfo, builder.toString(), params);
-			
+
 			return result;
 		}
 		return new PageInfo();
@@ -2445,30 +2445,30 @@
 		Map chartMap = new HashMap();
 		Long endDay = DateUtil.getCurrentDate8();
 		Long startDay = DateUtil.getDateAdd(endDay,-30,8);
-	
+
 		String userId = params.get("userId");
 		params.put("startTime", startDay+"000000");
 		params.put("endTime", endDay + "600000");
-		
+
 		StringBuilder builder = new StringBuilder();
 		if(StringUtil.isBlank(userId)){
 			builder.append(" select count(ID) NUM,DATE_FORMAT(CREATE_TIME,'%Y%m%d') CREATEDAY  from SC_WORKFLOW_QUESTION  where CUSTOMER_ID = :cusId ");
-			builder.append(" and CREATE_TIME>=:startTime and CREATE_TIME<=:endTime group by CREATEDAY ");
+			builder.append(" and CREATE_TIME>=:startTime and CREATE_TIME<=:endTime group by DATE_FORMAT(CREATE_TIME,'%Y%m%d')  ");
 		}else{
 			builder.append(" select count(q.ID) NUM,DATE_FORMAT(q.CREATE_TIME,'%Y%m%d') CREATEDAY from workflow_base b ,SC_WORKFLOW_QUESTION q ");
 			builder.append(" where b.ID = q.FLOW_ID and  EXISTS ( ");
 			builder.append(" select FLOWID from workflow_node n where b.ID = n.FLOWID and n.CURRENT_DEALER_ID = :userId ");
-			builder.append(" ) and q.CUSTOMER_ID = :cusId and q.CREATE_TIME>=:startTime and q.CREATE_TIME<=:endTime  group by CREATEDAY ");
+			builder.append(" ) and q.CUSTOMER_ID = :cusId and q.CREATE_TIME>=:startTime and q.CREATE_TIME<=:endTime  group by DATE_FORMAT(q.CREATE_TIME,'%Y%m%d') ");
 		}
-		
+
 		List<Map> dataList = baseDao.queryForList(builder.toString(),params);
 		if(dataList!=null&&dataList.size()>0){
-			
+
 			List<String> categories = DateUtil.getDates(startDay ,endDay);
 			categories.add(String.valueOf(DateUtil.getCurrentDate8()));
 			List<String> categories_format = new ArrayList<String>();
-			
-			
+
+
 			Map dataMap = new HashMap();
 			Map tempMap = new HashMap();
 			List<Map> series = new ArrayList<Map>();
@@ -2493,26 +2493,26 @@
 		}
 		return chartMap;
 	}
-	
+
 	public StringBuilder getMypoolsql(StringBuilder builder,Map<String, String> params){
 		String status = params.get("status");
 		if(StringUtil.notEmpty(status)) {
 			builder.append(" AND E.STATE = :status ");
 		}
-		
+
 		String orderName = params.get("orderName");
 		if(StringUtil.notEmpty(orderName)) {
 			builder.append(" AND D.WFNAME LIKE :orderName ");
 			params.put("orderName", "%"+orderName+"%");
 		}
-		
-		
+
+
 		String orderCode = params.get("orderCode");
 		if(StringUtil.notEmpty(orderCode)) {
 			builder.append(" AND D.ORDER_CODE LIKE :orderCode");
 			params.put("orderCode", "%"+orderCode+"%");
 		}
-		
+
 		String customerId = params.get("customerId");
 		if(StringUtil.notEmpty(customerId)) {
 			builder.append(" AND D.CUSTOMER_ID = :customerId ");
@@ -2521,8 +2521,8 @@
 		if(StringUtil.notEmpty(subCustomerId)) {
 			builder.append(" AND D.SUB_CUSTOMER_ID = :subCustomerId ");
 		}
-		
-		
+
+
 		builder.append(" AND D.BUSINESSTYPE = :businessType");
 		params.put("businessType", ConvertUtil.obj2StrBlank(Constants.WORKFLOW_BASE_BUSINESS_TYPE_QUESTION));
 		return builder;
@@ -2532,14 +2532,14 @@
 	public Map getLastMonthQuestionLv(Map<String, String> params) {
 		//dataDictionaryService.getDataDictionaryByCategoryKey(Constants.EVENT_PRI,WebUtil.getLoginedPartnerId(request));
 		Map chartMap = new HashMap();
-		
+
 		Long endDay = DateUtil.getCurrentDate8();
 		Long startDay = DateUtil.getDateAdd(endDay,-30,8);
 		String userId = params.get("userId");
 		params.put("startTime", startDay+"000000");
 		params.put("endTime", endDay + "600000");
-		
-		
+
+
 		StringBuilder builder = new StringBuilder();
 		if(StringUtil.isBlank(userId)){
 			builder.append(" SELECT count(ID) NUM,PRI_LEVEL_ID FROM SC_WORKFLOW_QUESTION WHERE ");
@@ -2557,11 +2557,11 @@
 			Map dataMap = new HashMap();
 			Map tempMap = new HashMap();
 			List serieslist = new ArrayList();
-			
+
 			for(Map data : dataList){
 				dataMap.put(data.get("PRI_LEVEL_ID").toString(), data);
 			}
-			
+
 			builder.setLength(0);
 			builder.append(" select ID LEVEL_ID,LEVEL_NAME from SC_SLA where state =1 order by SERIAL ");
 			List<Map> catelist = baseDao.queryForList(builder.toString());
@@ -2585,11 +2585,11 @@
 		Map chartMap = new HashMap();
 		Long endDay = DateUtil.getCurrentDate8();
 		Long startDay = DateUtil.getDateAdd(endDay,-30,8);
-		
+
 		String userId = params.get("userId");
 		params.put("startTime", startDay+"000000");
 		params.put("endTime", endDay + "600000");
-		
+
 		StringBuilder builder = new StringBuilder();
 		if(StringUtil.isBlank(userId)){
 			builder.append(" SELECT count(ID) NUM,PRIORITY_ID FROM SC_WORKFLOW_QUESTION WHERE ");
@@ -2601,7 +2601,7 @@
 			builder.append(" select FLOWID from workflow_node n where b.ID = n.FLOWID and n.CURRENT_DEALER_ID = :userId ");
 			builder.append(" ) and q.CUSTOMER_ID = :cusId and q.CREATE_TIME>=:startTime and q.CREATE_TIME<=:endTime  group by q.PRIORITY_ID ");
 		}
-		
+
 		List<Map> dataList = baseDao.queryForList(builder.toString(),params);
 		if(dataList!=null&&dataList.size()>0){
 			Map dataMap = new HashMap();
@@ -2631,11 +2631,11 @@
 		Map chartMap = new HashMap();
 		Long endDay = DateUtil.getCurrentDate8();
 		Long startDay = DateUtil.getDateAdd(endDay,-30,8);
-		
+
 		String userId = params.get("userId");
 		params.put("startTime", startDay+"000000");
 		params.put("endTime", endDay + "600000");
-		
+
 		StringBuilder builder = new StringBuilder();
 		if(StringUtil.isBlank(userId)){
 			builder.append(" SELECT count(ID) NUM,INFLUENCE_ID FROM SC_WORKFLOW_QUESTION WHERE ");
@@ -2647,7 +2647,7 @@
 			builder.append(" select FLOWID from workflow_node n where b.ID = n.FLOWID and n.CURRENT_DEALER_ID = :userId ");
 			builder.append(" ) and q.CUSTOMER_ID = :cusId and q.CREATE_TIME>=:startTime and q.CREATE_TIME<=:endTime  group by q.INFLUENCE_ID ");
 		}
-		
+
 		List<Map> dataList = baseDao.queryForList(builder.toString(),params);
 		if(dataList!=null&&dataList.size()>0){
 			Map dataMap = new HashMap();
@@ -2679,24 +2679,24 @@
 		Map chartMap = new HashMap();
 		Long endDay = DateUtil.getCurrentDate8();
 		Long startDay = DateUtil.getDateAdd(endDay,-30,8);
-		
+
 		StringBuilder builder = new StringBuilder();
 		String userId = params.get("userId");
 		params.put("startTime", startDay+"000000");
 		params.put("endTime", endDay + "600000");
 		if(StringUtil.isBlank(userId)){
-			builder.append(" select count(ID) NUM,THIRD_CATEGORY_ID SERVER_ID  from SC_WORKFLOW_QUESTION  where CUSTOMER_ID = :cusId ");
-			builder.append(" and CREATE_TIME>=:startTime and CREATE_TIME<=:endTime group by SERVER_ID ");
+			builder.append(" select count(ID) NUM,THIRD_CATEGORY_ID SERVER_ID  from SC_WORKFLOW_QUESTION where CUSTOMER_ID = :cusId ");
+			builder.append(" and CREATE_TIME>=:startTime and CREATE_TIME<=:endTime group by THIRD_CATEGORY_ID ");
 		}else{
 			builder.append(" select count(q.ID) NUM,q.THIRD_CATEGORY_ID SERVER_ID  from SC_WORKFLOW_QUESTION q,WORKFLOW_BASE b ");
 			builder.append(" where b.ID = q.FLOW_ID and  EXISTS ( ");
 			builder.append(" select FLOWID from workflow_node n where b.ID = n.FLOWID and n.CURRENT_DEALER_ID = :userId ");
-			builder.append(" ) and q.CUSTOMER_ID = :cusId and q.CREATE_TIME>=:startTime and q.CREATE_TIME<=:endTime  group by SERVER_ID ");
+			builder.append(" ) and q.CUSTOMER_ID = :cusId and q.CREATE_TIME>=:startTime and q.CREATE_TIME<=:endTime  group by q.THIRD_CATEGORY_ID ");
 		}
-		
-		
-		
-		
+
+
+
+
 		List<Map> dataList = baseDao.queryForList(builder.toString(),params);
 		if(dataList!=null&&dataList.size()>0){
 			builder.setLength(0);
@@ -2740,9 +2740,9 @@
 		int jxzcount = 0;
 		if("1".equals(type)){
             poolcount = questionpoolCount(params);
-			
+
 			dxycount = queryQuestionOrderNodeCount(params);
-			
+
 			jxzcount = queryQuestionJxzCount(params);
 		}else{
 			poolcount = myquestionpoolCount(params);
@@ -2751,7 +2751,7 @@
 			params.put("type", "2");
 			jxzcount = querymyQuestionOrderNodeCount(params);
 		}
-		
+
 		Map map = new HashMap();
 		map.put("poolcount", poolcount);
 		map.put("dxycount", dxycount);
@@ -2767,40 +2767,40 @@
 		int ywc = 0;
 		//闂鍙楃悊
 		int wtsl = 0;
-		
+
 		//闂瀹℃牳
 		int wtsh = 0;
-		
+
 		//闂璇婃柇
 		int wtzd = 0;
-		
+
 		//鏂规瀹℃壒
 		int fasp = 0;
-		
+
 		//鏂规瀹炴柦
 		int fass = 0;
-		
+
 		//闂鍥為【
 		int wthg = 0;
-		
+
 		StringBuffer selectSql = new StringBuffer();
 		StringBuffer sql = new StringBuffer();
-		
+
 		Map paramMap = new HashMap();
 		paramMap.put("flowstate", type);
 		paramMap.put("userId", params.get("userId"));
-		selectSql.append( "SELECT COUNT(*) AS NUM,D.STATE FROM (SELECT A.* FROM SC_WORKFLOW_QUESTION A,WORKFLOW_BASE B , WORKFLOW_NODE C  WHERE B.ID = C.FLOWID AND C.FLOWSTATE = :flowstate  AND C.CURRENT_DEALER_ID = :userId AND A.ID = B.BUSINESS_ID  "); 
-		sql.append( "SELECT COUNT(D.ID) FROM (SELECT A.*  FROM SC_WORKFLOW_QUESTION  A,WORKFLOW_BASE B , WORKFLOW_NODE C WHERE B.ID = C.FLOWID AND C.FLOWSTATE = :flowstate  AND C.CURRENT_DEALER_ID = :userId AND A.ID = B.BUSINESS_ID ");
+		selectSql.append( "SELECT COUNT(*) AS NUM,D.STATE FROM (SELECT A.ID,A.STATE FROM SC_WORKFLOW_QUESTION A,WORKFLOW_BASE B , WORKFLOW_NODE C  WHERE B.ID = C.FLOWID AND C.FLOWSTATE = :flowstate  AND C.CURRENT_DEALER_ID = :userId AND A.ID = B.BUSINESS_ID  ");
+		sql.append( "SELECT COUNT(D.ID) FROM (SELECT A.ID FROM SC_WORKFLOW_QUESTION  A,WORKFLOW_BASE B , WORKFLOW_NODE C WHERE B.ID = C.FLOWID AND C.FLOWSTATE = :flowstate  AND C.CURRENT_DEALER_ID = :userId AND A.ID = B.BUSINESS_ID ");
 		if(!StringUtil.isEmpty(customerId)){
 			selectSql.append(" AND A.CUSTOMER_ID = :customerId ");
 			sql.append(" AND A.CUSTOMER_ID = :customerId ");
 			paramMap.put("customerId", customerId);
 		}
-		
-		
-		selectSql.append(" GROUP BY A.ID) D  GROUP BY D.STATE ");
+
+
+		selectSql.append(" GROUP BY A.ID,A.STATE) D  GROUP BY D.STATE ");
 		sql.append(" GROUP BY A.ID) D ");
-		
+
 		List<Map> list = baseDao.queryForList(selectSql.toString(),paramMap);
 		if(null!=list && list.size()>0) {
 			for(Map map : list) {
@@ -2818,40 +2818,40 @@
 					wtzd += num;
 					continue;
 				}
-				
+
 				if(state.equals(Constants.SC_WORKFLOW_QUESTION_STATE_FASP)) {
 					fasp += num;
 					continue;
 				}
-				
+
 				if(state.equals(Constants.SC_WORKFLOW_QUESTION_STATE_FASS)) {
 					fass += num;
 					continue;
 				}
-				
+
 				if(state.equals(Constants.SC_WORKFLOW_QUESTION_STATE_HG)) {
 					wthg += num;
 					continue;
 				}
-				
+
 			}
 		}
 		int all = baseDao.queryForInteger(sql.toString(), paramMap);
 		Map map = new HashMap();
 		map.put("wtsl", wtsl);
-		
+
 		map.put("wtsh", wtsh);
-		
+
 		map.put("wtzd", wtzd);
-		
+
 		map.put("fasp", fasp);
-		
+
 		map.put("fass", fass);
-		
+
 		map.put("wthg", wthg);
-		
+
 		map.put("all", all);
-		
+
 		return map;
 	}
 
@@ -2859,16 +2859,16 @@
 	public int querymyQuestionEndCount(Map<String, String> params) {
 		StringBuilder sql = new StringBuilder();
 		StringBuilder sqlpart = new StringBuilder();
-		sql.append("SELECT COUNT(D.ID) FROM (SELECT B.* FROM SC_WORKFLOW_QUESTION B,WORKFLOW_BASE WB , WORKFLOW_NODE C   ");
+		sql.append("SELECT COUNT(D.ID) FROM (SELECT B.ID FROM SC_WORKFLOW_QUESTION B,WORKFLOW_BASE WB , WORKFLOW_NODE C   ");
 		sqlpart.append(" WHERE WB.BUSINESS_ID = B.ID AND  C.FLOWID = WB.ID AND C.CURRENT_DEALER_ID = :userId AND WB.BUSINESSTYPE = :businessType ");
-		
+
 		sqlpart.append( " AND WB.WFSTATE = :state  ");
 		params.put("state", params.get("type"));
-				
+
 		sql.append(sqlpart);
 		sql.append( " GROUP BY B.ID  ) D");
 		params.put("businessType", ConvertUtil.obj2StrBlank(Constants.WORKFLOW_BASE_BUSINESS_TYPE_QUESTION));
-		
+
 		return baseDao.queryForInteger(sql.toString(),params);
 	}
 
@@ -2877,24 +2877,24 @@
 			Map<String, String> params) {
 		StringBuilder sql = new StringBuilder();
 		StringBuilder sqlpart = new StringBuilder();
-		sql.append("SELECT B.RESOLVE_TYPE_NAME,B.CREATE_TIME,B.CREATE_USER_NAME,WB.ID,WB.ORDER_CODE,WB.WFNAME,WB.BUSINESSTYPE,WB.CREATERNAME,WB.CREATETIME,WB.WFNOTE ,WB.ENDTIME , ");
+		sql.append("SELECT B.RESOLVE_TYPE_NAME,B.CREATE_TIME,B.CREATE_USER_NAME,WB.ID,WB.ORDER_CODE,WB.WFNAME,WB.BUSINESSTYPE,WB.CREATERNAME,WB.CREATETIME,WB.ENDTIME , ");
 		sql.append("WB.CURRENT_NODE_ID,WB.CURRENT_NODE_NAME,WB.CUSTOMER_NAME,WB.SUB_CUSTOMER_NAME,WB.PROJECT_NAME,WB.CURRENT_DEALER_NAME,WB.BUSINESS_ID,WB.WFSTATE,B.STATE ,B.NAME, ");
 		sql.append(" D.HANG_UP_USERNAME,D.HANG_UP_TIME,D.HANG_UP_REASON  ");
 		sql.append("FROM (SELECT F.* FROM  WORKFLOW_BASE F  WHERE  F.BUSINESSTYPE = :businessType ) WB , WORKFLOW_NODE C ,SC_WORKFLOW_QUESTION B LEFT JOIN HANG_UP_INFO D ON B.ID = D.BUS_ID ");
 		sqlpart.append(" WHERE WB.BUSINESS_ID = B.ID  AND  C.FLOWID = WB.ID  AND C.CURRENT_DEALER_ID = :userId AND WB.BUSINESSTYPE = :businessType ");
 		params.put("businessType", ConvertUtil.obj2StrBlank(Constants.WORKFLOW_BASE_BUSINESS_TYPE_QUESTION));
 		sqlpart = getMyEndSql(sqlpart,params);
-		
+
 		sqlpart.append( " AND WB.WFSTATE = :state  ");
 		params.put("state", params.get("type"));
 		sql.append(sqlpart);
-		sql.append( " GROUP BY WB.ID ORDER BY WB.CREATETIME DESC ");
-		
+		sql.append( " GROUP BY WB.ID,B.RESOLVE_TYPE_NAME, B.CREATE_TIME, B.CREATE_USER_NAME, WB.ORDER_CODE, WB.WFNAME, WB.BUSINESSTYPE, WB.CREATERNAME, WB.CREATETIME, WB.ENDTIME , WB.CURRENT_NODE_ID, WB.CURRENT_NODE_NAME, WB.CUSTOMER_NAME, WB.SUB_CUSTOMER_NAME, WB.PROJECT_NAME, WB.CURRENT_DEALER_NAME, WB.BUSINESS_ID, WB.WFSTATE, B.STATE , B.NAME, D.HANG_UP_USERNAME, D.HANG_UP_TIME, D.HANG_UP_REASON ORDER BY WB.CREATETIME DESC ");
+
 		return baseDao.queryforSplitPageInfo(pageInfo, sql.toString(), params);
 	}
-	
+
 	public StringBuilder getMyEndSql(StringBuilder sqlpart,Map<String, String> params){
-		
+
 		String customerId = params.get("customerId");
 		if(StringUtil.notEmpty(customerId)) {
 			sqlpart.append(" AND B.CUSTOMER_ID = :customerId ");
@@ -2903,27 +2903,27 @@
 		if(StringUtil.notEmpty(subCustomerId)) {
 			sqlpart.append(" AND B.SUB_CUSTOMER_ID = :subCustomerId ");
 		}
-		
+
 		String orderName = params.get("orderName");
 		if(StringUtil.notEmpty(orderName)) {
 			sqlpart.append(" AND B.NAME LIKE :orderName ");
 			params.put("orderName", "%"+orderName+"%");
 		}
-		
+
 		String orderCode = params.get("orderCode");
 		if(StringUtil.notEmpty(orderCode)) {
 			sqlpart.append(" AND B.ORDER_CODE LIKE :orderCode ");
 			params.put("orderCode", "%"+orderCode+"%");
 		}
-		
-		
+
+
 		String contract = params.get("contract");
 		if(StringUtil.notEmpty(contract)) {
 			sqlpart.append(" AND B.CONTACT_NAME LIKE :contract ");
 			params.put("contract", "%"+contract+"%");
 		}
-		
-		
+
+
 		String pri = params.get("pri");
 		if(StringUtil.notEmpty(pri)) {
 			String[] pris = pri.split(",");
@@ -2941,9 +2941,9 @@
 				sqlpart.append(")");
 			}
 		}
-		
-		
-		
+
+
+
 		String dg = params.get("dg");
 		if(StringUtil.notEmpty(dg)) {
 			String[] dgs = dg.split(",");
@@ -2961,8 +2961,8 @@
 				sqlpart.append(")");
 			}
 		}
-		
-		
+
+
 		String source = params.get("source");
 		if(StringUtil.notEmpty(source)) {
 			String[] sources = source.split(",");
@@ -2980,8 +2980,8 @@
 				sqlpart.append(")");
 			}
 		}
-		
-		
+
+
 		String sl = params.get("sl");
 		if(StringUtil.notEmpty(sl)) {
 			String[] sls = sl.split(",");
@@ -3006,15 +3006,15 @@
 	public int querymyQuestionOrderNodeCount(Map<String, String> params) {
 		StringBuilder sql = new StringBuilder();
 		StringBuilder sqlpart = new StringBuilder();
-		sql.append("SELECT COUNT(D.ID) FROM (SELECT B.* FROM SC_WORKFLOW_QUESTION B,WORKFLOW_BASE WB , WORKFLOW_NODE C   ");
+		sql.append("SELECT COUNT(D.ID) FROM (SELECT B.ID FROM SC_WORKFLOW_QUESTION B,WORKFLOW_BASE WB , WORKFLOW_NODE C   ");
 		sqlpart.append(" WHERE WB.BUSINESS_ID = B.ID AND  C.FLOWID = WB.ID  AND C.FLOWSTATE = :flowstate AND C.CURRENT_DEALER_ID = :userId AND WB.BUSINESSTYPE = :businessType ");
 		params.put("flowstate", params.get("type"));
 		sqlpart = getMyNodeSql(sqlpart,params);
-		
+
 		sql.append(sqlpart);
 		sql.append( " GROUP BY B.ID  ) D");
 		params.put("businessType", ConvertUtil.obj2StrBlank(Constants.WORKFLOW_BASE_BUSINESS_TYPE_QUESTION));
-		
+
 		return baseDao.queryForInteger(sql.toString(),params);
 	}
 
@@ -3023,7 +3023,7 @@
 			Map<String, String> params) {
 		StringBuilder sql = new StringBuilder();
 		StringBuilder sqlpart = new StringBuilder();
-		sql.append("SELECT WB.ID,WB.ORDER_CODE,WB.WFNAME,WB.BUSINESSTYPE,WB.CREATERNAME,WB.CREATETIME,WB.WFNOTE ,C.FLOWSTATE, ");
+		sql.append("SELECT WB.ID,WB.ORDER_CODE,WB.WFNAME,WB.BUSINESSTYPE,WB.CREATERNAME,WB.CREATETIME,C.FLOWSTATE, ");
 		sql.append("WB.CURRENT_NODE_ID,WB.CURRENT_NODE_NAME,WB.CUSTOMER_NAME,WB.SUB_CUSTOMER_NAME,WB.PROJECT_NAME,WB.CURRENT_DEALER_NAME,WB.BUSINESS_ID,WB.WFSTATE,B.STATE ,B.NAME ");
 		sql.append("FROM SC_WORKFLOW_QUESTION B,WORKFLOW_BASE WB , WORKFLOW_NODE C ");
 		sqlpart.append(" WHERE WB.BUSINESS_ID = B.ID  AND  C.FLOWID = WB.ID AND C.FLOWSTATE = :flowstate  AND C.CURRENT_DEALER_ID = :userId AND WB.BUSINESSTYPE = :businessType  ");
@@ -3031,11 +3031,11 @@
 		params.put("businessType", ConvertUtil.obj2StrBlank(Constants.WORKFLOW_BASE_BUSINESS_TYPE_QUESTION));
 		sqlpart = getMyNodeSql(sqlpart,params);
 		sql.append(sqlpart);
-		sql.append( " GROUP BY WB.ID ORDER BY WB.CREATETIME DESC ");
-		
+		sql.append( " GROUP BY WB.ID, WB.ORDER_CODE, WB.WFNAME, WB.BUSINESSTYPE, WB.CREATERNAME, WB.CREATETIME, C.FLOWSTATE, WB.CURRENT_NODE_ID, WB.CURRENT_NODE_NAME, WB.CUSTOMER_NAME, WB.SUB_CUSTOMER_NAME, WB.PROJECT_NAME, WB.CURRENT_DEALER_NAME, WB.BUSINESS_ID, WB.WFSTATE, B.STATE , B.NAME ORDER BY WB.CREATETIME DESC ");
+
 		return baseDao.queryforSplitPageInfo(pageInfo, sql.toString(), params);
 	}
-	
+
     public StringBuilder getMyNodeSql(StringBuilder sqlpart,Map<String, String> params){
     	String customerId = params.get("customerId");
 		if(StringUtil.notEmpty(customerId)) {
@@ -3045,27 +3045,27 @@
 		if(StringUtil.notEmpty(subCustomerId)) {
 			sqlpart.append(" AND B.SUB_CUSTOMER_ID = :subCustomerId ");
 		}
-		
+
 		String orderName = params.get("orderName");
 		if(StringUtil.notEmpty(orderName)) {
 			sqlpart.append(" AND B.NAME LIKE :orderName ");
 			params.put("orderName", "%"+orderName+"%");
 		}
-		
+
 		String orderCode = params.get("orderCode");
 		if(StringUtil.notEmpty(orderCode)) {
 			sqlpart.append(" AND B.ORDER_CODE LIKE :orderCode ");
 			params.put("orderCode", "%"+orderCode+"%");
 		}
-		
-		
+
+
 		String contract = params.get("contract");
 		if(StringUtil.notEmpty(contract)) {
 			sqlpart.append(" AND B.CONTACT_NAME LIKE :contract ");
 			params.put("contract", "%"+contract+"%");
 		}
-		
-		
+
+
 		String pri = params.get("pri");
 		if(StringUtil.notEmpty(pri)) {
 			String[] pris = pri.split(",");
@@ -3083,9 +3083,9 @@
 				sqlpart.append(")");
 			}
 		}
-		
-		
-		
+
+
+
 		String dg = params.get("dg");
 		if(StringUtil.notEmpty(dg)) {
 			String[] dgs = dg.split(",");
@@ -3103,8 +3103,8 @@
 				sqlpart.append(")");
 			}
 		}
-		
-		
+
+
 		String source = params.get("source");
 		if(StringUtil.notEmpty(source)) {
 			String[] sources = source.split(",");
@@ -3122,8 +3122,8 @@
 				sqlpart.append(")");
 			}
 		}
-		
-		
+
+
 		String sl = params.get("sl");
 		if(StringUtil.notEmpty(sl)) {
 			String[] sls = sl.split(",");
@@ -3146,7 +3146,7 @@
 			sqlpart.append( " AND B.STATE = :state  ");
 			params.put("state", status);
 		}
-    	
+
     	return sqlpart;
     }
 
@@ -3156,19 +3156,19 @@
 		int ywc = 0;
 		//闂鍙楃悊
 		int wtsl = 0;
-		
+
 		//闂瀹℃牳
 		int wtsh = 0;
-		
+
 		//闂璇婃柇
 		int wtzd = 0;
-		
+
 		//鏂规瀹℃壒
 		int fasp = 0;
-		
+
 		//鏂规瀹炴柦
 		int fass = 0;
-		
+
 		//闂鍥為【
 		int wthg = 0;
 		StringBuffer sql = new StringBuffer();
@@ -3177,18 +3177,18 @@
 		paramMap.put("wfstate", Constants.WORKFLOW_BASE_WFSTATE_DELETE);
 		//鏌ヨ璇ヤ汉鍛樻墍灞炵殑椤圭洰
 		sql.append("SELECT COUNT(*) AS NUM,E.STATE FROM SC_WORKFLOW_QUESTION E,WORKFLOW_BASE D,(SELECT B.ID,B.ROLENAME FROM AC_ROLE B WHERE B.STATE = 1   ");
-		sqlall.append("SELECT COUNT(F.ID) FROM (SELECT E.* FROM SC_WORKFLOW_QUESTION E,WORKFLOW_BASE D,(SELECT B.ID,B.ROLENAME FROM AC_ROLE B WHERE B.STATE = 1   ");
-		
+		sqlall.append("SELECT COUNT(F.ID) FROM (SELECT E.ID FROM SC_WORKFLOW_QUESTION E,WORKFLOW_BASE D,(SELECT B.ID,B.ROLENAME FROM AC_ROLE B WHERE B.STATE = 1   ");
+
 		sql.append(") C WHERE E.ID = D.BUSINESS_ID AND D.CURRENT_DEAL_ROLEIDA = C.ID AND D.WFSTATE != :wfstate AND (D.CURRENT_DEALER_ID IS NULL OR D.CURRENT_DEALER_ID = '' )");
 		sqlall.append(") C WHERE E.ID = D.BUSINESS_ID AND D.CURRENT_DEAL_ROLEIDA = C.ID AND D.WFSTATE != :wfstate AND (D.CURRENT_DEALER_ID IS NULL OR D.CURRENT_DEALER_ID = '' )");
-		
+
 		String customer_Id = request.getParameter("customerId");
 		if(!StringUtil.isEmpty(customer_Id)){
 			sql.append(" AND E.CUSTOMER_ID = :customer_Id ");
 			sqlall.append(" AND E.CUSTOMER_ID = :customer_Id ");
 			paramMap.put("customer_Id", customer_Id);
 		}
-		
+
 		sql.append(" GROUP BY E.STATE ");
 		sqlall.append(" GROUP BY E.ID) F ");
 		List<Map> list = baseDao.queryForList(sql.toString(),paramMap);
@@ -3208,38 +3208,38 @@
 					wtzd += num;
 					continue;
 				}
-				
+
 				if(state.equals(Constants.SC_WORKFLOW_QUESTION_STATE_FASP)) {
 					fasp += num;
 					continue;
 				}
-				
+
 				if(state.equals(Constants.SC_WORKFLOW_QUESTION_STATE_FASS)) {
 					fass += num;
 					continue;
 				}
-				
+
 				if(state.equals(Constants.SC_WORKFLOW_QUESTION_STATE_HG)) {
 					wthg += num;
 					continue;
 				}
-				
+
 			}
 		}
 		int all = baseDao.queryForInteger(sqlall.toString(), paramMap);
 		Map map = new HashMap();
 		map.put("wtsl", wtsl);
-		
+
 		map.put("wtsh", wtsh);
-		
+
 		map.put("wtzd", wtzd);
-		
+
 		map.put("fasp", fasp);
-		
+
 		map.put("fass", fass);
-		
+
 		map.put("wthg", wthg);
-		
+
 		map.put("all", all);
 		return map;
 	}
@@ -3253,25 +3253,25 @@
 		 * 濡傛灉鏄鎴锋湇鍔″彴锛屾煡璇㈡垜鐨勫伐鍗曟睜  鍒欐煡璇㈠伐鍗曡〃涓垎缁勬槸 锛堟煡璇㈣瀹㈡埛涓嬫墍鏈夌殑椤圭洰鐨勬湇鍔″彴鍒嗙粍锛�
 		 * 濡傛灉鏄�绘湇鍔″彴锛屽垯鏌ヨ鎵�鏈夊鎴蜂笅锛堝姞鐩熷晢涓嬫墍鏈夐」鐩殑鏈嶅姟鍙板垎缁勶級
 		 */
-		
+
 		StringBuffer sql = new StringBuffer();
 		params.put("wfstate", ConvertUtil.obj2StrBlank(Constants.WORKFLOW_BASE_WFSTATE_DELETE));
-			
+
 		sql.append("SELECT COUNT(D.ID) FROM SC_WORKFLOW_QUESTION E,WORKFLOW_BASE D,(SELECT B.ID,B.ROLENAME FROM AC_ROLE B WHERE B.STATE = 1 ");
-		
+
 		String customer_Id = params.get("customer_Id");
 		if(!StringUtil.isEmpty(customer_Id)){
 			sql.append(" AND B.CUSTOMER_ID = :customer_Id ");
 		}
-		
+
 		sql.append(") C WHERE  E.ID = D.BUSINESS_ID AND D.CURRENT_DEAL_ROLEIDA = C.ID AND D.WFSTATE != :wfstate AND (D.CURRENT_DEALER_ID IS NULL OR D.CURRENT_DEALER_ID = '' )");
 		StringBuilder builder = new StringBuilder(sql);
 		builder = getPoolSql(builder,params);
 		builder.append(" AND D.BUSINESSTYPE = :businessType");
 		params.put("businessType",ConvertUtil.obj2StrBlank( Constants.WORKFLOW_BASE_BUSINESS_TYPE_QUESTION));
-		
+
 		int count = baseDao.queryForInteger(builder.toString(),params);
-		
+
 		return count;
 	}
 
@@ -3280,16 +3280,16 @@
 			Map<String, String> params) {
 		/**
 		 * 鏌ヨ鎴戠殑宸ュ崟姹犺鍒�
-		 * 濡傛灉鏄」鐩湇鍔″彴锛屽垯鐩存帴鏌ヨ宸ュ崟琛� 
+		 * 濡傛灉鏄」鐩湇鍔″彴锛屽垯鐩存帴鏌ヨ宸ュ崟琛�
 		 * 濡傛灉鏄鎴锋湇鍔″彴锛屾煡璇㈡垜鐨勫伐鍗曟睜  鍒欐煡璇㈠伐鍗曡〃涓垎缁勬槸 锛堟煡璇㈣瀹㈡埛涓嬫墍鏈夌殑椤圭洰鐨勫垎缁勶級
 		 * 濡傛灉鏄�绘湇鍔″彴锛屽垯鏌ヨ鎵�鏈夊鎴蜂笅锛堝姞鐩熷晢涓嬫墍鏈夐」鐩殑鍒嗙粍锛�
 		 */
-		
+
 		StringBuffer sql = new StringBuffer();
 		params.put("wfstate", ConvertUtil.obj2StrBlank(Constants.WORKFLOW_BASE_WFSTATE_DELETE));
 		//鏌ヨ璇ヤ汉鍛樻墍灞炵殑椤圭洰
 		sql.append("SELECT D.* FROM SC_WORKFLOW_QUESTION E,WORKFLOW_BASE D,(SELECT B.ID,B.ROLENAME FROM AC_ROLE B WHERE B.STATE = 1   ");
-		
+
 		String customer_Id = params.get("customer_Id");
 		if(!StringUtil.isEmpty(customer_Id)){
 			sql.append(" AND B.CUSTOMER_ID = :customer_Id ");
@@ -3297,16 +3297,16 @@
 		sql.append(") C WHERE E.ID = D.BUSINESS_ID AND D.CURRENT_DEAL_ROLEIDA = C.ID AND D.WFSTATE != :wfstate AND (D.CURRENT_DEALER_ID IS NULL OR D.CURRENT_DEALER_ID = '' )");
 		StringBuilder builder = new StringBuilder(sql);
 		builder = getPoolSql(builder,params);
-		
+
 		builder.append(" AND D.BUSINESSTYPE = :businessType");
 		params.put("businessType", ConvertUtil.obj2StrBlank(Constants.WORKFLOW_BASE_BUSINESS_TYPE_QUESTION));
-		
+
 		builder.append(" ORDER BY D.CREATETIME DESC ");
 		PageInfo result = baseDao.queryforSplitPageInfo(pageInfo, builder.toString(), params);
-		
+
 		return result;
 	}
-	
+
 	public StringBuilder getPoolSql(StringBuilder builder,Map<String, String> params){
 		String status = params.get("status");
 		if(StringUtil.notEmpty(status)) {
@@ -3320,20 +3320,20 @@
 		if(StringUtil.notEmpty(subCustomerId)) {
 			builder.append(" AND D.SUB_CUSTOMER_ID = :subCustomerId ");
 		}
-		
+
 		String orderName = params.get("orderName");
 		if(StringUtil.notEmpty(orderName)) {
 			builder.append(" AND D.WFNAME LIKE :orderName ");
 			params.put("orderName", "%"+orderName+"%");
 		}
-		
-		
+
+
 		String orderCode = params.get("orderCode");
 		if(StringUtil.notEmpty(orderCode)) {
 			builder.append(" AND D.ORDER_CODE LIKE :orderCode");
 			params.put("orderCode", "%"+orderCode+"%");
 		}
-		
+
 		String customerName = params.get("customerName");
 		if(StringUtil.notEmpty(customerName)) {
 			builder.append(" AND D.CUSTOMER_NAME LIKE :customerName ");
@@ -3341,46 +3341,46 @@
 		}
 		return builder;
 	}
-	
+
 	@Override
 	public Map queryQuestionNodeCount(HttpServletRequest request) {
 		//鍒濆鍖栧彉閲�
 		int ywc = 0;
 		//闂鍙楃悊
 		int wtsl = 0;
-		
+
 		//闂瀹℃牳
 		int wtsh = 0;
-		
+
 		//闂璇婃柇
 		int wtzd = 0;
-		
+
 		//鏂规瀹℃壒
 		int fasp = 0;
-		
+
 		//鏂规瀹炴柦
 		int fass = 0;
-		
+
 		//闂鍥為【
 		int wthg = 0;
-		
-		
+
+
 		//鍙湁鏈嶅姟鍙板拰绠$悊浜哄憳鎵嶅彲浠ョ湅鍒版墍鏈夌殑宸ュ崟锛岋紙鎵�浠ユ煡璇㈠綋鍓嶇殑鐢ㄦ埛灞炰簬閭g鏈嶅姟鍙帮級
 		StringBuffer selectSql = new StringBuffer();
 		StringBuffer sql = new StringBuffer();
-		
+
 		Map paramMap = new HashMap();
-		selectSql.append( "SELECT COUNT(*) AS NUM,D.STATE FROM (SELECT A.* FROM SC_WORKFLOW_QUESTION A,WORKFLOW_BASE B , WORKFLOW_NODE C  WHERE B.ID = C.FLOWID AND C.FLOWSTATE = 1  AND C.CURRENT_DEALER_ID IS NOT  NULL AND A.ID = B.BUSINESS_ID  "); 
-		sql.append( "SELECT COUNT(D.ID) FROM (SELECT A.*  FROM SC_WORKFLOW_QUESTION  A,WORKFLOW_BASE B , WORKFLOW_NODE C WHERE  B.ID = C.FLOWID AND C.FLOWSTATE = 1  AND C.CURRENT_DEALER_ID IS NOT NULL AND A.ID = B.BUSINESS_ID ");
+		selectSql.append( "SELECT COUNT(*) AS NUM,D.STATE FROM (SELECT A.ID,a.STATE FROM SC_WORKFLOW_QUESTION A,WORKFLOW_BASE B , WORKFLOW_NODE C  WHERE B.ID = C.FLOWID AND C.FLOWSTATE = 1  AND C.CURRENT_DEALER_ID IS NOT  NULL AND A.ID = B.BUSINESS_ID  ");
+		sql.append( "SELECT COUNT(D.ID) FROM (SELECT A.ID  FROM SC_WORKFLOW_QUESTION  A,WORKFLOW_BASE B , WORKFLOW_NODE C WHERE  B.ID = C.FLOWID AND C.FLOWSTATE = 1  AND C.CURRENT_DEALER_ID IS NOT NULL AND A.ID = B.BUSINESS_ID ");
 		String customer_Id = request.getParameter("customerId");
 		if(!StringUtil.isEmpty(customer_Id)){
 			selectSql.append(" AND A.CUSTOMER_ID = :customer_Id ");
 			sql.append(" AND A.CUSTOMER_ID = :customer_Id ");
 			paramMap.put("customer_Id", customer_Id);
 		}
-		selectSql.append(" GROUP BY A.ID) D  GROUP BY D.STATE ");
+		selectSql.append(" GROUP BY A.ID,a.STATE) D  GROUP BY D.STATE ");
 		sql.append(" GROUP BY A.ID) D ");
-		
+
 		List<Map> list = baseDao.queryForList(selectSql.toString(),paramMap);
 		if(null!=list && list.size()>0) {
 			for(Map map : list) {
@@ -3398,40 +3398,40 @@
 					wtzd += num;
 					continue;
 				}
-				
+
 				if(state.equals(Constants.SC_WORKFLOW_QUESTION_STATE_FASP)) {
 					fasp += num;
 					continue;
 				}
-				
+
 				if(state.equals(Constants.SC_WORKFLOW_QUESTION_STATE_FASS)) {
 					fass += num;
 					continue;
 				}
-				
+
 				if(state.equals(Constants.SC_WORKFLOW_QUESTION_STATE_HG)) {
 					wthg += num;
 					continue;
 				}
-				
+
 			}
 		}
 		int all = baseDao.queryForInteger(sql.toString(), paramMap);
 		Map map = new HashMap();
 		map.put("wtsl", wtsl);
-		
+
 		map.put("wtsh", wtsh);
-		
+
 		map.put("wtzd", wtzd);
-		
+
 		map.put("fasp", fasp);
-		
+
 		map.put("fass", fass);
-		
+
 		map.put("wthg", wthg);
-		
+
 		map.put("all", all);
-		
+
 		return map;
 	}
 
@@ -3439,14 +3439,14 @@
 	public int queryQuestionOrderNodeCount(Map<String, String> params) {
 		StringBuilder sql = new StringBuilder();
 		StringBuilder sqlpart = new StringBuilder();
-		sql.append("SELECT COUNT(D.ID) FROM (SELECT B.* FROM SC_WORKFLOW_QUESTION B,WORKFLOW_BASE WB , WORKFLOW_NODE C   ");
+		sql.append("SELECT COUNT(D.ID) FROM (SELECT B.ID FROM SC_WORKFLOW_QUESTION B,WORKFLOW_BASE WB , WORKFLOW_NODE C   ");
 		sqlpart.append(" WHERE WB.BUSINESS_ID = B.ID AND  C.FLOWID = WB.ID  AND C.FLOWSTATE = 1 AND C.CURRENT_DEALER_ID IS NOT NULL AND WB.BUSINESSTYPE = :businessType ");
 		sqlpart = getNodeSql(sqlpart,params);
-		
+
 		sql.append(sqlpart);
 		sql.append( " GROUP BY B.ID  ) D");
 		params.put("businessType", ConvertUtil.obj2StrBlank(Constants.WORKFLOW_BASE_BUSINESS_TYPE_QUESTION));
-		
+
 		return baseDao.queryForInteger(sql.toString(),params);
 	}
 
@@ -3455,19 +3455,19 @@
 			Map<String, String> params) {
 		StringBuilder sql = new StringBuilder();
 		StringBuilder sqlpart = new StringBuilder();
-		sql.append("SELECT WB.ID,WB.ORDER_CODE,WB.WFNAME,WB.BUSINESSTYPE,WB.CREATERNAME,WB.CREATETIME,WB.WFNOTE , ");
+		sql.append("SELECT WB.ID,WB.ORDER_CODE,WB.WFNAME,WB.BUSINESSTYPE,WB.CREATERNAME,WB.CREATETIME, ");
 		sql.append("WB.CURRENT_NODE_ID,WB.CURRENT_NODE_NAME,WB.CUSTOMER_NAME,WB.SUB_CUSTOMER_NAME,WB.PROJECT_NAME,WB.CURRENT_DEALER_NAME,WB.BUSINESS_ID,WB.WFSTATE,B.STATE ,B.NAME ");
 		sql.append("FROM SC_WORKFLOW_QUESTION B,WORKFLOW_BASE WB , WORKFLOW_NODE C ");
 		sqlpart.append(" WHERE WB.BUSINESS_ID = B.ID  AND  C.FLOWID = WB.ID AND C.FLOWSTATE = 1  AND C.CURRENT_DEALER_ID IS NOT NULL AND WB.BUSINESSTYPE = :businessType ");
 		params.put("businessType", ConvertUtil.obj2StrBlank(Constants.WORKFLOW_BASE_BUSINESS_TYPE_QUESTION));
 		sqlpart = getNodeSql(sqlpart,params);
-		
+
 		sql.append(sqlpart);
-		sql.append( " GROUP BY WB.ID ORDER BY WB.CREATETIME DESC ");
-		
+		sql.append( " GROUP BY WB.ID, WB.ORDER_CODE, WB.WFNAME, WB.BUSINESSTYPE, WB.CREATERNAME, WB.CREATETIME, WB.CURRENT_NODE_ID, WB.CURRENT_NODE_NAME, WB.CUSTOMER_NAME, WB.SUB_CUSTOMER_NAME, WB.PROJECT_NAME, WB.CURRENT_DEALER_NAME, WB.BUSINESS_ID, WB.WFSTATE, B.STATE , B.NAME ORDER BY WB.CREATETIME DESC ");
+
 		return baseDao.queryforSplitPageInfo(pageInfo, sql.toString(), params);
 	}
-	
+
 	public StringBuilder getNodeSql(StringBuilder sqlpart,Map<String, String> params){
 		String customerId = params.get("customerId");
 		if(StringUtil.notEmpty(customerId)) {
@@ -3477,27 +3477,27 @@
 		if(StringUtil.notEmpty(subCustomerId)) {
 			sqlpart.append(" AND B.SUB_CUSTOMER_ID = :subCustomerId ");
 		}
-		
+
 		String orderName = params.get("orderName");
 		if(StringUtil.notEmpty(orderName)) {
 			sqlpart.append(" AND B.NAME LIKE :orderName ");
 			params.put("orderName", "%"+orderName+"%");
 		}
-		
+
 		String orderCode = params.get("orderCode");
 		if(StringUtil.notEmpty(orderCode)) {
 			sqlpart.append(" AND B.ORDER_CODE LIKE :orderCode ");
 			params.put("orderCode", "%"+orderCode+"%");
 		}
-		
-		
+
+
 		String contract = params.get("contract");
 		if(StringUtil.notEmpty(contract)) {
 			sqlpart.append(" AND B.CONTACT_NAME LIKE :contract ");
 			params.put("contract", "%"+contract+"%");
 		}
-		
-		
+
+
 		String pri = params.get("pri");
 		if(StringUtil.notEmpty(pri)) {
 			String[] pris = pri.split(",");
@@ -3515,9 +3515,9 @@
 				sqlpart.append(")");
 			}
 		}
-		
-		
-		
+
+
+
 		String dg = params.get("dg");
 		if(StringUtil.notEmpty(dg)) {
 			String[] dgs = dg.split(",");
@@ -3535,8 +3535,8 @@
 				sqlpart.append(")");
 			}
 		}
-		
-		
+
+
 		String source = params.get("source");
 		if(StringUtil.notEmpty(source)) {
 			String[] sources = source.split(",");
@@ -3554,7 +3554,7 @@
 				sqlpart.append(")");
 			}
 		}
-		
+
 		String sl = params.get("sl");
 		if(StringUtil.notEmpty(sl)) {
 			String[] sls = sl.split(",");
@@ -3576,16 +3576,16 @@
 		if(StringUtil.notEmpty(status)) {
 			sqlpart.append( " AND B.STATE = :state  ");
 			params.put("state", status);
-				
+
 		}
 		return sqlpart;
 	}
-	
+
 	@Override
 	public int queryQuestionJxzCount(Map<String, String> params) {
 		StringBuilder sql = new StringBuilder();
 		StringBuilder sqlpart = new StringBuilder();
-		sql.append("SELECT COUNT(D.ID) FROM (SELECT B.* FROM SC_WORKFLOW_QUESTION B,WORKFLOW_BASE WB   ");
+		sql.append("SELECT COUNT(D.ID) FROM (SELECT B.ID FROM SC_WORKFLOW_QUESTION B,WORKFLOW_BASE WB   ");
 		sqlpart.append(" WHERE WB.BUSINESS_ID = B.ID  AND WB.BUSINESSTYPE = :businessType  AND  (\n" +
 				"\tB.STATE != '9'\n" +
 				"\tAND B.STATE != '10'\n" +
@@ -3595,7 +3595,7 @@
 		sql.append(sqlpart);
 		sql.append( " GROUP BY B.ID  ) D");
 		params.put("businessType", ConvertUtil.obj2StrBlank(Constants.WORKFLOW_BASE_BUSINESS_TYPE_QUESTION));
-		
+
 		return baseDao.queryForInteger(sql.toString(),params);
 	}
 
@@ -3604,7 +3604,7 @@
 			Map<String, String> params) {
 		StringBuilder sql = new StringBuilder();
 		StringBuilder sqlpart = new StringBuilder();
-		sql.append("SELECT WB.* ,B.STATE ,B.NAME ");
+		sql.append("SELECT  WB.ID,WB.WFNAME,WB.BUSINESSTYPE,WB.WFSTATE,WB.WORKFLOWTYPE,WB.CREATERNAME,WB.CREATERID,WB.CREATETIME,WB.ENDTIME,WB.MAINFLOWID,WB.CURRENT_NODE_NAME,WB.CURRENT_NODE_ID,WB.DEAL_TYPE,WB.CURRENT_DEALER_ID,WB.CURRENT_DEALER_NAME,WB.CURRENT_DEAL_ROLEIDA,WB.CURRENT_DEAL_ROLENAME,WB.WF_TEMPLATE_ID,WB.BUSINESS_ID,WB.ORDER_CODE,WB.CUSTOMER_ID,WB.CUSTOMER_NAME,WB.PROJECT_ID,WB.PROJECT_NAME,WB.SUB_CUSTOMER_NAME,WB.SUB_CUSTOMER_ID, B.STATE , B.NAME  ");
 		sql.append("FROM SC_WORKFLOW_QUESTION B,WORKFLOW_BASE WB LEFT JOIN WORKFLOW_NODE C ON C.FLOWID = WB.ID\n" +
 				"AND WB.CURRENT_NODE_ID = C.ID ");
 		sqlpart.append(" WHERE WB.BUSINESS_ID = B.ID  AND WB.BUSINESSTYPE = :businessType AND (\n" +
@@ -3615,11 +3615,11 @@
 		params.put("businessType", ConvertUtil.obj2StrBlank(Constants.WORKFLOW_BASE_BUSINESS_TYPE_QUESTION));
 		sqlpart = getJxzSql(sqlpart,params);
 		sql.append(sqlpart);
-		sql.append( " GROUP BY WB.ID ORDER BY WB.CREATETIME DESC ");
-		
+		sql.append( " GROUP BY  WB.ID,WB.WFNAME,WB.BUSINESSTYPE,WB.WFSTATE,WB.WORKFLOWTYPE,WB.CREATERNAME,WB.CREATERID,WB.CREATETIME,WB.ENDTIME,WB.MAINFLOWID,WB.CURRENT_NODE_NAME,WB.CURRENT_NODE_ID,WB.DEAL_TYPE,WB.CURRENT_DEALER_ID,WB.CURRENT_DEALER_NAME,WB.CURRENT_DEAL_ROLEIDA,WB.CURRENT_DEAL_ROLENAME,WB.WF_TEMPLATE_ID,WB.BUSINESS_ID,WB.ORDER_CODE,WB.CUSTOMER_ID,WB.CUSTOMER_NAME,WB.PROJECT_ID,WB.PROJECT_NAME,WB.SUB_CUSTOMER_NAME,WB.SUB_CUSTOMER_ID, B.STATE , B.NAME  ORDER BY WB.CREATETIME DESC ");
+
 		return baseDao.queryforSplitPageInfo(pageInfo, sql.toString(), params);
 	}
-	
+
 	public  StringBuilder getJxzSql(StringBuilder sqlpart,Map<String, String> params){
 		String customerId = params.get("customerId");
 		if(StringUtil.notEmpty(customerId)) {
@@ -3629,27 +3629,27 @@
 		if(StringUtil.notEmpty(subCustomerId)) {
 			sqlpart.append(" AND B.SUB_CUSTOMER_ID = :subCustomerId ");
 		}
-		
+
 		String orderName = params.get("orderName");
 		if(StringUtil.notEmpty(orderName)) {
 			sqlpart.append(" AND B.NAME LIKE :orderName ");
 			params.put("orderName", "%"+orderName+"%");
 		}
-		
+
 		String orderCode = params.get("orderCode");
 		if(StringUtil.notEmpty(orderCode)) {
 			sqlpart.append(" AND B.ORDER_CODE LIKE :orderCode ");
 			params.put("orderCode", "%"+orderCode+"%");
 		}
-		
-		
+
+
 		String contract = params.get("contract");
 		if(StringUtil.notEmpty(contract)) {
 			sqlpart.append(" AND B.CONTACT_NAME LIKE :contract ");
 			params.put("contract", "%"+contract+"%");
 		}
-		
-		
+
+
 		String pri = params.get("pri");
 		if(StringUtil.notEmpty(pri)) {
 			String[] pris = pri.split(",");
@@ -3667,9 +3667,9 @@
 				sqlpart.append(")");
 			}
 		}
-		
-		
-		
+
+
+
 		String dg = params.get("dg");
 		if(StringUtil.notEmpty(dg)) {
 			String[] dgs = dg.split(",");
@@ -3687,8 +3687,8 @@
 				sqlpart.append(")");
 			}
 		}
-		
-		
+
+
 		String source = params.get("source");
 		if(StringUtil.notEmpty(source)) {
 			String[] sources = source.split(",");
@@ -3706,8 +3706,8 @@
 				sqlpart.append(")");
 			}
 		}
-		
-		
+
+
 		String sl = params.get("sl");
 		if(StringUtil.notEmpty(sl)) {
 			String[] sls = sl.split(",");
@@ -3739,33 +3739,33 @@
 		int ywc = 0;
 		//闂鍙楃悊
 		int wtsl = 0;
-		
+
 		//闂瀹℃牳
 		int wtsh = 0;
-		
+
 		//闂璇婃柇
 		int wtzd = 0;
-		
+
 		//鏂规瀹℃壒
 		int fasp = 0;
-		
+
 		//鏂规瀹炴柦
 		int fass = 0;
-		
+
 		//闂鍥為【
 		int wthg = 0;
-		
-		
+
+
 		//鍙湁鏈嶅姟鍙板拰绠$悊浜哄憳鎵嶅彲浠ョ湅鍒版墍鏈夌殑宸ュ崟锛岋紙鎵�浠ユ煡璇㈠綋鍓嶇殑鐢ㄦ埛灞炰簬閭g鏈嶅姟鍙帮級
 		StringBuffer selectSql = new StringBuffer();
 		StringBuffer sql = new StringBuffer();
-		
+
 		Map paramMap = new HashMap();
 		selectSql.append( "SELECT COUNT(*) AS NUM,A.STATE FROM  SC_WORKFLOW_QUESTION A,WORKFLOW_BASE B  LEFT JOIN WORKFLOW_NODE C ON B.ID = C.FLOWID\n" +
 				"AND B.CURRENT_NODE_ID = C.ID\n" +
 				"AND C.FLOWSTATE <> 3 WHERE A.ID = B.BUSINESS_ID AND B.WFSTATE = 1  AND C.FLOWSTATE is not null");
 		sql.append( "SELECT COUNT(A.ID)  FROM SC_WORKFLOW_QUESTION  A,WORKFLOW_BASE B  WHERE   A.ID = B.BUSINESS_ID");
-		
+
 		String customer_Id = request.getParameter("customerId");
 		if(!StringUtil.isEmpty(customer_Id)){
 			selectSql.append(" AND A.CUSTOMER_ID = :customer_Id ");
@@ -3773,7 +3773,7 @@
 			paramMap.put("customer_Id", customer_Id);
 		}
 		selectSql.append("  GROUP BY A.STATE ");
-		
+
 		List<Map> list = baseDao.queryForList(selectSql.toString(),paramMap);
 		if(null!=list && list.size()>0) {
 			for(Map map : list) {
@@ -3791,58 +3791,58 @@
 					wtzd += num;
 					continue;
 				}
-				
+
 				if(state.equals(Constants.SC_WORKFLOW_QUESTION_STATE_FASP)) {
 					fasp += num;
 					continue;
 				}
-				
+
 				if(state.equals(Constants.SC_WORKFLOW_QUESTION_STATE_FASS)) {
 					fass += num;
 					continue;
 				}
-				
+
 				if(state.equals(Constants.SC_WORKFLOW_QUESTION_STATE_HG)) {
 					wthg += num;
 					continue;
 				}
-				
+
 			}
 		}
 		sql.append(" AND A.STATE != '9' AND A.STATE !='7' AND A.STATE != '10'");
 		int all = baseDao.queryForInteger(sql.toString(), paramMap);
 		Map map = new HashMap();
 		map.put("wtsl", wtsl);
-		
+
 		map.put("wtsh", wtsh);
-		
+
 		map.put("wtzd", wtzd);
-		
+
 		map.put("fasp", fasp);
-		
+
 		map.put("fass", fass);
-		
+
 		map.put("wthg", wthg);
-		
+
 		map.put("all", all);
-		
+
 		return map;
 	}
-	
+
 	@Override
 	public int queryQuestionEndCount(Map<String, String> params) {
 		StringBuilder sql = new StringBuilder();
 		StringBuilder sqlpart = new StringBuilder();
-		sql.append("SELECT COUNT(D.ID) FROM (SELECT B.* FROM SC_WORKFLOW_QUESTION B,WORKFLOW_BASE WB   ");
+		sql.append("SELECT COUNT(D.ID) FROM (SELECT B.ID FROM SC_WORKFLOW_QUESTION B,WORKFLOW_BASE WB   ");
 		sqlpart.append(" WHERE WB.BUSINESS_ID = B.ID  AND WB.BUSINESSTYPE = :businessType  AND WB.WFSTATE = :type ");
 		params.put("type", params.get("type"));
-		
+
 		sqlpart = getEndSql(sqlpart,params);
-		
+
 		sql.append(sqlpart);
 		sql.append( " GROUP BY B.ID  ) D");
 		params.put("businessType", ConvertUtil.obj2StrBlank(Constants.WORKFLOW_BASE_BUSINESS_TYPE_QUESTION));
-		
+
 		return baseDao.queryForInteger(sql.toString(),params);
 	}
 
@@ -3851,22 +3851,23 @@
 			Map<String, String> params) {
 		StringBuilder sql = new StringBuilder();
 		StringBuilder sqlpart = new StringBuilder();
-		sql.append("SELECT B.RESOLVE_TYPE_NAME,B.CREATE_TIME,B.CREATE_USER_NAME,WB.ID,WB.ORDER_CODE,WB.WFNAME,WB.BUSINESSTYPE,WB.CREATERNAME,WB.CREATETIME,WB.WFNOTE ,WB.ENDTIME , ");
+		sql.append("SELECT B.RESOLVE_TYPE_NAME,B.CREATE_TIME,B.CREATE_USER_NAME,WB.ID,WB.ORDER_CODE,WB.WFNAME,WB.BUSINESSTYPE,WB.CREATERNAME,WB.CREATETIME, WB.ENDTIME , ");
+//		sql.append("SELECT B.RESOLVE_TYPE_NAME,B.CREATE_TIME,B.CREATE_USER_NAME,WB.ID,WB.ORDER_CODE,WB.WFNAME,WB.BUSINESSTYPE,WB.CREATERNAME,WB.CREATETIME,WB.WFNOTE ,WB.ENDTIME , ");
 		sql.append("WB.CURRENT_NODE_ID,WB.CURRENT_NODE_NAME,WB.CUSTOMER_NAME,WB.SUB_CUSTOMER_NAME,WB.PROJECT_NAME,WB.CURRENT_DEALER_NAME,WB.BUSINESS_ID,WB.WFSTATE,B.STATE ,B.NAME ,");
 		sql.append(" D.HANG_UP_USERNAME,D.HANG_UP_TIME,D.HANG_UP_REASON ,WB.SCORE ");
 		sql.append("FROM (SELECT F.*,E.SCORE FROM  WORKFLOW_BASE F LEFT JOIN ORDER_SATIS_INFO E ON F.ID = E.BUSINESS_ID WHERE  F.BUSINESSTYPE = :businessType ) WB, WORKFLOW_NODE C ,SC_WORKFLOW_QUESTION B LEFT JOIN HANG_UP_INFO D ON B.ID = D.BUS_ID ");
 		sqlpart.append(" WHERE WB.BUSINESS_ID = B.ID  AND  C.FLOWID = WB.ID AND WB.WFSTATE = :type ");
 		params.put("type", params.get("type"));
 		params.put("businessType", ConvertUtil.obj2StrBlank(Constants.WORKFLOW_BASE_BUSINESS_TYPE_QUESTION));
-		
+
 		sqlpart = getEndSql(sqlpart,params);
-		
+
 		sql.append(sqlpart);
-		sql.append( " GROUP BY WB.ID ORDER BY WB.CREATETIME DESC ");
-		
+		sql.append( " GROUP BY WB.ID,B.RESOLVE_TYPE_NAME, B.CREATE_TIME, B.CREATE_USER_NAME, WB.ID, WB.ORDER_CODE, WB.WFNAME, WB.BUSINESSTYPE, WB.CREATERNAME, WB.CREATETIME, WB.ENDTIME , WB.CURRENT_NODE_ID, WB.CURRENT_NODE_NAME, WB.CUSTOMER_NAME, WB.SUB_CUSTOMER_NAME, WB.PROJECT_NAME, WB.CURRENT_DEALER_NAME, WB.BUSINESS_ID, WB.WFSTATE, B.STATE , B.NAME , D.HANG_UP_USERNAME, D.HANG_UP_TIME, D.HANG_UP_REASON , WB.SCORE ORDER BY WB.CREATETIME DESC ");
+
 		return baseDao.queryforSplitPageInfo(pageInfo, sql.toString(), params);
 	}
-	
+
 	public StringBuilder getEndSql(StringBuilder sqlpart,Map<String, String> params){
 		String customerId = params.get("customerId");
 		if(StringUtil.notEmpty(customerId)) {
@@ -3876,27 +3877,27 @@
 		if(StringUtil.notEmpty(subCustomerId)) {
 			sqlpart.append(" AND B.SUB_CUSTOMER_ID = :subCustomerId ");
 		}
-		
+
 		String orderName =  params.get("orderName");
 		if(StringUtil.notEmpty(orderName)) {
 			sqlpart.append(" AND B.NAME LIKE :orderName ");
 			params.put("orderName", "%"+orderName+"%");
 		}
-		
+
 		String orderCode =  params.get("orderCode");
 		if(StringUtil.notEmpty(orderCode)) {
 			sqlpart.append(" AND B.ORDER_CODE LIKE :orderCode ");
 			params.put("orderCode", "%"+orderCode+"%");
 		}
-		
-		
+
+
 		String contract =  params.get("contract");
 		if(StringUtil.notEmpty(contract)) {
 			sqlpart.append(" AND B.CONTACT_NAME LIKE :contract ");
 			params.put("contract", "%"+contract+"%");
 		}
-		
-		
+
+
 		String pri =  params.get("pri");
 		if(StringUtil.notEmpty(pri)) {
 			String[] pris = pri.split(",");
@@ -3914,9 +3915,9 @@
 				sqlpart.append(")");
 			}
 		}
-		
-		
-		
+
+
+
 		String dg =  params.get("dg");
 		if(StringUtil.notEmpty(dg)) {
 			String[] dgs = dg.split(",");
@@ -3934,8 +3935,8 @@
 				sqlpart.append(")");
 			}
 		}
-		
-		
+
+
 		String source =  params.get("source");
 		if(StringUtil.notEmpty(source)) {
 			String[] sources = source.split(",");
@@ -3953,8 +3954,8 @@
 				sqlpart.append(")");
 			}
 		}
-		
-		
+
+
 		String sl =  params.get("sl");
 		if(StringUtil.notEmpty(sl)) {
 			String[] sls = sl.split(",");
@@ -3979,7 +3980,7 @@
 		}
 		return sqlpart;
 	}
-	
+
 	@Override
 	public String queryQuestionGroupDealer(HttpServletRequest request) {
 		String group_Id = request.getParameter("group_id");
@@ -4003,7 +4004,7 @@
 		}
 		return userName.toString();
 	}
-	
+
 	@Override
 	public String queryQuestionDealer(HttpServletRequest request) {
 		StringBuffer userName = new StringBuffer();
@@ -4022,6 +4023,6 @@
 		return userName.toString();
 	}
 
-		
+
 
 }

--
Gitblit v1.9.1