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/releaseManage/ReleaseFacadeImpl.java |  137 ++++++++++++++++++++++-----------------------
 1 files changed, 67 insertions(+), 70 deletions(-)

diff --git a/src/cn/ksource/web/facade/releaseManage/ReleaseFacadeImpl.java b/src/cn/ksource/web/facade/releaseManage/ReleaseFacadeImpl.java
index ad513ef..3db47f5 100644
--- a/src/cn/ksource/web/facade/releaseManage/ReleaseFacadeImpl.java
+++ b/src/cn/ksource/web/facade/releaseManage/ReleaseFacadeImpl.java
@@ -1,15 +1,5 @@
 package cn.ksource.web.facade.releaseManage;
 
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import javax.servlet.http.HttpServletRequest;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Repository;
-
 import cn.ksource.beans.GG_RECORD;
 import cn.ksource.beans.SC_WORKFLOW_RELEASE;
 import cn.ksource.beans.WORKFLOW_BASE;
@@ -18,7 +8,6 @@
 import cn.ksource.core.dao.SqlParameter;
 import cn.ksource.core.util.ConvertUtil;
 import cn.ksource.core.util.DateUtil;
-import cn.ksource.core.util.JsonUtil;
 import cn.ksource.core.util.StringUtil;
 import cn.ksource.core.util.TreeUtil;
 import cn.ksource.core.web.SysInfoMsg;
@@ -33,7 +22,15 @@
 import cn.ksource.web.service.WorkOrderCodeService;
 import cn.ksource.web.service.record.RecordService;
 import cn.ksource.web.service.workFlowSupport.WorkFlowSupportService;
