ConsumApply_FromQIS
    online
    massActionButton
    javascript
    新建耗材备品申请(QIS)
    onClickJavaScript
    false
    false
    {!RequireScript("/soap/ajax/51.0/connection.js")}
{!RequireScript("/soap/ajax/51.0/apex.js")}
{!RequireScript("/resource/CommonUtilJs")}
//2021-10-22 gwy 版本更改为51.0
function foo() {
    var result = sforce.connection.query("select Id from Consum_Apply__c where QIS_number__c='{!QIS_Report__c.Id}' and Status__c <> '取消' and Status__c <> '删除'");
    var caList = result.getArray("records");
    if (caList.length > 0){
        alert("同一个QIS记录不能重复申请备品");
        return;
    }
    var QISReportList = new Array();
    QISReportList = sforce.connection.query("select next_action__c, QIS_Status__c from QIS_Report__c where id ='{!URLENCODE(QIS_Report__c.Id)}'");
    var records= QISReportList.getArray("records");
    var next_action__c = records[0].next_action__c;
    var QIS_Status__c = records[0].QIS_Status__c;
    if(next_action__c == '送回') {
        alert('QIS对应方法为“送回”,不能申请');
        return;
    }
    if(QIS_Status__c == '草案中') {
        alert('QIS状态为草案中,不能申请');
        return;
    }
    if(QIS_Status__c == 'FSE填写完毕') {
        alert('QIS状态为FSE填写完毕,不能申请');
        return;
    }
    if(QIS_Status__c == '取消') {
        alert('QIS状态为取消,不能申请');
        return;
    }
    if('{!$User.isFormal_Stuff__c}' == 'true') {
        alert('试用期内,不能申请');
        return;
    } else {
        var query = "Select QualifiedApiName, EntityDefinition.KeyPrefix, DurableId From FieldDefinition WHERE EntityDefinition.QualifiedApiName = 'Consum_Apply__c'"; 
        var records = sforce.connection.query(query).getArray('records');
        var prefix =  records[0].EntityDefinition.KeyPrefix.toString();
        var fieldmap = new Map();
        for (var i=0; i< records.length; i++) {
            var record = records[i];
            fieldmap.set(record.QualifiedApiName,record.DurableId.toString().split('.')[1]);
        }
        var url = "{!$Site.Prefix}/" + prefix + "/e?retURL=%2F{!URLENCODE(QIS_Report__c.Id)}"
                + "&CF" + fieldmap.get('Hospital__c') + "={!URLENCODE(QIS_Report__c.Hospital__c)}"
                + "&CF" + fieldmap.get('Hospital__c') + "_lkid={!URLENCODE(QIS_Report__c.HospitalId__c)}"
                + "&CF" + fieldmap.get('Strategic_dept__c') + "={!URLENCODE(QIS_Report__c.Department_Class__c)}"
                + "&CF" + fieldmap.get('Strategic_dept__c') + "_lkid={!URLENCODE(QIS_Report__c.Department_ClassId__c)}"
                + "&CF" + fieldmap.get('Account__c') + "={!URLENCODE(QIS_Report__c.Hospital_Department__c)}"
                + "&CF" + fieldmap.get('Account__c') + "_lkid={!URLENCODE(QIS_Report__c.Hospital_DepartmentId__c)}"
                + "&Name={!URLENCODE('*')}"
                + "&CF" + fieldmap.get('QIS_number__c') + "={!URLENCODE(QIS_Report__c.Name)}"
                + "&CF" + fieldmap.get('QIS_number__c') + "_lkid={!URLENCODE(QIS_Report__c.Id)}"
                + "&" + fieldmap.get('demo_purpose2__c') + "={!URLENCODE('索赔QIS')}"
                + "&CF" + fieldmap.get('Person_In_Charge__c') + "={!URLENCODE($User.LastName&' '&$User.FirstName)}" 
                + "&CF" + fieldmap.get('Person_In_Charge__c') + "_lkid={!URLENCODE($User.Id)}" 
                + "&CF" + fieldmap.get('applyUser__c') + "={!URLENCODE($User.LastName&' '&$User.FirstName)}"
                + "&CF" + fieldmap.get('applyUser__c') + "_lkid={!URLENCODE($User.Id)}"
                + "";
        window.top.location.href=url;
    }
}
foo();