zhangherong
2025-06-25 23855599412c4d61b38d78f0f3abd3430a48b5b1
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/IMdcProductionService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,195 @@
package org.jeecg.modules.system.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.system.entity.MdcProduction;
import org.jeecg.modules.system.model.MdcProductionTreeModel;
import org.jeecg.modules.system.model.ProductionIdModel;
import org.jeecg.modules.system.vo.MdcProOptionsVo;
import java.util.List;
import java.util.Map;
/**
 * @Description: äº§çº¿è¡¨
 * @Author: liuS
 * @Date: 2023-03-23
 * @Version: V1.0
 */
public interface IMdcProductionService extends IService<MdcProduction> {
    /**
     * æŸ¥è¯¢æ‰€æœ‰äº§çº¿ä¿¡æ¯ï¼Œå¹¶åˆ†èŠ‚ç‚¹è¿›è¡Œæ˜¾ç¤º
     */
    List<MdcProductionTreeModel> queryTreeList();
    /**
     * æŸ¥è¯¢æ‰€æœ‰äº§çº¿ä¿¡æ¯ï¼Œå¹¶åˆ†èŠ‚ç‚¹è¿›è¡Œæ˜¾ç¤º(添加系统配置)
     */
    List<MdcProductionTreeModel> queryTreeListByConfig();
    /**
     * æŸ¥è¯¢æ‰€æœ‰äº§çº¿ä¿¡æ¯ï¼Œå¹¶åˆ†èŠ‚ç‚¹è¿›è¡Œæ˜¾ç¤º
     */
    List<MdcProductionTreeModel> queryTreeList(String ids);
    /**
     * æŸ¥è¯¢æ‰€æœ‰éƒ¨é—¨DepartId信息,并分节点进行显示
     */
    List<ProductionIdModel> queryProductionIdTreeList();
    /**
     * æ ¹æ®å…³é”®å­—搜索相关的产线数据
     */
    List<MdcProductionTreeModel> searchByKeyWord(String keyWord);
    /**
     * ä¿å­˜äº§çº¿æ•°æ®
     */
    void saveProductionData(MdcProduction mdcProduction);
    /**
     * æ›´æ–°äº§çº¿æ•°æ®
     */
    boolean updateProductionDataById(MdcProduction mdcProduction);
    /**
     * æ ¹æ®äº§çº¿id删除并删除其可能存在的子级产线
     */
    boolean delete(String id);
    /**
     * æ ¹æ®äº§çº¿id批量删除并删除其可能存在的子级产线
     */
    void deleteBatchWithChildren(List<String> ids);
    /**
     * èŽ·å–ä¸‹çº§äº§çº¿
     */
    List<MdcProduction> queryProdByPid(String pid);
    /**
     * é€’归查询所有子节点
     */
    List<MdcProduction> recursionChildrenByPid(String pid);
    /**
     * æ ¹æ®ç”¨æˆ·id获取产线下拉树选项
     */
    List<ProductionIdModel> loadProductionTreeOptions(String userId);
    /**
     * é€’归查询所有子节点
     */
    List<String> recursionChildren(String productionId);
    /**
     * æ ¹æ®ç”¨æˆ·id和车间id获取用户拥有的车间id
     *
     * @param userId
     * @param productionId
     * @return
     */
    String findFirstProduction(String userId, String productionId);
    /**
     * æ ¹æ®ç”¨æˆ·id查询用户工段权限
     */
    String findThreeProductionId(String userId);
    /**
     *  æŸ¥è¯¢æ‰€æœ‰çˆ¶èŠ‚ç‚¹å’Œæœ¬èŠ‚ç‚¹åç§°
     * @param id
     * @return
     */
    List<String> findListParentTreeAll(String id);
    /**
     *  æŸ¥è¯¢æ‰€æœ‰çˆ¶èŠ‚ç‚¹åç§°
     * @param parentId
     * @param stringList
     * @return
     */
    List<String> findListParentTree(String parentId,List<String> stringList);
    /**
     * èŽ·å–ç”¨æˆ·æ‰€åœ¨çš„éƒ¨é—¨
     * @param userId
     * @return
     */
    Map<String, MdcProduction> getUserAssignedDepart(String userId);
    /**
     * é€šè¿‡ä¸€ç»„id获取部门
     * @param ids
     * @return
     */
    List<String> findAllProductionIds(List<String> ids);
    /**
     * èŽ·å–æŸä¸ªèŠ‚ç‚¹æ‰€æœ‰ä¸Šçº§èŠ‚ç‚¹çš„id
     * @param parentId çˆ¶èŠ‚ç‚¹ id
     * @param idList æŽ¥æ”¶ç»“果集
     * @return
     */
    List<String> findParentIdsForProduction(String parentId, List<String> idList);
    /**
     * æŸ¥è¯¢æ‰€æœ‰äº§çº¿ä¿¡æ¯ï¼Œå¹¶åˆ†èŠ‚ç‚¹è¿›è¡Œæ˜¾ç¤º
     */
    List<MdcProductionTreeModel> queryTreeListByMdc(String ids);
    /**
     * æŸ¥è¯¢æ‰€æœ‰äº§çº¿ä¿¡æ¯ï¼Œå¹¶åˆ†èŠ‚ç‚¹è¿›è¡Œæ˜¾ç¤º
     */
    List<MdcProductionTreeModel> queryTreeListByMdc();
    /**
     * æŸ¥è¯¢å­èŠ‚ç‚¹
     * @param mdcProductionIds
     * @return
     */
    List<String> findChildren(List<String> mdcProductionIds);
    /**
     * æ ¹æ®ç”¨æˆ·id获取产线(中心)或班组下拉选项
     * @param userId
     * @param productionId
     * @return
     */
    List<MdcProOptionsVo> loadProductionOptions(String userId, String productionId);
    List<MdcProduction> findMdcPros(String userId, String productionId);
    /**
     *
     * @param userId
     * @param productionId
     * @return
     */
    List<MdcProOptionsVo> loadTeamOptions(String userId, String productionId);
    /**
     *
     * @param userId
     * @param allProductionIds
     * @return
     */
    List<String> findProIdsByUId(String userId, List<String> allProductionIds);
    /**
     *
     * @param productionId
     * @return
     */
    List<String> findChildByProId(String productionId);
    String findProName(String equipmentId);
    /**
     * æ ¹æ®äº§çº¿orgCode查询产线
     * @param orgCode
     * @return
     */
    MdcProduction findByOrgCode(String orgCode);
}