package net.ipksindia.dao import model.Teller import net.ipksindia.ItemNotFoundException class TellerDao { private val tellerMap = mapOf( "0003" to mapOf( "00012" to "312", "00017" to "317", "00013" to "313", "00014" to "314", "00015" to "315", "00016" to "316", "00019" to "319", "00020" to "320", "00026" to "11126", "00010" to "310" ), "0015" to mapOf( "00006" to "11106", "00005" to "11105", "00002" to "11102", "00004" to "11104", "00023" to "1234", "00008" to "11108", "00017" to "11117", "00011" to "10111", "00021" to "1234", "00001" to "1234", "00018" to "11118", "00012" to "11112", "00019" to "11119", "00003" to "11103", "00009" to "11109", "00015" to "11115", "00020" to "11120", "00013" to "11113", "00014" to "1234", "00016" to "11116", "00010" to "11110", "00007" to "11107", "00022" to "1234", "00026" to "11126" ), "0013" to mapOf( "00101" to "500", "00102" to "502", "00103" to "503", "00106" to "506", "00107" to "507" ), "0011" to mapOf( "00002" to "24", "00008" to "30", "00003" to "25", "00011" to "33", "00010" to "1234", "00012" to "34", "00009" to "5", "00006" to "28", "00004" to "26", "00021" to "1234", "00005" to "27", "00007" to "29", "00001" to "23" ), "0004" to mapOf( "00101" to "901", "00103" to "903", "00104" to "904", "00105" to "905", "00106" to "906", "00107" to "907", "00108" to "908" ), "0005" to mapOf( "00001" to "901", "00002" to "902", "00003" to "903", "00004" to "904", "00005" to "905", "00007" to "907", "00008" to "908", "00009" to "909" ), "0016" to mapOf( "00013" to "913", "00032" to "932", "00042" to "942", "00043" to "943", "00044" to "944", "00045" to "945", "00046" to "946", "00047" to "947", "00048" to "948", "00049" to "949", "00051" to "951", "00052" to "952", "00053" to "953", "00054" to "954", "00055" to "955", "00057" to "957", "00060" to "960", "00062" to "962", "00063" to "963", "00066" to "966", "00067" to "967" ), "0017" to mapOf ( "00118" to "18", "00127" to "027", "00102" to "002", "00112" to "12", "00119" to "019", "00126" to "026", "00129" to "029", "00103" to "003", "00106" to "006", "00115" to "015", "00131" to "031", "00120" to "20", "00104" to "004", "00125" to "025", "00124" to "024", "00110" to "010", "00105" to "005", "00123" to "023", "00111" to "11", "00135" to "35", "00109" to "009", "00101" to "001", "00108" to "008", "00121" to "021", "00130" to "30", "00116" to "016", "00128" to "028", "00113" to "013", "00117" to "017", "00132" to "032" ) ) fun getTeller(dccbCode: String, branchCode: String): Teller { val branchList = tellerMap[dccbCode] ?: throw ItemNotFoundException("Branch Code", branchCode) val tellerId = branchList[branchCode] ?: throw ItemNotFoundException("DCCB Code", branchCode) val teller = Teller( tellerId, dccbCode, branchCode ) return teller } }