sf-intelligence 0.1.11 → 0.1.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. package/LICENSE +20 -13
  2. package/demo-source/main/default/approvalProcesses/Project__c.Discount_Approval.approvalProcess-meta.xml +31 -0
  3. package/demo-source/main/default/classes/IncentiveBatch.cls +54 -0
  4. package/demo-source/main/default/classes/IncentiveBatch.cls-meta.xml +5 -0
  5. package/demo-source/main/default/classes/PaymentService.cls +44 -0
  6. package/demo-source/main/default/classes/PaymentService.cls-meta.xml +5 -0
  7. package/demo-source/main/default/classes/PaymentServiceTest.cls +57 -0
  8. package/demo-source/main/default/classes/PaymentServiceTest.cls-meta.xml +5 -0
  9. package/demo-source/main/default/classes/ProjectTriggerHandler.cls +60 -0
  10. package/demo-source/main/default/classes/ProjectTriggerHandler.cls-meta.xml +5 -0
  11. package/demo-source/main/default/classes/ProjectTriggerHandlerTest.cls +80 -0
  12. package/demo-source/main/default/classes/ProjectTriggerHandlerTest.cls-meta.xml +5 -0
  13. package/demo-source/main/default/flows/Installation_On_Complete.flow-meta.xml +72 -0
  14. package/demo-source/main/default/flows/Project_On_Approve.flow-meta.xml +48 -0
  15. package/demo-source/main/default/groups/Finance_Group.group-meta.xml +7 -0
  16. package/demo-source/main/default/groups/Ops_Group.group-meta.xml +7 -0
  17. package/demo-source/main/default/layouts/Installation__c-Installation Layout.layout-meta.xml +43 -0
  18. package/demo-source/main/default/layouts/Project__c-Residential Layout.layout-meta.xml +78 -0
  19. package/demo-source/main/default/objects/Battery__c/Battery__c.object-meta.xml +12 -0
  20. package/demo-source/main/default/objects/Battery__c/fields/Capacity_kWh__c.field-meta.xml +9 -0
  21. package/demo-source/main/default/objects/Battery__c/fields/Manufacturer__c.field-meta.xml +21 -0
  22. package/demo-source/main/default/objects/Battery__c/fields/Unit_Cost__c.field-meta.xml +9 -0
  23. package/demo-source/main/default/objects/Equipment_Allocation__c/Equipment_Allocation__c.object-meta.xml +13 -0
  24. package/demo-source/main/default/objects/Equipment_Allocation__c/fields/Battery__c.field-meta.xml +10 -0
  25. package/demo-source/main/default/objects/Equipment_Allocation__c/fields/Line_Total__c.field-meta.xml +10 -0
  26. package/demo-source/main/default/objects/Equipment_Allocation__c/fields/Project__c.field-meta.xml +14 -0
  27. package/demo-source/main/default/objects/Equipment_Allocation__c/fields/Quantity__c.field-meta.xml +9 -0
  28. package/demo-source/main/default/objects/Equipment_Allocation__c/fields/Solar_Panel__c.field-meta.xml +10 -0
  29. package/demo-source/main/default/objects/Incentive__c/Incentive__c.object-meta.xml +12 -0
  30. package/demo-source/main/default/objects/Incentive__c/fields/Amount__c.field-meta.xml +9 -0
  31. package/demo-source/main/default/objects/Incentive__c/fields/Approved__c.field-meta.xml +7 -0
  32. package/demo-source/main/default/objects/Incentive__c/fields/Project__c.field-meta.xml +10 -0
  33. package/demo-source/main/default/objects/Incentive__c/fields/Type__c.field-meta.xml +26 -0
  34. package/demo-source/main/default/objects/Installation__c/Installation__c.object-meta.xml +12 -0
  35. package/demo-source/main/default/objects/Installation__c/fields/Crew_Lead__c.field-meta.xml +10 -0
  36. package/demo-source/main/default/objects/Installation__c/fields/Install_Date__c.field-meta.xml +7 -0
  37. package/demo-source/main/default/objects/Installation__c/fields/Panels_Installed__c.field-meta.xml +9 -0
  38. package/demo-source/main/default/objects/Installation__c/fields/Project__c.field-meta.xml +10 -0
  39. package/demo-source/main/default/objects/Installation__c/fields/Status__c.field-meta.xml +31 -0
  40. package/demo-source/main/default/objects/Invoice__c/Invoice__c.object-meta.xml +17 -0
  41. package/demo-source/main/default/objects/Invoice__c/fields/Amount__c.field-meta.xml +12 -0
  42. package/demo-source/main/default/objects/Invoice__c/fields/Balance__c.field-meta.xml +14 -0
  43. package/demo-source/main/default/objects/Invoice__c/fields/Due_Date__c.field-meta.xml +10 -0
  44. package/demo-source/main/default/objects/Invoice__c/fields/Project__c.field-meta.xml +14 -0
  45. package/demo-source/main/default/objects/Invoice__c/fields/Status__c.field-meta.xml +36 -0
  46. package/demo-source/main/default/objects/Invoice__c/fields/Total_Paid__c.field-meta.xml +12 -0
  47. package/demo-source/main/default/objects/Payment__c/Payment__c.object-meta.xml +17 -0
  48. package/demo-source/main/default/objects/Payment__c/fields/Amount__c.field-meta.xml +12 -0
  49. package/demo-source/main/default/objects/Payment__c/fields/Invoice__c.field-meta.xml +14 -0
  50. package/demo-source/main/default/objects/Payment__c/fields/Method__c.field-meta.xml +36 -0
  51. package/demo-source/main/default/objects/Payment__c/fields/Payment_Date__c.field-meta.xml +10 -0
  52. package/demo-source/main/default/objects/Payment__c/validationRules/Amount_Positive.validationRule-meta.xml +9 -0
  53. package/demo-source/main/default/objects/Permit__c/Permit__c.object-meta.xml +12 -0
  54. package/demo-source/main/default/objects/Permit__c/fields/Approved_Date__c.field-meta.xml +7 -0
  55. package/demo-source/main/default/objects/Permit__c/fields/Jurisdiction__c.field-meta.xml +8 -0
  56. package/demo-source/main/default/objects/Permit__c/fields/Project__c.field-meta.xml +10 -0
  57. package/demo-source/main/default/objects/Permit__c/fields/Status__c.field-meta.xml +26 -0
  58. package/demo-source/main/default/objects/Permit__c/fields/Submitted_Date__c.field-meta.xml +7 -0
  59. package/demo-source/main/default/objects/Permit__c/validationRules/Approved_Needs_Date.validationRule-meta.xml +9 -0
  60. package/demo-source/main/default/objects/Project__c/Project__c.object-meta.xml +12 -0
  61. package/demo-source/main/default/objects/Project__c/fields/Account__c.field-meta.xml +10 -0
  62. package/demo-source/main/default/objects/Project__c/fields/Contract_Value__c.field-meta.xml +9 -0
  63. package/demo-source/main/default/objects/Project__c/fields/Expected_Completion__c.field-meta.xml +7 -0
  64. package/demo-source/main/default/objects/Project__c/fields/Is_Complete__c.field-meta.xml +8 -0
  65. package/demo-source/main/default/objects/Project__c/fields/Margin_Percent__c.field-meta.xml +10 -0
  66. package/demo-source/main/default/objects/Project__c/fields/Opportunity__c.field-meta.xml +10 -0
  67. package/demo-source/main/default/objects/Project__c/fields/Permit_Approved__c.field-meta.xml +7 -0
  68. package/demo-source/main/default/objects/Project__c/fields/Risk_Score__c.field-meta.xml +9 -0
  69. package/demo-source/main/default/objects/Project__c/fields/Status__c.field-meta.xml +41 -0
  70. package/demo-source/main/default/objects/Project__c/fields/System_Size_kW__c.field-meta.xml +9 -0
  71. package/demo-source/main/default/objects/Project__c/fields/Total_Invoiced__c.field-meta.xml +9 -0
  72. package/demo-source/main/default/objects/Project__c/recordTypes/Commercial.recordType-meta.xml +6 -0
  73. package/demo-source/main/default/objects/Project__c/recordTypes/Residential.recordType-meta.xml +6 -0
  74. package/demo-source/main/default/objects/Project__c/validationRules/Complete_Requires_Permit.validationRule-meta.xml +9 -0
  75. package/demo-source/main/default/objects/SBQQ__ProductRule__c/SBQQ__ProductRule__c.object-meta.xml +16 -0
  76. package/demo-source/main/default/objects/SBQQ__ProductRule__c/fields/SBQQ__ErrorMessage__c.field-meta.xml +12 -0
  77. package/demo-source/main/default/objects/SBQQ__ProductRule__c/fields/SBQQ__Type__c.field-meta.xml +12 -0
  78. package/demo-source/main/default/objects/Service_Visit__c/Service_Visit__c.object-meta.xml +17 -0
  79. package/demo-source/main/default/objects/Service_Visit__c/fields/Installation__c.field-meta.xml +13 -0
  80. package/demo-source/main/default/objects/Service_Visit__c/fields/Reason__c.field-meta.xml +36 -0
  81. package/demo-source/main/default/objects/Service_Visit__c/fields/Resolved__c.field-meta.xml +10 -0
  82. package/demo-source/main/default/objects/Service_Visit__c/fields/Technician__c.field-meta.xml +13 -0
  83. package/demo-source/main/default/objects/Service_Visit__c/fields/Visit_Date__c.field-meta.xml +10 -0
  84. package/demo-source/main/default/objects/Site_Survey__c/Site_Survey__c.object-meta.xml +12 -0
  85. package/demo-source/main/default/objects/Site_Survey__c/fields/Project__c.field-meta.xml +10 -0
  86. package/demo-source/main/default/objects/Site_Survey__c/fields/Roof_Type__c.field-meta.xml +31 -0
  87. package/demo-source/main/default/objects/Site_Survey__c/fields/Shading_Factor__c.field-meta.xml +9 -0
  88. package/demo-source/main/default/objects/Site_Survey__c/fields/Survey_Date__c.field-meta.xml +7 -0
  89. package/demo-source/main/default/objects/Site_Survey__c/fields/Surveyor__c.field-meta.xml +10 -0
  90. package/demo-source/main/default/objects/Solar_Panel__c/Solar_Panel__c.object-meta.xml +12 -0
  91. package/demo-source/main/default/objects/Solar_Panel__c/fields/Active__c.field-meta.xml +7 -0
  92. package/demo-source/main/default/objects/Solar_Panel__c/fields/Manufacturer__c.field-meta.xml +26 -0
  93. package/demo-source/main/default/objects/Solar_Panel__c/fields/Unit_Cost__c.field-meta.xml +9 -0
  94. package/demo-source/main/default/objects/Solar_Panel__c/fields/Wattage__c.field-meta.xml +9 -0
  95. package/demo-source/main/default/objects/Warranty_Claim__c/Warranty_Claim__c.object-meta.xml +17 -0
  96. package/demo-source/main/default/objects/Warranty_Claim__c/fields/Claim_Date__c.field-meta.xml +10 -0
  97. package/demo-source/main/default/objects/Warranty_Claim__c/fields/Installation__c.field-meta.xml +13 -0
  98. package/demo-source/main/default/objects/Warranty_Claim__c/fields/Issue__c.field-meta.xml +12 -0
  99. package/demo-source/main/default/objects/Warranty_Claim__c/fields/Status__c.field-meta.xml +36 -0
  100. package/demo-source/main/default/omniDataTransforms/Quote_To_Project_Map_1.rpt-meta.xml +83 -0
  101. package/demo-source/main/default/omniIntegrationProcedures/Project_Provision_1.oip-meta.xml +87 -0
  102. package/demo-source/main/default/omniScripts/Customer_Intake_English_1.os-meta.xml +69 -0
  103. package/demo-source/main/default/permissionsets/Finance_Team.permissionset-meta.xml +77 -0
  104. package/demo-source/main/default/permissionsets/Project_Manager.permissionset-meta.xml +88 -0
  105. package/demo-source/main/default/profiles/Verdant_Installer.profile-meta.xml +193 -0
  106. package/demo-source/main/default/profiles/Verdant_Read_Only.profile-meta.xml +263 -0
  107. package/demo-source/main/default/profiles/Verdant_Sales_Rep.profile-meta.xml +194 -0
  108. package/demo-source/main/default/queues/Permit_Review_Queue.queue-meta.xml +9 -0
  109. package/demo-source/main/default/queues/Warranty_Queue.queue-meta.xml +9 -0
  110. package/demo-source/main/default/roles/Installer.role-meta.xml +10 -0
  111. package/demo-source/main/default/roles/Ops_Director.role-meta.xml +9 -0
  112. package/demo-source/main/default/roles/Ops_Manager.role-meta.xml +10 -0
  113. package/demo-source/main/default/roles/Sales_Manager.role-meta.xml +10 -0
  114. package/demo-source/main/default/roles/Sales_Rep.role-meta.xml +10 -0
  115. package/demo-source/main/default/roles/Sales_VP.role-meta.xml +9 -0
  116. package/demo-source/main/default/sharingRules/Invoice__c.sharingRules-meta.xml +17 -0
  117. package/demo-source/main/default/sharingRules/Project__c.sharingRules-meta.xml +17 -0
  118. package/demo-source/main/default/triggers/ProjectTrigger.trigger +8 -0
  119. package/demo-source/main/default/triggers/ProjectTrigger.trigger-meta.xml +5 -0
  120. package/demo-source/main/default/workflows/Opportunity.workflow-meta.xml +24 -0
  121. package/dist/index.js +900 -475
  122. package/package.json +25 -6
  123. package/server.json +32 -0
