- 시간 충전과 충전목록

 

먼저 시간 충전에 대한 화면을 살펴보기로 하자

 

 

 

먼저 시간 충전을 위해서는 회원 검색을 하여야 한다.

시간충전은 기존 회원에 한하여 가능한 서비스이기 때문이다.

회원검색에서 이름을 입력한 다음 검색을 하면 해당 회원이 나타날것이다.

그러면 충전하고자 하는 회원을 선택하면 아래와 같은 화면이 나타날것이다

 

 

상기 화면에서 보면 회원번호, 이름, 연락처, 남은시간(현재 남아 있는 시간이 있는 경우 표시)이 기본적으로 나타나고 충전시간은 기본으로 20시간, 유효기간은 4개월로 지정되어 있다.

 

충전시간은 총 100시간 까지 가능하며 20시간으로 부터 20시간 단위로 추가 되도록 되어 있다.

유효기간 또한 4개월에서 2개월 단위로 추가가 되도록 설계가 되어 있다.

 

 

 

충전기록관리는 상기 이미지와 같이 회원별 기록관리와 전체기록관리로 나누어져 있다.

하단의 전체목록을 클릭하면 최종 충전한 기록들을 회원별로 보여준다.

각 회원별로 최종으로 한 1개의 기록만을 보여주는 것이다.

그러나 회원 이름으로 검색을 하면 회원에 대한 충전 기록을 모두 볼수 있다.

 

그리고 회원을 선택한다음 충전 취소버튼을 클릭하면 취소가 가능하다.

충전취소의 경우 민감한 부분이기 때문에 충전후 사용흔적이 있으면 취소가 불가능하다.

즉 충전시간보다 만은 시간이 적은경우 취소가 되지 않는다.

충전취소는 사용기록이 없어야 한다.

 

혹시 사용한 후 기존 사용건에 대한것은 현금 지불라고 취소를 하고 싶다면

블럭방이용신청에서 기존 사용건에 대한 수정을 처리한 후 남은시간과 충전시간을 같게 해주면 취소가 가능하다.

 

충전과 충전기록관리는 특별히 어렵거나 특이한것은 없다.

나중에 소스부분을 살펴볼때 추가로 설명하겠지만 개발 또한 특별히 어려운 부분은 없다.

 

오늘은 여기서 포스트를 정리하고자 한다.

다음시간에 또 ~~

top


잠시 쉬어가는 코너로 SQLite연결을 위한 전역변수 사용에 대한 부분을 살펴보자

 

먼저 참조로 System.Data.SQLite.Core를 선택해서 추가하였다.

 

using System.Data.SQLite;

 

그런 다음 전역변수로 DB연결부분을 만들었다

 

public class global_variable
        {

            //전역변수 선언부분
            private static String currentPath = Environment.CurrentDirectory; //현재 디렉토리
            private static string bDBPath = currentPath + "\\blocknori.db"; //DB명
            private static String bConnStr = String.Format("Data Source={0};password={1}", bDBPath, "비밀번호");

            private static SAdminInfo g_AInfo;

            public static string DBPath  //디비 경로 설정
            {
                get { return bDBPath; }
                set { bDBPath = value; }
            }

            public static string ConnStr  //디비 연결문자열
            {
                get { return bConnStr; }
                set { bConnStr = value; }
            }

         }

 

위와 같이 전역변수를 선언한 다음 DB연결을 진행했다.

 

DB는 설치프로그램 하단에 루트디렉토리에 존재하도록 작업을 하였다.

 

그리고 몇가지 공통되는 함수를 만들었다

그중 하나가 페이징이다

페이징에서는 가장 중요한것이 페이징 갯수를 구하는 것이다

함수를 살펴보면 아래와 같다

 

 

//페이징 갯수 구하기
     public long GetPageSize(long nTotal, long nPageNum)
        {
            double nTP;

            nTP = 0;

            try
            {
                if (nTotal == 0)
                {
                    nTP = 0;
                }
                else
                {
                    nTP = (double)(nTotal / (double)nPageNum) * (double)nPageNum;

                    if ((double)nTP % (double)nPageNum != 0)
                    {
                        nTP = (nTP / (double)nPageNum) + 1;
                    }
                    else
                    {
                        nTP = nTP / (double)nPageNum;
                    }

                }
            }
            catch { }

            return (long)nTP;
     }

 

 

메인에서 사용할때는

먼저

private long noriPageSize = 15;
        
private long chargePageCount = 0;
private long chargeCurrentPage = 1;

 

private로 변수를 선언한 다음

long TotalRecords = 총레코드수를 구한다;

noriPageCount = dbcon.GetPageSize(TotalRecords, noriPageSize);

 

이렇게 페이지 갯수를 구하면 된다.

 

다음 포스트에서도 중간 중간 특이한 함수에 대해서는 정리를 하고자 한다

 

top


이번 포스트에서는 회원등록과 회원수정, 그리고 회원삭제, 회원목록에 대한 화면을 설명하고자 한다

 

먼저 회원등록폼을 살펴보자

 

 

회원등록폼을 보면 알겠지만 굉장히 단순하게 만들었다

이름과 성별, 생년월일과 나이, 연락처 등을 입력해준다

상기 항목은 모두 필수 항목이다

 

회원은 가입과 동시에 시간을 충전해야 한다

기본 20시간에서 부터 20시간단위로 100시간까지 충전이 가능하다

그리고 유효기간은 20시간은 4개월

40시간은 6개월

60시간은 8개월

80시간은 10개월

100시간은 12개월로 되어 있다

이메일과 주소 메모는 옵션으로 작성하지 않아도 가능하다

 

회원을 가입하면 기본적으로 시간충전이 한번 일어나게 되어 있다.

왜냐하면 회원이라함은 시간충전이 된 사용자를 지칭하기 때문이다

일일회원은 회원가입이 아니라 지난번 포스트에서처럼 일일회원으로 등록하면 된다

 

일단 회원등록이 되면 자동으로 회원번호가 순차적으로 부여되며 시간충전이 완료된다.

 

그럼 회원목록을 살펴보자

 

 

회원목록을 보면 연번과 회원번호, 이름, 성별, 생년월일, 나이, 연락처, 이메일, 주소, 메모로 목록이 나타난다.

검색을 통하여 회원의 정보를 볼수도 있다

 

그리고 하단의 전체목록버튼을 클릭하면 전체 회원 목록이 나타난다

초기화면은 아무회원도 보이지 않는다

르기고 한페이지에 15명씩 보이도록 구성되어 있다

이것은 노트북화면에서 최적화를 시키기 위해 그렇게 했다.

 

회원을 선택하고 상단에 수정버튼을 클릭하면 회원 가입시 입력한 정보가 새창으로 나타난다.

폼의 모양은 회원등록시와 똑같다

단지 시간충전만 빠져있다.

 

 

그리고 회원삭제는 회원을 선택하고 삭제버튼을 누르면 삭제 여부를 묻고 삭제가 된다

 

그리고 상단의 있는 엑셀다운로드는 검색회원이나 현재 페이지에 있는 회원만을 엑셀로 다운로든 하는것이고 하단의 전체회원엑셀다운로드는 페이징과 관게없이 전체회원에 대한 엑셀을 다운로드하게 해준다

 

그리고하단의 페이징버튼을 통하여 페이지 이동이 가능하게 만들었다.

 

오늘은 비교적 간단하게 회원등록과 목록에 대해서 설명한것 같다

다음포스트에서는 시간충전과 시간충전 기록에 대한 화면 설명을 진행할 예정이다

다음포스트도 많은 관심을 부탁드립니다

 

top