| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- <?php
- //公司单位
- class companyClassModel extends Model
- {
- public function getselectdata($lx=0)
- {
- $where= 'id>0';
- if(ISMORECOM && $this->adminid>1){
- $cinfo = m('admin')->getcompanyinfo($this->adminid);
- $allid = join(',',$cinfo['companyallid']);
- $where = 'id in('.$allid.')';
- }
- $rows = $this->getall($where,'`id`,name,pid','`sort`');
- $barr = array();
- if($lx==0)$barr[] = array(
- 'value' => '0',
- 'name' => '最顶级',
- );
- $this->getselectdatas($rows, $barr, '0', 0);
- $idarr = array();
- foreach($barr as $k=>$rs)$idarr[] = $rs['value'];
- foreach($rows as $k=>$rs){
- if(!in_array($rs['id'], $idarr)){
- $barr[] = array(
- 'name' => $rs['name'],
- 'value' => $rs['id'],
- );
- }
- }
- return $barr;
- }
- private function getselectdatas($rows,&$barr, $pid='0', $level=0)
- {
- foreach($rows as $k=>$rs){
- if($rs['pid']==$pid){
- $str = '';
- for($i=0;$i<$level;$i++)$str.=' ';
- if($str!='')$str.='├';
- $name = ''.$str.''.$rs['name'].'';
- $barr[] = array(
- 'name' => $name,
- 'value' => $rs['id'],
- );
- $this->getselectdatas($rows, $barr, $rs['id'], $level+1);
- }
- }
- }
-
- //树形结构
- public function gettreedata($rows, &$barr, $pid='0', $level=1)
- {
- foreach($rows as $k=>$rs){
- if($rs['pid']==$pid){
- $rs['level'] = $level;
- $rs['stotal'] = $this->gettreetotal($rows, $rs['id']);
- $barr[] = $rs;
- $this->gettreedata($rows, $barr, $rs['id'], $level+1);
- }
- }
- }
- public function gettreetotal($rows, $pid)
- {
- $stotal = 0;
- foreach($rows as $k=>$rs){
- if($rs['pid']==$pid){
- $stotal++;
- }
- }
- return $stotal;
- }
-
- //公司名称修改了,对应数据更新
- public function updatecompany($id, $name)
- {
- m('userract')->update("`company`='$name'","`companyid`='$id'");//员工合同
- }
-
- /**
- * 所属单位名称
- */
- public function comidname($comid)
- {
- if($comid && is_numeric($comid)){
- $mors = $this->getXinxi($comid);
- return arrvalue($mors, 'name');
- }else{
- return $comid;
- }
- }
- }
|