ProxyController.php 3.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. <?php
  2. namespace App\Http\Controllers\Api;
  3. use App\Modes\AdverActivity;
  4. use App\Modes\AdverActivityLimit;
  5. use App\Modes\AdverActivityLog;
  6. use App\Modes\Proxy;
  7. use App\Modes\Advertising;
  8. use App\Modes\ProxyArea;
  9. use Carbon\Carbon;
  10. use Illuminate\Http\Request;
  11. use App\Http\Controllers\Controller;
  12. class ProxyController extends Controller
  13. {
  14. /**
  15. * 获取收费标注
  16. * @author lyh
  17. * @date 2019/3/22
  18. * @description
  19. */
  20. public function show(Request $request)
  21. {
  22. $validator = \Validator::make($param = $request->post(), [
  23. 'province' => 'required|numeric',
  24. 'city' => 'required|numeric',
  25. 'district' => 'required|numeric'
  26. ]);
  27. if ($validator->fails()) {
  28. return showJson(102, $validator->errors()->first());
  29. }
  30. //为了不影响整体配置,先这样做吧
  31. //$proxyConfig = Proxy::getConfig(\Auth::id(), $param['province'], $param['city'], $param['district']);
  32. $proxy = Proxy::whereUserLevel(\Auth::user()->level)->whereStatus(1)->whereUid(\Auth::id())->whereAreaType(4)->first();
  33. if(empty($proxy->id)|| !empty($param['guarantee'])){//如果是对赌广告则用默认配置
  34. $proxy=Proxy::getSettingByAreaAndLevel(\Auth::user()->level,\Auth::user()->province,\Auth::user()->city,\Auth::user()->district);
  35. }else $proxy->toArray();
  36. $free_num = Proxy::getActivityFreeNum(\Auth::id(),\Auth::user()->province,\Auth::user()->city,\Auth::user()->district,\Auth::user()->level);
  37. $free_yfb=Advertising::whereUid(\Auth::id())->whereIn('status',[2,3,4])->sum('total_num');
  38. $num=$free_num-$free_yfb;
  39. $free_num=$num>0?$num:0;
  40. //担保广告的起投额度不一样
  41. if(!empty($param['guarantee'])){
  42. $proxy['min_money']=$proxy['guarantee_min_money'];
  43. }
  44. return showJsonSucc('获取代理配置成功', [
  45. 'min_money' => $proxy['min_money'],
  46. 'money' => $proxy['money'],
  47. 'free_num' => $free_num
  48. ]);
  49. }
  50. /**
  51. * @author lyh
  52. * @date 2019/4/30
  53. * @param Request $request
  54. * @description
  55. */
  56. public function getApplyMoney(Request $request)
  57. {
  58. $validator = \Validator::make($param = $request->post(), [
  59. 'province' => 'required|exists:proxy,province',
  60. 'city' => 'required|numeric',
  61. 'district' => 'numeric'
  62. ]);
  63. if ($validator->fails()) {
  64. return showJson(102, $validator->errors()->first());
  65. }
  66. if (!in_array(\Auth::user()->level, [6, 7])) {
  67. return showJsonErr('抱歉,您的等级不能申请地区代理');
  68. }
  69. $money = 0;
  70. //用户等级达到并且首次申请代理可免费
  71. $proxyarea=ProxyArea::whereUid(\Auth::id())->first();
  72. //var_dump($proxyarea);
  73. if (empty($proxyarea)) {
  74. $money=0;
  75. } else {
  76. //$aa=Proxy::getSettingByAreaAndLevel(\Auth::user()->level,\Auth::user()->province,\Auth::user()->city,\Auth::user()->district);
  77. //$money=$aa['apply_money'];
  78. $money = Proxy::getApplyMoneyByConfig($param['province'], !empty($param['city'])? $param['city'] : null, !empty($param['district'])? $param['district'] : null, \Auth::user()->level);
  79. }
  80. return showJsonSucc('获取代理费用成功', ['money' => moneyFormat($money)]);
  81. }
  82. }