2.21-合成费用

合成费用

当前为 2024-08-15 提交的版本,查看 最新版本

此脚本不应直接安装。它是供其他脚本使用的外部库,要使用该库请加入元指令 // @require https://update.gf.qytechs.cn/scripts/503739/1428477/221-%E5%90%88%E6%88%90%E8%B4%B9%E7%94%A8.js

您需要先安装一个扩展,例如 篡改猴Greasemonkey暴力猴,之后才能安装此脚本。

You will need to install an extension such as Tampermonkey to install this script.

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴Userscripts ,之后才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。

您需要先安装用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

function 合成费用(src){
	console.log('新的合成费用界面')
	var local_不干胶式_备注带缺和不带缺=localStorage.getItem('不干胶式_备注带缺和不带缺');
	var html=$('iframe[src="'+src+'"]')//页面
	html=html.contents().find('body').eq(0)
	var toolbar=html.find('.toolbar').eq(0)  // 找到了toolbar工具栏
	var sample_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.find('#a_orderToCustmer').eq(0)
				//点击送货单按钮
				送货单按钮.click(function(){
					不干胶式_备注带缺和不带缺(html)
				})
			}
		}
	}
	
	
	//不干胶式_备注带缺和不带缺
	function 不干胶式_备注带缺和不带缺(html){
		//弹框加个按钮
		$('#uiform').find('#print_synBDT').parent().append('<button id="button_buganjiaoshi_bubaohan_que" onclick="return false">不干胶式_备注不包含缺</button>')
		$('#uiform').find('#print_synBDT').parent().append('<button id="button_buganjiaoshi_baohan_que" onclick="return false">不干胶式_备注包含缺</button>')
		//点击不干胶式_备注不包含缺按钮
		$('#uiform').find('#button_buganjiaoshi_bubaohan_que').click(function(){
			不干胶式_备注不包含缺_详细代码(html)
		})
		//点击不干胶式_备注包含缺按钮
		$('#uiform').find('#button_buganjiaoshi_baohan_que').click(function(){
			console.log(2)
		})
	}
	function 不干胶式_备注不包含缺_详细代码(html){
		selecteds=sample_table.find('tbody').find("[aria-selected='true']")
		dingdanhao_arr_str=''
		selecteds.each(function(){
			dingdanhao=$(this).find('[aria-describedby=list_syno_id]').text() 	//订单号
			dingdanhao_arr_str=dingdanhao_arr_str+dingdanhao+','
		})
		console.log(dingdanhao_arr_str)
		$.ajaxSettings.async = false; //get请求默认是异步的,在这里改为同步
		$.get('/syn/xmldata/xmlSynStoreOut.aspx?order='+dingdanhao_arr_str+'&style=buganjiao',function(data){
			console.log(data)
		 //     客户名_arr=文本_取中间文本_批量(data,'"cust_name":"','","')
			//  引物名称_arr=文本_取中间文本_批量(data,'"syn_s_primer":"','","')
			//  OD总量_arr=文本_取中间文本_批量(data,'"syn_s_od":"','","')
			//  单管量_arr=文本_取中间文本_批量(data,'"syn_s_od_tube":"','","')
			//  console.log(引物名称_arr)
			
			//  孔号_arr=文本_取中间文本_批量(data,'"syn_s_hole":"','","')
			//  备注_arr=文本_取中间文本_批量(data,'"syn_s_remark":"','","')
		 }); 
		return true
		var 客户名_arr=[]
		var 引物名称_arr=[]
		var OD总量_arr=[]
		var 单管量_arr=[]
		//根据总量和单管量 获取管数
		var 管数_arr=[]
		var 孔号_arr=[]
		var 备注_arr=[]
		$.ajaxSettings.async = false; //get请求默认是异步的,在这里改为同步
		$.get('/syn/ashx/SynSampleHandler.ashx?_search=true&nd=1720597763777&rows=200&page=1&sidx=syn_s_num&sord=asc&filters={"groupOp":"AND","rules":[{"field":"syn_s_palte","op":"eq","data":"'+板号+'"}]}',function(data){
		     客户名_arr=文本_取中间文本_批量(data,'"cust_name":"','","')
			 引物名称_arr=文本_取中间文本_批量(data,'"syn_s_primer":"','","')
			 OD总量_arr=文本_取中间文本_批量(data,'"syn_s_od":"','","')
			 单管量_arr=文本_取中间文本_批量(data,'"syn_s_od_tube":"','","')
			 console.log(引物名称_arr)
			 //决定每个引物出几管
			 for (var i=0;i<OD总量_arr.length;i++){
				 管量=parseInt(OD总量_arr[i]/单管量_arr[i])+1
				 if (管量>4){
					 管量=4
				 }
				 管数_arr.push(管量)
			 }
			 孔号_arr=文本_取中间文本_批量(data,'"syn_s_hole":"','","')
			 备注_arr=文本_取中间文本_批量(data,'"syn_s_remark":"','","')
		 }); 
		 
		 
		 //排序*******************按照 A1 B1...H1,A2..H2这个顺序********************
		 var new_客户名_arr=[]
		 var new_引物名称_arr=[]
		 var new_OD总量_arr=[]
		 var new_单管量_arr=[]
		 var new_管数_arr=[]
		 var new_孔号_arr=[]
		 var new_备注_arr=[]
		 位置字典={
		 	1:'A',
		 	2:'B',
		 	3:'C',
		 	4:'D',
		 	5:'E',
		 	6:'F',
		 	7:'G',
		 	8:'H',
		 }
		 //i表示1到12,j表示A到H
		 for(var i=1;i<13;i++){
			 for(var j=1;j<9;j++){
				 字母=位置字典[j]
				 if (i<10){
				 	孔号位置=孔号_arr.indexOf(字母+'0'+i) 
				 }else{
				 	孔号位置=孔号_arr.indexOf(字母+i)
				 }
				 if (孔号位置 !== -1){
					 new_客户名_arr.push(客户名_arr[孔号位置])
					 new_引物名称_arr.push(引物名称_arr[孔号位置])
					 new_OD总量_arr.push(OD总量_arr[孔号位置])
					 new_单管量_arr.push(单管量_arr[孔号位置])
					 new_管数_arr.push(管数_arr[孔号位置])
					 new_孔号_arr.push(孔号_arr[孔号位置])
					 new_备注_arr.push(备注_arr[孔号位置])
				 }
			 }
		 }
		 
		 res="<NewDataSet>"
		 if (new_客户名_arr.length>=1){
			 for (var i=0;i<new_客户名_arr.length;i++){
				 //决定测序引物的位置
				 for(var j=0;j<new_管数_arr[i];j++){
					 if (new_备注_arr[i].search('测序引物') >=0){
						 res+="<Table1>"
						 if (j == 0){
							 res+="<syn_s_primer>"+new_引物名称_arr[i]+'('+new_客户名_arr[i]+')'+"</syn_s_primer>"
						 }else{
							 res+="<syn_s_primer>"+new_引物名称_arr[i]+"</syn_s_primer>"
						 }
						 
						 res+="<syn_s_hole>"+new_孔号_arr[i]+"</syn_s_hole>"
						 res+="</Table1>"
					 }else{
						 res+="<Table1>"
						 res+="<syn_s_primer>"+new_引物名称_arr[i]+"</syn_s_primer>"
						 res+="<syn_s_hole>"+new_孔号_arr[i]+"</syn_s_hole>"
						 res+="</Table1>"
					 }
				 }
			 }
		 }
		 res+="</NewDataSet>"
		 保存文本到本地(res,'down.html')
	}
	
	//保存文本到本地
	function 保存文本到本地(text, filename){
		// 创建一个Blob实例,类型为纯文本
		    var blob = new Blob([text], { type: 'text/plain' });
		 
		    // 创建一个指向Blob对象的URL
		    var url = URL.createObjectURL(blob);
		 
		    // 创建一个a标签
		    var a = document.createElement("a");
		 
		    // 设置a标签属性
		    a.href = url;
		    a.download =filename;
		 
		    // 模拟a标签点击,触发下载
		    document.body.appendChild(a);
		    a.click();
		 
		    // 清理临时DOM和对象URL
		    document.body.removeChild(a);
		    URL.revokeObjectURL(url);
			window.open('http://localhost/addName/print.html')
	}
}