SettingController.php 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471
  1. <?php
  2. namespace addons\HiGo\backend\controllers;
  3. use addons\Agent\common\models\AgentLevel;
  4. use addons\BusinessBonus\common\models\BusinessBonusLevel;
  5. use addons\Distribution\common\models\DistributionLevel;
  6. use addons\HiGo\common\enums\HiGoEnum;
  7. use addons\HiGo\common\global_func\withdraw_way\WithdrawWay;
  8. use common\enums\AddonsEnum;
  9. use common\enums\WithdrawWayEnum;
  10. use common\globals\GlobalInvoke;
  11. use common\models\mall\MallAddons;
  12. use Yii;
  13. /**
  14. *
  15. *
  16. * Class SettingController
  17. * @package addons\HiGo\backend\controllers
  18. */
  19. class SettingController extends BaseController
  20. {
  21. public $enableCsrfValidation = false;
  22. /**
  23. * 首页
  24. *
  25. * @return string
  26. */
  27. public function actionIndex()
  28. {
  29. if (Yii::$app->request->isAjax) {
  30. if (Yii::$app->request->isGet) {
  31. $configs = [];
  32. // 基础设置
  33. $configs['basic'] = Yii::$app->services->setting->addons->get($this->mall_id, HiGoEnum::ADDONS_NAME, 'basic');
  34. $configs['basic']['airdrop_years_config'] = isset($configs['basic']['airdrop_years_config']) ? json_decode($configs['basic']['airdrop_years_config'], true) : [];
  35. $configs['recharge'] = Yii::$app->services->setting->addons->get($this->mall_id, HiGoEnum::ADDONS_NAME, 'recharge');
  36. $configs['protocol'] = Yii::$app->services->setting->addons->get($this->mall_id, HiGoEnum::ADDONS_NAME, 'protocol');
  37. $configs['recharge']['price_ladder'] = isset($configs['recharge']['price_ladder']) ? json_decode($configs['recharge']['price_ladder'], true) : [];
  38. // $configs['merchant'] = Yii::$app->services->setting->addons->get($this->mall_id, HiGoEnum::ADDONS_NAME, 'merchant');
  39. // $configs['merchant']['goods_market'] = isset($configs['merchant']['goods_market']) ? json_decode($configs['merchant']['goods_market'], true) : [];
  40. $configs['marketing'] = Yii::$app->services->setting->addons->get($this->mall_id, HiGoEnum::ADDONS_NAME, 'marketing') ?? [];
  41. // unset($configs['marketing']['cash_service_fee']);
  42. // unset($configs['marketing']['cash_status']);
  43. // unset($configs['marketing']['cash_type']);
  44. $configs['cashier'] = Yii::$app->services->setting->addons->get($this->mall_id, HiGoEnum::ADDONS_NAME, 'cashier');
  45. if(!empty($configs['marketing']['active_goods_list']) ){
  46. $configs['marketing']['active_goods_list'] = json_decode($configs['marketing']['active_goods_list'],true);
  47. }
  48. if(!empty($configs['marketing']['goods_list']) ){
  49. $configs['marketing']['goods_list'] = json_decode($configs['marketing']['goods_list'],true);
  50. }
  51. $configs['basic']['platform_account_user'] = isset($configs['basic']['platform_account_user']) ? json_decode($configs['basic']['platform_account_user'], true) : [];
  52. $configs['basic']['hi_bei_transfer_fee_platform'] = isset($configs['basic']['hi_bei_transfer_fee_platform']) ? json_decode($configs['basic']['hi_bei_transfer_fee_platform'], true) : [];
  53. $configs['protocol'] = Yii::$app->services->setting->addons->get($this->mall_id, HiGoEnum::ADDONS_NAME, 'protocol');
  54. $configs['mode'] = Yii::$app->services->setting->addons->get($this->mall_id, HiGoEnum::ADDONS_NAME, 'mode');
  55. $configs['mode']['enable'] = $configs['mode']['enable'] ?? 0;
  56. $mode_distribution = $this->getModeDistribution($this->mall_id, isset($configs['mode']['distribution']) ? json_decode($configs['mode']['distribution'], true) : []);
  57. $configs['mode']['distribution'] = $mode_distribution['distribution'];
  58. $configs['mode']['is_install_distribution'] = $mode_distribution['is_install_distribution'];
  59. $mode_agent = $this->getModeAgent($this->mall_id, isset($configs['mode']['agent']) ? json_decode($configs['mode']['agent'], true) : []);
  60. $configs['mode']['agent'] = $mode_agent['agent'];
  61. $configs['mode']['is_install_agent'] = $mode_agent['is_install_agent'];
  62. $mode_area = $this->getModeArea($this->mall_id, isset($configs['mode']['area']) ? json_decode($configs['mode']['area'], true) : []);
  63. $configs['mode']['area'] = $mode_area['area'];
  64. $configs['mode']['is_install_area'] = $mode_area['is_install_area'];
  65. $mode_business_bonus = $this->getModeBusinessBonus($this->mall_id, isset($configs['mode']['businessBonus']) ? json_decode($configs['mode']['businessBonus'], true) : []);
  66. $configs['mode']['businessBonus'] = $mode_business_bonus['businessBonus'];
  67. $configs['mode']['is_install_business_bonus'] = $mode_business_bonus['is_install_business_bonus'];
  68. $default_withdraw_way = WithdrawWayEnum::getDefaultWithDrawWayMap(WithdrawWayEnum::WITHDRAW_TYPE_2);
  69. $extension_withdraw_way = GlobalInvoke::exec(GlobalInvoke::INVOKE_GET_WITHDRAW_EXTENSION_WAY, $this->mall_id);
  70. $all_withdraw = array_merge($default_withdraw_way, $extension_withdraw_way, WithdrawWay::getExtensionWithdrawWay());
  71. $configs['withdraw'] = Yii::$app->services->setting->addons->get($this->mall_id, HiGoEnum::ADDONS_NAME, 'withdraw');
  72. $configs['withdraw'] = $this->jsonDecodeFields($configs['withdraw'], ['cash_type', 'cash_status', 'cash_service_fee']);
  73. $configs['withdraw']['cash_type']['extra'] = $this->handleWithdrawWay($all_withdraw);
  74. $configs['basic']['hi_bei_name'] = empty($configs['basic']['hi_bei_name']) ? "嗨呗" : $configs['basic']['hi_bei_name']; // 嗨贝设置,自定义名称未填写默认显示"嗨呗"
  75. return $this->success('success', compact('configs'));
  76. } else {
  77. $post = Yii::$app->request->post();
  78. unset($post['_csrf']);
  79. $post['mode']['distribution'] = json_encode($post['mode']['distribution']);
  80. $post['mode']['agent'] = json_encode($post['mode']['agent']);
  81. $post['mode']['area'] = json_encode($post['mode']['area']);
  82. $post['mode']['businessBonus'] = json_encode($post['mode']['businessBonus']);
  83. $post['recharge']['price_ladder'] = !empty($post['recharge']['price_ladder']) ? json_encode($post['recharge']['price_ladder']) : json_encode([]);
  84. $post['basic']['platform_account_user'] = json_encode($post['basic']['platform_account_user']);
  85. $post['withdraw'] = $this->jsonEncodeFields($post['withdraw'], ['cash_status', 'cash_type', 'cash_service_fee']);
  86. Yii::$app->services->setting->addons->set($this->mall_id, HiGoEnum::ADDONS_NAME, $post);
  87. return $this->success('保存成功');
  88. }
  89. }
  90. return $this->render('index', []);
  91. }
  92. protected function handleWithdrawWay($data)
  93. {
  94. foreach ($data as $k => $item) {
  95. if (!is_array($item)) continue;
  96. $data[$k] = isset($item['name']) ? $item['name'] : '';
  97. }
  98. return $data;
  99. }
  100. protected function jsonEncodeFields(&$data, $fields)
  101. {
  102. if (empty($data)) return [];
  103. foreach ($fields as $field) {
  104. if (!isset($data[$field])) continue;
  105. $data[$field] = json_encode($data[$field]);
  106. }
  107. return $data;
  108. }
  109. protected function jsonDecodeFields(&$data, $fields)
  110. {
  111. if (empty($data)) return [];
  112. foreach ($fields as $field) {
  113. if (!isset($data[$field])) continue;
  114. $tmp_data = json_decode($data[$field], true);
  115. $data[$field] = $tmp_data;
  116. }
  117. return $data;
  118. }
  119. protected function getBasicData()
  120. {
  121. return [
  122. 'hiBei' => [
  123. 'enable' => 0,
  124. 'remaining_part_ratio' => 0,
  125. 'type' => 0,
  126. 'level_setting' => []
  127. ],
  128. 'hiValue' => [
  129. 'enable' => 0,
  130. 'remaining_part_ratio' => 0,
  131. 'type' => 0,
  132. 'level_setting' => []
  133. ]
  134. ];
  135. }
  136. /**
  137. * @Note: 这些方法看上去确实是有点烦躁,这么长,这么多的重复操作,
  138. * 不想改了,不想写的太抽象了,本地run起来要紧,再到线上run起来,再有其他币种再写的抽象点,概括点,
  139. * 只要去前端页面去看看需要的数据结构,
  140. * 相信你肯定会恍然大悟,这个方法is so easy
  141. * @Author: qi
  142. * @DateTime 2022-11-24 17:07:25
  143. * @param integer $mall_id
  144. * @param null|array $basic
  145. * @return mixed
  146. */
  147. protected function getModeAgent($mall_id, $basic)
  148. {
  149. $is_install_agent = 0;
  150. $agent = $this->getBasicData();
  151. if (MallAddons::isInstall($mall_id, AddonsEnum::ADDONS_NAME_AGENT)) {
  152. $is_install_agent = 1;
  153. $level = AgentLevel::find()->where(['mall_id' => $mall_id, 'status' => 1])
  154. ->select('id, level, name, mall_id')
  155. ->asArray()
  156. ->all();
  157. $hi_bei_level_setting = isset($basic['hiBei']['level_setting']) ? $basic['hiBei']['level_setting'] : [];
  158. $hi_bei_level_setting && $hi_bei_level_setting = array_column($hi_bei_level_setting, null, 'level');
  159. $hi_value_level_setting = isset($basic['hiValue']['level_setting']) ? $basic['hiValue']['level_setting'] : [];
  160. $hi_value_level_setting && $hi_value_level_setting = array_column($hi_value_level_setting, null, 'level');
  161. $hi_bei_level = $level;
  162. $hi_value_level = $level;
  163. foreach ($hi_bei_level as &$v) {
  164. $v['type'] = isset($hi_bei_level_setting[$v['level']]) ? $hi_bei_level_setting[$v['level']]['type'] : 0;
  165. $v['agent_equal_prize'] = isset($hi_bei_level_setting[$v['level']]) ? $hi_bei_level_setting[$v['level']]['agent_equal_prize'] : 0;
  166. $v['agent_extra_prize'] = isset($hi_bei_level_setting[$v['level']]) ? $hi_bei_level_setting[$v['level']]['agent_extra_prize'] : 0;
  167. $v['agent_over_prize'] = isset($hi_bei_level_setting[$v['level']]) ? $hi_bei_level_setting[$v['level']]['agent_over_prize'] : 0;
  168. $v['agent_team_prize'] = isset($hi_bei_level_setting[$v['level']]) ? $hi_bei_level_setting[$v['level']]['agent_team_prize'] : 0;
  169. }
  170. unset($v);
  171. foreach ($hi_value_level as &$v) {
  172. $v['type'] = isset($hi_value_level_setting[$v['level']]) ? $hi_value_level_setting[$v['level']]['type'] : 0;
  173. $v['agent_equal_prize'] = isset($hi_value_level_setting[$v['level']]) ? $hi_value_level_setting[$v['level']]['agent_equal_prize'] : 0;
  174. $v['agent_extra_prize'] = isset($hi_value_level_setting[$v['level']]) ? $hi_value_level_setting[$v['level']]['agent_extra_prize'] : 0;
  175. $v['agent_over_prize'] = isset($hi_value_level_setting[$v['level']]) ? $hi_value_level_setting[$v['level']]['agent_over_prize'] : 0;
  176. $v['agent_team_prize'] = isset($hi_value_level_setting[$v['level']]) ? $hi_value_level_setting[$v['level']]['agent_team_prize'] : 0;
  177. }
  178. unset($v);
  179. $agent['hiBei']['level_setting'] = $hi_bei_level;
  180. $agent['hiBei']['enable'] = isset($basic['hiBei']) ? $basic['hiBei']['enable'] : 0;
  181. $agent['hiValue']['level_setting'] = $hi_value_level;
  182. $agent['hiValue']['enable'] = isset($basic['hiValue']) ? $basic['hiValue']['enable'] : 0;
  183. $agent['hiBei']['remaining_part_ratio'] = isset($basic['hiBei']) ? $basic['hiBei']['remaining_part_ratio'] : 0;
  184. $agent['hiValue']['remaining_part_ratio'] = isset($basic['hiValue']) ? $basic['hiValue']['remaining_part_ratio'] : 0;
  185. }
  186. return compact('is_install_agent', 'agent');
  187. }
  188. protected function getModeDistribution($mall_id, $basic)
  189. {
  190. $is_install_distribution = 0;
  191. $distribution = $this->getBasicData();
  192. if (MallAddons::isInstall($mall_id, AddonsEnum::ADDONS_NAME_DISTRIBUTION)) {
  193. $is_install_distribution = 1;
  194. $level = DistributionLevel::find()->where(['mall_id' => $mall_id, 'status' => 1])->select('id, name, mall_id, level')
  195. ->asArray()->all();
  196. $level = $level ?? [];
  197. $configs = Yii::$app->services->setting->addons->get($this->mall_id, AddonsEnum::ADDONS_NAME_DISTRIBUTION, 'basic');
  198. $configs = $configs ?? [];
  199. $level_type = $configs['level'] ?? 0;
  200. $level_arr = [0, 1, 2, 3, 4];
  201. $init_level = [[
  202. 'id' => 0, 'level' => 0, 'name' => '默认等级', 'mall_id' => $mall_id
  203. ]];
  204. array_walk($init_level, function ($item) use (&$level) {
  205. array_unshift($level, $item);
  206. });
  207. $hi_bei_level_setting = [];
  208. $hi_value_level_setting = [];
  209. if($basic['hiBei'] && $basic['hiBei']['level_setting']){
  210. $hi_bei_level_setting = $basic['hiBei'] ? array_column($basic['hiBei']['level_setting'], null, 'level') : [];
  211. }
  212. if($basic['hiValue'] && $basic['hiValue']['level_setting']){
  213. $hi_value_level_setting = $basic['hiValue'] ? array_column($basic['hiValue']['level_setting'], null, 'level') : [];
  214. }
  215. $hi_bei_level = $level;
  216. $hi_value_level = $level;
  217. foreach ($hi_bei_level as &$item) {
  218. if (in_array($level_type, $level_arr)) {
  219. $item['is_show'] = $level_arr[$level_type];
  220. } else {
  221. $item['is_show'] = 0;
  222. }
  223. $item['first_level'] = isset($hi_bei_level_setting[$item['level']]) ? $hi_bei_level_setting[$item['level']]['first_level'] : 0;
  224. $item['second_level'] = isset($hi_bei_level_setting[$item['level']]) ? $hi_bei_level_setting[$item['level']]['second_level'] : 0;
  225. $item['third_level'] = isset($hi_bei_level_setting[$item['level']]) ? $hi_bei_level_setting[$item['level']]['third_level'] : 0;
  226. $item['type'] = isset($hi_bei_level_setting[$item['level']]) ? $hi_bei_level_setting[$item['level']]['type'] : 0;
  227. }
  228. unset($item);
  229. foreach ($hi_value_level as &$v) {
  230. if (in_array($level_type, $level_arr)) {
  231. $v['is_show'] = $level_arr[$level_type];
  232. } else {
  233. $v['is_show'] = 0;
  234. }
  235. $v['first_level'] = isset($hi_value_level_setting[$v['level']]) ? $hi_value_level_setting[$v['level']]['first_level'] : 0;
  236. $v['second_level'] = isset($hi_value_level_setting[$v['level']]) ? $hi_value_level_setting[$v['level']]['second_level'] : 0;
  237. $v['third_level'] = isset($hi_value_level_setting[$v['level']]) ? $hi_value_level_setting[$v['level']]['third_level'] : 0;
  238. $v['type'] = isset($hi_value_level_setting[$v['level']]) ? $hi_value_level_setting[$v['level']]['type'] : 0;
  239. }
  240. unset($v);
  241. $distribution['hiBei']['level_setting'] = $hi_bei_level;
  242. $distribution['hiBei']['enable'] = $basic['hiBei'] ? $basic['hiBei']['enable'] : 0;
  243. $distribution['hiValue']['level_setting'] = $hi_value_level;
  244. $distribution['hiValue']['enable'] = $basic['hiValue'] ? $basic['hiValue']['enable'] : 0;
  245. $distribution['hiBei']['remaining_part_ratio'] = isset($basic['hiBei']) ? $basic['hiBei']['remaining_part_ratio'] : 0;
  246. $distribution['hiValue']['remaining_part_ratio'] = isset($basic['hiValue']) ? $basic['hiValue']['remaining_part_ratio'] : 0;
  247. }
  248. return compact('is_install_distribution', 'distribution');
  249. }
  250. protected function getModeArea($mall_id, $basic)
  251. {
  252. $is_install_area = 0;
  253. $area = $this->getBasicData();
  254. if (MallAddons::isInstall($mall_id, AddonsEnum::ADDONS_NAME_AREA)) {
  255. $is_install_area = 1;
  256. $basic_level = $this->getAreaBasicLevel();
  257. $regional_arr = $basic_level['regional_arr'];
  258. $province_arr = $basic_level['province_arr'];
  259. $city_arr = $basic_level['city_arr'];
  260. $district_arr = $basic_level['district_arr'];
  261. $town_arr = $basic_level['town_arr'];
  262. $community_arr = $basic_level['community_arr'];
  263. $level_arr = [$regional_arr, $province_arr, $city_arr, $district_arr, $town_arr, $community_arr];
  264. $hi_bei_level = $basic['hiBei'] ?? [];
  265. $hi_bei_level = $hi_bei_level['level_setting'] ?? [];
  266. if(!empty($hi_bei_level)){
  267. $hi_bei_level = array_column($hi_bei_level, null, 'setting_type');
  268. }
  269. $hi_value_level = $basic['hiValue'] ?? [];
  270. $hi_value_level = $hi_value_level['level_setting'] ?? [];
  271. if(!empty($hi_value_level)){
  272. $hi_value_level = array_column($hi_value_level, null, 'setting_type');
  273. }
  274. $area['hiBei']['level_setting'][] = [
  275. 'type' => isset($hi_bei_level['normal']) ? $hi_bei_level['normal']['type'] : 0,
  276. 'setting_type' => 'normal',
  277. 'title' => '嗨贝配置',
  278. 'level' => (isset($hi_bei_level['normal']) && !empty($hi_bei_level['normal'])) ? $hi_bei_level['normal']['level'] : $level_arr
  279. ];
  280. $area['hiBei']['level_setting'][] = [
  281. 'type' => isset($hi_bei_level['same_level']) ? $hi_bei_level['same_level']['type'] : 0,
  282. 'setting_type' => 'same_level',
  283. 'title' => '嗨贝平级奖配置',
  284. 'level' => (isset($hi_bei_level['same_level']) && !empty($hi_bei_level['same_level'])) ? $hi_bei_level['same_level']['level'] : $level_arr
  285. ];
  286. $area['hiValue']['level_setting'][] = [
  287. 'type' => isset($hi_value_level['normal']) ? $hi_value_level['normal']['type'] : 0,
  288. 'setting_type' => 'normal',
  289. 'title' => '嗨值配置',
  290. 'level' => (isset($hi_value_level['normal']) && !empty($hi_value_level['normal'])) ? $hi_value_level['normal']['level'] : $level_arr
  291. ];
  292. $area['hiValue']['level_setting'][] = [
  293. 'type' => isset($hi_value_level['same_level']) ? $hi_value_level['same_level']['type'] : 0,
  294. 'setting_type' => 'same_level',
  295. 'title' => '嗨值平级奖配置',
  296. 'level' => (isset($hi_value_level['same_level']) && !empty($hi_value_level['same_level'])) ? $hi_value_level['same_level']['level'] : $level_arr
  297. ];
  298. $area['hiBei']['enable'] = isset($basic['hiBei']) ? $basic['hiBei']['enable'] : 0;
  299. $area['hiValue']['enable'] = isset($basic['hiValue']) ? $basic['hiValue']['enable'] : 0;
  300. $area['hiBei']['remaining_part_ratio'] = isset($basic['hiBei']) ? $basic['hiBei']['remaining_part_ratio'] : 0;
  301. $area['hiValue']['remaining_part_ratio'] = isset($basic['hiValue']) ? $basic['hiValue']['remaining_part_ratio'] : 0;
  302. }
  303. return compact('is_install_area', 'area');
  304. }
  305. protected function getModeBusinessBonus($mall_id, $basic)
  306. {
  307. $is_install_business_bonus = 0;
  308. $businessBonus = $this->getBasicData();
  309. if (MallAddons::isInstall($mall_id, AddonsEnum::ADDONS_NAME_BUSINESS_BONUS)) {
  310. $is_install_business_bonus = 1;
  311. $level = BusinessBonusLevel::find()->where(['mall_id' => $mall_id, 'status' => 1])
  312. ->select('id, level_name AS name')
  313. ->asArray()
  314. ->all();
  315. $configs = $configs ?? [];
  316. foreach ($level as &$item) {
  317. $item['type'] = 0;
  318. $item['value'] = 0;
  319. }
  320. unset($item);
  321. $businessBonus['hiBei']['level_setting'] = $level;
  322. $businessBonus['hiValue']['level_setting'] = $level;
  323. }
  324. if ($basic) {
  325. $businessBonus = array_merge($businessBonus, $basic);
  326. }
  327. return compact('is_install_business_bonus', 'businessBonus');
  328. }
  329. protected function getAreaBasicLevel()
  330. {
  331. $province_arr = [
  332. 'level' => 1,
  333. 'name' => '省代',
  334. 'value' => 0
  335. ];
  336. $city_arr = [
  337. 'level' => 2,
  338. 'name' => '市代',
  339. 'value' => 0
  340. ];
  341. $district_arr = [
  342. 'level' => 3,
  343. 'name' => '区代',
  344. 'value' => 0
  345. ];
  346. $town_arr = [
  347. 'level' => 4,
  348. 'name' => '镇代',
  349. 'value' => 0
  350. ];
  351. $community_arr = [
  352. 'level' => 5,
  353. 'name' => '小区代',
  354. 'value' => 0
  355. ];
  356. $regional_arr = [
  357. 'level' => 6,
  358. 'name' => '大区代',
  359. 'value' => 0
  360. ];
  361. return compact('province_arr', 'city_arr', 'district_arr', 'town_arr', 'community_arr', 'regional_arr');
  362. }
  363. private function checkModeSetting($mode_setting)
  364. {
  365. $hi_value_radio_setting = [];
  366. $hi_bei_radio_setting = [];
  367. if(isset($mode_setting['distribution']) && !empty($mode_setting['distribution'])){
  368. $first_level = [];
  369. $second_level = [];
  370. $third_level = [];
  371. foreach($mode_setting['distribution'] as $key => $dis){
  372. if($dis['enable'] && !$dis['type']){
  373. foreach($dis['level_setting'] as $dis_level){
  374. if(!$dis_level['type']){
  375. $first_level[$key][] = $dis_level['first_level'];
  376. $second_level[$key][] = $dis_level['second_level'];
  377. $third_level[$key][] = $dis_level['third_level'];
  378. }
  379. }
  380. }
  381. }
  382. $hi_value_radio_setting[] = $first_level['hiValue'] ? max($first_level['hiValue']) : 0;
  383. $hi_value_radio_setting[] = $second_level['hiValue'] ? max($second_level['hiValue']) : 0;
  384. $hi_value_radio_setting[] = $third_level['hiValue'] ? max($third_level['hiValue']) : 0;
  385. $hi_bei_radio_setting[] = $first_level['hiBei'] ? max($first_level['hiBei']) : 0;
  386. $hi_bei_radio_setting[] = $second_level['hiBei'] ? max($second_level['hiBei']) : 0;
  387. $hi_bei_radio_setting[] = $third_level['hiBei'] ? max($third_level['hiBei']) : 0;
  388. }
  389. if(isset($mode_setting['agent']) && !empty($mode_setting['agent'])){
  390. $agent_equal_prize = [];
  391. $agent_extra_prize = [];
  392. $agent_over_prize = [];
  393. $agent_team_prize = [];
  394. foreach($mode_setting['agent'] as $key => $agent){
  395. if($agent['enable']){
  396. foreach($agent['level_setting'] as $agent_level){
  397. if(!$agent_level['type']){
  398. $agent_equal_prize[$key][] = $agent_level['agent_equal_prize'];
  399. $agent_extra_prize[$key][] = $agent_level['agent_extra_prize'];
  400. $agent_over_prize[$key][] = $agent_level['agent_over_prize'];
  401. $agent_team_prize[$key][] = $agent_level['agent_team_prize'];
  402. }
  403. }
  404. $radio = $key == 'hiValue' ? $hi_value_radio_setting : $hi_bei_radio_setting;
  405. $radio[] = $agent_equal_prize[$key] ? max($agent_equal_prize[$key]) : 0;
  406. $radio[] = $agent_extra_prize[$key] ? max($agent_extra_prize[$key]) : 0;
  407. $radio[] = $agent_over_prize[$key] ? max($agent_over_prize[$key]) : 0;
  408. $radio[] = $agent_team_prize[$key] ? max($agent_team_prize[$key]) : 0;
  409. if($key == 'hiValue'){
  410. $hi_value_radio_setting = $radio;
  411. }else{
  412. $hi_bei_radio_setting = $radio;
  413. }
  414. }
  415. }
  416. }
  417. if(isset($mode_setting['area']) && !empty($mode_setting['area'])) {
  418. foreach ($mode_setting['area'] as $key => $area) {
  419. if ($area['enable'] && !$area['type']) {
  420. foreach ($area['level_setting'] as $area_level) {
  421. }
  422. }
  423. }
  424. }
  425. print_r($hi_bei_radio_setting);
  426. print_r($hi_value_radio_setting);
  427. exit;
  428. }
  429. }