updateTextToJson.php 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. <?php
  2. namespace App\Console\Commands;
  3. use App\Models\ReferralApply;
  4. use App\Models\RuleGroup;
  5. use App\Models\UserGroup;
  6. use Illuminate\Console\Command;
  7. use Log;
  8. class updateTextToJson extends Command
  9. {
  10. protected $signature = 'updateTextToJson';
  11. protected $description = '转换原有数列至新数列';
  12. public function handle(): void
  13. {
  14. Log::info('----------------------------【数据转换】开始----------------------------');
  15. foreach (ReferralApply::all() as $referralApply) {
  16. $referralApply->link_logs = $this->convertToJson($referralApply->getRawOriginal('link_logs'));
  17. $referralApply->save();
  18. }
  19. Log::info('转换返利表完成');
  20. foreach (UserGroup::all() as $userGroup) {
  21. $userGroup->nodes = $this->convertToJson($userGroup->getRawOriginal('nodes'));
  22. $userGroup->save();
  23. }
  24. Log::info('转换用户分组表完成');
  25. foreach (RuleGroup::all() as $ruleGroup) {
  26. $ruleGroup->rules = $this->convertToJson($ruleGroup->getRawOriginal('rules'));
  27. $ruleGroup->nodes = $this->convertToJson($ruleGroup->getRawOriginal('nodes'));
  28. $ruleGroup->save();
  29. }
  30. Log::info('转换审核规则表完成');
  31. Log::info('----------------------------【数据转换】结束----------------------------');
  32. }
  33. private function convertToJson($string): array
  34. {
  35. return explode(',', $string);
  36. }
  37. }