DoTaskCQuery.xml 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156
  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.hz.employmentsite.mapper.cquery.DoTaskCQuery">
  4. <select id="getList" resultType="com.hz.employmentsite.vo.taskAndLog.DoTaskVo">
  5. SELECT
  6. task.dotaskID,
  7. task.siteID,
  8. task.workTypeID,
  9. task.content,
  10. task.dotaskName,
  11. task.CreateUserID AS createUserID,
  12. u.`Name` AS createName,
  13. task.finishTime,
  14. task.createTime,
  15. task.modifyTime,
  16. task.taskStatus,
  17. dic_taskStatus.NAME AS taskStatusName,
  18. userCounts.userCount,
  19. completeCounts.completeCount,
  20. city.`name` AS regionName,
  21. area.`name` AS streetName,
  22. item.`Name` AS workTypeName,
  23. task.regionCode,
  24. task.streetCode,
  25. doTaskUser.siteUserID,
  26. doTaskUser.completeDesc,
  27. modifyUser.NAME AS modifyUserName,
  28. task.taskLevel,
  29. dic_taskLevel.NAME AS taskLevelName
  30. FROM
  31. pc_dotask task
  32. LEFT JOIN (
  33. SELECT
  34. dotaskID,
  35. COUNT(1) AS userCount
  36. FROM
  37. pc_dotask_user
  38. GROUP BY
  39. dotaskID
  40. ) AS userCounts ON task.dotaskID = userCounts.dotaskID
  41. LEFT JOIN (
  42. SELECT
  43. dotaskID,
  44. COUNT(1) AS completeCount
  45. FROM
  46. pc_dotask_user
  47. WHERE
  48. UserTaskStatus = 1
  49. GROUP BY
  50. dotaskID
  51. ) AS completeCounts ON task.dotaskID = completeCounts.dotaskID
  52. LEFT JOIN pc_dotask_user doTaskUser ON task.dotaskID = doTaskUser.dotaskID AND doTaskUser.doTaskUserID != NULL
  53. LEFT JOIN sys_dictionary_item item ON item.`Value` = task.WorkTypeID AND item.DictionaryCode = 'TaskType'
  54. LEFT JOIN sys_dictionary_item dic_taskStatus ON dic_taskStatus.`Value` = task.taskStatus AND dic_taskStatus.DictionaryCode = 'TaskStatusType'
  55. LEFT JOIN sys_user u ON u.UserID = task.CreateUserID
  56. LEFT JOIN area_code city ON city.`code` = task.RegionCode
  57. LEFT JOIN area_code area ON area.`code` = task.StreetCode
  58. LEFT JOIN sys_user modifyUser ON task.ModifyUserID = modifyUser.UserID
  59. LEFT JOIN sys_dictionary_item dic_taskLevel ON task.taskLevel = dic_taskLevel.`Value` AND dic_taskLevel.DictionaryCode = 'TaskLevel'
  60. where
  61. 1=1
  62. <if test="doTaskIDList != '' and doTaskIDList != null">
  63. and task.dotaskID in (${doTaskIDList})
  64. </if>
  65. <if test="name != '' and name != null">
  66. and task.dotaskName like Concat('%',#{name},'%')
  67. </if>
  68. <if test="startTime != null and startTime != ''">
  69. and task.createTime <![CDATA[ >= ]]> STR_TO_DATE(#{startTime},'%Y-%m-%d')
  70. </if>
  71. <if test="endTime != null and endTime != ''">
  72. and task.createTime <![CDATA[ <= ]]> STR_TO_DATE(#{endTime},'%Y-%m-%d')
  73. </if>
  74. <if test="finishStartTime != null and finishStartTime != ''">
  75. and task.finishTime <![CDATA[ >= ]]> STR_TO_DATE(#{finishStartTime},'%Y-%m-%d')
  76. </if>
  77. <if test="finishEndTime != null and finishEndTime != ''">
  78. and task.finishTime <![CDATA[ <= ]]> STR_TO_DATE(#{finishEndTime},'%Y-%m-%d')
  79. </if>
  80. <if test="regionCode != null and regionCode != ''">
  81. and task.regionCode = #{regionCode}
  82. </if>
  83. <if test="streetCode != null and streetCode != ''">
  84. and task.streetCode = #{streetCode}
  85. </if>
  86. <if test="workTypeId != null and workTypeId != ''">
  87. and task.workTypeID = #{workTypeId}
  88. </if>
  89. <if test="taskStatus != null and taskStatus != ''">
  90. and task.taskStatus = #{taskStatus}
  91. </if>
  92. <if test="startDate != null and endDate == null">
  93. and task.CreateTime <![CDATA[ >= ]]> #{startDate}
  94. </if>
  95. <if test="endDate != null and startDate == null">
  96. and task.CreateTime <![CDATA[ <= ]]> #{endDate}
  97. </if>
  98. <if test="startDate != null and endDate != null">
  99. and task.CreateTime <![CDATA[ >= ]]> #{startDate}
  100. and task.CreateTime <![CDATA[ <= ]]> #{endDate}
  101. </if>
  102. order by task.createTime desc
  103. </select>
  104. <select id="getListByUserID" resultType="com.hz.employmentsite.vo.taskAndLog.DoTaskVo">
  105. select task.dotaskID,task.workTypeID,task.content,task.dotaskName,u.`Name` as
  106. createName,task.finishTime,task.createTime,
  107. doTaskUser.UserTaskStatus AS taskStatus,
  108. dic_taskStatus.Name as taskStatusName, doTaskUser.CompleteTime,doTaskUser.completeDesc, city.`name` as
  109. regionName,area.`name` as streetName,item.`Name` as workTypeName,task.regionCode,task.streetCode
  110. , task.taskLevel,dic_taskLevel.name as taskLevelName
  111. from pc_dotask task
  112. left join pc_dotask_user doTaskUser on task.dotaskID = doTaskUser.dotaskID
  113. left join sys_dictionary_item item on item.`Value` = task.WorkTypeID
  114. left join sys_dictionary_item dic_taskStatus ON dic_taskStatus.DictionaryCode = 'TaskStatusType' and
  115. dic_taskStatus.`Value` = doTaskUser.UserTaskStatus
  116. left join sys_user u on u.UserID = task.CreateUserID
  117. left join area_code city on city.`code` = task.RegionCode
  118. left join area_code area on area.`code` = task.StreetCode
  119. left join sys_dictionary_item dic_taskLevel on task.taskLevel = dic_taskLevel.value and
  120. dic_taskLevel.DictionaryCode = 'TaskLevel'
  121. where item.DictionaryCode='TaskType'
  122. and doTaskUser.siteUserID = #{siteUserID}
  123. <if test="doTaskID != '' and doTaskID != null">
  124. and task.dotaskID = #{doTaskID}
  125. </if>
  126. <if test="taskName != '' and taskName != null">
  127. and task.dotaskName like Concat('%',#{taskName},'%')
  128. </if>
  129. order by task.createTime desc
  130. </select>
  131. <select id="getWorkUserList" resultType="com.hz.employmentsite.vo.taskAndLog.DoTaskUserVo">
  132. select task.*,
  133. taskUser.DoTaskUserID,
  134. taskUser.UserTaskStatus,
  135. dic_taskStatus.Name as UserTaskStatusName,
  136. dic_taskStatus.Name as taskStatusName,
  137. siteUser.SiteUserID, siteUser.SiteUserName,dic_gender.Name as GenderName,siteUser.Mobile,
  138. site.SiteName as siteName
  139. ,taskUser.completeDesc
  140. from pc_dotask_user taskUser
  141. left join pc_dotask task on taskUser.DotaskID = task.DotaskID
  142. left join pc_site_user siteUser on taskUser.SiteUserID = siteUser.SiteUserID
  143. LEFT JOIN pc_site site ON siteUser.SiteID = site.SiteID
  144. left join (select * from sys_dictionary_item where DictionaryCode ='TaskStatusType') dic_taskStatus on taskUser.UserTaskStatus = dic_taskStatus.Value
  145. left join (select * from sys_dictionary_item where DictionaryCode ='Gender') dic_gender on siteUser.Gender = dic_gender.Value
  146. where 1 = 1
  147. <if test="doTaskID!='' and doTaskID!=null">
  148. and taskUser.DotaskID = #{doTaskID}
  149. </if>
  150. </select>
  151. <select id="getUserList" resultType="com.hz.employmentsite.vo.baseSettings.SiteUserVo">
  152. select SiteID,SiteUserID, SiteUserName,Mobile,Gender,dic_gender.Name as GenderName from pc_site_user siteUser
  153. left join (select * from sys_dictionary_item where DictionaryCode ='Gender') dic_gender on siteUser.Gender = dic_gender.Value
  154. </select>
  155. </mapper>