companyModel.php 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. <?php
  2. //公司单位
  3. class companyClassModel extends Model
  4. {
  5. public function getselectdata($lx=0)
  6. {
  7. $rows = $this->getall('id>0','`id`,name,pid','`sort`');
  8. $barr = array();
  9. if($lx==0)$barr[] = array(
  10. 'value' => '0',
  11. 'name' => '最顶级',
  12. );
  13. $this->getselectdatas($rows, $barr, '0', 0);
  14. return $barr;
  15. }
  16. private function getselectdatas($rows,&$barr, $pid='0', $level=0)
  17. {
  18. foreach($rows as $k=>$rs){
  19. if($rs['pid']==$pid){
  20. $str = '';
  21. for($i=0;$i<$level;$i++)$str.='&nbsp;&nbsp;&nbsp;';
  22. if($str!='')$str.='├';
  23. $name = ''.$str.''.$rs['name'].'';
  24. $barr[] = array(
  25. 'name' => $name,
  26. 'value' => $rs['id'],
  27. );
  28. $this->getselectdatas($rows, $barr, $rs['id'], $level+1);
  29. }
  30. }
  31. }
  32. //树形结构
  33. public function gettreedata($rows, &$barr, $pid='0', $level=1)
  34. {
  35. foreach($rows as $k=>$rs){
  36. if($rs['pid']==$pid){
  37. $rs['level'] = $level;
  38. $rs['stotal'] = $this->gettreetotal($rows, $rs['id']);
  39. $barr[] = $rs;
  40. $this->gettreedata($rows, $barr, $rs['id'], $level+1);
  41. }
  42. }
  43. }
  44. public function gettreetotal($rows, $pid)
  45. {
  46. $stotal = 0;
  47. foreach($rows as $k=>$rs){
  48. if($rs['pid']==$pid){
  49. $stotal++;
  50. }
  51. }
  52. return $stotal;
  53. }
  54. //公司名称修改了,对应数据更新
  55. public function updatecompany($id, $name)
  56. {
  57. m('userract')->update("`company`='$name'","`companyid`='$id'");//员工合同
  58. }
  59. }