Index: ssts-web/src/test/java/test/forgon/disinfectsystem/packing/PackingTaskTests.java =================================================================== diff -u -r13683 -r14106 --- ssts-web/src/test/java/test/forgon/disinfectsystem/packing/PackingTaskTests.java (.../PackingTaskTests.java) (revision 13683) +++ ssts-web/src/test/java/test/forgon/disinfectsystem/packing/PackingTaskTests.java (.../PackingTaskTests.java) (revision 14106) @@ -182,11 +182,7 @@ params.put("tousseJson", jsonArray); params.put("errors",""); params.put("damages",""); - try { - recyclingRecordManager.saveOrUpdate(record,params); - } catch (RecyclingRecordException e1) { - e1.printStackTrace(); - } + recyclingRecordManager.saveOrUpdate(record,params); objectDao.flush(); PackingTask task = packingManager.getUnfinishedTask(record.getId(), @@ -204,19 +200,15 @@ params2.put("damages",""); //////////////////////////////////编辑回收记录,增加回收数量 - try { - recyclingRecordManager.saveOrUpdate(record, params2); - } catch (RecyclingRecordException e) { - e.printStackTrace(); - } + recyclingRecordManager.saveOrUpdate(record, params2); PackingTask task2 = packingManager.getUnfinishedTask(record.getId(), "019000001", td_Test开胸包.getId(), PackingTask.TASK_RECYCLINGRECORD); AssertJUnit.assertTrue(task2 != null); AssertJUnit.assertEquals(3, task2.getAmount().intValue()); packingManager.delete(task2); objectDao.flush(); - ////////////////////////////编辑回收记录,减少回收数量 + ////////////////////////////编辑回收记录,减少回收数量(如果数量为负数的话,保存回收记录方法判断task为空且数量小于0时会当做该任务已装配完处理) String msg3 = ""; JSONArray jsonArray3 = new JSONArray(); addRecyclingItem(jsonArray3, "019000001", "0", "Test开胸包",td_Test开胸包.getId(), -2, "器械包", "", @@ -261,11 +253,7 @@ Collection applyItemVos = new ArrayList(); appendToCollection(applyItemVos, "Test治疗巾", 10 , TousseDefinition.PACKAGE_TYPE_DRESSING, "否",0); TousseDefinition td = tousseDefinitionManager.getTousseDefinitionByName("Test治疗巾"); - try { - recyclingApplicationManager.saveRecyclingApplication(application, applyItemVos, true); - } catch (Exception e) { - e.printStackTrace(); - } + recyclingApplicationManager.saveRecyclingApplication(application, applyItemVos, true); objectDao.flush(); PackingTask task = packingManager.getUnfinishedTask( application.getId(), null, td.getId(), @@ -284,6 +272,7 @@ //////////////////////减少敷料包数量 Collection applyItemVos2 = new ArrayList(); + //指定了tousseItem的id,会将该申请项对应的物品的申请数量更改为5 appendToCollection(applyItemVos2, "Test治疗巾", 5 , TousseDefinition.PACKAGE_TYPE_DRESSING, "否", existItem.getId().longValue()); String msg = null; @@ -310,23 +299,20 @@ AssertJUnit.assertTrue(items != null); existItem = items.get(0); - AssertJUnit.assertEquals(10, existItem.getAmount().intValue()); + //277行加282行已将数量更新为5并重新保存,所以断言期望值由10改为5 + AssertJUnit.assertEquals(5, existItem.getAmount().intValue()); //////////////////////增加敷料包数量 Collection applyItemVos3 = new ArrayList(); appendToCollection(applyItemVos3, "Test治疗巾", 15 , TousseDefinition.PACKAGE_TYPE_DRESSING, "否", existItem.getId().longValue()); - try { - recyclingApplicationManager.saveRecyclingApplication(application, applyItemVos3, true); - } catch (Exception e) { - e.printStackTrace(); - } + recyclingApplicationManager.saveRecyclingApplication(application, applyItemVos3, true); objectDao.flush(); PackingTask task3 = packingManager.getUnfinishedTask( application.getId(), null, td.getId(), PackingTask.TASK_APPLICATION); AssertJUnit.assertTrue(task3 != null); - AssertJUnit.assertEquals(5,task3.getAmount().intValue()); + AssertJUnit.assertEquals(10,task3.getAmount().intValue()); } Index: ssts-web/src/test/java/test/forgon/disinfectsystem/packing/service/PackingManagerTests.java =================================================================== diff -u -r13045 -r14106 --- ssts-web/src/test/java/test/forgon/disinfectsystem/packing/service/PackingManagerTests.java (.../PackingManagerTests.java) (revision 13045) +++ ssts-web/src/test/java/test/forgon/disinfectsystem/packing/service/PackingManagerTests.java (.../PackingManagerTests.java) (revision 14106) @@ -298,16 +298,16 @@ // 验证有2条装配记录 List packingRecords = objectDao.findBySql(PackingRecord.class.getSimpleName() , " where 1=1 " , "id"); - - assertEquals(packingRecords.size(), 2); + //由于两个装配任务所装的器械包是同一个器械包,所以对应的历史装配记录数为1,数量为两条装配任务数量之和(5+3=8) + assertEquals(packingRecords.size(), 1); PackingRecord packingRecord1 = packingRecords.get(0); - assertEquals(packingRecord1.getAmount().intValue(), 5); + assertEquals(packingRecord1.getAmount().intValue(), 8); // assertEquals(packingRecord1.getTousseName(), "呼吸机"); - PackingRecord packingRecord2 = packingRecords.get(1); - assertEquals(packingRecord2.getAmount().intValue(), 3); +// PackingRecord packingRecord2 = packingRecords.get(1); +// assertEquals(packingRecord2.getAmount().intValue(), 3); // assertEquals(packingRecord2.getTousseName(), "呼吸机"); } Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/recyclingapplication/RecyclingApplication.java =================================================================== diff -u -r13892 -r14106 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/recyclingapplication/RecyclingApplication.java (.../RecyclingApplication.java) (revision 13892) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/recyclingapplication/RecyclingApplication.java (.../RecyclingApplication.java) (revision 14106) @@ -3,6 +3,7 @@ import java.util.List; import javax.persistence.CascadeType; +import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.FetchType; import javax.persistence.JoinColumn; @@ -203,6 +204,7 @@ this.recyclingApplications = recyclingApplications; } + @Column(length=2000) public String getTousseBarcodes() { return tousseBarcodes; } Index: ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManagerImpl.java =================================================================== diff -u -r14101 -r14106 --- ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManagerImpl.java (.../RecyclingApplicationManagerImpl.java) (revision 14101) +++ ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManagerImpl.java (.../RecyclingApplicationManagerImpl.java) (revision 14106) @@ -540,7 +540,7 @@ .getSettleAccountsDepart()); packingManager.save(task); } else { - throw new RuntimeException( + throw new RecyclingRecordException( td.getName() + "已经装配,不能修改申请单。"); } } else { @@ -553,7 +553,7 @@ + needAddAmount == 0) { packingManager.delete(task); } else { - throw new RuntimeException(task + throw new RecyclingRecordException(task .getTousseDefinition().getName() + "已经装配,不能修改申请单。"); }