GoodClassService.php 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. <?php
  2. namespace app\common\service;
  3. use app\common\model\GoodClass;
  4. use app\common\util\WhereBuilder;
  5. class GoodClassService extends Service
  6. {
  7. /**
  8. * 分页
  9. *
  10. * @param array $params
  11. */
  12. public function page($params = [])
  13. {
  14. $this->autoParams($params);
  15. $keyword = $this->pg('keyword');
  16. $where = WhereBuilder::builder()
  17. ->like('name', $keyword)
  18. ->build();
  19. return (new GoodClass)
  20. ->where($where)
  21. ->paginate($this->tp6Page());
  22. }
  23. public function all()
  24. {
  25. return (new GoodClass)->select();
  26. }
  27. /**
  28. * 创建
  29. *
  30. * @param array $params
  31. */
  32. public function create($params = [])
  33. {
  34. $this->autoParams($params);
  35. $name = $this->pg('name');
  36. $desc = $this->pg('desc');
  37. $class = (new GoodClass)->where('name', '=', $name)->find();
  38. if ($class) {
  39. throw $this->exception("名称为 $name 的类别已存在,id={$class->id}");
  40. }
  41. $classData = [
  42. 'name' => $name,
  43. 'desc' => $desc,
  44. ];
  45. $class = GoodClass::create($classData);
  46. return $class;
  47. }
  48. /**
  49. * 更新
  50. *
  51. * @param array $params
  52. */
  53. public function update($params = [])
  54. {
  55. $params = $this->autoParams($params);
  56. return (new GoodClass)->allowField(['name', 'desc'])->update($params);
  57. }
  58. /**
  59. * 删除
  60. *
  61. * @param array $params
  62. */
  63. public function delete($params = [])
  64. {
  65. $this->autoParams($params);
  66. $class = $this->one(GoodClass::class);
  67. return $class->delete();
  68. }
  69. }