Li Jun
2022-04-08 ac719375874fd50fad5a11f8e04ac3329081bd0b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
<?xml version="1.0" encoding="UTF-8"?>
<WebLink xmlns="http://soap.sforce.com/2006/04/metadata">
    <fullName>ServiceCutPriceApply</fullName>
    <availability>online</availability>
    <displayType>button</displayType>
    <linkType>javascript</linkType>
    <masterLabel>服务本部减价申请</masterLabel>
    <openType>onClickJavaScript</openType>
    <protected>false</protected>
    <url>{!RequireScript(&quot;/soap/ajax/51.0/connection.js&quot;)}
{!RequireScript(&quot;/resource/CommonUtilJs&quot;)}
//2021-10-21 gwy 版本更改为51.0
var getConnectDMLErrorMessages = function (results) {
    var messages = [],
    i = 0,
    len = results.length,
    r;
    for (; i &lt; len; i++) {
        r = results[i];
        if (!r.getBoolean(&quot;success&quot;)) {
            messages = messages.concat(getConnectDMLMessagesOfAResult(r));
        }
    }
    return messages;
};
var getConnectDMLMessagesOfAResult = function (res) {
    var messages = [],
    errors = res.getArray(&quot;errors&quot;),
    i = 0,
    len = errors.length,
    e;
    for (; i &lt; len; i++) {
        e = errors[i];
        messages.push(e.message + &quot; &quot; + getConnectDMLErrorFields(e));
    }
    return messages;
};
var getConnectDMLErrorFields = function (error) {
    var fields = error.getArray(&apos;fields&apos;);
    if (fields.length &gt; 0) {
        return &quot;[&quot; + fields.join(&quot;,&quot;) + &quot;]&quot;
    } else {
        return &quot;&quot;;
    }
};
 
var foo = function() {
  var power = &apos;{!$Profile.Id}&apos;;
  //00e10000000xnnz 2F2A_RC
  //00e10000000xno9 2F4_技术推进部
  //00e10000000NbC4 2F4_技术推进部_非SSO
  if(power!=&apos;00e10000000xnnz&apos;&amp;&amp; power!=&apos;00e10000000xno9&apos; &amp;&amp; power!=&apos;00e10000000NbC4&apos;&amp;&amp; power!=&apos;00e10000000Y3o5&apos;){
     alert(&apos;对不起,您没有权限提交此申请!&apos;);
     return;
  }
  var status = &apos;{!Repair_Quotation__c.CutPriceStatus_Service__c}&apos;;
  if(status==&apos;审批中&apos;){
    alert(&quot;审批提交成功,当前正在审批请勿再提交!&quot;);
    return;
  }
  if(status==&apos;批准&apos;){
    alert(&quot;审批已批准,请勿再提交!&quot;);
    return;
  }
  if(status==&apos;草案中&apos; || status==&apos;&apos; || status == &apos;驳回&apos; ){
    var qUpd = new sforce.SObject(&quot;Repair_Quotation__c&quot;);
    qUpd.Id = &quot;{!Repair_Quotation__c.Id}&quot;;
    var resultTmp = sforce.connection.update([qUpd]);
    var messagesTmp = getConnectDMLErrorMessages(resultTmp);
    if (messagesTmp.length &gt; 0) {
        alert(&quot;&quot; + messagesTmp.join(&quot;\n&quot;)); 
        return;
    }
    
    var q = new sforce.SObject(&quot;Repair_Quotation__c&quot;);
    q.Id = &quot;{!Repair_Quotation__c.Id}&quot;;
    q.CutPriceStatus_Service__c = &quot;已提交&quot;;
    var result = sforce.connection.update([q]);
    var messages = getConnectDMLErrorMessages(result);
    if (messages.length &gt; 0) {
        alert(&quot;提交失败&quot; + messages.join(&quot;\n&quot;));
        return;
    } 
    else {
        alert(&quot;审批提交成功!&quot;);
    }
  }
  location.reload();
}
foo();</url>
</WebLink>