修改前:
public Map updateUnitChkInfo(String billNo,Map chkMap,List chkUnitRstList,List chkPerRstList){
boolean cflag = true;
int j=0;int k=0;
while(cflag){
if(j<=chkUnitRstList.size()-1){
Map utMap = (Map)chkUnitRstList.get(j);
if("00".equals(utMap.get("chkCode")+"")){
k++;
}else{
if("00".equals(chkMap.get("chkCode")+"")){
chkMap.put("chkCode", utMap.get("chkCode"));
chkMap.put("chkInfo", utMap.get("chkInfo"));
}else{
chkMap.put("chkCode", chkMap.get("chkCode")+""+utMap.get("chkCode"));
chkMap.put("chkInfo", chkMap.get("chkInfo")+""+utMap.get("chkInfo")); UpdateStateDao downloadDao = new UpdateStateDao();
try{
downloadDao.upSynDownflag("2", billNo, pt);
}catch(SQLException e){
e.printStackTrace();
System.out.println("------>"+e.getMessage());
}
}
cflag=false;
}
if(k==chkUnitRstList.size()-1){
cflag=false;
}
}else{
cflag=false;
}
j++;
}
j=0;k=0;cflag=true;
while(cflag){
if(j<=chkPerRstList.size()-1){
Map prMap = (Map)chkPerRstList.get(j);
if("00".equals(prMap.get("chkCode")+"")){
k++;
}else{
if("00".equals(chkMap.get("chkCode")+"")){
chkMap.put("chkCode", "XX");
chkMap.put("chkInfo", "XXXXXXXXXXX;");
}else{
chkMap.put("chkCode", chkMap.get("chkCode")+"99");
chkMap.put("chkInfo", chkMap.get("chkInde")+"YYYYYYYYYYYYY;");
}
cflag=false;
}
if(k==chkPerRstList.size()-1){
cflag=false;
}
}else{
cflag=false;
}
j++;
}
return chkMap;
}
修改后:
private CheckResult getUnitsCheckResult(String billNo,Map chkMap,List chkUnitRstList){
CheckResult unitsResult = new CheckResult();
UpdateStateDao downloadDao = new UpdateStateDao();
String chk_code = "";
String chk_info = "";
if(!("00".equals(chkMap.get("chkCode")+""))){
chk_code = chkMap.get("chkCode")+"";
chk_info = chkMap.get("chkInfo")+"";
try{
downloadDao.upSynDownflag("4", billNo, pt);
}catch(SQLException e){
e.printStackTrace();
System.out.println("失败原因:\n"+e.getMessage());
}
}
for(int i=0;i<chkUnitRstList.size();i++){
Map utMap = (Map)chkUnitRstList.get(i);
if(!("00".equals(utMap.get("chkCode")+""))){
chk_code = chk_code+"YY";
chk_info = chk_info+"YYYYYYY;";
unitsResult.setChkCode(chk_code);
unitsResult.setChkInfo(chk_info);
return unitsResult;
}
}
if("".equals(chk_code)){
unitsResult.setChkCode("YY");
unitsResult.setChkInfo("YYYYYYYYY");
}else{
unitsResult.setChkCode(chk_code);
unitsResult.setChkInfo(chk_info);
}
return unitsResult ;
}
private CheckResult getPersCheckResult(CheckResult unitsResult,List chkPerRstList){
CheckResult persResult = new CheckResult();
UpdateStateDao downloadDao = new UpdateStateDao();
String chk_code = "";
String chk_info = "";
if(!("00".equals(unitsResult.getChkCode()))){
chk_code = unitsResult.getChkCode();
chk_info = unitsResult.getChkInfo();
}
for(int i=0;i<chkPerRstList.size();i++){
Map prMap = (Map)chkPerRstList.get(i);
if(!("00".equals(prMap.get("chkCode")+""))){
//如果有错误
chk_code = chk_code+"XX";
chk_info = chk_info+"XXXXXXXX;";
persResult.setChkCode(chk_code);
persResult.setChkInfo(chk_info);
return persResult;
}
}
if("".equals(chk_code)){
persResult.setChkCode("00");
persResult.setChkInfo("XXXXXXYYYYYYYY");
}else{
persResult.setChkCode(chk_code);
persResult.setChkInfo(chk_info);
}
return persResult ;
}
public Map updateUnitChkInfo(String billNo,Map chkMap,List chkUnitRstList,List chkPerRstList){
Map resultMap = new HashMap();
CheckResult unitsResult = getUnitsCheckResult(billNo,chkMap,chkUnitRstList);
CheckResult persResult = getPersCheckResult(unitsResult,chkPerRstList);
resultMap.put("chkCode", persResult.getChkCode());
resultMap.put("chkInfo", persResult.getChkInfo());
return resultMap;
}
分享到:
相关推荐
超过3层的 if-else 的逻辑判断代码可以使用卫语句、策略模式、状态模式等来实现,其中卫语句示例如下:public void today() {System
【厨卫小家电_学生管理小项目】是一个适合C#初学者进行实践的编程项目,旨在帮助学习者通过实际操作来提升编程技能。这个项目主要关注的是“学生管理系统”的开发,虽然标题中提及了“厨卫小家电”,但在这个上下...
标题中的“利用statspack对“军卫一号”进行数据库性能诊断一例”指的是在军事卫生领域的一个信息系统——“军卫一号”中,遇到性能问题,使用Oracle数据库自带的性能分析工具statspack进行诊断和优化的过程。...
Java考试答题系统是一款基于Java技术构建的应用,旨在提供一个便捷、高效的在线考试平台。该系统充分利用了Java的跨平台特性,确保在多种操作系统上都能稳定运行,同时结合MySQL数据库存储数据,实现了考试题目、...
这个"ASP实例开发源码-厨卫五金材料企业网站源码 v1.0.zip"是一个使用ASP技术构建的企业网站的源代码包,适用于厨卫五金材料行业的在线展示和销售。 ASP的核心特性包括: 1. **服务器端执行**:ASP代码在服务器上...
心形的基本形状由两个半椭圆和一个连接它们的弧线构成,通过精心设计的算法,我们可以精确地控制这些几何形状的大小和位置,从而得到理想的心形图案。 在C语言中实现这些图形时,程序员可能会使用基本的图形库,如...
在IT领域,GPS模块是广泛应用于定位和导航系统中的一个重要组件。GPS(全球定位系统)是一种基于卫星导航的全球定位技术,它通过接收卫星发射的信号来确定地球上任何位置的精确坐标。本主题主要涉及如何在单片机上...
在 Active Server Pages 中,无论何时你要访问一个数据库,你都需要使用 SQL 语言。掌握好 SQL 对 ASP 编程是非常重要的。SQL 语言被设计为不允许你按照某种特定的顺序来取出记录,而是按查询条件来读取记录。 二、...
飘窗因其独特设计和视野通常受到欢迎,主卫和次卫的干湿分离程度也是提高居住品质的重要因素。使用优质材料的进户门等细节也能提升房源的整体价值。 在客户对房型提出看法和疑问时,销售人员需准备解答各种常见问题...
开发者需要设计一个包含输入框(TextBox)让用户输入身高和体重,以及一个按钮(Button)触发计算过程。 2. **事件驱动编程**:VB采用事件驱动的方式,比如当用户点击“计算”按钮时,会触发一个事件,执行相应的...
例如,添加新书籍时,会编写一个INSERT语句;查询书籍时,可能使用SELECT语句配合WHERE子句;修改书籍信息则对应UPDATE语句,而删除书籍对应DELETE语句。这些操作通常封装在类的方法中,以便在用户界面上调用。 ...
【自我体重诊断Java程序】是一个基于Java编程语言的软件应用,其主要目的是帮助用户通过输入体重数据进行自我体重状况的评估。在这个程序中,所有的代码都集中在一个类中,这在小型项目中是常见的做法,便于管理和...
《Java开发手册》最新版涵盖了史无前例的三大升级: 1.新增21条新规约。比如,switch的空指针问题、浮点数的比较、无泛型限制引起的类型混乱、...比如,变量命名示例、卫语句示例、枚举示例、finally的return示例等。
《Java开发手册》更新版,涵盖史无前例的三大升级: 1.新增21条新规约。比如,switch的空指针问题、浮点数的比较、无泛型限制引起的类型混乱...比如,变量命名示例、卫语句示例、枚举示例、finally的return示例等。
- **卫语句**:复杂if-else结构可改写为卫语句,提高可读性。 - **避免过多的嵌套**:过多的嵌套会导致代码难以理解和调试。 这些规范旨在帮助开发者编写清晰、一致且易于理解的代码,从而减少bug的产生,提升...
2. SQL中SELECT语句执行结果是一个表(table),但可以看作是元组(tuple)的集合。 3. 唯一约束(unique constraint)用来禁止输入重复值。 4. SQL语句中可以去掉重复行的关键字是DISTINCT。 5. 在SQL中,删除一个...
2019.06.19 《阿里巴巴Java开发手册》时隔一年,发布更新1.5.0华山版。同时,将更名为《Java开发手册》,涵盖史无前例的三大升级 ...比如,命名示例、卫语句示例、enum 示例、finally 的 return示例等。
在提供的压缩包文件"**Gps25Comm**"中,可能包含了一个实现上述功能的示例程序或代码片段,供学习和参考。这个程序可能包括了串口配置、数据读取、NMEA语句解析等关键部分,帮助开发者了解如何在实际项目中实现串口...
接下来,我们将详细分析部分数据内容,以便更好地理解每个NMEA语句的具体含义及其在GPS数据传输中的作用。 ### 数据内容分析 #### $GPRMC ``` $GPRMC,,V,,,,,,,280609,,,N*56 ``` - **$GPRMC**:推荐最小定位...
通过依赖-卫式推理,本方法提出了一种新颖的2层并发分布式算法形式化验证方法。系统层主要处理并发级的验证,组件层则处理顺序级的验证。文章中还提到了两种主要的验证方法:演绎验证和模型检测。演绎验证,如定理...