DistAppearanceTemplate.php 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. <?php
  2. namespace App\Admin\Repositories;
  3. use App\Models\DistAppearanceTemplate as Model;
  4. use Dcat\Admin\Repositories\EloquentRepository;
  5. class DistAppearanceTemplate extends EloquentRepository
  6. {
  7. /**
  8. * Model.
  9. *
  10. * @var string
  11. */
  12. protected $eloquentClass = Model::class;
  13. public static function getContent($id)
  14. {
  15. $data = Model::where('id', $id)->first();
  16. if ($data) {
  17. return $data->content;
  18. }
  19. return '';
  20. }
  21. public static function getTemplateTree($appearance_id,$dist_id)
  22. {
  23. $data = Model::where('appearance_id', $appearance_id)->where('dist_id', $dist_id)->get(['id', 'file_name', 'parent_id','file_type','file_path']);
  24. return self::buildTree($data->toArray(),0);
  25. }
  26. public static function buildTree(array $elements, $parentId = 0) {
  27. $branch = [];
  28. foreach ($elements as $element) {
  29. if ($element['parent_id'] == $parentId) {
  30. $children = self::buildTree($elements, $element['id']);
  31. if ($children) {
  32. $element['children'] = $children;
  33. }
  34. $branch[] = $element;
  35. }
  36. }
  37. return $branch;
  38. }
  39. /*
  40. * 保存模板内容
  41. */
  42. public static function saveContent($id, $content)
  43. {
  44. $data = Model::where('id', $id)->first();
  45. if ($data) {
  46. $data->content = $content;
  47. $data->save();
  48. return true;
  49. }
  50. return false;
  51. }
  52. }