ProjArrangeDetailAndUserMiniDao_getProjArrangeDetailAndUserByPIdYearMonth.sql 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. <#-- 员工排班上报页面数据展示 -->
  2. SELECT
  3. bu.id as userid,
  4. bu.realname as userName,
  5. tbpd.id,
  6. tbpd.pid,
  7. tbpd.pjt_postid as pjtPostId,
  8. postdetail.ptj_post_name as pjtPostName,
  9. tbpd.projarrange_generalid as projarrangeGeneralid,
  10. tbpd.working_days as workingDays,
  11. tbpd.timeout_overtime_hours as timeOutOvertimeHours,
  12. tbpd.country_overtime_hours as countryOvertimeHours,
  13. tbpd.onduty_days as ondutyDays,
  14. tbpd.yearmonth as yearmonth,
  15. tbpd.remark as remark,
  16. tbpd.create_name as createName,
  17. tbpd.create_by as createBy,
  18. tbpd.create_date as createDate,
  19. tbpd.update_name as updateName,
  20. tbpd.update_by as updateBy,
  21. tbpd.update_date as updateDate,
  22. tbpd.sys_org_code as sysOrgCode,
  23. tbpd.sys_company_code as sysCompanyCode
  24. FROM
  25. t_bus_projarrange_detail tbpd
  26. LEFT JOIN t_s_base_user bu ON bu.id = tbpd.userid
  27. LEFT JOIN t_bus_user_personnel up ON up.userid = tbpd.userid
  28. LEFT JOIN t_s_user_org uo ON uo.user_id = tbpd.userid
  29. LEFT JOIN t_bus_project_post_detail postdetail on postdetail.id = tbpd.pjt_postid
  30. WHERE
  31. 1 = 1
  32. <#if ( projArrangeDetailAndUserDto.childDepartIdList )?? && projArrangeDetailAndUserDto.childDepartIdList ?size gt 0>
  33. AND uo.org_id IN(
  34. <#list projArrangeDetailAndUserDto.childDepartIdList as item>
  35. '${item}'
  36. <#if item_has_next>,</#if>
  37. </#list>
  38. )
  39. <#else >
  40. and uo.org_id=null
  41. </#if>
  42. <#if (projArrangeDetailAndUserDto.yearmonth )?? && projArrangeDetailAndUserDto.yearmonth ?length gt 0>
  43. and tbpd.yearmonth = :projArrangeDetailAndUserDto.yearmonth
  44. <#else >
  45. and tbpd.yearmonth=null
  46. </#if>
  47. <#if (projArrangeDetailAndUserDto.pid )?? && projArrangeDetailAndUserDto.pid ?length gt 0>
  48. and tbpd.pid = :projArrangeDetailAndUserDto.pid
  49. <#else >
  50. and tbpd.pid=null
  51. </#if>
  52. <#if (projArrangeDetailAndUserDto.userName )?? && projArrangeDetailAndUserDto.userName ?length gt 0>
  53. and bu.realname like CONCAT('%', :projArrangeDetailAndUserDto.userName ,'%')
  54. <#else >
  55. and 1=1
  56. </#if>
  57. <#--在职状态 已入职1,已转正2,已离职3,已辞退4-->
  58. and up.position_status in ('1','2','3','4')
  59. AND bu.delete_flag = '0'
  60. AND uo. STATUS = '0'
  61. AND uo.ifpluralism = '0'
  62. <#--order by pd.create_date desc-->
  63. <#--order by pd.create_date desc,substring(bu.realname, 2, 2) asc-->
  64. <#--order by pd.pjt_postid desc,pd.userid desc-->
  65. order by tbpd.pjt_postid desc, convert(bu.realname using gbk) collate gbk_Chinese_ci asc