快来优 数据解析.sql 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262
  1. select
  2. tdwk.*,
  3. btr.biz_traderid as tdwk_biz_traderid,
  4. btr.title as recruit_title,
  5. btr.salary as btr_salary,
  6. btr.feetotal as btr_feetotal,
  7. btr.plat_fetchmoney as btr_plat_fetchmoney,
  8. btr.sharer_fetchmoney as btr_sharer_fetchmoney,
  9. btr.begin_datetime as btr_begindatetime,
  10. btr.finish_datetime as btr_finishdatetime,
  11. btr.linker_phone as btr_linker_phone,
  12. btr.begin_hour as btr_begin_hour,
  13. btr.finish_hour as btr_finish_hour,
  14. bt.company_name as bt_company_name,
  15. bt.linker_gender as bt_linker_gender,
  16. btbu.mobile as btbu_mobile,
  17. (case when ifnull(bt2.true_name,'')<>'' then bt2.true_name else bt2.nickname end) as bt2_true_name,
  18. wk.id as wkid,
  19. (case when wk.true_name<>'' then wk.true_name else wk.nickname end) as wk_name,
  20. bu.mobile as bu_mobile,
  21. wk.profile_photo as wkprofile_photo,
  22. wk.idcard as wk_idcard,
  23. (case when lwk.true_name<>'' then lwk.true_name else lwk.nickname end) as lwk_name,
  24. lbu.mobile as lbu_mobile,
  25. lwk.profile_photo as lwkprofile_photo,
  26. swk.id as swkid,
  27. (case when swk.true_name<>'' then swk.true_name else swk.nickname end) as swk_name,
  28. sbu.mobile as sbu_mobile,
  29. wkapa.id as wkapa_id,wkapa.deleted as wkapa_deleted,
  30. wkapa.result_level as wk_appraiseLevel,
  31. wkapa.result_desc as wk_appraiseRemark,
  32. tdapa.id as tdapa_id,
  33. tdapa.deleted as tdapa_deleted,
  34. tdapa.result_level as td_appraiseLevel,
  35. tdapa.result_desc as td_appraiseRemark,
  36. (
  37. select concat(brd.id,'-',brd.begin_datetime,'-',brd.finish_datetime,'-',bt.id,'-',bu.id,'-',bu.mobile,'-',bt.true_name)
  38. from biz_recruit_delegate brd
  39. left join biz_trader2 bt on bt.id=brd.biz_trader2id
  40. left join base_user bu on bu.id=bt.base_userid
  41. where brd.biz_recruitid=tdwk.biz_recruitid and brd.finish_datetime>:verify_datetime
  42. limit 1
  43. ) as delegate_info,
  44. tdwkat2.`biz_catalog` as tdwk_settlecatalog
  45. from biz_todowork tdwk
  46. left join biz_todoworkteam tdwkt on tdwkt.id=tdwk.workteamid
  47. left join biz_trader_recruit btr on btr.id=tdwk.biz_recruitid
  48. left join biz_trader bt on bt.id=btr.biz_traderid
  49. left join base_user btbu on btbu.id=bt.base_userid
  50. left join biz_trader2 bt2 on bt2.id=tdwk.settled_userid
  51. left join biz_worker lwk on lwk.id=tdwkt.leader_workerid
  52. left join base_user lbu on lbu.id=lwk.base_userid
  53. left join biz_worker wk on wk.id=tdwk.biz_workerid
  54. left join base_user bu on bu.id=wk.base_userid
  55. left join biz_worker swk on swk.id=tdwk.share_workerid
  56. left join base_user sbu on sbu.id=swk.base_userid
  57. left join biz_appraisal wkapa on wkapa.biz_catalog=1 and wkapa.biz_id=tdwk.id
  58. left join biz_appraisal tdapa on tdapa.biz_catalog=2 and tdapa.biz_id=tdwk.id
  59. left join biz_trader_account tdwkat1 on tdwk.`status`=5 and tdwkat1.`status`=1 and tdwkat1.`type`=0 and tdwkat1.biz_id=tdwk.id and (tdwkat1.`biz_catalog`=1 or tdwkat1.`biz_catalog`=4)
  60. left join biz_trader_account tdwkat2 on tdwk.`status`=5 and tdwkat2.`status`=1 and tdwkat2.`type`=1 and tdwkat2.biz_id=tdwkat1.id and (tdwkat2.`biz_catalog`=6 or tdwkat2.`biz_catalog`=7)
  61. where tdwk.id=:tdwkId
  62. #biz_trader_recruit 工作岗位表
  63. #biz_todowork 招工表
  64. #biz_todoworkteam 招工队伍表
  65. #biz_trader 商户表
  66. #base_user 基本用户表
  67. #biz_trader2 商户联系人属性表
  68. #biz_worker 工人表
  69. #biz_appraisal 评价表
  70. select btr.*,
  71. bt.company_name bt_companyname,
  72. bu.mobile as bt_mobile,bt.catalog as bt_catalog,
  73. bt.certif_confirmed as bt_certif_confirmed,
  74. bt.profile_photo as bt_profile_photo ,
  75. bt.linker_gender as bt_linker_gender ,
  76. bt.company_desc as bt_company_desc,
  77. bt.nickname as bt_nickname,
  78. bt.linker_name as bt_linker_name ,
  79. bt.company_addr as bt_company_addr,
  80. (select concat(id,'-',workteam_mode,'-',workteamid,'-',teamstatus,'-',`status`) from biz_todowork tdwk where tdwk.biz_recruitid=btr.id and tdwk.biz_workerid=:biz_workerid order by id desc limit 1 )
  81. as lasttodowork,
  82. (select ifnull(avg(result_level),0) from biz_appraisal bapr where bapr.biz_catalog=1 and bapr.toerid=btr.biz_traderid ) as trader_appraisal_avg,
  83. (select count(*) from biz_todowork btdw where btdw.biz_recruitid=btr.id and ( btdw.`status`>=2 ) ) as now_worker_total,
  84. (select count(*) from biz_todowork btdw where btdw.biz_recruitid=btr.id and ( btdw.`status`>=1 ) ) as now_worker_total000,
  85. (select count(*) from biz_todowork btdw where btdw.biz_recruitid=btr.id and ( btdw.`status`=-1 or btdw.`status`=-3 ) ) as num_abnormal_total,
  86. (
  87. select concat(brd.id,'-',brd.begin_datetime,'-',brd.finish_datetime,'-',bt.id,'-',bu.id,'-',bu.mobile,'-',bt.true_name)
  88. from biz_recruit_delegate brd
  89. left join biz_trader2 bt on bt.id=brd.biz_trader2id
  90. left join base_user bu on bu.id=bt.base_userid
  91. where brd.biz_recruitid=:recruitid and brd.finish_datetime>:verify_datetime
  92. limit 1)
  93. as delegate_info
  94. from biz_trader_recruit btr
  95. left join biz_trader bt on bt.id=btr.biz_traderid
  96. left join base_user bu on bu.id=bt.base_userid
  97. where btr.id=:recruitid
  98. select
  99. btr.*,
  100. btr.id as btr_id,
  101. tdwk.*,
  102. (case when (tdwk.`status`=4 and 1662524303-ifnull(tdwk.worked_finishtime,0)>24*3600) then 1 else 0 end) as overtimePay ,
  103. tdwkt.id as tdwkt_id,tdwkt.`status` as tdwkt_status ,
  104. btr.`status` as recruit_status,
  105. btr.createtime as recruit_createtime,
  106. btr.updatetime as recruit_updatetime,btr.need_total as btr_need_total ,
  107. btr.title as recruit_title,
  108. btr.begin_datetime as btr_begindatetime,
  109. btr.finish_datetime as btr_finishdatetime ,
  110. btr.begin_hour as btr_begin_hour,
  111. btr.finish_hour as btr_finish_hour,
  112. btr.work_addr1 as btr_work_addr1,
  113. btr.feeper as btr_feeper,
  114. btr.feetotal as btr_feetotal ,
  115. btr.settle_catalog as btr_settle_catalog,
  116. btr.age_mode as btr_age_mode,
  117. btr.gender_mode as btr_gender_mode,
  118. btr.meals_providing as btr_meals_providing ,
  119. btr.salary as btr_salary,
  120. btr.feetotal as btr_feetotal,
  121. btr.settle_mode as btr_settle_mode ,
  122. bt.company_name as bt_company_name,
  123. btbu.mobile as btbu_mobile ,
  124. (case when ifnull(bt22.true_name,'')<>'' then bt22.true_name else bt22.nickname end) as bt22_true_name ,
  125. wk.id as wkid,
  126. (case when wk.true_name<>'' then wk.true_name else wk.nickname end) as wk_name,
  127. bu.mobile as bu_mobile,
  128. wk.profile_photo as wkprofile_photo ,
  129. wk.realname_handled as wk_realname_handled,
  130. wk.gender as wk_gender,
  131. wk.idcard as wk_idcard,
  132. wk.birthaddr as wk_birthaddr,
  133. wk.birthday as wk_birthday ,
  134. lwk.id as lwkid,
  135. (case when lwk.true_name<>'' then lwk.true_name else lwk.nickname end) as lwk_name,
  136. lbu.mobile as lbu_mobile,
  137. lwk.profile_photo as lwkprofile_photo ,
  138. concat(brd.id,'-',brd.begin_datetime,'-',brd.finish_datetime,'-',bt2.id,'-',bt2bu.id,'-',bt2bu.mobile,'-',bt2.true_name) as delegate_info ,
  139. wkapa.id as wkapa_id,
  140. wkapa.deleted as wkapa_deleted,
  141. wkapa.result_level as wk_appraiseLevel,
  142. wkapa.result_desc as wk_appraiseRemark ,
  143. tdapa.id as tdapa_id,
  144. tdapa.deleted as tdapa_deleted,
  145. tdapa.result_level as td_appraiseLevel,
  146. tdapa.result_desc as td_appraiseRemark ,
  147. tdwkat2.`biz_catalog` as tdwk_settlecatalog ,
  148. (select count(id) from biz_todowork where status=1 and biz_recruitid=btr.id) as tdwk_count_status1 ,
  149. (select count(id) from biz_todowork where status=2 and biz_recruitid=btr.id) as tdwk_count_status2 ,
  150. (select count(id) from biz_todowork where status=4 and biz_recruitid=btr.id) as tdwk_count_status4 ,
  151. (select count(id) from biz_todowork where status=5 and biz_recruitid=btr.id) as tdwk_count_status5
  152. from biz_trader_recruit btr
  153. left join biz_todowork tdwk on btr.id=tdwk.biz_recruitid
  154. left join biz_todoworkteam tdwkt on tdwkt.id=tdwk.workteamid
  155. left join biz_trader bt on bt.id=btr.biz_traderid
  156. left join base_user btbu on btbu.id=bt.base_userid
  157. left join biz_trader2 bt22 on bt22.id=tdwk.settled_userid
  158. left join biz_worker lwk on lwk.id=tdwkt.leader_workerid
  159. left join base_user lbu on lbu.id=lwk.base_userid
  160. left join biz_worker wk on wk.id=tdwk.biz_workerid
  161. left join base_user bu on bu.id=wk.base_userid
  162. left join biz_recruit_delegate brd on brd.biz_recruitid=tdwk.biz_recruitid and brd.finish_datetime>1662524303
  163. left join biz_trader2 bt2 on bt2.id=brd.biz_trader2id
  164. left join base_user bt2bu on bt2bu.id=bt2.base_userid
  165. left join biz_appraisal wkapa on wkapa.biz_catalog=1 and wkapa.biz_id=tdwk.id
  166. left join biz_appraisal tdapa on tdapa.biz_catalog=2 and tdapa.biz_id=tdwk.id
  167. left join biz_trader_account tdwkat1 on tdwk.`status`=5 and tdwkat1.`status`=1 and tdwkat1.`type`=0 and tdwkat1.biz_id=tdwk.id and (tdwkat1.`biz_catalog`=1 or tdwkat1.`biz_catalog`=4)
  168. left join biz_trader_account tdwkat2 on tdwk.`status`=5 and tdwkat2.`status`=1 and tdwkat2.`type`=1 and tdwkat2.biz_id=tdwkat1.id and (tdwkat2.`biz_catalog`=6 or tdwkat2.`biz_catalog`=7)
  169. where 1=1 and 1=1 and tdwk.status != 0 and
  170. tdwk.biz_recruitid=735 and
  171. ((tdwk.workteam_mode<=0 and tdwk.`status`=1) or (tdwk.workteam_mode=1 and tdwkt.`status`=3)) and
  172. btr.biz_traderid=144
  173. order by tdwk.updatetime desc,tdwk.id desc
  174. set @handle_id=0;
  175. select
  176. @handle_id:=id
  177. from biz_trader_account
  178. where
  179. biz_traderid=:biz_traderid and
  180. `type`=1 and
  181. `biz_catalog`=8 and
  182. `biz_id`=:bizid and
  183. `status`=1
  184. limit 1;
  185. insert into biz_trader_account ( `biz_traderid`, `createtime`,`type`, `money`, `status`, `biz_catalog`,`biz_id`, remark )
  186. select :biz_traderid , :nowtime , 1 , :feetotal, 1, 8 , :bizid, :accremark2
  187. from dual
  188. where ifnull(@handle_id,0)=0;
  189. update biz_todowork set updatetime=:nowtime,`status`=2 ,remark=concat(:bizremark,ifnull(remark,''))
  190. where id=:bizid;
  191. insert into biz_worker_account ( `biz_workerid`, `createtime`,`type`, `money`, `status`, `biz_catalog`,`biz_id`, remark )
  192. select tdwk.biz_workerid , :nowtime , 0 , tdwk.enroll_premoney, 1, 7 , tdwk.id, :cancel_remark
  193. from biz_todowork tdwk
  194. left join biz_trader_recruit btr on btr.id=tdwk.biz_recruitid
  195. where
  196. tdwk.id<>:bizid and
  197. tdwk.biz_workerid=:biz_workerid and
  198. tdwk.`status`=1
  199. and(
  200. (tdwk.todo_begindate>=:plandoDateStart and tdwk.todo_begindate<=:plandoDateFinish)
  201. or(tdwk.todo_begindate>=:workDateStart and tdwk.todo_begindate<=:workDateFinish)
  202. or( btr.settle_catalog<=0 and btr.finish_datetime>btr.begin_datetime and (
  203. (btr.begin_datetime>=:workDateStart and btr.begin_datetime<=:workDateFinish)
  204. or(btr.begin_datetime<=:workDateStart and btr.finish_datetime>=:workDateFinish)
  205. or(btr.finish_datetime>=:workDateStart and btr.finish_datetime<=:workDateFinish)
  206. ))
  207. );
  208. update biz_todowork tdwk
  209. left join biz_trader_recruit btr on btr.id=tdwk.biz_recruitid
  210. set tdwk.updatetime=:nowtime, tdwk.`status`=-4, tdwk.`teamstatus`=-4 , tdwk.remark=concat(:cancel_remark,ifnull(tdwk.remark,'')), tdwk.teamremark=concat(:cancel_remark,ifnull(tdwk.teamremark,'')) where tdwk.id<>:bizid and tdwk.biz_workerid=:biz_workerid and tdwk.`status`=1
  211. and(
  212. (tdwk.todo_begindate>=:plandoDateStart and tdwk.todo_begindate<=:plandoDateFinish)
  213. or(tdwk.todo_begindate>=:workDateStart and tdwk.todo_begindate<=:workDateFinish)
  214. or( btr.settle_catalog<=0 and btr.finish_datetime>btr.begin_datetime and (
  215. (btr.begin_datetime>=:workDateStart and btr.begin_datetime<=:workDateFinish)
  216. or(btr.begin_datetime<=:workDateStart and btr.finish_datetime>=:workDateFinish)
  217. or(btr.finish_datetime>=:workDateStart and btr.finish_datetime<=:workDateFinish)
  218. ))
  219. )
  220. ; insert into biz_message_queue( createtime, biz_catalog, biz_id) select :nowtime, 0, :bizid from dual where 1=1;