src/Biz/Importer/ClassroomMemberImporter.php

(开头部分) 2KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

<?php

namespace Biz\Importer;

use Symfony\Component\HttpFoundation\Request;

class ClassroomMemberImporter extends Importer
{
    protected $type = 'classroom-member';

    public function import(Request $request)
    {
        $importData = $request->request->get('importData');
        $classroomId = $request->request->get('classroomId');
        $classroom = $this->getClassroomService()->getClassroom($classroomId);
        $price = $request->request->get('price');
        $remark = $request->request->get('remark', '通过批量导入添加');
        $orderData = array(
            'amount' => $price,
            'remark' => $remark,
        );

        return $this->excelDataImporting($classroom, $importData, $orderData);
    }

    protected function excelDataImporting($targetObject, $userData, $orderData)
    {
        $existsUserCount = 0;
        $successCount = 0;

        foreach ($userData as $key => $user) {
            if (!empty($user['nickname'])) {
                $user = $this->getUserService()->getUserByNickname($user['nickname']);
            } else {
                if (!empty($user['email'])) {
                    $user = $this->getUserService()->getUserByEmail($user['email']);
                } else {
                    $user = $this->getUserService()->getUserByVerifiedMobile($user['verifiedMobile']);
                }
            }

            $isClassroomStudent = $this->getClassroomService()->isClassroomStudent($targetObject['id'], $user['id']);

            $isClassroomTeacher = $this->getClassroomService()->isClassroomTeacher($targetObject['id'], $user['id']);

            if ($isClassroomStudent || $isClassroomTeacher) {
                ++$existsUserCount;
            } else {
                $info = array(
                    'price' => $orderData['amount'],
                    'remark' => empty($orderData['remark']) ? '通过批量导入添加' : $orderData['remark'],
                    'isNotify' => 1,
                );
                $this->getClassroomService()->becomeStudentWithOrder($targetObject['id'], $user['id'], $info);

                ++$successCount;
            }
        }

        return array('existsUserCount' => $existsUserCount, 'successCount' => $successCount);

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。