총무앱 - 개발+a

프로젝트/이기적인 총무 2017. 6. 6. 17:47 Posted by 아는 개발자

사실 애초에 개발은 지난번 포스트에 올린 요구사항들만 만드는 것으로 끝내려고 했는데 막상 만들고 나니 그냥 일반 계산기와 다를바 없는 것 같았다. 어디가서 내 이름 걸고 만들었다고 하기 창피할 것 같아 몇가지 기능을 더 넣었다. 총무로 살아온 기간이 길어서 그런지 있으면 좋을 법한 기능들은 금방 떠올랐고 현재는 모두 구현해둔 상태다


1. 대리결제 기능


모든 계산을 총무가 처리하지 않고 다른 사람이 결제하는 경우도 있다. 예를들어 여행중에 총무가 아닌 다른 사람이 대신 여행 물건을 사러 다녀오는 경우나 총무 카드가 한도초과돼서 다른 사람이 대신 결제하는 경우들이 그렇다. 대리 결제가 한두건이면 별 문제가 되지 않는데 결제 수가 많거나 여러 사람이 대리 결제를 한 경우에는 총무 입장에선 난감하다. 대리 결제한 당사자들은 나중에 정산 할 때 자신이 낸 결제내역을 참고해서 정산 해달라고 하는데 이 사람들에게 얼마를 덜 받아야하는지 그리고 혹시 내가 지금 손해보고 있는 것은 아닌지 머리가 아프다. 


이렇게 골치아픈 경우들을 애플리케이션 자체에서 모두 처리 할 수 있도록 만들었다. 결제 내역을 추가 할 때 대리 결제자를 등록 할 수 있게 하고 각 대리 결제자별로 결제 총액을 덜 내도 되는 금액으로 공유 메시지에 넣었다. 총무 입장에선 결제 내역을 추가할 때 대리 결제자 이름만 잘 등록하면 된다. 


(대리 결제자 목록이 따로 존재한다. 오른쪽 아래 버튼으로 대리 결제자를 추가 할 수 있다)



2. 똑똑한 정산 기능


총 결제 금액을 참석자 수로 나누면 0원으로 정확히 떨어지는 경우가 많이 없다. 결제 건수가 많아지면 더 그렇다. 이런 경우 내림을 하거나 반올림을 하게 되는데 비록 적은 금액이지만 총무 입장에선 손해가 되는 경우도 있고 이득을 볼 수 있는 경우도 있다. 소소한 금액이 이득으로 돌아오면 소위 개이득이 되지만 손해로 오면 번거로운 직책을 맡고 있는데 손해까지 보는 경우가 되어 기분이 좋지 않다.


그래서 각각의 금액으로 정산 할 경우 얼마를 손해볼 지 애플리케이션에서 모두 계산해주도록 했다. 각 결제 내역별로 특정 자리에서 반올림 할 수 있도록 만들고 조정된 금액으로 정산 할 경우 얼마나 이득/손해를 볼지 자동으로 계산해줄 수 있도록 만들었다. 


(각 결제 내역 별로 반올림 조정을 할 수 있다. 왼쪽 하단의 이미지를 누르면 조정된 내역에 대한 정산 값이 나온다)


이 기능을 구현하면서 이기적인 총무라는 애플리케이션 이름도 생각해냈다. 앱스토어에 등록된 다른 총무앱들에 비해서 컨셉이 독특하고 사람들이 한 번쯤 관심을 가질만한 이름인 것 같다. 

728x90

'프로젝트 > 이기적인 총무' 카테고리의 다른 글

이기적인 총무 - 리팩토링 계획  (1) 2018.01.07
총무앱 - 이기적인 총무 런칭 그리고 업데이트  (0) 2017.07.15
총무앱 - 디자인  (0) 2017.07.02
총무앱 - 개발+a  (0) 2017.06.06
총무앱 - 개발  (0) 2017.05.14
총무앱 - 기획  (0) 2017.05.05