SqlConstants.java 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  1. package cn.com.ty.lift.common.constants;
  2. public interface SqlConstants {
  3. //根据用户id和维保计划时间和状态查询用户那一天的各种类型维保任务(待保养/保养中/已完成/计划超期)
  4. String QUERY_MAINTENANCE_PLAN_EVERYDAY =
  5. "select mr.id recordId," +
  6. " p.project_name projectName," +
  7. " l.registration_code registrationCode," +
  8. " l.device_position devicePosition," +
  9. " l.lift_type liftType," +
  10. " l.category category," +
  11. " ui.name workerName," +
  12. " mp.plan_date planDate," +
  13. " mr.recovery_date recoveryDate," +
  14. " mr.has_evaluate hasEvaluate" +
  15. " from maintenance_plan mp" +
  16. " left join lift l on mp.lift_id = l.id" +
  17. " left join user_info ui on mp.worker_id = ui.user_id" +
  18. " left join project p on mp.project_id = p.id" +
  19. " left join maintenance_record mr on mr.mt_plan_id = mp.id" +
  20. " where mp.plan_date = #{planDate}" +
  21. " and mp.status = #{status}" +
  22. " and mp.project_id in (select project_id from project_user where user_id = #{userId})";
  23. //查询法规超期维保列表。
  24. String QUERY_MAINTENANCE_PLAN_EVERYDAY_OVERDUE =
  25. "select mp.status planStatus," +
  26. " l.id liftId," +
  27. " p.project_name projectName," +
  28. " l.registration_code registrationCode," +
  29. " l.device_position devicePosition," +
  30. " l.lift_type liftType," +
  31. " l.category category," +
  32. " ui.name name" +
  33. " from maintenance_plan mp" +
  34. " left join lift l on mp.lift_id = l.id" +
  35. " left join user_info ui on mp.worker_id = ui.user_id" +
  36. " left join project p on mp.project_id = p.id" +
  37. " where plan_date = #{planDate}" +
  38. " and work_date is null" +
  39. " and TimeStampDiff(DAY, DATE_FORMAT(plan_date, '%Y%m%d'), DATE_FORMAT(CURDATE(), '%Y%m%d')) > 15" +
  40. " and mp.project_id in (select project_id from project_user where user_id = #{userId})";
  41. //扫码,查询电梯信息
  42. String QUERY_LIFT_INFO_BY_LIFT_ID =
  43. "select l.id id," +
  44. " l.registration_code registrationCode," +
  45. " l.device_position devicePosition," +
  46. " p.project_name projectName," +
  47. " if(l.lift_type = 1, '直梯', '扶梯') liftType," +
  48. " ui.name workerName," +
  49. " ui.mobile workerMobile," +
  50. " p.project_status projectStatus" +
  51. " from project_lift_relevance plr" +
  52. " left join lift l on plr.lift_id = l.id" +
  53. " left join project p on plr.project_id = p.id" +
  54. " left join user_info ui on plr.worker_id = ui.user_id" +
  55. " where l.id = #{liftId}";
  56. //扫码,查询维保记录列表
  57. String QUERY_MAINTENANCE_RECORD_BY_LIFT_ID =
  58. "select mr.id recordId," +
  59. " mr.plan_date planDate," +
  60. " mr.work_date workDate," +
  61. " ui.name workerName," +
  62. " mr.maintenance_advice maintenanceAdvice," +
  63. " e.advice consumerAdvice," +
  64. " mr.status status," +
  65. " mr.lift_id liftId," +
  66. " mr.lift_type liftType" +
  67. " from maintenance_record mr" +
  68. " left join user_info ui on mr.worker_id = ui.user_id" +
  69. " left join evaluation e on mr.id = e.record_id and e.source = '1'" +
  70. " where mr.lift_id = #{liftId}" +
  71. " order by mr.work_date desc";
  72. //物管。根据用户id和月份,查询那一月每天的(待保养/保养中/已完成/计划超期)的数量
  73. String QUERY_MAINTENANCE_PLAN_MONTH_TASK_NUM =
  74. "select DATE_FORMAT(plan_date, '%d') day, status status, count(status) count" +
  75. " from maintenance_plan" +
  76. " where project_id in (select project_id from project_user where user_id = #{userId})" +
  77. " and DATE_FORMAT(plan_date, '%Y-%m') = #{yearMonth}" +
  78. " group by plan_date, status";
  79. //物管。动态消息,当日急修完成是否已经评价列表
  80. String QUERY_EMERGENCY_REPAIR_DYNAMIC_MESSAGE =
  81. "select er.id id, l.device_position devicePosition, er.recovery_date recoveryDate, has_evaluate hasEvaluate" +
  82. " from emergency_repair er" +
  83. " left join lift l on er.lift_id = l.id" +
  84. " where DATE_FORMAT(er.recovery_date, '%Y%m%d') = DATE_FORMAT(CURDATE(), '%Y%m%d')" +
  85. " and project_id in (select project_id from project_user where user_id = #{userId})";
  86. //物管。动态消息,当日维保完成是否已经评价列表
  87. String QUERY_MAINTENANCE_SUCCESS_DYNAMIC_MESSAGE =
  88. "select mr.id id,l.device_position devicePosition, has_evaluate hasEvaluate" +
  89. " from maintenance_record mr" +
  90. " left join lift l on mr.lift_id = l.id" +
  91. " where DATE_FORMAT(mr.recovery_date, '%Y%m%d') = DATE_FORMAT(CURDATE(), '%Y%m%d')" +
  92. " and project_id in (select project_id from project_user where user_id = #{userId})";
  93. //物管。根据用户Id查询加入的项目列表
  94. String QUERY_JOIN_PROJECT_LIST =
  95. "select id projectId, project_name projectName, mt_company_id mtCompanyId" +
  96. " from project" +
  97. " where id in (select project_id from project_user where user_id = #{userId})";
  98. //物管。查询急修/维保id是否有评价权限
  99. String QUERY_EVALUATE_AUTH =
  100. "select temp.id id, pu.user_role userRole" +
  101. " from ${table} temp" +
  102. " left join project_user pu on pu.project_id = temp.project_id" +
  103. " where user_role in (21, 22)" +
  104. " and user_id =#{userId}";
  105. //物管。查询用户加入的项目的急修列表
  106. String QUERY_REPAIR_LIST =
  107. "select distinct er.id repairId," +
  108. " p.project_name projectName," +
  109. " er.is_critical isCritical," +
  110. " er.repair_reason repairReason," +
  111. " er.source source," +
  112. " er.caller_date callerDate," +
  113. " l.registration_code registrationCode," +
  114. " l.lift_type liftType," +
  115. " l.category category," +
  116. " l.device_position devicePosition," +
  117. " ui.name workerName," +
  118. " TimeStampDiff(SECOND ,er.assign_time,ifnull(er.taking_time, now())) * 1000 AS waitDiff," +
  119. " er.create_date" +
  120. " from emergency_repair er" +
  121. " left join project_user pu on pu.project_id = er.project_id" +
  122. " left join project p on er.project_id = p.id" +
  123. " left join lift l on er.lift_id = l.id" +
  124. " left join project_lift_relevance plr on er.lift_id = plr.lift_id" +
  125. " left join user_info ui on er.worker_id = ui.user_id" +
  126. " where er.status = #{status}" +
  127. " and er.project_id in (select er.project_id" +
  128. " from project_user pu" +
  129. " where pu.user_id = #{userId}) order by er.create_date desc";
  130. //根据区域名和区域主管名,模糊查询区域列表信息
  131. String QUERY_REGIONS =
  132. "select r.area_name areaName" +
  133. " , r.area_code areaCode" +
  134. " , r.city_code cityCode" +
  135. " , r.remark remark" +
  136. " , r.province_code provinceCode" +
  137. " , r.clerk clerk" +
  138. " , r.mt_company_id mtCompanyId" +
  139. " , ui.name name" +
  140. " , r.id id" +
  141. " from region r" +
  142. " left join user_info ui on r.user_id = ui.user_id" +
  143. " where mt_company_id = #{mtCompanyId}" +
  144. " and (r.area_name like '%${name}%' or ui.name like '%${name}%')" +
  145. " order by create_time desc";
  146. //根据用户id查询待维保数量
  147. String QUERY_MAINTENANCE_COUNT_BY_USER_ID =
  148. "select count(1)" +
  149. " from maintenance_plan" +
  150. " where plan_date = CURDATE()" +
  151. " and project_id in (select project_id from project_user where user_id = #{userId})";
  152. String QUERY_REPAIR_COUNT_BY_USER_ID =
  153. "select count(1)" +
  154. " from emergency_repair" +
  155. " where (DATE_FORMAT(caller_date, '%Y%m%d') = CURDATE() or DATE_FORMAT(create_date, '%Y%m%d') = CURDATE())" +
  156. " and project_id in (select project_id from project_user where user_id = #{userId})";
  157. }