hrModel.php 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. <?php
  2. class hrClassModel extends Model
  3. {
  4. /**
  5. * 每天运行
  6. */
  7. public function hrrun()
  8. {
  9. $tiemss = strtotime($this->rock->date);
  10. $this->updatepositive($tiemss);
  11. $this->updatehrredund($tiemss);
  12. $this->updatehrtransfer($tiemss);
  13. }
  14. //转正的
  15. private function updatepositive($timess)
  16. {
  17. $db = m('hrpositive');
  18. $rows = $db->getall("`status`=1 and `isover`=0",'`id`,`uid`,`entrydt`,`syenddt`,`positivedt`');
  19. foreach($rows as $k=>$rs){
  20. if(strtotime($rs['positivedt']) <= $timess){
  21. $bo = m('userinfo')->update(array(
  22. 'state' => '1',
  23. 'syenddt' => $rs['syenddt'],
  24. 'positivedt' => $rs['positivedt'],
  25. ), $rs['uid']);
  26. if($bo)$db->update("`isover`=1", $rs['id']);
  27. }
  28. }
  29. }
  30. //离职的
  31. private function updatehrredund($timess)
  32. {
  33. $db = m('hrredund');
  34. $rows = $db->getall("`status`=1 and `isover`=0",'`id`,`uid`,`quitdt`');
  35. $timess = $timess - 24*3600;//昨天
  36. foreach($rows as $k=>$rs){
  37. if(strtotime($rs['quitdt']) <= $timess){
  38. $bo = m('userinfo')->update(array(
  39. 'state' => '5',
  40. 'quitdt' => $rs['quitdt']
  41. ), $rs['uid']);
  42. m('admin')->update(array(
  43. 'quitdt' => $rs['quitdt'],
  44. 'status' => '0'
  45. ), $rs['uid']);
  46. if($bo)$db->update("`isover`=1", $rs['id']);
  47. }
  48. }
  49. }
  50. //调动的
  51. private function updatehrtransfer($timess)
  52. {
  53. $db = m('hrtransfer');
  54. $mdb = m('admin');
  55. $rows = $db->getall("`status`=1 and `isover`=0",'`id`,`uid`,`effectivedt`,`newdeptid`,`tranuid`,`newdeptname`,`newranking`');
  56. $uids = '0';
  57. foreach($rows as $k=>$rs){
  58. if(strtotime($rs['effectivedt']) <= $timess){
  59. $uid = $rs['tranuid'];
  60. $bo = $mdb->update(array(
  61. 'deptid' => $rs['newdeptid'],
  62. 'deptname' => $rs['newdeptname'],
  63. 'ranking' => $rs['newranking'],
  64. ), $uid);
  65. if($bo){
  66. $db->update("`isover`=1", $rs['id']);
  67. $uids.=','.$uid;
  68. }
  69. }
  70. }
  71. if($uids != '0')$mdb->updateinfo("and a.`id` in($uids)");
  72. }
  73. }
粤ICP备19079148号