From 5d99227a97b7b244893b748af28e7f78238d2951 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期五, 05 九月 2025 01:15:15 +0800
Subject: [PATCH] 任务提醒,增加导出提醒;

---
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/commons/controller/RemindController.java                        |   93 +++++++++++++++++++++++++++++++
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/controller/DispatchController.java                         |   30 ++++++++--
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/producedivision/controller/QinzheFgbController.java |   16 +++++
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/commons/vo/RemindVO.java                                        |    9 +++
 4 files changed, 142 insertions(+), 6 deletions(-)

diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/producedivision/controller/QinzheFgbController.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/producedivision/controller/QinzheFgbController.java
index 668f299..66e7940 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/producedivision/controller/QinzheFgbController.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/producedivision/controller/QinzheFgbController.java
@@ -24,6 +24,7 @@
 import org.springframework.web.multipart.MultipartFile;
 
 import java.io.InputStream;
+import java.util.Collections;
 import java.util.List;
 
 @Slf4j
@@ -102,4 +103,19 @@
 			log.error("瀵煎嚭鍕ゅ摬鍒嗗伐琛ㄦā鏉垮紓甯�", e);
 		}
 	}
+
+	@Operation(summary = "鍕ゅ摬闆朵欢鍙锋悳绱㈠缓璁�", description = "鍕ゅ摬闆朵欢鍙锋悳绱㈠缓璁�")
+	@GetMapping("/select-data")
+	public R<List<QinzheFgb>> selectData(@RequestParam String drawingNo) {
+		if(StringUtils.isBlank(drawingNo)){
+			return R.data(Collections.emptyList());
+		}
+		try {
+			String ljh = drawingNo.trim();
+			return R.data(qinzheFgbService.lambdaQuery().likeRight(QinzheFgb::getLjh,ljh).last("LIMIT 20").list());
+		} catch (Exception e) {
+			log.error("鑾峰彇闆朵欢鍙峰紓甯�",e);
+			return R.fail(e.getMessage());
+		}
+	}
 }
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/commons/controller/RemindController.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/commons/controller/RemindController.java
new file mode 100644
index 0000000..25e24f7
--- /dev/null
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/commons/controller/RemindController.java
@@ -0,0 +1,93 @@
+package org.springblade.mdm.commons.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import lombok.extern.slf4j.Slf4j;
+import org.flowable.engine.TaskService;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.utils.AuthUtil;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.mdm.basesetting.producedivision.entity.MdmUser;
+import org.springblade.mdm.basesetting.producedivision.service.MdmUserService;
+import org.springblade.mdm.commons.service.ParamService;
+import org.springblade.mdm.commons.vo.RemindVO;
+import org.springblade.mdm.flow.service.DoneQueryService;
+import org.springblade.mdm.flow.service.FlowBusinessService;
+import org.springblade.mdm.flow.service.FlowCommonService;
+import org.springblade.mdm.flow.service.FlowTransferService;
+import org.springblade.mdm.flow.vo.FlowVO;
+import org.springblade.mdm.gkw.programnode.vo.ProgramNodeVO;
+import org.springblade.mdm.program.service.NcProgramApprovedService;
+import org.springblade.mdm.program.vo.NcProgramExportDncPageVO;
+import org.springblade.mdm.program.vo.NcProgramExportDncQueryVO;
+import org.springblade.system.feign.IUserSearchClient;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.format.annotation.DateTimeFormat;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.util.List;
+
+@Slf4j
+@RestController
+@RequestMapping("/remind/")
+@Tag(name = "浠诲姟鎻愰啋", description = "浠诲姟鎻愰啋")
+public class RemindController {
+
+	@Autowired
+	NcProgramApprovedService ncProgramApprovedService;
+	@Autowired
+	private FlowBusinessService businessService;
+	@Autowired
+	private ParamService paramService;
+	/**
+	 * 寰呭姙浠诲姟鍒楄〃椤�
+	 */
+	@GetMapping("task-count")
+	@ApiOperationSupport(order = 3)
+	@Operation(summary = "寰呭姙浠诲姟", description = "浼犲叆娴佺▼淇℃伅")
+	public R<RemindVO> todoList() {
+		RemindVO result = new RemindVO();
+
+		result.setTodoCount(queryTodoCount());
+
+		//鏌ヨ瀵煎嚭鐨勪换鍔℃暟閲�
+		result.setExportCount(queryExportCount());
+		return R.data(result);
+	}
+	long queryTodoCount(){
+		Query query = new Query();
+		query.setCurrent(1);
+		query.setSize(1);
+		IPage<FlowVO> pages = businessService.selectTodoPage(Condition.getPage(query), null,null,null);
+		return pages.getTotal();
+	}
+	/**
+	 * 鏌ヨ瀵煎嚭宸ユ帶缃戠殑鏁伴噺
+	 * @return
+	 */
+	long queryExportCount(){
+		NcProgramExportDncQueryVO query = new NcProgramExportDncQueryVO();
+		query.setCurrent(1);
+		query.setSize(1);
+
+		List<String> userRoleAliasList = Func.toStrList(",", AuthUtil.getUserRole());//瑙掕壊鍒悕锛屽涓鑹查�楀彿鍒嗛殧
+		String managerRole = paramService.getProgramManagerRoleAlias();
+		if(!userRoleAliasList.contains(managerRole) && !AuthUtil.isAdministrator() && !AuthUtil.isAdmin()){
+			//闈炴暟鎺х鐞嗗憳瑙掕壊銆佺鐞嗗憳锛岄檺鍒舵湭鍙兘瀵煎嚭鑷繁鐨勭▼搴�
+			query.setUserId(AuthUtil.getUserId());
+		}
+
+		IPage<NcProgramExportDncPageVO> pages = ncProgramApprovedService.exportDncPageQuery(query);
+		return pages.getTotal();
+	}
+}
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/commons/vo/RemindVO.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/commons/vo/RemindVO.java
new file mode 100644
index 0000000..9e85262
--- /dev/null
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/commons/vo/RemindVO.java
@@ -0,0 +1,9 @@
+package org.springblade.mdm.commons.vo;
+
+import lombok.Data;
+
+@Data
+public class RemindVO {
+	private long todoCount;
+	private long exportCount;
+}
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/controller/DispatchController.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/controller/DispatchController.java
index f3e0fd6..8715c3e 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/controller/DispatchController.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/controller/DispatchController.java
@@ -1,6 +1,5 @@
 package org.springblade.mdm.flow.controller;
 
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.Parameter;
 import io.swagger.v3.oas.annotations.tags.Tag;
