📄 commclass.java
字号:
mileCount += roadMile;
}
}
return mileCount;
}
//读取乡镇、建制村通达路信息表
public List getVillageAndTownTongDa(){
List list = new ArrayList();
ReadTxt rt = new ReadTxt();
String txtPath = this.txtFilePath + "\\Xztdqk.txt";
String[] listStr = rt.readFile(txtPath);
String lineStr = "";
//读取乡镇通达路线信息
for (int i = 1; listStr != null && i < listStr.length; i++) {
lineStr = listStr[i];
if (lineStr.length() == 0) continue;
list.add(lineStr);
}
//读取行政村通达路线信息
txtPath = this.txtFilePath + "\\Jzctdqk.txt";
listStr = rt.readFile(txtPath);
for (int i = 1; listStr != null && i < listStr.length; i++) {
lineStr = listStr[i];
if (lineStr.length() == 0) continue;
list.add(lineStr);
}
return list;
}
// 读取乡镇、建制村通达路信息表
public List getTDList(String filePath){
List list = new ArrayList();
ReadTxt rt = new ReadTxt();
String txtPath =filePath + "\\Xztdqk.txt";
String[] listStr = rt.readFile(txtPath);
String lineStr = "";
//读取乡镇通达路线信息
for (int i = 1; listStr != null && i < listStr.length; i++) {
lineStr = listStr[i];
if (lineStr.length() == 0) continue;
list.add(lineStr);
}
//读取行政村通达路线信息
txtPath = filePath + "\\Jzctdqk.txt";
listStr = rt.readFile(txtPath);
for (int i = 1; listStr != null && i < listStr.length; i++) {
lineStr = listStr[i];
if (lineStr.length() == 0) continue;
list.add(lineStr);
}
return list;
}
//读取乡镇、建制村通达路信息表2
public List getVillageAndTownNumber(String filePath){
List list = new ArrayList();
ReadTxt rt = new ReadTxt();
String txtPath = filePath + "\\Xztdqk.txt";
String[] listStr = rt.readFile(txtPath);
String lineStr = "";
//读取乡镇通达路线信息
for (int i = 1; listStr != null && i < listStr.length; i++) {
lineStr = listStr[i];
if (lineStr.length() == 0) continue;
list.add(lineStr);
}
//读取行政村通达路线信息
txtPath = filePath + "\\Jzctdqk.txt";
listStr = rt.readFile(txtPath);
for (int i = 1; listStr != null && i < listStr.length; i++) {
lineStr = listStr[i];
if (lineStr.length() == 0) continue;
list.add(lineStr);
}
return list;
}
//读取本次报部数据通达路线信息
public List getNewTongDa(String filePath){
List list = new ArrayList();
ReadTxt rt = new ReadTxt();
String txtPath = filePath + "\\Xztdqk.txt";
String[] listStr = rt.readFile(txtPath);
String lineStr = "";
//读取乡镇通达路线信息
for (int i = 1; listStr != null && i < listStr.length; i++) {
lineStr = listStr[i];
if (lineStr.length() == 0) continue;
list.add(lineStr);
}
//读取行政村通达路线信息
txtPath = filePath + "\\Jzctdqk.txt";
listStr = rt.readFile(txtPath);
for (int i = 1; listStr != null && i < listStr.length; i++) {
lineStr = listStr[i];
if (lineStr.length() == 0) continue;
list.add(lineStr);
}
return list;
}
//根据路线编码判断是否为第一次上报的通达路线
public String getIsTongDa(List list , String lxNumber){
String roadStr = "";
String lineStr = "";
String[] childStr = null;
String roadNumber = "";
String villageAndTownNumber = "";
String roadWidth = "";
String luJiWidth = "";
double roadMile = 0.0;
int n = 0;
//读取乡镇通达路线信息
for (int i = 1; list != null && i < list.size(); i++) {
lineStr = (String)list.get( i);
if (lineStr.length() == 0) continue;
childStr = lineStr.split("\t");
roadNumber = childStr[1];
villageAndTownNumber = childStr[0];
if (roadNumber.equals(lxNumber)){
n=1;
roadStr = "编码:" + villageAndTownNumber;
break;
}
}
return roadStr;
}
public List getLd(String filePath){
ReadTxt rt = new ReadTxt();
String txtPath = filePath + "\\Ld.txt";
String[] listStr = rt.readFile(txtPath);
String lineStr = "";
String tempStr = "";
List list = new ArrayList();
for (int i = 1; listStr != null && i < listStr.length; i++) {
lineStr = listStr[i];
if (lineStr.length() == 0 ) continue;
list.add( lineStr);
}
return list;
}
//上次报部路段表
public String [] getOldLd(String filePath){
ReadTxt rt = new ReadTxt();
String txtPath = filePath + "\\Ld.txt";
String[] listStr = rt.readFile(txtPath);
return listStr;
}
//本次报部路段表
public String [] getNewLd(String filePath){
ReadTxt rt = new ReadTxt();
String txtPath = filePath + "\\Ld.txt";
String[] listStr = rt.readFile(txtPath);
return listStr;
}
//按技术等级及重复路线、断头路统计路线里程
public double [] getRoadMile(List ldList , String lxNumber){
double [] temp = new double [5];
String roadNumber = "";
String roadName = "" ;
String tempNumber = "";
String lineStr = "";
String tempStr = "";
String alterStr = "";
int jiShuType = 0; //技术等级
int isChongFu = 0;//是否重复路线
int isDuanTou = 0;//是否断头路线
String luDuanNumber = "";//路段编号
String [] childStr = null;
String [] tempChild = null;
double gradeValue = 0.0;
double notGradeValue = 0.0;
double notValue = 0.0;
double tempValue = 0.0;
double sumValue = 0.0;
double chongFuValue = 0.0;
double duanTouValue = 0.0;
double mileCount = 0.0;
String luDuanValue = "";
int n = 0;
for (int i = 1; ldList != null && i < ldList.size() ; i++) {
lineStr = (String)ldList.get(i);
if (lineStr.length() == 0 ) continue;
childStr = lineStr.split("\t");
roadNumber = childStr[1];
roadName = childStr[2];
if (childStr[17].trim().length() == 0)
jiShuType = 1;
else
jiShuType = Integer.parseInt(childStr[17]);
isChongFu = Integer.parseInt(childStr[22]);
isDuanTou = Integer.parseInt(childStr[26]);
luDuanNumber = childStr[0];
luDuanValue = childStr[19];
if (roadNumber.equals(lxNumber)){
//mileCount += Double.parseDouble(luDuanValue);
if (isChongFu ==1){ //1是2否
chongFuValue += getLuDuanMileByNum(childStr[24],ldList); //重复路线里程
notGradeValue += chongFuValue ;
}
if (isDuanTou == 1){ //1是2否
duanTouValue += Double.parseDouble(luDuanValue);
notGradeValue += duanTouValue;
}
if (jiShuType >= 6 ){ //小于6为等级路,6为等外路
notGradeValue += Double.parseDouble(luDuanValue);
}else {
gradeValue += Double.parseDouble(luDuanValue);
}
}
}
temp[0] = gradeValue + notGradeValue - duanTouValue - chongFuValue; //合计=路线总里程-重复-断头里程
temp[1] = gradeValue; //等级
temp[2] = notGradeValue; //等外
temp[3] = chongFuValue; //重复
temp[4] = duanTouValue; //断头
return temp;
}
//根据路线编码获取路线里程及相关信息
public double [] getRoadMileArray(String[] ldList , String lxNumber){
double [] temp = new double [20];
String roadNumber = "";
String roadName = "" ;
String tempNumber = "";
String lineStr = "";
String tempStr = "";
String alterStr = "";
int jiShuType = 0; //技术等级
int isChongFu = 0;//是否重复路线
int isDuanTou = 0;//是否断头路线
int luMianType = 0; //路面类型
String luDuanNumber = "";//路段编号
String [] childStr = null;
String [] tempChild = null;
double gradeValue = 0.0;
double notGradeValue = 0.0;
double notValue = 0.0;
double tempValue = 0.0;
double sumValue = 0.0;
double chongFuValue = 0.0;
double duanTouValue = 0.0;
double mileCount = 0.0;
double gaoSuValue = 0.0;
double yiJiValue = 0.0;
double erJiValue = 0.0;
double sanJiValue = 0.0;
double siJiValue = 0.0;
double youLuMianValue = 0.0;
double wuLuMianValue = 0.0;
double liQinHNTValue = 0.0;
double shuiNiHNTValue = 0.0;
double qinYuMile = 0.0;
String luDuanValue = "";
int n = 0;
for (int i = 1; ldList != null && i < ldList.length ; i++) {
lineStr = ldList[i];
if (lineStr.length() == 0 ) continue;
childStr = lineStr.split("\t");
roadNumber = childStr[1];
roadName = childStr[2];
if (childStr[17].trim().length() == 0)
jiShuType = 0;
else
jiShuType = Integer.parseInt(childStr[17]);
isChongFu = Integer.parseInt(childStr[22]);
isDuanTou = Integer.parseInt(childStr[26]);
luDuanNumber = childStr[0];
luDuanValue = childStr[19];
if (childStr[18].trim().length() != 0)
luMianType = Integer.parseInt(childStr[18]);
if (roadNumber.equals(lxNumber)){
//mileCount += Double.parseDouble(luDuanValue);
if (isChongFu ==1){ //1是2否
chongFuValue += Double.parseDouble(luDuanValue); //重复路线里程
//notGradeValue += chongFuValue ;
}
if (isDuanTou == 1){ //1是2否
duanTouValue += Double.parseDouble(luDuanValue);
//notGradeValue += duanTouValue;
}
if (jiShuType >= 6 ){ //6为等外路
notGradeValue += Double.parseDouble(luDuanValue);
}
if (jiShuType > 0 && jiShuType < 6 ){ //小于6为等级路,
gradeValue += Double.parseDouble(luDuanValue);
}
// 技术等级(高速、一级、二级、三级、四级)
switch (jiShuType) {
case 1: gaoSuValue += Double.parseDouble(luDuanValue); break;
case 2: gaoSuValue += Double.parseDouble(luDuanValue); break;
case 3: gaoSuValue += Double.parseDouble(luDuanValue); break;
case 4: gaoSuValue += Double.parseDouble(luDuanValue); break;
case 5: gaoSuValue += Double.parseDouble(luDuanValue); break;
default: gaoSuValue += Double.parseDouble(luDuanValue); break;
}
//路面类型(有路面、无路面、沥清混凝土、水泥混凝土、、砖铺路面)
switch (luMianType) {
case 1: gaoSuValue += Double.parseDouble(luDuanValue); break;
case 2: gaoSuValue += Double.parseDouble(luDuanValue); break;
case 3: gaoSuValue += Double.parseDouble(luDuanValue); break;
case 4: gaoSuValue += Double.parseDouble(luDuanValue); break;
case 5: gaoSuValue += Double.parseDouble(luDuanValue); break;
case 8: gaoSuValue += Double.parseDouble(luDuanValue); break;
default: gaoSuValue += Double.parseDouble(luDuanValue); break;
}
mileCount += Double.parseDouble(luDuanValue); //路线总里程
if (childStr[25].equals("1")) //是否睛雨通车里程
qinYuMile += mileCount ;
else qinYuMile += 0;
}
}
temp[0] = ItemValue.getRound(mileCount,3) ; //路线总里程
temp[1] = ItemValue.getRound(chongFuValue,3); //重复
temp[2] = ItemValue.getRound(duanTouValue,3); //断头
temp[3] = ItemValue.getRound(gradeValue,3); //等级
temp[4] = ItemValue.getRound(notGradeValue,3); //等外
temp[19] = ItemValue.getRound(qinYuMile,3); //是否晴雨通车里程
return temp;
}
//按路线编码取里程
public double getRoadMileByNum(String roadNumber , List roadList){
double roadMile = 0.0;
String lineStr = "";
String [] childStr = null;
String lxNumber = "";
for (int i = 0 ; roadList != null && i < roadList.size(); i++){
lineStr = (String)roadList.get(i);
if (lineStr.length() == 0) continue;
childStr = lineStr.split("\t");
lxNumber = childStr[1];
if (lxNumber.equals(roadNumber)){
roadMile += roadMile + Double.parseDouble(childStr[19]);
}else
continue;
}
return roadMile;
}
// 按路线编码取里程
public double getRoadMile(String roadNumber , String [] ldList){
double roadMile = 0.0;
String lineStr = "";
String [] childStr = null;
String lxNumber = "";
for (int i = 1 ; ldList != null && i < ldList.length; i++){
lineStr = ldList[i];
if (lineStr.length() == 0) continue;
childStr = lineStr.split("\t");
lxNumber = childStr[1];
if (lxNumber.equals(roadNumber)){
roadMile += roadMile + Double.parseDouble(childStr[19]);
}else
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -