BaseService.php 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. <?php
  2. namespace addons\OperationCenter\common\services;
  3. use yii\base\BaseObject;
  4. use yii\db\ActiveRecord;
  5. /**
  6. * BaseService
  7. * @package addons\OperationCenter\common\services
  8. */
  9. class BaseService extends BaseObject implements ServiceInterface
  10. {
  11. /**
  12. * MallId
  13. *
  14. * @var integer
  15. */
  16. public $mall_id;
  17. /**
  18. * Error
  19. *
  20. * @var string
  21. */
  22. public $error;
  23. /**
  24. * @var SettingService
  25. */
  26. protected $settingService;
  27. /**
  28. * @var LevelService
  29. */
  30. protected $levelService;
  31. /**
  32. * 初始化
  33. *
  34. * @param array $config
  35. */
  36. public function __construct($config)
  37. {
  38. parent::__construct($config);
  39. }
  40. /**
  41. * @param array $params
  42. * @param string $field
  43. * @return integer
  44. */
  45. public function getPage(array $params, string $field = 'page') :int
  46. {
  47. return !empty($params[$field])
  48. ? $params[$field]
  49. : 1;
  50. }
  51. /**
  52. * @param array $params
  53. * @param string $field
  54. * @return integer
  55. */
  56. public function getLimit(array $params, string $field = 'limit') :int
  57. {
  58. return !empty($params[$field])
  59. ? $params[$field]
  60. : 20;
  61. }
  62. /**
  63. * 错误返回
  64. *
  65. * @param string $msg
  66. * @return false
  67. */
  68. public function error($msg = '')
  69. {
  70. $this->error = $msg;
  71. return false;
  72. }
  73. /**
  74. * model error
  75. *
  76. * @param ActiveRecord $model
  77. * @return false
  78. */
  79. public function modelError(ActiveRecord $model)
  80. {
  81. $error_msg = current($model->getFirstErrors());
  82. return $this->error(
  83. $error_msg
  84. );
  85. }
  86. /**
  87. * 返回错误信息
  88. *
  89. * @return string
  90. */
  91. public function getError()
  92. {
  93. return $this->error;
  94. }
  95. /**
  96. * @return SettingService
  97. */
  98. public function getSettingService()
  99. {
  100. return empty($this->settingService)
  101. ? new SettingService(['mall_id' => $this->mall_id])
  102. : $this->SettingService;
  103. }
  104. /**
  105. * @return LevelService
  106. */
  107. public function getLevelService()
  108. {
  109. return empty($this->levelService)
  110. ? new LevelService(['mall_id' => $this->mall_id])
  111. : $this->levelService;
  112. }
  113. }