Index: ssts-web/src/main/webapp/disinfectsystem/returnGoodsRecord/returnGoodsRecordView.js =================================================================== diff -u -r12862 -r14488 --- ssts-web/src/main/webapp/disinfectsystem/returnGoodsRecord/returnGoodsRecordView.js (.../returnGoodsRecordView.js) (revision 12862) +++ ssts-web/src/main/webapp/disinfectsystem/returnGoodsRecord/returnGoodsRecordView.js (.../returnGoodsRecordView.js) (revision 14488) @@ -102,6 +102,7 @@ {header : "退货科室",width : 120,dataIndex : 'depart'}, {header : "退货状态",width : 120,dataIndex : 'signStatus'}, {header : "类型",width : 80,dataIndex : 'type'}, + {header : "金额",width : 80,dataIndex : 'settlementPrice'}, //每一张退货单的金额(陈家儒改) {header : "查看发货单",width : 70,renderer: function(v,p,record){ var invoiceStatus = record.data.invoiceStatus; if(invoiceStatus == ''){ @@ -126,6 +127,7 @@ {name : 'invoiceStatus'}, {name : 'recyclingApplicationId'}, {name : 'type'}, + {name : 'settlementPrice'}, {name : 'remark'} ]; @@ -142,36 +144,7 @@ }); var sign = true; -// var tbar = [{ -// text : '一次性物品退货', -// iconCls : 'btn_ext_application_add', -// hidden : SSTS_ReturnGoodsRecord_Create, -// handler : function() { -// addAndEditReturnGoodsRecord(0, true); -// } -// }, '-',{ -// text : '器械包退货', -// iconCls : 'btn_ext_application_add', -// hidden : SSTS_ReturnGoodsRecord_Create, -// handler : function() { -// addAndEditReturnTousseRecord(0, true); -// } -// }, '-', { -// text : '修改', -// iconCls : 'btn_ext_application_edit', -// id : 'editTbar', -// hidden : SSTS_ReturnGoodsRecord_Update, -// handler : function() { -// loadFormData(grid); -// } -// }, '-', { -// text : '删除', -// iconCls : 'btn_ext_application_del', -// hidden : SSTS_ReturnGoodsRecord_Delete, -// handler : function() { -// deleteReturnGoodsRecord(grid); -// } -// }]; + var tbar = [{ text : '一次性物品退货', iconCls : 'btn_ext_application_add', @@ -221,7 +194,7 @@ var BorrowName = ''; var BorrowAmount = ''; var tableContent = record['htmlContent'];//用属性绶存明细结果,第二次光标移入时,从缓存查询得出 - if(!tableContent){ + if(!tableContent && record.data['id']){ //防止鼠标悬停到最后一行(汇总的那一行)id就会为空(陈家儒改) var content = ""; var diposableGoodsData = null;//是否为一次性物品 DWREngine.setAsync(false); Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/returngoodsrecord/ReturnGoodsRecord.java =================================================================== diff -u -r12915 -r14488 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/returngoodsrecord/ReturnGoodsRecord.java (.../ReturnGoodsRecord.java) (revision 12915) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/returngoodsrecord/ReturnGoodsRecord.java (.../ReturnGoodsRecord.java) (revision 14488) @@ -85,6 +85,11 @@ private Long inventoryWriteBackEntryId; + /** + * 退货单的总价(陈家儒改) + */ + private String settlementPrice; + @Id @GeneratedValue(strategy = GenerationType.AUTO) public Long getId() { @@ -271,5 +276,14 @@ public void setHandleDepartCode(String handleDepartCode) { this.handleDepartCode = handleDepartCode; } + + public String getSettlementPrice() { + return settlementPrice; + } + + public void setSettlementPrice(String settlementPrice) { + this.settlementPrice = settlementPrice; + } + } Index: ssts-web/src/main/java/com/forgon/disinfectsystem/component/grid/GridManagerImpl.java =================================================================== diff -u -r13967 -r14488 --- ssts-web/src/main/java/com/forgon/disinfectsystem/component/grid/GridManagerImpl.java (.../GridManagerImpl.java) (revision 13967) +++ ssts-web/src/main/java/com/forgon/disinfectsystem/component/grid/GridManagerImpl.java (.../GridManagerImpl.java) (revision 14488) @@ -33,6 +33,8 @@ import com.forgon.disinfectsystem.entity.basedatamanager.supplyroomconfig.SupplyRoomConfig; import com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseDefinition; import com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseInstance; +import com.forgon.disinfectsystem.entity.returngoodsrecord.ReturnGoodsItem; +import com.forgon.disinfectsystem.entity.returngoodsrecord.ReturnGoodsRecord; import com.forgon.tools.MathTools; import com.forgon.tools.date.DateTools; import com.forgon.tools.db.DatabaseUtil; @@ -271,6 +273,35 @@ } } + //如果为退货单,把每条退货单的金额汇总出来(陈家儒改) + if (ReturnGoodsRecord.class.getSimpleName().equals(poClass)) { + for (Object object : list) { + ReturnGoodsRecord returnGoodsRecord = (ReturnGoodsRecord) object; + List returnGoodsItemList = returnGoodsRecord.getReturnGoodsItems(); + BigDecimal settlementPrice = new BigDecimal("0.00"); + for (ReturnGoodsItem returnGoodsItem : returnGoodsItemList) { + settlementPrice = settlementPrice.add(returnGoodsItem.getSettlementPrice()).setScale(2,BigDecimal.ROUND_HALF_UP); + } + returnGoodsRecord.setSettlementPrice(settlementPrice.toString()); + } + if ((start + pageSize) >= totalResults) { //而且前台请求的是grid的最后一页(把退货单的总价汇总出来) + BigDecimal settlementPrice = new BigDecimal("0.00"); + List allList = objectDao.findBySql(poClass, sql, orderStr); + for (ReturnGoodsRecord returnGoodsRecord : allList) { + List returnGoodsItemList = returnGoodsRecord.getReturnGoodsItems(); + for (ReturnGoodsItem returnGoodsItem : returnGoodsItemList) { + settlementPrice = settlementPrice.add(returnGoodsItem.getSettlementPrice()); + } + } + ReturnGoodsRecord totalPrice = new ReturnGoodsRecord(); + totalPrice.setOperator("总价"); + totalPrice.setSignStatus(""); + totalPrice.setSettlementPrice(settlementPrice.setScale(2,BigDecimal.ROUND_HALF_UP).toString()); + list.add(totalPrice); + } + + } + Map map = new HashMap(); map.put("totalResults", totalResults); map.put("list", list);