dev_bj
cxt 5 years ago
commit f73afb5f2f

@ -749,6 +749,7 @@ class ShixunsController < ApplicationController
@main_type = MirrorRepository.published_main_mirror @main_type = MirrorRepository.published_main_mirror
@small_type = MirrorRepository.published_small_mirror @small_type = MirrorRepository.published_small_mirror
respond_to do |format| respond_to do |format|
format.html{render :layout => 'base_edu'} format.html{render :layout => 'base_edu'}
format.json format.json
@ -817,7 +818,7 @@ class ShixunsController < ApplicationController
ShixunServiceConfig.create!(:shixun_id => @shixun.id, :mirror_repository_id => mirror) ShixunServiceConfig.create!(:shixun_id => @shixun.id, :mirror_repository_id => mirror)
end end
end end
# 自动构建版本库 #自动构建版本库
repository = Repository.new repository = Repository.new
repository.shixun = @shixun repository.shixun = @shixun
repository.type = 'Repository::Gitlab' repository.type = 'Repository::Gitlab'
@ -1168,6 +1169,8 @@ class ShixunsController < ApplicationController
@small_type = MirrorRepository.published_small_mirror @small_type = MirrorRepository.published_small_mirror
@shixun_main_mirror = @shixun.mirror_repositories.published_main_mirror.first @shixun_main_mirror = @shixun.mirror_repositories.published_main_mirror.first
# 权限 # 权限
logger.info("###########{User.current.admin?}")
logger.info("#########business:##{User.current.business?}")
@power = (@shixun.status < 2 ? true : ( User.current.admin? ? true : false)) @power = (@shixun.status < 2 ? true : ( User.current.admin? ? true : false))
# unless @repository.nil? # unless @repository.nil?
# gitlab_address = Redmine::Configuration['gitlab_address'] # gitlab_address = Redmine::Configuration['gitlab_address']

@ -273,6 +273,10 @@ class Shixun < ActiveRecord::Base
return name return name
end end
def child_mirror_ids
self.mirror_repositories.where(:main_type => 0).pluck(:id)
end
def mirror_name def mirror_name
self.mirror_repositories.map(&:type_name).blank? ? "" : self.mirror_repositories.map(&:type_name) self.mirror_repositories.map(&:type_name).blank? ? "" : self.mirror_repositories.map(&:type_name)
end end

