Index: ssts-web/src/main/webapp/disinfectsystem/returnGoodsRecord/returnTousseByInvoice.js =================================================================== diff -u -r24015 -r26341 --- ssts-web/src/main/webapp/disinfectsystem/returnGoodsRecord/returnTousseByInvoice.js (.../returnTousseByInvoice.js) (revision 24015) +++ ssts-web/src/main/webapp/disinfectsystem/returnGoodsRecord/returnTousseByInvoice.js (.../returnTousseByInvoice.js) (revision 26341) @@ -934,12 +934,20 @@ if(btn=='yes') { //获取tree columns数据 - var returnTousseItemStr = getReturnTousseDetailGridData(true); + /*var returnTousseItemStr = getReturnTousseDetailGridData(true); if(!returnTousseItemStr){ showResult('退货详细信息列表不能为空'); return false; } + top.Ext.getCmp('returnTousseItemStr').setValue(returnTousseItemStr);*/ + var returnTousseItems = getReturnTousseDetailGridData2(); + if(returnTousseItems.length == 0){ + showResult('退货详细信息列表不能为空'); + return false; + } + var returnTousseItemStr = top.Ext.encode(returnTousseItems); top.Ext.getCmp('returnTousseItemStr').setValue(returnTousseItemStr); + /*top.Ext.getCmp('returnOfPeople').setDisabled(false); top.Ext.getCmp('depart').setDisabled(false);*/ // return false; @@ -1257,6 +1265,34 @@ return returnTousseItemStr; } +//返回json格式 +function getReturnTousseDetailGridData2() { + var rootNode = top.Ext.getCmp('returnGoodsColumnTree').getRootNode(); + var tousses = []; + rootNode.eachChild(function(tousseNode) { + var tousse = {}; + top.Ext.apply(tousse,tousseNode.attributes); + tousses.push(tousse); + + tousse.tousses = getChildNodesInfo(tousseNode); + }); + return tousses; +} + +function getChildNodesInfo(pNode){ + var childNodes = []; + if(pNode.isLeaf()){ + return childNodes; + }else{ + pNode.eachChild(function(tousseNode) { + var tousse = {}; + top.Ext.apply(tousse,tousseNode.attributes.tousseInstance); + childNodes.push(tousse); + }); + } + return childNodes; +} + //把器械包添加到tree中 function addScanningTousseItemToTree(tousseInstance){ var barcode = tousseInstance.barcode; Index: ssts-returngoods/src/main/java/com/forgon/disinfectsystem/returngoodsrecord/action/ReturnGoodsRecordAction.java =================================================================== diff -u -r26338 -r26341 --- ssts-returngoods/src/main/java/com/forgon/disinfectsystem/returngoodsrecord/action/ReturnGoodsRecordAction.java (.../ReturnGoodsRecordAction.java) (revision 26338) +++ ssts-returngoods/src/main/java/com/forgon/disinfectsystem/returngoodsrecord/action/ReturnGoodsRecordAction.java (.../ReturnGoodsRecordAction.java) (revision 26341) @@ -40,6 +40,7 @@ import com.forgon.disinfectsystem.entity.assestmanagement.ExpensiveDisposablegoods; import com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseDefinition; import com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseInstance; +import com.forgon.disinfectsystem.entity.invoicemanager.Invoice; import com.forgon.disinfectsystem.entity.returngoodsrecord.ReturnGoodsItem; import com.forgon.disinfectsystem.entity.returngoodsrecord.ReturnGoodsRecord; import com.forgon.disinfectsystem.returngoodsrecord.service.ReturnGoodsItemVO; @@ -774,8 +775,15 @@ } } returnGoodsRecord.setSettlementPrice(settlementPriceOfRecord); + // "发货管理"的"器械包退货" + if(null == returnGoodsRecord.getInvoicePlanId()) { + String invoiceId = StrutsParamUtils.getPraramValue("invoiceId", null); + if(StringUtils.isNotBlank(invoiceId)) { + Invoice invoice = (Invoice) objectDao.getById(Invoice.class.getSimpleName(), Long.parseLong(invoiceId)); + returnGoodsRecord.setInvoicePlanId(invoice.getInvoicePlan().getId()); + } + } - returnGoodsRecordManager.checkAndSaveForReturnTousse(returnGoodsRecord); json = JSONUtil.buildJsonObject(true, "保存成功"); JSONUtil.addProperty(json, "submit", true);