From 86947cb8428af1a322bb59961f567296fdfaad93 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期六, 09 八月 2025 10:51:27 +0800
Subject: [PATCH] 机床按机构查询功能开发

---
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/constants/FlowContants.java                     |    7 ++
 blade-service-api/blade-system-api/src/main/java/org/springblade/system/feign/ISysClient.java                  |    5 +
 blade-service-api/blade-system-api/src/main/java/org/springblade/system/feign/ISysClientFallback.java          |    6 ++
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/MdmSystemController.java          |   14 ++++
 blade-service/blade-system/src/main/java/org/springblade/system/controller/DeptController.java                 |    6 +-
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/NcProgramExportDNCController.java |    4 
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/vo/MachineQueryVO.java           |    5 +
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/MachineService.java              |   19 ++++--
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/excution/StartDispatcher.java                   |   21 +++----
 blade-service/blade-mdm/src/main/resources/processesbpmn/dispatch.bpmn20.xml                                   |    9 ++
 blade-service/blade-system/src/main/java/org/springblade/system/feign/SysClient.java                           |   11 +++
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/mapper/MachineMapper.xml         |    3 +
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/excution/DispatchFinishListener.java            |   45 +++++++++-----
 13 files changed, 113 insertions(+), 42 deletions(-)

diff --git a/blade-service-api/blade-system-api/src/main/java/org/springblade/system/feign/ISysClient.java b/blade-service-api/blade-system-api/src/main/java/org/springblade/system/feign/ISysClient.java
index 97020dd..568df62 100644
--- a/blade-service-api/blade-system-api/src/main/java/org/springblade/system/feign/ISysClient.java
+++ b/blade-service-api/blade-system-api/src/main/java/org/springblade/system/feign/ISysClient.java
@@ -26,8 +26,10 @@
 package org.springblade.system.feign;
 
 import org.springblade.core.launch.constant.AppConstant;
+import org.springblade.core.secure.BladeUser;
 import org.springblade.core.tool.api.R;
 import org.springblade.system.pojo.entity.*;
+import org.springblade.system.pojo.vo.DeptVO;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestParam;
@@ -53,6 +55,7 @@
 	String DEPT_NAME = API_PREFIX + "/dept-name";
 	String DEPT_NAMES = API_PREFIX + "/dept-names";
 	String DEPT_CHILD = API_PREFIX + "/dept-child";
+	String DEPT_TREE = API_PREFIX + "/dept-tree";
 	String POST = API_PREFIX + "/post";
 	String POST_IDS = API_PREFIX + "/post-ids";
 	String POST_IDS_FUZZY = API_PREFIX + "/post-ids-fuzzy";
@@ -89,6 +92,8 @@
 	@GetMapping(DEPT)
 	R<Dept> getDept(@RequestParam("id") Long id);
 
