DefaultController.php 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. <?php
  2. namespace addons\RealAuth\backend\controllers;
  3. use common\enums\AddonsEnum;
  4. use common\models\mall\MallAddons;
  5. use Exception;
  6. use Yii;
  7. use common\controllers\AddonsController;
  8. /**
  9. * 默认控制器
  10. *
  11. * Class DefaultController
  12. * @package addons\RealAuth\backend\controllers
  13. */
  14. class DefaultController extends BaseController
  15. {
  16. public $enableCsrfValidation = false;
  17. /**
  18. * 首页
  19. *
  20. * @return string
  21. */
  22. public function actionIndex()
  23. {
  24. if ($this->request->isAjax) {
  25. $conf = Yii::$app->services->setting->addons->get($this->mall_id, AddonsEnum::ADDONS_NAME_REAL_AUTH, 'basic');
  26. $scene_conf = [
  27. ['name' => '平台商品下单实名认证', 'value' => 'order'],
  28. ['name' => '提现实名认证', 'value' => 'cash'],
  29. ['name' => '部分平台商品下单', 'value' => 'part_order'],
  30. ];
  31. if (MallAddons::isInstall($this->mall_id, AddonsEnum::ADDONS_NAME_LAO_DA_FU)) {
  32. $scene_conf[] = ['name' => '佬大夫下单实名认证', 'value' => 'laodafu_order'];
  33. }
  34. $business_conf = [['name' => '交易钱包(门店余额)提现实名认证', 'value' => 'cash'],['name' => '申请开店(O2O门店和多商户)实名认证', 'value' => 'store']];
  35. if(isset($conf['scene'])){
  36. $conf['scene'] = explode(',',$conf['scene']);
  37. }else{
  38. $conf['scene'] = [];
  39. }
  40. if(isset($conf['goods_list']) && !empty($conf['goods_list'])){
  41. $conf['goods_list'] = json_decode($conf['goods_list'], true);
  42. }else{
  43. $conf['goods_list'] = [];
  44. }
  45. if(isset($conf['goods_ids']) && !empty($conf['goods_ids'])){
  46. $conf['goods_ids'] = json_decode($conf['goods_ids'], true);
  47. }else{
  48. $conf['goods_ids'] = [];
  49. }
  50. if(isset($conf['business_scene'])){
  51. $conf['business_scene'] = explode(',',$conf['business_scene']);
  52. }else{
  53. $conf['business_scene'] = [];
  54. }
  55. return $this->success('ok', compact('conf','scene_conf','business_conf'));
  56. }
  57. return $this->render('index');
  58. }
  59. /**
  60. * 保存设置
  61. *
  62. * @return void
  63. */
  64. public function actionSave()
  65. {
  66. if ($this->request->isPost) {
  67. try{
  68. // 数据提交
  69. $post = $this->request->post();
  70. //检验数据
  71. $validateService = Yii::$app->services->validate;
  72. $rules = [
  73. [['secret_id','secret_key','scene', 'version'],'required'],
  74. [['status','id_no_limit'],'integer'],
  75. [['goods_ids', 'goods_list'], 'safe'],
  76. [['setting_status','business_status','business_verify_time','business_scene','business_no_limit','upgrade_status'],'safe'],
  77. ];
  78. $labels = [
  79. 'secret_id' => 'SecretID',
  80. 'secret_key' => 'SecretKey',
  81. 'scene' => '应用场景',
  82. 'goods_ids' => '商品id',
  83. 'goods_list' => '商品集合'
  84. ];
  85. $valid = $validateService->validate($post, $rules,$labels);
  86. if (!$valid) {
  87. throw new \Exception($validateService->getFirstErrorSummary());
  88. }
  89. unset($post['_csrf']);
  90. $post['scene'] = implode(',',$post['scene']);
  91. if(isset($post['business_scene'])){
  92. $post['business_scene'] = implode(',',$post['business_scene']);
  93. }
  94. $conf['basic'] = $post;
  95. $res = Yii::$app->services->setting->addons->set($this->mall_id, AddonsEnum::ADDONS_NAME_REAL_AUTH, $conf);
  96. if(!$res){
  97. throw new Exception('保存失败');
  98. }
  99. return $this->success('保存成功');
  100. } catch (Exception $e) {
  101. return $this->error($e->getMessage());
  102. }
  103. }
  104. }
  105. }