ItemCateService.php 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | Laravel框架 [ Laravel ]
  4. // +----------------------------------------------------------------------
  5. // | 版权所有 2017~2021 Laravel研发中心
  6. // +----------------------------------------------------------------------
  7. // | 官方网站: http://www.laravel.cn
  8. // +----------------------------------------------------------------------
  9. // | Author: wesmiler <12345678@qq.com>
  10. // +----------------------------------------------------------------------
  11. namespace App\Services;
  12. use App\Models\ItemCateModel;
  13. /**
  14. * 栏目管理-服务类
  15. * @author wesmiler
  16. * @since 2020/11/11
  17. * Class ItemCateService
  18. * @package App\Services
  19. */
  20. class ItemCateService extends BaseService
  21. {
  22. /**
  23. * 构造函数
  24. * @author wesmiler
  25. * @since 2020/11/11
  26. * ItemCateService constructor.
  27. */
  28. public function __construct()
  29. {
  30. $this->model = new ItemCateModel();
  31. }
  32. /**
  33. * 获取栏目列表
  34. * @return array
  35. * @since 2020/11/11
  36. * @author wesmiler
  37. */
  38. public function getList()
  39. {
  40. $param = request()->all();
  41. // 查询条件
  42. $map = [];
  43. // 上级ID
  44. $pid = intval(getter($param, 'pid', 0));
  45. if (!$pid) {
  46. $map[] = ['pid', '=', 0];
  47. } else {
  48. $map[] = ['pid', '=', $pid];
  49. }
  50. $list = $this->model->getList($map, [['sort', 'asc']]);
  51. if (!empty($list)) {
  52. foreach ($list as &$val) {
  53. if ($val['pid'] == 0) {
  54. $val['hasChildren'] = true;
  55. }
  56. }
  57. }
  58. return message("操作成功", true, $list);
  59. }
  60. /**
  61. * 添加或编辑
  62. * @return array
  63. * @since 2020/11/11
  64. * @author wesmiler
  65. */
  66. public function edit()
  67. {
  68. // 参数
  69. $data = request()->all();
  70. // 封面地址
  71. $cover = trim($data['cover']);
  72. if (!$data['id'] && !$cover) {
  73. return message('请上传栏目封面', false);
  74. }
  75. if (strpos($cover, "temp")) {
  76. $data['cover'] = save_image($cover, 'itemcate');
  77. } else {
  78. $data['cover'] = str_replace(IMG_URL, "", $data['cover']);
  79. }
  80. return parent::edit($data); // TODO: Change the autogenerated stub
  81. }
  82. }