您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
测序样品
当前为
此脚本不应直接安装,它是供其他脚本使用的外部库。如果您需要使用该库,请在脚本元属性加入:// @require https://update.cn-greasyfork.org/scripts/469913/1272130/23-%E6%B5%8B%E5%BA%8F%E6%A0%B7%E5%93%81.js
function 测序样品(){ console.log('新的测序样品界面') var local_修改样品名称=localStorage.getItem('修改样品名称'); var local_批量添加反应=localStorage.getItem('批量添加反应'); var local_显示订单号=localStorage.getItem('显示订单号'); var local_显示样品名称=localStorage.getItem('显示样品名称'); var local_查询引物=localStorage.getItem('查询引物'); var local_其他=localStorage.getItem('其他'); var local_模板板号和孔号改为负一=localStorage.getItem('模板板号和孔号改为负一'); var local_修改模板板号=localStorage.getItem('修改模板板号'); var 当前用户名=$('#curname',window.parent.document).text() var html=$('iframe[src="/seq/SeqSampleList.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 初始化() function 初始化(){ //选中一些行后,把相同引物位置的其余引物标记颜色 table.on('click','tbody tr',function(){ 相同引物位置标记颜色(); }) //把 测序样品 的 流程名称 是反应生产,模板失败,停止反应 标颜色 状态_标颜色() //点击批量编辑 批量编辑测序引物 按钮 如果需要改变引物,那么需要跟反应组说一下(反应生产 模板成功等) $("#w").on('click','#select_temple_notNull',function(){ 更改引物_提醒_跟反应组说() }) if (当前用户名=='申高天'){ //改成每页150个数据 html.find('#pager_center').eq(0).find("option[value='10']").eq(0).val('150') } } //添加toolbar工具栏按钮 添加toolbar按钮(html) //添加toolbar工具栏按钮 function 添加toolbar按钮(html){ if (toolbar.find('.weiyiyici').length==0){ //添加标记 toolbar.addClass('weiyiyici') //添加修改样品名称按钮 if (local_修改样品名称=='true'){ toolbar.append('<span style="position:relative;z-index:2;"><button id="button_xiugai_yangpin" onclick="return false">修改样品名称◇</button><div id="div_xiugai_yangpin" style="position:absolute;width:250px;height:95px;border:1px solid orange;background-color: #1B211D;display:none"></div></span>') var div_show_yincang=toolbar.find('#div_xiugai_yangpin').eq(0) div_show_yincang.append('<input type="text" class="text_huichejian" id="text_qianzhui" placeholder="样品前缀" size="10"/><button id="button_qianzhui" onclick="return false">添加样品前缀</button>') div_show_yincang.append('<input type="text" class="text_huichejian" id="text_houzhui" placeholder="样品后缀" size="10"/><button id="button_houzhui" onclick="return false">添加样品后缀</button>') div_show_yincang.append('<input type="text" class="text_huichejian" id="text_gaiqian" placeholder="需要改的部分" size="15"/><input type="text" class="text_huichejian" id="text_gaihou" placeholder="改成的部分" size="10"/><button id="button_genggai" onclick="return false">更改部分样品名称</button>') //点击修改样品名称按钮 显示或者隐藏DIV toolbar.find('#button_xiugai_yangpin').click(function(){ 显示隐藏DIV('#div_xiugai_yangpin',"button_xiugai_yangpin") }) //点击添加样品前缀按钮执行如下函数 toolbar.find('#button_qianzhui').click(function(){ 添加前后缀('前缀','#text_qianzhui') }) //点击添加样品后缀按钮执行如下函数 toolbar.find('#button_houzhui').click(function(){ 添加前后缀('后缀','#text_houzhui') }) //点击 更改部分 执行如下函数 toolbar.find('#button_genggai').click(function(){ 更改部分() }) //给文本框绑定回车键的函数 toolbar.find('.text_huichejian').keypress(function(event){ if(event.keyCode ==13){ return false } }); } //添加批量添加反应按钮 if (local_批量添加反应=='true'){ toolbar.append('<span style="position:relative;z-index:2;"><button id="button_piliang" onclick="return false"><font color="red">批量添加反应◇</font></button><div id="div_piliang" style="position:absolute;left:-250px;height:100px;width:430px;height:105px;border:1px solid orange;background-color: #1B211D;display:none"></div></span>') div_piliang=toolbar.find('#div_piliang').eq(0) div_piliang.append('<input type="text" id="text_piliang_duotiaodai" placeholder="添加多条带" size="10" value="1"/><button id="button_duotiaodai" onclick="return false">批量添加多条带,默认双条带(带引物)</button><br/><br/>') div_piliang.append('<input type="text" id="text_piliang_tongming" placeholder="添加同名反应" size="10" value="1"/><button id="button_tongming" onclick="return false">批量添加同名反应(不带引物,一个名字只能选一次)</button><br/><br/>') div_piliang.append('<input type="text" id="text_jiace" placeholder="默认1个" value="1" size="10"/><button id="button_jiace" onclick="return false"><font color="red">加测</font></button>') //点击批量添加反应按钮 显示或者隐藏DIV toolbar.find('#button_piliang').click(function(){ 显示隐藏DIV('#div_piliang',"button_piliang") }) //给批量多条带文本框绑定回车键的函数 toolbar.find('#text_piliang_duotiaodai').eq(0).keypress(function(event){ if(event.keyCode ==13){ return false } //如果输入的字符不是数字 那么不允许输入 if(event.keyCode !==48 && event.keyCode !==49 && event.keyCode !==50 && event.keyCode !==51 && event.keyCode !==52 && event.keyCode !==53 && event.keyCode !==54 && event.keyCode !==55 && event.keyCode !==56 && event.keyCode !==57 ){ return false } }); //给批量同名文本框绑定回车键的函数 toolbar.find('#text_piliang_tongming').eq(0).keypress(function(event){ if(event.keyCode ==13){ return false } //如果输入的字符不是数字 那么不允许输入 if(event.keyCode !==48 && event.keyCode !==49 && event.keyCode !==50 && event.keyCode !==51 && event.keyCode !==52 && event.keyCode !==53 && event.keyCode !==54 && event.keyCode !==55 && event.keyCode !==56 && event.keyCode !==57 ){ return false } }); //给加测文本框绑定回车键的函数 toolbar.find('#text_jiace').eq(0).keypress(function(event){ if(event.keyCode ==13){ return false } }); //点击多条带批量添加按钮 toolbar.find('#button_duotiaodai').click(function(){ 批量_添加多条带() }) //点击批量添加同名反应按钮 toolbar.find('#button_tongming').click(function(){ 批量_添加同名反应() }) //点击加测 按钮 toolbar.find('#button_jiace').click(function(){ 加测('jiace'); }) } //添加显示订单号按钮 if (local_显示订单号=='true'){ toolbar.append('<button id="button_show_order" onclick="return false">显示订单号</button>') //点击按钮 toolbar.find('#button_show_order').click(function(){ 显示选择行所属的订单号() }) } //添加 显示样品名称 按钮 if (local_显示样品名称=='true'){ toolbar.append('<button id="button_show_yp" onclick="return false">显示样品名称</button>') //点击按钮 toolbar.find('#button_show_yp').click(function(){ 显示选择行的样品名称() }) } //添加 查询引物 按钮 if (local_查询引物=='true'){ toolbar.append('<div id="chaxun_yinwu"></div>') toolbar.find('#chaxun_yinwu').append('<input type="text" disabled value="客户姓名" size="5"/><input type="text" class="text_value" id="text_kehu_value" placeholder="条件value" size="10"/>') toolbar.find('#chaxun_yinwu').append('<input type="text" disabled value="测序引物" size="5"/><input type="text" class="text_value" id="text_yinwu_value" placeholder="空格区分" size="10"/>') toolbar.find('#chaxun_yinwu').append('<input type="text" disabled value="课题组" size="5"/><input type="text" class="text_value" id="text_ketizu_value" placeholder="课题组" size="10"/>') toolbar.find('#chaxun_yinwu').append('<button id="button_qingkong" onclick="return false">清空value</button>') //清空按钮 //客户姓名 回车 要求:客户姓名和测序引物必须有一项不为空 toolbar.find('.text_value').keypress(function(event){ if(event.keyCode ==13){ //如果 客户 或者 引物 或者 课题组, 至少有一个是有数据,那么才能点击 var kehu_val=toolbar.find('#text_kehu_value').val().trim() var yinwu_val=toolbar.find('#text_yinwu_value').val().trim() var ketizu_val=toolbar.find('#text_ketizu_value').val().trim() if( kehu_val !=="" || yinwu_val !=="" || ketizu_val !=="" ){ //查询客户姓名+测序引物+课题组 查询引物(kehu_val,yinwu_val,ketizu_val) } return false } }); //点击 清空value按钮 toolbar.find('#button_qingkong').click(function(){ toolbar.find('.text_value').val('') }) } //添加 其他 按钮 if (local_其他=='true'){ //在查询引物的后面加其他按钮 toolbar.find('#chaxun_yinwu').append('<span style="position:relative;z-index:1;"><button id="button_qita" onclick="return false">其他◇</button><div id="div_qita" style="position:absolute;left:-150px;width:280px;height:50px;border:1px solid orange;background-color: #1B211D;display:none"></div></span>') var div_qita=toolbar.find('#div_qita').eq(0) if(当前用户名==="申高天"){ div_qita.css('height','140px') if (local_修改模板板号=='true'){ div_qita.append('<input type="text" class="text_huichejian" id="text_add_mubanbanhao" placeholder="模板板号" size="10"/><button id="button_add_mubanbanhao" onclick="return false"><font color="blue">修改模板板号</font></button><br/>') } } div_qita.append('<input type="text" class="text_huichejian" id="text_beizhu_gaiqian" placeholder="需要改的部分" size="10"/><input type="text" class="text_huichejian" id="text_beizhu_gaihou" placeholder="改成的部分" size="10"/><button id="button_beizhu_genggai" onclick="return false">更改备注</button><br/>') div_qita.append('<button id="button_tiaozhuandao_zibeiyinwu" onclick="return false"><font color="blue">跳转到自备引物</font></button><br/><br/>') if(当前用户名==="申高天"){ div_qita.append('<button id="button_tiqushuju" onclick="return false"><font color="blue">提取数据</font></button>') div_qita.append('<button id="button_qingchushuju" onclick="return false"><font color="blue">清除数据</font></button><br/>') //添加 textarea 用于放数据 $("body").find("[class='layout-body panel-body panel-body-noheader panel-body-noborder']").append('<textarea id="textarea_biaoti" style="position:absolute;left:400px;visibility:hidden" rows="1" cols="400"></textarea>') $("body").find("[class='layout-body panel-body panel-body-noheader panel-body-noborder']").append('<textarea id="textarea_shuju" style="position:absolute;left:400px;top:20px;visibility:hidden" rows="2" cols="400"></textarea>'); //模板板号和孔号改为负一 if (local_模板板号和孔号改为负一=='true'){ div_qita.append('<button id="button_mubanbanhaokonghao_fuyi" onclick="return false"><font color="blue">模板板号和孔号改为负一</font></button><br/>') } } //点击 其他 按钮 显示或者隐藏DIV toolbar.find('#button_qita').click(function(){ 显示隐藏DIV('#div_qita',"button_qita") }) //给文本框绑定回车键的函数 toolbar.find('.text_huichejian').keypress(function(event){ if(event.keyCode ==13){ return false } }); //点击 修改模板板号 按钮 toolbar.find('#button_add_mubanbanhao').click(function(){ 修改模板板号() }) //单击 更改备注 按钮 toolbar.find('#button_beizhu_genggai').click(function(){ 更改备注() }) //双击 清空备注 toolbar.find('#button_beizhu_genggai').dblclick(function(){ 清空备注() }) //点击 跳转到自备引物 按钮 toolbar.find('#button_tiaozhuandao_zibeiyinwu').click(function(){ 跳转到自备引物() }) //点击 提取数据 按钮 toolbar.find('#button_tiqushuju').click(function(){ 提取数据() }) //点击 清除数据 按钮 toolbar.find('#button_qingchushuju').click(function(){ 清除数据() }) //点击 模板板号和孔号改为负一 按钮 toolbar.find('#button_mubanbanhaokonghao_fuyi').click(function(){ 模板板号和孔号改为负一() }) } } } //显示或者隐藏DIV function 显示隐藏DIV(div_id,button_id){ div=toolbar.find(div_id).eq(0) div.toggle() //改变背景颜色 if (div.css('display')==="none"){ toolbar.find(button_id).css('background-color','') }else{ toolbar.find(button_id).css('background-color','#B7A0AA') //如果是批量添加反应的div 把已填的数据改为1 if (div_id=='#div_piliang'){ toolbar.find(div_id).eq(0).find(":input").val('1') }else{ //如果是修改样品名称的div 或者 其他div 把已填的数据清除 toolbar.find(div_id).eq(0).find(":input").val('') } } } //添加前后缀 function 添加前后缀(前后缀,id){ 加的前后缀=html.find(id).eq(0).val() //如果没写数据,那么退出 if(加的前后缀===""){return false} //点击 批量编辑 toolbar.find('#a_BatchEdit').eq(0).find('.l-btn-left').eq(0).click(); $('#txt_seqs_sam_num').eq(0).val(加的前后缀) if (前后缀=='前缀'){ //选择前缀单选按钮 $('#txt_seqs_sam_num_foreedit').attr('checked','true') } if (前后缀=='后缀'){ //选择后缀单选按钮 $('#txt_seqs_sam_num_houedit').attr('checked','true') } $("#AB").click() } //更改部分样品名称 function 更改部分(){ 改_前=html.find('#text_gaiqian').eq(0).val() 改_后=html.find('#text_gaihou').eq(0).val() //如果没有选择的行,那么退出 if(table.find('tbody').find("[aria-selected='true']").size()==0){return false} if(改_前===""){return false} //点击 批量编辑 toolbar.find('#a_BatchEdit').eq(0).find('.l-btn-left').eq(0).click(); $('#txt_seqs_sam_num').eq(0).val(改_前) $('#txt_seqs_sam_num2').eq(0).val(改_后) //选择替换单选按钮 $('#txt_seqs_sam_num_partedit').attr('checked','true') $("#AB").click() } //添加多条带 function 批量_添加多条带(){ var geshu=toolbar.find('#text_piliang_duotiaodai').eq(0).val() res=文本是否是1到20(geshu) if(!res){ //说明输入的不符合要求 alert('输入的不符合要求,需要输入1到20') return false } geshu=parseInt(geshu) //判断是否选择了反应,且选择的是否是同一个订单号 selecteds=is_one_order(html) if(selecteds===false){//如果返回的是false 那么要不没有选择反应,要不选择的不是同一个订单号 return false } yp_all_array=[] //生产编号 ypmc_all_array=[] //样品名称 new_ypmc_all_array=[] //新的样品名称 yinwu_all_array=[] //引物名称 new_yinwu_all_array=[] //新的引物名称 yinwu_weizhi_array=[] //引物位置 new_yinwu_weizhi_array=[] //新的引物位置 yinwu_nong_all_array=[] //引物浓度 new_yinwu_nong_all_array=[] //新的引物浓度 yplx_all_array=[] //样品类型 new_yplx_all_array=[] //新的样品类型 zaiti_array=[] //载体 new_zaiti_array=[] //新的载体 pianduan_array=[] //片段 new_pianduan_array=[] //新的片段 kangshengsu_array=[] //抗生素 new_kangshengsu_array=[] //新的抗生素 beizhu_array=[] //备注 new_beizhu_array=[] //新的备注 is_cetong_array=[] //是否测通 new_is_cetong_array=[] //新的是否测通 //公共函数 生产编号需要降序排序 是否排好序=生产编号需要降序排序(selecteds) if(是否排好序===false){//如果返回的是false 那么没有排好序 return false } //倒序把样品对应号放进数组 tags=0 $(selecteds.toArray().reverse()).each(function(){ ypdyh_name=$(this).find('[aria-describedby=list_seqs_plus_prod_id]').html() if(ypdyh_name!=="" && ypdyh_name!==" "){ tags=1 } }) if(tags===1){ alert('有的反应带有"样品对应号",不能添加多条带') return false } $(selecteds.toArray().reverse()).each(function(){ //倒序把样品名称放进数组 ypmc_all_array.push($(this).find('[aria-describedby=list_seqs_sam_num]').text()) //倒序把引物名称放进数组 yinwu_name=$(this).find('[aria-describedby=list_seqs_primer]').html() if(yinwu_name=="" || yinwu_name==" "){ yinwu_all_array.push("") }else{yinwu_all_array.push(yinwu_name)} //倒序把引物位置放进数组 yinwu_weizhi_array.push($(this).find('[aria-describedby=list_seqs_primer_id_2_kind]').text()) //倒序把引物浓度放进数组 nongdu_name=$(this).find('[aria-describedby=list_seqs_observe]').html() if(nongdu_name=="" || nongdu_name==" "){ //如果载体为空 或者 空格 yinwu_nong_all_array.push("") }else{yinwu_nong_all_array.push(nongdu_name)} //倒序把样品类型放进数组 yplx_name=$(this).find('[aria-describedby=list_seqs_sam_type]').text() yplx_all_array.push(yplx_name) //倒序把载体放进数组 zaiti_name=$(this).find('[aria-describedby=list_seqs_carry]').html() if(zaiti_name=="" || zaiti_name==" "){ //如果载体为空 或者 空格 zaiti_array.push("") }else{zaiti_array.push(zaiti_name)} //倒序把片段放进数组 pianduan_name=$(this).find('[aria-describedby=list_seqs_fragment_size]').html() if(pianduan_name=="" || pianduan_name==" "){ //如果片段为空 或者 空 pianduan_array.push("") }else{pianduan_array.push(pianduan_name)} //倒序把抗生素放进数组 kangshengsu_name=$(this).find('[aria-describedby=list_seqs_ant_type]').html() if(kangshengsu_name=="" || kangshengsu_name==" "){ //如果为空 或者 空格 kangshengsu_array.push("") }else{kangshengsu_array.push(kangshengsu_name)} //倒序把备注放进数组 beizhu_name=$(this).find('[aria-describedby=list_remark]').html() if(beizhu_name=="" || beizhu_name==" "){ beizhu_array.push("") }else{beizhu_array.push(beizhu_name)} //倒序把是否测通放进数组 cetong_is=$(this).find('[aria-describedby=list_seqs_istest_pass]').text() if(cetong_is=="是" || cetong_is=="true"){ is_cetong_array.push(true) }else{is_cetong_array.push(false)} }) //对多条带进行重新赋值 quchong_ypm=quchong_arr(ypmc_all_array) for(var i=0;i<quchong_ypm.length;i++){ //去重后的数组 for(var j=1;j<=geshu;j++){ // 多条带 这是为了方便样品的多条带加上后缀 for(var z=0;z<ypmc_all_array.length;z++){ //原数组 if(quchong_ypm[i]===ypmc_all_array[z]){ new_ypmc_all_array.push(ypmc_all_array[z]+'-'+(j+1).toString()) //把样品名加上多条带的后缀push到新的样品数组里面 new_yinwu_all_array.push(yinwu_all_array[z]) //push到新的引物数组里面 new_yinwu_weizhi_array.push(yinwu_weizhi_array[z]) //push到新的引物位置数组里面 new_yinwu_nong_all_array.push(yinwu_nong_all_array[z]) //push到新的引物浓度数组里面 new_yplx_all_array.push(yplx_all_array[z]) //push到新的样品类型数组里面 new_zaiti_array.push(zaiti_array[z])//push到新的载体数组里面 new_pianduan_array.push(pianduan_array[z])//push到新的片段数组里面 new_kangshengsu_array.push(kangshengsu_array[z]) //push到新的抗生素数组里面 new_beizhu_array.push(beizhu_array[z]) //push到新的备注数组里面 new_is_cetong_array.push(is_cetong_array[z]) //push到新的是否测通数组里面 } } } } order_ID=selecteds.eq(0).find('[aria-describedby=list_seqo_order_id]').eq(0).text() //查找订单号 kehu_ID=selecteds.eq(0).find('[aria-describedby=list_seqo_cust_id]').eq(0).text() //查找客户ID kehu_name=selecteds.eq(0).find('[aria-describedby=list_seqo_cust_name]').eq(0).text() //查找客户姓名 ketizu_ID=selecteds.eq(0).find('[aria-describedby=list_seqo_ketizu_id]').eq(0).text() //查找课题组ID ketizu_name=selecteds.eq(0).find('[aria-describedby=list_seqo_ketizu]').eq(0).text() //查找课题组姓名 company_ID=selecteds.eq(0).find('[aria-describedby=list_seqs_product_company_id]').eq(0).text() // 公司ID 比如昌平的是38 company_name=selecteds.eq(0).find('[aria-describedby=list_seqs_product_company_name]').eq(0).text() // 生产分公司名字 比如北京分公司 var r = confirm("确定要给"+kehu_name+"添加"+(geshu+1).toString()+"条带吗?总共 "+(selecteds.size()*geshu).toString()+" 条反应"); if (r == false) { return false; } else{ html.find('#button_duotiaodai').eq(0).attr('disabled',true) } josn_str='' $.each(new_ypmc_all_array,function(index){ //对数组 多条反应,需要结合成josn_str index是从0开始的 weizhi_split_array=new_yinwu_weizhi_array[index].split("-") //位置用split分隔,如果不能分隔,那么长度为1,如果能分隔,那么长度为2 if(weizhi_split_array.length==1){ yinwu_weizhi_kind=""; yinwu_weizhi_primerid="" }else{ yinwu_weizhi_kind=weizhi_split_array[1] yinwu_weizhi_primerid=weizhi_split_array[0] } josn_str=josn_str+'{"seqs_vip_platestyle":"纵向提交","seqs_vip_platename":"1","seqs_vip_plate":1,"seqs_vip_hole":'+(index+1)+',"seqs_vip_number":'+(index+1)+',"seqs_vip_sam_num":"'+new_ypmc_all_array[index]+'","seqs_vip_sam_kind":"'+new_yplx_all_array[index]+'","seqs_vip_fragment_size":"","seqs_vip_seqs_carry":"'+new_zaiti_array[index]+'","seqs_vip_ant_type":"'+new_kangshengsu_array[index]+'","seqs_vip_seqs_primer":"'+new_yinwu_all_array[index]+'","seqs_vip_seqsprime_kind":"'+yinwu_weizhi_kind+'","seqs_vip_seqs_primer_id":"'+yinwu_weizhi_primerid+'","seqs_vip_istest_pass":'+new_is_cetong_array[index]+',"seqs_vip_return_sample":false,"seqs_vip_sample_remark":"'+new_beizhu_array[index]+'"},' if(new_ypmc_all_array.length==index+1){ //如果是最后一项,那么把最后的逗号去掉 josn_str=josn_str.slice(0,-1); } }) josn_str='['+josn_str+'],'+'"orderid":"'+order_ID+'","companyid":"'+company_ID+'"}' josn_str='{"action":"AddSeqOrder","seqHighPhoto":"","seqscreenshot":[],"cust_id":'+kehu_ID+',"cust_name":"'+kehu_name+'","ketizu_id":"'+ketizu_ID+'","ketizu_name":"'+ketizu_name+'","ordersort":"","linkToGeneNo":"","seqo_product_company_id":"'+company_ID+'","seqo_product_company_name":"'+company_name+'","seqo_settlement_company_id":"","seqo_settlement_company_name":"","order":{"vip_order_name":"","vip_order_kind":"PCR切胶","vip_order_platestyle":"2","vip_order_remark":"","vip_order_state":0,"vip_order_ketizuid":"'+ketizu_ID+'","vip_order_ketizuname":"'+ketizu_name+'","vip_order_isurgent":"false"},"seqo_id":"'+order_ID+'","seqs":'+josn_str $.ajax({ type:"POST", url:"/ajax/PostErpUseVipPageHandler.ashx", contentType: "application/json", //必须这样写 dataType:"json", data: JSON.stringify(jQuery.parseJSON(josn_str)), //josn_str是你要提交是json字符串 success:function (data) { html.find('.ui-pg-input').eq(0).focus() alert('修改成功 ,光标自动定位在页数,直接按回车或更改页数可以查看更改结果') html.find('#button_duotiaodai').eq(0).attr('disabled',false) } }) } //批量添加同名反应 function 批量_添加同名反应(){ var geshu=toolbar.find('#text_piliang_tongming').eq(0).val() res=文本是否是1到20(geshu) if(!res){ //说明输入的不符合要求 alert('输入的不符合要求,需要输入1到20') return false } geshu=parseInt(geshu) //公共函数 判断是否选择了反应,且选择的是否是同一个订单号 selecteds=is_one_order(html) if(selecteds===false){//如果返回的是false 那么要不没有选择反应,要不选择的不是同一个订单号 return false } yp_all_array=[] //生产编号 ypdyh_all_array=[] //样品对应号 new_ypdyh_all_array=[] //新的样品对应号 ypmc_all_array=[] //样品名称 new_ypmc_all_array=[] //新的样品名称 yplx_all_array=[] //样品类型 new_yplx_all_array=[] //新的样品类型 zaiti_array=[] //载体 new_zaiti_array=[] //新的载体 pianduan_array=[] //片段 new_pianduan_array=[] //新的片段 kangshengsu_array=[] //抗生素 new_kangshengsu_array=[] //新的抗生素 beizhu_array=[] //备注 new_beizhu_array=[] //新的备注 is_cetong_array=[] //是否测通 new_is_cetong_array=[] //新的是否测通 //公共函数 生产编号需要降序排序 是否排好序=生产编号需要降序排序(selecteds) if(是否排好序===false){//如果返回的是false 那么没有排好序 return false } $(selecteds.toArray().reverse()).each(function(){ //倒序把样品名称放进数组 ypmc_all_array.push($(this).find('[aria-describedby=list_seqs_sam_num]').text()) //倒序把样品对应号放进数组 ypdyh_name=$(this).find('[aria-describedby=list_seqs_plus_prod_id]').html() if(ypdyh_name=="" || ypdyh_name==" "){ ypdyh_all_array.push("") }else{ypdyh_all_array.push(ypdyh_name)} //倒序把样品类型放进数组 yplx_name=$(this).find('[aria-describedby=list_seqs_sam_type]').text() yplx_all_array.push(yplx_name) //倒序把载体放进数组 zaiti_name=$(this).find('[aria-describedby=list_seqs_carry]').html() if(zaiti_name=="" || zaiti_name==" "){ //如果载体为空 或者 空格 zaiti_array.push("") }else{zaiti_array.push(zaiti_name)} //倒序把片段放进数组 pianduan_name=$(this).find('[aria-describedby=list_seqs_fragment_size]').html() if(pianduan_name=="" || pianduan_name==" "){ //如果片段为空 或者 空 pianduan_array.push("") }else{pianduan_array.push(pianduan_name)} //倒序把抗生素放进数组 kangshengsu_name=$(this).find('[aria-describedby=list_seqs_ant_type]').html() if(kangshengsu_name=="" || kangshengsu_name==" "){ //如果为空 或者 空格 kangshengsu_array.push("") }else{kangshengsu_array.push(kangshengsu_name)} //倒序把备注放进数组 beizhu_name=$(this).find('[aria-describedby=list_remark]').html() if(beizhu_name=="" || beizhu_name==" "){ beizhu_array.push("") }else{beizhu_array.push(beizhu_name)} //倒序把是否测通放进数组 cetong_is=$(this).find('[aria-describedby=list_seqs_istest_pass]').text() if(cetong_is=="是" || cetong_is=="true"){ is_cetong_array.push(true) }else{is_cetong_array.push(false)} }) //对同名数组进行重新赋值 quchong_ypm=quchong_arr(ypmc_all_array) //如果去重后的长度和原先的长度不一致,代表有重复的 if(ypmc_all_array.length!==quchong_ypm.length){ alert('不要选择重复的样品名,一个样品名只允许选择一次') return false } for(var i=0;i<ypmc_all_array.length;i++){ //去重后的数组 for(var j=1;j<=geshu;j++){ // 多条带 这是为了方便样品的多条带加上后缀 new_ypmc_all_array.push(ypmc_all_array[i]) //把样品名push到新的样品数组里面 new_ypdyh_all_array.push(ypdyh_all_array[i])//把样品对应号push到新的样品数组里面 new_yplx_all_array.push(yplx_all_array[i]) //push到新的样品类型数组里面 new_zaiti_array.push(zaiti_array[i])//push到新的载体数组里面 new_pianduan_array.push(pianduan_array[i])//push到新的片段数组里面 new_kangshengsu_array.push(kangshengsu_array[i]) //push到新的抗生素数组里面 new_beizhu_array.push(beizhu_array[i]) //push到新的备注数组里面 new_is_cetong_array.push(is_cetong_array[i]) //push到新的是否测通数组里面 } } order_ID=selecteds.eq(0).find('[aria-describedby=list_seqo_order_id]').eq(0).text() //查找订单号 kehu_ID=selecteds.eq(0).find('[aria-describedby=list_seqo_cust_id]').eq(0).text() //查找客户ID kehu_name=selecteds.eq(0).find('[aria-describedby=list_seqo_cust_name]').eq(0).text() //查找客户姓名 ketizu_ID=selecteds.eq(0).find('[aria-describedby=list_seqo_ketizu_id]').eq(0).text() //查找课题组ID ketizu_name=selecteds.eq(0).find('[aria-describedby=list_seqo_ketizu]').eq(0).text() //查找课题组姓名 company_ID=selecteds.eq(0).find('[aria-describedby=list_seqs_product_company_id]').eq(0).text() // 公司ID 比如昌平的是38 company_name=selecteds.eq(0).find('[aria-describedby=list_seqs_product_company_name]').eq(0).text() // 生产分公司名字 比如北京分公司 var r = confirm("确定要给"+kehu_name+"添加"+(selecteds.size()*geshu).toString()+"条同名反应吗?"); if (r == false) { return false; } else{ html.find('#button_tongming').eq(0).attr('disabled',true) } josn_str='' $.each(new_ypmc_all_array,function(index){ //对数组 多条反应,需要结合成josn_str index是从0开始的 josn_str=josn_str+'{"seqs_vip_platestyle":"纵向提交","seqs_vip_platename":"1","seqs_vip_plate":1,"seqs_vip_hole":'+(index+1)+',"seqs_vip_number":'+(index+1)+',"seqs_vip_sam_num":"'+new_ypmc_all_array[index]+'","seqs_vip_sam_kind":"'+new_yplx_all_array[index]+'","seqs_vip_fragment_size":"'+new_pianduan_array[index]+'","seqs_vip_seqs_carry":"'+new_zaiti_array[index]+'","seqs_vip_ant_type":"'+new_kangshengsu_array[index]+'","seqs_vip_seqs_primer":"","seqs_vip_seqsprime_kind":"","seqs_vip_seqs_primer_id":"","seqs_vip_istest_pass":'+new_is_cetong_array[index]+',"seqs_vip_return_sample":false,"seqs_vip_sample_remark":"'+new_beizhu_array[index]+'","seqs_plus_prod_id":"'+new_ypdyh_all_array[index]+'"},' if(new_ypmc_all_array.length==index+1){ //如果是最后一项,那么把最后的逗号去掉 josn_str=josn_str.slice(0,-1); } }) josn_str='['+josn_str+'],'+'"orderid":"'+order_ID+'","companyid":"'+company_ID+'"}' josn_str='{"action":"AddSeqOrder","seqHighPhoto":"","seqscreenshot":[],"cust_id":'+kehu_ID+',"cust_name":"'+kehu_name+'","ketizu_id":"'+ketizu_ID+'","ketizu_name":"'+ketizu_name+'","ordersort":"","linkToGeneNo":"","seqo_product_company_id":"'+company_ID+'","seqo_product_company_name":"'+company_name+'","seqo_settlement_company_id":"","seqo_settlement_company_name":"","order":{"vip_order_name":"","vip_order_kind":"PCR切胶","vip_order_platestyle":"2","vip_order_remark":"","vip_order_state":0,"vip_order_ketizuid":"'+ketizu_ID+'","vip_order_ketizuname":"'+ketizu_name+'","vip_order_isurgent":"false"},"seqo_id":"'+order_ID+'","seqs":'+josn_str $.ajax({ type:"POST", url:"/ajax/PostErpUseVipPageHandler.ashx", contentType: "application/json", //必须这样写 dataType:"json", data: JSON.stringify(jQuery.parseJSON(josn_str)), //josn_str是你要提交是json字符串 success:function (data) { html.find('.ui-pg-input').eq(0).focus() alert('修改成功 ,光标自动定位在页数,直接按回车或更改页数可以查看更改结果') html.find('#button_tongming').eq(0).attr('disabled',false) } }) } //加测 function 加测(){ //公共函数 判断是否选择了反应,且选择的是否是同一个订单号 selecteds=is_one_order(html) if(selecteds===false){//如果返回的是false 那么要不没有选择反应,要不选择的不是同一个订单号 return false } //公共函数 生产编号需要降序排序 是否排好序=生产编号需要降序排序(selecteds) if(是否排好序===false){//如果返回的是false 那么没有排好序 return false } //获取选择的行的所有数据 数据_arr=获取选择的行的所有数据(selecteds) scbh_arr=数据_arr[0] //生产编号 ypdyh_arr=数据_arr[1] //样品对应号 ypmc_arr=数据_arr[2] //样品名称 yplx_arr=数据_arr[6] //样品类型 zaiti_arr=数据_arr[7] //载体 pianduan_arr=数据_arr[8] //片段 kangshengsu_arr=数据_arr[9] //抗生素 beizhu_arr=数据_arr[10] //备注 is_cetong_arr=数据_arr[11] //是否测通 for (var i=0;i<scbh_arr.length;i++){ //对样品对应号进行循环 如果样品对应号为空 那么把样品对应号改成生产编号 当前样品对应号=ypdyh_arr[i] 当前样品对应号=当前样品对应号.trim() if (当前样品对应号==''){ ypdyh_arr[i]=scbh_arr[i] }else if (当前样品对应号.indexOf('YP')==-1){ alert('选择的行中,样品对应号有的不对') return false } //对样品类型进行循环 转换成质粒或者PCR已纯化 当前样品类型=yplx_arr[i] if(当前样品类型=="质粒" || 当前样品类型.search("菌")!= -1){ yplx_arr[i]="质粒" }else if( 当前样品类型.search("胶")!= -1 || 当前样品类型.toUpperCase()=="PCR已纯化" || 当前样品类型.toUpperCase()=="PCR单一"){ yplx_arr[i]="PCR已纯化" }else{yplx_arr[i]="质粒"} //对是否测通进行循环 放入true或false 当前是否测通=is_cetong_arr[i] if(当前是否测通=="是"){ is_cetong_arr[i]=true }else{is_cetong_arr[i]=false} } order_ID=selecteds.eq(0).find('[aria-describedby=list_seqo_order_id]').eq(0).text() //查找订单号 kehu_ID=selecteds.eq(0).find('[aria-describedby=list_seqo_cust_id]').eq(0).text() //查找客户ID kehu_name=selecteds.eq(0).find('[aria-describedby=list_seqo_cust_name]').eq(0).text() //查找客户姓名 ketizu_ID=selecteds.eq(0).find('[aria-describedby=list_seqo_ketizu_id]').eq(0).text() //查找课题组ID ketizu_name=selecteds.eq(0).find('[aria-describedby=list_seqo_ketizu]').eq(0).text() //查找课题组姓名 company_ID=selecteds.eq(0).find('[aria-describedby=list_seqs_product_company_id]').eq(0).text() // 公司ID 比如昌平的是38 company_name=selecteds.eq(0).find('[aria-describedby=list_seqs_product_company_name]').eq(0).text() // 生产分公司名字 比如北京分公司 riqi=getday_y_n('---') jihang=toolbar.find("#text_jiace").eq(0).val() //确定加测几行, if(jihang.trim()==""){jihang="1"} jihang=parseInt(jihang) if(!jihang){jihang="1"} josn_str='' var r = confirm("确定要给"+kehu_name+"加测吗?总共 "+jihang*selecteds.size()+" 条加测反应"); if (r == false) { return false; } else{ html.find('#button_jiace').eq(0).attr('disabled',true) } $(selecteds.toArray().reverse()).each(function(index){ //多条反应,需要结合成josn_str index是从0开始的 qian='{"seqs_vip_platestyle":"纵向提交","seqs_vip_platename":"1","seqs_vip_plate":1,"seqs_vip_hole":' zhong=index*jihang+1 hou=',"seqs_vip_number":'+(index+1)+',"seqs_vip_sam_num":"'+ypmc_arr[index]+'","seqs_vip_sam_kind":"'+yplx_arr[index]+'","seqs_vip_fragment_size":"'+pianduan_arr[index]+'","seqs_vip_seqs_carry":"'+zaiti_arr[index]+'","seqs_vip_ant_type":"'+kangshengsu_arr[index]+'","seqs_vip_seqs_primer":"","seqs_vip_seqsprime_kind":"","seqs_vip_seqs_primer_id":"","seqs_vip_spec_require":"","seqs_vip_istest_pass":'+is_cetong_arr[index]+',"seqs_vip_return_sample":false,"seqs_vip_sample_remark":"'+beizhu_arr[index]+'","seqs_plus_prod_id":"'+ypdyh_arr[index]+'"},' josn_str=josn_str+qian+zhong+hou for(var i=2;i<=jihang;i++){ zhong=index*jihang+i josn_str=josn_str+qian+zhong+hou } if(selecteds.size()==index+1){ //如果是最后一项,那么把最后的逗号去掉 josn_str=josn_str.slice(0,-1); } }) josn_str='['+josn_str+'],'+'"orderid":null,"companyid":null}' josn_str='{"action":"AddSeqOrder","seqHighPhoto":"","seqscreenshot":[],"cust_id":'+kehu_ID+',"cust_name":"'+kehu_name+'","ketizu_id":"'+ketizu_ID+'","ketizu_name":"'+ketizu_name+'","ordersort":"","linkToGeneNo":"","seqo_product_company_id":"'+company_ID+'","seqo_product_company_name":"'+company_name+'","seqo_settlement_company_id":"","seqo_settlement_company_name":"","order":{"vip_order_name":"'+riqi+'","vip_order_kind":"PCR切胶","vip_order_platestyle":"2","vip_order_remark":"","vip_order_state":0,"vip_order_ketizuid":"'+ketizu_ID+'","vip_order_ketizuname":"'+ketizu_name+'","vip_order_isurgent":"false"},"seqo_id":null,"seqs":'+josn_str $.ajax({ type:"POST", url:"/ajax/PostErpUseVipPageHandler.ashx", contentType: "application/json", //必须这样写 dataType:"json", data: JSON.stringify(jQuery.parseJSON(josn_str)), //josn_str是你要提交是json字符串 success:function (data) { html.find('.ui-pg-input').eq(0).focus() alert('修改成功 ,光标自动定位在页数,直接按回车或更改页数可以查看更改结果') html.find('#button_jiace').eq(0).attr('disabled',false) } }) } //显示选择行所属的订单号 function 显示选择行所属的订单号(){ if(table.find('tbody').find("[aria-selected='true']").size()==0){return false} var dingdanhao=table.find('tbody').find("[aria-selected='true']").eq(0).find('[aria-describedby=list_seqo_order_id]').text() //查询订单号 toolbar.find('#a_search').eq(0).find('.l-btn-left').eq(0).click(); //点击 查询按钮 $('#searchForm').eq(0).find("option[value='seqo_order_id']").attr('selected','selected') //把找到的第一个查询条件改成 订单号 $('#searchForm').eq(0).find("[class='txt02 searchString']").eq(0).val(dingdanhao) $("#AB").click() } //显示选择行的样品名称 查询这个样品在这个客户名下所有的记录 function 显示选择行的样品名称(){ if(table.find('tbody').find("[aria-selected='true']").size()==0){return false} kehu_id=table.find('tbody').find("[aria-selected='true']").eq(0).find('[aria-describedby=list_seqo_cust_id]').text() //查询客户id yp_name=table.find('tbody').find("[aria-selected='true']").eq(0).find('[aria-describedby=list_seqs_sam_num]').text() //查询样品名称 toolbar.find('#a_search').eq(0).find('.l-btn-left').eq(0).click(); //点击 查询按钮 $('#searchForm').eq(0).find("option[value='seqo_cust_id']").eq(0).attr('selected','selected') //把找到的第一个查询条件改成 客户ID $('#searchForm').eq(0).find("[class='txt02 searchString']").eq(0).val(kehu_id) $('#searchForm').eq(0).find("option[value='seqs_sam_num']").eq(1).attr('selected','selected') //把找到的第二个查询条件改成 样品编号 $('#searchForm').eq(0).find("[class='txt02 searchString']").eq(1).val(yp_name) $("#AB").click() } //查询客户姓名+测序引物+课题组 function 查询引物(kehu_val,yinwu_val,ketizu_val){ for(var i=1;i<=5;i++){ yinwu_val=yinwu_val.replace(/ /g," ");//两个空格替换成一个空格 多运行几遍 } yinwu_arr=yinwu_val.split(" "); //把测序引物 按照 空管split成数组 console.log(yinwu_arr) toolbar.find('#a_search').eq(0).find('.l-btn-left').eq(0).click(); $('#searchForm').eq(0).find("option[value='seqo_cust_name']").eq(0).attr('selected','selected') //把找到的第一个查询条件改成 客户姓名 $('#searchForm').eq(0).find("option[value='seqo_ketizu']").eq(1).attr('selected','selected') //把找到的第二个查询条件改成 课题组 if (yinwu_arr.length>0){ for(var i=2;i<=yinwu_arr.length+1;i++){ $('#searchForm').eq(0).find("option[value='seqs_primer']").eq(i).attr('selected','selected') //测序引物 } } //查询方式前14个变成包含 $('.searchOper:lt(14)').find("option[value='cn']").attr('selected','selected') //测序引物 //放入信息 $('#searchForm').eq(0).find("[class='txt02 searchString']").eq(0).val(kehu_val) $('#searchForm').eq(0).find("[class='txt02 searchString']").eq(1).val(ketizu_val) for(var i=2;i<=yinwu_arr.length+1;i++){ $('#searchForm').eq(0).find("[class='txt02 searchString']").eq(i).val(yinwu_arr[i-2]) } $("#AB").click() } //修改模板板号 function 修改模板板号(){ if(table.find('tbody').find("[aria-selected='true']").size()==0){return false} selecteds=table.find('tbody').find("[aria-selected='true']") var r = confirm("确定要给这 "+selecteds.size()+" 条添加模板板号吗?"); if (r == false) { return false; } wenben=toolbar.find('#text_add_mubanbanhao').val() selecteds.each(function(){ $(this).click() if($(this).attr("aria-selected")=="false"){ $(this).click() } if($(this).attr("aria-selected")=="true"){ toolbar.find("[class='l-btn-text icon-edit']").eq(0).click(); $('#txt_seqs_tempplate').eq(0).val(wenben) $("#AB").click() } }) } //更改备注 function 更改备注(){ if(table.find('tbody').find("[aria-selected='true']").size()==0){return false} beizhu_xiugaiqian=toolbar.find('#text_beizhu_gaiqian').eq(0).val() beizhu_xiugaihou=toolbar.find('#text_beizhu_gaihou').eq(0).val() if(beizhu_xiugaiqian===""){return false} selecteds=table.find('tbody').find("[aria-selected='true']") var r = confirm("确定要给这 "+selecteds.size()+" 条修改备注吗?"); if (r == false) { return false; } var is_goon=true selecteds.each(function(){ beizhu=$(this).find('[aria-describedby=list_remark]').text() //获取备注 num=beizhu.split(beizhu_xiugaiqian).length-1 //存在多少遍要更改的部分,只有1遍才可以 if (num!=1){is_goon=false; alert('只有每个样品备注都能匹配且只匹配一次,才能修改');return false} }) if (is_goon==true){ selecteds.each(function(){ $(this).click() if($(this).attr("aria-selected")=="false"){ $(this).click() } if($(this).attr("aria-selected")=="true"){ beizhu=$(this).find('[aria-describedby=list_remark]').text() //获取备注 beizhu=beizhu.replace(beizhu_xiugaiqian,beizhu_xiugaihou) //替换好的备注 toolbar.find("[class='l-btn-text icon-edit']").eq(0).click(); $('#txt_manage_seqsample_remark').eq(0).val(beizhu) $("#AB").click() } }) setTimeout("alert('已改完,检查一下')", 1000 ) } } //清空备注 function 清空备注(){ if(table.find('tbody').find("[aria-selected='true']").size()==0){return false} selecteds=table.find('tbody').find("[aria-selected='true']") var r = confirm("确定要清空这 "+selecteds.size()+" 条的备注吗?"); if (r == false) { return false; } selecteds.each(function(){ $(this).click() if($(this).attr("aria-selected")=="false"){ $(this).click() } if($(this).attr("aria-selected")=="true"){ toolbar.find("[class='l-btn-text icon-edit']").eq(0).click(); $('#txt_manage_seqsample_remark').eq(0).val('') $("#AB").click() } }) setTimeout("alert('已改完,检查一下')", 1000 ) } //跳转到自备引物 function 跳转到自备引物(){ if(html.find('tbody').find("[aria-selected='true']").size()==0){return false} //如果没有选择的行,那么退出 //如果 自备引物 页面没有打开 则自动打开 if($('#tabs').find('li:contains(自备引物)').size()===0){ //自动打开 自备引物页面 $('#lnav').find('li:contains(自备引物)').click() var html_自备引物=$('iframe[src="/viporder/SeqCustPrimerList.aspx"]').get(0)//自备引物页面 html_自备引物.onload=function(){ 公共_查引物() 自备引物() } }else if($('#tabs').find('li:contains(自备引物)').size()===1){ 公共_查引物() } function 公共_查引物(){ selecteds=html.find('tbody').find("[aria-selected='true']") var ids_shuzu = new Array(); for (var i=0;i<selecteds.size();i++){ id=selecteds.eq(i).find('[aria-describedby=list_seqs_primer_id_2_kind]').text() //获取引物位置 //如果没找到 -Z则进行下次循环 if(id.indexOf('-Z')==-1){continue} id=id.slice(0,-2)//把最后两个字符去掉,最后的引物位置 ids_shuzu[i]=id } //数组去重 ids_shuzu=quchong_arr(ids_shuzu) //在 自备引物界面 查询 //自备引物的html必须加个后缀或者前缀 不能和之前的重复 var zibeiyinwu_html=$('iframe[src="/viporder/SeqCustPrimerList.aspx"]').contents().find('body').eq(0)//如果找到 则说明找到了自备引物的页面 toolbar_zibeiyinwu=zibeiyinwu_html.find('.toolbar').eq(0) // 找到了自备引物的toolbar工具栏 toolbar_zibeiyinwu.find('#a_search').eq(0).find('.l-btn-left').eq(0).click(); //$('#searchForm').eq(0).find("option[value='seqs_primer_id_2_kind']").attr('selected','selected') //把找到的查询条件改成 引物位置 $('#radd').next().attr('checked','true') //选择 OR 选项 for (var i=0;i<ids_shuzu.length;i++){ $('#searchForm').eq(0).find("[class='txt02 searchString']").eq(i).val(ids_shuzu[i]) } if($("#AB").length==1){ setTimeout("$('#AB').click()", 200) } $('#tabs').find('li:contains(自备引物)').click() } } //提取数据 function 提取数据(){ if(table.find('tbody').find("[aria-selected='true']").size()==0){return false} biaoti='生产编号&订单号&客户ID&客户姓名&客户地址&课题组&课题组ID&样品对应号&样品编号&引物位置&测序引物&引物浓度&样品类型&载体&抗生素&片段大小&是否测通&原浓度&模板板号&模板孔号&备注&添加时间&生产分公司' var shuju="" table.find('tbody').find("[aria-selected='true']").each(function(){ shengchanbianhao=$(this).find('[aria-describedby=list_undefined]').text() //生产编号 dingdanhao=$(this).find('[aria-describedby=list_seqo_order_id]').text() //订单号 kehu_id=$(this).find('[aria-describedby=list_seqo_cust_id]').text() //客户ID kehu_xingming=$(this).find('[aria-describedby=list_seqo_cust_name]').text() //客户姓名 kehu_dizhi=$(this).find('[aria-describedby=list_seqo_cust_address]').text() //客户地址 ketizu=$(this).find('[aria-describedby=list_seqo_ketizu]').text() //课题组 ketizu_id=$(this).find('[aria-describedby=list_seqo_ketizu_id]').text() //课题组ID yangpinduiyinghao=$(this).find('[aria-describedby=list_seqs_plus_prod_id]').text() //样品对应号 yangpinbianhao=$(this).find('[aria-describedby=list_seqs_sam_num]').text() //样品编号 yinwuweizhi=$(this).find('[aria-describedby=list_seqs_primer_id_2_kind]').text() //引物位置 cexuyinwu=$(this).find('[aria-describedby=list_seqs_primer]').text() //测序引物 yinwunongdu=$(this).find('[aria-describedby=list_seqs_observe]').text() // 引物浓度 yangpinleixing=$(this).find('[aria-describedby=list_seqs_sam_type]').text() //样品类型 zaiti=$(this).find('[aria-describedby=list_seqs_carry]').text() // 载体 kangshengsu=$(this).find('[aria-describedby=list_seqs_ant_type]').text() //抗生素 pianduandaxiao=$(this).find('[aria-describedby=list_seqs_fragment_size]').text() //片段大小 shifoucetong=$(this).find('[aria-describedby=list_seqs_istest_pass]').text() //是否测通 yuannongdu=$(this).find('[aria-describedby=list_seqs_original_con]').text() //原浓度 mubanbanhao=$(this).find('[aria-describedby=list_seqs_tempplate]').text() // 模板板号 mubankonghao=$(this).find('[aria-describedby=list_seqs_tempspace]').text() //模板孔号 beizhu=$(this).find('[aria-describedby=list_remark]').text() //备注 tianjiashijian=$(this).find('[aria-describedby=list_seqs_add_time]').text() //添加时间 shengchangongsi=$(this).find('[aria-describedby=list_seqs_product_company_name]').text() //生产分公司 shuju=shuju+shengchanbianhao+"&"+dingdanhao+"&"+kehu_id+"&"+kehu_xingming+"&"+kehu_dizhi+"&"+ketizu+"&"+ketizu_id+"&"+yangpinduiyinghao+"&"+yangpinbianhao+"&"+yinwuweizhi+"&"+cexuyinwu+"&"+yinwunongdu+"&"+yangpinleixing+"&"+zaiti+"&"+kangshengsu+"&"+pianduandaxiao+"&"+shifoucetong+"&"+yuannongdu+"&"+mubanbanhao+"&"+mubankonghao+"&"+beizhu+"&"+tianjiashijian+"&"+shengchangongsi+"\n" }) if($('#textarea_shuju').length===0){ //$("body").find("[class='layout-body panel-body panel-body-noheader panel-body-noborder']").append('<textarea id="textarea_biaoti" style="position:absolute;left:400px;" rows="1" cols="400"></textarea>') //$("body").find("[class='layout-body panel-body panel-body-noheader panel-body-noborder']").append('<textarea id="textarea_shuju" style="position:absolute;left:400px;top:20px" rows="2" cols="400"></textarea>'); } $('#textarea_shuju').css('visibility','visible') $('#textarea_biaoti').css('visibility','visible') $("#textarea_biaoti").val(biaoti) $("#textarea_shuju").val($("#textarea_shuju").val()+shuju) } //清除数据 function 清除数据(){ $("#textarea_biaoti").val('') $('#textarea_shuju').val('') $('#textarea_biaoti').css('visibility','hidden') $('#textarea_shuju').css('visibility','hidden') } //模板板号和孔号改为负一 function 模板板号和孔号改为负一(){ if(table.find('tbody').find("[aria-selected='true']").size()==0){return false} //如果没有选择的行,那么退出 selecteds=table.find('tbody').find("[aria-selected='true']") var r = confirm("确定要给把 "+selecteds.size()+" 条反应的模板板号和孔号都改成-1吗?"); if (r == false) { return false; } selecteds.each(function(){ $(this).click() if($(this).attr("aria-selected")=="false"){ $(this).click() } if($(this).attr("aria-selected")=="true"){ toolbar.find("[class='l-btn-text icon-edit']").eq(0).click(); $('#txt_seqs_tempplate').eq(0).val('-1') $('#txt_seqs_tempspace').eq(0).val('-1') $("#AB").click() } }) } //选中一些行后,把相同引物位置的其余引物标记颜色 function 相同引物位置标记颜色(){ //把选中的所有行的行数显示在右下角 old_text=html.find('#pager_right').eq(0).find('div').eq(0).text() num_s=table.find('tbody').find("[aria-selected='true']").size() html.find('#pager_right').eq(0).find('div').eq(0).find('#reve').remove() html.find('#pager_right').eq(0).find('div').eq(0).prepend("<span id='reve'>总共选中了 "+num_s+" 行 </span>") //改颜色 var yinwu_weizhi=[] //对被选中的行进行 查找引物位置并赋值到yinwu_weizhi数组里面 table.find('tbody').find("[aria-selected='true']").each(function(){ yinwu_weizhi.push($(this).find('[aria-describedby=list_seqs_primer_id_2_kind]').eq(0).text()) }) //获取的引物位置需要和当前页面所有的tr里面的引物位置进行比较 table.find('[aria-describedby=list_seqs_primer_id_2_kind]').attr('Bgcolor','') //先把所有的行的颜色去掉 if(yinwu_weizhi.length>0){ table.find('tr').each(function(){ every_weizhi=$(this).find('[aria-describedby=list_seqs_primer_id_2_kind]').eq(0).text() for(var i=0;i<yinwu_weizhi.length;i++){ if(yinwu_weizhi[i]==every_weizhi){ $(this).find('[aria-describedby=list_seqs_primer_id_2_kind]').eq(0).attr('Bgcolor','#ceEEe7') return; } } }) } } //把 测序样品 的 流程名称 是反应生产,模板失败,停止反应 标颜色 function 状态_标颜色(){ table.find('[aria-describedby=list_seqs_process]').each(function(){ if($(this).text()=="反应生产" || $(this).text()=="模板失败" || $(this).text()=="停止反应" || $(this).text()=="模板成功" || $(this).text()=="样品不足" || $(this).text()=="引物已清"){ $(this).attr('Bgcolor','#AeEEe7') $(this).parent().find('[aria-describedby=list_seqs_primer]').eq(0).attr('title','更改此引物需要跟反应组说!!!') //$(this).parent().find('[aria-describedby=list_seqs_primer]').eq(0).attr('Bgcolor','#f58220') //#AeEEe7 } }) //当table出现数据改变的时候 $(html).find('#list').on('DOMNodeInserted',function(e) { //$(e.target)代表的每一行 流程名称=$(e.target).find('[aria-describedby=list_seqs_process]') if(流程名称.text()=="反应生产" || 流程名称.text()=="模板失败" || 流程名称.text()=="停止反应" || 流程名称.text()=="模板成功" || 流程名称.text()=="样品不足" || $(this).text()=="引物已清"){ 流程名称.attr('Bgcolor','#AeEEe7') $(e.target).find('[aria-describedby=list_seqs_primer]').eq(0).attr('title','更改此引物需要跟反应组说!!!') } 备注=$(e.target).find('[aria-describedby=list_remark]') if(备注.text().toUpperCase().indexOf('菌P')!==-1 && 备注.text().indexOf('待测')!==-1) {//说明找到了菌P两个字 备注.attr('Bgcolor','#f58220') $(e.target).find('[aria-describedby=list_remark]').eq(0).attr('title','如果菌P的样品要把待测去掉 那么需要跟反应组说下') } }) } //点击批量编辑 批量编辑测序引物 按钮 如果需要改变引物,那么需要跟反应组说一下(反应生产 模板成功等) function 更改引物_提醒_跟反应组说(){ selecteds=table.find('tbody').find("[aria-selected='true']") tag=0 selecteds.find('[aria-describedby=list_seqs_process]').each(function(){ if($(this).text()=="反应生产" || $(this).text()=="模板失败" || $(this).text()=="停止反应" || $(this).text()=="模板成功" || $(this).text()=="引物已清"){ tag=1 } }) if(tag===1){ yinwu_html=$('#iframeUpload').contents().find('body').eq(0) //如果找到 说明找到了 批量更改测序引物界面 if(yinwu_html.length===1){ setTimeout(function(){ alert('改的引物如果有反应生产或者模板成功的需要跟反应组说') },300) } } } //公共函数 判断选择的是否是同一个订单号 function is_one_order(html){ //如果没有选择行则退出 if(table.find('tbody').find("[aria-selected='true']").size()==0){return false} panduan=0 selecteds=table.find('tbody').find("[aria-selected='true']") selecteds.find('[aria-describedby=list_seqo_order_id]').each(function(){ if(selecteds.find('[aria-describedby=list_seqo_order_id]').eq(0).text()!=$(this).text()){ alert('需要选择同一个订单号!') panduan=1 return false; } }) if(panduan==1){ //如果 不是同一个订单号,就退出 return false; }else{ return selecteds; } } //公共函数 生产编号需要降序排序 function 生产编号需要降序排序(selecteds){ new_scbh_arr=[] old_scbh_arr=[] $(selecteds.toArray().reverse()).each(function(){ //倒序把生产编号放进数组 new_scbh_arr.push($(this).find('[aria-describedby=list_undefined]').text()) }) old_scbh_arr=new_scbh_arr.slice() new_scbh_arr.sort() //对 生产编号排序,如果和 old_scbh_arr的顺序一样,那么继续,如果不一样,那么退出 for (var i=0;i<old_scbh_arr.length;i++){ if(old_scbh_arr[i]!=new_scbh_arr[i]){ alert('生产编号需要降序排序') return false; } } return true } //公共函数 获取选择的行的所有数据 function 获取选择的行的所有数据(selecteds){ scbh_arr=[] //生产编号 ypdyh_arr=[] //样品对应号 new_ypdyh_arr=[] //新的样品对应号 ypmc_arr=[] //样品名称 new_ypmc_arr=[] //新的样品名称 yinwu_arr=[] //引物名称 new_yinwu_arr=[] //新的引物名称 yinwu_weizhi_arr=[] //引物位置 new_yinwu_weizhi_arr=[] //新的引物位置 yinwu_nong_arr=[] //引物浓度 new_yinwu_nong_arr=[] //新的引物浓度 yplx_arr=[] //样品类型 new_yplx_arr=[] //新的样品类型 zaiti_arr=[] //载体 new_zaiti_arr=[] //新的载体 pianduan_arr=[] //片段 new_pianduan_arr=[] //新的片段 kangshengsu_arr=[] //抗生素 new_kangshengsu_arr=[] //新的抗生素 beizhu_arr=[] //备注 new_beizhu_arr=[] //新的备注 is_cetong_arr=[] //是否测通 new_is_cetong_arr=[] //新的是否测通 $(selecteds.toArray().reverse()).each(function(){ //倒序把生产编号放进数组 scbh_arr.push($(this).find('[aria-describedby=list_undefined]').text()) //倒序把样品对应号放进数组 ypdyh_name=$(this).find('[aria-describedby=list_seqs_plus_prod_id]').html() if(ypdyh_name==" "){ ypdyh_arr.push('') }else{ ypdyh_arr.push(ypdyh_name) } //倒序把样品名称放进数组 ypmc_arr.push($(this).find('[aria-describedby=list_seqs_sam_num]').text().trim()) //倒序把引物名称放进数组 yinwu_name=$(this).find('[aria-describedby=list_seqs_primer]').html() if(yinwu_name==" "){ yinwu_arr.push('') }else{ yinwu_arr.push(yinwu_name) } //倒序把引物位置放进数组 yinwu_weizhi_arr.push($(this).find('[aria-describedby=list_seqs_primer_id_2_kind]').text().trim()) //倒序把引物浓度放进数组 nongdu_name=$(this).find('[aria-describedby=list_seqs_observe]').html() if(nongdu_name==" "){ yinwu_nong_arr.push('') }else{ yinwu_nong_arr.push(nongdu_name) } //倒序把样品类型放进数组 yplx_arr.push($(this).find('[aria-describedby=list_seqs_sam_type]').text().trim()) //倒序把载体放进数组 zaiti_name=$(this).find('[aria-describedby=list_seqs_carry]').html() if(zaiti_name==" "){ //如果载体为空 或者 空格 zaiti_arr.push("") }else{ zaiti_arr.push(zaiti_name) } //倒序把片段放进数组 pianduan_name=$(this).find('[aria-describedby=list_seqs_fragment_size]').html() if(pianduan_name==" "){ //如果片段为空 或者 空 pianduan_arr.push("") }else{ pianduan_arr.push(pianduan_name) } //倒序把抗生素放进数组 kangshengsu_name=$(this).find('[aria-describedby=list_seqs_ant_type]').html() if(kangshengsu_name==" "){ //如果为空 或者 空格 kangshengsu_arr.push("") }else{ kangshengsu_arr.push(kangshengsu_name) } //倒序把备注放进数组 beizhu_name=$(this).find('[aria-describedby=list_remark]').html() if(beizhu_name==" "){ beizhu_arr.push("") }else{ beizhu_arr.push(beizhu_name) } //倒序把是否测通放进数组 cetong_is=$(this).find('[aria-describedby=list_seqs_istest_pass]').html() if(cetong_is=="是" || cetong_is=="true"){ is_cetong_arr.push(true) }else{is_cetong_arr.push(false)} }) // console.log(scbh_arr) //生产编号 // console.log(ypdyh_arr) //样品对应号 // console.log(ypmc_arr) //样品名称 // console.log(yinwu_arr) //引物名称 // console.log(yinwu_weizhi_arr) //引物位置 // console.log(yinwu_nong_arr) //引物浓度 // console.log(yplx_arr) //样品类型 // console.log(zaiti_arr) //载体 // console.log(pianduan_arr) //片段 // console.log(kangshengsu_arr) //抗生素 // console.log(beizhu_arr) //备注 // console.log(is_cetong_arr) //是否测通 return [scbh_arr,ypdyh_arr,ypmc_arr,yinwu_arr,yinwu_weizhi_arr,yinwu_nong_arr,yplx_arr,zaiti_arr,pianduan_arr,kangshengsu_arr,beizhu_arr,is_cetong_arr] //以下代码是仅仅为了复制方便 arr[0]=scbh_arr//生产编号 arr[1]=ypdyh_arr //样品对应号 arr[2]=ypmc_arr //样品名称 arr[3]=yinwu_arr //引物名称 arr[4]=yinwu_weizhi_arr //引物位置 arr[5]=yinwu_nong_arr //引物浓度 arr[6]=yplx_arr //样品类型 arr[7]=zaiti_arr //载体 arr[8]=pianduan_arr //片段 arr[9]=kangshengsu_arr //抗生素 arr[10]=beizhu_arr //备注 arr[11]=is_cetong_arr //是否测通 } }