SparePartUsedMapper.xml 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3. <mapper namespace="com.platform.dao.mapper.sqarepartmanage.SparePartUsedMapper">
  4. <resultMap id="BaseResultMap" type="com.platform.dao.entity.sqarepartmanage.SparePartUsed">
  5. <id column="id" jdbcType="VARCHAR" property="id"/>
  6. <result column="store_id" jdbcType="VARCHAR" property="storeId"/>
  7. <result column="sb_id" jdbcType="VARCHAR" property="sbId"/>
  8. <result column="part_id" jdbcType="VARCHAR" property="partId"/>
  9. <result column="spare_id" jdbcType="VARCHAR" property="spareId"/>
  10. <result column="repair_id" jdbcType="VARCHAR" property="repairId"/>
  11. <result column="repair_no" jdbcType="VARCHAR" property="repairNo"/>
  12. <result column="start_date" jdbcType="DATE" property="startDate"/>
  13. <result column="status" jdbcType="SMALLINT" property="status"/>
  14. <result column="used_source" jdbcType="SMALLINT" property="usedSource"/>
  15. <result column="num" jdbcType="DECIMAL" property="num"/>
  16. <result column="price" jdbcType="DECIMAL" property="price"/>
  17. <result column="total_price" jdbcType="DECIMAL" property="totalPrice"/>
  18. <result column="change_date" jdbcType="DATE" property="changeDate"/>
  19. <result column="real_change_date" jdbcType="DATE" property="realChangeDate"/>
  20. <result column="remark" jdbcType="VARCHAR" property="remark"/>
  21. <result column="created_user_id" jdbcType="VARCHAR" property="createdUserId"/>
  22. <result column="update_user_id" jdbcType="VARCHAR" property="updateUserId"/>
  23. <result column="created_time" jdbcType="TIMESTAMP" property="createdTime"/>
  24. <result column="update_time" jdbcType="TIMESTAMP" property="updateTime"/>
  25. <association column="created_user_id" javaType="string" property="createdUserName"
  26. select="com.platform.dao.mapper.upms.SysUserMapper.selectUserNameById"/>
  27. <association column="update_user_id" javaType="string" property="updateUserName"
  28. select="com.platform.dao.mapper.upms.SysUserMapper.selectUserNameById"/>
  29. <association column="sb_id" javaType="string" property="sbName"
  30. select="com.platform.dao.mapper.sb.SbInfoMapper.selectNameById"/>
  31. <association column="part_id" javaType="string" property="partName"
  32. select="com.platform.dao.mapper.part.PartInfoMapper.selectNameById"/>
  33. <association column="spare_id" javaType="string" property="spareName"
  34. select="com.platform.dao.mapper.sqarepartmanage.SparePartInfoMapper.selectNameById"/>
  35. </resultMap>
  36. <sql id="Base_Column_List">
  37. id, store_id, sb_id, part_id, spare_id, start_date, status, change_date, real_change_date,
  38. remark, created_user_id, update_user_id, created_time, update_time,
  39. repair_id,
  40. repair_no
  41. </sql>
  42. <sql id="Left_Column">
  43. used.id, used.store_id, used.sb_id,used.price,
  44. used.part_id, used.spare_id, used.start_date,
  45. used.status, used.change_date,
  46. used.num,used.used_source,
  47. used.real_change_date,
  48. used.repair_id,
  49. used.repair_no,
  50. used.remark, used.created_user_id, used.update_user_id, used.created_time, used.update_time,
  51. sbInfo.name as sbName,partInfo.name as partName,spareInfo.name as spareName
  52. </sql>
  53. <sql id="Left_From">
  54. left join t_sb_info sbInfo on used.sb_id = sbInfo.id
  55. left join t_part_info partInfo on used.part_id = partInfo.id
  56. left join t_spare_part_info spareInfo on used.spare_id = spareInfo.id
  57. </sql>
  58. <select id="selectVOList" parameterType="com.platform.dao.dto.sqarepartmanage.SparePartUsedDTO"
  59. resultType="com.platform.dao.vo.spare.SparePartUsedVO">
  60. select
  61. <include refid="Left_Column"/>
  62. from t_spare_part_used used
  63. <include refid="Left_From"/>
  64. <where>
  65. <if test="status != null and status != ''">
  66. and used.status = #{status}
  67. </if>
  68. <if test="keyword != null and keyword != ''">
  69. and used.remark like concat('%',#{keyword},'%')
  70. </if>
  71. <if test="sbId != null and sbId != ''">
  72. and used.sb_id = #{sbId}
  73. </if>
  74. <if test="repairId != null and repairId != ''">
  75. and used.repair_id = #{repairId}
  76. </if>
  77. <if test="repairNo != null and repairNo != ''">
  78. and used.repair_no = #{repairNo}
  79. </if>
  80. <if test="partId != null and partId != ''">
  81. and used.part_id = #{partId}
  82. </if>
  83. <!-- 新增报表查询条件 -->
  84. <if test="searchStartTime != null">
  85. and used.start_date <![CDATA[ >= ]]> #{searchStartTime}
  86. </if>
  87. <if test="searchEndTime != null">
  88. and used.start_date <![CDATA[ <= ]]> #{searchEndTime}
  89. </if>
  90. <if test="usedSource != null">
  91. and used.used_source = #{usedSource}
  92. </if>
  93. </where>
  94. </select>
  95. <select id="selectById" parameterType="java.lang.Object" resultType="com.platform.dao.vo.spare.SparePartUsedVO">
  96. select
  97. <include refid="Left_Column"/>
  98. from t_spare_part_used used
  99. <include refid="Left_From"/>
  100. where used.id = #{value}
  101. </select>
  102. <select id="selectSparePartUsedListByRepairId" resultType="com.platform.dao.vo.spare.SparePartUsedVO">
  103. select used.*, spareInfo.name as spareName
  104. from t_spare_part_used used
  105. left join t_spare_part_info spareInfo on used.spare_id = spareInfo.id
  106. where used.repair_id = #{repairId}
  107. </select>
  108. <select id="selectNameById" parameterType="java.lang.Object" resultType="java.lang.String">
  109. select spareInfo.name
  110. from t_spare_part_used used
  111. left join t_spare_part_info spareInfo on used.spare_id = spareInfo.id
  112. where used.id = #{value}
  113. </select>
  114. <select id="statisticsByGroupBySpare" parameterType="com.platform.dao.dto.sqarepartmanage.SparePartUsedDTO"
  115. resultType="com.platform.dao.vo.spare.SparePartUsedVO">
  116. select YEAR(used.real_change_date) AS year,
  117. MONTH(used.real_change_date) AS month,
  118. COUNT(1) as num,
  119. used.spare_id as spareId,
  120. info.name as spareName
  121. from t_spare_part_used used
  122. left join t_spare_part_info info on used.spare_id = info.id
  123. where used.real_change_date IS NOT NULL
  124. <if test="year != null">
  125. and YEAR(used.real_change_date) = #{year}
  126. </if>
  127. <if test="month != null">
  128. and MONTH(used.real_change_date) = #{month}
  129. </if>
  130. <if test="spareName != null and spareName != ''">
  131. and info.name like concat('%',#{spareName},'%')
  132. </if>
  133. group by YEAR(used.real_change_date), MONTH(used.real_change_date), used.spare_id
  134. order by YEAR(used.real_change_date) DESC, MONTH(used.real_change_date) DESC
  135. </select>
  136. </mapper>