Skip to content

Commit 26660ba

Browse files
add partial premium payment to treasury
1 parent 3571ec8 commit 26660ba

File tree

3 files changed

+18
-4
lines changed

3 files changed

+18
-4
lines changed

contracts/components/Product.sol

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -235,16 +235,16 @@ abstract contract Product is
235235
return _instanceService.getPayout(processId, payoutId);
236236
}
237237

238-
function getApplicationDataStructure() external override view returns(string memory dataStructure) {
238+
function getApplicationDataStructure() external override virtual view returns(string memory dataStructure) {
239239
return "";
240240
}
241241

242-
function getClaimDataStructure() external override view returns(string memory dataStructure) {
242+
function getClaimDataStructure() external override virtual view returns(string memory dataStructure) {
243243
return "";
244244
}
245-
function getPayoutDataStructure() external override view returns(string memory dataStructure) {
245+
function getPayoutDataStructure() external override virtual view returns(string memory dataStructure) {
246246
return "";
247247
}
248248

249-
function riskPoolCapacityCallback(uint256 capacity) external override { }
249+
function riskPoolCapacityCallback(uint256 capacity) external override virtual { }
250250
}

contracts/modules/IPolicy.sol

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,8 @@ interface IPolicy {
3030
event LogPolicyExpired(bytes32 processId);
3131
event LogPolicyClosed(bytes32 processId);
3232

33+
event LogPremiumCollected(bytes32 processId, uint256 amount);
34+
3335
event LogClaimCreated(bytes32 processId, uint256 claimId);
3436
event LogClaimConfirmed(bytes32 processId, uint256 claimId);
3537
event LogClaimDeclined(bytes32 processId, uint256 claimId);
@@ -79,6 +81,7 @@ interface IPolicy {
7981

8082
struct Policy {
8183
PolicyState state;
84+
uint256 premiumExpectedAmount;
8285
uint256 premiumPaidAmount;
8386
uint256 claimsCount;
8487
uint256 openClaimsCount;

contracts/modules/ITreasury.sol

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ interface ITreasury {
1717
event LogTreasuryFeesTransferred(address from, address instanceWalletAddress, uint256 amount, bool success);
1818
event LogTreasuryWithdrawalTransferred(address riskpoolWalletAddress, address to, uint256 amount, bool success);
1919

20+
event LogTreasuryFullPremiumProcessed(bytes32 processId, uint256 amount, bool success);
2021
event LogTreasuryPremiumProcessed(bytes32 processId, uint256 amount, bool success);
2122
event LogTreasuryCapitalProcessed(uint256 riskpoolId, uint256 bundleId, uint256 amount, bool success);
2223
event LogTreasuryWithdrawalProcessed(uint256 riskpoolId, uint256 bundleId, uint256 amount, bool success);
@@ -49,18 +50,28 @@ interface ITreasury {
4950
function processPremium(bytes32 processId) external
5051
returns(
5152
bool success,
53+
uint256 feeAmount,
54+
uint256 netPremiumAmount
55+
);
56+
57+
function processPartialPremium(bytes32 processId, uint256 amount) external
58+
returns(
59+
bool success,
60+
uint256 feeAmount,
5261
uint256 netPremiumAmount
5362
);
5463

5564
function processCapital(uint256 bundleId, uint256 capitalAmount) external
5665
returns(
5766
bool success,
67+
uint256 feeAmount,
5868
uint256 netCapitalAmount
5969
);
6070

6171
function processWithdrawal(uint256 bundleId, uint256 amount) external
6272
returns(
6373
bool success,
74+
uint256 feeAmount,
6475
uint256 netAmount
6576
);
6677

0 commit comments

Comments
 (0)