Browse Source

修复:混合查询字段编码集更改以及gitea service缺失

pull/342/head
yystopf 3 years ago
parent
commit
2600eacb34
3 changed files with 85 additions and 0 deletions
  1. +40
    -0
      app/services/gitea/commit/diff_service.rb
  2. +39
    -0
      app/services/gitea/commit/info_service.rb
  3. +6
    -0
      db/migrate/20230309080338_change_user_mixin_field_collate.rb

+ 40
- 0
app/services/gitea/commit/diff_service.rb View File

@@ -0,0 +1,40 @@
# get the diff info for the commit
class Gitea::Commit::DiffService < Gitea::ClientService
attr_reader :owner, :repo, :sha, :token

# GET /repos/{owner}/{repo}/commits/{sha}/diff
# owner: 用户
# repo: 仓库名称/标识
# sha: commit唯一标识
# eg:
# Gitea::Commit::DiffService.call('jasder', 'repo_identifier', 'sha value')
def initialize(owner, repo, sha, token=nil)
@owner = owner
@repo = repo
@sha = sha
@token = token
end

def call
response = get(url, params)
render_result(response)
end

private
def params
Hash.new.merge(token: token)
end

def url
"/repos/#{owner}/#{repo}/commits/#{sha}/diff".freeze
end

def render_result(response)
case response.status
when 200
JSON.parse(response.body)
else
nil
end
end
end

+ 39
- 0
app/services/gitea/commit/info_service.rb View File

@@ -0,0 +1,39 @@
class Gitea::Commit::InfoService < Gitea::ClientService
attr_reader :owner, :repo, :sha, :token

# GET /repos/{owner}/{repo}/commits/{sha}/diff
# owner: 用户
# repo: 仓库名称/标识
# sha: commit唯一标识
# eg:
# Gitea::Commit::InfoService.call('jasder', 'repo_identifier', 'sha value', token='gitea token')
def initialize(owner, repo, sha, token=nil)
@owner = owner
@repo = repo
@sha = sha
@token = token
end

def call
response = get(url, params)
render_result(response)
end

private
def params
Hash.new.merge(token: token)
end

def url
"/repos/#{owner}/#{repo}/git/commits/#{sha}".freeze
end

def render_result(response)
case response.status
when 200
JSON.parse(response.body)
else
nil
end
end
end

+ 6
- 0
db/migrate/20230309080338_change_user_mixin_field_collate.rb View File

@@ -0,0 +1,6 @@
class ChangeUserMixinFieldCollate < ActiveRecord::Migration[5.2]
def change
execute("ALTER TABLE `users` MODIFY `login` VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;")
execute("ALTER TABLE `users` MODIFY `mail` VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;")
end
end

Loading…
Cancel
Save