This commit is contained in:
chenjing
2023-06-13 15:30:16 +08:00
parent e90c79486a
commit cfaa5301ea
78 changed files with 682 additions and 163 deletions

View File

@@ -49,7 +49,7 @@ class Admins::MessageTemplatesController < Admins::BaseController
def message_template_params
# type = @message_template.present? ? @message_template.type : "MessageTemplate::CustomTip"
# params.require(type.split("::").join("_").underscore.to_sym).permit!
params.require(:message_template).permit!
params.require(:message_template_custom_tip).permit!
end
def get_template

View File

@@ -9,6 +9,19 @@ class Admins::OrganizationsController < Admins::BaseController
@orgs = paginate orgs
end
def open_cla
@org = Organization.find(params[:id])
@org.open_cla!
render_ok
end
def close_cla
@org = Organization.find(params[:id])
@org.close_cla!
render_ok
end
def show
end

View File

@@ -0,0 +1,63 @@
class Organizations::ClasController < Organizations::BaseController
before_action :load_organization
before_action :load_cla, only: [:show, :update, :destroy]
def index
@cla = @organization.cla
end
def show
end
def create
tip_exception("您的组织还未拥有创建CLA权限请联系管理员") if @organization.cla == false
ActiveRecord::Base.transaction do
if @organization.cla.present?
return tip_exception("组织已存在CLA")
else
Organizations::CreateClaForm.new(cla_params).validate!
@cla = Cla.build(cla_params)
end
end
rescue Exception => e
uid_logger_error(e.message)
tip_exception(e.message)
end
def update
ActiveRecord::Base.transaction do
Organizations::CreateClaForm.new(cla_params).validate!
@cla.update(cla_params)
end
rescue Exception => e
uid_logger_error(e.message)
tip_exception(e.message)
end
def destroy
tip_exception("组织CLA已被签署无法删除") if @cla.user_clas.size > 0
ActiveRecord::Base.transaction do
@cla.destroy!
end
render_ok
rescue Exception => e
uid_logger_error(e.message)
tip_exception(e.message)
end
private
def cla_params
params.permit(:name, :key, :content, :organization_id, :pr_need)
end
def load_organization
@organization = Organization.find_by(login: params[:organization_id]) || Organization.find_by(id: params[:organization_id])
return render_not_found("组织不存在") if @organization.nil?
return render_forbidden("没有查看组织的权限") if org_limited_condition || org_privacy_condition
end
def load_cla
@cla = Cla.find_by!(organization:params[:organization_id], key: params[:id])
end
end

View File

@@ -0,0 +1,22 @@
class Users::ClasController < Users::BaseController
def index
@user_clas = UserCla.where(user: @_observed_user)
end
def create
tip_exception("已签署过该组织CLA!") if @_observed_user.user_clas.where(cla_id: params[:cla_id]).size > 0
ActiveRecord::Base.transaction do
Users::UserClaForm.new(user_cla_params).validate!
@user_cla = UserCla.build(user_cla_params, @_observed_user.id)
end
rescue Exception => e
uid_logger_error(e.message)
tip_exception(e.message)
end
private
def user_cla_params
params.permit(:email, :real_name, :cla_id)
end
end