Index: ssts-web/src/main/webapp/disinfectsystem/invoice/auxiliaryInvoiceForm.js =================================================================== diff -u -r21956 -r22203 --- ssts-web/src/main/webapp/disinfectsystem/invoice/auxiliaryInvoiceForm.js (.../auxiliaryInvoiceForm.js) (revision 21956) +++ ssts-web/src/main/webapp/disinfectsystem/invoice/auxiliaryInvoiceForm.js (.../auxiliaryInvoiceForm.js) (revision 22203) @@ -185,6 +185,12 @@ recyclingapplicationStore.baseParams['tousseType'] = encodeURI(selectedTousseType); recyclingapplicationStore.baseParams['sterileStartTime'] = sterileStartTime; recyclingapplicationStore.baseParams['sterileEndTime'] = sterileEndTime; + + var tousseTypes = '普通器械包,外来器械包'; + if(sstsConfig.auxiliaryInvoiceTousseTypes){ + tousseTypes = sstsConfig.auxiliaryInvoiceTousseTypes; + } + recyclingapplicationStore.baseParams['tousseTypes'] = tousseTypes; }); recyclingapplicationStore.load(); @@ -230,6 +236,7 @@ }*/ getTousseGridData(); + form.form.submit( { //url : WWWROOT + '/disinfectSystem/invoiceAction!saveDepartInvoice.do', url : WWWROOT + '/disinfectSystem/invoiceAction!saveInvoiceByDepartOrInvoicePlanId.do', Index: ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/service/InvoiceManagerImpl.java =================================================================== diff -u -r22045 -r22203 --- ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/service/InvoiceManagerImpl.java (.../InvoiceManagerImpl.java) (revision 22045) +++ ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/service/InvoiceManagerImpl.java (.../InvoiceManagerImpl.java) (revision 22203) @@ -140,7 +140,6 @@ import com.forgon.tools.GB2WB; import com.forgon.tools.MathTools; import com.forgon.tools.SqlBuilder; -import com.forgon.tools.StrutsParamUtils; import com.forgon.tools.date.DateTools; import com.forgon.tools.db.DatabaseUtil; import com.forgon.tools.db.InitDbConnection; @@ -8901,8 +8900,8 @@ @Override public JSONArray getTousseInstancesForAuxiliaryInvoice(JSONObject params) { - String applyDate = StrutsParamUtils.getPraramValue("applyDate", ""); - String tousseType = StrutsParamUtils.getPraramValue("tousseType", ""); + String applyDate = JSONUtil.optString(params, "applyDate", null); + String tousseTypes = JSONUtil.optString(params, "tousseTypes", null); boolean auxiliaryInvoice_limitInvoiceDepartByTousseDefinition = CssdUtils.getSystemSetConfigByNameBool("auxiliaryInvoice_limitInvoiceDepartByTousseDefinition"); JSONArray jsonArray = new JSONArray(); SupplyRoomConfig config = supplyRoomConfigManager.getSystemParamsObj(); @@ -8920,12 +8919,15 @@ Map tousseDefinitionInfoMap = new HashMap(); List invoicePlanList = invoicePlanManager .getInvoicePlanListByOrgUnitCodingsAndTousseType( - Arrays.asList(departCode), applyDate, "普通器械包,外来器械包"); + Arrays.asList(departCode), applyDate, tousseTypes); if (invoicePlanList != null) { for (InvoicePlan invoicePlan : invoicePlanList) { if(invoicePlan instanceof ForeignTousseApplication){ ForeignTousseApplication foreignTousseApplication = (ForeignTousseApplication)invoicePlan; invoicePlanIdSet.add(foreignTousseApplication.getId()); + }else if(invoicePlan instanceof ForeignProxyDisinfection){ + ForeignProxyDisinfection foreignProxyDisinfection = (ForeignProxyDisinfection)invoicePlan; + invoicePlanIdSet.add(foreignProxyDisinfection.getId()); } List tousseItemList = invoicePlan .getApplicationItems(); @@ -8951,16 +8953,16 @@ int notSendAmount = appAmount - sendOutAmount; if (notSendAmount <= 0) continue; - if (!tousseItem.isInsideTousse() - && !tousseItem.isForeignTousse()) { + if (!tousseItem.isInsideTousse() && !tousseItem.isDressing() + && !tousseItem.isForeignTousse() && !tousseItem.isForeignProxyTousse()) { continue; } Long tousseDefinitionId = tousseItem .getTousseDefinitionId(); if (!DatabaseUtil.isPoIdValid(tousseDefinitionId)) { continue; } - if(tousseItem.isInsideTousse()){ + if(tousseItem.isInsideTousse() || tousseItem.isDressing()){ JSONObject jsonObj = tousseDefinitionInfoMap.get(tousseDefinitionId.toString()); if(jsonObj == null){ jsonObj = new JSONObject(); @@ -8969,7 +8971,9 @@ int totalNotSendAmount = JSONUtil.optInt(jsonObj, "notSendAmount", 0); jsonObj.put("notSendAmount", totalNotSendAmount + notSendAmount); } - tousseDefinitionIdSet.add(tousseDefinitionId); + if(!(invoicePlan instanceof ForeignProxyDisinfection)){ + tousseDefinitionIdSet.add(tousseDefinitionId); + } } } } Index: ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/action/InvoiceAction.java =================================================================== diff -u -r21992 -r22203 --- ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/action/InvoiceAction.java (.../InvoiceAction.java) (revision 21992) +++ ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/action/InvoiceAction.java (.../InvoiceAction.java) (revision 22203) @@ -1600,13 +1600,18 @@ String mode = StrutsParamUtils.getPraramValue("mode", Invoice.INVOICE_MODE_DEPART); String sterileStartTime = StrutsParamUtils.getPraramValue("sterileStartTime", ""); String sterileEndTime = StrutsParamUtils.getPraramValue("sterileEndTime", ""); + String applyDate = StrutsParamUtils.getPraramValue("applyDate", ""); + String tousseTypes = StrutsParamUtils.getPraramValue("tousseTypes", ""); params.put("mode", mode); params.put("departCode", departCode); params.put("depart", depart); params.put("sterileStartTime", sterileStartTime); params.put("sterileEndTime", sterileEndTime); + params.put("applyDate", applyDate); + params.put("tousseTypes", tousseTypes); + JSONArray jsonArray = invoiceManager.getTousseInstancesForAuxiliaryInvoice(params); StrutsResponseUtils.output(jsonArray); } Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/tousseitem/TousseItem.java =================================================================== diff -u -r21920 -r22203 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/tousseitem/TousseItem.java (.../TousseItem.java) (revision 21920) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/tousseitem/TousseItem.java (.../TousseItem.java) (revision 22203) @@ -664,7 +664,10 @@ } return false; } - + @Transient + public boolean isForeignProxyTousse(){ + return StringTools.equals(tousseType, TousseDefinition.PACKAGE_TYPE_FOREIGNPROXY); + } /** * 是否自定义器械包 */