-	
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Repository;
+
+import javax.servlet.http.HttpServletRequest;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
 @SuppressWarnings("unchecked")
 @Repository
 public class ReleaseFacadeImpl implements ReleaseFacade{
@@ -43,17 +40,17 @@
 	private DSLFacade dslFacade;
 	@Autowired
 	private ChangeFacade changeFacade;
-	
+
 	@Autowired
 	private WorkOrderCodeService workOrderCodeService;
-	
+
 	@Autowired
 	private WorkFlowSupportService workFlowSupportService;
 	@Autowired
 	private RecordService recordService;
 	@Autowired
 	private WorkflowCoreService workflowCoreService;
-	
+
 	/**
 	 * 鑾峰彇鎴戠殑鍙戝竷绠$悊鏁版嵁
 	 * @param request
@@ -88,7 +85,7 @@
 			.addValue("startDate", startDate+"000000")
 			.addValue("endDate", endDate+"666666");
 
-		
+
 		StringBuilder builder = new StringBuilder();
 		builder.append(" select r.NAME,b.CURRENT_DEALER_NAME,r.PROJECT_NAME,r.RELEASE_REASON,n.*,b.WFNAME,b.CREATERNAME,b.CREATETIME,b.CURRENT_NODE_NAME,b.BUSINESSTYPE, ");
 		builder.append(" r.ORDER_CODE,r.ID ORDERID,b.CUSTOMER_NAME,b.SUB_CUSTOMER_NAME,B.WFSTATE  ");
@@ -101,11 +98,11 @@
 		builder.append(" 	where CURRENT_DEALER_ID = :userId  ");
 				//鐜妭鐘舵��
 				if(StringUtil.isNotBlank(nodeState)){
-					builder.append("and FLOWSTATE =:nodeState ");	
+					builder.append("and FLOWSTATE =:nodeState ");
 				}
 		builder.append(" 	order by FLOWSTATE asc  ");
 		builder.append(" 	) t  ");
-		builder.append(" 	group by FLOWID ");
+		builder.append(" 	group by FLOWID,NODEID,NODETIME,NODESTATE ");
 		builder.append(" ) n  ");
 		builder.append("  on b.ID = n.FLOWID ");
 		//builder.append(" where  b.PARTNER_ID =:partnerId ");
@@ -114,9 +111,9 @@
 		//宸ュ崟鐘舵��
 		if(StringUtil.notEmpty(flowState)) {
 			builder.append(" AND b.WFSTATE =:flowState ");
-			
+
 		}
-		
+
 		//瀹㈡埛
 		if(StringUtil.isNotBlank(customerId)) {
 			builder.append(" AND b.CUSTOMER_ID = :customerId ");
@@ -129,7 +126,7 @@
 		if(StringUtil.isNotBlank(projectId)) {
 			builder.append(" AND b.PROJECT_ID = :projectId ");
 		}
-		
+
 		if(StringUtil.notEmpty(orderCode)) {
 			builder.append(" AND r.ORDER_CODE LIKE :orderCode");
 		}
@@ -145,13 +142,13 @@
 
 
 		builder.append(" order by n.NODESTATE ASC,n.NODETIME desc,b.CREATETIME desc ");
-		
+
 		Map supportMap = new HashMap();
 		supportMap.put("sql", builder.toString());
 		supportMap.put("param", param);
 		return supportMap;
 	}
-	
+
 	@Override
 	public int queryMyRealseCount(HttpServletRequest request) {
 		Map supportMap = getMyRealseSupportMap(request);
@@ -167,7 +164,7 @@
 		SqlParameter param = (SqlParameter)supportMap.get("param");
 		return baseDao.queryforSplitPage(request, sql, param);
 	}
-	
+
 	@Override
 	public List queryLinkDeviceList(String flowId) {
 		String sql = " select c.id,c.ciname,c.position,c.SEARCHCODE seachcode from cmdb_ci_base c " +
@@ -189,13 +186,13 @@
 		}
 		return list;
 	}
-	
+
 	@Override
 	public Map getChangeInfoById(String changeId) {
 		String sql = "select oa_id,id change_id,name,customer_id,customer_name,project_id,project_name from sc_workflow_change where id = :changeId ";
 		return baseDao.queryForMap(sql, new SqlParameter("changeId", changeId));
 	}
-	
+
 	@Override
 	public String saveRelease(HttpServletRequest request, SC_WORKFLOW_RELEASE release) {
 		String orderId = request.getParameter("orderId");
@@ -258,7 +255,7 @@
 
 		String[] linkOrderIds = request.getParameterValues("linkOrderId");
 		String[] linkDeviceIds = request.getParameterValues("linkDeviceId");
-		
+
 		if(StringUtil.isBlank(flowId)||flowId.equals(orderId)){
 			String sql = " update sc_workflow_release set flow_id = :orderId where id=:orderId ";
 			baseDao.execute(sql, new SqlParameter("orderId",orderId));
@@ -272,7 +269,7 @@
 		//saveSysInfo(orderId,sysInfoJson);
 		return orderId;
 	}
-	
+
 	@Override
 	public SysInfoMsg doOrganizationDSL(HttpServletRequest request){
 		String orderId = request.getParameter("orderId");
@@ -322,7 +319,7 @@
 			sql = " update DSL_ORDER_LINK set FLOW_ID = :flowId where FLOW_ID = :orderId ";
 			baseDao.execute(sql, param);
 		}
-		
+
 		//澧炲姞澶勭悊璁板綍
 		GG_RECORD record = new GG_RECORD();
 		record.setDeal_content("鍒涘缓鍙戝竷锛�"+userName+"鍒涘缓浜嗗彂甯冩祦绋�");
@@ -331,10 +328,10 @@
 		record.setDeal_user_name(userName);
 		record.setBusiness_id(flowId);
 		recordService.addRecord(record);
-		
+
 		return msg;
 	}
-	
+
 	@Override
 	public Map getDSLInfo(String configureId, String thirdCateId, String flowId, String partnerId) {
 		SqlParameter param = new SqlParameter();
@@ -342,7 +339,7 @@
 			.addValue("thirdCateId", thirdCateId)
 			.addValue("flowId", flowId)
 			.addValue("partnerId", partnerId);
-		
+
 		StringBuilder builder = new StringBuilder();
 		//鏌ヨdsl鍩烘湰淇℃伅
 		builder.append(" select id,pid,'name',note,lv from CONFIG_DSL where state=1 and THIRD_CATEGORY_ID=:thirdCateId and PARTNER_ID=:partnerId order by lv,sort_id asc ");
@@ -366,7 +363,7 @@
 		root.put("versionNo",versionNo);
 		return root;
 	}
-	
+
 	@Override
 	public Map getNextNode(Map<String, String> params) {
 		String nodeId = params.get("nodeId");
@@ -395,7 +392,7 @@
 		nextNode.put("curTemplateId", templateId);
 		return nextNode;
 	}
-	
+
 	@Override
 	public SysInfoMsg doApproveAssign(HttpServletRequest request) {
 		String orderId = request.getParameter("orderId");
@@ -412,7 +409,7 @@
 			return doReleaseNotice(request);
 		/*}*/
 	}
