Просмотр исходного кода

结算和取消结算,增加防重判断

ioioio 3 лет назад
Родитель
Сommit
39df41c065

+ 25 - 1
blade-service/trade-finance/src/main/java/org/springblade/finance/service/impl/SettlementServiceImpl.java

@@ -94,6 +94,19 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
 	@GlobalTransactional
 	public Settlement cancelModify(SettlementDTO settlementDTO)
 	{
+		Long id = settlementDTO.getId();
+		Settlement settlement = baseMapper.selectById(id);
+		if(settlement==null)
+		{
+			throw new SecurityException("未查到结算单,禁止操作");
+		}
+		if(settlement.getFinanceStatus().equals("待结算"))
+		{
+			throw new SecurityException("此结算单未结算 或者 已经撤销,禁止重复操作");
+		}
+
+
+
 		Settlement model=new Settlement();
 		BeanUtils.copyProperties(settlementDTO,model);
 		List<Items> itemsList = settlementDTO.getItemsList();
@@ -133,13 +146,24 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
 	@GlobalTransactional
 	public Settlement modify(SettlementDTO settlementDTO)
 	{
+		Long id = settlementDTO.getId();
+		Settlement settlement = baseMapper.selectById(id);
+		if(settlement==null)
+		{
+          throw new SecurityException("未查到结算单,禁止操作");
+		}
+		if(settlement.getFinanceStatus().equals("结算完成"))
+		{
+			throw new SecurityException("此结算单已结算过,禁止重复操作");
+		}
+
 		Settlement model=new Settlement();
 		BeanUtils.copyProperties(settlementDTO,model);
 		List<Files> filesList = settlementDTO.getFilesList();
  		List<Items> itemsList = settlementDTO.getItemsList();
 		model.setItemsList(itemsList);
 		//如果id=null, 无论主表还是从表, 必然都是新增
- 		Long id = settlementDTO.getId();
+
 		if(id==null)
 		{