UNPKG

trc-client-core

Version:
41 lines (36 loc) 1.27 kB
import {FETCH_SERVICE_EXCELLENCE_REPORT} from 'trc-client-core/src/constants/ActionTypes'; import {color} from 'trc-client-core/src/global/ThemeStore'; import Immutable from 'immutable'; const initialState = null; var COLOR_MAP = { 'Master Technician': color('TECHNICAL_MT'), 'Diagnosis Technician': color('TECHNICAL_DT'), 'DT Hybrid Specialist': color('TECHNICAL_DT'), 'DT Electrical Specialist': color('TECHNICAL_DT'), 'Pro Technician': color('TECHNICAL_PT'), 'Service Technician': color('TECHNICAL_ST') }; const ORDER = { 'Service Technician': 1, 'Pro Technician': 2, 'Diagnosis Technician': 3, 'DT Hybrid Specialist': 4, 'DT Electrical Specialist': 5, 'Master Technician': 6 } function addExtraData(item) { return item .set('index' , ORDER[item.get('key')]) .set('backgroundColor', COLOR_MAP[item.get('key')]); } export default function serviceExcellenceReport(state = initialState, action) { switch (action.type) { case FETCH_SERVICE_EXCELLENCE_REPORT: return Immutable.fromJS(action.payload) .map(addExtraData) .sortBy(item => item.get('index')) ; default: return state; } }