|
@@ -21,6 +21,7 @@ import java.io.FileNotFoundException;
|
|
|
import java.io.IOException;
|
|
|
import java.io.InputStreamReader;
|
|
|
import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
import java.util.Set;
|
|
|
import java.util.concurrent.*;
|
|
|
|
|
@@ -48,84 +49,44 @@ public class EVisaController {
|
|
|
@Resource(name = "taskExecutor1")
|
|
|
private ThreadPoolExecutor executor;
|
|
|
|
|
|
+
|
|
|
// 电签主类
|
|
|
-// @Scheduled(cron = "0 */1 * * * ?")
|
|
|
-// public void SignInfo() {
|
|
|
-// //执行代码
|
|
|
-// log.info("扫描开始");
|
|
|
-// String sql = "SELECT * from u_task_batch where is_deleted not in(2,4) LIMIT 100";
|
|
|
-// List<TaskBatch> maps = jdbcTemplate.queryForList(sql,TaskBatch.class);
|
|
|
-// if (maps != null && maps.size() >= 1) {
|
|
|
-// for (TaskBatch dataInfo : maps) {
|
|
|
-// String jsonData = dataInfo.getJsonData();
|
|
|
-// TaskApprovalVO taskApprovalVO = JSON.parseObject(jsonData, TaskApprovalVO.class);
|
|
|
-// String taskBatchId = dataInfo.getId().toString();
|
|
|
-// Long userId = dataInfo.getCreateUser();
|
|
|
-// String nickName = dataInfo.getNickName();
|
|
|
-//
|
|
|
-// Boolean istrue = true;
|
|
|
-// try {
|
|
|
-// Thread.sleep(500);
|
|
|
-// } catch (InterruptedException e) {
|
|
|
-// throw new RuntimeException(e);
|
|
|
-// }
|
|
|
-//
|
|
|
-// Boolean aBoolean = RedisTemplate.hasKey("sign-" + taskApprovalVO.getFormDataId());
|
|
|
-// System.out.println(taskApprovalVO.getFormDataId()+"---"+aBoolean);
|
|
|
-// if (aBoolean) {
|
|
|
-// istrue = false;
|
|
|
-// }
|
|
|
-// if (istrue) {
|
|
|
-// int wtask = executor.getQueue().size();
|
|
|
-// if (wtask >= 200) {
|
|
|
-// break;
|
|
|
-// }
|
|
|
-// jdbcTemplate.execute("update u_task_batch set is_deleted=2 where id="+taskBatchId+"");
|
|
|
-// RedisTemplate.opsForValue().set("sign-" + taskApprovalVO.getFormDataId(), "1", 66, TimeUnit.SECONDS);
|
|
|
-// CompletableFuture<Void> runAsync = CompletableFuture.runAsync(() -> {
|
|
|
-// try {
|
|
|
-// this.checkIsExsitTaskBatch(taskApprovalVO, taskBatchId, userId, nickName);
|
|
|
-// } catch (FileNotFoundException e) {
|
|
|
-// e.printStackTrace();
|
|
|
-// }
|
|
|
-// }, executor);
|
|
|
-// }
|
|
|
-// }
|
|
|
-// }
|
|
|
-// }
|
|
|
-//
|
|
|
-// private void checkIsExsitTaskBatch(TaskApprovalVO taskApprovalVO, String batchId, Long userId, String nickName) throws FileNotFoundException {
|
|
|
-// log.info("【任务审核】当前批次开始电签。批次ID:" + batchId);
|
|
|
-// taskApprovalVO.setId(batchId);
|
|
|
-// taskApprovalVO.setUserId(userId);
|
|
|
-// taskApprovalVO.setNickName(nickName);
|
|
|
-// String pdfUrlEVisa = this.completeApprovalTask(taskApprovalVO);
|
|
|
-//
|
|
|
-// System.out.println("电签操作成功buss-----" + pdfUrlEVisa + "---batchId=" + batchId);
|
|
|
-// //TODO ============== 电签成功,修改试验状态,关联工程部位信息pdf(只有电签成功,才修改) liuYc 2023-03-16 ==============
|
|
|
-// if ("OK".equals(taskApprovalVO.getFlag()) && StringUtils.isNotEmpty(pdfUrlEVisa)) {
|
|
|
-// //已审批
|
|
|
-// this.iTrialSelfInspectionRecordService.updateTrialSelfInspectionRecordStatus(pdfUrlEVisa, taskApprovalVO);
|
|
|
-// //executor删除掉对应批次
|
|
|
-// this.taskBatchService.deletedById(batchId);
|
|
|
-// }
|
|
|
-//
|
|
|
-// if (!"OK".equals(taskApprovalVO.getFlag())) {
|
|
|
-// //已废除
|
|
|
-// this.iTrialSelfInspectionRecordService.updateTrialSelfInspectionRecordStatusFC(taskApprovalVO);
|
|
|
-// //executor删除掉对应批次
|
|
|
-// this.taskBatchService.deletedById(batchId);
|
|
|
-// }
|
|
|
-// RedisTemplate.delete("sign-" + taskApprovalVO.getFormDataId());
|
|
|
-// }
|
|
|
-//
|
|
|
-// private String completeApprovalTask(TaskApprovalVO taskApprovalVO) {
|
|
|
-// if ("OK".equals(taskApprovalVO.getFlag())) { // 电签流程
|
|
|
-//
|
|
|
-// }else { //任务废除
|
|
|
-//
|
|
|
-// }
|
|
|
-//
|
|
|
-// return "";
|
|
|
-// }
|
|
|
+ @Scheduled(cron = "0 */1 * * * ?")
|
|
|
+ public void SignInfo() {
|
|
|
+ //执行代码
|
|
|
+ log.info("扫描开始");
|
|
|
+ String sql = "SELECT * from u_task_batch where is_deleted =0 LIMIT 100";
|
|
|
+ List<Map<String, Object>> maps = jdbcTemplate.queryForList(sql);
|
|
|
+ if (maps != null && maps.size() >= 1) {
|
|
|
+ for (Map<String, Object> dataInfo : maps) {
|
|
|
+ String jsonData = dataInfo.get("json_data")+"";
|
|
|
+ TaskApprovalVO taskApprovalVO = JSON.parseObject(jsonData, TaskApprovalVO.class);
|
|
|
+ String taskBatchId = dataInfo.get("id").toString();
|
|
|
+ Long userId = Long.valueOf(dataInfo.get("create_user")+"");
|
|
|
+ String nickName = dataInfo.get("nick_name")+"";
|
|
|
+ String formDataId = taskApprovalVO.getFormDataId();
|
|
|
+
|
|
|
+ CompletableFuture<Void> runAsync = CompletableFuture.runAsync(() -> {
|
|
|
+ try {
|
|
|
+ this.checkIsExsitTaskBatch(taskApprovalVO, taskBatchId, userId, nickName);
|
|
|
+ } catch (FileNotFoundException e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ }, executor);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ private void checkIsExsitTaskBatch(TaskApprovalVO taskApprovalVO, String batchId, Long userId, String nickName) throws FileNotFoundException {
|
|
|
+ synchronized (taskApprovalVO.getFormDataId()) {
|
|
|
+ try {
|
|
|
+ System.out.println(taskApprovalVO.getFormDataId());
|
|
|
+ Thread.sleep(8000);
|
|
|
+ } catch (InterruptedException e) {
|
|
|
+ throw new RuntimeException(e);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ System.out.println();
|
|
|
+ }
|
|
|
+
|
|
|
}
|