Index: ssts-qualitymon/src/main/java/com/forgon/disinfectsystem/qualitymonitoring/definition/dto/SecondaryIndicatorOfCSSDNQCSSaveDto.java =================================================================== diff -u -r41094 -r41103 --- ssts-qualitymon/src/main/java/com/forgon/disinfectsystem/qualitymonitoring/definition/dto/SecondaryIndicatorOfCSSDNQCSSaveDto.java (.../SecondaryIndicatorOfCSSDNQCSSaveDto.java) (revision 41094) +++ ssts-qualitymon/src/main/java/com/forgon/disinfectsystem/qualitymonitoring/definition/dto/SecondaryIndicatorOfCSSDNQCSSaveDto.java (.../SecondaryIndicatorOfCSSDNQCSSaveDto.java) (revision 41103) @@ -24,7 +24,18 @@ public void setId(Long id) { this.id = id; } - + + public void setId(String id) { + if (id != null && !id.trim().isEmpty()) { + try { + this.id = Long.valueOf(id); + } catch (NumberFormatException e) { + this.id = null; + } + } else { + this.id = null; + } + } public String getName() { return name; } @@ -40,6 +51,17 @@ public void setQualityControlIndicatorTypeId(Long qualityControlIndicatorTypeId) { this.qualityControlIndicatorTypeId = qualityControlIndicatorTypeId; } + // 处理空字符串转换为null + public void setQualityControlIndicatorTypeId(String qualityControlIndicatorTypeId) { + if (qualityControlIndicatorTypeId != null && !qualityControlIndicatorTypeId.trim().isEmpty()) { + try { + this.qualityControlIndicatorTypeId = Long.valueOf(qualityControlIndicatorTypeId); + } catch (NumberFormatException e) { + this.qualityControlIndicatorTypeId = null; + } + } else { + this.qualityControlIndicatorTypeId = null; + } + } - } Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/util/CssdNursingQualityControlSummaryReportHelper.java =================================================================== diff -u -r41096 -r41103 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/util/CssdNursingQualityControlSummaryReportHelper.java (.../CssdNursingQualityControlSummaryReportHelper.java) (revision 41096) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/util/CssdNursingQualityControlSummaryReportHelper.java (.../CssdNursingQualityControlSummaryReportHelper.java) (revision 41103) @@ -5,7 +5,11 @@ import java.util.ArrayList; import java.util.List; import java.util.Map; +import java.util.Set; +import net.sf.json.JSONArray; +import net.sf.json.JSONObject; + import org.apache.commons.lang.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -21,6 +25,7 @@ import com.forgon.disinfectsystem.entity.qualitymonitoringmanager.qualitymonitoringconfig.QualityControlIndicatorType; import com.forgon.disinfectsystem.entity.qualitymonitoringmanager.qualitymonitoringconfig.QualityControlItemParameter; import com.forgon.disinfectsystem.entity.qualitymonitoringmanager.qualitymonitoringconfig.QualityMonitoringDefinition; +import com.forgon.disinfectsystem.entity.qualitymonitoringmanager.qualitymonitoringconfig.SecondaryIndicatorOfCSSDNQCS; import com.forgon.disinfectsystem.entity.sterilizationmanager.sterilizationrecord.SterilizationRecord; import com.forgon.disinfectsystem.jasperreports.javabeansource.CssdNursingQualityControlSummaryReportVo; import com.forgon.disinfectsystem.jasperreports.service.dataindex.DataIndex; @@ -242,9 +247,49 @@ vo.setTargetValue("0.00%"); } } + + //近两季度器械返洗情况柱状图 + JSONArray thisQuarterWash = queryQualityControlItemParameterAmount(betweenSqlOfThisQuarter, querySupplyRoom, "器械清洗合格率"); + JSONArray lastQuarterWash = queryQualityControlItemParameterAmount(betweenSqlOfLastQuarter, querySupplyRoom, "器械清洗合格率"); + + + //季度器械返洗器械柏拉图 + getRateInfo(thisQuarterWash); + + parametMap.put("thisQuarterWash", thisQuarterWash); + parametMap.put("lastQuarterWash", lastQuarterWash); + + //器械包装不合格柏拉图 + JSONArray thisQuarterPack = queryQualityControlItemParameterAmount(betweenSqlOfThisQuarter, querySupplyRoom, "器械包装合格率"); + + getRateInfo(thisQuarterPack); + parametMap.put("thisQuarterPack", thisQuarterPack); + + return vos; } /** + * 获取比例 + * @param datas JSONArray + */ + private void getRateInfo(JSONArray datas){ + int totalAmount = 0; + for (int i = 0; i < datas.size(); i++) { + JSONObject obj = datas.optJSONObject(i); + totalAmount += obj.optInt("amount"); + } + for (int i = 0; i < datas.size(); i++) { + JSONObject obj = datas.optJSONObject(i); + int amount = obj.optInt("amount"); + if(totalAmount > 0){ + double rate = amount * 100 / totalAmount; + obj.put("rate", String.format("%.2f%%", rate)); + }else{ + obj.put("rate", "0.00%"); + } + } + } + /** * 获取浮动值 两个百分比的差 * @param lastQuarter 上季度 * @param thisQuarter 本季度 @@ -298,14 +343,15 @@ try (ResultSet rs = objectDao.executeSql(sql)) { while (rs.next()) { int sumQuantity = rs.getInt("sumQuantity"); - String qtName = rs.getString("qtName"); - CssdNursingQualityControlSummaryReportVo vo = getVoBySecondaryIndicator(qtName, vos); + String name = rs.getString("name"); + CssdNursingQualityControlSummaryReportVo vo = getVoBySecondaryIndicator(name, vos); setQuantityToVo(vo, sumQuantity, targetField); } } catch (SQLException e) { throw new RuntimeException("数据库查询失败", e); } } + /** * 给指定字段赋值 * @param vo cssdNursingQualityControlSummaryReportVo @@ -343,13 +389,117 @@ return null;//二级指标名称已提前设置好 ovs数量固定 理论上不会执行到这里 } /** + * 查询二级指标管理的质控项目登记数量 + * @param betweenSql + * @param querySupplyRoom + * @param sicName 二级指标名称 + * @return + */ + private JSONArray queryQualityControlItemParameterAmount(String betweenSql, String querySupplyRoom, String sicName){ + String sql = getQualityControlItemParameterAmountSql(betweenSql, querySupplyRoom, sicName); + + JSONArray arr = initVos(sicName);//没有数量也要显示 所以先初始化 + try (ResultSet rs = objectDao.executeSql(sql)) { + while (rs.next()) { + int sumQuantity = rs.getInt("sumQuantity"); + String qName = rs.getString("qName"); + setQualityControlItemParameterAmount(qName, sumQuantity, arr); + } + } catch (SQLException e) { + throw new RuntimeException("数据库查询失败", e); + } + return arr; + } + /** + * 设置数量 + * @param qName + * @param sumQuantity + * @param arr + */ + private void setQualityControlItemParameterAmount(String qName , int sumQuantity, JSONArray arr){ + for (int i = 0; i < arr.size(); i++) { + JSONObject obj = arr.getJSONObject(i); + if(qName.equals(obj.optString("qName"))){ + obj.put("amount", sumQuantity); + break; + } + } + } + /** + * 初始化二级指标 + * @param sicName + * @return + */ + private JSONArray initVos(String sicName){ + Set qnames = getQualityControlItemParameterNames(sicName); + JSONArray arr = new JSONArray(); + for (String qname : qnames) { + JSONObject obj = new JSONObject(); + obj.put("qName", qname); + obj.put("amount", 0); + arr.add(obj); + } + return arr; + } + /** + * 查询二级指标配置的质控项目 + * @param sicName + * @return + */ + private Set getQualityControlItemParameterNames(String sicName){ + String sql = "select q.name from " + + QualityControlItemParameter.class.getSimpleName() + + " q join " + + QualityControlIndicatorType.class.getSimpleName() + + " qt on qt.id=q.qcIndicatorType_id join " + + SecondaryIndicatorOfCSSDNQCS.class.getSimpleName() + + " sic on sic.qualityControlIndicatorTypeId=qt.id where sic.name ='"+ sicName +"'"; + return objectDao.getStringSet(sql, StringUtils.EMPTY); + } + /** + * 查询二级指标配置的质控项数量 + * @param betweenSql + * @param querySupplyRoom + * @param sciName 二级指标 名称 + * @return + */ + private String getQualityControlItemParameterAmountSql(String betweenSql, String querySupplyRoom, String sciName){ + String sql = "select sum(fiov.quantity) sumQuantity,q.name qName from " + + QualityMonitoringInstance.class.getSimpleName() + + " qmi join " + + FormInstance.class.getSimpleName() + + " fi on fi.id=qmi.id join " + + QualityMonitoringDefinition.class.getSimpleName() + + " qmdf on qmdf.id=fi.formDefinition_id join " + + FormInstanceItem.class.getSimpleName() + + " fii on fii.formInstance_id=qmi.id join " + + FormDefinitionItem.class.getSimpleName() + + " fdi on fdi.id=fii.formDefinitionItem_id join " + + FormInstanceOptionValue.class.getSimpleName() + + " fiov on fiov.formInstanceItem_id=fii.id join " + + FormDefinitionItemOption.class.getSimpleName() + + " fido on fido.id=fiov.definitionItemOption_id join " + + QualityControlItemParameter.class.getSimpleName() + + " q on q.id=fido.qcItemParameter_id join " + + QualityControlIndicatorType.class.getSimpleName() + + " qt on qt.id=q.qcIndicatorType_id join " + + SecondaryIndicatorOfCSSDNQCS.class.getSimpleName() + + " sic on sic.qualityControlIndicatorTypeId=qt.id where qmi.dateTime " + + betweenSql + + " and sic.name ='"+ sciName +"' " + + " and fiov.quantity > 0 " + + SqlUtils.getHandleDepartCodingOfQualityMonitoringDefinitionSql(querySupplyRoom) + + " group by q.name "; + return sql; + } + /** * 查询质检指标类的总数量sql * @param betweenSql 时间过滤 * @param querySupplyRoom 供应室编码 * @return */ private String getSumQuantitySql(String betweenSql, String querySupplyRoom){ - String sql = "select sum(fiov.quantity) sumQuantity,qt.name qtName from " + String sql = "select sum(fiov.quantity) sumQuantity,sic.name name from " + QualityMonitoringInstance.class.getSimpleName() + " qmi join " + FormInstance.class.getSimpleName() @@ -367,13 +517,13 @@ + QualityControlItemParameter.class.getSimpleName() + " q on q.id=fido.qcItemParameter_id join " + QualityControlIndicatorType.class.getSimpleName() - + " qt on qt.id=q.qcIndicatorType_id " - + " where qmi.dateTime " + + " qt on qt.id=q.qcIndicatorType_id join " + + SecondaryIndicatorOfCSSDNQCS.class.getSimpleName() + + " sic on sic.qualityControlIndicatorTypeId=qt.id where qmi.dateTime " + betweenSql - + " and qt.name in ('器械清洗合格率','器械包装合格率','灭菌监测合格率','湿包发生率') " + " and fiov.quantity > 0 " + SqlUtils.getHandleDepartCodingOfQualityMonitoringDefinitionSql(querySupplyRoom) - + " group by qt.name "; + + " group by sic.name "; return sql; } } Index: ssts-qualitymon/src/main/java/com/forgon/disinfectsystem/qualitymonitoring/definition/controller/QualityControlIndicatorTypeController.java =================================================================== diff -u -r41093 -r41103 --- ssts-qualitymon/src/main/java/com/forgon/disinfectsystem/qualitymonitoring/definition/controller/QualityControlIndicatorTypeController.java (.../QualityControlIndicatorTypeController.java) (revision 41093) +++ ssts-qualitymon/src/main/java/com/forgon/disinfectsystem/qualitymonitoring/definition/controller/QualityControlIndicatorTypeController.java (.../QualityControlIndicatorTypeController.java) (revision 41103) @@ -1,17 +1,17 @@ package com.forgon.disinfectsystem.qualitymonitoring.definition.controller; +import java.util.List; import net.sf.json.JSONObject; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; - -import com.forgon.disinfectsystem.entity.qualitymonitoringmanager.qualitymonitoringconfig.SecondaryIndicatorOfCSSDNQCS; import com.forgon.disinfectsystem.qualitymonitoring.definition.dto.QualityControlIndicatorTypeDto; import com.forgon.disinfectsystem.qualitymonitoring.definition.dto.SecondaryIndicatorOfCSSDNQCSSaveDto; import com.forgon.disinfectsystem.qualitymonitoring.definition.service.QualityControlIndicatorTypeManager; import com.forgon.entity.PageEntity; import com.forgon.tools.json.JSONUtil; +import com.google.gson.reflect.TypeToken; /** * 质控指标类管理的接口 @@ -100,14 +100,30 @@ * @return 返回参数 */ @RequestMapping("/saveSecondaryIndicatorOfCSSDNQCS") - public String saveSecondaryIndicatorOfCSSDNQCS(SecondaryIndicatorOfCSSDNQCSSaveDto secondaryIndicatorOfCSSDNQCSSaveDto){ + public String saveSecondaryIndicatorOfCSSDNQCS(String saveDtos){ JSONObject result = JSONUtil.buildJsonObject(true, "保存成功"); try { - qualityControlIndicatorTypeManager.saveSecondaryIndicatorOfCSSDNQCS(secondaryIndicatorOfCSSDNQCSSaveDto); + //将数组字符串saveDtos 转化为 List + List secondaryIndicatorOfCSSDNQCSSaveDtos = JSONUtil.fromJson(saveDtos, new TypeToken>(){}); + qualityControlIndicatorTypeManager.saveSecondaryIndicatorOfCSSDNQCS(secondaryIndicatorOfCSSDNQCSSaveDtos); } catch (Exception e) { e.printStackTrace(); result = JSONUtil.buildJsonObject(false, e.getMessage()); } return result.toString(); } + /** + * 二级指标关联质控指标列表 + */ + @RequestMapping("/getSecondaryIndicatorOfCSSDNQCSList") + public String getSecondaryIndicatorOfCSSDNQCSList(){ + JSONObject result = null; + try { + result = JSONUtil.buildJsonObject(true, qualityControlIndicatorTypeManager.getSecondaryIndicatorOfCSSDNQCSList()); + } catch (Exception e) { + e.printStackTrace(); + result = JSONUtil.buildJsonObject(false, "加载失败:" + e.getMessage()); + } + return result.toString(); + } } Index: ssts-qualitymon/src/main/java/com/forgon/disinfectsystem/qualitymonitoring/definition/service/QualityControlIndicatorTypeManager.java =================================================================== diff -u -r41093 -r41103 --- ssts-qualitymon/src/main/java/com/forgon/disinfectsystem/qualitymonitoring/definition/service/QualityControlIndicatorTypeManager.java (.../QualityControlIndicatorTypeManager.java) (revision 41093) +++ ssts-qualitymon/src/main/java/com/forgon/disinfectsystem/qualitymonitoring/definition/service/QualityControlIndicatorTypeManager.java (.../QualityControlIndicatorTypeManager.java) (revision 41103) @@ -1,5 +1,9 @@ package com.forgon.disinfectsystem.qualitymonitoring.definition.service; +import java.util.List; + +import net.sf.json.JSONArray; + import com.forgon.disinfectsystem.entity.qualitymonitoringmanager.qualitymonitoringconfig.QualityControlIndicatorType; import com.forgon.disinfectsystem.qualitymonitoring.definition.dto.QualityControlIndicatorTypeDto; import com.forgon.disinfectsystem.qualitymonitoring.definition.dto.SecondaryIndicatorOfCSSDNQCSSaveDto; @@ -20,9 +24,9 @@ /** * 保存或修改二级指标关联质控指标 - * @param secondaryIndicatorOfCSSDNQCSSaveDto 入参 + * @param secondaryIndicatorOfCSSDNQCSSaveDtos 入参 */ - public void saveSecondaryIndicatorOfCSSDNQCS(SecondaryIndicatorOfCSSDNQCSSaveDto secondaryIndicatorOfCSSDNQCSSaveDto); + public void saveSecondaryIndicatorOfCSSDNQCS(List secondaryIndicatorOfCSSDNQCSSaveDtos); /** * 删除质控指标类 * @param ids 质控指标类id,例如1;2;3 @@ -42,5 +46,7 @@ * @param page 分页参数 */ public void loadQualityControlIndicatorTypeList(String spell, PageEntity page); + + public JSONArray getSecondaryIndicatorOfCSSDNQCSList(); } Index: ssts-qualitymon/src/main/java/com/forgon/disinfectsystem/qualitymonitoring/definition/service/QualityControlIndicatorTypeManagerImpl.java =================================================================== diff -u -r41093 -r41103 --- ssts-qualitymon/src/main/java/com/forgon/disinfectsystem/qualitymonitoring/definition/service/QualityControlIndicatorTypeManagerImpl.java (.../QualityControlIndicatorTypeManagerImpl.java) (revision 41093) +++ ssts-qualitymon/src/main/java/com/forgon/disinfectsystem/qualitymonitoring/definition/service/QualityControlIndicatorTypeManagerImpl.java (.../QualityControlIndicatorTypeManagerImpl.java) (revision 41103) @@ -1,9 +1,13 @@ package com.forgon.disinfectsystem.qualitymonitoring.definition.service; import java.sql.ResultSet; +import java.sql.SQLException; import java.util.Collection; import java.util.List; +import net.sf.json.JSONArray; +import net.sf.json.JSONObject; + import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang.StringUtils; import org.springframework.stereotype.Service; @@ -61,33 +65,38 @@ } @Override public void saveSecondaryIndicatorOfCSSDNQCS( - SecondaryIndicatorOfCSSDNQCSSaveDto secondaryIndicatorOfCSSDNQCSSaveDto) { - if(secondaryIndicatorOfCSSDNQCSSaveDto == null || StringUtils.isBlank(secondaryIndicatorOfCSSDNQCSSaveDto.getName()) || !DatabaseUtil.isPoIdValid(secondaryIndicatorOfCSSDNQCSSaveDto.getQualityControlIndicatorTypeId())){ + List secondaryIndicatorOfCSSDNQCSSaveDtos) { + if(CollectionUtils.isEmpty(secondaryIndicatorOfCSSDNQCSSaveDtos)){ throw new RuntimeException("参数异常!"); } - SecondaryIndicatorOfCSSDNQCS secondaryIndicatorOfCSSDNQCS = null; - if(DatabaseUtil.isPoIdValid(secondaryIndicatorOfCSSDNQCSSaveDto.getId())){ - secondaryIndicatorOfCSSDNQCS = (SecondaryIndicatorOfCSSDNQCS)objectDao.getById(SecondaryIndicatorOfCSSDNQCS.class.getSimpleName(), secondaryIndicatorOfCSSDNQCSSaveDto.getId()); - }else{ - secondaryIndicatorOfCSSDNQCS = new SecondaryIndicatorOfCSSDNQCS(); + for (SecondaryIndicatorOfCSSDNQCSSaveDto secondaryIndicatorOfCSSDNQCSSaveDto : secondaryIndicatorOfCSSDNQCSSaveDtos) { + if(secondaryIndicatorOfCSSDNQCSSaveDto == null || StringUtils.isBlank(secondaryIndicatorOfCSSDNQCSSaveDto.getName()) || !DatabaseUtil.isPoIdValid(secondaryIndicatorOfCSSDNQCSSaveDto.getQualityControlIndicatorTypeId())){ + throw new RuntimeException("参数异常!"); + } + SecondaryIndicatorOfCSSDNQCS secondaryIndicatorOfCSSDNQCS = null; + if(DatabaseUtil.isPoIdValid(secondaryIndicatorOfCSSDNQCSSaveDto.getId())){ + secondaryIndicatorOfCSSDNQCS = (SecondaryIndicatorOfCSSDNQCS)objectDao.getById(SecondaryIndicatorOfCSSDNQCS.class.getSimpleName(), secondaryIndicatorOfCSSDNQCSSaveDto.getId()); + }else{ + secondaryIndicatorOfCSSDNQCS = new SecondaryIndicatorOfCSSDNQCS(); + } + secondaryIndicatorOfCSSDNQCS.setName(secondaryIndicatorOfCSSDNQCSSaveDto.getName()); + secondaryIndicatorOfCSSDNQCS.setQualityControlIndicatorTypeId(secondaryIndicatorOfCSSDNQCSSaveDto.getQualityControlIndicatorTypeId()); + //名称不允许重名 + StringBuffer countSql = new StringBuffer(); + countSql.append("select count(1) from "); + countSql.append(SecondaryIndicatorOfCSSDNQCS.class.getSimpleName()); + countSql.append(" where name = '"); + countSql.append(secondaryIndicatorOfCSSDNQCS.getName()); + countSql.append("'"); + if(DatabaseUtil.isPoIdValid(secondaryIndicatorOfCSSDNQCS.getId())){ + countSql.append(" and id <> "); + countSql.append(secondaryIndicatorOfCSSDNQCS.getId()); + } + if(objectDao.countBySql(countSql.toString()) > 0){ + throw new SystemException(String.format("已经存在名称为【%s】的二级指标", secondaryIndicatorOfCSSDNQCS.getName())); + } + objectDao.saveOrUpdate(secondaryIndicatorOfCSSDNQCS); } - secondaryIndicatorOfCSSDNQCS.setName(secondaryIndicatorOfCSSDNQCSSaveDto.getName()); - secondaryIndicatorOfCSSDNQCS.setQualityControlIndicatorTypeId(secondaryIndicatorOfCSSDNQCSSaveDto.getQualityControlIndicatorTypeId()); - //名称不允许重名 - StringBuffer countSql = new StringBuffer(); - countSql.append("select count(1) from "); - countSql.append(SecondaryIndicatorOfCSSDNQCS.class.getSimpleName()); - countSql.append(" where name = '"); - countSql.append(secondaryIndicatorOfCSSDNQCS.getName()); - countSql.append("'"); - if(DatabaseUtil.isPoIdValid(secondaryIndicatorOfCSSDNQCS.getId())){ - countSql.append(" and id <> "); - countSql.append(secondaryIndicatorOfCSSDNQCS.getId()); - } - if(objectDao.countBySql(countSql.toString()) > 0){ - throw new SystemException(String.format("已经存在名称为【%s】的二级指标", secondaryIndicatorOfCSSDNQCS.getName())); - } - objectDao.saveOrUpdate(secondaryIndicatorOfCSSDNQCS); } /** * 检查目标值:两部分组成:1、≤”、“=”、“≥”开头;2、仅允许填入整数和0,其余信息不允许填入,此控件默认值为空白,空白代表不设置任何信息。 @@ -214,5 +223,50 @@ page.setList(list); } } - + @Override + public JSONArray getSecondaryIndicatorOfCSSDNQCSList() { + String sql = "select si.id,qt.id qtid,si.name,qt.name qtname from " + + SecondaryIndicatorOfCSSDNQCS.class.getSimpleName() + + " si join " + + QualityControlIndicatorType.class.getSimpleName() + + " qt on qt.id=si.qualityControlIndicatorTypeId "; + JSONArray arr = new JSONArray(); + JSONObject obj1 = new JSONObject(); + obj1.put("name", "器械清洗合格率"); + JSONObject obj2 = new JSONObject(); + obj2.put("name", "器械包装合格率"); + JSONObject obj3 = new JSONObject(); + obj3.put("name", "灭菌监测合格率"); + JSONObject obj4 = new JSONObject(); + obj4.put("name", "湿包发生率"); + try (ResultSet rs = objectDao.executeSql(sql)) { + while (rs.next()) { + String name = rs.getString("name"); + if("器械清洗合格率".equals(name)){ + obj1.put("id", rs.getLong("id")); + obj1.put("qualityControlIndicatorTypeId", rs.getLong("qtid")); + obj1.put("qualityControlIndicatorTypeName", rs.getString("qtname")); + }else if("器械包装合格率".equals(name)){ + obj2.put("id", rs.getLong("id")); + obj2.put("qualityControlIndicatorTypeId", rs.getLong("qtid")); + obj2.put("qualityControlIndicatorTypeName", rs.getString("qtname")); + }else if("灭菌监测合格率".equals(name)){ + obj3.put("id", rs.getLong("id")); + obj3.put("qualityControlIndicatorTypeId", rs.getLong("qtid")); + obj3.put("qualityControlIndicatorTypeName", rs.getString("qtname")); + }else if("湿包发生率".equals(name)){ + obj4.put("id", rs.getLong("id")); + obj4.put("qualityControlIndicatorTypeId", rs.getLong("qtid")); + obj4.put("qualityControlIndicatorTypeName", rs.getString("qtname")); + } + } + } catch (SQLException e) { + throw new RuntimeException("数据库查询失败", e); + } + arr.add(obj1); + arr.add(obj2); + arr.add(obj3); + arr.add(obj4); + return arr; + } }