Index: ssts-web/src/test/java/test/forgon/disinfectsystem/application/TestDisinfectGoodRecyclingApplication.java =================================================================== diff -u -r17749 -r23955 --- ssts-web/src/test/java/test/forgon/disinfectsystem/application/TestDisinfectGoodRecyclingApplication.java (.../TestDisinfectGoodRecyclingApplication.java) (revision 17749) +++ ssts-web/src/test/java/test/forgon/disinfectsystem/application/TestDisinfectGoodRecyclingApplication.java (.../TestDisinfectGoodRecyclingApplication.java) (revision 23955) @@ -1,32 +1,37 @@ package test.forgon.disinfectsystem.application; -import com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseDefinition; -import com.forgon.disinfectsystem.entity.invoicemanager.InvoicePlan; -import com.forgon.disinfectsystem.entity.recyclingapplication.RecyclingApplication; -import com.forgon.disinfectsystem.entity.tousseitem.TousseItem; -import com.forgon.disinfectsystem.vo.TousseItemVo; +import static org.testng.Assert.assertEquals; +import static org.testng.Assert.assertNotNull; +import static org.testng.Assert.assertNull; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; + import org.apache.commons.collections4.CollectionUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.transaction.annotation.Propagation; +import org.springframework.transaction.annotation.Transactional; import org.testng.annotations.Test; + import test.forgon.disinfectsystem.AbstractCSSDTest; import test.forgon.disinfectsystem.application.assertThat.RecyclingApplicationAssert; import test.forgon.disinfectsystem.dataProvider.application.ApplicationDataProvider; import test.forgon.disinfectsystem.dataProvider.tousseDefinition.TousseDefinitionDataProvider; -import java.util.ArrayList; -import java.util.Collection; -import java.util.List; +import com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseDefinition; +import com.forgon.disinfectsystem.entity.invoicemanager.InvoicePlan; +import com.forgon.disinfectsystem.entity.recyclingapplication.RecyclingApplication; +import com.forgon.disinfectsystem.entity.tousseitem.TousseItem; +import com.forgon.disinfectsystem.vo.TousseItemVo; -import static org.testng.Assert.assertEquals; -import static org.testng.Assert.assertNotNull; -import static org.testng.Assert.assertNull; - /** * @author zhonghaowen * @apiNote 消毒物品申请单 * @since 2017-04-05 */ +@Transactional(propagation = Propagation.NEVER) public class TestDisinfectGoodRecyclingApplication extends AbstractCSSDTest { protected Logger log = LoggerFactory.getLogger(this.getClass()); @@ -74,6 +79,7 @@ appendToCollection2(modifyApplyItemVos, 呼吸机.getName(), 3, "消毒物品", "是", 0, 呼吸机.getId()); //更新申请单 recyclingApplicationManager.saveRecyclingApplication(disinfectGoodApplication, modifyApplyItemVos, true); + objectDao.getHibernateSession().evict(result); result = this.getRecyclingApplicationById(id); assertNotNull(result); //断言回收状态为待回收 @@ -93,6 +99,7 @@ objectDao.getHt().flush(); //删除该申请单 recyclingApplicationManager.deleteRecyclingApplication(id.toString()); + objectDao.getHibernateSession().evict(result); assertNull(this.getRecyclingApplicationById(id)); } @@ -107,8 +114,10 @@ Long id = recyclingApplication.getId(); assertNotNull(id); //断言申请单的结果 - this.assertDisposableGoodRecyclingApplication(this.getRecyclingApplicationById(id), 2); + RecyclingApplication result = this.getRecyclingApplicationById(id); + this.assertDisposableGoodRecyclingApplication(result, 2); invoicePlanManager.terminateInvoicePlan(recyclingApplication, "oruser1", "测试中断"); + objectDao.getHibernateSession().evict(result); //断言终止的结果 RecyclingApplicationAssert.assertCancelTousseRecyclingApplicationResult(this.getRecyclingApplicationById(id)); } @@ -128,6 +137,7 @@ //终止止血带 invoicePlanManager.checkTousseItemCanCancel(collect); invoicePlanManager.terminateTousseItemByIds(collect, "测试部分终止"); + objectDao.getHibernateSession().evict(result); //断言部分终止止血带后的结果 RecyclingApplicationAssert.afterTerminateTousseItemByIds(this.getRecyclingApplicationById(id), assertGoodName); } Index: ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManagerImpl.java =================================================================== diff -u -r23916 -r23955 --- ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManagerImpl.java (.../RecyclingApplicationManagerImpl.java) (revision 23916) +++ ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManagerImpl.java (.../RecyclingApplicationManagerImpl.java) (revision 23955) @@ -3382,7 +3382,10 @@ if (application.getId() != null && application.getId() == 0) { application.setId(null); } - + if(DatabaseUtil.isPoIdValid(application.getId()) && !objectDao.getHibernateSession().contains(application)){ + // 测试用例会进入 + objectDao.getHibernateSession().update(application); + } Boolean oldCommittedStatus = application.getCommittedStatus(); if (oldCommittedStatus == null) { oldCommittedStatus = false;