Jelajahi Sumber

增加审批类型, 修改批量审批

ioioio 4 tahun lalu
induk
melakukan
a28516b8f9

+ 2 - 0
blade-service-api/blade-check-api/src/main/java/org/springblade/check/entity/AuditProecess.java

@@ -134,5 +134,7 @@ public class AuditProecess implements Serializable {
 
 		private String pageStatus;
 
+		private String checkType;
+
 
 }

+ 2 - 0
blade-service-api/blade-purchase-sales-api/src/main/java/org/springblade/purchase/sales/entity/Order.java

@@ -701,4 +701,6 @@ public class Order implements Serializable {
 
 	@TableField(exist = false)
 	private BigDecimal actualWeight;
+	@TableField(exist = false)
+	private String checkType;
 }

+ 3 - 0
blade-service-api/trade-finance-api/src/main/java/org/springblade/finance/vojo/Settlement.java

@@ -235,4 +235,7 @@ public class Settlement  implements Serializable {
 
 	private String itemType;
 
+	@TableField(exist = false)
+	private String checkType;
+
 }

+ 23 - 2
blade-service/blade-check/src/main/java/org/springblade/check/controller/AuditProecessController.java

@@ -215,10 +215,31 @@ public class AuditProecessController extends BladeController {
 
 	@PostMapping("operationFinanceProcess")
 	@ApiOperationSupport(order = 2)
-	@ApiOperation(value = "操作-财务审批流记录", notes = "传入auditProecessDTO")
+	@ApiOperation(value = "操作-公共审批-根据checkType区别", notes = "传入auditProecessDTO")
 	public  R operationFinanceProcess(@RequestBody AuditProecess auditProecess)
 	{
-		auditProecessService.operationFinanceProcess(auditProecess);
+		AuditProecess proecess = auditProecessService.getById(auditProecess.getId());
+		if(proecess==null)
+		{
+			throw new SecurityException("审核失败,查无此记录");
+		}
+		if(StringUtils.isBlank(proecess.getCheckType()))
+		{
+			throw new SecurityException("审核失败,未填写审批类型");
+		}
+        if(proecess.getCheckType().equals("ffsq"))
+        {
+			auditProecessService.operationFinanceProcess(auditProecess);
+		}
+        else if(proecess.getCheckType().equals("xsqh"))
+        {
+			auditProecessService.orderCheckProcess(auditProecess);
+		}
+        else
+		{
+			throw new SecurityException("此审批类型未查到相关审批类型");
+		}
+
 		return R.data(auditProecess);
 	}
 

+ 2 - 0
blade-service/blade-check/src/main/java/org/springblade/check/entity/AuditProecess.java

@@ -152,4 +152,6 @@ public class AuditProecess implements Serializable {
 
 	    private String pageLabel;
 
+	    private String checkType;
+
 }

+ 14 - 1
blade-service/blade-check/src/main/java/org/springblade/check/service/impl/AuditProecessServiceImpl.java

@@ -129,6 +129,7 @@ public class AuditProecessServiceImpl extends ServiceImpl<AuditProecessMapper, A
 			auditProecess.setProcessType(auditProecessDTO.getProcessType());
 			auditProecess.setUrl(auditProecessDTO.getUrl());
 			auditProecess.setBatchNo(finalCurrent);
+			auditProecess.setCheckType(auditProecessDTO.getCheckType());
 			//除了第一级是待审,其他都N
 			if(e.getLevelId()==1)
 			{
@@ -712,7 +713,19 @@ public class AuditProecessServiceImpl extends ServiceImpl<AuditProecessMapper, A
 		processLis.forEach(e->{
 			e.setOperate(operate);
 			e.setAuditMsg(auditMsg);
-			this.operationFinanceProcess(e);
+			if(e.getCheckType().equals("ffsq"))
+			{
+				this.operationFinanceProcess(e);
+			}
+			else if(e.getCheckType().equals("xsqh"))
+			{
+                this.orderCheckProcess(e);
+			}
+			else
+			{
+				throw new SecurityException("存在审批类型为空的数据,请联系管理员");
+			}
+
 		});
 	}
 

+ 9 - 3
blade-service/blade-client/src/main/java/org/springblade/client/goods/controller/GoodsDescController.java

@@ -58,6 +58,7 @@ import org.springblade.core.boot.ctrl.BladeController;
 import org.springframework.web.multipart.MultipartFile;
 
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.List;
 import java.util.stream.Collectors;
 
@@ -133,10 +134,15 @@ public class GoodsDescController extends BladeController {
 		{
 			iPage.getRecords().forEach(e->{
 				String TypeId = e.getGoodsTypeId();
-				GoodsType goodsType = goodsDescType.getById(Long.valueOf(TypeId));
-				if(goodsType!=null)
+				String[] split = TypeId.split(",");
+				List<String> stringList = Arrays.asList(split);
+				LambdaQueryWrapper<GoodsType> goodsTypeLambdaQueryWrapper=new LambdaQueryWrapper<>();
+				goodsTypeLambdaQueryWrapper.in(GoodsType::getId,stringList);
+				List<GoodsType> types = goodsDescType.list(goodsTypeLambdaQueryWrapper);
+				if(CollectionUtils.isNotEmpty(types))
 				{
-					e.setGoodsTypeName(goodsType.getCname());
+					List<String> typeStr = types.stream().map(GoodsType::getCname).collect(Collectors.toList());
+					e.setGoodsTypeName(typeStr.toString());
 				}
 			});
 		}

+ 3 - 2
blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/controller/OrderController.java

@@ -44,6 +44,7 @@ import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.Func;
 import org.springblade.finance.vojo.Acc;
 import org.springblade.finance.feign.IFinanceClient;
+import org.springblade.finance.vojo.Settlement;
 import org.springblade.purchase.sales.entity.OrderFees;
 import org.springblade.purchase.sales.entity.OrderItems;
 import org.springblade.purchase.sales.service.*;
@@ -630,10 +631,10 @@ public class OrderController extends BladeController {
 	}
 
 	@PostMapping("checkOrder")
-	public R checkOrder(@ApiParam(value = "主键集合", required = true) @RequestParam Long id)
+	public R checkOrder(@RequestBody Order order)
 	{
 
-		orderService.checkOrder(id);
+		orderService.checkOrder(order);
 		return R.data("操作成功");
 	}
 

+ 1 - 1
blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/service/IOrderService.java

@@ -90,7 +90,7 @@ public interface IOrderService extends IService<Order> {
 
 	IPage<OrderStatisticAnalysisVO> listOrderStatisticAnalysis(Page<OrderStatisticAnalysisVO> page, @Param("tenantId")String tenantId, @Param("orderNo")String orderNo,@Param("startTime")String startTime,@Param("endTime")String endTime);
 
-	void checkOrder(Long id);
+	void checkOrder(Order order);
 
 	void passCheck(Long id);
 

+ 8 - 7
blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/service/impl/OrderServiceImpl.java

@@ -553,9 +553,9 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 
 	@Override
 	@Transactional
-	public void checkOrder(Long id)
+	public void checkOrder(Order order)
 	{
-		Order order = baseMapper.selectById(id);
+		Order salesOrder = baseMapper.selectById(order.getId());
 		if(order==null)
 		{
 			throw new SecurityException("审批失败,未查到单据");
@@ -569,8 +569,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 		}
 		else
 		{
-			order.setStatus(1);
-			baseMapper.updateById(order);
+			salesOrder.setStatus(1);
+			baseMapper.updateById(salesOrder);
 
 			//获取审批级次
 			List<AuditPathsLevels> auditPathsLevels = iCheckClient.listLevelsByActId(3, "status");
@@ -580,12 +580,13 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 			auditProecessDTO.setPageStatus(settlement.getPageStatus());
 			auditProecessDTO.setPageLabel(settlement.getPageLabel());*/
 			//增加审批类型
+			auditProecessDTO.setCheckType(order.getCheckType());
 			auditProecessDTO.setProcessType("付费审批");
 			auditProecessDTO.setPathsLevelsList(auditPathsLevels);
 			auditProecessDTO.setActId(1);
-			auditProecessDTO.setSrcBillId(order.getId());
-			auditProecessDTO.setBillId(order.getId());
-			auditProecessDTO.setBillNo(order.getOrderNo());
+			auditProecessDTO.setSrcBillId(salesOrder.getId());
+			auditProecessDTO.setBillId(salesOrder.getId());
+			auditProecessDTO.setBillNo(salesOrder.getOrderNo());
 			auditProecessDTO.setSendUserId(AuthUtil.getUserId());
 			auditProecessDTO.setSendName(AuthUtil.getUserName());
 			auditProecessDTO.setSendTime(new Date());

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

@@ -643,6 +643,8 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
 			  List<AuditPathsLevels> auditPathsLevels = iCheckClient.listLevelsByActId(1, "check_status");
 
 			  AuditProecessDTO auditProecessDTO=new AuditProecessDTO();
+			  //绑定审核类型
+			  auditProecessDTO.setCheckType(settlement.getCheckType());
 			  //追加跳转路由url
 			  auditProecessDTO.setUrl(settlement.getUrl());
 			  auditProecessDTO.setPageStatus(settlement.getPageStatus());