binxie
2024-01-18 0e0dd1e20e7211f3c3c11d77a41090d998dfd06c
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
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
<?xml version="1.0" encoding="UTF-8"?>
<WebLink xmlns="http://soap.sforce.com/2006/04/metadata">
    <fullName>Quolified_Apply</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;/soap/ajax/51.0/apex.js&quot;)} 
 
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 now_status = true; 
//if (!now_status) { 
//alert(&quot;客户信息没有变化,无需提交审批。&quot;); 
//return; 
//} 
 
if (&apos;{!Account.Is_Active__c}&apos; != &apos;有効&apos; &amp;&amp; &apos;{!Account.Is_Active__c}&apos; != &apos;有效&apos;) {
alert(&quot;医院有效后才可以资质审批.&quot;);
return;
}
 
if (&apos;{!Account.RegistrationNumber__c}&apos; == &apos;&apos; || &apos;{!Account.Valid_From__c}&apos; == &apos;&apos;
|| &apos;{!Account.Valid_To__c}&apos; == &apos;&apos;){
alert(&quot;必须填写登记证号,有效期开始日,有效期结束日&quot;);
return;
}
 
var Isexceed = {!Account.IsQuolifiedInvalid_c__c};
if (Isexceed == true) {
alert(&quot;资质过期,不可提交审批!&quot;);
return;
}
 
var job = &apos;{!User.Job_Category__c}&apos;;
var profileId = &apos;{!$User.ProfileId}&apos;;
 
if (job != &apos;支援&apos; &amp;&amp; 
    job != &apos;销售推广&apos; &amp;&amp;
    job != &apos;销售服务&apos; &amp;&amp;
    profileId != &apos;00e10000000Nab7&apos;){
alert(&quot;必须职种是支援,销售推广,销售服务和特约店窗口的用户才可以提交资质!&quot;); 
return;
}
 
var medical = &apos;{!Account.Is_Medical_F__c}&apos;;
var cor = &apos;{!Account.Corporation__c}&apos;;
var no = &apos;{!Account.Business_license_no__c}&apos;;
var valid = &apos;{!Account.Business_license_valid__c}&apos;;
if (medical == &apos;民营&apos; &amp;&amp; (cor == &apos;&apos; || no == &apos;&apos; || valid == &apos;&apos;)) {
alert(&quot;民营医院请提供营业执照并填写相关信息。&quot;); 
return;
}
 
if (!confirm(&quot;一旦提交此记录以待批准,根据您的设置您可能不再能够编辑此记录或将他从批准过程中调回。是否继续?&quot;)) { 
return; 
 
var rac = new sforce.SObject(&quot;Account&quot;); 
var userProfile = &apos;{!User.ProfileId}&apos;; 
 
rac.Id = &quot;{!Account.Id}&quot;; 
rac.Quolified_Approve_Status__c = &quot;Completed&quot;; 
rac.Quolified_Submitter__c = &quot;{!$User.Id}&quot;; 
var result = sforce.connection.update([rac]); 
var messages = getConnectDMLErrorMessages(result); 
if (messages.length &gt; 0) { 
alert(messages.join(&quot;\n&quot;)); 
return; 
 
var request = new sforce.ProcessSubmitRequest(); 
request.objectId = &quot;{!Account.Id}&quot;; 
var processResults = sforce.connection.process([request]); 
if (processResults[0].errors != null) { 
var back = new sforce.SObject(&quot;Account&quot;); 
back.Id = &quot;{!Account.Id}&quot;; 
back.Quolified_Approve_Status__c = &quot;Draft&quot;; 
var backResult = sforce.connection.update([back]); 
backMessages = getConnectDMLErrorMessages(backResult); 
if (backMessages.length &gt; 0) { 
alert(backMessages.join(&quot;\n&quot;)); 
return; 
var errmsg = processResults[0].errors.message.toString(); 
alert(errmsg); 
return; 
window.location.reload(); 
}; 
foo();</url>
</WebLink>