Browse Source

站所任务控制

git-svn-id: https://192.168.57.71/svn/hbghj@94 201dd7a2-ec1b-f84b-8b06-88221118ff88
ld_liufl 9 years ago
parent
commit
4e28541ce5

+ 1 - 1
gkaq/yjpt-java/trunk/java_src/com/jtgh/yjpt/service/common/WorkflowMangerService.java

@@ -36,7 +36,7 @@ public interface WorkflowMangerService {
 	public static final String KEY_TASK_STEP = "task_step";
 	public static final String KEY_SENDER_ID = "senderID";
 	public static final String KEY_SZD_ID = "_szd";
-	public static final String KEY_ZS_ID = "_szd";
+	public static final String KEY_ZS_ID = "_zs";
 	public static final String KEY_SENDER_NAME = "senderNAME";
 	public static final String KEY_SEND_DEPT = "sendDEPT";
 	/** 任务执行ID */

+ 39 - 11
gkaq/yjpt-java/trunk/java_src/com/jtgh/yjpt/service/impl/common/WorkflowMangerServiceImpl.java

@@ -199,7 +199,7 @@ public class WorkflowMangerServiceImpl implements WorkflowMangerService {
 					variables.put(WorkflowMangerServiceImpl.KEY_SEND_DEPT, user
 							.getAqpjjg().getJgmc());
 				}
-				
+
 			} else if (Utils.getCurrentUser().getSzd() != null
 					&& Constants.SZD_ID_PROVINCE.equals(Utils.getCurrentUser()
 							.getSzd().getId())) {
@@ -552,14 +552,15 @@ public class WorkflowMangerServiceImpl implements WorkflowMangerService {
 					variables.put(WorkflowMangerServiceImpl.KEY_SEND_DEPT, user
 							.getAqpjjg().getJgmc());
 				}
-			} else if (Utils.getCurrentUserSzd()
-					.equals(Constants.SZD_ID_PROVINCE)) {
+			} else if (Utils.getCurrentUserSzd().equals(
+					Constants.SZD_ID_PROVINCE)) {
 				variables.put(WorkflowMangerServiceImpl.KEY_SEND_DEPT,
 						Utils.getResource("common", "main.ssd.province"));
-			} else if (Utils.getCurrentUserSzd()!=0l&&!Utils.getCurrentUserSzd()
-					.equals(Constants.SZD_ID_PROVINCE)) {
-				CodeEntity szd = codeDao
-						.findOne(new Long(Utils.getCurrentUserSzd()));
+			} else if (Utils.getCurrentUserSzd() != 0l
+					&& !Utils.getCurrentUserSzd().equals(
+							Constants.SZD_ID_PROVINCE)) {
+				CodeEntity szd = codeDao.findOne(new Long(Utils
+						.getCurrentUserSzd()));
 				if (szd != null) {
 					variables.put(
 							WorkflowMangerServiceImpl.KEY_SEND_DEPT,
@@ -950,6 +951,8 @@ public class WorkflowMangerServiceImpl implements WorkflowMangerService {
 		// 时间格式化
 		StringBuilder sqlBuffer = new StringBuilder();
 		String userSzdId = Utils.getCurrentUser().getSzd().getByzd2();
+		String userZsId = Utils.getCurrentUser().getZs() == null ? "" : Utils
+				.getCurrentUser().getZs().getId().toString();
 		ManagementService ms = processEngine.getManagementService();
 		sqlBuffer.append(ms.getTableName(Task.class));
 		sqlBuffer.append(" T WHERE T .SUSPENSION_STATE_ = 1  ");
@@ -988,9 +991,15 @@ public class WorkflowMangerServiceImpl implements WorkflowMangerService {
 				.append("(SELECT r.ROLE_TYPE FROM T_YJPT_ROLE_USER ru,T_YJPT_ROLE r ");
 		sqlBuffer.append("WHERE r.ID=ru.ROLEID AND ru.USERID =#{userId} ))");
 		sqlBuffer
-				.append(" AND (NOT EXISTS (SELECT 1 FROM ACT_RU_VARIABLE V WHERE V.PROC_INST_ID_=T.PROC_INST_ID_ AND NAME_=#{var} ) ");
+					.append(" AND (NOT EXISTS (SELECT 1 FROM ACT_RU_VARIABLE V WHERE V.PROC_INST_ID_=T.PROC_INST_ID_ AND NAME_=#{var} ) ");
 		sqlBuffer
-				.append(" OR EXISTS (SELECT 1 FROM ACT_RU_VARIABLE V WHERE V.PROC_INST_ID_=T.PROC_INST_ID_ AND NAME_=#{var} AND TEXT_ LIKE #{szd})) ");
+					.append(" OR EXISTS (SELECT 1 FROM ACT_RU_VARIABLE V WHERE V.PROC_INST_ID_=T.PROC_INST_ID_ AND NAME_=#{var} AND TEXT_ LIKE #{szd} )) ");
+		if(Utils.getCurrentUser().getZs() != null)	{
+			sqlBuffer
+			.append(" AND (NOT EXISTS (SELECT 1 FROM ACT_RU_VARIABLE V WHERE V.PROC_INST_ID_=T.PROC_INST_ID_ AND NAME_=#{var2} ) ");
+			sqlBuffer
+			.append(" OR EXISTS (SELECT 1 FROM ACT_RU_VARIABLE V WHERE V.PROC_INST_ID_=T.PROC_INST_ID_ AND NAME_=#{var2} AND TEXT_ LIKE #{zs})) ");		
+		}
 		sqlBuffer.append(")))");
 		TaskService taskService = processEngine.getTaskService();
 		NativeTaskQuery query = taskService
@@ -1000,6 +1009,9 @@ public class WorkflowMangerServiceImpl implements WorkflowMangerService {
 						+ "ORDER BY T .CREATE_TIME_ DESC")
 				.parameter("userId", Utils.getCurrentUser().getId())
 				.parameter("var", KEY_SZD_ID).parameter("szd", userSzdId + "%");
+		if(Utils.getCurrentUser().getZs() != null){
+			query.parameter("var2", KEY_ZS_ID).parameter("zs", userZsId + "%");
+		}			
 		if (begin != null)
 			query.parameter("begin", Utils.getDateFirstTime(begin));
 		if (end != null)
@@ -1007,8 +1019,9 @@ public class WorkflowMangerServiceImpl implements WorkflowMangerService {
 		long count = query.count();
 		return (int) count;
 	}
-	
-	public int todoListCount(String userid, String busKey, String jyr, Date begin, Date end) {
+
+	public int todoListCount(String userid, String busKey, String jyr,
+			Date begin, Date end) {
 		// 时间格式化
 		StringBuilder sqlBuffer = new StringBuilder();
 		String userSzdId = Utils.getCurrentUser().getSzd().getByzd2();
@@ -1076,6 +1089,8 @@ public class WorkflowMangerServiceImpl implements WorkflowMangerService {
 	// @Override
 	public BusinessContext todoList(SinglePageRequest pageRequest,
 			String userid, String busKey, Date begin, Date end) {
+		String userZsId = Utils.getCurrentUser().getZs() == null ? "" : Utils
+				.getCurrentUser().getZs().getId().toString();
 		// 结果集
 		List<WorkItem> result = new ArrayList<WorkItem>();
 		// 时间格式化
@@ -1123,6 +1138,13 @@ public class WorkflowMangerServiceImpl implements WorkflowMangerService {
 				.append(" AND (NOT EXISTS (SELECT 1 FROM ACT_RU_VARIABLE V WHERE V.PROC_INST_ID_=T.PROC_INST_ID_ AND NAME_=#{var} ) ");
 		sqlBuffer
 				.append(" OR EXISTS (SELECT 1 FROM ACT_RU_VARIABLE V WHERE V.PROC_INST_ID_=T.PROC_INST_ID_ AND NAME_=#{var} AND TEXT_ LIKE #{szd})) ");
+		if(Utils.getCurrentUser().getZs() != null)	{
+			sqlBuffer
+			.append(" AND (NOT EXISTS (SELECT 1 FROM ACT_RU_VARIABLE V WHERE V.PROC_INST_ID_=T.PROC_INST_ID_ AND NAME_=#{var2} ) ");
+			sqlBuffer
+			.append(" OR EXISTS (SELECT 1 FROM ACT_RU_VARIABLE V WHERE V.PROC_INST_ID_=T.PROC_INST_ID_ AND NAME_=#{var2} AND TEXT_ LIKE #{zs})) ");
+			
+		}
 		sqlBuffer.append(")))");
 		TaskService taskService = processEngine.getTaskService();
 		int start = pageRequest.getPageNumber() * pageRequest.getPageSize();
@@ -1132,6 +1154,9 @@ public class WorkflowMangerServiceImpl implements WorkflowMangerService {
 						+ "ORDER BY T .CREATE_TIME_ DESC")
 				.parameter("userId", Utils.getCurrentUser().getId())
 				.parameter("var", KEY_SZD_ID).parameter("szd", userSzdId + "%");
+		if(Utils.getCurrentUser().getZs() != null){
+			query.parameter("var2", KEY_ZS_ID).parameter("zs", userZsId + "%");
+		}
 		if (begin != null)
 			query.parameter("begin", Utils.getDateFirstTime(begin));
 		if (end != null)
@@ -1143,6 +1168,9 @@ public class WorkflowMangerServiceImpl implements WorkflowMangerService {
 						+ sqlBuffer.toString())
 				.parameter("userId", Utils.getCurrentUser().getId())
 				.parameter("var", KEY_SZD_ID).parameter("szd", userSzdId + "%");
+		if(Utils.getCurrentUser().getZs() != null){
+			query.parameter("var2", KEY_ZS_ID).parameter("zs", userZsId + "%");
+		}
 		if (begin != null)
 			query.parameter("begin", Utils.getDateFirstTime(begin));
 		if (end != null)