괴발개발 성장기

사이드 프로젝트/오픈소스

[golang] 사업자번호 유효성 검사하는 패키지 배포

지니유 2022. 1. 16. 18:33
반응형

사업자번호 유효성검사 코드는 1년전에 수습때 만들었던 코드이다.

규칙을 보고 짠 던 기억이 있다.

회사에서 npm으로 배포하는 걸 보고 go언어로 된 것도 깃허브에 올려야겠다는 생각을 했다.

 

# 패키지 설치

go get -u github.com/YooGenie/validate-business-number

 

# 사용법

사업자 번호넣어서 호출하면 false, true 값으로 나온다

check := validate.BusinessNumber("1234567890")

 

# 사업자번호 체크하는 코드

func BusinessNumber(bisNo string) bool {
	var arrCheckNum = []int{1, 3, 7, 1, 3, 7, 1, 3, 5}

	sum := 0
	if len(bisNo) == 10 {
		for i := 0; i < 9; i++ {
			r, _ := strconv.Atoi(string(bisNo[i]))
			sum += r * arrCheckNum[i]
		}
		t, _ := strconv.Atoi(string(bisNo[8]))
		sum += (t * arrCheckNum[8]) / 10
		sum = (10 - (sum % 10)) %10

		lastNum, _ := strconv.Atoi(string(bisNo[9]))

		if sum == lastNum {
			return true
		} else {
			return false
		}
	} else {
		return false
	}

}

# github 주소

https://github.com/YooGenie/validate-business-number

# 사업자 번호 규칙 참조

https://tyson.tistory.com/116

 

사업자 등록번호 체크방법

사업자 등록번호 체크할 일이 있어서, 밑에 페이지에서 가져와서 해놓았는데, 체크썸이 0으로 끝났을때는 안되서, 보니까, 10일수도 있어서 한번 더 해줘야 되더라.. 퍼온 페이지 https://gs.saro.me/#!

tyson.tistory.com

 

 

반응형