App.php 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. <?php namespace Api\Lib;
  2. use Dever;
  3. class App
  4. {
  5. public function update($db, $data)
  6. {
  7. $func = Dever::db('app_func_work', 'api')->select(['app_func_id' => $data['id']]);
  8. if ($func) {
  9. $platform = [];
  10. Dever::db('app_platform', 'api')->delete(['app_id' => $data['app_id']]);
  11. foreach ($func as $k => $v) {
  12. $api = Dever::db('api', 'api')->find($v['api_id']);
  13. if ($api) {
  14. $platform[$api['platform_id']] = $api['platform_id'];
  15. }
  16. }
  17. foreach ($platform as $k => $v) {
  18. Dever::db('app_platform', 'api')->insert(['app_id' => $data['app_id'], 'platform_id' => $v]);
  19. }
  20. }
  21. }
  22. public function updateApi($db, $data)
  23. {
  24. if (isset($data['notify']) && $data['notify'] == 2) {
  25. Dever::db('api/api_notify')->delete(['api_id' => $data['id']]);
  26. }
  27. }
  28. public function getPlatform($app)
  29. {
  30. $set['join'] = [
  31. [
  32. 'table' => 'platform',
  33. 'type' => 'left join',
  34. 'on' => 'platform.id=app_platform.platform_id',
  35. ],
  36. ];
  37. $set['col'] = 'platform.id as id,platform.name as name';
  38. $platform = Dever::db('app_platform', 'api')->select(['app_id' => $app], $set);
  39. return $platform;
  40. }
  41. public function getSetting($platform_id)
  42. {
  43. return Dever::db('platform_setting', 'api')->select(['platform_id' => $platform_id]);
  44. }
  45. public function getCert($platform_id)
  46. {
  47. return Dever::db('platform_cert', 'api')->select(['platform_id' => $platform_id]);
  48. }
  49. public function getCertName($id)
  50. {
  51. $info = Dever::db('platform_cert', 'api')->find($id);
  52. return $info['name'];
  53. }
  54. public function getApi($func_id, $env = 1)
  55. {
  56. $set['join'] = [
  57. # t0
  58. [
  59. 'table' => 'api_api',
  60. 'type' => 'left join',
  61. 'on' => 't0.id=main.api_id',
  62. ],
  63. ];
  64. $set['col'] = 't0.*';
  65. $set['order'] = 'main.sort asc,t0.id desc';
  66. $where['main.app_func_id'] = $func_id;
  67. if ($env) {
  68. $where['t0.env'] = $env;
  69. }
  70. return Dever::db('app_func_work', 'api')->select($where, $set);
  71. }
  72. public function getAppPlatform($app_id, $platform_id)
  73. {
  74. $app = Dever::db('app', 'api')->find($app_id);
  75. $platform = Dever::db('platform', 'api')->find($platform_id);
  76. return $app['name'] . '-' . $platform['name'];
  77. }
  78. }