-	
+
 	@Override
 	public SysInfoMsg doReleaseNotice(HttpServletRequest request) {
 		String orderId = request.getParameter("orderId");
@@ -422,16 +419,16 @@
 		Map user = WebUtil.getLoginUser(request).getLoginUser();
 		String userName = user.get("ZSXM").toString();
 		String userId = user.get("Id").toString();
-		
+
 		SC_WORKFLOW_RELEASE release = new SC_WORKFLOW_RELEASE(orderId).getInstanceById();
-		
+
 		List<Map> userList = new ArrayList<Map>();
 	    Map executorMap = new HashMap();
 		executorMap.put("USER_ID", release.getExecute_id());
 		executorMap.put("USER_NAME", release.getExecute_name());
 		executorMap.put("IS_ADMIN", "1");
 		userList.add(executorMap);
-		
+
 		WorkFlowSupportEntity support = new WorkFlowSupportEntity();
 		support.setFlowId(flowId);
 		support.setNodeId(nodeId);
@@ -442,7 +439,7 @@
 		support.setNextNodeTemplateId(Constants.RELEASE_EXECUTE);
 		support.setWorkFlowType(Constants.WORKFLOW_BASE_BUSINESS_TYPE_RELEASE);
 		SysInfoMsg msg = workFlowSupportService.doOrderFlow(support);
-		
+
 		//澧炲姞澶勭悊璁板綍
 		String dealUserName="";
 		for(Map map:userList){
@@ -459,10 +456,10 @@
 		record.setDeal_user_name(userName);
 		record.setBusiness_id(flowId);
 		recordService.addRecord(record);
-		
+
 		return msg;
 	}
-	
+
 	@Override
 	public SysInfoMsg doReleaseExec(HttpServletRequest request) {
 		String orderId = request.getParameter("orderId");
@@ -490,16 +487,16 @@
 		support.setUserName(userName);
 		support.setUserId(userId);
 		support.setNote(flowNote);
-		
+
 		support.setEverDealflag(true);
 		support.setEverNodeTemplateId(Constants.RELEASE_APPROVE);
 		support.setNextNodeTemplateId(Constants.RELEASE_APPROVAL);
 		support.setWorkFlowType(Constants.WORKFLOW_BASE_BUSINESS_TYPE_RELEASE);
 		SysInfoMsg msg = workFlowSupportService.doOrderFlow(support);
-		
+
 		//鏌ヨ鍙戝竷瀹℃壒涓昏礋璐d汉()
 		Map<String, String> lastNode = changeFacade.queryUserByTemplateId(flowId, Constants.RELEASE_APPROVE);
-		
+
 		//澧炲姞澶勭悊璁板綍
 		GG_RECORD record = new GG_RECORD();
 		record.setDeal_content("宸ュ崟娴佽浆锛�"+userName+"灏嗗伐鍗曞彂閫佺粰浜�"+lastNode.get("CURRENT_DEALER_NAME"));
@@ -508,7 +505,7 @@
 		record.setDeal_user_name(userName);
 		record.setBusiness_id(flowId);
 		recordService.addRecord(record);
-		
+
 		return msg;
 	}
 
@@ -520,7 +517,7 @@
 		String nodeId = request.getParameter("nodeId");
 		String flowId = request.getParameter("flowId");
 		String flowNote = request.getParameter("flowNote");
-		
+
 		Map user = WebUtil.getLoginUser(request).getLoginUser();
 		String userName = user.get("ZSXM").toString();
 		String userId = user.get("Id").toString();
@@ -568,12 +565,12 @@
 			return null;
 		}
 	}
