Frontmenus.php 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. <?php
  2. namespace app\common\model\base\menu;
  3. use app\common\model\Common;
  4. use think\facade\Db;
  5. use think\model\concern\SoftDelete;
  6. class Frontmenus extends Common
  7. {
  8. use SoftDelete;
  9. protected $name = "system_front_menus";
  10. protected $pk = 'menu_id';
  11. protected $autoWriteTimestamp = 'datetime';
  12. protected $createTime = 'create_at';
  13. protected $updateTime = 'update_at';
  14. protected $deleteTime = 'delete_at';
  15. protected $append = [
  16. 'parentTitle',
  17. 'hidden_txt',
  18. 'group_txt',
  19. ];
  20. static public function hiddenList()
  21. {
  22. return [1=>'隐藏',2=>'显示'];
  23. }
  24. public function getHiddenTxtAttr($value,$data)
  25. {
  26. $value = $value ? $value : (isset($data['hidden']) ? $data['hidden'] : '');
  27. $hiddenList = $this->hiddenList();
  28. return isset($hiddenList[$value]) ? $hiddenList[$value] : '';
  29. }
  30. static public function groupList()
  31. {
  32. return [1=>'常用功能',2=>'其他功能'];
  33. }
  34. public function getGroupTxtAttr($value,$data)
  35. {
  36. $value = $value ? $value : (isset($data['group']) ? $data['group'] : '');
  37. $groupList = $this->groupList();
  38. return isset($groupList[$value]) ? $groupList[$value] : '';
  39. }
  40. public function getParentTitleAttr($value,$data)
  41. {
  42. $value = $data['pid']??0;
  43. $info = self::where("menu_id",$value)->field(['title'])->find();
  44. return $info?$info->title:'';
  45. }
  46. }