사업자등록번호 유효성검사

By | 3월 21, 2009

[출처] 사업자 등록번호 유효성 검사|작성자 hongjae83

* 규칙은 123-12-12345 였다. 아래는 유효성체크 관련 문건.

//사업자 번호 체크
//받은 값이 사업자등록번호인지 유효성을 체크하는 함수
//연속된 10자리 숫자가 들어왔을때 실행한다.
//만약 xxx-xx-xxxxx 형식으로 들어온다면 ConvertNumber를 먼저 수행하여 체크한다.
function ValidateVendorNo(field)
{
 var v1,v2,v3,v4,v5,v6,v7;
 var v8,v9,v10;
 var x,y,z,c,t,xa,xb;
 var result = false;
 
 field = field.replace(/-/g,"");

 if(field.length == 10)
 {
  result=true;
  if ((field == '2044902645') || (field == '4168302079') || (field == '5058302973'))
  {
   return true;
  }

  v1 = field.charAt(0);
  v2 = field.charAt(1);
  v3 = field.charAt(2);
  v4 = field.charAt(3);
  v5 = field.charAt(4);
  v6 = field.charAt(5);
  v7 = field.charAt(6);
  v8 = field.charAt(7);
  v9 = field.charAt(8);
  v10 = field.charAt(9);

  w = (parseInt(v1,10) * 1) + (parseInt(v2,10) * 3) + (parseInt(v3,10) * 7);
  w = parseInt(w,10) + (parseInt(v4,10) * 1) + ( parseInt(v5,10) * 3) + ( parseInt(v6,10) * 7);
  w = parseInt(w,10) + (parseInt(v7,10) * 1) + ( parseInt(v8,10) * 3);

  x = (parseInt(v9,10) * 5);

  if( x >= 10 )
  {
      xb = x % 10;
      xa = (x - xb) / 10;
      y = w + xa + xb;
  }
  else
  {
      y = w + x;
  }

   z1 = y / 10;
   z2 = y % 10;

  if( z2 != 0 )
  {
   z2 = 10 - z2;
  }

  if( z2 != v10 )
  {
   return false;
  }
 }
 else
 {
  result = false;
 }
 
 return result;
}

 
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments