MediaCostLogic.php 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. <?php
  2. namespace app\v1\logic\advert;
  3. use app\v1\logic\center\GameLogic;
  4. use plugin\saiadmin\basic\BaseLogic;
  5. use plugin\saiadmin\exception\ApiException;
  6. use plugin\saiadmin\utils\Helper;
  7. use app\v1\model\advert\MediaCost;
  8. use plugin\saiadmin\app\logic\system\SystemUserLogic;
  9. /**
  10. * 媒体消耗逻辑层
  11. */
  12. class MediaCostLogic extends BaseLogic
  13. {
  14. protected $agentSiteLogic;
  15. protected $agentListLogic;
  16. protected $gameLogic;
  17. protected $systemUserLogic;
  18. /**
  19. * 构造函数
  20. */
  21. public function __construct()
  22. {
  23. $this->model = new MediaCost();
  24. $this->agentSiteLogic = new AgentSiteLogic();
  25. $this->agentListLogic = new AgentListLogic();
  26. $this->gameLogic = new GameLogic();
  27. $this->systemUserLogic = new SystemUserLogic();
  28. $this->setOrderField('tdate');
  29. $this->setOrderType('desc');
  30. }
  31. /**
  32. * 添加数据
  33. * @param $data
  34. * @return mixed
  35. */
  36. public function add($data): mixed
  37. {
  38. $site_id = $data['site_id'];
  39. $site_info = $this->agentSiteLogic->read($site_id);
  40. $data['media_id'] = $site_info['media_id'];
  41. $data['agent_id'] = $site_info['agent_id'];
  42. $data['auth_id'] = $site_info['auth_id'];
  43. $this->model->save($data);
  44. return $this->model->getKey();
  45. }
  46. /**
  47. * 修改数据
  48. * @param $id
  49. * @param $data
  50. * @return mixed
  51. */
  52. public function edit($id, $data): mixed
  53. {
  54. $model = $this->model->findOrEmpty($id);
  55. if ($model->isEmpty()) {
  56. throw new ApiException('数据不存在');
  57. }
  58. $site_id = $data['site_id'];
  59. $site_info = $this->agentSiteLogic->read($site_id);
  60. $data['media_id'] = $site_info['media_id'];
  61. $data['agent_id'] = $site_info['agent_id'];
  62. $data['auth_id'] = $site_info['auth_id'];
  63. return $model->save($data);
  64. }
  65. }