From f02d0df2f1dfc7a8b775cf50d45375e57628a5ef Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期二, 10 十一月 2026 11:26:22 +0800
Subject: [PATCH] feat(ncr): 完善NCR处置联动逻辑与关闭校验

---
 yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/business/CrmBusinessStatusController.java |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/business/CrmBusinessStatusController.java b/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/business/CrmBusinessStatusController.java
index 0663d1f..a32c9f9 100644
--- a/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/business/CrmBusinessStatusController.java
+++ b/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/business/CrmBusinessStatusController.java
@@ -73,7 +73,6 @@
     @GetMapping("/get")
     @Operation(summary = "鑾峰緱鍟嗘満鐘舵��")
     @Parameter(name = "id", description = "缂栧彿", required = true, example = "1024")
-    @PreAuthorize("@ss.hasPermission('crm:business-status:query')")
     public CommonResult<CrmBusinessStatusRespVO> getBusinessStatusType(@RequestParam("id") Long id) {
         CrmBusinessStatusTypeDO statusType = businessStatusTypeService.getBusinessStatusType(id);
         if (statusType == null) {
@@ -86,7 +85,6 @@
 
     @GetMapping("/page")
     @Operation(summary = "鑾峰緱鍟嗘満鐘舵�佸垎椤�")
-    @PreAuthorize("@ss.hasPermission('crm:business-status:query')")
     public CommonResult<PageResult<CrmBusinessStatusRespVO>> getBusinessStatusPage(@Valid PageParam pageReqVO) {
         // 1. 鏌ヨ鏁版嵁
         PageResult<CrmBusinessStatusTypeDO> pageResult = businessStatusTypeService.getBusinessStatusTypePage(pageReqVO);
@@ -95,11 +93,13 @@
         }
         // 2. 鎷兼帴鏁版嵁
         Map<Long, AdminUserRespDTO> userMap = adminUserApi.getUserMap(
-                convertSet(pageResult.getList(), statusType -> Long.parseLong(statusType.getCreator())));
+                convertSet(pageResult.getList(), statusType -> NumberUtils.parseLong(statusType.getCreator())));
         Map<Long, DeptRespDTO> deptMap = deptApi.getDeptMap(
                 convertSetByFlatMap(pageResult.getList(), CrmBusinessStatusTypeDO::getDeptIds, Collection::stream));
         return success(BeanUtils.toBean(pageResult, CrmBusinessStatusRespVO.class, statusTypeVO -> {
-            statusTypeVO.setCreator(userMap.get(NumberUtils.parseLong(statusTypeVO.getCreator())).getNickname());
+            // 鍒涘缓浜哄彲鑳藉凡鍒犻櫎锛堝绂昏亴璐﹀彿锛夛紝鏄剧ず鈥滃凡鍒犻櫎鐢ㄦ埛鈥濊�屼笉鏄姏 NPE 瀵艰嚧鏁撮〉鏌ヨ澶辫触
+            AdminUserRespDTO creator = userMap.get(NumberUtils.parseLong(statusTypeVO.getCreator()));
+            statusTypeVO.setCreator(creator != null ? creator.getNickname() : "宸插垹闄ょ敤鎴�");
             statusTypeVO.setDeptNames(convertList(statusTypeVO.getDeptIds(),
                     deptId -> deptMap.containsKey(deptId) ? deptMap.get(deptId).getName() : null));
         }));

--
Gitblit v1.9.3