@@ -0,0 +1,263 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Profile xmlns="http://soap.sforce.com/2006/04/metadata">
3
+ <custom>true</custom>
4
+ <userLicense>Salesforce</userLicense>
5
+ <objectPermissions>
6
+ <object>Project__c</object>
7
+ <allowCreate>false</allowCreate>
8
+ <allowDelete>false</allowDelete>
9
+ <allowEdit>false</allowEdit>
10
+ <allowRead>true</allowRead>
11
+ <modifyAllRecords>false</modifyAllRecords>
12
+ <viewAllRecords>false</viewAllRecords>
13
+ </objectPermissions>
14
+ <objectPermissions>
15
+ <object>Site_Survey__c</object>
16
+ <allowCreate>false</allowCreate>
17
+ <allowDelete>false</allowDelete>
18
+ <allowEdit>false</allowEdit>
19
+ <allowRead>true</allowRead>
20
+ <modifyAllRecords>false</modifyAllRecords>
21
+ <viewAllRecords>false</viewAllRecords>
22
+ </objectPermissions>
23
+ <objectPermissions>
24
+ <object>Installation__c</object>
25
+ <allowCreate>false</allowCreate>
26
+ <allowDelete>false</allowDelete>
27
+ <allowEdit>false</allowEdit>
28
+ <allowRead>true</allowRead>
29
+ <modifyAllRecords>false</modifyAllRecords>
30
+ <viewAllRecords>false</viewAllRecords>
31
+ </objectPermissions>
32
+ <objectPermissions>
33
+ <object>Solar_Panel__c</object>
34
+ <allowCreate>false</allowCreate>
35
+ <allowDelete>false</allowDelete>
36
+ <allowEdit>false</allowEdit>
37
+ <allowRead>true</allowRead>
38
+ <modifyAllRecords>false</modifyAllRecords>
39
+ <viewAllRecords>false</viewAllRecords>
40
+ </objectPermissions>
41
+ <objectPermissions>
42
+ <object>Battery__c</object>
43
+ <allowCreate>false</allowCreate>
44
+ <allowDelete>false</allowDelete>
45
+ <allowEdit>false</allowEdit>
46
+ <allowRead>true</allowRead>
47
+ <modifyAllRecords>false</modifyAllRecords>
48
+ <viewAllRecords>false</viewAllRecords>
49
+ </objectPermissions>
50
+ <objectPermissions>
51
+ <object>Equipment_Allocation__c</object>
52
+ <allowCreate>false</allowCreate>
53
+ <allowDelete>false</allowDelete>
54
+ <allowEdit>false</allowEdit>
55
+ <allowRead>true</allowRead>
56
+ <modifyAllRecords>false</modifyAllRecords>
57
+ <viewAllRecords>false</viewAllRecords>
58
+ </objectPermissions>
59
+ <objectPermissions>
60
+ <object>Permit__c</object>
61
+ <allowCreate>false</allowCreate>
62
+ <allowDelete>false</allowDelete>
63
+ <allowEdit>false</allowEdit>
64
+ <allowRead>true</allowRead>
65
+ <modifyAllRecords>false</modifyAllRecords>
66
+ <viewAllRecords>false</viewAllRecords>
67
+ </objectPermissions>
68
+ <objectPermissions>
69
+ <object>Incentive__c</object>
70
+ <allowCreate>false</allowCreate>
71
+ <allowDelete>false</allowDelete>
72
+ <allowEdit>false</allowEdit>
73
+ <allowRead>true</allowRead>
74
+ <modifyAllRecords>false</modifyAllRecords>
75
+ <viewAllRecords>false</viewAllRecords>
76
+ </objectPermissions>
77
+ <objectPermissions>
78
+ <object>Invoice__c</object>
79
+ <allowCreate>false</allowCreate>
80
+ <allowDelete>false</allowDelete>
81
+ <allowEdit>false</allowEdit>
82
+ <allowRead>true</allowRead>
83
+ <modifyAllRecords>false</modifyAllRecords>
84
+ <viewAllRecords>false</viewAllRecords>
85
+ </objectPermissions>
86
+ <objectPermissions>
87
+ <object>Payment__c</object>
88
+ <allowCreate>false</allowCreate>
89
+ <allowDelete>false</allowDelete>
90
+ <allowEdit>false</allowEdit>
91
+ <allowRead>true</allowRead>
92
+ <modifyAllRecords>false</modifyAllRecords>
93
+ <viewAllRecords>false</viewAllRecords>
94
+ </objectPermissions>
95
+ <objectPermissions>
96
+ <object>Service_Visit__c</object>
97
+ <allowCreate>false</allowCreate>
98
+ <allowDelete>false</allowDelete>
99
+ <allowEdit>false</allowEdit>
100
+ <allowRead>true</allowRead>
101
+ <modifyAllRecords>false</modifyAllRecords>
102
+ <viewAllRecords>false</viewAllRecords>
103
+ </objectPermissions>
104
+ <objectPermissions>
105
+ <object>Warranty_Claim__c</object>
106
+ <allowCreate>false</allowCreate>
107
+ <allowDelete>false</allowDelete>
108
+ <allowEdit>false</allowEdit>
109
+ <allowRead>true</allowRead>
110
+ <modifyAllRecords>false</modifyAllRecords>
111
+ <viewAllRecords>false</viewAllRecords>
112
+ </objectPermissions>
113
+ <fieldPermissions>
114
+ <field>Project__c.Account__c</field>
115
+ <readable>true</readable>
116
+ <editable>false</editable>
117
+ </fieldPermissions>
118
+ <fieldPermissions>
119
+ <field>Project__c.Status__c</field>
120
+ <readable>true</readable>
121
+ <editable>false</editable>
122
+ </fieldPermissions>
123
+ <fieldPermissions>
124
+ <field>Project__c.System_Size_kW__c</field>
125
+ <readable>true</readable>
126
+ <editable>false</editable>
127
+ </fieldPermissions>
128
+ <fieldPermissions>
129
+ <field>Project__c.Contract_Value__c</field>
130
+ <readable>true</readable>
131
+ <editable>false</editable>
132
+ </fieldPermissions>
133
+ <fieldPermissions>
134
+ <field>Project__c.Permit_Approved__c</field>
135
+ <readable>true</readable>
136
+ <editable>false</editable>
137
+ </fieldPermissions>
138
+ <fieldPermissions>
139
+ <field>Project__c.Expected_Completion__c</field>
140
+ <readable>true</readable>
141
+ <editable>false</editable>
142
+ </fieldPermissions>
143
+ <fieldPermissions>
144
+ <field>Project__c.Risk_Score__c</field>
145
+ <readable>true</readable>
146
+ <editable>false</editable>
147
+ </fieldPermissions>
148
+ <fieldPermissions>
149
+ <field>Site_Survey__c.Roof_Type__c</field>
150
+ <readable>true</readable>
151
+ <editable>false</editable>
152
+ </fieldPermissions>
153
+ <fieldPermissions>
154
+ <field>Site_Survey__c.Shading_Factor__c</field>
155
+ <readable>true</readable>
156
+ <editable>false</editable>
157
+ </fieldPermissions>
158
+ <fieldPermissions>
159
+ <field>Installation__c.Install_Date__c</field>
160
+ <readable>true</readable>
161
+ <editable>false</editable>
162
+ </fieldPermissions>
163
+ <fieldPermissions>
164
+ <field>Installation__c.Status__c</field>
165
+ <readable>true</readable>
166
+ <editable>false</editable>
167
+ </fieldPermissions>
168
+ <fieldPermissions>
169
+ <field>Installation__c.Panels_Installed__c</field>
170
+ <readable>true</readable>
171
+ <editable>false</editable>
172
+ </fieldPermissions>
173
+ <fieldPermissions>
174
+ <field>Permit__c.Jurisdiction__c</field>
175
+ <readable>true</readable>
176
+ <editable>false</editable>
177
+ </fieldPermissions>
178
+ <fieldPermissions>
179
+ <field>Permit__c.Status__c</field>
180
+ <readable>true</readable>
181
+ <editable>false</editable>
182
+ </fieldPermissions>
183
+ <fieldPermissions>
184
+ <field>Permit__c.Submitted_Date__c</field>
185
+ <readable>true</readable>
186
+ <editable>false</editable>
187
+ </fieldPermissions>
188
+ <fieldPermissions>
189
+ <field>Permit__c.Approved_Date__c</field>
190
+ <readable>true</readable>
191
+ <editable>false</editable>
192
+ </fieldPermissions>
193
+ <fieldPermissions>
194
+ <field>Incentive__c.Type__c</field>
195
+ <readable>true</readable>
196
+ <editable>false</editable>
197
+ </fieldPermissions>
198
+ <fieldPermissions>
199
+ <field>Incentive__c.Amount__c</field>
200
+ <readable>true</readable>
201
+ <editable>false</editable>
202
+ </fieldPermissions>
203
+ <fieldPermissions>
204
+ <field>Incentive__c.Approved__c</field>
205
+ <readable>true</readable>
206
+ <editable>false</editable>
207
+ </fieldPermissions>
208
+ <fieldPermissions>
209
+ <field>Invoice__c.Amount__c</field>
210
+ <readable>true</readable>
211
+ <editable>false</editable>
212
+ </fieldPermissions>
213
+ <fieldPermissions>
214
+ <field>Invoice__c.Due_Date__c</field>
215
+ <readable>true</readable>
216
+ <editable>false</editable>
217
+ </fieldPermissions>
218
+ <fieldPermissions>
219
+ <field>Invoice__c.Status__c</field>
220
+ <readable>true</readable>
221
+ <editable>false</editable>
222
+ </fieldPermissions>
223
+ <fieldPermissions>
224
+ <field>Payment__c.Amount__c</field>
225
+ <readable>true</readable>
226
+ <editable>false</editable>
227
+ </fieldPermissions>
228
+ <fieldPermissions>
229
+ <field>Payment__c.Payment_Date__c</field>
230
+ <readable>true</readable>
231
+ <editable>false</editable>
232
+ </fieldPermissions>
233
+ <fieldPermissions>
234
+ <field>Payment__c.Method__c</field>
235
+ <readable>true</readable>
236
+ <editable>false</editable>
237
+ </fieldPermissions>
238
+ <fieldPermissions>
239
+ <field>Service_Visit__c.Visit_Date__c</field>
240
+ <readable>true</readable>
241
+ <editable>false</editable>
242
+ </fieldPermissions>
243
+ <fieldPermissions>
244
+ <field>Service_Visit__c.Reason__c</field>
245
+ <readable>true</readable>
246
+ <editable>false</editable>
247
+ </fieldPermissions>
248
+ <fieldPermissions>
249
+ <field>Service_Visit__c.Resolved__c</field>
250
+ <readable>true</readable>
251
+ <editable>false</editable>
252
+ </fieldPermissions>
253
+ <fieldPermissions>
254
+ <field>Warranty_Claim__c.Claim_Date__c</field>
255
+ <readable>true</readable>
256
+ <editable>false</editable>
257
+ </fieldPermissions>
258
+ <fieldPermissions>
259
+ <field>Warranty_Claim__c.Status__c</field>
260
+ <readable>true</readable>
261
+ <editable>false</editable>
262
+ </fieldPermissions>
263
+ </Profile>
@@ -0,0 +1,194 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Profile xmlns="http://soap.sforce.com/2006/04/metadata">
3
+ <custom>true</custom>
4
+ <userLicense>Salesforce</userLicense>
5
+ <objectPermissions>
6
+ <object>Project__c</object>
7
+ <allowCreate>true</allowCreate>
8
+ <allowDelete>false</allowDelete>
9
+ <allowEdit>true</allowEdit>
10
+ <allowRead>true</allowRead>
11
+ <modifyAllRecords>false</modifyAllRecords>
12
+ <viewAllRecords>false</viewAllRecords>
13
+ </objectPermissions>
14
+ <objectPermissions>
15
+ <object>Site_Survey__c</object>
16
+ <allowCreate>true</allowCreate>
17
+ <allowDelete>false</allowDelete>
18
+ <allowEdit>true</allowEdit>
19
+ <allowRead>true</allowRead>
20
+ <modifyAllRecords>false</modifyAllRecords>
21
+ <viewAllRecords>false</viewAllRecords>
22
+ </objectPermissions>
23
+ <objectPermissions>
24
+ <object>Invoice__c</object>
25
+ <allowCreate>true</allowCreate>
26
+ <allowDelete>false</allowDelete>
27
+ <allowEdit>true</allowEdit>
28
+ <allowRead>true</allowRead>
29
+ <modifyAllRecords>false</modifyAllRecords>
30
+ <viewAllRecords>false</viewAllRecords>
31
+ </objectPermissions>
32
+ <objectPermissions>
33
+ <object>Incentive__c</object>
34
+ <allowCreate>true</allowCreate>
35
+ <allowDelete>false</allowDelete>
36
+ <allowEdit>true</allowEdit>
37
+ <allowRead>true</allowRead>
38
+ <modifyAllRecords>false</modifyAllRecords>
39
+ <viewAllRecords>false</viewAllRecords>
40
+ </objectPermissions>
41
+ <objectPermissions>
42
+ <object>Solar_Panel__c</object>
43
+ <allowCreate>false</allowCreate>
44
+ <allowDelete>false</allowDelete>
45
+ <allowEdit>false</allowEdit>
46
+ <allowRead>true</allowRead>
47
+ <modifyAllRecords>false</modifyAllRecords>
48
+ <viewAllRecords>false</viewAllRecords>
49
+ </objectPermissions>
50
+ <objectPermissions>
51
+ <object>Battery__c</object>
52
+ <allowCreate>false</allowCreate>
53
+ <allowDelete>false</allowDelete>
54
+ <allowEdit>false</allowEdit>
55
+ <allowRead>true</allowRead>
56
+ <modifyAllRecords>false</modifyAllRecords>
57
+ <viewAllRecords>false</viewAllRecords>
58
+ </objectPermissions>
59
+ <fieldPermissions>
60
+ <field>Project__c.Account__c</field>
61
+ <readable>true</readable>
62
+ <editable>true</editable>
63
+ </fieldPermissions>
64
+ <fieldPermissions>
65
+ <field>Project__c.Opportunity__c</field>
66
+ <readable>true</readable>
67
+ <editable>true</editable>
68
+ </fieldPermissions>
69
+ <fieldPermissions>
70
+ <field>Project__c.Status__c</field>
71
+ <readable>true</readable>
72
+ <editable>true</editable>
73
+ </fieldPermissions>
74
+ <fieldPermissions>
75
+ <field>Project__c.System_Size_kW__c</field>
76
+ <readable>true</readable>
77
+ <editable>true</editable>
78
+ </fieldPermissions>
79
+ <fieldPermissions>
80
+ <field>Project__c.Contract_Value__c</field>
81
+ <readable>true</readable>
82
+ <editable>true</editable>
83
+ </fieldPermissions>
84
+ <fieldPermissions>
85
+ <field>Project__c.Permit_Approved__c</field>
86
+ <readable>true</readable>
87
+ <editable>false</editable>
88
+ </fieldPermissions>
89
+ <fieldPermissions>
90
+ <field>Project__c.Expected_Completion__c</field>
91
+ <readable>true</readable>
92
+ <editable>true</editable>
93
+ </fieldPermissions>
94
+ <fieldPermissions>
95
+ <field>Project__c.Risk_Score__c</field>
96
+ <readable>true</readable>
97
+ <editable>false</editable>
98
+ </fieldPermissions>
99
+ <fieldPermissions>
100
+ <field>Site_Survey__c.Project__c</field>
101
+ <readable>true</readable>
102
+ <editable>true</editable>
103
+ </fieldPermissions>
104
+ <fieldPermissions>
105
+ <field>Site_Survey__c.Roof_Type__c</field>
106
+ <readable>true</readable>
107
+ <editable>true</editable>
108
+ </fieldPermissions>
109
+ <fieldPermissions>
110
+ <field>Site_Survey__c.Shading_Factor__c</field>
111
+ <readable>true</readable>
112
+ <editable>true</editable>
113
+ </fieldPermissions>
114
+ <fieldPermissions>
115
+ <field>Site_Survey__c.Survey_Date__c</field>
116
+ <readable>true</readable>
117
+ <editable>true</editable>
118
+ </fieldPermissions>
119
+ <fieldPermissions>
120
+ <field>Site_Survey__c.Surveyor__c</field>
121
+ <readable>true</readable>
122
+ <editable>true</editable>
123
+ </fieldPermissions>
124
+ <fieldPermissions>
125
+ <field>Invoice__c.Amount__c</field>
126
+ <readable>true</readable>
127
+ <editable>true</editable>
128
+ </fieldPermissions>
129
+ <fieldPermissions>
130
+ <field>Invoice__c.Due_Date__c</field>
131
+ <readable>true</readable>
132
+ <editable>true</editable>
133
+ </fieldPermissions>
134
+ <fieldPermissions>
135
+ <field>Invoice__c.Status__c</field>
136
+ <readable>true</readable>
137
+ <editable>true</editable>
138
+ </fieldPermissions>
139
+ <fieldPermissions>
140
+ <field>Incentive__c.Project__c</field>
141
+ <readable>true</readable>
142
+ <editable>true</editable>
143
+ </fieldPermissions>
144
+ <fieldPermissions>
145
+ <field>Incentive__c.Type__c</field>
146
+ <readable>true</readable>
147
+ <editable>true</editable>
148
+ </fieldPermissions>
149
+ <fieldPermissions>
150
+ <field>Incentive__c.Amount__c</field>
151
+ <readable>true</readable>
152
+ <editable>true</editable>
153
+ </fieldPermissions>
154
+ <fieldPermissions>
155
+ <field>Incentive__c.Approved__c</field>
156
+ <readable>true</readable>
157
+ <editable>false</editable>
158
+ </fieldPermissions>
159
+ <fieldPermissions>
160
+ <field>Solar_Panel__c.Manufacturer__c</field>
161
+ <readable>true</readable>
162
+ <editable>false</editable>
163
+ </fieldPermissions>
164
+ <fieldPermissions>
165
+ <field>Solar_Panel__c.Wattage__c</field>
166
+ <readable>true</readable>
167
+ <editable>false</editable>
168
+ </fieldPermissions>
169
+ <fieldPermissions>
170
+ <field>Solar_Panel__c.Unit_Cost__c</field>
171
+ <readable>true</readable>
172
+ <editable>false</editable>
173
+ </fieldPermissions>
174
+ <fieldPermissions>
175
+ <field>Solar_Panel__c.Active__c</field>
176
+ <readable>true</readable>
177
+ <editable>false</editable>
178
+ </fieldPermissions>
179
+ <fieldPermissions>
180
+ <field>Battery__c.Manufacturer__c</field>
181
+ <readable>true</readable>
182
+ <editable>false</editable>
183
+ </fieldPermissions>
184
+ <fieldPermissions>
185
+ <field>Battery__c.Capacity_kWh__c</field>
186
+ <readable>true</readable>
187
+ <editable>false</editable>
188
+ </fieldPermissions>
189
+ <fieldPermissions>
190
+ <field>Battery__c.Unit_Cost__c</field>
191
+ <readable>true</readable>
192
+ <editable>false</editable>
193
+ </fieldPermissions>
194
+ </Profile>
@@ -0,0 +1,9 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Queue xmlns="http://soap.sforce.com/2006/04/metadata">
3
+ <name>Permit Review Queue</name>
4
+ <doesSendEmailToMembers>false</doesSendEmailToMembers>
5
+ <description>Permits awaiting jurisdiction review.</description>
6
+ <queueSobject>
7
+ <sobjectType>Permit__c</sobjectType>
8
+ </queueSobject>
9
+ </Queue>
@@ -0,0 +1,9 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Queue xmlns="http://soap.sforce.com/2006/04/metadata">
3
+ <name>Warranty Queue</name>
4
+ <doesSendEmailToMembers>false</doesSendEmailToMembers>
5
+ <description>Warranty claims awaiting triage.</description>
6
+ <queueSobject>
7
+ <sobjectType>Warranty_Claim__c</sobjectType>
8
+ </queueSobject>
9
+ </Queue>
@@ -0,0 +1,10 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Role xmlns="http://soap.sforce.com/2006/04/metadata">
3
+ <name>Installer</name>
4
+ <parentRole>Ops_Manager</parentRole>
5
+ <caseAccessLevel>None</caseAccessLevel>
6
+ <contactAccessLevel>Read</contactAccessLevel>
7
+ <opportunityAccessLevel>None</opportunityAccessLevel>
8
+ <mayForecastManagerShare>false</mayForecastManagerShare>
9
+ <description>Field technician installing panels and batteries.</description>
10
+ </Role>
@@ -0,0 +1,9 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Role xmlns="http://soap.sforce.com/2006/04/metadata">
3
+ <name>Ops Director</name>
4
+ <caseAccessLevel>Edit</caseAccessLevel>
5
+ <contactAccessLevel>Edit</contactAccessLevel>
6
+ <opportunityAccessLevel>Read</opportunityAccessLevel>
7
+ <mayForecastManagerShare>false</mayForecastManagerShare>
8
+ <description>Top of the operations role hierarchy at Verdant Energy.</description>
9
+ </Role>
@@ -0,0 +1,10 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Role xmlns="http://soap.sforce.com/2006/04/metadata">
3
+ <name>Ops Manager</name>
4
+ <parentRole>Ops_Director</parentRole>
5
+ <caseAccessLevel>Edit</caseAccessLevel>
6
+ <contactAccessLevel>Edit</contactAccessLevel>
7
+ <opportunityAccessLevel>Read</opportunityAccessLevel>
8
+ <mayForecastManagerShare>false</mayForecastManagerShare>
9
+ <description>Schedules and oversees installation crews.</description>
10
+ </Role>
@@ -0,0 +1,10 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Role xmlns="http://soap.sforce.com/2006/04/metadata">
3
+ <name>Sales Manager</name>
4
+ <parentRole>Sales_VP</parentRole>
5
+ <caseAccessLevel>Edit</caseAccessLevel>
6
+ <contactAccessLevel>Edit</contactAccessLevel>
7
+ <opportunityAccessLevel>Edit</opportunityAccessLevel>
8
+ <mayForecastManagerShare>false</mayForecastManagerShare>
9
+ <description>Manages a team of solar sales reps.</description>
10
+ </Role>
@@ -0,0 +1,10 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Role xmlns="http://soap.sforce.com/2006/04/metadata">
3
+ <name>Sales Rep</name>
4
+ <parentRole>Sales_Manager</parentRole>
5
+ <caseAccessLevel>Read</caseAccessLevel>
6
+ <contactAccessLevel>Edit</contactAccessLevel>
7
+ <opportunityAccessLevel>Edit</opportunityAccessLevel>
8
+ <mayForecastManagerShare>false</mayForecastManagerShare>
9
+ <description>Sells residential solar and battery systems.</description>
10
+ </Role>
@@ -0,0 +1,9 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Role xmlns="http://soap.sforce.com/2006/04/metadata">
3
+ <name>Sales VP</name>
4
+ <caseAccessLevel>Edit</caseAccessLevel>
5
+ <contactAccessLevel>Edit</contactAccessLevel>
6
+ <opportunityAccessLevel>Edit</opportunityAccessLevel>
7
+ <mayForecastManagerShare>true</mayForecastManagerShare>
8
+ <description>Top of the sales role hierarchy at Verdant Energy.</description>
9
+ </Role>
@@ -0,0 +1,17 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <SharingRules xmlns="http://soap.sforce.com/2006/04/metadata">
3
+ <sharingCriteriaRules>
4
+ <fullName>Share_Invoices_To_Finance</fullName>
5
+ <label>Share Invoices To Finance</label>
6
+ <accessLevel>Read</accessLevel>
7
+ <sharedTo>
8
+ <group>Finance_Group</group>
9
+ </sharedTo>
10
+ <booleanFilter>1</booleanFilter>
11
+ <criteriaItems>
12
+ <field>Status__c</field>
13
+ <operation>notEqual</operation>
14
+ <value>Draft</value>
15
+ </criteriaItems>
16
+ </sharingCriteriaRules>
17
+ </SharingRules>
@@ -0,0 +1,17 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <SharingRules xmlns="http://soap.sforce.com/2006/04/metadata">
3
+ <sharingCriteriaRules>
4
+ <fullName>Share_Projects_To_Ops</fullName>
5
+ <label>Share Projects To Ops</label>
6
+ <accessLevel>Edit</accessLevel>
7
+ <sharedTo>
8
+ <group>Ops_Group</group>
9
+ </sharedTo>
10
+ <booleanFilter>1</booleanFilter>
11
+ <criteriaItems>
12
+ <field>Status__c</field>
13
+ <operation>notEqual</operation>
14
+ <value>Cancelled</value>
15
+ </criteriaItems>
16
+ </sharingCriteriaRules>
17
+ </SharingRules>
@@ -0,0 +1,8 @@
1
+ trigger ProjectTrigger on Project__c (before insert, before update, after update) {
2
+ if (Trigger.isBefore) {
3
+ ProjectTriggerHandler.handleBeforeSave(Trigger.new);
4
+ }
5
+ if (Trigger.isAfter && Trigger.isUpdate) {
6
+ ProjectTriggerHandler.handleAfterUpdate(Trigger.new, Trigger.oldMap);
7
+ }
8
+ }
@@ -0,0 +1,5 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <ApexTrigger xmlns="http://soap.sforce.com/2006/04/metadata">
3
+ <apiVersion>61.0</apiVersion>
4
+ <status>Active</status>
5
+ </ApexTrigger>
@@ -0,0 +1,24 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Workflow xmlns="http://soap.sforce.com/2006/04/metadata">
3
+ <fieldUpdates>
4
+ <fullName>Flag_As_High_Value</fullName>
5
+ <description>Stamp the opportunity description when it crosses the high-value threshold.</description>
6
+ <field>Description</field>
7
+ <name>Flag As High Value</name>
8
+ <notifyAssignee>false</notifyAssignee>
9
+ <operation>Formula</operation>
10
+ <protected>false</protected>
11
+ <formula>"HIGH VALUE - " &amp; TEXT(Amount)</formula>
12
+ </fieldUpdates>
13
+ <rules>
14
+ <fullName>High_Value_Flag</fullName>
15
+ <actions>
16
+ <name>Flag_As_High_Value</name>
17
+ <type>FieldUpdate</type>
18
+ </actions>
19
+ <active>true</active>
20
+ <description>Flag opportunities over 100,000 for executive review (legacy workflow rule, kept for order-of-execution demo).</description>
21
+ <formula>Amount &gt; 100000</formula>
22
+ <triggerType>onCreateOrTriggeringUpdate</triggerType>
23
+ </rules>
24
+ </Workflow>