Index: ssts-web/src/test/java/test/forgon/disinfectsystem/packing/PackingTableManagerTests.java =================================================================== diff -u -r14716 -r15439 --- ssts-web/src/test/java/test/forgon/disinfectsystem/packing/PackingTableManagerTests.java (.../PackingTableManagerTests.java) (revision 14716) +++ ssts-web/src/test/java/test/forgon/disinfectsystem/packing/PackingTableManagerTests.java (.../PackingTableManagerTests.java) (revision 15439) @@ -321,7 +321,7 @@ foreignProxyDisinfectionManager .createForeignProxyDisinfectionTousseInstances(tousseDefinition, packageType, sterilingType, count, - basketBarcode, validUntil,waringUntil,tousseInstances,null,null,null); + basketBarcode,tousseInstances,null,null,null); } catch (Exception e) { e.printStackTrace(); } @@ -381,7 +381,7 @@ foreignProxyDisinfectionManager .createForeignProxyDisinfectionTousseInstances(tousseDefinition, packageType, sterilingType, count, - basketBarcode, validUntil,waringUntil,tousseInstances,null,null,null); + basketBarcode, tousseInstances,null,null,null); } catch (Exception e) { e.printStackTrace(); } Index: ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/foreignproxydisinfection/service/ForeignProxyDisinfectionManagerImpl.java =================================================================== diff -u -r15431 -r15439 --- ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/foreignproxydisinfection/service/ForeignProxyDisinfectionManagerImpl.java (.../ForeignProxyDisinfectionManagerImpl.java) (revision 15431) +++ ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/foreignproxydisinfection/service/ForeignProxyDisinfectionManagerImpl.java (.../ForeignProxyDisinfectionManagerImpl.java) (revision 15439) @@ -5,7 +5,6 @@ import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.ArrayList; -import java.util.Calendar; import java.util.Collection; import java.util.Date; import java.util.HashMap; @@ -84,8 +83,6 @@ private ReviewedBasketManager reviewedBasketManager; - private TousseItemManager tousseItemManager; - private ContainerManager containerManager; private InvoicePlanManager invoicePlanManager; @@ -107,10 +104,6 @@ this.containerManager = containerManager; } - public void setTousseItemManager(TousseItemManager tousseItemManager) { - this.tousseItemManager = tousseItemManager; - } - public void setReviewedBasketManager(ReviewedBasketManager reviewedBasketManager) { this.reviewedBasketManager = reviewedBasketManager; } @@ -476,8 +469,7 @@ public void createForeignProxyDisinfectionTousseInstances( TousseDefinition tousseDefinition, String packageType, - String sterilingType, int count, String basketBarcode, - Calendar validUntil, Calendar warningUntil, List tousseInstances,ForeignProxyItem foreignProxyItem, + String sterilingType, int count, String basketBarcode, List tousseInstances,ForeignProxyItem foreignProxyItem, ForeignProxyDisinfection foreignProxyDisinfection,TousseItem tousseItem) { int tousseAmount = count; // logger.debug("Thread " + Thread.currentThread().getName() @@ -541,12 +533,11 @@ tousseInstance.setFluctuationPrice(fPrice); tousseInstance.setSterileStartTime(sterileStartTime); - if(validUntil != null){ - tousseInstance.setValidUntil(validUntil.getTime()); + if(foreignProxyItem.getValidUntil() == null){ + throw new RuntimeException(foreignProxyItem.getTousseName() +",失效期不能为空!"); } - if(warningUntil != null){ - tousseInstance.setWarningUntil(warningUntil.getTime()); - } + tousseInstance.setValidUntil(foreignProxyItem.getValidUntil()); + tousseInstance.setWarningUntil(foreignProxyItem.getWarningUntil()); tousseInstance.setTousseName(tousseDefinition.getName()); tousseInstance.setStatus(TousseInstance.STATUS_PACKED); @@ -640,9 +631,7 @@ if(foreignProxyDisinfection.hasPacked()){ throw new RuntimeException("申请单已装配,不能再次装配!"); } - Map> validUntilAndWarningUntilMap = new HashMap>(); - prepareForSave(modifiedForeignProxyDisinfection, params, - foreignProxyDisinfection, validUntilAndWarningUntilMap); + prepareForSave(modifiedForeignProxyDisinfection, params,foreignProxyDisinfection); //申请物品 List applicationList = foreignProxyDisinfection.getApplicationItems(); if(applicationList == null){ @@ -691,17 +680,10 @@ // 生成包实例 String packageType = proxyItem.getPackageType(); String sterilingType = proxyItem.getSterilingType(); - List dateList = validUntilAndWarningUntilMap.get(proxyItem.getPackageType()); - if(dateList == null || dateList.size() < 2){ - throw new RuntimeException("有包装类型未设置失效期!"); - } - Calendar validUntil = validUntilAndWarningUntilMap.get(proxyItem.getPackageType()).get(0); - Calendar warningUntil = validUntilAndWarningUntilMap.get(proxyItem.getPackageType()).get(1); List tousseInstances = new LinkedList(); createForeignProxyDisinfectionTousseInstances(tousseDefinition, packageType, sterilingType, proxyItem.getCount(), - proxyItem.getBasketBarcode(), validUntil, warningUntil, - tousseInstances,proxyItem, + proxyItem.getBasketBarcode(),tousseInstances,proxyItem, foreignProxyDisinfection,tousseItem); if(tousseInstances.isEmpty()){ throw new RuntimeException("创建包实例失败!"); @@ -717,14 +699,12 @@ private void prepareForSave( ForeignProxyDisinfection modifiedForeignProxyDisinfection, JSONObject params, - ForeignProxyDisinfection foreignProxyDisinfection, - Map> validUntilAndWarningUntilMap) { + ForeignProxyDisinfection foreignProxyDisinfection) { Map existIdMap = new HashMap(); String jsonItems = params.getString("itemInfoList"); List newItems = new ArrayList(); setDefaultInfo(foreignProxyDisinfection); - bulidForeignProxyItem(jsonItems, existIdMap, newItems, - validUntilAndWarningUntilMap); + bulidForeignProxyItem(jsonItems, existIdMap, newItems); if (!DatabaseUtil.isPoIdValid(foreignProxyDisinfection.getId())) {// 新增 foreignProxyDisinfection .setType(InvoicePlan.TYPE_FOREIGNPROXYDISINFECTION); @@ -805,10 +785,8 @@ if(foreignProxyDisinfection.hasPacked()){ throw new RuntimeException("申请单已装配,不能修改!"); } - Map> validUntilAndWarningUntilMap = new HashMap>(); - prepareForSave(modifiedForeignProxyDisinfection, params, - foreignProxyDisinfection, validUntilAndWarningUntilMap); + prepareForSave(modifiedForeignProxyDisinfection, params, foreignProxyDisinfection); saveOrUpdate(foreignProxyDisinfection); List proxyItems = foreignProxyDisinfection.getForeignProxyItems(); @@ -839,8 +817,7 @@ } private void bulidForeignProxyItem(String jsonItems, Map existIdMap, - List newItems, - Map> validUntilAndWarningUntilMap) { + List newItems) { if (StringUtils.isNotBlank(jsonItems)) { JSONArray array = JSONArray.fromObject(jsonItems); @@ -887,24 +864,9 @@ Date validUntil = (Date)JSONObject.toBean(expirationObj.optJSONObject("validUntil"), Date.class); Date warningUntil = (Date)JSONObject.toBean(expirationObj.optJSONObject("warningUntil"), Date.class); - List validUntilAndWarningUntil = new ArrayList(); - Calendar c1 = Calendar.getInstance(); - Calendar c2 = Calendar.getInstance(); + foreignProxyItem.setValidUntil(validUntil); + foreignProxyItem.setWarningUntil(warningUntil); - if(validUntil != null){ - c1.setTime(validUntil); - validUntilAndWarningUntil.add(c1); - }else{ - validUntilAndWarningUntil.add(null); - } - if(warningUntil != null){ - c2.setTime(warningUntil); - validUntilAndWarningUntil.add(c2); - }else{ - validUntilAndWarningUntil.add(null); - } - - validUntilAndWarningUntilMap.put(packageType, validUntilAndWarningUntil); }else{ break; } Index: ssts-web/src/test/java/test/forgon/disinfectsystem/packing/ForeignProxyDisinfectionManagerInvokerThread.java =================================================================== diff -u -r14237 -r15439 --- ssts-web/src/test/java/test/forgon/disinfectsystem/packing/ForeignProxyDisinfectionManagerInvokerThread.java (.../ForeignProxyDisinfectionManagerInvokerThread.java) (revision 14237) +++ ssts-web/src/test/java/test/forgon/disinfectsystem/packing/ForeignProxyDisinfectionManagerInvokerThread.java (.../ForeignProxyDisinfectionManagerInvokerThread.java) (revision 15439) @@ -85,7 +85,7 @@ foreignProxyDisinfectionManager .createForeignProxyDisinfectionTousseInstances(tousseDefinition, packageType, sterilingType, count, - basketBarcode, validUntil,waringUntil,tousseInstances,null,null,null); + basketBarcode,tousseInstances,null,null,null); } session.flush(); Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/sterilizationmanager/foreignproxydisinfection/ForeignProxyItem.java =================================================================== diff -u -r15348 -r15439 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/sterilizationmanager/foreignproxydisinfection/ForeignProxyItem.java (.../ForeignProxyItem.java) (revision 15348) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/sterilizationmanager/foreignproxydisinfection/ForeignProxyItem.java (.../ForeignProxyItem.java) (revision 15439) @@ -1,5 +1,6 @@ package com.forgon.disinfectsystem.entity.sterilizationmanager.foreignproxydisinfection; +import java.util.Date; import java.util.List; import javax.persistence.Entity; @@ -8,6 +9,7 @@ import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; +import javax.persistence.Transient; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; @@ -51,6 +53,10 @@ private Long tousseItemId; + private Date validUntil;//失效期 + + private Date warningUntil;//预警期 + @Id @GeneratedValue(strategy = GenerationType.AUTO) public Long getId() { @@ -163,5 +169,25 @@ public void setTousseItemId(Long tousseItemId) { this.tousseItemId = tousseItemId; } + + @Transient + public Date getValidUntil() { + return validUntil; + } + + public void setValidUntil(Date validUntil) { + this.validUntil = validUntil; + } + + @Transient + public Date getWarningUntil() { + return warningUntil; + } + + public void setWarningUntil(Date warningUntil) { + this.warningUntil = warningUntil; + } + + } Index: ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/foreignproxydisinfection/service/ForeignProxyDisinfectionManager.java =================================================================== diff -u -r15348 -r15439 --- ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/foreignproxydisinfection/service/ForeignProxyDisinfectionManager.java (.../ForeignProxyDisinfectionManager.java) (revision 15348) +++ ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/foreignproxydisinfection/service/ForeignProxyDisinfectionManager.java (.../ForeignProxyDisinfectionManager.java) (revision 15439) @@ -31,8 +31,7 @@ public void createForeignProxyDisinfectionTousseInstances( TousseDefinition tousseDefinition, String packageType, - String sterilingType, int count, String basketBarcode, - Calendar validUntil, Calendar warningUntil, List tousseInstances,ForeignProxyItem foreignProxyItem, + String sterilingType, int count, String basketBarcode, List tousseInstances,ForeignProxyItem foreignProxyItem, ForeignProxyDisinfection foreignProxyDisinfection,TousseItem tousseItem) throws Exception; public void saveOrUpdate(ForeignProxyItem foreignProxyItem);