Files
xstore/inc/Hura8/Components/Province/Controller/bProvinceController.php

152 lines
4.8 KiB
PHP
Raw Normal View History

2025-10-04 11:46:59 +07:00
<?php
namespace Hura8\Components\Province\Controller;
use Hura8\Components\Province\Model\ProvinceModel;
use Hura8\Traits\ClassCacheTrait;
class bProvinceController
{
use ClassCacheTrait;
protected $objProvinceModel;
public function __construct()
{
$this->objProvinceModel = new ProvinceModel();
}
public function getProvinceName($id) {
return self::getCache("getProvinceName-".$id, function () use ($id) {
$info = $this->objProvinceModel->getProvinceInfo($id, 'name');
return ($info) ? $info['name'] : '';
});
}
public function getDistrictName($id) {
return self::getCache("getDistrictName-".$id, function () use ($id) {
$info = $this->objProvinceModel->getDistrictInfo($id, 'name');
return ($info) ? $info['name'] : '';
});
}
public function getWardName($id) {
return self::getCache("getWardName-".$id, function () use ($id) {
$info = $this->objProvinceModel->getWardInfo($id, 'name');
return ($info) ? $info['name'] : '';
});
}
public function getProvinceList($field="*") {
return self::getCache("getProvinceList-", function () use ($field) {
return $this->objProvinceModel->getProvinceList($field);
//$pick_keys = ['id', 'api_id', 'name'];
/*return array_map(function ($item) use($pick_keys){
return pick_return_array_key($item, $pick_keys);
}, $province_list);*/
});
}
public function getProvinceDistrictList($province_id, $field="*") {
return self::getCache("getProvinceDistrictList-".$province_id, function () use ($province_id) {
return $this->objProvinceModel->getProvinceDistrictList($province_id);
//$pick_keys = ['id', 'api_id', 'name'];
/*return array_map(function ($item) use($pick_keys){
return pick_return_array_key($item, $pick_keys);
}, $province_list);*/
});
}
public function getAllDistrictList() {
return self::getCache("getAllDistrictList", function (){
return $this->objProvinceModel->getAllDistrictList();
});
}
public function getDistrictWardList($district_id, $field="*") {
return self::getCache("getDistrictWardList-".$district_id, function () use ($district_id) {
return $this->objProvinceModel->getDistrictWardList($district_id);
});
}
// these are kept for old time sake
/*public static $province_list = array(
"1" => "Hà Nội",
"2" => "TP HCM",
"5" => "Hải Phòng" ,
"4" => "Đà Nẵng" ,
"6" => "An Giang" ,
"7" => "Bà Rịa-Vũng Tàu",
"13" => "Bình Dương" ,
"15" => "Bình Phước" ,
"16" => "Bình Thuận" ,
"14" => "Bình Định" ,
"8" => "Bạc Liêu",
"10" => "Bắc Giang" ,
"9" => "Bắc Kạn",
"11" => "Bắc Ninh",
"12" => "Bến Tre",
"18" => "Cao Bằng",
"17" => "Cà Mau",
"3" => "Cần Thơ",
"24" => "Gia Lai",
"25" => "Hà Giang",
"26" => "Hà Nam",
"27" => "Hà Tĩnh",
"30" => "Hòa Bình",
"28" => "Hải Dương",
"29" => "Hậu Giang",
"31" => "Hưng Yên",
"32" => "Khánh Hòa",
"33" => "Kiên Giang",
"34" => "Kon Tum",
"35" => "Lai Châu",
"38" => "Lào Cai",
"36" => "Lâm Đồng",
"37" => "Lạng Sơn",
"39" => "Long An",
"40" => "Nam Định",
"41" => "Nghệ An",
"42" => "Ninh Bình",
"43" => "Ninh Thuận",
"44" => "Phú Thọ",
"45" => "Phú Yên",
"46" => "Quảng Bình",
"47" => "Quảng Nam",
"48" => "Quảng Ngãi",
"49" => "Quảng Ninh",
"50" => "Quảng Trị",
"51" => "Sóc Trăng",
"52" => "Sơn La",
"53" => "Tây Ninh",
"56" => "Thanh Hóa",
"54" => "Thái Bình",
"55" => "Thái Nguyên",
"57" => "Thừa Thiên-Huế",
"58" => "Tiền Giang",
"59" => "Trà Vinh",
"60" => "Tuyên Quang",
"61" => "Vĩnh Long",
"62" => "Vĩnh Phúc",
"63" => "Yên Bái",
"19" => "Đắk Lắk",
"22" => "Đồng Nai",
"23" => "Đồng Tháp",
"21" => "Điện Biên",
"20" => "Đăk Nông",
);
public static function getName($id) {
return (isset(static::$province_list[$id])) ? static::$province_list[$id] : '';
}*/
}