github.com/muhammedhassanm/blockchain@v0.0.0-20200120143007-697261defd4d/build-blockchain-insurance-app-master/web/src/insurance/actions/claimProcessingActions.js (about)

     1  'use strict';
     2  
     3  import * as ClaimProcessingActionType from './claimProcessingActionTypes';
     4  import * as Api from '../api';
     5  
     6  export function loadClaims() {
     7    return async dispatch => {
     8      let claims;
     9      try {
    10        claims = await Api.getClaims('N'); // Load only (N)ew (unprocessed) claims
    11        const confirmedTheftClaims = await Api.getClaims('P');
    12        claims = claims.concat(confirmedTheftClaims);
    13      } catch (e) {
    14        console.log(e);
    15      }
    16      if (Array.isArray(claims)) {
    17        dispatch(loadClaimsSuccess(claims));
    18      }
    19    };
    20  }
    21  
    22  function loadClaimsSuccess(claims) {
    23    return {
    24      type: ClaimProcessingActionType.LOAD_CLAIMS_SUCCESS,
    25      claims
    26    };
    27  }
    28  
    29  export function processClaim(contractUuid, uuid, status, reimbursable) {
    30    return async dispatch => {
    31      try {
    32        await Api.processClaim(contractUuid, uuid, status, reimbursable);
    33        dispatch(processClaimSuccess(contractUuid, uuid));
    34      } catch (e) {
    35        console.log(e);
    36      }
    37    };
    38  }
    39  
    40  function processClaimSuccess(contractUuid, uuid) {
    41    return {
    42      type: ClaimProcessingActionType.PROCESS_CLAIM_SUCCESS,
    43      contractUuid, uuid
    44    };
    45  }