SendQISToEtQ
    online
    button
    javascript
    发送QIS到EtQ
    onClickJavaScript
    false
    {!REQUIRESCRIPT("/soap/ajax/51.0/connection.js")}; 
{!REQUIRESCRIPT("/soap/ajax/51.0/apex.js")}; 
//2021-10-21 gwy 版本更改为51.0
var myDate = function(){ 
let messageNumber = ''; 
let today = new Date(); 
messageNumber = today.getFullYear()+''+(today.getMonth()+1)+''+today.getDate()+''+today.getHours()+'' 
+today.getMinutes()+''+today.getSeconds(); 
return messageNumber; 
}; 
var foo = function() { 
var QId = "{!QIS_Report__c.Id}"; 
var uid = '{! $User.Id}'; 
// 20201117 add by gzw 
if("{!$Profile.Id}" != "00e10000000xnoO" && "{!$Profile.Id}" != "00e10000000hl7w"){ 
alert("您没有发送修理到EtQ的权限。"); 
return; 
} 
// 20201117 add by gzw 
if ("{!QIS_Report__c.PAE_Determine__c}"==""){ 
alert("OCSM QARA的PAE判定是空的时候,不可以发送到EtQ。"); 
return; 
} 
if ("{!QIS_Report__c.AE_DetermineResult__c}" == "nonAE" && "{!QIS_Report__c.PAE_Determine__c}" == "nonPAE" && "{!QIS_Report__c.PAE_DetermineAC__c}" == "nonPAE" && "{!QIS_Report__c.OCM_judgement__c}" == "" && "{!QIS_Report__c.QIS_final_judgement__c}" == ""){
alert("nonAE并nonPAE的QIS同步到EtQ的时候,检测结论(OCSM)是必填的。不可以发送到EtQ。"); 
return; 
} 
if("{!QIS_Report__c.ETQ_UPLOAD_STATUS__c}" == "3"){ 
if (!confirm("是否清空EtQ同步状态,重新同步数据?")) { 
return; 
} 
} 
var statu; 
// alert("AE判定:"+"{!QIS_Report__c.AE_DetermineResult__c}"); 
// alert("OCSM QARA的PAE判定:"+"{!QIS_Report__c.PAE_Determine__c}"); 
// alert("OCSM Coding的PAE判定:"+ "{!QIS_Report__c.PAE_DetermineAC__c}"); 
if ("{!QIS_Report__c.AE_DetermineResult__c}" != "" && "{!QIS_Report__c.PAE_Determine__c}" != "" && "{!QIS_Report__c.PAE_DetermineAC__c}" == ""){ 
statu = "Q1"; 
}else if ( 
("{!QIS_Report__c.AE_DetermineResult__c}" != "" && "{!QIS_Report__c.PAE_Determine__c}" != "" && "{!QIS_Report__c.PAE_DetermineAC__c}" != "nonPAE" && "{!QIS_Report__c.PAE_DetermineAC__c}" != "") 
|| ("{!QIS_Report__c.AE_DetermineResult__c}" == "nonAE" && "{!QIS_Report__c.PAE_Determine__c}" == "nonPAE" && "{!QIS_Report__c.PAE_DetermineAC__c}" == "nonPAE") 
&& (("{!QIS_Report__c.OCM_judgement__c}" == "" 
&& "{!QIS_Report__c.QIS_final_judgement__c}" == "质量问题") 
||(("{!QIS_Report__c.OCM_judgement__c}" == "质量问题" || "{!QIS_Report__c.OCM_judgement__c}" == "质量问题+非质量问题" ) 
&&("{!QIS_Report__c.QIS_final_judgement__c}" == "" || "{!QIS_Report__c.QIS_final_judgement__c}" == "质量问题")) 
||("{!QIS_Report__c.OCM_judgement__c}" == "非质量问题" || "{!QIS_Report__c.OCM_judgement__c}" == "现象未发现") 
&& "{!QIS_Report__c.QIS_final_judgement__c}" == "质量问题" )){ 
statu = "Q2"; 
}else if (("{!QIS_Report__c.AE_DetermineResult__c}" == "nonAE" && "{!QIS_Report__c.PAE_Determine__c}" == "nonPAE" && "{!QIS_Report__c.PAE_DetermineAC__c}" == "nonPAE") && 
(("{!QIS_Report__c.OCM_judgement__c}" == "" || "{!QIS_Report__c.OCM_judgement__c}" == "质量问题" || "{!QIS_Report__c.OCM_judgement__c}" == "质量问题+非质量问题") && "{!QIS_Report__c.QIS_final_judgement__c}" == "非质量问题") 
|| (("{!QIS_Report__c.OCM_judgement__c}" == "非质量问题" || "{!QIS_Report__c.OCM_judgement__c}" == "现象未发现") &&("{!QIS_Report__c.QIS_final_judgement__c}" == "" || "{!QIS_Report__c.QIS_final_judgement__c}" == "非质量问题"))){ 
statu = "Q3"; 
} 
// alert("statu:"+statu); 
try { 
var result; 
// alert('batchId'+result[0].id) 
//注释by rentx 2021-03-23 start 
// var qisreports = new Array() 
// qisreports[0] = "{!QIS_Report__c.Id}"; 
// result = sforce.apex.execute("NFM401Controller1","sendToETQ",{"iflog_Id":null,"rowDataSFDC":null,"repairIds":qisreports,"statu":statu}); 
// result = sforce.apex.execute("NFM401WebService","sendToETQ",{"iflog_Id":null,"rowDataSFDC":null,"repairIds":qisreports,"statu":statu}); 
//注释byrentx 2021-04-23 end 
// alert('result++'+result) 
var updateqis = new sforce.SObject("QIS_Report__c"); 
updateqis.Id = QId ; 
updateqis.INTERFACE_RECORD_ID__c = null; 
updateqis.ETQ_UPLOAD_STATUS__c = null; 
updateqis.ETQ_UPLOAD_MESSAGE__c = null; 
updateqis.AsyncData__c = true; 
var serverTimestamp = sforce.connection.getServerTimestamp(); 
updateqis.AWS_Interface_Time__c = serverTimestamp.timestamp; 
updateqis.OSH_ConfirmationDate__c = new Date(); 
updateqis.OSH_Affirmant__c = uid; 
//alert('updateqs'+updateqs); 
var result = sforce.connection.update([updateqis]); 
//一下代码从更新qis前移动到更新qis后 ↓↓ start 2021-04-23 
// alert('batchId'+result[0].id) 
var qisreports = new Array() 
qisreports[0] = "{!QIS_Report__c.Id}"; 
// result = sforce.apex.execute("NFM401Controller1","sendToETQ",{"iflog_Id":null,"rowDataSFDC":null,"repairIds":qisreports,"statu":statu}); 
result = sforce.apex.execute("NFM401WebService","sendToETQ",{"iflog_Id":null,"rowDataSFDC":null,"repairIds":qisreports,"statu":statu}); 
// alert('result++'+result) 
//以上代码从更新qis前移动到qis后 ↑↑ 2021-04-23 end 
alert("发送成功!") 
var btns = document.getElementsByName("sendqistoetq"); 
for (var i=0; i<btns.length; i++) { 
btns[i].disabled = true; 
btns[i].className = 'btnDisabled'; 
} 
// 点击【发送QIS到EtQ】并发送成功后,希望自动刷新画面。 
location.reload(); 
} catch (error) { 
alert("发送QIS到EtQ失败"+error.faultstring+' code:'+error.faultcode) 
} 
} 
var myReload = function(){ 
var QId = "{!QIS_Report__c.Id}"; 
var result = sforce.connection.query("select id,AsyncData__c,Complaint_Number__c,ETQ_UPLOAD_STATUS__c from QIS_Report__c where id = '"+ QId +"'"); 
var record = result.getArray("records")[0]; 
// alert(typeof record.AsyncData__c) 
// if ((record.AsyncData__c == 'true' && record.ETQ_UPLOAD_STATUS__c != '3' && //record.ETQ_UPLOAD_STATUS__c != '') || record.Complaint_Number__c != null){ 
if (record.AsyncData__c == 'true' && record.ETQ_UPLOAD_STATUS__c != '3' || record.Complaint_Number__c != null){ 
// alert(record.AsyncData__c) 
var btns = document.getElementsByName("sendqistoetq"); 
for (var i=0; i<btns.length; i++) { 
btns[i].disabled = true; 
btns[i].className = 'btnDisabled'; 
} 
alert('该QIS之前已经发送过了') 
}else{ 
foo(); 
} 
} 
myReload();