public static final String[] SP_Array = { "Q", "W", "E", "R", "T", "Y", "U", "I", "O", "P" };
public static boolean SNReg(String MachineCode, String SerialNumber)
{
if ((MachineCode != null) && (MachineCode.length() == 0)) {
return false;
}
if ((SerialNumber != null) && (SerialNumber.length() == 0)) {
return false;
} try
{
String NoGSerialNumber = SerialNumber.replaceAll("-", "");
if ((NoGSerialNumber == null) || (NoGSerialNumber.length() == 0)) {
return false;
} StringBuffer sbstrOne = new StringBuffer("");
for (int i = 0; i < NoGSerialNumber.length(); i++) {
if (i % 2 == 0) {
sbstrOne.append(NoGSerialNumber.substring(i, i + 1));
} } if ((sbstrOne == null) || (sbstrOne.length() == 0)) {
return false;
} String NoRLSerialNumber = sbstrOne.toString();
String tmpStr = "";
StringBuffer sbstrTwo = new StringBuffer("");
for (int i = 0; i < NoRLSerialNumber.length(); i++) {
tmpStr = NoRLSerialNumber.substring(i, i + 1);
for (int j = 0; j < SP_Array.length; j++) {
if (tmpStr.equals(SP_Array[j])) {
tmpStr = String.valueOf(j);
break;
}
}
sbstrTwo.append(tmpStr);
} if ((sbstrTwo == null) || (sbstrTwo.length() == 0)) {
return false;
} String NoGMachineCode = getDownSerialNumber(MachineCode);
String NoGMachineNumber = sbstrTwo.toString(); if ((NoGMachineCode == null) || (NoGMachineCode.length() == 0)) {
return false;
}
if ((NoGMachineNumber == null) || (NoGMachineNumber.length() == 0)) {
return false;
} if (NoGMachineCode.length() != NoGMachineNumber.length()) {
return false;
} if (!NoGMachineCode.equals(NoGMachineNumber))
{
int Length = NoGMachineCode.length();
int NoSameNumber = 0;
String P1 = "";
String P2 = "";
for (int i = 0; i < Length; i++) {
P1 = NoGMachineCode.substring(i, i + 1);
P2 = NoGMachineNumber.substring(i, i + 1);
if (!P1.equals(P2)) {
NoSameNumber = i - 1;
}
}
int i_UserNumber = 0;
int PartNumberOne = Integer.parseInt(NoGMachineCode.substring(NoSameNumber, NoGMachineCode.length()));
int PartNumberTwo = Integer.parseInt(NoGMachineNumber.substring(NoSameNumber, NoGMachineNumber.length())); if (PartNumberOne >= PartNumberTwo) {
return false;
}
i_UserNumber = PartNumberTwo - PartNumberOne; if (PartNumberTwo - i_UserNumber != PartNumberOne) {
return false;
}
} return true;
} catch (Exception e) {
Log.v_error(e);
}return false;
}
public static boolean SNReg(String MachineCode, String SerialNumber)
{
if ((MachineCode != null) && (MachineCode.length() == 0)) {
return false;
}
if ((SerialNumber != null) && (SerialNumber.length() == 0)) {
return false;
} try
{
String NoGSerialNumber = SerialNumber.replaceAll("-", "");
if ((NoGSerialNumber == null) || (NoGSerialNumber.length() == 0)) {
return false;
} StringBuffer sbstrOne = new StringBuffer("");
for (int i = 0; i < NoGSerialNumber.length(); i++) {
if (i % 2 == 0) {
sbstrOne.append(NoGSerialNumber.substring(i, i + 1));
} } if ((sbstrOne == null) || (sbstrOne.length() == 0)) {
return false;
} String NoRLSerialNumber = sbstrOne.toString();
String tmpStr = "";
StringBuffer sbstrTwo = new StringBuffer("");
for (int i = 0; i < NoRLSerialNumber.length(); i++) {
tmpStr = NoRLSerialNumber.substring(i, i + 1);
for (int j = 0; j < SP_Array.length; j++) {
if (tmpStr.equals(SP_Array[j])) {
tmpStr = String.valueOf(j);
break;
}
}
sbstrTwo.append(tmpStr);
} if ((sbstrTwo == null) || (sbstrTwo.length() == 0)) {
return false;
} String NoGMachineCode = getDownSerialNumber(MachineCode);
String NoGMachineNumber = sbstrTwo.toString(); if ((NoGMachineCode == null) || (NoGMachineCode.length() == 0)) {
return false;
}
if ((NoGMachineNumber == null) || (NoGMachineNumber.length() == 0)) {
return false;
} if (NoGMachineCode.length() != NoGMachineNumber.length()) {
return false;
} if (!NoGMachineCode.equals(NoGMachineNumber))
{
int Length = NoGMachineCode.length();
int NoSameNumber = 0;
String P1 = "";
String P2 = "";
for (int i = 0; i < Length; i++) {
P1 = NoGMachineCode.substring(i, i + 1);
P2 = NoGMachineNumber.substring(i, i + 1);
if (!P1.equals(P2)) {
NoSameNumber = i - 1;
}
}
int i_UserNumber = 0;
int PartNumberOne = Integer.parseInt(NoGMachineCode.substring(NoSameNumber, NoGMachineCode.length()));
int PartNumberTwo = Integer.parseInt(NoGMachineNumber.substring(NoSameNumber, NoGMachineNumber.length())); if (PartNumberOne >= PartNumberTwo) {
return false;
}
i_UserNumber = PartNumberTwo - PartNumberOne; if (PartNumberTwo - i_UserNumber != PartNumberOne) {
return false;
}
} return true;
} catch (Exception e) {
Log.v_error(e);
}return false;
}
