Index: ssts-web/src/main/webapp/jasperRtp/materialMissView_child.jasper =================================================================== diff -u -r18254 -r25231 Binary files differ Index: ssts-web/src/main/webapp/jasperRtp/materialMissView.jasper =================================================================== diff -u -r18254 -r25231 Binary files differ Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/action/JasperreportsAction.java =================================================================== diff -u -r25170 -r25231 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/action/JasperreportsAction.java (.../JasperreportsAction.java) (revision 25170) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/action/JasperreportsAction.java (.../JasperreportsAction.java) (revision 25231) @@ -77,6 +77,7 @@ import com.forgon.disinfectsystem.jasperreports.javabeansource.MaterialDamageItemBean; import com.forgon.disinfectsystem.jasperreports.javabeansource.MaterialDamageTotal_child; import com.forgon.disinfectsystem.jasperreports.javabeansource.MaterialErrorDamageSummaryOfDepartmentVO; +import com.forgon.disinfectsystem.jasperreports.javabeansource.MaterialMissItemBean; import com.forgon.disinfectsystem.jasperreports.javabeansource.MonthReportBean; import com.forgon.disinfectsystem.jasperreports.javabeansource.MonthReportBeanWith2Column; import com.forgon.disinfectsystem.jasperreports.javabeansource.PackingFractionDefectiveBean; @@ -104,6 +105,7 @@ import com.forgon.tools.hibernate.ObjectDao; import com.forgon.tools.json.JSONUtil; import com.forgon.tools.string.StringTools; +import com.forgon.tools.util.ForgonDateUtils; /** * @author wangyi 2012-08-15 下午12:04 @@ -949,9 +951,9 @@ return jasperReportManager.getUseRecordItemDataSource(requestParameters); }else if (reportName.equals("useRecordOperatorTotalView")) {//使用记录人员汇总报表 return getUserRecordOperatorTotalViewDataSource(); - } else if ("materialDamageItemView".equals(reportName)) { + } else if ("materialDamageItemView".equals(reportName)) {//器械报损明细统计报表 return getMaterialDamageItemViewDataSource(); - } else if ("materialDamageTotalView".equals(reportName)) { + } else if ("materialDamageTotalView".equals(reportName)) {//器械报损汇总统计报表 return getMaterialDamageTotalViewDataSource(); }else if("damageErrorMonthView".equals(reportName)){ // 丢失报损月报 String queryYear = StrutsParamUtils.getPraramValue("queryYear", ""); @@ -1123,7 +1125,7 @@ if (StringUtils.isNotBlank(startTime) && StringUtils.isNotBlank(endTime)) { return jasperReportManager.getUrgentNeedGoodsProcessingCycleData(startTime, endTime, tousseName); } - }else if ("materialMissItemView".equals(reportName)) { + }else if ("materialMissItemView".equals(reportName)) {//器械丢失明细统计报表 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); String startDay = StrutsParamUtils.getPraramValue("startDay", sdf.format(new Date())); @@ -1237,8 +1239,12 @@ } return damageBeans; } - // 获取材料报损数据源 - private List getMaterialDamageItemViewDataSource() { + + /** + * 获取材料报损数据 + * @return + */ + private List getMaterialDamageItemViewDataSourceOld() { List damageBeans = new ArrayList(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); String startDay = StrutsParamUtils.getPraramValue("startDay", @@ -1247,7 +1253,30 @@ sdf.format(new Date())); String departSearch = StrutsParamUtils.getPraramValue("departSearch",""); String damageReporter = StrutsParamUtils.getPraramValue("damageReporter",""); - String sql = " where 1=1 "; + String sql = "select * from ( " + +" select medd.type,medd.operator,medd.materialName,medd.toussename,medd.operationTime,medd.depart,medd.amount,medd.materialCost " + +" ,ur.circuitNurse,ur.doctorName,case when ur.operationTime is null then ur.enteringDate else ur.operationTime end useTime " + +" from MaterialErrorDamageDetail medd " + +" join MaterialDefinition md on md.id=medd.materialDefinitionId " + +" join recyclingItem_errorDamage re on re.errorDamageDetail_id=medd.id " + +" join RecyclingItem ri on re.recyclingItem_id=ri.id " + +" join RecyclingRecord rr on ri.recyclingRecord_id = rr.id " + +" join invoicePlan ip on ip.id=rr.recyclingapplication_id " + +" join RecyclingApplication ra on ra.id=ip.id " + +" join UseRecord ur on ur.id=ra.userecord_id " + +" where ri.amount = 1 " + + +" union all " + + +" select medd.type,medd.operator,medd.materialName,medd.toussename,medd.operationTime,medd.depart,medd.amount,medd.materialCost, " + +" null,null,null " + +" from MaterialErrorDamageDetail medd " + +" join MaterialDefinition md on md.id=medd.materialDefinitionId " + +" join recyclingItem_errorDamage re on re.errorDamageDetail_id=medd.id " + +" join RecyclingItem ri on re.recyclingItem_id=ri.id " + +" where ri.amount > 1 " + +" ) po "; + sql += " where 1=1 "; if (StringUtils.isNotBlank(departSearch)) { sql += " and po.depart='" + departSearch + "'"; } @@ -1316,7 +1345,171 @@ } return damageBeans; } + /** + * 获取材料报损数据 + * @return + */ + private List getMaterialDamageItemViewDataSource() { + List damageBeans = new ArrayList(); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + String startDay = StrutsParamUtils.getPraramValue("startDay", + sdf.format(new Date())); + String endDay = StrutsParamUtils.getPraramValue("endDay", + sdf.format(new Date())); + String departSearch = StrutsParamUtils.getPraramValue("departSearch",""); + String damageReporter = StrutsParamUtils.getPraramValue("damageReporter",""); + String sql = "select * from ( " + +" select medd.type,medd.operator,medd.materialName,medd.toussename,medd.operationTime,medd.depart,medd.amount,medd.materialCost " + +" ,ur.circuitNurse,ur.doctorName,case when ur.operationTime is null then ur.enteringDate else ur.operationTime end useTime " + +" from MaterialErrorDamageDetail medd " + +" join MaterialDefinition md on md.id=medd.materialDefinitionId " + +" join recyclingItem_errorDamage re on re.errorDamageDetail_id=medd.id " + +" join RecyclingItem ri on re.recyclingItem_id=ri.id " + +" join RecyclingRecord rr on ri.recyclingRecord_id = rr.id " + +" join invoicePlan ip on ip.id=rr.recyclingapplication_id " + +" join RecyclingApplication ra on ra.id=ip.id " + +" left join UseRecord ur on ur.id=ra.userecord_id " + +" where ri.amount = 1 and ur.id is not null " + + +" union all " + + +" select medd.type,medd.operator,medd.materialName,medd.toussename,medd.operationTime,medd.depart,medd.amount,medd.materialCost " + +" ,ur.circuitNurse,ur.doctorName,case when ur.operationTime is null then ur.enteringDate else ur.operationTime end useTime " + +" from MaterialErrorDamageDetail medd " + +" join MaterialDefinition md on md.id=medd.materialDefinitionId " + +" join recyclingItem_errorDamage re on re.errorDamageDetail_id=medd.id " + +" join RecyclingItem ri on re.recyclingItem_id=ri.id " + +" join RecyclingRecord rr on ri.recyclingRecord_id = rr.id " + +" join invoicePlan ip on ip.id=rr.recyclingapplication_id " + +" join RecyclingApplication ra on ra.id=ip.id " + +" left join UseRecord ur on ur.id=ra.userecord_id " + +" where ri.amount = 1 and ur.id is null " + + +" union all " + + +" select medd.type,medd.operator,medd.materialName,medd.toussename,medd.operationTime,medd.depart,medd.amount,medd.materialCost, " + +" null,null,null " + +" from MaterialErrorDamageDetail medd " + +" join MaterialDefinition md on md.id=medd.materialDefinitionId " + +" join recyclingItem_errorDamage re on re.errorDamageDetail_id=medd.id " + +" join RecyclingItem ri on re.recyclingItem_id=ri.id " + +" where ri.amount > 1 " + +" ) po "; + sql += " where 1=1 "; + if (StringUtils.isNotBlank(departSearch)) { + sql += " and po.depart='" + departSearch + "'"; + } + if (StringUtils.isNotBlank(damageReporter)) { + sql += " and po.operator='" + damageReporter + "'"; + } + sql += " and po.type = '"+MaterialErrorDamageDetail.TYPE_DAMAGE+"' "; + sql += " and po.operationTime between " + + dateQueryAdapter.dateAdapter(startDay + " 00:00:00") + + " and " + dateQueryAdapter.dateAdapter(endDay + " 23:59:59"); + sql += " order by po.operationTime desc"; + List items = getMaterialDamageItemData(sql); + Map map = new HashMap(); + Integer sumAmount = 0; + if (items != null) { + for (MaterialDamageItemBean item : items) { + String keyName = item.getDepart(); + if(StringUtils.isBlank(keyName)){ + continue; + } + MaterialDamageBean bean = null; + if(map.containsKey(keyName)){ + bean = map.get(keyName); + }else{ + bean = new MaterialDamageBean(); + } + bean.setDepart(item.getDepart()); + List materialDamageItems = bean.getMaterialDamageItems(); + if(CollectionUtils.isEmpty(materialDamageItems)){ + materialDamageItems = new ArrayList(); + } + + MaterialDamageItemBean itemBean = new MaterialDamageItemBean(); + itemBean.setMaterialName(item.getMaterialName()); + itemBean.setDamageAmount(item.getDamageAmount()); + itemBean.setDamageReporter(item.getDamageReporter()); + itemBean.setDamageTime(item.getDamageTime()); + sumAmount += item.getDamageAmount(); + Double cost = item.getMaterialCost(); + if(cost == null){ + cost = 0d; + } + itemBean.setMaterialCost(cost); + itemBean.setCircuitNurse(item.getCircuitNurse()); + itemBean.setDoctorName(item.getDoctorName()); + itemBean.setUseTime(item.getUseTime()); + materialDamageItems.add(itemBean); + Integer curAmount = bean.getAmount(); + Double totalPrice = bean.getTotalPrice(); + Double price = MathTools.mul(cost, item.getDamageAmount(), 2).doubleValue(); + bean.setAmount(curAmount + item.getDamageAmount()); + bean.setTotalPrice(totalPrice + price); + + bean.setMaterialDamageItems(materialDamageItems); + map.put(keyName, bean); + } + } + if(map.size() > 0){ + for(MaterialDamageBean bean : map.values()){ + // 计算科室占比 + Integer amount = bean.getAmount(); + String rate = MathTools.divideStr(amount, sumAmount, 2); + bean.setRate(rate); + damageBeans.add(bean); + } + } + return damageBeans; + } + + /** + * 器械丢失数据,按材料汇总 + * @param sql + * @return + */ + private List getMaterialDamageItemData(String sql){ + List list = new ArrayList(); + ResultSet result = objectDao.executeSql(sql); + try { + while(result.next()){ + String materialName = result.getString("materialName"); + Integer amount = result.getInt("amount"); + String depart = result.getString("depart"); + Object materialcost = result.getObject("materialCost"); + Date operationTime = result.getTimestamp("operationTime"); + String tousseName = result.getString("tousseName"); + String circuitNurse = result.getString("circuitNurse"); + String doctorName = result.getString("doctorName"); + Date useTime = result.getTimestamp("useTime"); + String operator = result.getString("operator"); + if(StringUtils.isNotBlank(materialName)){ + MaterialDamageItemBean bean = new MaterialDamageItemBean(); + bean.setMaterialName(materialName); + bean.setDamageAmount(amount); + bean.setDepart(depart); + bean.setTousseName(tousseName); + bean.setDamageReporter(operator); + bean.setMaterialCost((materialcost != null && materialcost instanceof Number) ? ((Number)materialcost).doubleValue() : 0); + bean.setDamageTime(operationTime); + bean.setCircuitNurse(circuitNurse); + bean.setDoctorName(doctorName); + bean.setUseTime(ForgonDateUtils.safelyFormatDate(useTime, ForgonDateUtils.SIMPLEDATEFORMAT_YYYYMMDDHHMMSS, null)); + list.add(bean); + } + } + } catch (SQLException e) { + e.printStackTrace(); + }finally { + DatabaseUtil.closeResultSetAndStatement(result); + } + return list; + } + + /** * 通过材料名称得到材料成本价 * * @param materialName @@ -1708,7 +1901,7 @@ String endDate = StrutsParamUtils.getPraramValue("endDate", sdf.format(new Date())); map.put("title", startDate+"至"+endDate+"科室发货物品汇总"); } - else if ("materialDamageItemView".equals(reportName)) { + else if ("materialDamageItemView".equals(reportName)) {//器械报损明细统计报表 getMaterialDamageItemViewParam(map); } else if ("materialDamageTotalView".equals(reportName)) { getMaterialDamageTotalViewParam(map); @@ -1878,7 +2071,7 @@ String endTime = StrutsParamUtils.getPraramValue("endTime", ""); map.put("title", String.format("急用物品处理周期统计报表(%s~%s)", startTime, endTime)); return map; - }else if ("materialMissItemView".equals(reportName)) { + }else if ("materialMissItemView".equals(reportName)) {//器械丢失明细统计报表 getMaterialMissItemViewParam(map); return map; }else if ("tousseTraceabilityInquiry".equals(reportName)) { Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/javabeansource/MaterialDamageItemBean.java =================================================================== diff -u -r18254 -r25231 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/javabeansource/MaterialDamageItemBean.java (.../MaterialDamageItemBean.java) (revision 18254) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/javabeansource/MaterialDamageItemBean.java (.../MaterialDamageItemBean.java) (revision 25231) @@ -10,6 +10,23 @@ private int damageAmount;// 报损数量 private String damageReporter;// 报损人 + /** + * 包名称 + */ + private String tousseName; + /** + * 巡回护士 + */ + private String circuitNurse; + /** + * 医生 + */ + private String doctorName; + /** + * 使用时间(取使用记录的手术时间,如果为空时则取录入时间) + */ + private String useTime; + public String getDamageReporter() { return damageReporter; } @@ -58,4 +75,36 @@ this.damageAmount = damageAmount; } + public String getTousseName() { + return tousseName; + } + + public void setTousseName(String tousseName) { + this.tousseName = tousseName; + } + + public String getCircuitNurse() { + return circuitNurse; + } + + public void setCircuitNurse(String circuitNurse) { + this.circuitNurse = circuitNurse; + } + + public String getDoctorName() { + return doctorName; + } + + public void setDoctorName(String doctorName) { + this.doctorName = doctorName; + } + + public String getUseTime() { + return useTime; + } + + public void setUseTime(String useTime) { + this.useTime = useTime; + } + } Index: ssts-web/src/main/webapp/jasperRtp/materialMissItemView.jasper =================================================================== diff -u -r18254 -r25231 Binary files differ Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java =================================================================== diff -u -r25160 -r25231 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 25160) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 25231) @@ -18599,15 +18599,53 @@ return list; } + @Override public List getMaterialMissItemViewDataSource(String startDay,String endDay,String departSearch,String goodsName,String statType){ String sql = ""; - sql = " select r.materialname,r.amount,r.depart, " + /*sql = " select r.materialname,r.amount,r.depart, " + " case when r.materialcost is null then 0 else r.materialcost end materialcost, " +" r.operationTime,r.tousseName " + " from MaterialErrorDamageDetail r " + " where r.materialName != '器械包标识牌' " - + " and r.errortype = '缺失' "; + + " and r.errortype = '缺失' ";*/ + sql = "select * from ( " + +" select medd.type,medd.materialName,medd.toussename,medd.operationTime,medd.depart,medd.amount,medd.materialCost " + +" ,ur.circuitNurse,ur.doctorName,case when ur.operationTime is null then ur.enteringDate else ur.operationTime end useTime " + +" from MaterialErrorDamageDetail medd " + +" join MaterialDefinition md on md.id=medd.materialDefinitionId " + +" join recyclingItem_errorDamage re on re.errorDamageDetail_id=medd.id " + +" join RecyclingItem ri on re.recyclingItem_id=ri.id " + +" join RecyclingRecord rr on ri.recyclingRecord_id = rr.id " + +" join invoicePlan ip on ip.id=rr.recyclingapplication_id " + +" join RecyclingApplication ra on ra.id=ip.id " + +" left join UseRecord ur on ur.id=ra.userecord_id " + +" where ri.amount = 1 and ur.id is not null " + + +" union all " + + +" select medd.type,medd.materialName,medd.toussename,medd.operationTime,medd.depart,medd.amount,medd.materialCost " + +" ,ur.circuitNurse,ur.doctorName,case when ur.operationTime is null then ur.enteringDate else ur.operationTime end useTime " + +" from MaterialErrorDamageDetail medd " + +" join MaterialDefinition md on md.id=medd.materialDefinitionId " + +" join recyclingItem_errorDamage re on re.errorDamageDetail_id=medd.id " + +" join RecyclingItem ri on re.recyclingItem_id=ri.id " + +" join RecyclingRecord rr on ri.recyclingRecord_id = rr.id " + +" join invoicePlan ip on ip.id=rr.recyclingapplication_id " + +" join RecyclingApplication ra on ra.id=ip.id " + +" left join UseRecord ur on ur.id=ra.userecord_id " + +" where ri.amount = 1 and ur.id is null " + + +" union all " + + +" select medd.type,medd.materialName,medd.toussename,medd.operationTime,medd.depart,medd.amount,medd.materialCost, " + +" null,null,null " + +" from MaterialErrorDamageDetail medd " + +" join MaterialDefinition md on md.id=medd.materialDefinitionId " + +" join recyclingItem_errorDamage re on re.errorDamageDetail_id=medd.id " + +" join RecyclingItem ri on re.recyclingItem_id=ri.id " + +" where ri.amount > 1 " + +" ) r where 1=1 "; if (StringUtils.isNotBlank(departSearch) && !departSearch.equals("全部")) { sql += " and r.depart='" + departSearch + "'"; @@ -18628,29 +18666,37 @@ } return null; } - // 器械丢失数据,按材料查询 + + /** + * 器械丢失数据,按材料汇总 + * @param sql + * @return + */ private List getMaterialMissItemDataSourceStatMaterial(String sql){ List list = new ArrayList(); ResultSet result = objectDao.executeSql(sql); try { while(result.next()){ - String materialName = result.getString(1); - Integer amount = result.getInt(2); - String depart = result.getString(3); - Double materialcost = result.getDouble(4); - String operationTime = result.getString(5); - String tousseName = result.getString(6); + String materialName = result.getString("materialName"); + Integer amount = result.getInt("amount"); + String depart = result.getString("depart"); + Object materialcost = result.getObject("materialCost"); + Date operationTime = result.getTimestamp("operationTime"); + String tousseName = result.getString("tousseName"); + String circuitNurse = result.getString("circuitNurse"); + String doctorName = result.getString("doctorName"); + Date useTime = result.getTimestamp("useTime"); if(StringUtils.isNotBlank(materialName)){ MaterialMissItemBean bean = new MaterialMissItemBean(); bean.setMaterialName(materialName); bean.setMissAmount(amount); bean.setDepart(depart); - bean.setMaterialcost(materialcost); - if(StringUtils.isNotBlank(operationTime) && operationTime.length() > 19){ - operationTime = operationTime.substring(0, 19); - } - bean.setOperationTime(operationTime); + bean.setMaterialcost((materialcost != null && materialcost instanceof Number) ? ((Number)materialcost).doubleValue() : 0); bean.setTousseName(tousseName); + bean.setCircuitNurse(circuitNurse); + bean.setDoctorName(doctorName); + bean.setOperationTime(ForgonDateUtils.safelyFormatDate(operationTime, ForgonDateUtils.SIMPLEDATEFORMAT_YYYYMMDDHHMMSS, null)); + bean.setUseTime(ForgonDateUtils.safelyFormatDate(useTime, ForgonDateUtils.SIMPLEDATEFORMAT_YYYYMMDDHHMMSS, null)); list.add(bean); } } @@ -18661,31 +18707,40 @@ } return list; } - // 器械丢失数据,按科室查询 + + /** + * 器械丢失数据,按科室汇总 + * @param sql + * @return + */ private List getMaterialMissItemDataSourceStatDeaprt(String sql){ List list = new ArrayList(); Map> map = new HashMap>(); - ResultSet result = objectDao.executeSql(sql); + ResultSet result = null; Integer totalAmount = 0; try { + result = objectDao.executeSql(sql); while(result.next()){ - String materialName = result.getString(1); - Integer amount = result.getInt(2); - String depart = result.getString(3); - Double materialcost = result.getDouble(4); - String operationTime = result.getString(5); - String tousseName = result.getString(6); + String materialName = result.getString("materialName"); + Integer amount = result.getInt("amount"); + String depart = result.getString("depart"); + Object materialcost = result.getObject("materialCost"); + Date operationTime = result.getTimestamp("operationTime"); + String tousseName = result.getString("tousseName"); + String circuitNurse = result.getString("circuitNurse"); + String doctorName = result.getString("doctorName"); + Date useTime = result.getTimestamp("useTime"); String keyName = depart; if(StringUtils.isNotBlank(materialName)){ MaterialMissItemBean bean = new MaterialMissItemBean(); bean.setMaterialName(materialName); bean.setMissAmount(amount); bean.setDepart(depart); - bean.setMaterialcost(materialcost); - if(StringUtils.isNotBlank(operationTime) && operationTime.length() > 19){ - operationTime = operationTime.substring(0, 19); - } - bean.setOperationTime(operationTime); + bean.setMaterialcost((materialcost != null && materialcost instanceof Number) ? ((Number)materialcost).doubleValue() : 0); + bean.setOperationTime(ForgonDateUtils.safelyFormatDate(operationTime, ForgonDateUtils.SIMPLEDATEFORMAT_YYYYMMDDHHMMSS, null)); + bean.setCircuitNurse(circuitNurse); + bean.setDoctorName(doctorName); + bean.setUseTime(ForgonDateUtils.safelyFormatDate(useTime, ForgonDateUtils.SIMPLEDATEFORMAT_YYYYMMDDHHMMSS, null)); bean.setTousseName(tousseName); if(StringUtils.isNotBlank(keyName)){ List itemList = new ArrayList(); Index: ssts-web/src/main/webapp/jasperRtp/materialMissItemView.jrxml =================================================================== diff -u -r18254 -r25231 --- ssts-web/src/main/webapp/jasperRtp/materialMissItemView.jrxml (.../materialMissItemView.jrxml) (revision 18254) +++ ssts-web/src/main/webapp/jasperRtp/materialMissItemView.jrxml (.../materialMissItemView.jrxml) (revision 25231) @@ -39,13 +39,16 @@ + + + <band height="33" splitType="Stretch"> <textField isBlankWhenNull="true"> - <reportElement uuid="54abbe41-45b8-4ff9-9a75-4e28526c8418" x="0" y="0" width="870" height="33"/> + <reportElement uuid="54abbe41-45b8-4ff9-9a75-4e28526c8418" x="0" y="0" width="960" height="33"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font fontName="Serif" size="16" isBold="true"/> </textElement> @@ -56,7 +59,7 @@ <columnHeader> <band height="33"> <staticText> - <reportElement uuid="9dd4c752-bcf3-4d06-b8c6-0e13b90707ce" style="table_TH" x="0" y="0" width="200" height="33"/> + <reportElement uuid="9dd4c752-bcf3-4d06-b8c6-0e13b90707ce" style="table_TH" x="0" y="0" width="150" height="33"/> <box> <pen lineWidth="0.25"/> <topPen lineWidth="0.25"/> @@ -70,7 +73,7 @@ <text><![CDATA[材料名称]]></text> </staticText> <staticText> - <reportElement uuid="9dd4c752-bcf3-4d06-b8c6-0e13b90707ce" style="table_TH" x="720" y="0" width="70" height="33"/> + <reportElement uuid="9dd4c752-bcf3-4d06-b8c6-0e13b90707ce" style="table_TH" x="540" y="0" width="70" height="33"/> <box> <pen lineWidth="0.25"/> <topPen lineWidth="0.25"/> @@ -84,39 +87,60 @@ <text><![CDATA[丢失数量]]></text> </staticText> <staticText> - <reportElement uuid="563337cb-4f03-4a0e-9d59-0a7ae545fd18" style="table_TH" x="400" y="0" width="120" height="33"/> + <reportElement uuid="563337cb-4f03-4a0e-9d59-0a7ae545fd18" style="table_TH" x="300" y="0" width="120" height="33"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="14" isBold="true"/> </textElement> <text><![CDATA[丢失时间]]></text> </staticText> <staticText> - <reportElement uuid="e72c089f-2ebb-4465-ab13-51fe9d46d5b7" style="table_TH" x="520" y="0" width="200" height="33"/> + <reportElement uuid="e72c089f-2ebb-4465-ab13-51fe9d46d5b7" style="table_TH" x="420" y="0" width="120" height="33"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="14" isBold="true"/> </textElement> <text><![CDATA[科室]]></text> </staticText> <staticText> - <reportElement uuid="1e60b3d2-9fe2-4921-9910-bbc4786a9c7c" style="table_TH" x="790" y="0" width="80" height="33"/> + <reportElement uuid="1e60b3d2-9fe2-4921-9910-bbc4786a9c7c" style="table_TH" x="610" y="0" width="70" height="33"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="14" isBold="true"/> </textElement> <text><![CDATA[材料价格]]></text> </staticText> <staticText> - <reportElement uuid="dadac499-264c-4db4-a5f0-b0b28a9f655b" style="table_TH" mode="Opaque" x="200" y="0" width="200" height="33"/> + <reportElement uuid="dadac499-264c-4db4-a5f0-b0b28a9f655b" style="table_TH" mode="Opaque" x="150" y="0" width="150" height="33"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="14" isBold="true"/> </textElement> <text><![CDATA[器械包名称]]></text> </staticText> + <staticText> + <reportElement uuid="1e60b3d2-9fe2-4921-9910-bbc4786a9c7c" style="table_TH" x="680" y="0" width="80" height="33"/> + <textElement textAlignment="Center" verticalAlignment="Middle"> + <font size="14" isBold="true"/> + </textElement> + <text><![CDATA[巡回护士]]></text> + </staticText> + <staticText> + <reportElement uuid="1e60b3d2-9fe2-4921-9910-bbc4786a9c7c" style="table_TH" x="760" y="0" width="80" height="33"/> + <textElement textAlignment="Center" verticalAlignment="Middle"> + <font size="14" isBold="true"/> + </textElement> + <text><![CDATA[医生]]></text> + </staticText> + <staticText> + <reportElement uuid="563337cb-4f03-4a0e-9d59-0a7ae545fd18" style="table_TH" x="840" y="0" width="120" height="33"/> + <textElement textAlignment="Center" verticalAlignment="Middle"> + <font size="14" isBold="true"/> + </textElement> + <text><![CDATA[手术时间]]></text> + </staticText> </band> </columnHeader> <detail> <band height="33" splitType="Stretch"> <textField isBlankWhenNull="true"> - <reportElement uuid="83d48cfb-a8f4-4dcb-b453-6348fb48c71b" mode="Transparent" x="0" y="0" width="200" height="33" forecolor="#000000" backcolor="#FFFFFF"/> + <reportElement uuid="83d48cfb-a8f4-4dcb-b453-6348fb48c71b" mode="Transparent" x="0" y="0" width="150" height="33" forecolor="#000000" backcolor="#FFFFFF"/> <box> <pen lineWidth="0.25" lineStyle="Solid"/> <topPen lineWidth="0.25" lineStyle="Solid"/> @@ -131,7 +155,7 @@ <textFieldExpression><![CDATA[$F{materialName}]]></textFieldExpression> </textField> <textField pattern="" isBlankWhenNull="true"> - <reportElement uuid="66cfb17f-7e23-441e-9499-15d54ef2bb47" mode="Transparent" x="720" y="0" width="70" height="33" forecolor="#000000" backcolor="#FFFFFF"/> + <reportElement uuid="66cfb17f-7e23-441e-9499-15d54ef2bb47" mode="Transparent" x="540" y="0" width="70" height="33" forecolor="#000000" backcolor="#FFFFFF"/> <box> <pen lineWidth="0.25"/> <topPen lineWidth="0.25"/> @@ -146,7 +170,7 @@ <textFieldExpression><![CDATA[$F{missAmount}]]></textFieldExpression> </textField> <textField pattern="" isBlankWhenNull="true"> - <reportElement uuid="74b3fe95-8e70-40a1-9360-8d91161f6c6e" style="table_TH" mode="Transparent" x="520" y="0" width="200" height="33" forecolor="#000000" backcolor="#FFFFFF"/> + <reportElement uuid="74b3fe95-8e70-40a1-9360-8d91161f6c6e" style="table_TH" mode="Transparent" x="420" y="0" width="120" height="33" forecolor="#000000" backcolor="#FFFFFF"/> <box> <pen lineWidth="0.25"/> <topPen lineWidth="0.25"/> @@ -161,7 +185,7 @@ <textFieldExpression><![CDATA[$F{depart}]]></textFieldExpression> </textField> <textField pattern="###0.00" isBlankWhenNull="true"> - <reportElement uuid="4345a7ab-a372-40c6-b50e-bdb54d6b8506" mode="Transparent" x="790" y="0" width="80" height="33" forecolor="#000000" backcolor="#FFFFFF"/> + <reportElement uuid="4345a7ab-a372-40c6-b50e-bdb54d6b8506" mode="Transparent" x="610" y="0" width="70" height="33" forecolor="#000000" backcolor="#FFFFFF"/> <box> <pen lineWidth="0.25"/> <topPen lineWidth="0.25"/> @@ -176,19 +200,64 @@ <textFieldExpression><![CDATA[$F{materialcost}]]></textFieldExpression> </textField> <textField isBlankWhenNull="true"> - <reportElement uuid="09f27306-c7cd-40bb-9ebb-9e51424a5d4f" style="table_TD" x="200" y="0" width="200" height="33"/> + <reportElement uuid="09f27306-c7cd-40bb-9ebb-9e51424a5d4f" style="table_TD" x="150" y="0" width="150" height="33"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="12"/> </textElement> <textFieldExpression><![CDATA[$F{tousseName}]]></textFieldExpression> </textField> <textField pattern="" isBlankWhenNull="true"> - <reportElement uuid="1814c1fc-2c10-43a7-b9a4-c97f2e5d4e2a" style="table_TD" x="400" y="0" width="120" height="33"/> + <reportElement uuid="1814c1fc-2c10-43a7-b9a4-c97f2e5d4e2a" style="table_TD" x="300" y="0" width="120" height="33"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="12"/> </textElement> <textFieldExpression><![CDATA[$F{operationTime}]]></textFieldExpression> </textField> + <textField pattern="###0.00" isBlankWhenNull="true"> + <reportElement uuid="4345a7ab-a372-40c6-b50e-bdb54d6b8506" mode="Transparent" x="680" y="0" width="80" height="33" forecolor="#000000" backcolor="#FFFFFF"/> + <box> + <pen lineWidth="0.25"/> + <topPen lineWidth="0.25"/> + <leftPen lineWidth="0.25"/> + <bottomPen lineWidth="0.25"/> + <rightPen lineWidth="0.25"/> + </box> + <textElement textAlignment="Center" verticalAlignment="Middle" rotation="None" markup="none"> + <font fontName="SansSerif" size="12" isBold="false" isItalic="false" isUnderline="false" isStrikeThrough="false" pdfEncoding="Cp1252" isPdfEmbedded="false"/> + <paragraph lineSpacing="Single"/> + </textElement> + <textFieldExpression><![CDATA[$F{circuitNurse} == null ? "" : $F{circuitNurse}]]></textFieldExpression> + </textField> + <textField pattern="###0.00" isBlankWhenNull="true"> + <reportElement uuid="4345a7ab-a372-40c6-b50e-bdb54d6b8506" mode="Transparent" x="760" y="0" width="80" height="33" forecolor="#000000" backcolor="#FFFFFF"/> + <box> + <pen lineWidth="0.25"/> + <topPen lineWidth="0.25"/> + <leftPen lineWidth="0.25"/> + <bottomPen lineWidth="0.25"/> + <rightPen lineWidth="0.25"/> + </box> + <textElement textAlignment="Center" verticalAlignment="Middle" rotation="None" markup="none"> + <font fontName="SansSerif" size="12" isBold="false" isItalic="false" isUnderline="false" isStrikeThrough="false" pdfEncoding="Cp1252" isPdfEmbedded="false"/> + <paragraph lineSpacing="Single"/> + </textElement> + <textFieldExpression><![CDATA[$F{doctorName} == null ? "" : $F{doctorName}]]></textFieldExpression> + </textField> + <textField pattern="###0.00" isBlankWhenNull="true"> + <reportElement uuid="4345a7ab-a372-40c6-b50e-bdb54d6b8506" mode="Transparent" x="840" y="0" width="120" height="33" forecolor="#000000" backcolor="#FFFFFF"/> + <box> + <pen lineWidth="0.25"/> + <topPen lineWidth="0.25"/> + <leftPen lineWidth="0.25"/> + <bottomPen lineWidth="0.25"/> + <rightPen lineWidth="0.25"/> + </box> + <textElement textAlignment="Center" verticalAlignment="Middle" rotation="None" markup="none"> + <font fontName="SansSerif" size="12" isBold="false" isItalic="false" isUnderline="false" isStrikeThrough="false" pdfEncoding="Cp1252" isPdfEmbedded="false"/> + <paragraph lineSpacing="Single"/> + </textElement> + <textFieldExpression><![CDATA[$F{useTime} == null ? "" : $F{useTime}]]></textFieldExpression> + </textField> </band> </detail> </jasperReport> Index: ssts-web/src/main/webapp/jasperRtp/materialDamageItemView.jrxml =================================================================== diff -u -r18254 -r25231 --- ssts-web/src/main/webapp/jasperRtp/materialDamageItemView.jrxml (.../materialDamageItemView.jrxml) (revision 18254) +++ ssts-web/src/main/webapp/jasperRtp/materialDamageItemView.jrxml (.../materialDamageItemView.jrxml) (revision 25231) @@ -69,74 +69,95 @@ <pageHeader> <band height="35" splitType="Stretch"> <staticText> - <reportElement uuid="e98d3ce3-2017-4388-9572-64e31f656614" style="table_TH" x="0" y="0" width="130" height="35"/> + <reportElement uuid="e98d3ce3-2017-4388-9572-64e31f656614" style="table_TH" x="0" y="0" width="80" height="35"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="14" isBold="true"/> </textElement> <text><![CDATA[报损科室]]></text> </staticText> <staticText> - <reportElement uuid="0d8b3685-e6f0-4538-ae79-42514b074f4a" style="table_TH" x="130" y="0" width="100" height="35"/> + <reportElement uuid="0d8b3685-e6f0-4538-ae79-42514b074f4a" style="table_TH" x="80" y="0" width="70" height="35"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="14" isBold="true"/> </textElement> <text><![CDATA[报损人]]></text> </staticText> <staticText> - <reportElement uuid="e893b019-fcc5-4f5a-88b7-efbbcd68b962" style="table_TH" x="230" y="0" width="190" height="35"/> + <reportElement uuid="e893b019-fcc5-4f5a-88b7-efbbcd68b962" style="table_TH" x="150" y="0" width="120" height="35"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="14" isBold="true"/> </textElement> <text><![CDATA[报损时间]]></text> </staticText> <staticText> - <reportElement uuid="ffda6fce-5225-4729-af3a-ffed93397e7a" style="table_TH" x="420" y="0" width="130" height="35"/> + <reportElement uuid="ffda6fce-5225-4729-af3a-ffed93397e7a" style="table_TH" x="270" y="0" width="150" height="35"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="14" isBold="true"/> </textElement> <text><![CDATA[材料名称]]></text> </staticText> <staticText> - <reportElement uuid="bd5e1793-a45b-4eca-8551-007a8f6b10f3" style="table_TH" x="550" y="0" width="100" height="35"/> + <reportElement uuid="bd5e1793-a45b-4eca-8551-007a8f6b10f3" style="table_TH" x="420" y="0" width="70" height="35"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="14" isBold="true"/> </textElement> <text><![CDATA[材料数量]]></text> </staticText> <staticText> - <reportElement uuid="4e73322f-3e44-491a-9028-46d7cceba096" style="table_TH" x="650" y="0" width="100" height="35"/> + <reportElement uuid="4e73322f-3e44-491a-9028-46d7cceba096" style="table_TH" x="490" y="0" width="70" height="35"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="14" isBold="true"/> </textElement> <text><![CDATA[材料价格]]></text> </staticText> <staticText> - <reportElement uuid="22393741-226d-499b-b66c-67013f71f30b" style="table_TH" x="850" y="0" width="100" height="35"/> + <reportElement uuid="22393741-226d-499b-b66c-67013f71f30b" style="table_TH" x="910" y="0" width="70" height="35"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="14" isBold="true"/> </textElement> <text><![CDATA[科室占比]]></text> </staticText> <staticText> - <reportElement uuid="22393741-226d-499b-b66c-67013f71f30b" style="table_TH" x="750" y="0" width="100" height="35"/> + <reportElement uuid="22393741-226d-499b-b66c-67013f71f30b" style="table_TH" x="840" y="0" width="70" height="35"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="14" isBold="true"/> </textElement> <text><![CDATA[总数量]]></text> </staticText> <staticText> - <reportElement uuid="22393741-226d-499b-b66c-67013f71f30b" style="table_TH" x="950" y="0" width="100" height="35"/> + <reportElement uuid="22393741-226d-499b-b66c-67013f71f30b" style="table_TH" x="980" y="0" width="70" height="35"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="14" isBold="true"/> </textElement> <text><![CDATA[总金额]]></text> </staticText> + <staticText> + <reportElement uuid="4e73322f-3e44-491a-9028-46d7cceba096" style="table_TH" x="560" y="0" width="80" height="35"/> + <textElement textAlignment="Center" verticalAlignment="Middle"> + <font size="14" isBold="true"/> + </textElement> + <text><![CDATA[巡回护士]]></text> + </staticText> + <staticText> + <reportElement uuid="4e73322f-3e44-491a-9028-46d7cceba096" style="table_TH" x="640" y="0" width="80" height="35"/> + <textElement textAlignment="Center" verticalAlignment="Middle"> + <font size="14" isBold="true"/> + </textElement> + <text><![CDATA[医生]]></text> + </staticText> + <staticText> + <reportElement uuid="e893b019-fcc5-4f5a-88b7-efbbcd68b962" style="table_TH" x="720" y="0" width="120" height="35"/> + <textElement textAlignment="Center" verticalAlignment="Middle"> + <font size="14" isBold="true"/> + </textElement> + <text><![CDATA[手术时间]]></text> + </staticText> </band> </pageHeader> <detail> <band height="30" splitType="Stretch"> <textField isStretchWithOverflow="true" isBlankWhenNull="true"> - <reportElement uuid="7c21263e-480c-47f5-97d7-31bb227cd7e7" stretchType="RelativeToBandHeight" x="0" y="0" width="130" height="30" isPrintWhenDetailOverflows="true"/> + <reportElement uuid="7c21263e-480c-47f5-97d7-31bb227cd7e7" stretchType="RelativeToBandHeight" x="0" y="0" width="80" height="30" isPrintWhenDetailOverflows="true"/> <box> <pen lineWidth="0.25"/> <topPen lineWidth="0.25"/> @@ -150,12 +171,12 @@ <textFieldExpression><![CDATA[$F{depart}]]></textFieldExpression> </textField> <subreport isUsingCache="false"> - <reportElement uuid="43c8e776-4407-4359-a99b-1546c515bbdc" x="130" y="0" width="620" height="30"/> + <reportElement uuid="43c8e776-4407-4359-a99b-1546c515bbdc" x="80" y="0" width="760" height="30"/> <dataSourceExpression><![CDATA[new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{materialDamageItems})]]></dataSourceExpression> <subreportExpression><![CDATA[$P{SUBREPORT_DIR} + "materialDamageItemView_subreport.jasper"]]></subreportExpression> </subreport> <textField pattern="###0.00" isBlankWhenNull="true"> - <reportElement uuid="7c21263e-480c-47f5-97d7-31bb227cd7e7" stretchType="RelativeToBandHeight" x="850" y="0" width="100" height="30"/> + <reportElement uuid="7c21263e-480c-47f5-97d7-31bb227cd7e7" stretchType="RelativeToBandHeight" x="910" y="0" width="70" height="30"/> <box> <pen lineWidth="0.25"/> <topPen lineWidth="0.25"/> @@ -169,7 +190,7 @@ <textFieldExpression><![CDATA[$F{rate}]]></textFieldExpression> </textField> <textField pattern="###0" isBlankWhenNull="true"> - <reportElement uuid="7c21263e-480c-47f5-97d7-31bb227cd7e7" stretchType="RelativeToBandHeight" x="750" y="0" width="100" height="30"/> + <reportElement uuid="7c21263e-480c-47f5-97d7-31bb227cd7e7" stretchType="RelativeToBandHeight" x="840" y="0" width="70" height="30"/> <box> <pen lineWidth="0.25"/> <topPen lineWidth="0.25"/> @@ -183,7 +204,7 @@ <textFieldExpression><![CDATA[$F{amount}]]></textFieldExpression> </textField> <textField pattern="###0.00" isBlankWhenNull="true"> - <reportElement uuid="7c21263e-480c-47f5-97d7-31bb227cd7e7" stretchType="RelativeToBandHeight" x="950" y="0" width="100" height="30"/> + <reportElement uuid="7c21263e-480c-47f5-97d7-31bb227cd7e7" stretchType="RelativeToBandHeight" x="980" y="0" width="70" height="30"/> <box> <pen lineWidth="0.25"/> <topPen lineWidth="0.25"/> @@ -201,28 +222,28 @@ <summary> <band height="31"> <staticText> - <reportElement uuid="2de98dcc-e086-470a-88c3-efa3af5874e3" style="table_CH" x="0" y="0" width="750" height="30"/> + <reportElement uuid="2de98dcc-e086-470a-88c3-efa3af5874e3" style="table_CH" x="0" y="0" width="840" height="30"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="14" isBold="true"/> </textElement> <text><![CDATA[总计:]]></text> </staticText> <textField pattern="#,##0"> - <reportElement uuid="15423c19-55f6-47d8-b786-4e561eddd536" style="table_CH" x="750" y="0" width="100" height="30"/> + <reportElement uuid="15423c19-55f6-47d8-b786-4e561eddd536" style="table_CH" x="840" y="0" width="70" height="30"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="14" isBold="true"/> </textElement> <textFieldExpression><![CDATA[$V{sumAmount} == null?0:$V{sumAmount}]]></textFieldExpression> </textField> <textField pattern="#,##0.00"> - <reportElement uuid="15423c19-55f6-47d8-b786-4e561eddd536" style="table_CH" x="950" y="0" width="100" height="30"/> + <reportElement uuid="15423c19-55f6-47d8-b786-4e561eddd536" style="table_CH" x="980" y="0" width="70" height="30"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="14" isBold="true"/> </textElement> <textFieldExpression><![CDATA[$V{total}]]></textFieldExpression> </textField> <textField pattern="#,##0.00"> - <reportElement uuid="15423c19-55f6-47d8-b786-4e561eddd536" style="table_CH" x="850" y="0" width="100" height="30"/> + <reportElement uuid="15423c19-55f6-47d8-b786-4e561eddd536" style="table_CH" x="910" y="0" width="70" height="30"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="14" isBold="true"/> </textElement> Index: ssts-web/src/main/webapp/jasperRtp/materialMissView_child.jrxml =================================================================== diff -u -r18254 -r25231 --- ssts-web/src/main/webapp/jasperRtp/materialMissView_child.jrxml (.../materialMissView_child.jrxml) (revision 18254) +++ ssts-web/src/main/webapp/jasperRtp/materialMissView_child.jrxml (.../materialMissView_child.jrxml) (revision 25231) @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8"?> -<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="DepartmentMonthDetail_child" language="groovy" pageWidth="800" pageHeight="700" columnWidth="800" leftMargin="0" rightMargin="0" topMargin="0" bottomMargin="0" uuid="518f2007-e7af-4a46-a103-ff54cdf6d701"> +<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="DepartmentMonthDetail_child" language="groovy" pageWidth="860" pageHeight="700" columnWidth="860" leftMargin="0" rightMargin="0" topMargin="0" bottomMargin="0" uuid="518f2007-e7af-4a46-a103-ff54cdf6d701"> <property name="ireport.zoom" value="1.0"/> <property name="ireport.x" value="0"/> <property name="ireport.y" value="0"/> @@ -42,6 +42,9 @@ <field name="tousseName" class="java.lang.String"> <fieldDescription><![CDATA[tousseName]]></fieldDescription> </field> + <field name="circuitNurse" class="java.lang.String"/> + <field name="doctorName" class="java.lang.String"/> + <field name="useTime" class="java.lang.String"/> <variable name="totalAmount" class="java.lang.Double" calculation="Sum"> <variableExpression><![CDATA[$F{missAmount}]]></variableExpression> </variable> @@ -51,40 +54,61 @@ <detail> <band height="35" splitType="Stretch"> <textField> - <reportElement uuid="5675a27f-9780-42e0-a6bf-ad5a931bb845" style="table_TD" stretchType="RelativeToBandHeight" x="400" y="0" width="200" height="35"/> + <reportElement uuid="5675a27f-9780-42e0-a6bf-ad5a931bb845" style="table_TD" stretchType="RelativeToBandHeight" x="320" y="0" width="120" height="35"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="12"/> </textElement> <textFieldExpression><![CDATA[$F{operationTime}]]></textFieldExpression> </textField> <textField> - <reportElement uuid="0bf156d3-7fc1-45bc-9252-2f3a44b09781" style="table_TD" stretchType="RelativeToBandHeight" x="600" y="0" width="100" height="35"/> + <reportElement uuid="0bf156d3-7fc1-45bc-9252-2f3a44b09781" style="table_TD" stretchType="RelativeToBandHeight" x="440" y="0" width="70" height="35"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="12"/> </textElement> <textFieldExpression><![CDATA[$F{missAmount}]]></textFieldExpression> </textField> <textField> - <reportElement uuid="fe4771fa-fe7d-4c01-bb10-28fb7bb850d1" style="table_TD" x="700" y="0" width="100" height="35"/> + <reportElement uuid="fe4771fa-fe7d-4c01-bb10-28fb7bb850d1" style="table_TD" x="510" y="0" width="70" height="35"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="12"/> </textElement> <textFieldExpression><![CDATA[$F{materialcost}]]></textFieldExpression> </textField> <textField> - <reportElement uuid="5675a27f-9780-42e0-a6bf-ad5a931bb845" style="table_TD" stretchType="RelativeToBandHeight" x="200" y="0" width="200" height="35"/> + <reportElement uuid="5675a27f-9780-42e0-a6bf-ad5a931bb845" style="table_TD" stretchType="RelativeToBandHeight" x="170" y="0" width="150" height="35"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="12"/> </textElement> <textFieldExpression><![CDATA[$F{tousseName}]]></textFieldExpression> </textField> <textField isBlankWhenNull="true"> - <reportElement uuid="9a3bc7e7-7a3e-475e-809a-69b429a6542e" style="table_TD" x="0" y="0" width="200" height="35"/> + <reportElement uuid="9a3bc7e7-7a3e-475e-809a-69b429a6542e" style="table_TD" x="0" y="0" width="170" height="35"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="12"/> </textElement> <textFieldExpression><![CDATA[$F{materialName}]]></textFieldExpression> </textField> + <textField> + <reportElement uuid="fe4771fa-fe7d-4c01-bb10-28fb7bb850d1" style="table_TD" x="580" y="0" width="80" height="35"/> + <textElement textAlignment="Center" verticalAlignment="Middle"> + <font size="12"/> + </textElement> + <textFieldExpression><![CDATA[$F{circuitNurse} == null ? "" : $F{circuitNurse}]]></textFieldExpression> + </textField> + <textField> + <reportElement uuid="fe4771fa-fe7d-4c01-bb10-28fb7bb850d1" style="table_TD" x="660" y="0" width="80" height="35"/> + <textElement textAlignment="Center" verticalAlignment="Middle"> + <font size="12"/> + </textElement> + <textFieldExpression><![CDATA[$F{doctorName} == null ? "" : $F{doctorName}]]></textFieldExpression> + </textField> + <textField> + <reportElement uuid="fe4771fa-fe7d-4c01-bb10-28fb7bb850d1" style="table_TD" x="740" y="0" width="120" height="35"/> + <textElement textAlignment="Center" verticalAlignment="Middle"> + <font size="12"/> + </textElement> + <textFieldExpression><![CDATA[$F{useTime} == null ? "" : $F{useTime}]]></textFieldExpression> + </textField> </band> </detail> </jasperReport> Index: ssts-web/src/main/webapp/jasperRtp/materialDamageItemView.jasper =================================================================== diff -u -r18254 -r25231 Binary files differ Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/javabeansource/MaterialMissItemBean.java =================================================================== diff -u -r18254 -r25231 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/javabeansource/MaterialMissItemBean.java (.../MaterialMissItemBean.java) (revision 18254) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/javabeansource/MaterialMissItemBean.java (.../MaterialMissItemBean.java) (revision 25231) @@ -25,6 +25,18 @@ * 包名称 */ private String tousseName; + /** + * 巡回护士 + */ + private String circuitNurse; + /** + * 医生 + */ + private String doctorName; + /** + * 使用时间(取使用记录的手术时间,如果为空时则取录入时间) + */ + private String useTime; public int getMissAmount() { return missAmount; @@ -74,4 +86,28 @@ this.materialcost = materialcost; } + public String getCircuitNurse() { + return circuitNurse; + } + + public void setCircuitNurse(String circuitNurse) { + this.circuitNurse = circuitNurse; + } + + public String getDoctorName() { + return doctorName; + } + + public void setDoctorName(String doctorName) { + this.doctorName = doctorName; + } + + public String getUseTime() { + return useTime; + } + + public void setUseTime(String useTime) { + this.useTime = useTime; + } + } Index: ssts-web/src/main/webapp/jasperRtp/materialDamageItemView_subreport.jrxml =================================================================== diff -u -r18254 -r25231 --- ssts-web/src/main/webapp/jasperRtp/materialDamageItemView_subreport.jrxml (.../materialDamageItemView_subreport.jrxml) (revision 18254) +++ ssts-web/src/main/webapp/jasperRtp/materialDamageItemView_subreport.jrxml (.../materialDamageItemView_subreport.jrxml) (revision 25231) @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8"?> -<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="materialDamageItemView_subreport" language="groovy" pageWidth="620" pageHeight="30" columnWidth="620" leftMargin="0" rightMargin="0" topMargin="0" bottomMargin="0" uuid="6bd82db6-8be6-466d-8338-726e6c961e5a"> +<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="materialDamageItemView_subreport" language="groovy" pageWidth="760" pageHeight="30" columnWidth="760" leftMargin="0" rightMargin="0" topMargin="0" bottomMargin="0" uuid="6bd82db6-8be6-466d-8338-726e6c961e5a"> <property name="ireport.zoom" value="1.0"/> <property name="ireport.x" value="0"/> <property name="ireport.y" value="0"/> @@ -21,13 +21,16 @@ <field name="damageTime" class="java.util.Date"> <fieldDescription><![CDATA[damageTime]]></fieldDescription> </field> + <field name="circuitNurse" class="java.lang.String"/> + <field name="doctorName" class="java.lang.String"/> + <field name="useTime" class="java.lang.String"/> <background> <band splitType="Stretch"/> </background> <detail> <band height="30" splitType="Stretch"> <textField isBlankWhenNull="true"> - <reportElement uuid="3f38c25c-f5e3-404f-b3e2-21cc8eedcb1c" x="290" y="0" width="130" height="30"/> + <reportElement uuid="3f38c25c-f5e3-404f-b3e2-21cc8eedcb1c" x="190" y="0" width="150" height="30"/> <box> <pen lineWidth="0.25"/> <topPen lineWidth="0.25"/> @@ -41,7 +44,7 @@ <textFieldExpression><![CDATA[$F{materialName}]]></textFieldExpression> </textField> <textField isBlankWhenNull="true"> - <reportElement uuid="3f38c25c-f5e3-404f-b3e2-21cc8eedcb1c" x="420" y="0" width="100" height="30"/> + <reportElement uuid="3f38c25c-f5e3-404f-b3e2-21cc8eedcb1c" x="340" y="0" width="70" height="30"/> <box> <pen lineWidth="0.25"/> <topPen lineWidth="0.25"/> @@ -55,7 +58,7 @@ <textFieldExpression><![CDATA[$F{damageAmount}]]></textFieldExpression> </textField> <textField pattern="###0.00" isBlankWhenNull="true"> - <reportElement uuid="3f38c25c-f5e3-404f-b3e2-21cc8eedcb1c" x="520" y="0" width="100" height="30"/> + <reportElement uuid="3f38c25c-f5e3-404f-b3e2-21cc8eedcb1c" x="410" y="0" width="70" height="30"/> <box> <pen lineWidth="0.25"/> <topPen lineWidth="0.25"/> @@ -69,7 +72,7 @@ <textFieldExpression><![CDATA[$F{materialCost} == null ? 0.00 : $F{materialCost}]]></textFieldExpression> </textField> <textField isBlankWhenNull="true"> - <reportElement uuid="3f38c25c-f5e3-404f-b3e2-21cc8eedcb1c" x="0" y="0" width="100" height="30"/> + <reportElement uuid="3f38c25c-f5e3-404f-b3e2-21cc8eedcb1c" x="0" y="0" width="70" height="30"/> <box> <pen lineWidth="0.25"/> <topPen lineWidth="0.25"/> @@ -83,7 +86,7 @@ <textFieldExpression><![CDATA[$F{damageReporter}]]></textFieldExpression> </textField> <textField pattern="yyyy-MM-dd HH:mm:ss" isBlankWhenNull="true"> - <reportElement uuid="3f38c25c-f5e3-404f-b3e2-21cc8eedcb1c" x="100" y="0" width="190" height="30"/> + <reportElement uuid="3f38c25c-f5e3-404f-b3e2-21cc8eedcb1c" x="70" y="0" width="120" height="30"/> <box> <pen lineWidth="0.25"/> <topPen lineWidth="0.25"/> @@ -96,6 +99,48 @@ </textElement> <textFieldExpression><![CDATA[$F{damageTime}]]></textFieldExpression> </textField> + <textField pattern="###0.00" isBlankWhenNull="true"> + <reportElement uuid="3f38c25c-f5e3-404f-b3e2-21cc8eedcb1c" x="480" y="0" width="80" height="30"/> + <box> + <pen lineWidth="0.25"/> + <topPen lineWidth="0.25"/> + <leftPen lineWidth="0.25"/> + <bottomPen lineWidth="0.25"/> + <rightPen lineWidth="0.25"/> + </box> + <textElement textAlignment="Center" verticalAlignment="Middle"> + <font size="12"/> + </textElement> + <textFieldExpression><![CDATA[$F{circuitNurse} == null ? "" : $F{circuitNurse}]]></textFieldExpression> + </textField> + <textField pattern="###0.00" isBlankWhenNull="true"> + <reportElement uuid="3f38c25c-f5e3-404f-b3e2-21cc8eedcb1c" x="560" y="0" width="80" height="30"/> + <box> + <pen lineWidth="0.25"/> + <topPen lineWidth="0.25"/> + <leftPen lineWidth="0.25"/> + <bottomPen lineWidth="0.25"/> + <rightPen lineWidth="0.25"/> + </box> + <textElement textAlignment="Center" verticalAlignment="Middle"> + <font size="12"/> + </textElement> + <textFieldExpression><![CDATA[$F{doctorName} == null ? "" : $F{doctorName}]]></textFieldExpression> + </textField> + <textField pattern="###0.00" isBlankWhenNull="true"> + <reportElement uuid="3f38c25c-f5e3-404f-b3e2-21cc8eedcb1c" x="640" y="0" width="120" height="30"/> + <box> + <pen lineWidth="0.25"/> + <topPen lineWidth="0.25"/> + <leftPen lineWidth="0.25"/> + <bottomPen lineWidth="0.25"/> + <rightPen lineWidth="0.25"/> + </box> + <textElement textAlignment="Center" verticalAlignment="Middle"> + <font size="12"/> + </textElement> + <textFieldExpression><![CDATA[$F{useTime} == null ? "" : $F{useTime}]]></textFieldExpression> + </textField> </band> </detail> </jasperReport> Index: ssts-web/src/main/webapp/jasperRtp/materialMissView.jrxml =================================================================== diff -u -r18254 -r25231 --- ssts-web/src/main/webapp/jasperRtp/materialMissView.jrxml (.../materialMissView.jrxml) (revision 18254) +++ ssts-web/src/main/webapp/jasperRtp/materialMissView.jrxml (.../materialMissView.jrxml) (revision 25231) @@ -59,81 +59,102 @@ <textFieldExpression><![CDATA[$P{title}]]></textFieldExpression> </textField> <staticText> - <reportElement uuid="71b10d1c-6970-4e43-85ca-f94c3e1ce2a1" style="table_TH" x="0" y="35" width="100" height="34" backcolor="#FFFFFF"/> + <reportElement uuid="71b10d1c-6970-4e43-85ca-f94c3e1ce2a1" style="table_TH" x="0" y="35" width="99" height="34" backcolor="#FFFFFF"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="12" isBold="true"/> </textElement> <text><![CDATA[科室]]></text> </staticText> <staticText> - <reportElement uuid="81cca96c-e1ce-4713-86de-05fc14c4899d" style="table_TH" x="500" y="35" width="200" height="34" backcolor="#FFFFFF"/> + <reportElement uuid="81cca96c-e1ce-4713-86de-05fc14c4899d" style="table_TH" x="419" y="35" width="120" height="34" backcolor="#FFFFFF"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="12" isBold="true"/> </textElement> <text><![CDATA[丢失时间]]></text> </staticText> <staticText> - <reportElement uuid="3ddf7178-e704-4c96-bc9f-106e3b6d50cc" style="table_TH" x="700" y="35" width="100" height="34" backcolor="#FFFFFF"/> + <reportElement uuid="3ddf7178-e704-4c96-bc9f-106e3b6d50cc" style="table_TH" x="539" y="35" width="70" height="34" backcolor="#FFFFFF"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="12" isBold="true"/> </textElement> <text><![CDATA[丢失数量]]></text> </staticText> <staticText> - <reportElement uuid="5957a0a9-0a13-4bcd-9199-5c6ce6b6014e" style="table_TH" x="900" y="35" width="100" height="34" backcolor="#FFFFFF"/> + <reportElement uuid="5957a0a9-0a13-4bcd-9199-5c6ce6b6014e" style="table_TH" x="959" y="35" width="70" height="34" backcolor="#FFFFFF"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="12" isBold="true"/> </textElement> <text><![CDATA[数量]]></text> </staticText> <staticText> - <reportElement uuid="08e8c4f2-7992-4b1b-bc4b-c98923482960" style="table_TH" x="800" y="35" width="100" height="34" backcolor="#FFFFFF"/> + <reportElement uuid="08e8c4f2-7992-4b1b-bc4b-c98923482960" style="table_TH" x="609" y="35" width="70" height="34" backcolor="#FFFFFF"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="12" isBold="true"/> </textElement> <text><![CDATA[材料价格]]></text> </staticText> <staticText> - <reportElement uuid="81cca96c-e1ce-4713-86de-05fc14c4899d" style="table_TH" x="100" y="35" width="200" height="34" backcolor="#FFFFFF"/> + <reportElement uuid="81cca96c-e1ce-4713-86de-05fc14c4899d" style="table_TH" x="99" y="35" width="170" height="34" backcolor="#FFFFFF"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="12" isBold="true"/> </textElement> <text><![CDATA[材料名称]]></text> </staticText> <staticText> - <reportElement uuid="6ed55d4f-d8a4-45f2-8a34-c0ae3e89f9aa" style="table_TH" x="300" y="35" width="200" height="34" backcolor="#FFFFFF"/> + <reportElement uuid="6ed55d4f-d8a4-45f2-8a34-c0ae3e89f9aa" style="table_TH" x="269" y="35" width="150" height="34" backcolor="#FFFFFF"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="12" isBold="true"/> </textElement> <text><![CDATA[器械包名称]]></text> </staticText> <staticText> - <reportElement uuid="5957a0a9-0a13-4bcd-9199-5c6ce6b6014e" style="table_TH" x="1000" y="35" width="99" height="34" backcolor="#FFFFFF"/> + <reportElement uuid="5957a0a9-0a13-4bcd-9199-5c6ce6b6014e" style="table_TH" x="1029" y="35" width="70" height="34" backcolor="#FFFFFF"/> <textElement textAlignment="Center" verticalAlignment="Middle"> <font size="12" isBold="true"/> </textElement> <text><![CDATA[科室占比]]></text> </staticText> + <staticText> + <reportElement uuid="08e8c4f2-7992-4b1b-bc4b-c98923482960" style="table_TH" x="679" y="35" width="80" height="34" backcolor="#FFFFFF"/> + <textElement textAlignment="Center" verticalAlignment="Middle"> + <font size="12" isBold="true"/> + </textElement> + <text><![CDATA[巡回护士]]></text> + </staticText> + <staticText> + <reportElement uuid="08e8c4f2-7992-4b1b-bc4b-c98923482960" style="table_TH" x="759" y="35" width="80" height="34" backcolor="#FFFFFF"/> + <textElement textAlignment="Center" verticalAlignment="Middle"> + <font size="12" isBold="true"/> + </textElement> + <text><![CDATA[医生]]></text> + </staticText> + <staticText> + <reportElement uuid="08e8c4f2-7992-4b1b-bc4b-c98923482960" style="table_TH" x="839" y="35" width="120" height="34" backcolor="#FFFFFF"/> + <textElement textAlignment="Center" verticalAlignment="Middle"> + <font size="12" isBold="true"/> + </textElement> + <text><![CDATA[手术时间]]></text> + </staticText> </band> - + - + - + @@ -142,7 +163,7 @@ - + @@ -156,22 +177,22 @@ - + - + - + - + Index: ssts-web/src/main/webapp/jasperRtp/materialDamageItemView_subreport.jasper =================================================================== diff -u -r18254 -r25231 Binary files differ