+	@GetMapping(DEPT_TREE)
+	R<List<DeptVO>> deptTree(String tenantId);
 	/**
 	 * 鑾峰彇閮ㄩ棬id
 	 *
diff --git a/blade-service-api/blade-system-api/src/main/java/org/springblade/system/feign/ISysClientFallback.java b/blade-service-api/blade-system-api/src/main/java/org/springblade/system/feign/ISysClientFallback.java
index 47e40d7..9469dc6 100644
--- a/blade-service-api/blade-system-api/src/main/java/org/springblade/system/feign/ISysClientFallback.java
+++ b/blade-service-api/blade-system-api/src/main/java/org/springblade/system/feign/ISysClientFallback.java
@@ -27,6 +27,7 @@
 
 import org.springblade.core.tool.api.R;
 import org.springblade.system.pojo.entity.*;
+import org.springblade.system.pojo.vo.DeptVO;
 import org.springframework.stereotype.Component;
 
 import java.util.List;
@@ -50,6 +51,11 @@
 	}
 
 	@Override
+	public R<List<DeptVO>> deptTree(String tenantId) {
+		return R.fail("鑾峰彇鏁版嵁澶辫触");
+	}
+
+	@Override
 	public R<String> getDeptIds(String tenantId, String deptNames) {
 		return R.fail("鑾峰彇鏁版嵁澶辫触");
 	}
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/MachineService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/MachineService.java
index 6d95ef7..2b32858 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/MachineService.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/MachineService.java
@@ -5,6 +5,7 @@
 import org.springblade.core.log.exception.ServiceException;
 import org.springblade.core.mp.base.BizServiceImpl;
 import org.springblade.core.mp.support.Condition;
+import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.BeanUtil;
 import org.springblade.core.tool.utils.Func;
 import org.springblade.mdm.basesetting.machine.entity.Machine;
@@ -12,6 +13,9 @@
 import org.springblade.mdm.basesetting.machine.vo.MachineQueryVO;
 import org.springblade.mdm.basesetting.machine.vo.MachineSaveVO;
 import org.springblade.mdm.basesetting.machine.vo.MachineVO;
+import org.springblade.system.feign.ISysClient;
+import org.springblade.system.pojo.entity.Dept;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -23,7 +27,8 @@
 
 @Service
 public class MachineService extends BizServiceImpl<MachineMapper, Machine> {
-
+	@Autowired
+	private ISysClient sysClient;
 	@Transactional
 	public void saveMachine(MachineSaveVO vo){
 		checkMachine(vo);
@@ -105,12 +110,14 @@
 	 */
 	public IPage<MachineVO> pageQuery(MachineQueryVO query) {
 
-		LambdaQueryWrapper<Machine> queryWrapper = new LambdaQueryWrapper<>();
-		//queryWrapper.eq(query.getMachineGroupCode()!=null, Machine::getMachineGroupCode, query.getMachineGroupCode());
-		//String keys = query.getKeyword();
+		if (query.getDeptId() != null) {
+			R<Dept> rs = sysClient.getDept(query.getDeptId());
+			if(rs.isSuccess()){
+				query.setDeptAncestors(rs.getData().getAncestors()+","+rs.getData().getId());
+			}
+		}
+		IPage<MachineVO> page = this.getBaseMapper().pageQuery(Condition.getPage(query), query);
 
-		//queryWrapper.and(StringUtils.isNotEmpty(keys), wrapper -> wrapper.like(Machine::getCode, keys).or().like(Machine::getName, keys));
-		IPage<MachineVO> page = this.getBaseMapper().pageQuery(Condition.getPage(query),query);
 		return page;
 	}
 
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/mapper/MachineMapper.xml b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/mapper/MachineMapper.xml
index e72030a..5d0718b 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/mapper/MachineMapper.xml
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/mapper/MachineMapper.xml
@@ -24,6 +24,9 @@
         <if test="query.keyword!=null and query.keyword!=''">
             and (m.code like CONCAT('%', #{query.keyword,jdbcType=VARCHAR},'%') or m.name like CONCAT('%', #{query.keyword,jdbcType=VARCHAR},'%'))
         </if>
+        <if test="query.deptId!=null">
+            and (m.owner_dept=${query.deptId} or m.owner_dept in (select id from blade_dept where ancestors like CONCAT(#{query.deptAncestors},'%')))
+        </if>
         order by m.update_time desc,m.code asc
     </select>
 
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/vo/MachineQueryVO.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/vo/MachineQueryVO.java
index b07b9ac..8408827 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/vo/MachineQueryVO.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/vo/MachineQueryVO.java
@@ -17,5 +17,8 @@
 	private String keyword;
 	@Schema(description = "鏈哄簥缁刢ode")
 	private String machineGroupCode;
-
+	@Schema(description = "鏈烘瀯id")
+	private Long deptId;
+	@Schema(description = "鏈烘瀯鐖惰妭鐐�")
+	private String deptAncestors;
 }
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/constants/FlowContants.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/constants/FlowContants.java
index 61a648f..ea5b249 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/constants/FlowContants.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/constants/FlowContants.java
@@ -70,6 +70,11 @@
 	 * 鏄惁鏈夊浐鍖栫▼搴�
 	 */
 	public static final String HAS_CURED_PROGRAM = "hasCuredProgram";
+
+	/**
+	 * 鍥哄寲绋嬪簭鍖呭悕鐨刬d
+	 */
+	public static final String CURED_NODE_ID = "curedNodeId";
 	/**
 	 * 宸ュ簭鍚嶇О
 	 */
@@ -84,6 +89,8 @@
 	 */
 	public static final String IS_PROCESS_EDITION_SAME = "isProcessEditionSame";
 
+
+
 	/**
 	 * 鏄惁鍦ㄦ湁鏁堟湡鍐呯殑key
 	 */
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/excution/DispatchFinishListener.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/excution/DispatchFinishListener.java
index 4259a85..5a8dc18 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/excution/DispatchFinishListener.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/excution/DispatchFinishListener.java
@@ -9,7 +9,9 @@
 import org.springblade.mdm.flow.entity.ApproveRecord;
 import org.springblade.mdm.flow.entity.FlowProgramFile;
 import org.springblade.mdm.flow.service.ApproveRecordService;
+import org.springblade.mdm.flow.service.FlowCommonService;
 import org.springblade.mdm.flow.service.FlowProgramFileService;
+import org.springblade.mdm.flow.service.FlowProgramProperties;
 import org.springblade.mdm.program.entity.NcNode;
 import org.springblade.mdm.program.entity.NcProgramApproved;
 import org.springblade.mdm.program.service.NcNodeService;
@@ -33,7 +35,8 @@
 	private ApproveRecordService approveRecordService;
 	@Autowired
 	private FlowProgramFileService flowProgramFileService;
-
+	@Autowired
+	private FlowCommonService flowCommonService;
 	@Autowired
 	private NcNodeService ncNodeService;
 	/**
@@ -45,23 +48,32 @@
 		String instId = execution.getProcessInstanceId();
 		log.info("浜嬩欢鍚嶇О{}锛宨nstid={}" , execution.getEventName(),instId);
 
-		updateFlowProgramFile(instId);
-
 		//灏嗗叧鑱旇〃涓殑鏁版嵁鎻掑叆瀹℃壒琛�
-		NcNode packageNode = ncNodeService.getByProcessInstanceId(instId);
-		updateApproveRecordNodeId(packageNode);
-		//execution.getEventName()
+		//NcNode packageNode = ncNodeService.getByProcessInstanceId(instId);
+
+		FlowProgramProperties props = flowCommonService.getProgramProperties(instId);
+
+		String programName = NcNodeService.genProgramName(props.getDrawingNo(),props.getProcessNo());
+		NcNode packageNode = ncNodeService.getProgramPackageByName(programName);
+
+		addApproveTable(packageNode);
+
+		updateApproveRecordNodeId(instId,packageNode.getId());
 
 		log.info("娴佺▼宸插畬鎴恑n DispatchFinishListener");
 	}
 
-	void updateFlowProgramFile(String instId){
-		List<FlowProgramFile> programFiles =  flowProgramFileService.lambdaQuery().eq(FlowProgramFile::getProcessInstanceId, instId).list();
-		if(!programFiles.isEmpty()) {
-			FlowProgramFile pf = programFiles.get(0);
+	//void updateFlowProgramFile(String instId){
+	void addApproveTable(NcNode packageNode){
+		//List<FlowProgramFile> programFiles =  flowProgramFileService.lambdaQuery().eq(FlowProgramFile::getProcessInstanceId, instId).list();
+		//if(!programFiles.isEmpty()) {
+			//FlowProgramFile pf = programFiles.get(0);
 			NcProgramApproved approved = new NcProgramApproved();
-			approved.setProgramName(pf.getProgramName());
-
+			//approved.setProgramName(pf.getProgramName());
+			approved.setProgramName(packageNode.getName());
+			approved.setNcNodeId(packageNode.getId());//绋嬪簭鍖呰妭鐐筰d
+			approvedService.save(approved);
+			/*
 			NcNode pkgNode = ncNodeService.getProgramPackageByName(pf.getProgramName());
 			if(pkgNode!=null) {
 				approved.setNcNodeId(pkgNode.getId());//绋嬪簭鍖呰妭鐐筰d
@@ -71,13 +83,14 @@
 			}
 		}else{
 			log.warn("娌℃湁绋嬪簭鏂囦欢");
-		}
+		}*/
 	}
 
-	void updateApproveRecordNodeId(NcNode pkgNode){
+
+	void updateApproveRecordNodeId(String processInstanceId,Long nodeId){
 		//鏇存柊瀹℃壒璁板綍鐨刵cNodeId
 		approveRecordService.lambdaUpdate()
-			.eq(ApproveRecord::getProcessInstanceId, pkgNode.getProcessInstanceId())
-			.set(ApproveRecord::getNcNodeId,pkgNode.getId()).update();
+			.eq(ApproveRecord::getProcessInstanceId, processInstanceId)
+			.set(ApproveRecord::getNcNodeId,nodeId).update();
 	}
 }
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/excution/StartDispatcher.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/excution/StartDispatcher.java
index 11e0ec2..1c31720 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/excution/StartDispatcher.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/excution/StartDispatcher.java
@@ -39,7 +39,7 @@
 
 	/**
 	 * 鍚姩娲惧伐娴佺▼
-	 * @param startVO
+	 * @param startVO 琛ㄥ崟鏁版嵁
 	 * @return 娴佺▼瀹炰緥id
 	 */
 	@Transactional
@@ -67,13 +67,14 @@
 
 		String programPkgName = NcNodeService.genProgramName(startVO.getDrawingNo(),startVO.getProcessNo());
 
-		NcNode programPkg = ncNodeService.getLastEditionCuredProgramPackage(programPkgName);
+		NcNode curedProgramPackage = ncNodeService.getLastEditionCuredProgramPackage(programPkgName);
 		//璁剧疆鏄惁鏈夊浐鍖栫▼搴忔爣璁�
-		vars.put(FlowContants.HAS_CURED_PROGRAM,programPkg != null ? FlowContants.Y:FlowContants.N);
+		vars.put(FlowContants.HAS_CURED_PROGRAM,curedProgramPackage != null ? FlowContants.Y:FlowContants.N);
 		//宸ュ簭鐗堟鏄惁涓�鑷达紝鏄惁鍦ㄦ湁鏁堟湡鍐�
-		if(programPkg != null){
-			vars.put(FlowContants.IS_PROCESS_EDITION_SAME, StringUtils.equals(programPkg.getProcessEdition(),startVO.getProcessEdition()) ? "Y":"N");
-			vars.put(FlowContants.VALIDITY_PERIOD, programPkg.withinValidityPeriod() ? FlowContants.Y:FlowContants.N);
+		if(curedProgramPackage != null){
+			vars.put(FlowContants.CURED_NODE_ID,curedProgramPackage.getId());
+			vars.put(FlowContants.IS_PROCESS_EDITION_SAME, StringUtils.equals(curedProgramPackage.getProcessEdition(),startVO.getProcessEdition()) ? "Y":"N");
+			vars.put(FlowContants.VALIDITY_PERIOD, curedProgramPackage.withinValidityPeriod() ? FlowContants.Y:FlowContants.N);
 		}else{
 			vars.put(FlowContants.IS_PROCESS_EDITION_SAME, FlowContants.Y);
 			vars.put(FlowContants.VALIDITY_PERIOD, FlowContants.Y);
@@ -83,12 +84,8 @@
 		identityService.setAuthenticatedUserId(String.valueOf(AuthUtil.getUserId()));//璁剧疆娴佺▼鍙戣捣浜�
 		ProcessInstance inst = runtimeService.startProcessInstanceByKey(FlowContants.TRY_PROCESS_KEY,businessKey,vars);
 
-		if(programPkg != null) {//瀛樺湪宸插浐鍖栫▼搴忥紝澶嶅埗鍘熸潵鐨勭▼搴忔枃浠躲�傚垱寤鸿妭鐐逛粛鐒跺湪缂栫▼浜哄憳鎻愪氦浠ュ悗
-			//programPkg.setIsLastEdition(0);
-			//this.ncNodeService.updateById(programPkg);
-
-			//cloneNodes(programPkg,inst.getProcessInstanceId());
-			copyFlowProgramFiles(programPkg.getProcessInstanceId(),inst.getProcessInstanceId());
+		if(curedProgramPackage != null) {//瀛樺湪宸插浐鍖栫▼搴忥紝澶嶅埗鍘熸潵鐨勭▼搴忔枃浠躲�傚垱寤鸿妭鐐逛粛鐒跺湪缂栫▼浜哄憳鎻愪氦浠ュ悗
+			copyFlowProgramFiles(curedProgramPackage.getProcessInstanceId(),inst.getProcessInstanceId());
 		}
 
 		return inst.getProcessInstanceId();
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/MdmSystemController.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/MdmSystemController.java
index 1f81c05..90a0373 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/MdmSystemController.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/MdmSystemController.java
@@ -7,12 +7,14 @@
 import io.swagger.v3.oas.annotations.tags.Tag;
 import lombok.AllArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
+import org.springblade.core.secure.BladeUser;
 import org.springblade.core.tenant.annotation.NonDS;
 import org.springblade.core.tool.api.R;
 import org.springblade.system.feign.IDictClient;
 import org.springblade.system.feign.ISysClient;
 import org.springblade.system.pojo.entity.Dept;
 import org.springblade.system.pojo.entity.Dict;
+import org.springblade.system.pojo.vo.DeptVO;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
@@ -49,6 +51,18 @@
 
 	}
 
+	@GetMapping("/dept/tree")
+	@ApiOperationSupport(order = 2)
+	@Operation(summary = "閮ㄩ棬鏍�")
+	public R<List<DeptVO>> deptTree(BladeUser bladeUser) {
+		try {
+			return sysClient.deptTree(bladeUser.getTenantId());
+		}catch (Exception e){
+			return R.fail(e.getMessage());
+		}
+
+	}
+
 	@Operation(summary = "瀛楀吀鍒楄〃")
 	@GetMapping("/dict/dictionary")
 	public R<List<Dict>> dictionary(@Parameter(description = "瀛楀吀缂栫爜") String code) {
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/NcProgramExportDNCController.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/NcProgramExportDNCController.java
index feb0f0d..9d5b50d 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/NcProgramExportDNCController.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/NcProgramExportDNCController.java
@@ -33,7 +33,7 @@
 @RestController
 @RequestMapping("/program/exchange")
 @AllArgsConstructor
-@Tag(name = "瀵煎嚭DNC", description = "娑夊瘑缃戠▼搴忓鍑篋NC")
+@Tag(name = "瀵煎嚭宸ユ帶缃�", description = "娑夊瘑缃戠▼搴忓鍑虹粰宸ユ帶缃�")
 @Slf4j
 public class NcProgramExportDNCController {
 
@@ -53,7 +53,7 @@
 			throw new ServiceException("鏈�夋嫨鏂囦欢瀵煎嚭");
 		}
 		try {
-			String filename = "todncexp-"+ DateUtil.format(DateUtil.now(), "yyyyMMddHHmm")+".zip";
+			String filename = "programexp-"+ DateUtil.format(DateUtil.now(), "yyyyMMddHHmm")+".zip";
 			response.setHeader("Content-Disposition", "attachment; filename="+filename);
 			response.setContentType("application/octet-stream");
 			ncProgramExportDNCService.exportDnc(vo.getIds(),response.getOutputStream());
diff --git a/blade-service/blade-mdm/src/main/resources/processesbpmn/dispatch.bpmn20.xml b/blade-service/blade-mdm/src/main/resources/processesbpmn/dispatch.bpmn20.xml
index d3ec1df..33e143e 100644
--- a/blade-service/blade-mdm/src/main/resources/processesbpmn/dispatch.bpmn20.xml
+++ b/blade-service/blade-mdm/src/main/resources/processesbpmn/dispatch.bpmn20.xml
@@ -44,12 +44,15 @@
     <sequenceFlow id="sid-d4133565-1a45-4bb6-b603-9b9e4db1cdbb" sourceRef="approveTask" targetRef="check">
       <conditionExpression>${approve=='N'}</conditionExpression>
     </sequenceFlow>
-    <sequenceFlow id="sid-80b50f96-7601-4ba2-8c32-968923170d25" sourceRef="confirmIsUseableTask" targetRef="programmingTask">
+    <sequenceFlow id="sid-80b50f96-7601-4ba2-8c32-968923170d25" sourceRef="confirmIsUseableTask" targetRef="programmingTask" name="涓嶅彲鐢�">
       <conditionExpression>${approve=='N'}</conditionExpression>
     </sequenceFlow>
     <endEvent id="sid-59124fa5-62ee-4ba5-8bd9-cafc65aa5fcf" name="缁勯暱缁撴潫"/>
     <sequenceFlow id="sid-1ef405f8-c119-4225-b41c-fb0aa978e42c" sourceRef="teamLeaderTask" targetRef="sid-59124fa5-62ee-4ba5-8bd9-cafc65aa5fcf">
       <conditionExpression>${approve=='N'}</conditionExpression>
+    </sequenceFlow>
+    <sequenceFlow id="sid-b33e5cdc-e56b-4a8f-8956-2a3bb4f7e57a" sourceRef="confirmIsUseableTask" targetRef="teamLeaderTask" name="椹冲洖">
+      <conditionExpression>${approve=='R'}</conditionExpression>
     </sequenceFlow>
   </process>
   <bpmndi:BPMNDiagram id="BPMNDiagram_dispatch">
@@ -127,6 +130,10 @@
         <omgdi:waypoint x="-262.5" y="-76.25001"/>
         <omgdi:waypoint x="-297.5" y="-35.0"/>
       </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="edge-d08bab4f-6549-4732-9791-7be8d3fcbbfe" bpmnElement="sid-b33e5cdc-e56b-4a8f-8956-2a3bb4f7e57a">
+        <omgdi:waypoint x="-107.5" y="37.500004"/>
+        <omgdi:waypoint x="-210.0" y="-60.000008"/>
+      </bpmndi:BPMNEdge>
     </bpmndi:BPMNPlane>
   </bpmndi:BPMNDiagram>
 </definitions>
diff --git a/blade-service/blade-system/src/main/java/org/springblade/system/controller/DeptController.java b/blade-service/blade-system/src/main/java/org/springblade/system/controller/DeptController.java
index d8085ae..ddb6f0b 100644
--- a/blade-service/blade-system/src/main/java/org/springblade/system/controller/DeptController.java
+++ b/blade-service/blade-system/src/main/java/org/springblade/system/controller/DeptController.java
@@ -109,7 +109,7 @@
 	/**
 	 * 鎳掑姞杞藉垪琛�
 	 */
-	@PreAuth(menu = "dept")
+	//@PreAuth(menu = "dept")
 	@GetMapping("/lazy-list")
 	@Parameters({
 		@Parameter(name = "deptName", description = "閮ㄩ棬鍚嶇О", in = ParameterIn.QUERY, schema = @Schema(type = "string")),
@@ -125,7 +125,7 @@
 	/**
 	 * 鑾峰彇閮ㄩ棬鏍戝舰缁撴瀯
 	 */
-	@PreAuth(menu = "dept")
+	//@PreAuth(menu = "dept")
 	@GetMapping("/tree")
 	@ApiOperationSupport(order = 4)
 	@Operation(summary = "鏍戝舰缁撴瀯", description = "鏍戝舰缁撴瀯")
@@ -137,7 +137,7 @@
 	/**
 	 * 鎳掑姞杞借幏鍙栭儴闂ㄦ爲褰㈢粨鏋�
 	 */
-	@PreAuth(menu = "dept")
+	//@PreAuth(menu = "dept")
 	@GetMapping("/lazy-tree")
 	@ApiOperationSupport(order = 5)
 	@Operation(summary = "鎳掑姞杞芥爲褰㈢粨鏋�", description = "鏍戝舰缁撴瀯")
diff --git a/blade-service/blade-system/src/main/java/org/springblade/system/feign/SysClient.java b/blade-service/blade-system/src/main/java/org/springblade/system/feign/SysClient.java
index 0c12f90..9dd4d6f 100644
--- a/blade-service/blade-system/src/main/java/org/springblade/system/feign/SysClient.java
+++ b/blade-service/blade-system/src/main/java/org/springblade/system/feign/SysClient.java
@@ -25,10 +25,15 @@
  */
 package org.springblade.system.feign;
 
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.v3.oas.annotations.Operation;
 import lombok.AllArgsConstructor;
+import org.springblade.core.secure.BladeUser;
 import org.springblade.core.tenant.annotation.NonDS;
 import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
 import org.springblade.system.pojo.entity.*;
+import org.springblade.system.pojo.vo.DeptVO;
 import org.springblade.system.service.*;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RestController;
@@ -79,7 +84,11 @@
 	public R<String> getDeptIds(String tenantId, String deptNames) {
 		return R.data(deptService.getDeptIds(tenantId, deptNames));
 	}
-
+	@Override
+	public R<List<DeptVO>> deptTree(String tenantId) {
+		List<DeptVO> tree = deptService.tree(tenantId);
+		return R.data(tree);
+	}
 	@Override
 	public R<String> getDeptIdsByFuzzy(String tenantId, String deptNames) {
 		return R.data(deptService.getDeptIdsByFuzzy(tenantId, deptNames));

--
Gitblit v1.9.3