From c6eb2d4ecd99bee148892abfbdca3e42f3dd6084 Mon Sep 17 00:00:00 2001
From: cuilei <ray_tsu1@163.com>
Date: 星期三, 07 五月 2025 18:08:07 +0800
Subject: [PATCH] 工具管理-仓库管理功能
---
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProductPermissionServiceImpl.java | 82 ++++++++++++++++++++++++++++++++++++++++-
1 files changed, 80 insertions(+), 2 deletions(-)
diff --git a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProductPermissionServiceImpl.java b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProductPermissionServiceImpl.java
index 4d8b562..e799e3a 100644
--- a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProductPermissionServiceImpl.java
+++ b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProductPermissionServiceImpl.java
@@ -3,21 +3,38 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import org.jeecg.modules.dnc.entity.ProductPermission;
+import org.jeecg.modules.dnc.entity.*;
+import org.jeecg.modules.dnc.exception.ExceptionCast;
import org.jeecg.modules.dnc.mapper.ProductPermissionMapper;
+import org.jeecg.modules.dnc.response.CommonCode;
+import org.jeecg.modules.dnc.service.*;
import org.jeecg.modules.dnc.ucenter.UserDepartExt;
import org.jeecg.modules.dnc.utils.ValidateUtil;
import org.jeecg.modules.system.entity.SysUser;
-import org.jeecg.modules.dnc.service.IProductPermissionService;
+import org.jeecg.modules.system.service.ISysUserService;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
+import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
@Service
public class ProductPermissionServiceImpl extends ServiceImpl<ProductPermissionMapper, ProductPermission> implements IProductPermissionService {
+ @Autowired
+ private IComponentPermissionService componentPermissionService;
+ @Autowired
+ private IPartsPermissionService partsPermissionService;
+ @Resource
+ private IProcessSpecVersionPermissionService processSpecVersionPermissionService;
+ @Autowired
+ private IProcessStreamPermissionService processStreamPermissionService;
+ @Autowired
+ private IWorkStepPermissionService workStepPermissionService;
+ @Autowired
+ private ISysUserService sysUserService;
@Override
public ProductPermission getByProductIdAndUserId(String productId, String userId) {
if(!ValidateUtil.validateString(productId) || !ValidateUtil.validateString(userId))
@@ -69,4 +86,65 @@
list = Collections.emptyList();
return list;
}
+
+ /**
+ * 鏂板鏉冮檺鏁版嵁
+ * @param id
+ * @param userId
+ * @param type
+ * @return
+ */
+ @Override
+ public boolean add(String id, String userId, String type) {
+ // 楠岃瘉鍙傛暟鏈夋晥鎬�
+ if (!ValidateUtil.validateString(userId) || !ValidateUtil.validateString(id) || !ValidateUtil.validateString(type)) {
+ return false;
+ }
+ // 鑾峰彇绠$悊鍛樼敤鎴�
+ SysUser adminUser = sysUserService.getUserByName("admin");
+ try {
+ boolean isAdmin = userId.equals(adminUser.getId());
+ savePermission(id, userId, type);
+ if (!isAdmin) {
+ savePermission(id, adminUser.getId(), type);
+ }
+ return true;
+ } catch (Exception e) {
+ ExceptionCast.cast(CommonCode.INVALID_PARAM);
+ return false;
+ }
+ }
+
+ private void savePermission(String id, String userId, String type) {
+ switch (type) {
+ case "1":
+ // 缁勪欢鏉冮檺
+ super.save(new ProductPermission(id, userId));
+ break;
+ case "2":
+ // 閮ㄤ欢鏉冮檺
+ componentPermissionService.save(new ComponentPermission(id, userId));
+ break;
+ case "3":
+ // 闆朵欢鏉冮檺
+ partsPermissionService.save(new PartsPermission(id, userId));
+ break;
+ case "4":
+ //宸ヨ壓瑙勭▼鐗堟湰鍙�
+ processSpecVersionPermissionService.save(new ProcessSpecVersionPermission(id, userId));
+ break;
+ case "5":
+ // 宸ュ簭鏉冮檺
+ processStreamPermissionService.save(new ProcessionPermission(id, userId));
+ break;
+ case "6":
+ // 宸ュ簭姝ラ鏉冮檺
+ workStepPermissionService.save(new WorkStepPermission(id, userId));
+ break;
+ default:
+ // 澶勭悊鏈煡绫诲瀷
+ throw new IllegalArgumentException("Unknown permission type: " + type);
+ }
+ }
+
}
--
Gitblit v1.9.3