mirror of
https://gitlink.org.cn/Gitlink/forgeplus.git
synced 2026-05-02 19:30:48 +08:00
init project
This commit is contained in:
2
app/jobs/application_job.rb
Normal file
2
app/jobs/application_job.rb
Normal file
@@ -0,0 +1,2 @@
|
||||
class ApplicationJob < ActiveJob::Base
|
||||
end
|
||||
31
app/jobs/apply_join_project_notify_job.rb
Normal file
31
app/jobs/apply_join_project_notify_job.rb
Normal file
@@ -0,0 +1,31 @@
|
||||
# 申请成为 管理员、开发者 加入项目 消息通知
|
||||
class ApplyJoinProjectNotifyJob < ApplicationJob
|
||||
queue_as :notify
|
||||
|
||||
def perform(user_id, project_id, role)
|
||||
user = User.find_by(id: user_id)
|
||||
project = Project.find_by(id: project_id)
|
||||
return if user.blank? || project.blank?
|
||||
|
||||
attrs = %i[user_id trigger_user_id container_id container_type status
|
||||
belong_container_id belong_container_type tiding_type extra created_at updated_at]
|
||||
|
||||
same_attrs = {
|
||||
trigger_user_id: user.id, status: 0, tiding_type: 'Apply', extra: role,
|
||||
container_id: project.id, container_type: 'JoinProject',
|
||||
belong_container_id: project.id, belong_container_type: 'Project'
|
||||
}
|
||||
|
||||
# 报告人员加入时消息为系统通知消息
|
||||
if role == 5
|
||||
same_attrs[:container_type] = 'ReporterJoinProject'
|
||||
same_attrs[:tiding_type] = 'System'
|
||||
end
|
||||
|
||||
Tiding.bulk_insert(*attrs) do |worker|
|
||||
project.manager_members.each do |manager|
|
||||
worker.add(same_attrs.merge(user_id: manager.user_id))
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
23
app/jobs/apply_teacher_role_join_course_notify_job.rb
Normal file
23
app/jobs/apply_teacher_role_join_course_notify_job.rb
Normal file
@@ -0,0 +1,23 @@
|
||||
# 申请成为老师加入课堂 消息通知
|
||||
class ApplyTeacherRoleJoinCourseNotifyJob < ApplicationJob
|
||||
queue_as :notify
|
||||
|
||||
def perform(user_id, course_id, role)
|
||||
user = User.find_by(id: user_id)
|
||||
course = Course.find_by(id: course_id)
|
||||
return if user.blank? || course.blank?
|
||||
|
||||
attrs = %i[user_id trigger_user_id container_id container_type belong_container_id
|
||||
belong_container_type tiding_type status extra created_at updated_at]
|
||||
|
||||
same_attrs = {
|
||||
trigger_user_id: user.id, container_id: course.id, container_type: 'JoinCourse', status: 0,
|
||||
belong_container_id: course.id, belong_container_type: 'Course', tiding_type: 'Apply', extra: role
|
||||
}
|
||||
Tiding.bulk_insert(*attrs) do |worker|
|
||||
course.teachers_without_assistant_professor.each do |teacher|
|
||||
worker.add same_attrs.merge(user_id: teacher.user_id)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
23
app/jobs/batch_publish_video_notify_job.rb
Normal file
23
app/jobs/batch_publish_video_notify_job.rb
Normal file
@@ -0,0 +1,23 @@
|
||||
# 批量发布视频 消息任务
|
||||
class BatchPublishVideoNotifyJob < ApplicationJob
|
||||
queue_as :notify
|
||||
|
||||
def perform(user_id, video_ids)
|
||||
user = User.find_by(id: user_id)
|
||||
return if user.blank?
|
||||
|
||||
attrs = %i[user_id trigger_user_id container_id container_type tiding_type status created_at updated_at]
|
||||
|
||||
same_attrs = {
|
||||
user_id: 1,
|
||||
trigger_user_id: user.id,
|
||||
container_type: 'Video',
|
||||
tiding_type: 'Apply', status: 0
|
||||
}
|
||||
Tiding.bulk_insert(*attrs) do |worker|
|
||||
user.videos.where(id: video_ids).each do |video|
|
||||
worker.add same_attrs.merge(container_id: video.id)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
26
app/jobs/commit_exercsie_notify_job_job.rb
Normal file
26
app/jobs/commit_exercsie_notify_job_job.rb
Normal file
@@ -0,0 +1,26 @@
|
||||
class CommitExercsieNotifyJobJob < ApplicationJob
|
||||
queue_as :notify
|
||||
|
||||
def perform(exercise_id, user_id)
|
||||
exercise = Exercise.find_by(id: exercise_id)
|
||||
user = User.find_by(id: user_id)
|
||||
return if [exercise, user].any?(&:blank?)
|
||||
course = exercise.course
|
||||
|
||||
attrs = %i[user_id trigger_user_id container_id container_type parent_container_id parent_container_type
|
||||
belong_container_id belong_container_type tiding_type viewed status created_at updated_at]
|
||||
|
||||
same_attrs = {
|
||||
trigger_user_id: user.id,
|
||||
container_id: exercise.id, container_type: 'Exercise',
|
||||
parent_container_id: exercise.id, parent_container_type: 'CommitExercise',
|
||||
belong_container_id: course.id, belong_container_type: 'Course',
|
||||
tiding_type: 'Exercise', viewed: 0, status: 0
|
||||
}
|
||||
Tiding.bulk_insert(*attrs) do |worker|
|
||||
course.course_member(user).member_teachers.each do |teacher|
|
||||
worker.add same_attrs.merge(user_id: teacher.user_id)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
26
app/jobs/commit_poll_notify_job_job.rb
Normal file
26
app/jobs/commit_poll_notify_job_job.rb
Normal file
@@ -0,0 +1,26 @@
|
||||
class CommitPollNotifyJobJob < ApplicationJob
|
||||
queue_as :notify
|
||||
|
||||
def perform(poll_id, user_id)
|
||||
poll = Poll.find_by(id: poll_id)
|
||||
user = User.find_by(id: user_id)
|
||||
return if [poll, user].any?(&:blank?)
|
||||
course = poll.course
|
||||
|
||||
attrs = %i[user_id trigger_user_id container_id container_type parent_container_id parent_container_type
|
||||
belong_container_id belong_container_type tiding_type viewed status created_at updated_at]
|
||||
|
||||
same_attrs = {
|
||||
trigger_user_id: user.id,
|
||||
container_id: poll.id, container_type: 'Poll',
|
||||
parent_container_id: poll.id, parent_container_type: 'CommitPoll',
|
||||
belong_container_id: course.id, belong_container_type: 'Course',
|
||||
tiding_type: 'Poll', viewed: 0, status: 0
|
||||
}
|
||||
Tiding.bulk_insert(*attrs) do |worker|
|
||||
course.course_member(user).member_teachers.each do |teacher|
|
||||
worker.add same_attrs.merge(user_id: teacher.user_id)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
67
app/jobs/course_add_student_create_works_job.rb
Normal file
67
app/jobs/course_add_student_create_works_job.rb
Normal file
@@ -0,0 +1,67 @@
|
||||
# 学生加入课堂时创建相关任务作品
|
||||
class CourseAddStudentCreateWorksJob < ApplicationJob
|
||||
queue_as :default
|
||||
|
||||
def perform(course_id, student_ids)
|
||||
course = Course.find_by(id: course_id)
|
||||
return if course.blank?
|
||||
|
||||
# 如果之前存在相关作品,则更新is_delete字段
|
||||
student_works = StudentWork.joins(:homework_common).where(user_id: student_ids, homework_commons: {course_id: course.id})
|
||||
student_works.update_all(is_delete: 0)
|
||||
|
||||
exercise_users = ExerciseUser.joins(:exercise).where(user_id: student_ids, exercises: {course_id: course.id})
|
||||
exercise_users.update_all(is_delete: 0)
|
||||
|
||||
poll_users = PollUser.joins(:poll).where(user_id: student_ids, polls: {course_id: course.id})
|
||||
poll_users.update_all(is_delete: 0)
|
||||
|
||||
graduation_works = course.graduation_works.where(user_id: student_ids)
|
||||
graduation_works.update_all(is_delete: 0)
|
||||
|
||||
attrs = %i[homework_common_id user_id created_at updated_at]
|
||||
|
||||
StudentWork.bulk_insert(*attrs) do |worker|
|
||||
student_ids.each do |user_id|
|
||||
same_attrs = {user_id: user_id}
|
||||
course.homework_commons.where(homework_type: %i[normal group practice]).each do |homework|
|
||||
next if StudentWork.where(user_id: user_id, homework_common_id: homework.id).any?
|
||||
worker.add same_attrs.merge(homework_common_id: homework.id)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
attrs = %i[exercise_id user_id created_at updated_at]
|
||||
ExerciseUser.bulk_insert(*attrs) do |worker|
|
||||
student_ids.each do |user_id|
|
||||
same_attrs = {user_id: user_id}
|
||||
course.exercises.each do |exercise|
|
||||
next if ExerciseUser.where(user_id: user_id, exercise_id: exercise.id).any?
|
||||
worker.add same_attrs.merge(exercise_id: exercise.id)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
attrs = %i[poll_id user_id created_at updated_at]
|
||||
PollUser.bulk_insert(*attrs) do |worker|
|
||||
student_ids.each do |user_id|
|
||||
same_attrs = {user_id: user_id}
|
||||
course.polls.each do |poll|
|
||||
next if PollUser.where(user_id: user_id, poll_id: poll.id).any?
|
||||
worker.add same_attrs.merge(poll_id: poll.id)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
attrs = %i[graduation_task_id user_id course_id created_at updated_at]
|
||||
GraduationWork.bulk_insert(*attrs) do |worker|
|
||||
student_ids.each do |user_id|
|
||||
same_attrs = {user_id: user_id, course_id: course.id}
|
||||
course.graduation_tasks.each do |task|
|
||||
next if GraduationWork.where(user_id: user_id, graduation_task_id: task.id).any?
|
||||
worker.add same_attrs.merge(graduation_task_id: task.id)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
19
app/jobs/course_delete_student_delete_works_job.rb
Normal file
19
app/jobs/course_delete_student_delete_works_job.rb
Normal file
@@ -0,0 +1,19 @@
|
||||
class CourseDeleteStudentDeleteWorksJob < ApplicationJob
|
||||
queue_as :default
|
||||
|
||||
def perform(course_id, student_ids)
|
||||
course = Course.find_by(id: course_id)
|
||||
return if course.blank?
|
||||
|
||||
student_works = StudentWork.joins(:homework_common).where(user_id: student_ids, homework_commons: {course_id: course.id})
|
||||
student_works.update_all(is_delete: 1)
|
||||
|
||||
exercise_users = ExerciseUser.joins(:exercise).where(user_id: student_ids, exercises: {course_id: course.id})
|
||||
exercise_users.update_all(is_delete: 1)
|
||||
|
||||
poll_users = PollUser.joins(:poll).where(user_id: student_ids, polls: {course_id: course.id})
|
||||
poll_users.update_all(is_delete: 1)
|
||||
|
||||
course.graduation_works.where(user_id: student_ids).update_all(is_delete: 1)
|
||||
end
|
||||
end
|
||||
22
app/jobs/course_delete_student_notify_job.rb
Normal file
22
app/jobs/course_delete_student_notify_job.rb
Normal file
@@ -0,0 +1,22 @@
|
||||
# 删除课堂用户
|
||||
class CourseDeleteStudentNotifyJob < ApplicationJob
|
||||
queue_as :notify
|
||||
|
||||
def perform(course_id, student_ids, trigger_user_id)
|
||||
course = Course.find_by(id: course_id)
|
||||
return if course.blank?
|
||||
|
||||
attrs = %i[user_id trigger_user_id container_id container_type belong_container_id
|
||||
belong_container_type tiding_type created_at updated_at]
|
||||
|
||||
same_attrs = {
|
||||
trigger_user_id: trigger_user_id, container_id: course.id, container_type: 'DeleteCourseMember',
|
||||
belong_container_id: course.id, belong_container_type: 'Course', tiding_type: 'System'
|
||||
}
|
||||
Tiding.bulk_insert(*attrs) do |worker|
|
||||
student_ids.each do |user_id|
|
||||
worker.add same_attrs.merge(user_id: user_id)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
12
app/jobs/create_diff_record_job.rb
Normal file
12
app/jobs/create_diff_record_job.rb
Normal file
@@ -0,0 +1,12 @@
|
||||
class CreateDiffRecordJob < ApplicationJob
|
||||
queue_as :default
|
||||
|
||||
def perform(user_id, obj_id, obj_klass, column_name, before, after)
|
||||
user = User.find_by(id: user_id)
|
||||
obj = obj_klass.constantize.find_by(id: obj_id)
|
||||
|
||||
return if user.blank? || obj.blank?
|
||||
|
||||
CreateDiffRecordService.call(user, obj, column_name, before, after)
|
||||
end
|
||||
end
|
||||
21
app/jobs/delete_department_notify_job.rb
Normal file
21
app/jobs/delete_department_notify_job.rb
Normal file
@@ -0,0 +1,21 @@
|
||||
# 删除部门 消息通知
|
||||
class DeleteDepartmentNotifyJob < ApplicationJob
|
||||
queue_as :notify
|
||||
|
||||
def perform(department_id, operator_id, user_ids)
|
||||
department = Department.unscoped.find_by(id: department_id)
|
||||
return if department.blank? || user_ids.blank?
|
||||
|
||||
attrs = %i[ user_id trigger_user_id container_id container_type tiding_type status created_at updated_at]
|
||||
|
||||
same_attrs = {
|
||||
trigger_user_id: operator_id, container_id: department.id, container_type: 'Department',
|
||||
status: 4, tiding_type: 'System'
|
||||
}
|
||||
Tiding.bulk_insert(*attrs) do |worker|
|
||||
user_ids.each do |user_id|
|
||||
worker.add same_attrs.merge(user_id: user_id)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
30
app/jobs/end_exercise_calculate_job.rb
Normal file
30
app/jobs/end_exercise_calculate_job.rb
Normal file
@@ -0,0 +1,30 @@
|
||||
class EndExerciseCalculateJob < ApplicationJob
|
||||
|
||||
include ExercisesHelper
|
||||
include GitHelper
|
||||
|
||||
queue_as :default
|
||||
|
||||
def perform(ex_user_ids,exercise,end_time)
|
||||
exercise_users = ExerciseUser.where(id: ex_user_ids)
|
||||
exercise_users.each do |user|
|
||||
if user.commit_status == 0 && user.start_at.present?
|
||||
objective_score = calculate_student_score(exercise,user.user,end_time.to_time)[:total_score]
|
||||
user_sub_score = user.subjective_score
|
||||
subjective_score = user_sub_score < 0.0 ? 0.0 : user_sub_score
|
||||
total_score = objective_score + subjective_score
|
||||
commit_option = {
|
||||
:status => 1,
|
||||
:commit_status => 1,
|
||||
:end_at => Time.now,
|
||||
:objective_score => objective_score,
|
||||
:score => total_score,
|
||||
:subjective_score => user_sub_score,
|
||||
:commit_method => user&.commit_method.to_i > 0 ? user&.commit_method.to_i : 4
|
||||
}
|
||||
user.update_attributes(commit_option)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
44
app/jobs/exercise_publish_notify_job.rb
Normal file
44
app/jobs/exercise_publish_notify_job.rb
Normal file
@@ -0,0 +1,44 @@
|
||||
# 试卷发布 消息通知
|
||||
class ExercisePublishNotifyJob < ApplicationJob
|
||||
queue_as :notify
|
||||
|
||||
def perform(exercise_id, group_ids)
|
||||
exercise = Exercise.find_by(id: exercise_id)
|
||||
return if exercise.blank?
|
||||
user = exercise.user
|
||||
course = exercise.course
|
||||
|
||||
if group_ids.present?
|
||||
students = course.students.where(course_group_id: group_ids)
|
||||
subquery = course.teacher_course_groups.where(course_group_id: group_ids).select(:course_member_id)
|
||||
teachers = course.teachers.where(id: subquery)
|
||||
else
|
||||
students = course.students
|
||||
teachers = course.teachers
|
||||
end
|
||||
|
||||
attrs = %i[
|
||||
user_id trigger_user_id container_id container_type parent_container_id parent_container_type
|
||||
belong_container_id belong_container_type viewed tiding_type created_at updated_at
|
||||
]
|
||||
|
||||
same_attrs = {
|
||||
trigger_user_id: user.id, container_id: exercise.id, container_type: 'Exercise',
|
||||
parent_container_id: exercise.id, parent_container_type: 'ExercisePublish',
|
||||
belong_container_id: exercise.course_id, belong_container_type: 'Course',
|
||||
viewed: 0, tiding_type: 'Exercise'
|
||||
}
|
||||
Tiding.bulk_insert(*attrs) do |worker|
|
||||
teacher_ids = teachers.pluck(:user_id)
|
||||
unless exercise.tidings.exists?(parent_container_type: 'ExercisePublish', user_id: teacher_ids)
|
||||
teacher_ids.each do |user_id|
|
||||
worker.add same_attrs.merge(user_id: user_id)
|
||||
end
|
||||
end
|
||||
|
||||
students.pluck(:user_id).each do |user_id|
|
||||
worker.add same_attrs.merge(user_id: user_id)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
17
app/jobs/get_aliyun_video_info_job.rb
Normal file
17
app/jobs/get_aliyun_video_info_job.rb
Normal file
@@ -0,0 +1,17 @@
|
||||
# 获取阿里云视频信息
|
||||
class GetAliyunVideoInfoJob < ApplicationJob
|
||||
queue_as :default
|
||||
|
||||
def perform(vod_video_id)
|
||||
video = Video.find_by(uuid: vod_video_id)
|
||||
return if video.blank? || video.vod_uploading?
|
||||
|
||||
result = AliyunVod::Service.get_play_info(video.uuid)
|
||||
cover_url = result.dig('VideoBase', 'CoverURL')
|
||||
file_url = (result.dig('PlayInfoList', 'PlayInfo') || []).first&.[]('PlayURL')
|
||||
|
||||
video.cover_url = cover_url if cover_url.present? && video.cover_url.blank?
|
||||
video.file_url = file_url if file_url.present?
|
||||
video.save!
|
||||
end
|
||||
end
|
||||
22
app/jobs/graduation_task_cross_comment_job.rb
Normal file
22
app/jobs/graduation_task_cross_comment_job.rb
Normal file
@@ -0,0 +1,22 @@
|
||||
# 毕设任务的交叉评阅分配
|
||||
class GraduationTaskCrossCommentJob < ApplicationJob
|
||||
queue_as :default
|
||||
|
||||
def perform(graduation_task_id)
|
||||
task = GraduationTask.find_by(id: graduation_task_id)
|
||||
return if task.blank?
|
||||
|
||||
task.graduation_task_group_assignations.includes(:graduation_group, :graduation_work).each do |assignation|
|
||||
graduation_group = assignation.graduation_group
|
||||
work = assignation.graduation_work
|
||||
if graduation_group.present? && work.present?
|
||||
member_ids = graduation_group.course_members.pluck(:user_id).uniq
|
||||
member_ids.each do |user_id|
|
||||
unless work.graduation_work_comment_assignations.exists?(user_id: user_id)
|
||||
work.graduation_work_comment_assignations << GraduationWorkCommentAssignation.new(user_id: user_id, graduation_task_id: task.id)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
28
app/jobs/graduation_task_publish_notify_job.rb
Normal file
28
app/jobs/graduation_task_publish_notify_job.rb
Normal file
@@ -0,0 +1,28 @@
|
||||
# 任务发布 消息通知
|
||||
class GraduationTaskPublishNotifyJob < ApplicationJob
|
||||
queue_as :notify
|
||||
|
||||
def perform(graduation_task_id)
|
||||
task = GraduationTask.find_by(id: graduation_task_id)
|
||||
return if task.blank?
|
||||
course = task.course
|
||||
return if course.blank?
|
||||
|
||||
attrs = %i[
|
||||
user_id trigger_user_id container_id container_type parent_container_id parent_container_type
|
||||
belong_container_id belong_container_type viewed tiding_type created_at updated_at
|
||||
]
|
||||
|
||||
same_attrs = {
|
||||
trigger_user_id: task.user_id, container_id: task.id, container_type: 'GraduationTask',
|
||||
parent_container_id: task.id, parent_container_type: 'TaskPublish',
|
||||
belong_container_id: task.course_id, belong_container_type: 'Course',
|
||||
viewed: 0, tiding_type: 'GraduationTask'
|
||||
}
|
||||
Tiding.bulk_insert(*attrs) do |worker|
|
||||
course.course_members.pluck(:user_id).uniq.each do |user_id|
|
||||
worker.add same_attrs.merge(user_id: user_id)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
33
app/jobs/resubmit_student_work_notify_job.rb
Normal file
33
app/jobs/resubmit_student_work_notify_job.rb
Normal file
@@ -0,0 +1,33 @@
|
||||
class ResubmitStudentWorkNotifyJob < ApplicationJob
|
||||
queue_as :notify
|
||||
|
||||
def perform(homework_id, student_ids)
|
||||
homework = HomeworkCommon.find_by(id: homework_id)
|
||||
return if homework.blank? || student_ids.blank?
|
||||
course = homework.course
|
||||
|
||||
attrs = %i[user_id trigger_user_id container_id container_type parent_container_id parent_container_type
|
||||
belong_container_id belong_container_type tiding_type viewed created_at updated_at]
|
||||
|
||||
same_attrs = {
|
||||
container_type: 'ResubmitStudentWork', parent_container_id: homework.id, parent_container_type: 'HomeworkCommon',
|
||||
belong_container_id: course.id, belong_container_type: 'Course', tiding_type: 'HomeworkCommon', viewed: 0
|
||||
}
|
||||
Tiding.bulk_insert(*attrs) do |worker|
|
||||
student_ids.each do |user_id|
|
||||
next unless User.exists?(id: user_id)
|
||||
|
||||
work = homework.student_works.find_by(user_id: user_id)
|
||||
next if work.blank?
|
||||
score_user_ids = work.student_works_scores.where.not(score: nil).where(reviewer_role: [1, 2]).pluck(user_id).uniq
|
||||
next if score_user_ids.blank?
|
||||
|
||||
attrs = same_attrs.merge(trigger_user_id: user_id, container_id: work.id)
|
||||
|
||||
score_user_ids.each do |user_id|
|
||||
worker.add attrs.merge(user_id: user_id)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
33
app/jobs/sync_trustie_job.rb
Normal file
33
app/jobs/sync_trustie_job.rb
Normal file
@@ -0,0 +1,33 @@
|
||||
require 'uri'
|
||||
require 'net/http'
|
||||
|
||||
class SyncTrustieJob < ApplicationJob
|
||||
queue_as :default
|
||||
|
||||
def perform(type, count)
|
||||
Rails.logger.info("#######_________response__sync__start__#########")
|
||||
|
||||
token = EduSetting.get('trustie_api_token')
|
||||
api_host = EduSetting.get('trustie_api_url')
|
||||
|
||||
url = "#{api_host}/api/v1/homes/sync_count"
|
||||
sync_json = {
|
||||
"token": token,
|
||||
"type": type,
|
||||
"number": count
|
||||
}
|
||||
uri = URI.parse(url)
|
||||
# http = Net::HTTP.new(uri.hostname, uri.port)
|
||||
|
||||
if api_host
|
||||
http = Net::HTTP.new(uri.hostname, uri.port)
|
||||
|
||||
if api_host.include?("https://")
|
||||
http.use_ssl = true
|
||||
end
|
||||
|
||||
response = http.send_request('PUT', uri.path, sync_json.to_json, {'Content-Type' => 'application/json'})
|
||||
Rails.logger.info("#######_________response__sync__end_____#########{response.body}")
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user