package org.jeecg.modules.dnc.service; import com.baomidou.mybatisplus.extension.service.IService; import org.jeecg.modules.dnc.entity.DocInfo; import org.jeecg.modules.dnc.entity.PartsInfo; import org.jeecg.modules.dnc.request.TreeInfoRequest; import org.jeecg.modules.system.entity.MdcProduction; import org.jeecg.modules.system.entity.SysUser; import java.util.Collection; import java.util.List; public interface IPartsInfoService extends IService { /** * 添加零件信息 * @param partsInfo * @return */ boolean addPartsInfo(PartsInfo partsInfo); /** * 编辑零件信息 * @param id * @param partsInfo * @return */ boolean editPartsInfo(String id, PartsInfo partsInfo); /** * 根据用户id获取授权的零件信息 * @param userId * @return */ List getByUserPerms(String userId); /** * 根据用户id获取授权的零件信息 * @param userId * @param componentId * @return */ List getByUserPerms(String userId, String componentId, String queryParam); /** * 根据产品id获取 * @param productId * @return */ List getByProductId(String productId); /** * 根据产品id 和部件id获取 * @param productId * @param componentId * @return */ List getByComponentId(String productId, String componentId); /** * 根据产品id删除下面的所有子节点 * @param partsInfoList * @return */ boolean deleteCollection(List partsInfoList); /** * 删除零件 * @param partsId * @return */ boolean deletePartsInfo(String partsId); /** * 分配用户权限 * @param partsInfo * @param userList * @return */ boolean assignAddUser(PartsInfo partsInfo, Collection userList); /** * 移除用户权限 * @param partsInfo * @param userList * @return */ boolean assignRemoveUser(PartsInfo partsInfo, Collection userList); /** * 分配部门权限 * @param partsInfo * @param departmentList * @return */ boolean assignAddDepart(PartsInfo partsInfo, Collection departmentList); /** * 分配部门权限 * @param partsInfo * @param departmentList * @return */ boolean assignRemoveDepart(PartsInfo partsInfo, Collection departmentList); /** * 根据一组部件查找零件 * @param productId * @param componentIds * @return */ List getByComponentIdList(String productId, List componentIds); /** * 获取唯一 零件编号 * @param partsCode * @return */ PartsInfo getByCode(String partsCode); /** * 通过零件号、材质等查询对应电子样板 * @param treeInfoRequest * @return */ List getByPartsInfo(TreeInfoRequest treeInfoRequest); boolean assignPermission(Object entity, Collection userList, boolean isAdd); boolean assignDepartPermission(Object entity, Collection departments, boolean isAdd); }