-	
+
 	@Override
 	public void doOrderFinish(HttpServletRequest request){
 		String orderId = request.getParameter("orderId");
-		String nodeId = request.getParameter("nodeId"); 
-		String flowNote = request.getParameter("flowNote"); 
+		String nodeId = request.getParameter("nodeId");
+		String flowNote = request.getParameter("flowNote");
 		String sucessFlag = request.getParameter("sucessFlag");
 		if (StringUtil.isBlank(sucessFlag)) {
 			sucessFlag = "1";
@@ -596,7 +593,7 @@
 		support.setFlowEndflag(true);
 		support.setWorkFlowType(Constants.WORKFLOW_BASE_BUSINESS_TYPE_RELEASE);
 		workFlowSupportService.doOrderFlow(support);
-		
+
 		//淇濆瓨dsl鎿嶄綔璁板綍
 		dslFacade.saveConfigDslDealRecord(flowId);
 		//鏇存柊dsl鍏崇郴
@@ -614,13 +611,13 @@
 		record.setBusiness_id(flowId);
 		recordService.addRecord(record);
 	}
-	
+
 	@Override
 	public List querySysInfoList(String orderId) {
 		String sql = " select * from SC_WORKFLOW_RELEASE_BUSINESS_SYS where BUSINESS_ID = :orderId" ;
 		return baseDao.queryForList(sql,new SqlParameter().addValue("orderId", orderId));
 	}
-	
+
 	@Override
 	public boolean doAnswer(HttpServletRequest request) {
 		String flowId = request.getParameter("flowId");
@@ -634,7 +631,7 @@
 		boolean flag = workflowCoreService.answerNode(base, node, entity);
 		return flag;
 	}
-	
+
 	@Override
 	public SysInfoMsg doSendBack(HttpServletRequest request) {
 		String orderId = request.getParameter("orderId");
@@ -656,7 +653,7 @@
 		SysInfoMsg msg = workFlowSupportService.doOrderSendback(support);
 		return msg;
 	}
-	
+
 	@Override
 	public void doCloseFlow(HttpServletRequest request) {
 		String orderId = request.getParameter("orderId");
@@ -673,7 +670,7 @@
 		WORKFLOW_NODE node = new WORKFLOW_NODE(nodeId).getInstanceById();
 		workflowCoreService.finishNode(base, node, finishEntity);
 		workflowCoreService.closeWorkFlow(base);
-		
+
 		String flowId = base.getId();
 		//淇濆瓨dsl鎿嶄綔璁板綍
 		dslFacade.saveConfigDslDealRecord(flowId);
@@ -683,7 +680,7 @@
 		changeFacade.saveRelationWhenClose(flowId);
 		//鍒犻櫎鍙樻洿涓殑閰嶇疆鍏崇郴
 		changeFacade.delRelationWhenClose(flowId);
-				
+
 		//澧炲姞澶勭悊璁板綍
 		GG_RECORD record = new GG_RECORD();
 		record.setDeal_content("宸ュ崟鍏抽棴锛�"+userName+"鍏抽棴浜嗗伐鍗�");
@@ -693,14 +690,14 @@
 		record.setBusiness_id(node.getFlowid());
 		recordService.addRecord(record);
 	}
-	
+
 	@Override
 	public Map getSurveyNum(HttpServletRequest request) {
 		Map result = new HashMap();
 		//String partnerId = WebUtil.getLoginedPartnerId(request);
 		SqlParameter param = new SqlParameter();
 		param.addValue("businessType", Constants.WORKFLOW_BASE_BUSINESS_TYPE_RELEASE);
-		
+
 		List<Map> projects = new ArrayList<Map>();
 		//projects = WebUtil.getProjects(request);
 		StringBuilder builder = new StringBuilder();
@@ -730,7 +727,7 @@
 		}
 		return result;
 	}
