zhangherong
2025-06-25 23855599412c4d61b38d78f0f3abd3430a48b5b1
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/IProductInfoService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,243 @@
package org.jeecg.modules.dnc.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.common.api.vo.Result;
import org.jeecg.modules.dnc.entity.DocInfo;
import org.jeecg.modules.dnc.entity.ProductInfo;
import org.jeecg.modules.dnc.request.TreeInfoRequest;
import org.jeecg.modules.dnc.response.CommonGenericTree;
import org.jeecg.modules.dnc.ucenter.UserDepartExt;
import org.jeecg.modules.system.entity.MdcProduction;
import org.jeecg.modules.system.entity.SysUser;
import java.util.Collection;
import java.util.List;
public interface IProductInfoService extends IService<ProductInfo> {
    /**
     * æ–°å¢žäº§å“ä¿¡æ¯
     * @param deviceGroup
     * @return
     */
    boolean addProductInfo(ProductInfo deviceGroup);
    /**
     * ç¼–辑产品信息
     * @param id
     * @param productInfo
     * @return
     */
    boolean editProductInfo(String id ,ProductInfo productInfo);
    /**
     * èŽ·å–äº§å“ç»“æž„æ ‘æŽ¥å£
     * @return
     */
    List<CommonGenericTree> loadProductTree(String userId);
    /**
     * æ ¹æ®ç”¨æˆ·id获取用户的产品数据
     * @param userId
     * @return
     */
    List<ProductInfo> getByUserPerms(String userId);
    /**
     * æ ¹æ®ç”¨æˆ·id和查询条件获取用户的产品数据
     * @param userId
     * @param queryParam
     * @return
     */
    List<ProductInfo> getByUserPerms(String userId, String queryParam);
    /**
     * åˆ é™¤äº§å“
     * @param id
     * @return
     */
    boolean deleteProductInfo(String id);
    /**
     * æ£€æŸ¥äº§å“æ ‘节点的查看权限
     * @param nodeType
     * @param paramId
     * @return
     */
    boolean checkProductPerm(Integer nodeType, String paramId);
    /**
     * èŽ·å–å·²åˆ†é…çš„ç”¨æˆ·
     * @param nodeType
     * @param paramId
     * @return
     */
    List<UserDepartExt> getUserPermsList(Integer nodeType, String paramId);
    /**
     * èŽ·å–æœªåˆ†é…çš„ç”¨æˆ·
     * @param nodeType
     * @param paramId
     * @return
     */
    List<SysUser> getUserNonPermsList(Integer nodeType, String paramId);
    /**
     * èŽ·å–å·²åˆ†é…çš„éƒ¨é—¨
     * @param nodeType
     * @param paramId
     * @return
     */
    List<MdcProduction> getDepartPermsList(Integer nodeType, String paramId);
    /**
     * èŽ·å–æœªåˆ†é…çš„éƒ¨é—¨
     * @param nodeType
     * @param paramId
     * @return
     */
    List<MdcProduction> getDepartNonPermsList(Integer nodeType, String paramId);
    /**
     * æŒ‡æ´¾äº§å“æ ‘节点的用户权限
     * @param nodeType 1 äº§å“ 2 éƒ¨ä»¶ 3 é›¶ä»¶
     * @param paramId äº§å“æ ‘节点id
     * @param userIds æ·»åŠ ç”¨æˆ·ids
     * @param relativeFlag 1 æ˜¯ 2 å¦
     * @return
     */
    boolean assignAddUserAll(Integer nodeType, String paramId, Integer relativeFlag, String[] userIds);
    /**
     * ç§»é™¤äº§å“æ ‘节点的用户权限
     * @param nodeType 1 äº§å“ 2 éƒ¨ä»¶ 3 é›¶ä»¶
     * @param paramId äº§å“æ ‘节点id
     * @param userIds ç§»é™¤ç”¨æˆ·ids
     * @param relativeFlag 1 æ˜¯ 2 å¦
     * @return
     */
    boolean assignRemoveUserAll(Integer nodeType, String paramId, Integer relativeFlag, String[] userIds);
    /**
     * æŒ‡æ´¾äº§å“æ ‘节点的部门权限
     * @param nodeType 1 äº§å“ 2 éƒ¨ä»¶ 3 é›¶ä»¶
     * @param paramId äº§å“æ ‘节点id
     * @param departmentIds æ·»åŠ éƒ¨é—¨ids
     * @param relativeFlag 1 æ˜¯ 2 å¦
     * @return
     */
    boolean assignAddDepartmentAll(Integer nodeType, String paramId, Integer relativeFlag, String[] departmentIds);
    /**
     * ç§»é™¤äº§å“æ ‘节点的部门权限
     * @param nodeType 1 äº§å“ 2 éƒ¨ä»¶ 3 é›¶ä»¶
     * @param paramId äº§å“æ ‘节点id
     * @param departmentIds ç§»é™¤éƒ¨é—¨ids
     * @param relativeFlag 1 æ˜¯ 2 å¦
     * @return
     */
    boolean assignRemoveDepartmentAll(Integer nodeType, String paramId, Integer relativeFlag, String[] departmentIds);
    /**
     * ç»™äº§å“æ ‘节点添加用户权限
     * @param productInfo
     * @param userList
     * @return
     */
    boolean assignAddUser(ProductInfo productInfo, Collection<SysUser> userList);
    /**
     * ç§»é™¤äº§å“æ ‘节点添加用户权限
     * @param productInfo
     * @param userList
     * @return
     */
    boolean assignRemoveUser(ProductInfo productInfo, Collection<SysUser> userList);
    /**
     * ç»™äº§å“æ ‘节点添加部门权限
     * @param productInfo
     * @param departmentList
     * @return
     */
    boolean assignAddDepartment(ProductInfo productInfo, Collection<MdcProduction> departmentList);
    /**
     * ç§»é™¤äº§å“æ ‘节点添加部门权限
     * @param productInfo
     * @param departmentList
     * @return
     */
    boolean assignRemoveDepartment(ProductInfo productInfo, Collection<MdcProduction> departmentList);
    /**
     * èŽ·å–èŠ‚ç‚¹çš„éƒ¨é—¨æƒé™
     * @param nodeType
     * @param paramId
     * @return
     */
    List<String> getDepartIdsByParams(Integer nodeType, String paramId);
    /**
     * èŽ·å–å”¯ä¸€äº§å“ç¼–å·
     * @param productNo
     * @return
     */
    ProductInfo getByProductNo(String productNo);
    /**
     * èŽ·å–äº§å“æ ‘çš„ç¬¬ä¸€çº§å’Œç¬¬äºŒçº§
     * @param userId
     * @return
     */
    List<CommonGenericTree> loadBaseTree(String userId);
    /**
     * åŠ è½½äº§å“æ ‘å­èŠ‚ç‚¹æ•°æ®
     * @param userId
     * @param nodeType
     * @param paramId
     * @return
     */
    List<CommonGenericTree> loadTree(String userId, Integer nodeType, String paramId);
    /**
     * æœç´¢æŽ¥å£
     * @param userId
     * @param queryParam
     * @return
     */
    List<CommonGenericTree> searchProductTree(String userId, String queryParam);
    /**
     * äº§å“ç»“构树-通过类型就行删除
     * @param id
     * @param type
     * @return
     */
    boolean deleteProductTree(String id, Integer type);
    /**
     * èŽ·å–å…·ä½“å±‚çº§å®žä½“
     * @param id,treeType
     * @return
     */
    Result<?> getTreeById(String id, Integer type);
    /**
     * é€šè¿‡ä»£å·ã€åç§°ã€æè´¨ç­‰æŸ¥è¯¢å¯¹åº”电子样板
     * @param treeInfoRequest
     * @return
     */
    List<DocInfo> getByTreeOtherFileInfo(TreeInfoRequest treeInfoRequest);
    /**
     * é€šè¿‡ä»£å·ã€åç§°ã€æè´¨ç­‰æŸ¥è¯¢å¯¹åº”NC文件
     * @param treeInfoRequest
     * @return
     */
    List<DocInfo> getByTreeNcFileInfo(TreeInfoRequest treeInfoRequest);
}