package main func Select(compareStr string, info *Info, compareInfo *ProjectInfo) (res int) { //没有可对比的项目名称、或项目编号 if compareNoPass[compareStr] { } else { switch compareStr { case "AAA": res = 3 case "AAB": res = 3 case "ABA": res = 3 case "ABB": if info.LenPTC > 6 || info.LenPC > 6 { res = 3 } else { res = 2 } case "BAA": if info.LenPN > 10 { res = 3 } else { res = 2 } case "BAB": if info.LenPN > 10 || info.LenPTC > 6 { res = 3 } else { res = 2 } case "BBA": if info.LenPN > 10 || info.LenPC > 6 { res = 3 } else { res = 2 } case "BBB": v := 0 if info.LenPN > 12 { v++ } if info.LenPC > 8 { v++ } if info.LenPTC > 8 { v++ } if v > 1 { res = 2 } else { res = 1 } case "AAD": res = 3 case "ABD": // if info.LenPC > 12 || info.LenPN > 16 { // res = 3 // } else { // res = 2 // } res = 2 case "BAD": // if info.LenPC > 12 || info.LenPN > 16 { // res = 3 // } else { // res = 2 // } res = 2 case "BBD": if info.LenPC > 12 && info.LenPN > 16 { res = 2 } else { res = 1 } case "ADA": res = 3 case "ADB": // if info.LenPTC > 12 || info.LenPN > 16 { // res = 3 // } else { // res = 2 // } res = 2 case "BDA": // if info.LenPTC > 12 || info.LenPN > 16 { // res = 3 // } else { // res = 2 // } res = 2 case "BDB": if info.LenPTC > 12 && info.LenPN > 16 { res = 2 } else { res = 1 } case "ADD": if info.LenPN > 14 { res = 2 } else { res = 1 } case "BDD": // if info.LenPN > 18 { // res = 2 // } else { // res = 1 // } res = 1 case "DAA": if info.LenPTC > 12 || info.LenPC > 12 { res = 3 } else { res = 2 } case "DAB": if info.LenPTC > 12 { res = 2 } else { res = 1 } case "DAD": if info.LenPTC > 14 { res = 2 } else { res = 1 } case "DBA": if info.LenPC > 12 { res = 2 } else { res = 1 } case "DBB": if info.LenPTC > 12 && info.LenPC > 12 { res = 2 } else { res = 1 } case "DBD": if info.LenPC > 8 { res = 1 } case "DDA": if info.LenPTC > 12 { res = 2 } else { res = 1 } case "DDB": if info.LenPC > 8 { res = 1 } case "ACA": if info.LenPN > 12 || info.LenPTC > 9 { res = 2 } else { res = 1 } case "ACB": if info.LenPN > 14 && info.LenPTC > 10 { res = 2 } else { res = 1 } case "BCA": if info.LenPN > 12 && info.LenPTC > 9 { res = 2 } else { res = 1 } case "BCB": if info.LenPN > 12 && info.LenPTC > 9 { res = 2 } else if info.LenPN > 16 || info.LenPTC > 12 { res = 1 } case "AAC": if info.LenPN > 12 || info.LenPC > 9 { res = 3 } else { res = 2 } case "ABC": if info.LenPN > 14 || info.LenPC > 12 { res = 2 } else { res = 1 } case "BAC": if info.LenPN > 14 || info.LenPC > 12 { res = 2 } else { res = 1 } case "BBC": // if info.LenPN > 12 && info.LenPTC > 9 { // res = 1 // } else { // res = 1 // } res = 1 case "ACC": // if info.LenPC > 4 && len(compareInfo.ProjectCode) > 4 && CheckHanAndNum(info.ProjectCode) && CheckHanAndNum(compareInfo.ProjectCode) { // //未考虑MPC // } else if info.LenPN > 16 { // res = 1 // } // res = 1 case "ACD": //项目编号不一致 res = 1 case "ADC": res = 1 case "BCC": //项目编号不一致 res = 1 case "BCD": //项目编号不一致 if info.LenPC > 4 && len(compareInfo.ProjectCode) > 4 && (!_numreg1.MatchString(info.ProjectCode) && !_numreg1.MatchString(compareInfo.ProjectCode)) { //未考虑MPC } else if info.LenPN > 18 && info.LenPC-len([]rune(compareInfo.ProjectCode)) != 0 { res = 1 } case "BDC": if info.LenPN > 18 && info.LenPTC-len([]rune(compareInfo.ProjectCode)) != 0 { res = 1 } case "CAA": if info.LenPC > 10 || info.LenPTC > 10 { res = 2 } else { res = 1 } case "CAB": if info.LenPC > 10 && info.LenPTC > 10 { res = 2 } else { res = 1 } case "CAC": res = 1 case "CAD": res = 1 case "CBA": res = 1 case "CBB": res = 1 case "CBC": res = 1 case "CBD": res = 1 case "CCA": res = 1 case "CCB": // case "CDA": res = 1 case "CDB": res = 1 case "DAC": res = 1 case "DBC": res = 1 case "DCA": res = 1 case "DCB": res = 1 } } return }