2.7-合成样品

合成样品

Questo script non dovrebbe essere installato direttamente. È una libreria per altri script da includere con la chiave // @require https://update.greasyfork.org/scripts/470847/1433388/27-%E5%90%88%E6%88%90%E6%A0%B7%E5%93%81.js

  1. function 合成样品(){
  2. console.log('新的合成样品界面')
  3. var local_判断是否是测序引物=localStorage.getItem('判断是否是测序引物');
  4. var local_查询同序列引物=localStorage.getItem('查询同序列引物');
  5. var local_查询订单号=localStorage.getItem('查询订单号');
  6. var local_查询打印修饰HPLC标签=localStorage.getItem('查询打印修饰HPLC标签');
  7. var html=$('iframe[src="/syn/SynSample.aspx"]')//合成样品页面
  8. html=html.contents().find('body').eq(0)
  9. var toolbar=html.find('.toolbar').eq(0) // 找到了toolbar工具栏
  10. //添加toolbar工具栏按钮
  11. 添加toolbar按钮()
  12. //添加toolbar工具栏按钮
  13. function 添加toolbar按钮(){
  14. if (toolbar.find('.weiyiyici').length==0){
  15. //添加标记
  16. toolbar.addClass('weiyiyici')
  17. //判断是否是测序引物
  18. if (local_判断是否是测序引物=='true'){
  19. toolbar.append('<button id="button_is_cexuyinwu" onclick="return false">判断是否是测序引物</button>') //添加按钮
  20. toolbar.find('#button_is_cexuyinwu').click(function(){
  21. hecheng_is_cexuyinwu()
  22. })
  23. }
  24. //查询同序列引物
  25. if (local_查询同序列引物=='true'){
  26. toolbar.append('<button id="button_find_tong_xulie" onclick="return false">查询同序列引物</button>') //添加按钮
  27. toolbar.find('#button_find_tong_xulie').click(function(){
  28. hecheng_tong_xulie()
  29. })
  30. }
  31. //查询选择订单号的订单
  32. if (local_查询订单号=='true'){
  33. toolbar.append('<button id="button_find_dingdanhao" onclick="return false">查询订单号</button>') //添加按钮
  34. toolbar.find('#button_find_dingdanhao').click(function(){
  35. hecheng_find_dingdanhao()
  36. })
  37. }
  38. //查询打印修饰标签
  39. if(local_查询打印修饰HPLC标签=='true'){
  40. toolbar.append('<button id="button_chaxun_xiushi" onclick="return false">查询修饰HPLC</button>') //添加按钮
  41. toolbar.append('<button id="button_dayin_xiushi_biaoqian" onclick="return false">打印修饰HPLC标签</button>') //添加按钮
  42. toolbar.find('#button_chaxun_xiushi').click(function(){
  43. hecheng_chaxun_xiushi()
  44. })
  45. toolbar.find('#button_dayin_xiushi_biaoqian').click(function(){
  46. hecheng_dayin_xiushi_biaoqian()
  47. })
  48. }
  49. }
  50. }
  51. //合成样品 判断是否是测序引物 从 合成订单 合成费用 出库 完成 入财务都查一下
  52. function hecheng_is_cexuyinwu(){
  53. var selecs=html.find('tbody').eq(0).find("[aria-selected='true']") //选择选中的行
  54. if(selecs.length===0){
  55. return false
  56. }
  57. selecs.each(function(){
  58. var each_duixiang=$(this)
  59. var hecheng_dingdanhao=$(this).find('[aria-describedby=list_syn_s_order]').eq(0).text()
  60. for(var i=1;i<=5;i++){
  61. if(i===1){
  62. //在 合成订单找
  63. var tijiao="/syn/ashx/SynOrderHandler.ashx?_search=true&nd=1631714310616&rows=20&page=1&sidx=syno_id&sord=desc&filters=%7B%22groupOp%22%3A%22AND%22%2C%22rules%22%3A%5B%7B%22field%22%3A%22syno_id%22%2C%22op%22%3A%22eq%22%2C%22data%22%3A%22"+hecheng_dingdanhao+"%22%7D%5D%7D"
  64. }else if(i===2){
  65. var tijiao="/syn/ashx/Syn_jisuan_moneyHandler.ashx?_search=true&nd=1631720231655&rows=20&page=1&sidx=syno_id&sord=desc&filters=%7B%22groupOp%22%3A%22AND%22%2C%22rules%22%3A%5B%7B%22field%22%3A%22syno_id%22%2C%22op%22%3A%22eq%22%2C%22data%22%3A%22"+hecheng_dingdanhao+"%22%7D%5D%7D"
  66. }else if(i===3){
  67. var tijiao="/syn/ashx/SynOrderOutHandler.ashx?_search=true&nd=1631721204479&rows=20&page=1&sidx=syno_id&sord=desc&filters=%7B%22groupOp%22%3A%22AND%22%2C%22rules%22%3A%5B%7B%22field%22%3A%22syno_id%22%2C%22op%22%3A%22eq%22%2C%22data%22%3A%22"+hecheng_dingdanhao+"%22%7D%5D%7D"
  68. }else if(i===4){
  69. var tijiao="/syn/ashx/SynOrderCompleteHandler.ashx?_search=true&nd=1631722322368&rows=100&page=1&sidx=syno_id&sord=desc&filters=%7B%22groupOp%22%3A%22AND%22%2C%22rules%22%3A%5B%7B%22field%22%3A%22syno_id%22%2C%22op%22%3A%22eq%22%2C%22data%22%3A%22"+hecheng_dingdanhao+"%22%7D%5D%7D"
  70. }else if(i===5){
  71. var tijiao="/syn/ashx/SynOrderToFinaceHandler.ashx?_search=true&nd=1631722400048&rows=20&page=1&sidx=syno_id&sord=desc&filters=%7B%22groupOp%22%3A%22AND%22%2C%22rules%22%3A%5B%7B%22field%22%3A%22syno_id%22%2C%22op%22%3A%22eq%22%2C%22data%22%3A%22"+hecheng_dingdanhao+"%22%7D%5D%7D"
  72. }
  73. $.ajaxSettings.async = false; //get请求默认是异步的,在这里改为同步
  74. $.get(tijiao,
  75. function (data) {
  76. //先截取订单号
  77. var ding=data.substring(data.indexOf('syno_id":"') + 10,data.indexOf('","cust_id"'))
  78. if(ding===hecheng_dingdanhao){
  79. var beizhu=data.substring(data.indexOf('syno_remark":"') + 14,data.indexOf('","syno_add_people'))
  80. //说明备注里面包含 测序引物 四个字
  81. if(beizhu.indexOf('测序引物')!==-1){
  82. var dingdanhao_dangtian=each_duixiang.find('td[aria-describedby=list_syn_s_order]')
  83. dingdanhao_dangtian.attr('title',beizhu)
  84. dingdanhao_dangtian.css('color','red')
  85. i=5
  86. }else{
  87. var dingdanhao_dangtian=each_duixiang.find('td[aria-describedby=list_syn_s_order]')
  88. dingdanhao_dangtian.attr('title',beizhu)
  89. i=5
  90. }
  91. }
  92. });
  93. }
  94. })
  95. }
  96. //合成样品 查询同序列所有引物
  97. function hecheng_tong_xulie(){
  98. var selec=html.find('tbody').eq(0).find("[aria-selected='true']").eq(0) //选择第一个选中的行
  99. if(selec.length===0){return false}
  100. var hecheng_xulie=selec.find('[aria-describedby=list_syn_s_seq]').eq(0).text()
  101. toolbar.find('#a_search').eq(0).find('.l-btn-left').eq(0).click();
  102. $('#searchForm').eq(0).find("option[value='syn_s_seq']").eq(0).attr('selected','selected') //把找到的第一个查询条件改成 序列
  103. $('#searchForm').eq(0).find("[class='txt02 searchString']").eq(0).val(hecheng_xulie)
  104. $("#AB").click()
  105. }
  106. //合成样品 查询选择订单号的订单
  107. function hecheng_find_dingdanhao(){
  108. var selec=html.find('tbody').eq(0).find("[aria-selected='true']").eq(0) //选择第一个选中的行
  109. if(selec.length===0){
  110. return false
  111. }
  112. var hecheng_dingdanhao=selec.find('[aria-describedby=list_syn_s_order]').eq(0).text()
  113. toolbar.find('#a_search').eq(0).find('.l-btn-left').eq(0).click();
  114. $('#searchForm').eq(0).find("option[value='syn_s_order']").eq(0).attr('selected','selected') //把找到的第一个查询条件改成 客户名
  115. $('#searchForm').eq(0).find("[class='txt02 searchString']").eq(0).val(hecheng_dingdanhao)
  116. $("#AB").click()
  117. }
  118. //查询修饰HPLC
  119. function hecheng_chaxun_xiushi(){
  120. toolbar.find('#a_search').eq(0).find('.l-btn-left').eq(0).click();
  121. $('#searchForm').eq(0).find("option[value='syn_s_pur']").eq(0).attr('selected','selected') //把找到的第一个查询条件改成 纯化方式
  122. //$('#searchForm').eq(0).find("option[value='ne']").eq(0).attr('selected','selected') //把找到的第一个查询方式改成 不等于
  123. $('#searchForm').eq(0).find("[class='txt02 searchString']").eq(0).val('HPLC')
  124. $("#AB").click()
  125. }
  126. //打印修饰HPLC标签
  127. function hecheng_dayin_xiushi_biaoqian(){
  128. var selects=html.find('tbody').eq(0).find("[aria-selected='true']")
  129. if(selects.size()==0){return false}
  130. res="<NewDataSet>"
  131. selects.each(function(){
  132. for(var i=1;i<=2;i++){
  133. res+="<Table1>"
  134. 生产编号=$(this).find('[aria-describedby=list_syn_s_num]').eq(0).text() //生产编号
  135. res+="<shengchanbianhao>"+生产编号+"</shengchanbianhao>"
  136. 板号=$(this).find('[aria-describedby=list_syn_s_palte]').text() //板号
  137. res+="<banhao>"+板号+"</banhao>"
  138. 孔号=$(this).find('[aria-describedby=list_syn_s_hole]').text() //孔号
  139. res+="<konghao>"+孔号+"</konghao>"
  140. 修饰=$(this).find('[aria-describedby=list_syn_s_decorate]').text() //修饰
  141. res+="<xiushi>"+修饰+"</xiushi>"
  142. OD总量=$(this).find('[aria-describedby=list_syn_s_od]').text() //OD总量
  143. 单管量=$(this).find('[aria-describedby=list_syn_s_od_tube]').text() //单管量
  144. res+="<od>"+OD总量+"("+单管量+")"+"</od>"
  145. res+="</Table1>"
  146. }
  147. })
  148. res+="</NewDataSet>"
  149. //生产编号
  150. 生产编号_arr=selects.map(function(key,item){
  151. return $(item).find('[aria-describedby=list_syn_s_num]').text()
  152. })
  153. 保存文本到本地(res,'down.html')
  154. }
  155. //保存文本到本地
  156. function 保存文本到本地(text, filename){
  157. // 创建一个Blob实例,类型为纯文本
  158. var blob = new Blob([text], { type: 'text/plain' });
  159. // 创建一个指向Blob对象的URL
  160. var url = URL.createObjectURL(blob);
  161. // 创建一个a标签
  162. var a = document.createElement("a");
  163. // 设置a标签属性
  164. a.href = url;
  165. a.download =filename;
  166. // 模拟a标签点击,触发下载
  167. document.body.appendChild(a);
  168. a.click();
  169. // 清理临时DOM和对象URL
  170. document.body.removeChild(a);
  171. URL.revokeObjectURL(url);
  172. window.open('http://localhost/xiushiYinwuBiaoqian/print.html')
  173. }
  174. }