2013-02-26 6 views
0

작은 학교용 응용 프로그램을 작성하고 있습니다. 그들은 지불을위한 트랜잭션 모델을 사용하고 있습니다.데이터베이스의 날짜 시간을 기준으로 코드를 실행하는 방법

기본적으로 다음과 같이 작동합니다.
학생이 N 달러 ($ 500)를 지불합니다. 선생님은 여러 개의 수업 일정을 잡습니다. 각 반이 끝나자 마자 11.30-1.30의 매주 월요일과 금요일에 수업이 예정되어 있다고 가정 해 봅시다. 한 수업에 100 달러가 들었습니다. 매주 월요일과 금요일 저는 균형에서 100을 뺍니다.

다음은 내가 생각하고있는 해결책입니다.
1. 10 분마다 실행되는 예약 작업을 생성하고 일정이 만료되어 새로운 지불을 제출하는지 확인하십시오.
구현할 수있는 하드웨어
- 가능한 호스팅 문제
2. 사용자가 지불 페이지로 이동할 때마다 아직 제출되지 않은 항목을 확인하십시오.
- 효율적이지 않습니까?

이 문제를 해결하기위한 좋은 방법이 무엇인지 알 수 없습니다.

편집

우리는 출석을 수행하고 여기에 지금 작동하는 방법 :
우리는/변명 w 결석, 현재 결석 한 세 가지 옵션을 사용할 수 있습니다. 따라서 학생이 계좌에 돈을 가지고 있다면 자동으로 그가 있다고 가정합니다. 그/그녀가 오지 않을 것이라고 알리는 경우, 우리는 그녀를 : 그녀가 : 변명 ww 변명하고 그녀를 청구하지 않으면, 그렇지 않으면 사람이 부재하지만 등록 된 클래스에 가입하면 우리는 여전히 그를 청구 할 것입니다.

+0

나는 각 트랜잭션 (예 : 클래스)의 시작에 후크가 있다는 점을 감안할 때 이것이 계획대로 작업을 필요로하지 않는다고 생각합니다. 출석을 인식하고 각 클래스의 시작/종료시 클래스 당 사용자 당 차변을 인출하는 응용 프로그램을 살펴 보겠습니다. –

답변

0

첫 번째 옵션과 함께 갈 것입니다. 두 번째 옵션은 사용자의 계정이 사용자가 페이지를 방문 할 때마다 변경되기 때문에 관리자가 현재 계정 상황을 확인할 가능성이 없습니다. 미래의 어떤 시점에서 귀하의 고객은 자신의 위시리스트에 관리자 기능을 추가 할 것입니다. 그런 다음 옵션 2를 선택했다면 신청서를 리팩터링해야합니다.

2

분명히 학생은 수업료를 내야합니다. 누군가가 수업에 나타 났던 정보를 입력해야합니다. 거기에서 각 학생의 균형을 뺍니다.

내가 이런 식으로 선택하는 데는 여러 가지 이유가 있습니다. 첫째, 사람들이 계정이 과다 청구되었다고 말할 때 계정에 잠재적 인 분쟁이 있습니다. 그들은 청구 된 날에 대한 기록을 원할 것입니다. 이것은 점심 계정을 가진 학교의 아이들과 다르지 않습니다. 그들의 부모는 한 달에 돈을 많이 쏟아 부 으면서도 학교에서 음식을 제공합니다. 아이들은 점심을 먹고 계산원은 컴퓨터에 가서 아이들의 계정을 확인하고 그날 그들의 음식에 대한 금액을 공제합니다.

그들은 분쟁 발생시 무언가를 구입할 때마다 기록을 보유하고 있으며 온라인으로 학부모가 거래에 액세스 할 수 있습니다. 많은 법적 문제를 저장합니다. 잠재적 인 코드 버그의 경우에는 전체 자동화를 피해야합니다. 시스템에서 실수를 한 경우 사람들이 소송을 제기하거나 기분 전환을당하는 것을 원하지 않습니다. 모든 것이 감사 준비되어야합니다.

+1

@Michael Hartmann의 견해를지지하고 그에 동의합니다. – Satpal

+0

답장을 보내 주셔서 감사합니다.출석에 대한 제 편집 좀보세요. – user194076

+0

그럼 당신이 선물을 입력하면 당신은 그들에게 돈을 부과하지만 그들이 존재했다는 주석을 달고, 변명없이 결석 할 때 그들을 청구하고 주석을달라고한다. 변명이 없다면, 나는 여전히 사건을 Exused로 0의 공제금으로 기록 할 것입니다. 당신은 완전한 기록에 대한 법적 기록이 있습니다. 분쟁이 발생하고 완전한 기록이 있기 때문에 학교가 잔고를 정당화하는 데 필요한 정보를 갖게되므로 모든 것이 정확하다는 것을 확인해야합니다. –

관련 문제