TreeNodeMapper.java 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. package seecoder.devcloud.web.dao.tree;
  2. import org.apache.ibatis.annotations.*;
  3. import org.springframework.stereotype.Repository;
  4. import seecoder.devcloud.web.model.po.TreeNodePO;
  5. import seecoder.devcloud.web.dao.provider.TreeNodeProvider;
  6. import java.util.List;
  7. @Mapper
  8. @Repository
  9. public interface TreeNodeMapper {
  10. /**
  11. * 获取所有的TreeNode
  12. * @return
  13. */
  14. @Select({"select * from tree_nodes"})
  15. @Results(id="treeNodeMap",value = {
  16. @Result(column = "is_leaf", property = "leaf"),
  17. @Result(column = "time_to_take", property = "timeToTake"),
  18. @Result(column = "start_time", property = "startTime"),
  19. @Result(column = "end_time", property = "endTime"),
  20. @Result(column = "group_id", property = "groupId"),
  21. @Result(column = "project_id", property = "projectId"),
  22. @Result(column = "parent_id", property = "parentId"),
  23. @Result(column = "state",property = "state"),
  24. @Result(column = "type",property = "type")
  25. })
  26. List<TreeNodePO> listAllTreeNodes();
  27. /**
  28. * 根据id获取TreeNode
  29. * @param id
  30. * @return
  31. */
  32. @Select({"select * from tree_nodes where id = #{id}"})
  33. @ResultMap(value = "treeNodeMap")
  34. TreeNodePO getTreeNodeById(@Param("id") int id);
  35. /**
  36. * 根据GroupId获取TreeNode
  37. * @param groupId
  38. * @return
  39. */
  40. @Select({"select * from tree_nodes where group_id = #{groupId}"})
  41. @ResultMap(value = "treeNodeMap")
  42. List<TreeNodePO> listTreeNodesByGroupId(@Param("groupId") int groupId);
  43. /**
  44. * 根据projectId获取TreeNode
  45. * @param projectId
  46. * @return
  47. */
  48. @Select({"select * from tree_nodes where project_id = #{projectId}"})
  49. @ResultMap(value = "treeNodeMap")
  50. List<TreeNodePO> listTreeNodesByProjectId(@Param("projectId") int projectId);
  51. /**
  52. * 插入treeNode
  53. * @param TreeNodePO
  54. * @return treeNode的自增主键
  55. */
  56. @Insert({"insert into tree_nodes(title, description, type, priority, state, time_to_take, start_time, end_time, is_leaf, group_id,project_id,deep,parent_id) " +
  57. "VALUES (#{title}, #{description}, #{type}, #{priority}, #{state}, #{timeToTake}, #{startTime}, #{endTime}, #{leaf}, #{groupId},#{projectId},#{deep},#{parentId})"})
  58. @Options(useGeneratedKeys = true, keyProperty = "id")
  59. int insertTreeNode(TreeNodePO TreeNodePO);
  60. /**
  61. * 更新TreeNode
  62. * @param TreeNodePO
  63. * @return
  64. */
  65. @UpdateProvider(type = TreeNodeProvider.class,method = "updateTreeNode")
  66. int updateTreeNode(TreeNodePO TreeNodePO);
  67. }