public function userRegister($email, $userName) { $start_time = '2015-01-01 00:00:00'; $end_time = '2016-03-04 00:00:00'; $createDate = $this->rand_time($start_time, $end_time); $userId = md5($email . $createDate); $user = new User(); $user->user_id = $userId; $user->user_email = $email; $user->user_password = md5('123456'); $user->user_name = $userName; $user->create_date = $createDate; $tran = \Yii::$app->db->beginTransaction(); try { if ($user->save()) { $disk = new Disk(); $disk->disk_id = md5($userId . $createDate); //创建用户空间 $disk->user_id = $userId; $disk->capacity = 21474836480; //20GB $disk->available_size = 21474836480; $disk->create_date = $createDate; if ($disk->save()) { //初始化用户跟目录 $fileRecord = new FileRecord(); $fileRecord->f_record_id = $userId; $fileRecord->f_record_type = '2'; //f_record_type:2,目录类型 $fileRecord->file_id = '0'; //目录类型文件id为0 $fileRecord->user_id = $userId; $fileRecord->file_name = '我的网盘'; $fileRecord->extension = ''; $fileRecord->file_type = 'folder'; $fileRecord->file_size = 0; $fileRecord->parent_id = '0'; //跟目录上级目录为0 $fileRecord->upload_date = $createDate; $fileRecord->state = '0'; //记录状态0为正常 if ($fileRecord->save()) { $tran->commit(); $_SESSION['user'] = $user; return 'success'; } } } } catch (Exception $e) { $tran->rollBack(); } }
public function pasteFile($record_id, $parent_id) { $file = FileRecord::findOne(['f_record_id' => $record_id, 'state' => '0']); $date = date('Y-m-d H:i:s'); $newRecord = new FileRecord(); $newRecord->f_record_id = md5($file->f_record_id . $date); $newRecord->f_record_type = $file->f_record_type; $newRecord->file_id = $file->file_id; $newRecord->user_id = $file->user_id; $newRecord->file_name = $file->file_name; $newRecord->extension = $file->extension; $newRecord->file_type = $file->file_type; $newRecord->file_size = $file->file_size; $newRecord->parent_id = $parent_id; $newRecord->upload_date = $date; $newRecord->state = $file->state; if ($newRecord->save()) { return; } else { throw new Exception('FileRecord error'); } }