AdmModelFileMapper.xml 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper
  3. PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  4. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  5. <mapper namespace="com.persagy.adm.server.algorithm.dao.AdmModelFileMapper">
  6. <resultMap id="BaseResultMap" type="com.persagy.adm.server.algorithm.entity.AdmModelFile">
  7. <id property="id" column="id" jdbcType="VARCHAR"/>
  8. <result property="originalName" column="original_name" jdbcType="VARCHAR"/>
  9. <result property="version" column="version" jdbcType="INTEGER"/>
  10. <result property="userId" column="user_id" jdbcType="VARCHAR"/>
  11. <result property="userName" column="user_name" jdbcType="VARCHAR"/>
  12. <result property="status" column="status" jdbcType="SMALLINT"/>
  13. <result property="note" column="note" jdbcType="OTHER" typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler"/>
  14. <result property="revitFileId" column="revit_file_id" jdbcType="VARCHAR"/>
  15. <result property="dataFileId" column="data_file_id" jdbcType="VARCHAR"/>
  16. <result property="minDataFileId" column="min_data_file_id" jdbcType="VARCHAR"/>
  17. <result property="floorId" column="floor_id" jdbcType="VARCHAR"/>
  18. <result property="buildingId" column="building_id" jdbcType="VARCHAR"/>
  19. <result property="projectId" column="project_id" jdbcType="VARCHAR"/>
  20. <result property="groupCode" column="group_code" jdbcType="VARCHAR"/>
  21. <result property="removed" column="removed" jdbcType="BOOLEAN"/>
  22. <result property="syncRetryTimes" column="sync_retry_times" jdbcType="INTEGER"/>
  23. <result property="syncRetryDate" column="sync_retry_date" jdbcType="TIMESTAMP"/>
  24. <result property="syncErrorMsg" column="sync_error_msg" jdbcType="VARCHAR"/>
  25. <result property="level" column="level" jdbcType="DOUBLE"/>
  26. <result property="statusInfo" column="status_info" jdbcType="OTHER" typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler"/>
  27. <result property="revitVersion" column="revit_version" jdbcType="VARCHAR"/>
  28. <result property="creator" column="creator" jdbcType="VARCHAR"/>
  29. <result property="creationTime" column="creation_time" jdbcType="CHAR"/>
  30. <result property="modifier" column="modifier" jdbcType="VARCHAR"/>
  31. <result property="modifiedTime" column="modified_time" jdbcType="CHAR"/>
  32. <result property="valid" column="valid" jdbcType="TINYINT"/>
  33. <result property="ts" column="ts" jdbcType="TIMESTAMP"/>
  34. </resultMap>
  35. <sql id="Base_Column_List">
  36. id,original_name,version,
  37. user_id,user_name,status,
  38. note,revit_file_id,data_file_id,
  39. min_data_file_id,floor_id,building_id,
  40. project_id,group_code,removed,
  41. sync_retry_times,sync_retry_date,sync_error_msg,
  42. level,status_info,revit_version,
  43. creator,creation_time,modifier,
  44. modified_time,valid,ts
  45. </sql>
  46. <insert id="insertEntity">
  47. INSERT INTO adm_model_file
  48. <trim prefix="(" suffix=")" suffixOverrides=",">
  49. `id`,
  50. <if test="null!=et.originalName and ''!=et.originalName">`original_name`,</if>
  51. `version`,
  52. <if test="null!=et.userId and ''!=et.userId">`user_id`,</if>
  53. <if test="null!=et.userName and ''!=et.userName">`user_name`,</if>
  54. <if test="null!=et.status">`status`,</if>
  55. <if test="null!=et.revitFileId and ''!=et.revitFileId">`revit_file_id`,</if>
  56. <if test="null!=et.dataFileId and ''!=et.dataFileId">`data_file_id`,</if>
  57. <if test="null!=et.floorId and ''!=et.floorId">`floor_id`,</if>
  58. <if test="null!=et.buildingId and ''!=et.buildingId">`building_id`,</if>
  59. <if test="null!=et.projectId and ''!=et.projectId">`project_id`,</if>
  60. <if test="null!=et.groupCode and ''!=et.groupCode">`group_code`,</if>
  61. <if test="null!=et.revitVersion and ''!=et.revitVersion">`revit_version`,</if>
  62. <if test="null!=et.creator and ''!=et.creator">`creator`,</if>
  63. <if test="null!=et.modifier and ''!=et.modifier">`modifier`,</if>
  64. `creation_time`,
  65. `modified_time`
  66. </trim>
  67. SELECT
  68. <trim suffixOverrides=",">
  69. #{et.id},
  70. <if test="null!=et.originalName and ''!=et.originalName">#{et.originalName},</if>
  71. (SELECT IFNULL(MAX(version),0)+1 AS version FROM adm_model_file WHERE floor_id=#{et.floorId}),
  72. <if test="null!=et.userId and ''!=et.userId">#{et.userId},</if>
  73. <if test="null!=et.userName and ''!=et.userName">#{et.userName},</if>
  74. <if test="null!=et.status">#{et.status},</if>
  75. <if test="null!=et.revitFileId and ''!=et.revitFileId">#{et.revitFileId},</if>
  76. <if test="null!=et.dataFileId and ''!=et.dataFileId">#{et.dataFileId},</if>
  77. <if test="null!=et.floorId and ''!=et.floorId">#{et.floorId},</if>
  78. <if test="null!=et.buildingId and ''!=et.buildingId">#{et.buildingId},</if>
  79. <if test="null!=et.projectId and ''!=et.projectId">#{et.projectId},</if>
  80. <if test="null!=et.groupCode and ''!=et.groupCode">#{et.groupCode},</if>
  81. <if test="null!=et.revitVersion and ''!=et.revitVersion">#{et.revitVersion},</if>
  82. #{et.creator},
  83. #{et.modifier},
  84. #{et.creationTime},
  85. #{et.modifiedTime}
  86. </trim>
  87. FROM DUAL;
  88. </insert>
  89. <select id="queryCurrentModelFileByFloorIds"
  90. resultType="com.persagy.adm.server.algorithm.entity.AdmModelFile">
  91. SELECT * FROM adm_model_file
  92. INNER JOIN (SELECT floor_id,MAX(version) AS version FROM adm_model_file
  93. ${ew.customSqlSegment} GROUP BY floor_id
  94. HAVING MAX(version)=version) AS temp
  95. ON(temp.floor_id=adm_model_file.floor_id AND temp.version=adm_model_file.version);
  96. </select>
  97. </mapper>