/**
 * Copyright &copy; 2015-2020 <a href="http://www.jeeplus.org/">JeePlus</a> All rights reserved.
 */
package com.jeeplus.modules.projectcontentinfo.dao;

import com.jeeplus.common.persistence.CrudDao;
import com.jeeplus.common.persistence.annotation.MyBatisDao;
import com.jeeplus.modules.projectcontentinfo.entity.Projectcontentinfo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 工作内容管理DAO接口
 * @author yangfan
 * @version 2018-06-04
 */
@MyBatisDao
public interface ProjectcontentinfoDao extends CrudDao<Projectcontentinfo> {

	Projectcontentinfo findByType(Projectcontentinfo projectcontentinfo);
	Projectcontentinfo getByInfoId(@Param("infoId")String infoId);
	Projectcontentinfo findByInfoId(Projectcontentinfo projectcontentinfo);
	List<Projectcontentinfo> findListByProject(Projectcontentinfo projectcontentinfo);
	List<Projectcontentinfo> findByParentIds(@Param("projectId")String projectId,@Param("parentId")String parentId);
	List<Projectcontentinfo> findListByProjectAndType(Projectcontentinfo projectcontentinfo);
	List<Projectcontentinfo> findListByProjectAndTypes(Projectcontentinfo projectcontentinfo);
	List<Projectcontentinfo> findListByProjectAndDictType(Projectcontentinfo projectcontentinfo);
	List<Projectcontentinfo> findListByProjectType(Projectcontentinfo projectcontentinfo);
	void deleteInfoId(Projectcontentinfo projectcontentinfo);

    Integer queryMaxSort(Projectcontentinfo projectcontentinfo);

    List<Projectcontentinfo> findListByParentSelective(Projectcontentinfo projectcontentinfo);

    void deleteByParentAndLinkId(Projectcontentinfo projectcontentinfo);

    void deleteInfosByParent(String parentIds);
    void updateByLinkId(@Param("linkId")String linkId,@Param("dataName")String dataName);

    List<Projectcontentinfo> findType(@Param("projectId")String projectId,@Param("type")String type);
}