CapitalRepairLiftRelevanceMapper.xml 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  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="cn.com.ty.lift.business.capital.dao.mapper.CapitalRepairLiftRelevanceMapper" >
  4. <resultMap id="BaseResultMap" type="cn.com.ty.lift.business.capital.dao.entity.CapitalRepairLiftRelevance" >
  5. <id column="id" property="id" jdbcType="BIGINT" />
  6. <result column="mt_company_id" property="mtCompanyId" jdbcType="BIGINT" />
  7. <result column="project_id" property="projectId" jdbcType="BIGINT" />
  8. <result column="lift_id" property="liftId" jdbcType="VARCHAR" />
  9. <result column="worker_id" property="workerId" jdbcType="CHAR" />
  10. <result column="delete_flag" property="deleteFlag" jdbcType="VARCHAR" />
  11. <result column="creator_id" property="creatorId" jdbcType="BIGINT" />
  12. <result column="create_date" property="createDate" jdbcType="TIMESTAMP" />
  13. <result column="update_id" property="updateId" jdbcType="TIMESTAMP" />
  14. <result column="update_date" property="updateDate" jdbcType="TIMESTAMP" />
  15. </resultMap>
  16. <sql id="Base_Column_List" >
  17. id, mt_company_id, project_id, lift_id, worker_id, delete_flag, creator_id, create_date, update_id, update_date
  18. </sql>
  19. <!--app端 根据项目id查询项目下电梯列表 -->
  20. <select id="findListByProjectId" resultType="cn.com.ty.lift.business.project.dao.entity.model.response.ProjectLiftResponse"
  21. parameterType="cn.com.ty.lift.business.capital.dao.entity.model.request.CapitalRepairRequest">
  22. SELECT
  23. l.id AS id,
  24. l.registration_code AS registrationCode,
  25. l.lift_code AS liftCode,
  26. lb.name AS liftBrand,
  27. l.lift_type AS liftType,
  28. l.use_company_code AS useCompanyCode
  29. FROM capital_repair_lift_relevance crlr
  30. LEFT JOIN project_user pu ON crlr.project_id = pu.project_id
  31. LEFT JOIN lift l ON crlr.lift_id = l.id
  32. LEFT JOIN lift_brand lb ON l.lift_brand = lb.code
  33. WHERE crlr.mt_company_id = #{request.mtCompanyId,jdbcType=BIGINT}
  34. <if test="request.id!=null and request.id!=''">
  35. AND crlr.project_id = #{request.id,jdbcType=BIGINT}
  36. </if>
  37. <if test="request.registrationCode!=null and request.registrationCode!=''">
  38. AND l.registration_code LIKE CONCAT('%',#{request.registrationCode,jdbcType=VARCHAR},'%')
  39. </if>
  40. </select>
  41. <!--app端 根据公司id查询公司下大修项目列表 -->
  42. <select id="findCapitalListByCompanyId" parameterType="cn.com.ty.lift.business.capital.dao.entity.model.request.CapitalRepairRequest"
  43. resultType="cn.com.ty.lift.business.project.dao.entity.model.response.ProjectCompanyResponse">
  44. SELECT
  45. cr.id AS projectId,
  46. cr.project_code AS projectCode,
  47. cr.project_name AS projectName,
  48. cr.project_usage AS projectUsage,
  49. cr.project_status AS projectStatus,
  50. pu.user_id AS userId,
  51. pu.is_monitor AS isMonitor
  52. FROM capital_repair cr
  53. LEFT JOIN project_user pu ON cr.id = pu.project_id
  54. WHERE 1=1
  55. <if test="request.mtCompanyId!=null and request.mtCompanyId!=''">
  56. AND cr.mt_company_id = #{request.mtCompanyId,jdbcType=BIGINT}
  57. </if>
  58. <if test="request.userId!=null and request.userId!=''">
  59. AND pu.user_id = #{request.userId,jdbcType=BIGINT}
  60. </if>
  61. <if test="request.projectStatus!=null and request.projectStatus!=''">
  62. AND cr.project_status = #{request.projectStatus,jdbcType=VARCHAR}
  63. </if>
  64. <if test="request.projectName!=null and request.projectName!=''">
  65. AND cr.project_name LIKE CONCAT('%',#{request.projectName,jdbcType=VARCHAR},'%')
  66. </if>
  67. </select>
  68. <!--app端 根据项目id查询项目详情 -->
  69. <select id="findProjectById" parameterType="cn.com.ty.lift.business.capital.dao.entity.model.request.CapitalRepairRequest"
  70. resultType="cn.com.ty.lift.business.project.dao.entity.model.response.ProjectDetailResponse">
  71. SELECT t.*,
  72. ui.name AS clerkName,
  73. pcc.name AS companyContact,
  74. pcc.telephone AS telephone
  75. FROM (SELECT cr.project_name AS projectName,
  76. cr.project_usage AS projectUsage,
  77. cr.project_address AS address,
  78. cr.province AS province,
  79. cr.city AS city,
  80. cr.district AS district,
  81. cr.start_date AS startDate,
  82. cr.end_date AS endDate,
  83. pc.name AS companyName,
  84. ui.name AS areaDirector,
  85. r.area_name AS areaName,
  86. r.clerk AS clerk_id,
  87. r.id AS regionId,
  88. cr.pp_contact_id AS contact_id,
  89. cr.project_status AS projectStatus
  90. FROM capital_repair cr
  91. LEFT JOIN region r ON cr.region_id = r.id
  92. LEFT JOIN user_info ui ON r.user_id = ui.user_id
  93. LEFT JOIN property_company pc ON cr.pp_company_id = pc.id
  94. WHERE 1=1
  95. <if test="request.id!=null and request.id!=''">
  96. AND cr.id = #{request.id,jdbcType=BIGINT}
  97. </if>
  98. ) t
  99. LEFT JOIN property_contact pcc ON t.contact_id = pcc.id
  100. LEFT JOIN user_info ui ON ui.user_id = t.clerk_id
  101. </select>
  102. <select id="count" resultType="java.lang.Integer">
  103. SELECT count(1)
  104. FROM capital_repair_lift_relevance crlr
  105. LEFT JOIN capital_repair cr ON crlr.project_id = cr.id
  106. WHERE crlr.mt_company_id = #{mtCompanyId}
  107. AND cr.project_status = #{projectStatus}
  108. </select>
  109. <select id="countDoingByUser" resultType="java.lang.Long" parameterType="cn.com.ty.lift.business.common.CommonRequest">
  110. SELECT
  111. count(1)
  112. FROM capital_repair cr
  113. LEFT JOIN project_user pu ON cr.id = pu.project_id AND cr.mt_company_id = pu.mt_company_id
  114. WHERE cr.project_status = '2'
  115. <if test="request.userId != null and request.userId > 0">
  116. AND pu.user_id = #{request.userId}
  117. </if>
  118. <if test="request.mtCompanyId != null and request.mtCompanyId > 0">
  119. AND cr.mt_company_id = #{request.mtCompanyId}
  120. </if>
  121. </select>
  122. </mapper>