-	
+
 	@Override
 	public List<Map> queryRealseData(HttpServletRequest request) {
 		StringBuilder builder = new StringBuilder();
@@ -799,7 +796,7 @@
 		String sql = "select count(*) from ( " + builder.toString() + " ) t" ;
 		return baseDao.queryForInteger(sql.toString(),paramMap);
 	}
-	
+
 	/**
 	 * 鏈嶅姟鍙板伐鍗曞垪琛�
 	 * @param request
@@ -813,17 +810,17 @@
 		String nodeTemplateId = request.getParameter("nodeTemplateId");
 		String nodeTempId = request.getParameter("nodeTempId");
 
-		
+
 		/*List<Map> projects = new ArrayList<Map>();
 		if(StringUtil.notEmpty(customerId) && StringUtil.notEmpty(projectId)) {
-			
+
 		} else if (StringUtil.notEmpty(customerId) && !StringUtil.notEmpty(projectId)) {
 			//閫氳繃褰撳墠瀹㈡埛鏌ヨ鍑烘墍鏈夌殑椤圭洰淇℃伅
 			projects = slaProjectFacade.queryProjects(request, customerId);
 		} else {
 			projects = WebUtil.getProjects(request);
 		}*/
-		
+
 		StringBuilder builder = new StringBuilder();
 		builder.append(" select n.FLOWSTATE NODESTATE,b.CURRENT_DEALER_NAME,b.PROJECT_NAME,r.RELEASE_REASON,b.ID FLOWID,b.WFNAME,b.CREATERNAME,b.CREATETIME,b.CURRENT_NODE_NAME,b.BUSINESSTYPE, ");
 		builder.append(" r.ORDER_CODE,r.ID ORDERID,b.CUSTOMER_NAME,b.SUB_CUSTOMER_NAME,B.WFSTATE  ");
@@ -840,15 +837,15 @@
 		if(StringUtil.isNotBlank(nodeTemplateId)){
 			builder.append(" and n.NODE_TEMPLATE_ID IS NOT NULL and  n.NODE_TEMPLATE_ID =:nodeTemplateId and b.WFSTATE = 1 ");
 		}
-		
-		
+
+
 		/*if(StringUtil.notEmpty(customerId) && StringUtil.notEmpty(projectId)) {
 			builder.append(" AND b.CUSTOMER_ID = :customerId AND b.PROJECT_ID = :projectId ");
 		} else {
 			builder = getProjectSql(builder,projects);
 		}*/
-		
-		
+
+
 		//瀹㈡埛
 		if(StringUtil.isNotBlank(customerId)) {
 			builder.append(" AND b.CUSTOMER_ID = :customerId ");
@@ -856,7 +853,7 @@
 		//涓嬪睘鍗曚綅
 		if(StringUtil.isNotBlank(subCustomerId)) {
 			builder.append(" AND b.SUB_CUSTOMER_ID = :subCustomerId ");
-			
+
 		}
 		//宸ュ崟缂栧彿
 		String orderCode = request.getParameter("orderCode");
@@ -884,8 +881,8 @@
 		if(StringUtil.notEmpty(nodeTempId)) {
 			builder.append(" AND EXISTS (SELECT n.ID FROM WORKFLOW_NODE n WHERE b.CURRENT_NODE_ID = n.ID AND n.NODE_TEMPLATE_ID = :nodeTempId ) ");
 		}
-		
-		builder.append(" order by b.CREATETIME desc ");		
+
+		builder.append(" order by b.CREATETIME desc ");
 		return builder;
 	}
 

--
Gitblit v1.9.1