allocatr/application/admin/model/Area.php
2025-07-14 23:13:11 +08:00

57 lines
1.4 KiB
PHP

<?php
namespace app\admin\model;
use fast\Tree;
use think\Model;
class Area extends Model
{
// 表名
protected $name = 'area';
public function getNameByCode($code){
return $this->where('area_code','=',$code)
->value('merge_name');
}
public function getTree(){
$res = $this->field(['city_code','code','name','level','province_code'])
->where('level','<',3)
->select();
// dd($ruleList);
foreach ($res as &$v) {
$v = $v->toArray();
$v['state'] = ['selected' => false];
if ($v['level'] == 2){
$v['pid'] = $v['province_code'] ?: 0;
$v['parent'] = $v['province_code'] ?: '#';
}else{
$v['pid'] = $v['city_code'] ?: 0;
$v['parent'] = $v['city_code'] ?: '#';
}
$v['id'] = $v['code'];
$v['text'] = $v['name'];
unset($v['province_code']);
unset($v['city_code']);
unset($v['level']);
unset($v['code']);
}
// dd($res);
Tree::instance()->init($res)->icon =
['&nbsp;&nbsp;&nbsp;&nbsp;', '&nbsp;&nbsp;&nbsp;&nbsp;', '&nbsp;&nbsp;&nbsp;&nbsp;'];
$res = Tree::instance()->getTreeList(Tree::instance()->getTreeArray(0));
// dd($res);
return $res;
}
}