全业务考评 hace 1 año
padre
commit
2f97110d17

+ 34 - 0
ims-service/ims-eval/src/main/java/com/ims/eval/entity/custom/RevocAtion.java

@@ -0,0 +1,34 @@
+package com.ims.eval.entity.custom;
+
+
+import lombok.Data;
+
+/**
+ * <p>
+ * 流程撤回请求业务类
+ * </p>
+ *
+ * @author wang
+ * @since 2023-11-30
+ */
+@Data
+public class RevocAtion {
+
+	private static final long serialVersionUID = 1L;
+
+
+	private String instanceId;
+	/**
+	 * defId
+	 */
+	private String defId;
+
+	/**
+	 * 执行操作(固定值:recall)
+	 */
+	private String action;
+	/**
+	 * 意见
+	 */
+	private String opinion;
+}

+ 2 - 0
ims-service/ims-eval/src/main/java/com/ims/eval/entity/flow/FlowResult.java

@@ -30,5 +30,7 @@ public class FlowResult {
 
 	private JSONArray rows;
 
+	private Integer total;
+
 
 }

+ 75 - 0
ims-service/ims-eval/src/main/java/com/ims/eval/service/custom/impl/WorkflowServiceImpl.java

@@ -7,6 +7,7 @@ import com.ims.eval.config.ImaConfig;
 import com.ims.eval.entity.DeptAssessmentDeclaration;
 import com.ims.eval.entity.custom.DoAction;
 import com.ims.eval.entity.custom.IsOkAction;
+import com.ims.eval.entity.custom.RevocAtion;
 import com.ims.eval.entity.custom.TodoTask;
 import com.ims.eval.entity.flow.FlowResult;
 import com.ims.eval.schedule.ScoreCalculationSchedule;
@@ -111,6 +112,34 @@ public class WorkflowServiceImpl {
 	}
 
 	/**
+	 * 流程撤回
+	 * @param doAction
+	 * @param request
+	 * @return
+	 */
+	public JSONObject revocAtion(RevocAtion doAction, HttpServletRequest request) {
+		HttpHeaders headers = new HttpHeaders();
+		headers.setContentType(MediaType.APPLICATION_JSON_UTF8);
+		headers.add("Blade-Auth", request.getHeader("Blade-Auth"));
+		headers.add("code", request.getHeader("code"));
+		Map<String, String> map = new LinkedHashMap<>();
+		map.put("instanceId", doAction.getInstanceId());
+		map.put("defId", doAction.getDefId());
+		map.put("action", doAction.getAction());
+		map.put("opinion", doAction.getOpinion());
+		HttpEntity<Map> param = new HttpEntity<>(map, headers);
+		ResponseEntity<String> responseEntity2 = restTemplate.exchange(imaConfig.getFlowUrl() + "/bpm/instance/doAction", HttpMethod.GET, param, String.class);
+		log.info("\n code:{}\n header:{}\n body:{}\n", responseEntity2.getStatusCodeValue(), responseEntity2.getHeaders(), responseEntity2.getBody());
+		if (200 == responseEntity2.getStatusCodeValue()) {
+			FlowResult result = JSON.parseObject(responseEntity2.getBody()).toJavaObject(FlowResult.class);
+			return JSON.parseObject(responseEntity2.getBody());
+		}
+		return null;
+	}
+
+
+
+	/**
 	 * 获取待办任务
 	 *
 	 * @param todoTask
@@ -152,6 +181,52 @@ public class WorkflowServiceImpl {
 
 
 	/**
+	 * 获取待办任务
+	 *
+	 * @param todoTask
+	 * @return
+	 */
+	public FlowResult todoTaskList2(TodoTask todoTask, HttpServletRequest request) {
+		HttpHeaders headers = new HttpHeaders();
+		headers.setContentType(MediaType.APPLICATION_JSON_UTF8);
+
+
+		headers.add("Blade-Auth", request.getHeader("Blade-Auth"));
+		headers.add("code", request.getHeader("code"));
+//		MultiValueMap<String, Object> map = JSONObject.parseObject(JSONObject.toJSONString(todoTask), LinkedMultiValueMap.class);
+		Map<String, String> map = new LinkedHashMap<>();
+		map.put("iamCode", todoTask.getIamCode());
+		map.put("order", todoTask.getOrder());
+		map.put("sort", todoTask.getSort());
+		map.put("offset", todoTask.getOffset());
+		map.put("limit", todoTask.getLimit());
+		HttpEntity<Map> param = new HttpEntity<>(map, headers);
+		ResponseEntity<String> responseEntity2 = restTemplate.exchange(imaConfig.getFlowUrl() + "/bpm/my/todoTaskList", HttpMethod.POST, param, String.class);
+		log.info("\n code:{}\n header:{}\n body:{}\n", responseEntity2.getStatusCodeValue(), responseEntity2.getHeaders(), responseEntity2.getBody());
+		//
+		if (200 == responseEntity2.getStatusCodeValue()) {
+			FlowResult result = JSON.parseObject(responseEntity2.getBody()).toJavaObject(FlowResult.class);
+			if (result.getIsOk()) {
+				List<JSONObject> ds = new ArrayList<>();
+				for (int i = 0; i < result.getRows().size(); i++) {
+					String typeId = result.getRows().getJSONObject(i).get("typeId").toString();
+					if (!"440219646351376385".equals(typeId) && !"443254180359700481".equals(typeId)) {
+						ds.add(result.getRows().getJSONObject(i));
+						continue;
+					}
+				}
+				result.getRows().removeAll(ds);
+			}
+			return result;
+		}
+		return null;
+	}
+
+
+
+
+
+	/**
 	 * 检查当前数据(对应的用户)是或否存在代办
 	 *
 	 * @param instId