This commit is contained in:
XXAY
2021-09-24 18:15:01 +08:00
parent 8908b88284
commit 5e7fb8f896
10 changed files with 596 additions and 166 deletions
+122
View File
@@ -123,6 +123,7 @@
var form = layui.form;
var url_up = "{{ url }}"
var upload = layui.upload
var element = layui.element
// 页面跳转加载函数
@@ -164,6 +165,7 @@
temp = $('#main_show')
temp.empty()
temp.append(String.raw`{% include 'tools/Basics.html' %}`)
basics_run()
form.render();
}
@@ -172,6 +174,7 @@
temp = $('#main_show')
temp.empty()
temp.append(String.raw`{% include 'tools/pfam.html' %}`)
pfam_run()
form.render();
@@ -183,6 +186,7 @@
temp = $('#main_show')
temp.empty()
temp.append(String.raw`{% include 'tools/Differential_expression_analysis.html' %}`)
Differential_expression_analysis_run()
form.render();
}
@@ -338,6 +342,124 @@
;
})
}
function pfam_run() {
layui.use(['upload'], function () {
var $ = layui.jquery
, layer = layui.layer;
upload.render({
elem: '#select_pfam'
, url: url_up + '/tools/' + "pfam"
, auto: false
, accept: 'file'
, data: {
csrfmiddlewaretoken: '{{ csrf_token }}',
b_dom: document.getElementById("b_dom").value,
b_seq: document.getElementById("b_seq").value,
e_dom: document.getElementById("e_dom").value,
e_seq: document.getElementById("e_seq").value,
align: document.getElementById("align").value,
clan_overlap: document.getElementById("clan_overlap").value,
}
, before: function (obj) { //obj参数包含的信息,跟 choose回调完全一致,可参见上文。
layer.load(1); //上传loading
}
, bindAction: '#pfam_run'
, done: function (res, index) {
layer.closeAll('loading'); //关闭loading
ab = '<a href= "' + url_up + '/chart/down?file_id=' + res.id + "&file_downlode_type=txt&ee=1" + '">' + ' <button type="button" class="layui-btn">downlode</button></a>'
$("#down").append(ab)
}
, error: function (index, upload) {
layer.closeAll('loading'); //关闭loading
}
})
;
})
}
function Differential_expression_analysis_run() {
var uploadListIns = upload.render({
elem: '#testList'
, elemList: $('#demoList') //列表元素对象
, url: url_up + '/tools/' + "Differential_expression_analysis" //此处用的是第三方的 http 请求演示,实际使用时改成您自己的上传接口即可。
, accept: 'file'
, multiple: true
, number: 10
, auto: false
, bindAction: '#testListAction'
, choose: function (obj) {
var that = this;
var files = this.files = obj.pushFile(); //将每次选择的文件追加到文件队列
//读取本地文件
obj.preview(function (index, file, result) {
var tr = $(['<tr id="upload-' + index + '">'
, '<td>' + file.name + '</td>'
, '<td>' + (file.size / 1014).toFixed(1) + 'kb</td>'
, '<td><div class="layui-progress" lay-filter="progress-demo-' + index + '"><div class="layui-progress-bar" lay-percent=""></div></div></td>'
, '<td>'
, '<button class="layui-btn layui-btn-xs demo-reload layui-hide">Re</button>'
, '<button class="layui-btn layui-btn-xs layui-btn-danger demo-delete">del</button>'
, '</td>'
, '</tr>'].join(''));
//单个重传
tr.find('.demo-reload').on('click', function () {
obj.upload(index, file);
});
//删除
tr.find('.demo-delete').on('click', function () {
delete files[index]; //删除对应的文件
tr.remove();
uploadListIns.config.elem.next()[0].value = ''; //清空 input file 值,以免删除后出现同名文件不可选
});
that.elemList.append(tr);
element.render('progress'); //渲染新加的进度条组件
});
}
, data: {
csrfmiddlewaretoken: '{{ csrf_token }}',
{#b_dom: document.getElementById("b_dom").value,#}
{#b_seq: document.getElementById("b_seq").value,#}
{#e_dom: document.getElementById("e_dom").value,#}
{#e_seq: document.getElementById("e_seq").value,#}
{#align: document.getElementById("align").value,#}
{#clan_overlap: document.getElementById("clan_overlap").value,#}
}
, done: function (res, index, upload) { //成功的回调
var that = this;
//if(res.code == 0){ //上传成功
var tr = that.elemList.find('tr#upload-' + index)
, tds = tr.children();
tds.eq(3).html(''); //清空操作
delete this.files[index]; //删除文件队列已经上传成功的文件
return;
//}
this.error(index, upload);
}
, allDone: function (obj) { //多文件上传完毕后的状态回调
console.log(obj)
}
, error: function (index, upload) { //错误回调
var that = this;
var tr = that.elemList.find('tr#upload-' + index)
, tds = tr.children();
tds.eq(3).find('.demo-reload').removeClass('layui-hide'); //显示重传
}
, progress: function (n, elem, e, index) {
element.progress('progress-demo-' + index, n + '%');
}
});
}
</script>
+17 -17
View File
@@ -9,7 +9,7 @@
<ul class="layui-tab-title">
{# 选项卡#}
<li>orf</li>
<li>Basics</li>
</ul>
<div class="layui-tab-content" style="height: 100px;">
<form class="layui-form" action="">
@@ -69,22 +69,22 @@
</div> <!-- 开关-默认关 -->
<div class="layui-form-item">
<label class="layui-form-label">Codon preference</label>
<div class="layui-input-block">
<input type="checkbox" id="Codon_preference" name="close" lay-skin="switch"
lay-text="ON|OFF">
</div>
</div> <!-- 开关-默认关 -->
<div class="layui-form-item">
<label class="layui-form-label">Codon frequency</label>
<div class="layui-input-block">
<input type="checkbox" id="Codon_frequency" name="close" lay-skin="switch"
lay-text="ON|OFF">
</div>
</div> <!-- 开关-默认关 -->
{# <div class="layui-form-item">#}
{# <label class="layui-form-label">Codon preference</label>#}
{# <div class="layui-input-block">#}
{# <input type="checkbox" id="Codon_preference" name="close" lay-skin="switch"#}
{# lay-text="ON|OFF">#}
{# </div>#}
{# </div> <!-- 开关-默认关 -->#}
{##}
{##}
{# <div class="layui-form-item">#}
{# <label class="layui-form-label">Codon frequency</label>#}
{# <div class="layui-input-block">#}
{# <input type="checkbox" id="Codon_frequency" name="close" lay-skin="switch"#}
{# lay-text="ON|OFF">#}
{# </div>#}
{# </div> <!-- 开关-默认关 -->#}
<div class="layui-form-item">
@@ -1,52 +1,84 @@
<div class='layui-row' style="margin: 50px">
<div class='layui-col-md9'>
<h1 style="font-size: 50px">Differential expression analysis</h1>
</div>
<div class="layui-bg-gray" style="float: left; padding: 30px; width:45%">
</div>
<div class="layui-panel">
<div style="padding: 20px 30px;">
<div class='layui-row' style="margin-top: 80px; margin-left: 80px">
{# 选项#}
<div class="layui-tab layui-tab-brief " lay-filter="docDemoTabBrief" style="width: 100%; height: 1000px">
<ul class="layui-tab-title">
<div class='layui-col-md9 layui-form-pane'>
<fieldset class="layui-elem-field layui-field-title" style="margin-top: 30px;">
<legend>counts文件</legend>
</fieldset>
<div class="layui-btn-container" style="display: inline-block">
<button type="button" class="layui-btn layui-btn-normal" id="select_file">选择文件</button>
{# 选项卡#}
<li>Differential expression analysis</li>
</ul>
<div class="layui-tab-content" style="height: 100px;">
<form class="layui-form" action="">
<div class="layui-upload">
<button type="button" class="layui-btn layui-btn-normal" id="testList">选择多文件</button>
<div class="layui-upload-list" style="max-width: 1000px;">
<table class="layui-table">
<colgroup>
<col>
<col width="150">
<col width="260">
<col width="150">
</colgroup>
<thead>
<tr>
<th>name</th>
<th>size</th>
<th>Upload progress</th>
<th>operation</th>
</tr>
</thead>
<tbody id="demoList"></tbody>
</table>
</div>
<div id="down">
<button type="button" class="layui-btn" id="testListAction">run</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="layui-bg-gray" style="float: left; padding: 30px; width:45%">
<div class="layui-panel">
<div style="padding: 20px 30px;">
<div class="layui-tab layui-tab-brief " lay-filter="docDemoTabBrief" style="width: 100%; height: 1000px">
<ul class="layui-tab-title">
<li class="layui-this">function</li>
</ul>
<div class="layui-tab-content">
<div class="layui-tab-item layui-show">
<div style="margin-left: 30px;">
<p style="font-size: 20px">
Group file suffix is group<br>
The suffix of the statistics file is con<br>
The suffix of the comparison file is TXT<br>
</p>
</div>
</div>
</div>
</div>
<div class='layui-row' style="margin-left: 80px">
<div class='layui-col-md9'>
<fieldset class="layui-elem-field layui-field-title" style="margin-top: 30px;">
<legend>分组文件</legend>
</fieldset>
<div class="layui-btn-container">
<button type="button" class="layui-btn layui-btn-normal" id="select_file">选择文件</button>
</div>
</div>
</div>
<div class='layui-row' style="margin-left: 80px">
<div class='layui-col-md9'>
<fieldset class="layui-elem-field layui-field-title" style="margin-top: 30px;">
<legend>对比文件</legend>
</fieldset>
<div class="layui-btn-container">
<button type="button" class="layui-btn layui-btn-normal" id="select_file">选择文件</button>
</div>
</div>
</div>
<div class='layui-row' style="margin-left:80px; margin-top: 20px">
<div class='layui-col-md9'>
<div class="layui-btn-container">
<button type="button" class="layui-btn" id="run">RUN</button>
</div>
</div>
</div>
+131 -54
View File
@@ -1,67 +1,144 @@
<div class='layui-row' style="margin: 50px">
<div class='layui-col-md9'>
<h1 style="font-size: 50px">GO 富集</h1>
</div>
<div class="layui-bg-gray" style="float: left; padding: 30px; width:45%">
</div>
<div class="layui-panel">
<div style="padding: 20px 30px;">
<div class='layui-row' style="margin-top: 80px; margin-left: 80px">
{# 选项#}
<div class="layui-tab layui-tab-brief " lay-filter="docDemoTabBrief" style="width: 100%; height: 1000px">
<ul class="layui-tab-title">
<div class='layui-col-md9 layui-form-pane'>
<fieldset class="layui-elem-field layui-field-title" style="margin-top: 30px;">
<legend>数据库文件</legend>
</fieldset>
<div class="layui-btn-container" style="display: inline-block">
<button type="button" class="layui-btn layui-btn-normal" id="select_file">选择文件</button>
</div>
{# 选项卡#}
<li>GO</li>
</ul>
<div class="layui-tab-content" style="height: 100px;">
<form class="layui-form" action="">
</div>
</div>
<div class="layui-form-item">
<div class='layui-row' style="margin-left: 80px">
<div class='layui-col-md9'>
<fieldset class="layui-elem-field layui-field-title" style="margin-top: 30px;">
<legend>差异表达文件</legend>
</fieldset>
<div class="layui-btn-container">
<button type="button" class="layui-btn layui-btn-normal" id="select_file">选择文件</button>
</div>
<div class="layui-btn-container">
</div>
</div>
<div class='layui-row' style="margin-left:80px; margin-top: 20px">
<div class='layui-col-md9'>
<fieldset class="layui-elem-field layui-field-title" style="margin-top: 30px;">
<legend>参数</legend>
</fieldset>
<div class="layui-form-item layui-form layui-form-pane" pane>
<label class="layui-form-label">logFC阈值</label>
<div class="layui-input-inline">
<input type="text" name="logFC" id="logFC" lay-verify="required" placeholder="请输入" autocomplete="off"
class="layui-input">
</div>
<label class="layui-form-label">FDR阈值</label>
<div class="layui-input-inline">
<input type="text" name="FDR" id="FDR" lay-verify="required" placeholder="请输入" autocomplete="off"
class="layui-input">
</div>
<label class="layui-form-label">GO分类</label>
<div class="layui-input-inline">
<select name="GO_s">
<option value="BP" selected>BP</option>
<option value="CC">CC</option>
<option value="MF" selected>MF</option>
<option value="ALL">ALL</option>
</select>
<button type="button" class="layui-btn layui-btn-normal" id="select_orf">select file
</button>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">begin</label>
<div class="layui-input-inline">
<input type="text" name="username" id="begin" lay-verify="number" placeholder="请输入"
autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">end</label>
<div class="layui-input-inline">
<input type="text" name="username" id="end" lay-verify="number" placeholder="请输入"
autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">Cyclotype</label>
<div class="layui-input-block">
<input type="checkbox" id="Cyclotype" name="close" lay-skin="switch" lay-text="ON|OFF">
</div>
</div> <!-- 开关-默认关 -->
<div class="layui-form-item">
<label class="layui-form-label">Codons</label>
<div class="layui-input-block">
<select name="interest" id="Codons" lay-filter="aihao">
<option value="0" selected="">0</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
<option value="16">16</option>
<option value="17">17</option>
<option value="18">18</option>
<option value="19">19</option>
<option value="20">20</option>
<option value="21">21</option>
<option value="22">22</option>
<option value="23">23</option>
<option value="24">24</option>
<option value="25">25</option>
</select>
</div>
</div> <!-- 单行选择框 -->
<div class="layui-form-item">
<label class="layui-form-label">outfmt</label>
<div class="layui-input-block">
<select name="interest" id="outfmt" lay-filter="aihao">
<option value="0" selected="">0</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
</div>
</div> <!-- 单行选择框 -->
<div class="layui-form-item">
<div class="layui-btn-container">
<div id="down">
<button type="button" class="layui-btn" id="orf_run">run</button>
{# <button type="button" class="layui-btn" id="gen_to_fa_down">downlode</button>#}
</div>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
<div class='layui-row' style="margin-left:80px; margin-top: 20px">
<div class='layui-col-md9'>
<div class="layui-btn-container">
<button type="button" class="layui-btn" id="run">RUN</button>
</div>
<div class="layui-bg-gray" style="float: left; padding: 30px; width:45%">
<div class="layui-panel">
<div style="padding: 20px 30px;">
<div class="layui-tab layui-tab-brief " lay-filter="docDemoTabBrief" style="width: 100%; height: 1000px">
<ul class="layui-tab-title">
<li class="layui-this">function</li>
</ul>
<div class="layui-tab-content">
<div class="layui-tab-item layui-show">
<div style="margin-left: 30px;">
<p style="font-size: 20px">Convert standard gff format files to standard gtf
format</p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
+117 -23
View File
@@ -1,34 +1,128 @@
<div class='layui-row' style="margin: 50px">
<div class='layui-col-md3'>
<h1 style="font-size: 50px">Pfam</h1>
</div>
<div class='layui-col-md9'>
<div class="layui-bg-gray" style="float: left; padding: 30px; width:45%">
</div>
</div>
<div class="layui-panel">
<div style="padding: 20px 30px;">
<div class='layui-row' style="margin-top: 80px; margin-left: 80px">
{# 选项#}
<div class="layui-tab layui-tab-brief " lay-filter="docDemoTabBrief" style="width: 100%; height: 1000px">
<ul class="layui-tab-title">
<div class='layui-col-md9 layui-form-pane'>
<fieldset class="layui-elem-field layui-field-title" style="margin-top: 30px;">
<legend>fasta文件</legend>
</fieldset>
<div class="layui-btn-container" style="display: inline-block">
<button type="button" class="layui-btn layui-btn-normal" id="select_file">选择文件</button>
{# 选项卡#}
<li>pfam</li>
</ul>
<div class="layui-tab-content" style="height: 100px;">
<form class="layui-form" action="">
<div class="layui-form-item">
<div class="layui-btn-container">
<button type="button" class="layui-btn layui-btn-normal" id="select_pfam">select file
</button>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">clan_overlap</label>
<div class="layui-input-inline">
<input type="text" name="username" id="clan_overlap" placeholder="请输入"
autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">align</label>
<div class="layui-input-inline">
<input type="text" name="username" id="align" placeholder="请输入"
autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">e_seq</label>
<div class="layui-input-inline">
<input type="text" name="username" id="e_seq" placeholder="请输入"
autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">e_dom</label>
<div class="layui-input-inline">
<input type="text" name="username" id="e_dom" placeholder="请输入"
autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">b_seq</label>
<div class="layui-input-inline">
<input type="text" name="username" id="b_seq" placeholder="请输入"
autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">b_dom</label>
<div class="layui-input-inline">
<input type="text" name="username" id="b_dom" placeholder="请输入"
autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<div class="layui-btn-container">
<div id="down">
<button type="button" class="layui-btn" id="pfam_run">run</button>
{# <button type="button" class="layui-btn" id="gen_to_fa_down">downlode</button>#}
</div>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="layui-bg-gray" style="float: left; padding: 30px; width:45%">
<div class="layui-panel">
<div style="padding: 20px 30px;">
<div class="layui-tab layui-tab-brief " lay-filter="docDemoTabBrief" style="width: 100%; height: 1000px">
<ul class="layui-tab-title">
<li class="layui-this">function</li>
</ul>
<div class="layui-tab-content">
<div class="layui-tab-item layui-show">
<div style="margin-left: 30px;">
<p style="font-size: 20px">Convert standard gff format files to standard gtf
format</p>
</div>
</div>
</div>
</div>
<div class='layui-row' style="margin-left:80px; margin-top: 20px">
<div class='layui-col-md9'>
<fieldset class="layui-elem-field layui-field-title" style="margin-top: 20px;">
<legend>运行</legend>
</fieldset>
<div class="layui-btn-container">
<button type="button" class="layui-btn" id="run">RUN</button>
</div>
</div>
</div>
</div>