【Maintenance】一、查询检查检验报告单并补传--思路

检查检验报告的思路流程不同,区别如下:

  • 1、检查报告存于TB_RIS_Report、TB_RIS_Report2表中。

    若中心端和前置机数据库中存在 59数据库中没有 的数据,则标志为需要补传。由维护人员选择需要补传的报告数据进行补传。

  • 2、检验报告单的表头存于TB_LIS_Report,表内容存于TB_LIS_Indicator表中。

    ① 若中心端和前置机数据库中存在 59数据库中没有 的Report数据,则标志为需要补传。

    ② 若中心端和前置机数据库中存在 59数据库中没有 的Indicators数据,则标志为需要补传。

由维护人员选择需要补传的报告数据进行补传。

(一)检验报告单

流程图:

开发步骤:

1、查询59、中心端、前置机数据库的报告数据,以RisReport对象格式存入集合List1,List2,List3;

2、合并三个List得到集合List_all,由RisReport的flag属性标志该对象存在哪个数据库。(0表示存在59,1存在中心端,2存在前置机)

同一条数据的优先级:中心端>前置机>59。

reportList_all.addAll(reportList_59);

reportList_qzj.removeAll(reportList_all);

reportList_all.addAll(reportList_qzj);

reportList_center.removeAll(reportList_all);

reportList_all.addAll(reportList_center);

map.put("listAll",reportList_all);

3、将数据集合展现在前台页面,并设置flag属性为1和2的数据可以补传。点击按钮启动补传方法。

(二)检验报告单

流程图:

开发步骤:

1、查询59、中心端、前置机数据库的报告数据,以LisReport对象格式存入集合List1,List2,List3;

2、遍历List1数据,以每条数据的报告单号为主键查询59、中心端、前置机的Indicator报告指标数据,以indFlag标志Indicator存在状态(0:Ind不存在59/中心端/前置机,1:59有 ,2:中心端有59无,3:前置机有59无)。

for(int i=0;i<reportList59.size();i++){

    if(iqueryDao.check59Indicator(reportList59.get(i).getYljgdm(),reportList59.get(i).getBgdh(),reportList59.get(i).getBgrq())){

        //如果59有,indFlag为1

        Report r=reportList59.get(i);

        r.setIndFlag(1);

        reportList59.set(i,r);

    }else if(iqueryDao.checkCenterIndicator(reportList59.get(i).getYljgdm(),reportList59.get(i).getBgdh(),reportList59.get(i).getBgrq())){

        //如果59没有,中心端有,indFlag为2

        Report r=reportList59.get(i);

        r.setIndFlag(2);

        reportList59.set(i,r);

    }else if(iqueryDao.checkQzjIndicator(reportList59.get(i).getYljgdm(),reportList59.get(i).getBgdh(),reportList59.get(i).getBgrq())){

        //如果59没有,前置机有,indFlag为3

        Report r=reportList59.get(i);

        r.setIndFlag(3);

        reportList59.set(i,r);

    }

}

3、合并List1、List2、List3得到集合List_all,由RisReport的flag属性标志该对象存在哪个数据库。(0表示存在59,1存在中心端,2存在前置机)

同一条数据的优先级:中心端>前置机>59。

reportListQzj.removeAll(reportList59);

reportList59.addAll(reportListQzj);

reportListCenter.removeAll(reportList59);

reportList59.addAll(reportListCenter);

map.put("listAll",reportList59);

4、将数据集合展现在前台页面,并设置flag属性为1和2、indFlag为2,3的数据可以补传。点击按钮启动补传方法。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容