您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Greasy Fork is available in English.
测序文件
当前为
此脚本不应直接安装。它是供其他脚本使用的外部库,要使用该库请加入元指令 // @require https://update.greasyfork.icu/scripts/470210/1216226/29-%E6%B5%8B%E5%BA%8F%E6%96%87%E4%BB%B6.js
function 测序文件(){ console.log('新的测序文件界面') var local_同一个版号中根据实验状态总结=localStorage.getItem('同一个版号中根据实验状态总结'); var html=$('iframe[src="/seq/AutoFileUploadList.aspx"]')//测序样品页面 html=html.contents().find('body').eq(0) var toolbar=html.find('.toolbar').eq(0) // 找到了toolbar工具栏 //var table=html.find('.ui-jqgrid-btable').eq(0) // 找到了样品的table //添加toolbar工具栏按钮 添加toolbar按钮(html) //添加toolbar工具栏按钮 function 添加toolbar按钮(html){ if (toolbar.find('.weiyiyici').length==0){ //添加标记 toolbar.addClass('weiyiyici') //添加修改样品名称按钮 if (local_同一个版号中根据实验状态总结=='true'){ toolbar.append('<span><input type="text" id="text_banhao" placeholder="板号" size="5"/><button id="button_zongjie" onclick="return false">总结</font></button></span>') //点击添加样品前缀按钮执行如下函数 toolbar.find('#button_zongjie').click(function(){ 根据实验状态总结() }) } } } //根据实验状态总结 function 根据实验状态总结(){ 板号=html.find('#text_banhao').eq(0).val() if(板号===""){console.log('空板号');return false} //报告生产界面查询BDT 数据 $.ajaxSettings.async = false; //get请求默认是异步的,在这里改为同步 标记=0 $.get("/seq/xmldata/xmlSeqDBT.aspx?banhao="+板号, function (data,status) { if (data.indexOf('<Table>')==-1){ alert('没搜到数据') 标记=1 return false } 客户名_arr=文本_取中间文本_批量(data,'<seqo_cust_name>','<\\/seqo_cust_name>') 生产编号_arr=文本_取中间文本_批量(data,'<seqs_prod_id>','<\\/seqs_prod_id>') 样品名称_arr=文本_取中间文本_批量(data,'<seqs_sam_num>','<\\/seqs_sam_num>') 引物_arr=文本_取中间文本_批量(data,'<seqs_primer>','<\\/seqs_primer>') 状态_arr=文本_取中间文本_批量(data,'<seqs_process>','<\\/seqs_process>') 产品信息_arr=文本_取中间文本_批量(data,'<prod_info>','<\\/prod_info>') 报告异常_arr=文本_取中间文本_批量(data,'<seqs_report_error','\\/') 订单号_arr=文本_取中间文本_批量(data,'<seqo_order_id>','<\\/seqo_order_id>') }); if (标记==1){ return false } if (客户名_arr.length==0){ alert('没搜到数据') return false } //样品状态 不是 报告成功的,全部改成 非报告成功 for (var i=0;i<状态_arr.length;i++){ if (状态_arr[i].indexOf('报告成功')==-1){ 状态_arr[i]='非报告成功' }else{ 状态_arr[i]='报告成功' } } //根据产品信息数组获取孔号数组 孔号_arr=[] for (var i=0;i<产品信息_arr.length;i++){ 分割_arr=产品信息_arr[i].split('.') 孔号_arr.push(分割_arr[分割_arr.length-2]) } //把报告异常_arr 的> < 去掉 for (var i=0;i<报告异常_arr.length;i++){ if (报告异常_arr[i].indexOf('>')!==-1){ //删除第一位 报告异常_arr[i]=报告异常_arr[i].substr(1) } if (报告异常_arr[i].indexOf('<')!==-1){ //删除最后一位 报告异常_arr[i]=报告异常_arr[i].substring(0, 报告异常_arr[i].length - 1); } } //1.同一个引物的完成情况全部非“报告成功” 引物_全部非报告成功() //2.同一个样品的完成情况全部非“报告成功”(目的:确定这个客户的个别样品是否有问题,需要跟踪) 样品_全部非报告成功() } //1.同一个引物的完成情况全部非“报告成功” function 引物_全部非报告成功(){ 临时_引物_arr=引物_arr.slice() //遍历数组,把状态是报告成功的,搜索所有该引物,和对应的状态全部删除 引物记录_arr=[] for (var i=0;i<临时_引物_arr.length;i++){ if (状态_arr[i]=='报告成功'){ 引物记录_arr.push(临时_引物_arr[i]) } } for (var i=0;i<引物记录_arr.length;i++){ for (var j=0;j<临时_引物_arr.length;j++){ if (引物记录_arr[i]==临时_引物_arr[j]){ 临时_引物_arr[j]='' } } } //去掉是空字符串的数组 临时_引物_arr=arr_quchu_kongbai(临时_引物_arr) res=数组_统计次数(临时_引物_arr) items=res[0] values=res[1] result=[] for (var i=0;i<items.length;i++){ temp=items[i]+'-'+values[i]+'个' result.push(temp) } //console.log(result) } //2.同一个样品的完成情况全部非“报告成功”(目的:确定这个客户的个别样品是否有问题,需要跟踪) 同一个订单号 function 样品_全部非报告成功(){ // console.log(客户名_arr) // console.log(生产编号_arr) console.log(样品名称_arr) //console.log(引物_arr) // console.log(报告异常_arr) console.log(订单号_arr) // console.log(孔号_arr) console.log(状态_arr) //连接订单号和样品名 订单号_样品名_arr=[] for (var i=0;i<样品名称_arr.length;i++){ 订单号_样品名_arr.push(订单号_arr[i]+'-'+样品名称_arr[i]) } console.log(订单号_样品名_arr) //遍历数组,把状态是报告成功的,搜索所有订单号-样品,和对应的状态全部删除 订单号_样品名记录_arr=[] for (var i=0;i<样品名称_arr.length;i++){ if (状态_arr[i]=='报告成功'){ 订单号_样品名记录_arr.push(订单号_样品名_arr[i]) } } for (var i=0;i<订单号_样品名记录_arr.length;i++){ for (var j=0;j<订单号_样品名_arr.length;j++){ if (订单号_样品名记录_arr[i]==订单号_样品名_arr[j]){ 订单号_样品名_arr[j]='' } } } console.log(订单号_样品名_arr) //去掉是空字符串的数组 订单号_样品名_arr=arr_quchu_kongbai(订单号_样品名_arr) res=数组_统计次数(订单号_样品名_arr) items=res[0] values=res[1] result=[] for (var i=0;i<items.length;i++){ temp=items[i]+'-'+values[i]+'个' result.push(temp) } console.log(result) } }