package com.lxzn.nc.service; import com.baomidou.mybatisplus.extension.service.IService; import com.lxzn.framework.domain.nc.ComponentInfo; import com.lxzn.framework.domain.nc.DocInfo; import com.lxzn.framework.domain.nc.PartsInfo; import com.lxzn.framework.domain.ucenter.Department; import com.lxzn.framework.domain.ucenter.User; import com.lxzn.framework.domain.webservice.DispatchInfo; import org.apache.ibatis.annotations.Param; 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); /** * 通过DispatchInfo获取nc文件ids * @param dispatchInfo * @return */ List getNcIdsByDispatchInfo(DispatchInfo dispatchInfo); /** * * @param partsCode * @param componentIds * @return */ PartsInfo getByCodeAndComIdList(String partsCode, List componentIds); }