Api.php 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. <?php
  2. namespace Category\Src;
  3. use Dever;
  4. class Api
  5. {
  6. private $default = array
  7. (
  8. 'value' => -1,
  9. 'name' => '不选择',
  10. );
  11. private $search_default = array
  12. (
  13. 'value' => -1,
  14. 'name' => '不选择',
  15. );
  16. /**
  17. * 获取分类数据
  18. *
  19. * @return mixed
  20. */
  21. public function get()
  22. {
  23. # 联动总数
  24. $level_total = 100;
  25. # 当前联动级别
  26. $level_num = Dever::input('level_num');
  27. # 一般为id
  28. $level_id = Dever::input('level_id');
  29. # 当前选择的id
  30. $level_self = Dever::input('level_self');
  31. # 是否是搜索列表页
  32. $level_search = Dever::input('level_search');
  33. if ($level_search) {
  34. $default = $this->search_default;
  35. } else {
  36. $default = $this->default;
  37. }
  38. $data = array();
  39. # 三级联动
  40. if ($level_num == 1) {
  41. $data = Dever::db('category/info')->getAll(array('info_id' => -1, 'id' => $level_self));
  42. } elseif($level_id > 0) {
  43. $data = Dever::db('category/info')->getAll(array('info_id' => $level_id, 'id' => $level_self));
  44. }
  45. if ($data || $level_num == 1) {
  46. array_unshift($data, $default);
  47. }
  48. if (!$data) {
  49. Dever::alert('error');
  50. }
  51. $result['level_total'] = $level_total;
  52. $result['list'] = $data;
  53. return $result;
  54. }
  55. /**
  56. * 根据分类id转成名称
  57. *
  58. * @return mixed
  59. */
  60. public function string($cate)
  61. {
  62. if ($cate) {
  63. $cate = explode(',', $cate);
  64. $result = array();
  65. foreach ($cate as $k => $v) {
  66. $result[$k] = $this->getName($v);
  67. }
  68. return implode(',', $result);
  69. }
  70. return '';
  71. }
  72. private function getName($id)
  73. {
  74. $name = '父级分类';
  75. if ($id > 0) {
  76. $data = Dever::db('category/info')->one($id);
  77. if ($data) {
  78. $name = $data['name'];
  79. }
  80. }
  81. return $name;
  82. }
  83. }