ioioio 4 years ago
parent
commit
3e8384d4d1

+ 3 - 0
blade-service-api/blade-client-api/src/main/java/org/springblade/client/entity/Lock.java

@@ -69,5 +69,8 @@ public class Lock implements Serializable {
 		@ApiModelProperty(value = "单据id")
 		private Long billId;
 
+	@ApiModelProperty(value = "租户id")
+	private String tenantId;
+
 
 }

+ 3 - 0
blade-service-api/blade-client-api/src/main/java/org/springblade/client/entity/LockConfig.java

@@ -58,5 +58,8 @@ public class LockConfig implements Serializable {
 		@ApiModelProperty(value = "备注")
 		private String remark;
 
+	@ApiModelProperty(value = "租户id")
+	private String tenantId;
+
 
 }

+ 5 - 0
blade-service-api/trade-finance-api/src/main/java/org/springblade/finance/entity/InvoiceItem.java

@@ -38,6 +38,9 @@ public class InvoiceItem implements Serializable {
 
 	private static final long serialVersionUID = 1L;
 
+
+	private Long pid;
+
 	private Long id;
 	/**
 	* 费用服务名称
@@ -115,5 +118,7 @@ public class InvoiceItem implements Serializable {
 		@ApiModelProperty(value = "是否已删除(0 否 1是)")
 		private Integer isDeleted;
 
+	@ApiModelProperty(value = "租户id")
+	private String tenantId;
 
 }

+ 2 - 1
blade-service/blade-client/src/main/java/org/springblade/client/lock/controller/LockConfigController.java

@@ -23,6 +23,7 @@ import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import lombok.AllArgsConstructor;
 import javax.validation.Valid;
 
+import org.springblade.client.lock.service.ILockConfigService;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.tool.api.R;
@@ -31,7 +32,7 @@ import org.springframework.web.bind.annotation.*;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.springblade.client.entity.LockConfig;
 import org.springblade.client.vo.LockConfigVO;
-import org.springblade.client.service.ILockConfigService;
+
 import org.springblade.core.boot.ctrl.BladeController;
 
 /**

+ 9 - 1
blade-service/blade-client/src/main/java/org/springblade/client/lock/controller/LockController.java

@@ -23,6 +23,7 @@ import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import lombok.AllArgsConstructor;
 import javax.validation.Valid;
 
+import org.springblade.client.lock.service.ILockService;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.tool.api.R;
@@ -31,7 +32,6 @@ import org.springframework.web.bind.annotation.*;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.springblade.client.entity.Lock;
 import org.springblade.client.vo.LockVO;
-import org.springblade.client.service.ILockService;
 import org.springblade.core.boot.ctrl.BladeController;
 
 /**
@@ -122,5 +122,13 @@ public class LockController extends BladeController {
 		return R.status(lockService.removeByIds(Func.toLongList(ids)));
 	}
 
+	@GetMapping("checkLock")
+	public R<Boolean> checkLock()
+	{
+		//先查看当前租户是否配置锁
+        return null;
+		//
+	}
+
 
 }

+ 1 - 1
blade-service/blade-client/src/main/java/org/springblade/client/lock/mapper/LockConfigMapper.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="org.springblade.client.mapper.LockConfigMapper">
+<mapper namespace="org.springblade.client.lock.mapper.LockConfigMapper">
 
     <!-- 通用查询映射结果 -->
     <resultMap id="lockConfigResultMap" type="org.springblade.client.entity.LockConfig">

+ 2 - 1
blade-service/blade-client/src/main/java/org/springblade/client/lock/mapper/LockMapper.java

@@ -17,9 +17,10 @@
 package org.springblade.client.lock.mapper;
 
 import org.springblade.client.entity.Lock;
-import org.springblade.client.vo.LockVO;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.client.vo.LockVO;
+
 import java.util.List;
 
 /**

+ 1 - 1
blade-service/blade-client/src/main/java/org/springblade/client/lock/mapper/LockMapper.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="org.springblade.client.mapper.LockMapper">
+<mapper namespace="org.springblade.client.lock.mapper.LockMapper">
 
     <!-- 通用查询映射结果 -->
     <resultMap id="lockResultMap" type="org.springblade.client.entity.Lock">

+ 2 - 1
blade-service/blade-client/src/main/java/org/springblade/client/lock/service/ILockService.java

@@ -17,9 +17,10 @@
 package org.springblade.client.lock.service;
 
 import org.springblade.client.entity.Lock;
-import org.springblade.client.vo.LockVO;
+
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.client.vo.LockVO;
 
 /**
  *  服务类

+ 2 - 2
blade-service/blade-client/src/main/java/org/springblade/client/lock/service/impl/LockConfigServiceImpl.java

@@ -17,9 +17,9 @@
 package org.springblade.client.lock.service.impl;
 
 import org.springblade.client.entity.LockConfig;
+import org.springblade.client.lock.mapper.LockConfigMapper;
+import org.springblade.client.lock.service.ILockConfigService;
 import org.springblade.client.vo.LockConfigVO;
-import org.springblade.client.mapper.LockConfigMapper;
-import org.springblade.client.service.ILockConfigService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
 import com.baomidou.mybatisplus.core.metadata.IPage;

+ 31 - 0
blade-service/trade-finance/src/main/java/org/springblade/finance/service/impl/SettlementServiceImpl.java

@@ -43,6 +43,7 @@ import org.springblade.deliver.goods.entity.DeliveryItems;
 import org.springblade.deliver.goods.feign.IDeliveryClient;
 import org.springblade.finance.TokenRequestQuery;
 import org.springblade.finance.dto.SettlementDTO;
+import org.springblade.finance.entity.InvoiceItem;
 import org.springblade.finance.entity.JdModule;
 import org.springblade.finance.entity.JdTenant;
 import org.springblade.finance.enums.SettlementEnum;
@@ -119,6 +120,8 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
 
 	private JdModuleMapper moduleMapper;
 
+	private InvoiceItemMapper invoiceItemMapper;
+
 
 	@Override
 	public IPage<SettlementVO> selectSettlementPage(IPage<SettlementVO> page, SettlementVO settlement) {
@@ -998,6 +1001,20 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
 	public void putFund(Settlement settlement)
 	{
 		//todo 判断是否有开票信息, 如果没有不可以操作
+		LambdaQueryWrapper<InvoiceItem> invoiceItemLambdaQueryWrapper=new LambdaQueryWrapper<>();
+		invoiceItemLambdaQueryWrapper
+			.eq(InvoiceItem::getPid,settlement.getId())
+            .eq(InvoiceItem::getIsDeleted,0)
+			.eq(InvoiceItem::getTenantId,AuthUtil.getTenantId());
+
+		int count=	invoiceItemMapper.selectCount(invoiceItemLambdaQueryWrapper);
+		if(count>0)
+		{
+			throw new SecurityException("未查到开票信息,禁止操作");
+		}
+
+
+
 		Settlement select = baseMapper.selectById(settlement.getId());
 		if(select==null)
 		{
@@ -1041,7 +1058,21 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
 	@GlobalTransactional
 	public void cancelFund(Settlement settlement)
 	{
+
 		//todo 判断是否有开票信息, 如果没有不可以操作
+		LambdaQueryWrapper<InvoiceItem> invoiceItemLambdaQueryWrapper=new LambdaQueryWrapper<>();
+		invoiceItemLambdaQueryWrapper
+			.eq(InvoiceItem::getPid,settlement.getId())
+			.eq(InvoiceItem::getIsDeleted,0)
+			.eq(InvoiceItem::getTenantId,AuthUtil.getTenantId());
+
+		int count=	invoiceItemMapper.selectCount(invoiceItemLambdaQueryWrapper);
+		if(count>0)
+		{
+			throw new SecurityException("未查到开票信息,禁止操作");
+		}
+
+
 		Settlement select = baseMapper.selectById(settlement.getId());
 		if(select==null)
 		{