From 3951716dc9cea6bd34f9ff18c78a4bad7c6cfb57 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期日, 24 八月 2025 18:44:43 +0800
Subject: [PATCH] 工控网导出,限定工艺员自己 或者管理员
---
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/NcProgramApprovedMapper.xml | 6 +++++-
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramApprovedService.java | 2 ++
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramExportDNCService.java | 9 ---------
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/vo/NcProgramExportDncQueryVO.java | 3 +++
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/NcProgramExportDNCController.java | 14 +++++++++++++-
5 files changed, 23 insertions(+), 11 deletions(-)
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 55ff76a..3bbe281 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
@@ -13,7 +13,9 @@
import org.springblade.core.tenant.annotation.NonDS;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.tool.utils.Func;
import org.springblade.core.tool.utils.UrlUtil;
+import org.springblade.mdm.commons.service.ParamService;
import org.springblade.mdm.commons.vo.IdsVO;
import org.springblade.mdm.program.service.NcProgramApprovedService;
import org.springblade.mdm.program.service.NcProgramExportDNCService;
@@ -24,6 +26,7 @@
import java.io.ByteArrayOutputStream;
import java.io.IOException;
+import java.util.List;
/**
* 绋嬪簭娑夊瘑缃�-宸ユ帶缃戜氦鎹㈡帴鍙�
@@ -38,12 +41,21 @@
@Slf4j
public class NcProgramExportDNCController {
- private final NcProgramService ncProgramService;
+ private final ParamService paramService;
private final NcProgramApprovedService ncProgramApprovedService;
private final NcProgramExportDNCService ncProgramExportDNCService;
@Operation(summary = "绋嬪簭瀵煎嚭DNC鍒嗛〉鏌ヨ", description = "鍒嗛〉鏌ヨ锛屼緵鐢ㄦ埛閫夋嫨鏁版嵁")
@GetMapping("/export-dnc-page")
public R<IPage<NcProgramExportDncPageVO>> page(NcProgramExportDncQueryVO query) {
+ String userRole = AuthUtil.getUserRole();//瑙掕壊鍒悕锛屽涓鑹查�楀彿鍒嗛殧
+ List<String> userRoleAliasList = Func.toStrList(",", userRole);
+
+ String managerRole = paramService.getProgramManagerRoleAlias();
+ if(!userRoleAliasList.contains(managerRole) && !AuthUtil.isAdministrator() && !AuthUtil.isAdmin()){
+ //闈炴暟鎺х鐞嗗憳瑙掕壊銆佺鐞嗗憳锛岄檺鍒舵湭鍙兘瀵煎嚭鑷繁鐨勭▼搴�
+ query.setUserId(AuthUtil.getUserId());
+ }
+
return R.data(ncProgramApprovedService.exportDncPageQuery(query));
}
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/NcProgramApprovedMapper.xml b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/NcProgramApprovedMapper.xml
index 2ed24c4..0db07b2 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/NcProgramApprovedMapper.xml
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/NcProgramApprovedMapper.xml
@@ -11,7 +11,8 @@
<result column="is_deleted" property="isDeleted"/>
</resultMap>
<select id="exportDncPageQuery" resultType="org.springblade.mdm.program.vo.NcProgramExportDncPageVO">
- select a.id,a.title,n.name,a.nc_node_id,n.process_no,n.process_edition,n.drawing_no,n.drawing_no_edition,n.process_name,a.create_time,a.update_time,u.name exporter from mdm_nc_program_approved a
+ select a.id,a.title,n.name,a.nc_node_id,n.process_no,n.process_edition,n.drawing_no,n.drawing_no_edition,n.process_name,a.create_time,a.update_time,u.name exporter
+ from mdm_nc_program_approved a
inner join mdm_nc_node n on a.nc_node_id=n.id
left join blade_user u on a.update_user=u.id
<where>
@@ -26,6 +27,9 @@
<if test="query.createTimeEnd!=null">
and a.create_time <= #{query.createTimeEnd}
</if>
+ <if test="query.userId!=null">
+ and a.programmer_id = #{query.userId}
+ </if>
</where>
order by a.create_time desc
</select>
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramApprovedService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramApprovedService.java
index f9248ef..655ee1f 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramApprovedService.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramApprovedService.java
@@ -14,6 +14,7 @@
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springblade.core.oss.OssTemplate;
+import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.mdm.flow.entity.ApproveRecord;
import org.springblade.mdm.flow.service.ApproveRecordService;
@@ -62,6 +63,7 @@
if(query.getStatus() != NcProgramApproved.STATUS_EXPORTED){
query.setStatus(NcProgramApproved.STATUS_NOT_EXPORT);
}
+
return this.getBaseMapper().exportDncPageQuery(Condition.getPage(query),query);
}
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramExportDNCService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramExportDNCService.java
index 8c25d7c..a3c8207 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramExportDNCService.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramExportDNCService.java
@@ -53,15 +53,6 @@
/**
- * 鍒嗛〉鏌ヨ
- * @param query 鏌ヨ鍙傛暟
- * @return
- */
- public IPage<DncSendBackData> dncSendBackPageQuery(Query query) {
- return this.getBaseMapper().dncSendBackpageQuery(Condition.getPage(query),query);
- }
-
- /**
* 瀵煎嚭dnc鍘嬬缉鍖�
* @param approvedIdArray 寰呭鍑哄鎵硅〃id鏁扮粍
*/
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/vo/NcProgramExportDncQueryVO.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/vo/NcProgramExportDncQueryVO.java
index cc2d2d3..bc093ba 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/vo/NcProgramExportDncQueryVO.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/vo/NcProgramExportDncQueryVO.java
@@ -24,4 +24,7 @@
@Schema(description = "鐘舵�侊細2鏄凡瀵煎嚭锛堝凡鍔烇級")
private int status;
+
+ @Schema(description = "鐢ㄦ埛id,闈炵鐞嗗憳鎸囧畾璇d锛屽彧鑳芥煡璇㈣嚜宸辩殑绋嬪簭璁板綍")
+ private Long userId;
}
--
Gitblit v1.9.3