@ -71,7 +71,7 @@
<div class="down-select" id="shixun_small_language_option" style="padding: 2px 0px"> <div class="down-select" id="shixun_small_language_option" style="padding: 2px 0px">
<% @small_type.try(:each) do |type| %> <% @small_type.try(:each) do |type| %>
<p data-shixun-value="<%= type.id %>"> <p data-shixun-value="<%= type.id %>">
<input type="checkbox" class="magic-checkbox" id="mirror_<%= type.id %>" value="<%= type.type_name %>"/> <input type="checkbox" class="magic-checkbox" id="mirror_<%= type.id %>" value="<%= type.type_name %>" <%= @shixun.child_mirror_ids.include?(type.id) ? "checked" : ""%>/>
<label style="top:0px" for="mirror_<%= type.id %>"><%= type.type_name %></label> <label style="top:0px" for="mirror_<%= type.id %>"><%= type.type_name %></label>
</p> </p>
<% end %> <% end %>
@ -294,16 +294,19 @@
</div> </div>
</div> </div>
<% end %> <% end %>
<% if User.current.admin? || User.current.business? %>
<div class="edu-back-white padding40-20 mb20"> <div class="edu-back-white padding40-20 mb20">
<p class="color-grey-6 font-16 mb30">服务配置</p> <p class="color-grey-6 font-16 mb30">服务配置</p>
<% @shixun.shixun_service_configs.each do |config| %> <% @shixun.shixun_service_configs.each do |config| %>
<div id="<%= config.mirror_repository.try(:id) %>" >
<p class="color-grey-6 font-16 mt30" id="shixun_scenario_type_name"><%= config.mirror_repository.try(:type_name) %></p> <p class="color-grey-6 font-16 mt30" id="shixun_scenario_type_name"><%= config.mirror_repository.try(:type_name) %></p>
<input type="hidden" name="mirror_id[]" id="shixun_scenario_type_name_id" value="<%= config.mirror_repository.try(:id) %>'"> <input type="hidden" name="mirror_id[]" id="shixun_scenario_type_name_id" value="<%= config.mirror_repository.try(:id) %>">
<div class="clearfix mb5"> <div class="clearfix mb5">
<label class="panel-form-label fl">CPU(核)</label> <label class="panel-form-label fl">CPU(核)</label>
<div class="pr fl with80 status_con"> <div class="pr fl with80 status_con">
<input type="text" name="cpu_limit[]" value="<%= config.cpu_limit %>" class="panel-box-sizing task-form-100 task-height-40" <input type="text" <%= User.current.admin? ? "" : "readonly" %> name="cpu_limit[]" value="<%= config.cpu_limit %>" class="panel-box-sizing task-form-100 task-height-40"
placeholder="请输入类别名称"/> placeholder="请输入类别名称"/>
</div> </div>
<div class="cl"></div> <div class="cl"></div>
@ -311,7 +314,7 @@
<div class="clearfix mb5"> <div class="clearfix mb5">
<label class="panel-form-label fl">最低CPU(核)</label> <label class="panel-form-label fl">最低CPU(核)</label>
<div class="pr fl with80 status_con"> <div class="pr fl with80 status_con">
<input type="text" name="lower_cpu_limit[]" value="<%= config.lower_cpu_limit %>" class="panel-box-sizing task-form-100 task-height-40" <input type="text" name="lower_cpu_limit[]" <%= User.current.admin? ? "" : "readonly" %> value="<%= config.lower_cpu_limit %>" class="panel-box-sizing task-form-100 task-height-40"
placeholder="请输入类别名称"/> placeholder="请输入类别名称"/>
</div> </div>
<div class="cl"></div> <div class="cl"></div>
@ -319,7 +322,7 @@
<div class="clearfix mb5"> <div class="clearfix mb5">
<label class="panel-form-label fl">内存限制(M)</label> <label class="panel-form-label fl">内存限制(M)</label>
<div class="pr fl with80 status_con"> <div class="pr fl with80 status_con">
<input type="text" name="memory_limit[]" value="<%= config.memory_limit %>" class="panel-box-sizing task-form-100 task-height-40" <input type="text" name="memory_limit[]" <%= User.current.admin? ? "" : "readonly" %> value="<%= config.memory_limit %>" class="panel-box-sizing task-form-100 task-height-40"
placeholder="请输入类别名称"/> placeholder="请输入类别名称"/>
</div> </div>
<div class="cl"></div> <div class="cl"></div>
@ -327,49 +330,50 @@
<div class="clearfix mb5"> <div class="clearfix mb5">
<label class="panel-form-label fl">内存要求(M)</label> <label class="panel-form-label fl">内存要求(M)</label>
<div class="pr fl with20 status_con"> <div class="pr fl with20 status_con">
<input type="text" name="request_limit[]" value="<%= config.request_limit %>" class="panel-box-sizing task-form-100 task-height-40" <input type="text" name="request_limit[]" <%= User.current.admin? ? "" : "readonly" %> value="<%= config.request_limit %>" class="panel-box-sizing task-form-100 task-height-40"
placeholder="请输入类别名称"/> placeholder="请输入类别名称"/>
</div> </div>
<label class="panel-form-label fl" style="width: 48%">温馨提示纯编程类型实训建议使用默认值对于大数据等建议使用最大内存的30%</label> <label class="panel-form-label fl" style="width: 48%">温馨提示纯编程类型实训建议使用默认值对于大数据等建议使用最大内存的30%</label>
<div class="cl"></div> <div class="cl"></div>
</div> </div>
</div>
<!-- <div class="clearfix mb5">--> <!-- <div class="clearfix mb5">-->
<!-- <label class="panel-form-label fl">磁盘限制(K)</label>--> <!-- <label class="panel-form-label fl">磁盘限制(K)</label>-->
<!-- <div class="pr fl with80 status_con">--> <!-- <div class="pr fl with80 status_con">-->
<!-- <input type="text" name="resource_limit[]" value="<%#= config.resource_limit %>" class="panel-box-sizing task-form-100 task-height-40"--> <!-- <input type="text" name="resource_limit[]" value="<%#= config.resource_limit %>" class="panel-box-sizing task-form-100 task-height-40"-->
<!-- placeholder="请输入类别名称"/>--> <!-- placeholder="请输入类别名称"/>-->
<!-- </div>--> <!-- </div>-->
<!-- <div class="cl"></div>--> <!-- <div class="cl"></div>-->
<!-- </div>--> <!-- </div>-->
<% end %> <% end %>
<div id='result'></div> <div id='result'></div>
</div> </div>
<% end %>
<div class="clearfix mt30"> <div class="clearfix mt30">
<a href="javascript:void(0)" class="defalutSubmitbtn fl mr20" onclick="submit_edit_shixun(<%= @shixun.id %>);">保存</a> <a href="javascript:void(0)" class="defalutSubmitbtn fl mr20" onclick="submit_edit_shixun(<%= @shixun.id %>);">保存</a>
<%= link_to "取消", settings_shixun_path(@shixun), :class => "defalutCancelbtn fl" %> <%= link_to "取消", settings_shixun_path(@shixun), :class => "defalutCancelbtn fl" %>
</div> </div>
<% end %> <% end %>
</div> </div>
<script id="t:edit-setting-list" type="text/html"> <script id="t:edit-setting-list" type="text/html">
<!if(list.length>0) { !> <!if(list.length>0) { !>
<!for(var i=0;i<list.length;i++){!> <!for(var i=0;i
<list.length
;i++){!>
<div id=<!=list[i]!>>
<p class="color-grey-6 font-16 mt30" id="shixun_scenario_type_name"> <p class="color-grey-6 font-16 mt30" id="shixun_scenario_type_name">
<!=listname[i]!> <!=listname[i]!>
</p> </p>
<input type="hidden" name="mirror_id[]" value=<!=list[i]!> > <input type="hidden" name="mirror_id[]" value=<!=list[i]!>>
<div class="clearfix mb5"> <div class="clearfix mb5">
<label class="panel-form-label fl">CPU(核)</label> <label class="panel-form-label fl">CPU(核)</label>
<div class="pr fl with80 status_con"> <div class="pr fl with80 status_con">
<input type="text" name="cpu_limit[]" value="1" class="panel-box-sizing task-form-100 task-height-40" <input type="text" name="cpu_limit[]" <%= User.current.admin? ? "" : "readonly" %> value="1" class="panel-box-sizing task-form-100 task-height-40"
placeholder="请输入类别名称"/> placeholder="请输入类别名称"/>
</div> </div>
<div class="cl"></div> <div class="cl"></div>
@ -377,7 +381,7 @@
<div class="clearfix mb5"> <div class="clearfix mb5">
<label class="panel-form-label fl">最低CPU(核)</label> <label class="panel-form-label fl">最低CPU(核)</label>
<div class="pr fl with80 status_con"> <div class="pr fl with80 status_con">
<input type="text" name="lower_cpu_limit[]" value="0.1" class="panel-box-sizing task-form-100 task-height-40" <input type="text" name="lower_cpu_limit[]" <%= User.current.admin? ? "" : "readonly" %> value="0.1" class="panel-box-sizing task-form-100 task-height-40"
placeholder="请输入类别名称"/> placeholder="请输入类别名称"/>
</div> </div>
<div class="cl"></div> <div class="cl"></div>
@ -385,7 +389,7 @@
<div class="clearfix mb5"> <div class="clearfix mb5">
<label class="panel-form-label fl">内存限制(M)</label> <label class="panel-form-label fl">内存限制(M)</label>
<div class="pr fl with80 status_con"> <div class="pr fl with80 status_con">
<input type="text" name="memory_limit[]" value="1024" class="panel-box-sizing task-form-100 task-height-40" <input type="text" name="memory_limit[]" <%= User.current.admin? ? "" : "readonly" %> value="1024" class="panel-box-sizing task-form-100 task-height-40"
placeholder="请输入类别名称"/> placeholder="请输入类别名称"/>
</div> </div>
<div class="cl"></div> <div class="cl"></div>
@ -393,20 +397,20 @@
<div class="clearfix mb5"> <div class="clearfix mb5">
<label class="panel-form-label fl">内存要求(M)</label> <label class="panel-form-label fl">内存要求(M)</label>
<div class="pr fl with20 status_con"> <div class="pr fl with20 status_con">
<input type="text" name="request_limit[]" value="10" class="panel-box-sizing task-form-100 task-height-40" <input type="text" name="request_limit[]" <%= User.current.admin? ? "" : "readonly" %> value="10" class="panel-box-sizing task-form-100 task-height-40"
placeholder="请输入类别名称"/> placeholder="请输入类别名称"/>
</div> </div>
<label class="panel-form-label fl" style="width: 48%">温馨提示纯编程类型实训建议使用默认值对于大数据等建议使用最大内存的30%</label> <label class="panel-form-label fl" style="width: 48%">温馨提示纯编程类型实训建议使用默认值对于大数据等建议使用最大内存的30%</label>
<div class="cl"></div> <div class="cl"></div>
</div> </div>
</div>
<!}!> <!}!>
<!}else{!><!}!> <!}else{!><!}!>
</script> </script>
<script> <script>
//配置-信息提交 //配置-信息提交
function submit_edit_shixun(id) { function submit_edit_shixun(id) {
if (regex_shixun_name() && regex_public_unit() && regex_tech_platform()) { if (regex_shixun_name() && regex_public_unit() && regex_tech_platform()) {
@ -510,30 +514,38 @@
}, function () { }, function () {
$(this).find(".down-select").hide(); $(this).find(".down-select").hide();
}); });
$("[select-more] .down-select p input").bind("click", function (){ $("[select-more] .down-select p input").bind("click", function () {
var bt=baidu.template; var bt = baidu.template;
bt.LEFT_DELIMITER='<!'; bt.LEFT_DELIMITER = '<!';
bt.RIGHT_DELIMITER='!>'; bt.RIGHT_DELIMITER = '!>';
var all = $(this).parents(".down-select"); var all = $(this).parents(".down-select");
var arr = ""; var arr = "";
var arrs=[]; var arrs = [];
var idarr = []; var idarr = [];
var noidarr=[];
for (var i = 0; i < all.find("input").length; i++) { for (var i = 0; i < all.find("input").length; i++) {
if (all.find("input").eq(i).is(':checked')) { if (all.find("input").eq(i).is(':checked')) {
arr += ";" + (all.find("input").eq(i).attr("value")); arr += ";" + (all.find("input").eq(i).attr("value"));
arrs.push(all.find("input").eq(i).attr("value")) arrs.push(all.find("input").eq(i).attr("value"))
idarr.push(all.find("input").eq(i).parents("p").attr("data-shixun-value")); idarr.push(all.find("input").eq(i).parents("p").attr("data-shixun-value"));
}else{
noidarr.push(all.find("input").eq(i).parents("p").attr("data-shixun-value"));
} }
} }
var data={
"listname":arrs, for(var i=0; i<noidarr.length; i++){
"list":idarr $("#"+noidarr[i]).remove();
}
var data = {
"listname": arrs,
"list": idarr,
"admin":<%= User.current.admin? %>
}; };
debugger
var htmlidarr=bt('t:edit-setting-list',data); var htmlidarr = bt('t:edit-setting-list', data);
document.getElementById('result').innerHTML=htmlidarr; document.getElementById('result').innerHTML = htmlidarr;
$("input[name='small_type']").val(idarr); $("input[name='small_type']").val(idarr);
$(this).parents().prev("input").val(arr.substring(1)); $(this).parents().prev("input").val(arr.substring(1));
//$(this).parents(".down-select").hide(); //$(this).parents(".down-select").hide();
@ -694,4 +706,4 @@
}); });
script_Codemirror.setSize("auto", "600px"); script_Codemirror.setSize("auto", "600px");
// 非管理员只能查看 // 非管理员只能查看
</script> </script>
Loading…
Cancel
Save