@@ -9,12 +8,10 @@
 import org.flowable.engine.RuntimeService;
 import org.flowable.engine.TaskService;
 import org.flowable.engine.runtime.ProcessInstance;
-import org.flowable.task.api.Task;
 import org.springblade.core.log.exception.ServiceException;
-import org.springblade.core.secure.utils.AuthUtil;
+import org.springblade.core.tool.api.IResultCode;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.Func;
-import org.springblade.core.tool.utils.StringUtil;
 import org.springblade.mdm.flow.constants.FlowContants;
 import org.springblade.mdm.flow.entity.TaskDispatch;
 import org.springblade.mdm.flow.excution.StartDispatcher;
@@ -74,10 +71,31 @@
 				dispatch.setStatus(TaskDispatch.STATUS_EXCEPTION);
 				dispatch.setErrMsg(e.getMessage());
 				taskDispatchService.updateById(dispatch);
-				return R.fail("浠诲姟鍚姩寮傚父:"+e.getMessage());
+				//return R.fail("浠诲姟鍚姩寮傚父:"+e.getMessage());
+				return R.fail(new IResultCode() {
+					@Override
+					public String getMessage() {
+						return e.getMessage();
+					}
+
+					@Override
+					public int getCode() {
+						return 201;
+					}
+				});
 			}
 		}catch(Exception e){
-			return R.fail(e.getMessage());
+			return R.fail(new IResultCode() {
+				@Override
+				public String getMessage() {
+					return e.getMessage();
+				}
+
+				@Override
+				public int getCode() {
+					return 201;
+				}
+			});
 		}
 
 	}

--
Gitblit v1.9.3