Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 어윈 사용법
- 인터페이스
- oracle
- 제네릭
- 생성자오버로드
- Java
- 정수형타입
- 참조형변수
- NestedFor
- 메소드오버로딩
- 한국건설관리시스템
- 객체 비교
- 예외미루기
- 집합_SET
- 대덕인재개발원
- 컬렉션프레임워크
- EnhancedFor
- 오라클
- 환경설정
- 예외처리
- GRANT VIEW
- abstract
- 사용자예외클래스생성
- cursor문
- 컬렉션 타입
- 추상메서드
- 자동차수리시스템
- 다형성
- 자바
- exception
Archives
- Today
- Total
거니의 velog
9. 관리자 페이지 (6) : 라이더 관리 본문
public int riderCreate() {
String riderCode = ""; // 라이더코드
String AbseYN = ""; // 부재유무
long deliCost = 0; // 배달비
String stoCode = ""; // 업체코드
String createRider = ""; // 라이더 생성
System.out.println(" ───────────────────────────────────────────────────");
System.out.println("어느 가게에 라이더로 등록하십니까?");
System.out.println("1. 업체코드로 입력");
System.out.println("2. 업체명 검색");
System.out.println(" ───────────────────────────────────────────────────");
System.out.print(" >> ");
int storeChoi = ScanUtil.nextIntegerLine();
if(storeChoi == 1) {
while(true) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println(" 업체코드 입력");
System.out.println(" ───────────────────────────────────────────────────");
System.out.print(" >> ");
stoCode = ScanUtil.nextLine();
if(ValidationUtil.validationCode(stoCode)) break;
}
}else if(storeChoi == 2) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println(" 업체명을 입력해 주세요.");
System.out.println(" ───────────────────────────────────────────────────");
System.out.print(" >> ");
String storeName = ScanUtil.nextLine();
List<Object> searchStoreName = new ArrayList<>();
searchStoreName.add(storeName);
List<Map<String, Object>> storeInfo = adminReadDAO.storeSearchFromStoName(searchStoreName);
if(NullCheckUtil.isEmpty(storeInfo)) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println("등록된 업체가 없습니다!");
System.out.println(" ───────────────────────────────────────────────────");
}else {
List<Map<String, Object>> storeALL = adminReadDAO.storeALL();
int maxStoCodeLen = gapUtil.gapFullCnt(storeALL, "STOCODE");
int maxNmLen = gapUtil.gapFullCnt(storeALL, "STONM");
int maxAddLen = gapUtil.gapFullCnt(storeALL, "STOADD");
System.out.println(" ──────────────────────────────────────────────────────────────────────────");
System.out.println("업체코드 업체명 업체주소");
System.out.println(" ──────────────────────────────────────────────────────────────────────────");
for(Map<String, Object> item : storeInfo) {
int storeStoCodeLen = gapUtil.gapCnt("STOCODE");
int storeNmLen = gapUtil.gapCnt("STONM");
int storeAddLen = gapUtil.gapCnt("STOADD");
StringBuilder memSTOCODE = gapUtil.gapFullSpace(String.valueOf(item.get("STOCODE")), maxStoCodeLen, storeStoCodeLen);
StringBuilder memNM = gapUtil.gapFullSpace(String.valueOf(item.get("STONM")), maxNmLen, storeNmLen);
StringBuilder memADD = gapUtil.gapFullSpace(String.valueOf(item.get("STOADD")), maxAddLen, storeAddLen);
System.out.printf("%-" + maxStoCodeLen + "s%-" + maxNmLen + "s%-" + maxAddLen + "s\n", memSTOCODE, memNM, memADD);
}
}
EnterUtil.enterNext(2);
return View.ADMIN_RIDER_MANAGEMENT;
}
List<Object> searchStoNm = new ArrayList<>();
searchStoNm.add(stoCode);
Map<String, Object> stoName = adminCreateDAO.searchStoreName(searchStoNm);
String stoNameStr = stoName.get("STONM").toString();
while(true) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println("[ " + stoNameStr + " ] 가게에 라이더를 등록합니다.");
System.out.println();
System.out.println("현재 라이더가 대전광역시 어느 구에 위치해 있습니까?");
System.out.println("1. 대덕구");
System.out.println("2. 동구");
System.out.println("3. 서구");
System.out.println("4. 유성구");
System.out.println("5. 중구");
System.out.println(" ───────────────────────────────────────────────────");
System.out.print(" >> ");
int GuSelect = ScanUtil.nextIntegerLine();
if(GuSelect == 1) {
riderCode = "AG";
break;
}else if(GuSelect == 2) {
riderCode = "DG";
break;
}else if(GuSelect == 3) {
riderCode = "SG";
break;
}else if(GuSelect == 4) {
riderCode = "YG";
break;
}else if(GuSelect == 5) {
riderCode = "JG";
break;
}else {
System.out.println("올바로 입력해 주세요.");
}
}
while(true) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println("현재 근무하시는 업체와의 계약 형태가 어떻게 되십니까?");
System.out.println();
System.out.println("1. 전속계약");
System.out.println("2. 외주계약");
System.out.println(" ───────────────────────────────────────────────────");
System.out.print(" >> ");
int contractSelect = ScanUtil.nextIntegerLine();
if(contractSelect == 1) {
riderCode += "CON";
break;
}else if(contractSelect == 2) {
riderCode += "OUT";
break;
}else {
System.out.println("올바로 입력해 주세요.");
}
}
riderCode += "%";
List<Object> cdStr = new ArrayList<>();
cdStr.add(riderCode);
List<Map<String, Object>> searchRiderCode = adminCreateDAO.searchRiderCode(cdStr);
if(NullCheckUtil.isEmpty(searchRiderCode)) {
riderCode += "01";
riderCode = riderCode.replace("%", "");
}else {
riderCode += searchRiderCode.get(0).get("RIDCODE").toString();
riderCode = riderCode.replace("%", "");
}
while(true) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println("현재 배달이 가능하십니까? (y / n)");
System.out.println(" ───────────────────────────────────────────────────");
System.out.print(" >> ");
AbseYN = ScanUtil.nextLine();
if(ValidationUtil.validationYN(AbseYN)) {
AbseYN = AbseYN.toUpperCase();
break;
}
}
while(true) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println("배달비를 입력해 주세요. (0 ~ 9999999999)");
System.out.println(" ───────────────────────────────────────────────────");
System.out.print(" >> ");
deliCost = ScanUtil.nextLong();
System.out.println();
if(ValidationUtil.validationPrice(deliCost)) break;
}
while(true) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println("라이더를 등록하시겠습니까? (y / n)");
System.out.println(" ───────────────────────────────────────────────────");
System.out.print(" >> ");
createRider = ScanUtil.nextLine();
if(ValidationUtil.validationYN(createRider)) break;
}
if(createRider.equals("n")) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println("라이더 등록을 취소합니다.");
System.out.println(" ───────────────────────────────────────────────────");
EnterUtil.enterNext(2);
return View.ADMIN_MENU_MANAGEMENT;
}else if(createRider.equals("y")) {
List<Object> param = new ArrayList<>();
param.add(riderCode);
param.add(AbseYN);
param.add(deliCost);
param.add(stoCode);
int isSuccess = adminCreateDAO.createRider(param);
if (isSuccess > 0) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println("라이더 등록이 완료되었습니다!");
System.out.println(" ───────────────────────────────────────────────────");
EnterUtil.enterNext(2);
}else {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println(">> 라이더 등록 실패! <<");
System.out.println(" ───────────────────────────────────────────────────");
EnterUtil.enterNext(2);
}
}
return View.ADMIN_RIDER_MANAGEMENT;
}
public int riderRead() {
List<Map<String, Object>> riderALL = adminReadDAO.riderALL();
if(NullCheckUtil.isEmpty(riderALL)) {
System.out.println("등록된 라이더가 없습니다!");
}else {
int maxRideCodeLen = gapUtil.gapFullCnt(riderALL, "RIDCODE");
int maxDeliCostLen = gapUtil.gapFullCnt(riderALL, "DELICOST");
int maxAbsetyLen = gapUtil.gapFullCnt(riderALL, "ABSEYN");
int maxStoNmLen = gapUtil.gapFullCnt(riderALL, "STONM");
// 페이징 기능
int pageNumber = 1; // 현재 페이지 번호
int pageSize = 5; // 페이지당 표시할 데이터 수
int startIndex = (pageNumber - 1) * pageSize; // 시작 인덱스
int endIndex = Math.min(startIndex + pageSize, riderALL.size()); // 끝 인덱스
int pageRowCnt = riderALL.size(); // 로우 개수
int totalPageSize = pageRowCnt / pageSize; // 총 페이지 개수
if(pageRowCnt % pageSize != 0) { // 다음 페이지까지 로우가 남음
totalPageSize++;
}
System.out.println(" ───────────────────────────────────────────────────");
System.out.println(" 1. 전체목록 보기");
System.out.println(" 2. 페이지 목록 보기");
System.out.println(" 3. 부분 검색");
System.out.println(" ───────────────────────────────────────────────────");
System.out.print(" >> ");
int choice = ScanUtil.nextInt();
if(choice == 1) { // 전체 검색
System.out.println(" ────────────────────────────────");
System.out.println(" 총 라이더 수 "+ pageRowCnt +" 명");
System.out.println(" ────────────────────────────────");
System.out.println("라이더코드 배달비 배달가능 소속된업체명");
System.out.println(" ────────────────────────────────");
for(Map<String, Object> item : riderALL) {
int memRideCodeLen = gapUtil.gapCnt(item, "RIDCODE");
int memDeliCostLen = gapUtil.gapCnt(item, "DELICOST");
int memAbsetyLen = gapUtil.gapCnt(item, "ABSEYN");
int memStoNmLen = gapUtil.gapCnt(item, "STONM");
StringBuilder memRideCode = gapUtil.gapFullSpace(String.valueOf(item.get("RIDCODE")), maxRideCodeLen, memRideCodeLen);
StringBuilder memDeliCost = gapUtil.gapFullSpace(String.valueOf(item.get("DELICOST")), maxDeliCostLen, memDeliCostLen);
StringBuilder memAbsety = gapUtil.gapFullSpace(String.valueOf(item.get("ABSEYN")), maxAbsetyLen, memAbsetyLen);
StringBuilder memStoNm = gapUtil.gapFullSpace(String.valueOf(item.get("STONM")), maxStoNmLen, memStoNmLen);
System.out.printf("%-" + maxRideCodeLen + "s%-" + maxDeliCostLen + "s%-" + maxAbsetyLen + "s%-" + maxStoNmLen + "s\n", memRideCode, memDeliCost, memAbsety, memStoNm);
}
EnterUtil.enterNext(1);
}else if(choice == 2) { // 페이징 검색
System.out.println(" ───────────────────────────────────────────────────");
System.out.println(" 한 페이지에 몇 개의 데이터를 보시겠습니까?");
System.out.println(" ───────────────────────────────────────────────────");
System.out.print(" >> ");
pageSize = ScanUtil.nextInt();
startIndex = (pageNumber - 1) * pageSize;
endIndex = Math.min(startIndex + pageSize, riderALL.size());
totalPageSize = pageRowCnt / pageSize; // 총 페이지 개수
if(pageRowCnt % pageSize != 0) { // 다음 페이지까지 로우가 남음
totalPageSize++;
}
System.out.println(" ────────────────────────────────");
System.out.println(" 총 라이더 수 "+ pageRowCnt +" 명 : " + pageNumber + " / " + totalPageSize + " 페이지");
System.out.println(" ────────────────────────────────");
System.out.println("라이더코드 배달비 배달가능 소속된업체명");
System.out.println(" ────────────────────────────────");
for(int i = startIndex; i < endIndex; i++) {
int memRideCodeLen = gapUtil.gapCnt(String.valueOf(riderALL.get(i).get("RIDCODE")));
int memDeliCostLen = gapUtil.gapCnt(String.valueOf(riderALL.get(i).get("DELICOST")));
int memAbsetyLen = gapUtil.gapCnt(String.valueOf(riderALL.get(i).get("ABSEYN")));
int memStoNmLen = gapUtil.gapCnt(String.valueOf(riderALL.get(i).get("STONM")));
StringBuilder memRideCode = gapUtil.gapFullSpace(String.valueOf(riderALL.get(i).get("RIDCODE")), maxRideCodeLen, memRideCodeLen);
StringBuilder memDeliCost = gapUtil.gapFullSpace(String.valueOf(riderALL.get(i).get("DELICOST")), maxDeliCostLen, memDeliCostLen);
StringBuilder memAbsety = gapUtil.gapFullSpace(String.valueOf(riderALL.get(i).get("ABSEYN")), maxAbsetyLen, memAbsetyLen);
StringBuilder memStoNm = gapUtil.gapFullSpace(String.valueOf(riderALL.get(i).get("STONM")), maxStoNmLen, memStoNmLen);
System.out.printf("%-" + maxRideCodeLen + "s%-" + maxDeliCostLen + "s%-" + maxAbsetyLen + "s%-" + maxStoNmLen + "s\n", memRideCode, memDeliCost, memAbsety, memStoNm);
}
while(true) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println(" 1. 원하는 페이지 보기");
System.out.println(" 0. 이전 화면");
System.out.println(" ───────────────────────────────────────────────────");
System.out.print(" >> ");
int pageListSelect = ScanUtil.nextInt();
if(pageListSelect == 1) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println(" 몇 페이지를 보시겠습니까?");
System.out.println(" ───────────────────────────────────────────────────");
System.out.print(" >> ");
pageNumber = ScanUtil.nextInt();
if(pageNumber > totalPageSize || pageNumber <= 0) {
System.out.println(" ────────────────────────────────");
System.out.println(" 총 라이더 수 "+ pageRowCnt +" 명 : " + pageNumber + " / " + totalPageSize + " 페이지");
System.out.println(" ────────────────────────────────");
System.out.println("라이더코드 배달비 배달가능 소속된업체명");
System.out.println(" ────────────────────────────────");
System.out.println("해당 페이지는 정보가 없습니다.");
}else {
startIndex = (pageNumber - 1) * pageSize;
endIndex = Math.min(startIndex + pageSize, riderALL.size());
System.out.println(" ────────────────────────────────");
System.out.println(" 총 라이더 수 "+ pageRowCnt +" 명 : " + pageNumber + " / " + totalPageSize + " 페이지");
System.out.println(" ────────────────────────────────");
System.out.println("라이더코드 배달비 배달가능 소속된업체명");
System.out.println(" ────────────────────────────────");
for(int i = startIndex; i < endIndex; i++) {
int memRideCodeLen = gapUtil.gapCnt(String.valueOf(riderALL.get(i).get("RIDCODE")));
int memDeliCostLen = gapUtil.gapCnt(String.valueOf(riderALL.get(i).get("DELICOST")));
int memAbsetyLen = gapUtil.gapCnt(String.valueOf(riderALL.get(i).get("ABSEYN")));
int memStoNmLen = gapUtil.gapCnt(String.valueOf(riderALL.get(i).get("STONM")));
StringBuilder memRideCode = gapUtil.gapFullSpace(String.valueOf(riderALL.get(i).get("RIDCODE")), maxRideCodeLen, memRideCodeLen);
StringBuilder memDeliCost = gapUtil.gapFullSpace(String.valueOf(riderALL.get(i).get("DELICOST")), maxDeliCostLen, memDeliCostLen);
StringBuilder memAbsety = gapUtil.gapFullSpace(String.valueOf(riderALL.get(i).get("ABSEYN")), maxAbsetyLen, memAbsetyLen);
StringBuilder memStoNm = gapUtil.gapFullSpace(String.valueOf(riderALL.get(i).get("STONM")), maxStoNmLen, memStoNmLen);
System.out.printf("%-" + maxRideCodeLen + "s%-" + maxDeliCostLen + "s%-" + maxAbsetyLen + "s%-" + maxStoNmLen + "s\n", memRideCode, memDeliCost, memAbsety, memStoNm);
}
}
}else if(pageListSelect == 0) {
return View.ADMIN_RIDER_MANAGEMENT;
}
}
}else if(choice == 3) { // 부분 검색
System.out.println(" ───────────────────────────────────────────────────");
System.out.println(" 1. 라이더코드로 검색");
System.out.println(" 2. 부재유무로 검색");
System.out.println(" 3. 가게명으로 검색");
System.out.println(" 4. 배달비로 검색");
System.out.println(" ───────────────────────────────────────────────────");
System.out.print(" >> ");
int searchno = ScanUtil.nextInt();
if(searchno == 1) {
System.out.print("라이더코드 >> ");
String riderCodeStr = ScanUtil.nextLine();
List<Object> searchRiderCode = new ArrayList<>();
searchRiderCode.add(riderCodeStr);
Map<String, Object> riderInfo = adminReadDAO.riderSearchFromRiderCode(searchRiderCode);
if(NullCheckUtil.isEmpty(riderInfo)) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println("등록된 라이더가 없습니다!");
System.out.println(" ───────────────────────────────────────────────────");
}else {
int memRideCodeLen = gapUtil.gapCnt(riderInfo, "RIDCODE");
int memDeliCostLen = gapUtil.gapCnt(riderInfo, "DELICOST");
int memAbsetyLen = gapUtil.gapCnt(riderInfo, "ABSEYN");
int memStoNmLen = gapUtil.gapCnt(riderInfo, "STONM");
StringBuilder memRideCode = gapUtil.gapFullSpace(String.valueOf(riderInfo.get("RIDCODE")), maxRideCodeLen, memRideCodeLen);
StringBuilder memDeliCost = gapUtil.gapFullSpace(String.valueOf(riderInfo.get("DELICOST")), maxDeliCostLen, memDeliCostLen);
StringBuilder memAbsety = gapUtil.gapFullSpace(String.valueOf(riderInfo.get("ABSEYN")), maxAbsetyLen, memAbsetyLen);
StringBuilder memStoNm = gapUtil.gapFullSpace(String.valueOf(riderInfo.get("STONM")), maxStoNmLen, memStoNmLen);
System.out.println(" ────────────────────────────────");
System.out.println("라이더코드 배달비 배달가능 소속된업체명");
System.out.println(" ────────────────────────────────");
System.out.printf("%-" + maxRideCodeLen + "s%-" + maxDeliCostLen + "s%-" + maxAbsetyLen + "s%-" + maxStoNmLen + "s\n", memRideCode, memDeliCost, memAbsety, memStoNm);
}
EnterUtil.enterNext(2);
}else if(searchno == 2) {
System.out.print("라이더 부재 (y / n) >> ");
String riderAbseYnStr = ScanUtil.nextLine();
riderAbseYnStr = riderAbseYnStr.toUpperCase();
List<Object> searchRiderAbseYn = new ArrayList<>();
searchRiderAbseYn.add(riderAbseYnStr);
List<Map<String, Object>> riderInfo = adminReadDAO.riderSearchFromAbseYn(searchRiderAbseYn);
if(NullCheckUtil.isEmpty(riderInfo)) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println("등록된 라이더가 없습니다!");
System.out.println(" ───────────────────────────────────────────────────");
}else {
System.out.println(" ────────────────────────────────");
System.out.println("라이더코드 배달비 배달가능 소속된업체명");
System.out.println(" ────────────────────────────────");
for(Map<String, Object> item : riderInfo) {
int memRideCodeLen = gapUtil.gapCnt(item, "RIDCODE");
int memDeliCostLen = gapUtil.gapCnt(item, "DELICOST");
int memAbsetyLen = gapUtil.gapCnt(item, "ABSEYN");
int memStoNmLen = gapUtil.gapCnt(item, "STONM");
StringBuilder memRideCode = gapUtil.gapFullSpace(String.valueOf(item.get("RIDCODE")), maxRideCodeLen, memRideCodeLen);
StringBuilder memDeliCost = gapUtil.gapFullSpace(String.valueOf(item.get("DELICOST")), maxDeliCostLen, memDeliCostLen);
StringBuilder memAbsety = gapUtil.gapFullSpace(String.valueOf(item.get("ABSEYN")), maxAbsetyLen, memAbsetyLen);
StringBuilder memStoNm = gapUtil.gapFullSpace(String.valueOf(item.get("STONM")), maxStoNmLen, memStoNmLen);
System.out.printf("%-" + maxRideCodeLen + "s%-" + maxDeliCostLen + "s%-" + maxAbsetyLen + "s%-" + maxStoNmLen + "s\n", memRideCode, memDeliCost, memAbsety, memStoNm);
}
}
EnterUtil.enterNext(2);
}else if(searchno == 3) {
System.out.print("가게명 >> ");
String riderStoCodeStr = ScanUtil.nextLine();
List<Object> searchStoCode = new ArrayList<>();
searchStoCode.add(riderStoCodeStr);
List<Map<String, Object>> riderInfo = adminReadDAO.riderSearchFromStoNm(searchStoCode);
if(NullCheckUtil.isEmpty(riderInfo)) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println("등록된 라이더가 없습니다!");
System.out.println(" ───────────────────────────────────────────────────");
}else {
System.out.println(" ────────────────────────────────");
System.out.println("라이더코드 배달비 배달가능 소속된업체명");
System.out.println(" ────────────────────────────────");
for(Map<String, Object> item : riderInfo) {
int memRideCodeLen = gapUtil.gapCnt(item, "RIDCODE");
int memDeliCostLen = gapUtil.gapCnt(item, "DELICOST");
int memAbsetyLen = gapUtil.gapCnt(item, "ABSEYN");
int memStoNmLen = gapUtil.gapCnt(item, "STONM");
StringBuilder memRideCode = gapUtil.gapFullSpace(String.valueOf(item.get("RIDCODE")), maxRideCodeLen, memRideCodeLen);
StringBuilder memDeliCost = gapUtil.gapFullSpace(String.valueOf(item.get("DELICOST")), maxDeliCostLen, memDeliCostLen);
StringBuilder memAbsety = gapUtil.gapFullSpace(String.valueOf(item.get("ABSEYN")), maxAbsetyLen, memAbsetyLen);
StringBuilder memStoNm = gapUtil.gapFullSpace(String.valueOf(item.get("STONM")), maxStoNmLen, memStoNmLen);
System.out.printf("%-" + maxRideCodeLen + "s%-" + maxDeliCostLen + "s%-" + maxAbsetyLen + "s%-" + maxStoNmLen + "s\n", memRideCode, memDeliCost, memAbsety, memStoNm);
}
}
EnterUtil.enterNext(2);
}else if(searchno == 4) {
System.out.print("얼마 이상 배달비를 검색할까요? (0 ~ 9999999999) >> ");
long riderDeliCostStr = ScanUtil.nextLong();
List<Object> searchDeliCost = new ArrayList<>();
searchDeliCost.add(riderDeliCostStr);
List<Map<String, Object>> riderInfo = adminReadDAO.riderSearchFromDeliCost(searchDeliCost);
if(NullCheckUtil.isEmpty(riderInfo)) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println("등록된 라이더가 없습니다!");
System.out.println(" ───────────────────────────────────────────────────");
}else {
System.out.println(" ────────────────────────────────");
System.out.println("라이더코드 배달비 배달가능 소속된업체명");
System.out.println(" ────────────────────────────────");
for(Map<String, Object> item : riderInfo) {
int memRideCodeLen = gapUtil.gapCnt(item, "RIDCODE");
int memDeliCostLen = gapUtil.gapCnt(item, "DELICOST");
int memAbsetyLen = gapUtil.gapCnt(item, "ABSEYN");
int memStoNmLen = gapUtil.gapCnt(item, "STONM");
StringBuilder memRideCode = gapUtil.gapFullSpace(String.valueOf(item.get("RIDCODE")), maxRideCodeLen, memRideCodeLen);
StringBuilder memDeliCost = gapUtil.gapFullSpace(String.valueOf(item.get("DELICOST")), maxDeliCostLen, memDeliCostLen);
StringBuilder memAbsety = gapUtil.gapFullSpace(String.valueOf(item.get("ABSEYN")), maxAbsetyLen, memAbsetyLen);
StringBuilder memStoNm = gapUtil.gapFullSpace(String.valueOf(item.get("STONM")), maxStoNmLen, memStoNmLen);
System.out.printf("%-" + maxRideCodeLen + "s%-" + maxDeliCostLen + "s%-" + maxAbsetyLen + "s%-" + maxStoNmLen + "s\n", memRideCode, memDeliCost, memAbsety, memStoNm);
}
}
EnterUtil.enterNext(2);
}
}
}
return View.ADMIN_RIDER_MANAGEMENT;
}
public int riderUpdate() {
List<Object> param = new ArrayList<Object>();
String sql = " UPDATE RIDER SET ";
int flag = 0; // 수정 여부 확인
String yesOrNot = ""; // y, n 입력
String riderCode = ""; // 라이더코드
String abseYn = ""; // 부재유무
long deliCost = 0; // 배달비
String stoCode = ""; // 업체코드
while(true) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println(" 변경할 라이더코드를 입력하세요. ( ex. YGOUT44 ) ");
System.out.println(" ───────────────────────────────────────────────────");
System.out.print(" >> ");
riderCode = ScanUtil.nextLine();
if (ValidationUtil.validationCode(riderCode)) {
param.add(riderCode);
break;
}
}
while(true) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println(" 라이더 부재 유무를 변경하시겠습니까? (y/n)");
System.out.println(" ───────────────────────────────────────────────────");
System.out.print(" >> ");
yesOrNot = ScanUtil.nextLine();
if(ValidationUtil.validationYN(yesOrNot)) break;
}
if(yesOrNot.equals("y")) {
while(true) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println(" * 라이더 활동 가능 : Y / 라이더 활동 불가능 : N 을 입력하세요. 띄어쓰기 불가.");
System.out.println(" ───────────────────────────────────────────────────");
System.out.print(" >> ");
abseYn = ScanUtil.nextLine();
if (ValidationUtil.validationYNtoUpperCase(abseYn)) {
sql += "ABSEYN = '"+ abseYn + "', ";
break;
}
}
}
while(true) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println(" 배달비를 변경하시겠습니까? (y/n)");
System.out.println(" ───────────────────────────────────────────────────");
System.out.print(" >> ");
yesOrNot = ScanUtil.nextLine();
if(ValidationUtil.validationYN(yesOrNot)) break;
}
if(yesOrNot.equals("y")) {
while(true) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println(" * 변경할 배달비 입력 [ 0 ~ 9999999999 ]");
System.out.println(" ───────────────────────────────────────────────────");
System.out.print(" >> ");
deliCost = ScanUtil.nextLongLine();
if (ValidationUtil.validationPrice(deliCost)) {
sql += "DELICOST = '"+ deliCost + "', ";
break;
}
}
}
while(true) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println(" 주 거래 업체를 변경하시겠습니까? (y/n)");
System.out.println(" ───────────────────────────────────────────────────");
System.out.print(" >> ");
yesOrNot = ScanUtil.nextLine();
if(ValidationUtil.validationYN(yesOrNot)) break;
}
if(yesOrNot.equals("y")) {
while(true) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println(" * 변경할 업체코드 입력 ( ex. AGHS01 )");
System.out.println(" ───────────────────────────────────────────────────");
System.out.print(" >> ");
stoCode = ScanUtil.nextLine();
if (ValidationUtil.validationCode(stoCode)) {
sql += "STOCODE = '"+ stoCode + "', ";
break;
}
}
}
int sqllen = sql.length();
sql = sql.substring(0, sqllen-2); // (endindex-1)-1[,]
sql += " WHERE RIDCODE = ? ";
while(true) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println(" 라이더 정보를 변경하시겠습니까? (y/n)");
System.out.println(" ───────────────────────────────────────────────────");
System.out.print(" >> ");
yesOrNot = ScanUtil.nextLine();
if(ValidationUtil.validationYN(yesOrNot)) break;
}
if(yesOrNot.equals("y")) {
flag = adminUpdateDAO.update(sql, param);
if(flag != 0) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println(" 라이더 수정이 완료되었습니다.");
System.out.println(" ───────────────────────────────────────────────────");
EnterUtil.enterNext(2);
}else {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println(" 라이더 수정이 실패했습니다.");
System.out.println(" ───────────────────────────────────────────────────");
EnterUtil.enterNext(2);
}
}else if(yesOrNot.equals("n")) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println(" 라이더 정보 관리 페이지로 이동합니다.");
System.out.println(" ───────────────────────────────────────────────────");
EnterUtil.enterNext(2);
}
return View.ADMIN_RIDER_MANAGEMENT;
}
public int riderDelete() {
String riderCodeStr = ""; // 라이더 코드
String deleteRider = ""; // 라이더 삭제
List<Map<String, Object>> riderALL = adminReadDAO.riderALL();
List<Map<String, Object>> storeALL = adminReadDAO.storeALL();
if(NullCheckUtil.isEmpty(riderALL)) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println("등록된 라이더가 없습니다!");
System.out.println(" ───────────────────────────────────────────────────");
}else if(NullCheckUtil.isEmpty(storeALL)) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println("등록된 가게가 없습니다!");
System.out.println(" ───────────────────────────────────────────────────");
}else {
int maxRideCodeLen = gapUtil.gapFullCnt(riderALL, "RIDCODE");
int maxStoNmLen = gapUtil.gapFullCnt(storeALL, "STONM");
int maxStoAddLen = gapUtil.gapFullCnt(storeALL, "STOADD");
System.out.println(" ───────────────────────────────────────────────────");
System.out.println("라이더 삭제");
System.out.println("1. 라이더코드 입력");
System.out.println("2. 업체명 검색");
System.out.println(" ───────────────────────────────────────────────────");
System.out.print(" >> ");
int menuChoice = ScanUtil.nextIntegerLine();
if(menuChoice == 1) {
while(true) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println("삭제하실 라이더코드를 입력해 주세요.");
System.out.println(" ───────────────────────────────────────────────────");
System.out.print(" >> ");
riderCodeStr = ScanUtil.nextLine();
System.out.println();
if(ValidationUtil.validationCode(riderCodeStr)) break;
}
}else if(menuChoice == 2) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println(" 검색하실 업체명을 입력해 주세요.");
System.out.println(" ───────────────────────────────────────────────────");
System.out.print(" >> ");
String storeNameStr = ScanUtil.nextLine();
List<Object> searchStoreName = new ArrayList<>();
searchStoreName.add(storeNameStr);
List<Map<String, Object>> storeInfo = adminDeleteDAO.riderSearchFromStoreName(searchStoreName);
if(NullCheckUtil.isEmpty(storeInfo)) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println("등록된 라이더가 없습니다!");
System.out.println(" ───────────────────────────────────────────────────");
}else {
System.out.println(" ─────────────────────────");
System.out.println("라이더코드 업체명 업체주소");
System.out.println(" ─────────────────────────");
for(Map<String, Object> item : storeInfo) {
int memRideCodeLen = gapUtil.gapCnt(item, "RIDCODE");
int memStoreNmLen = gapUtil.gapCnt(item, "STONM");
int memStoreAddLen = gapUtil.gapCnt(item, "STOADD");
StringBuilder memRideCode = gapUtil.gapFullSpace(String.valueOf(item.get("RIDCODE")), maxRideCodeLen, memRideCodeLen);
StringBuilder memStoreNm = gapUtil.gapFullSpace(String.valueOf(item.get("STONM")), maxStoNmLen, memStoreNmLen);
StringBuilder memStoreAdd = gapUtil.gapFullSpace(String.valueOf(item.get("STOADD")), maxStoAddLen, memStoreAddLen);
System.out.printf("%-" + maxRideCodeLen + "s%-" + maxStoNmLen + "s%-" + maxStoAddLen + "s\n", memRideCode, memStoreNm, memStoreAdd);
}
}
EnterUtil.enterNext(2);
return View.ADMIN_RIDER_MANAGEMENT;
}
}
while(true) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println(" [ "+ riderCodeStr +" ] 라이더를 삭제하시겠습니까? (y / n)");
System.out.println(" ───────────────────────────────────────────────────");
System.out.print(" >> ");
deleteRider = ScanUtil.nextLine();
if(ValidationUtil.validationYN(deleteRider)) break;
}
if(deleteRider.equals("n")) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println("라이더 삭제를 취소합니다.");
System.out.println(" ───────────────────────────────────────────────────");
EnterUtil.enterNext(2);
return View.ADMIN_RIDER_MANAGEMENT;
}else if(deleteRider.equals("y")) {
List<Object> param = new ArrayList<>();
param.add(riderCodeStr);
int isSuccess = adminDeleteDAO.deleteRider(param);
if (isSuccess > 0) {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println("라이더 삭제가 완료되었습니다!");
System.out.println(" ───────────────────────────────────────────────────");
EnterUtil.enterNext(2);
}else {
System.out.println(" ───────────────────────────────────────────────────");
System.out.println(">> 라이더 삭제 실패! <<");
System.out.println(" ───────────────────────────────────────────────────");
EnterUtil.enterNext(2);
}
}
return View.ADMIN_RIDER_MANAGEMENT;
}
'대덕인재개발원 > 대덕인재개발원_1st project' 카테고리의 다른 글
11. AdminReadDAO (0) | 2023.08.19 |
---|---|
10. AdminCreateDAO (0) | 2023.08.19 |
8. 관리자 페이지 (5) : 메뉴 관리 (0) | 2023.08.19 |
7. 관리자 페이지 (4) : 주문내역 관리 (0) | 2023.08.19 |
6. 관리자 페이지 (3) : 가게 리스트 관리 (0) | 2023.08.19 |