Browse Source

新增/修改-审批流

1021934019@qq.com 4 years ago
parent
commit
7fd5d5896b

+ 3 - 3
blade-service/blade-check/src/main/java/com.blade.check/CheckApplication.java

@@ -14,7 +14,7 @@
  *  this software without specific prior written permission.
  *  Author: Chill 庄骞 (smallchill@163.com)
  */
-package com.store.goods;
+package com.blade.check;
 
 import org.mybatis.spring.annotation.MapperScan;
 import org.springblade.core.cloud.feign.EnableBladeFeign;
@@ -32,10 +32,10 @@ import org.springframework.cloud.client.SpringCloudApplication;
 @SpringCloudApplication
 @MapperScan({"com.blade.check.**.mapper.**"})
 @SeataCloudApplication
-public class StoreGoodsApplication {
+public class CheckApplication {
 
 	public static void main(String[] args) {
-		BladeApplication.run("blade-check", StoreGoodsApplication.class, args);
+		BladeApplication.run("blade-check", CheckApplication.class, args);
 	}
 
 }

+ 30 - 44
blade-service/blade-check/src/main/java/com.blade.check/controller/AuditPathsController.java

@@ -16,6 +16,11 @@
  */
 package com.blade.check.controller;
 
+import com.alibaba.cloud.commons.lang.StringUtils;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.blade.check.entity.AuditPathsLevels;
+import com.blade.check.service.IAuditPathsLevelsService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
@@ -34,6 +39,8 @@ import com.blade.check.vo.AuditPathsVO;
 import com.blade.check.service.IAuditPathsService;
 import org.springblade.core.boot.ctrl.BladeController;
 
+import java.util.List;
+
 /**
  * 审批流配置主表 控制器
  *
@@ -48,79 +55,58 @@ public class AuditPathsController extends BladeController {
 
 	private final IAuditPathsService auditPathsService;
 
+	private final IAuditPathsLevelsService auditPathsLevelsService;
+
 	/**
 	 * 详情
 	 */
 	@GetMapping("/detail")
 	@ApiOperationSupport(order = 1)
-	@ApiOperation(value = "详情", notes = "传入auditPaths")
+	@ApiOperation(value = "详情-审批流配置主表", notes = "传入auditPaths")
 	public R<AuditPaths> detail(AuditPaths auditPaths) {
 		AuditPaths detail = auditPathsService.getOne(Condition.getQueryWrapper(auditPaths));
+		List<AuditPathsLevels> pathsLevelsList = auditPathsLevelsService.list(new LambdaQueryWrapper<AuditPathsLevels>().eq(AuditPathsLevels::getPathId, detail.getId()));
+		detail.setAuditPathsLevels(pathsLevelsList);
 		return R.data(detail);
 	}
 
 	/**
-	 * 分页 审批流配置主表
+	 * 列表-审批流配置主表
 	 */
 	@GetMapping("/list")
 	@ApiOperationSupport(order = 2)
-	@ApiOperation(value = "分页", notes = "传入auditPaths")
+	@ApiOperation(value = "列表-审批流配置主表", notes = "传入auditPaths")
 	public R<IPage<AuditPaths>> list(AuditPaths auditPaths, Query query) {
-		IPage<AuditPaths> pages = auditPathsService.page(Condition.getPage(query), Condition.getQueryWrapper(auditPaths));
+		LambdaQueryWrapper<AuditPaths> lambdaQueryWrapper=new LambdaQueryWrapper<>();
+		lambdaQueryWrapper.like(StringUtils.isNotBlank(auditPaths.getPathName()),AuditPaths::getPathName,auditPaths.getPathName())
+			.orderByDesc(AuditPaths::getOpDate);
+		IPage<AuditPaths> pages = auditPathsService.page(Condition.getPage(query),lambdaQueryWrapper);
 		return R.data(pages);
 	}
 
 	/**
-	 * 自定义分页 审批流配置主表
-	 */
-	@GetMapping("/page")
-	@ApiOperationSupport(order = 3)
-	@ApiOperation(value = "分页", notes = "传入auditPaths")
-	public R<IPage<AuditPathsVO>> page(AuditPathsVO auditPaths, Query query) {
-		IPage<AuditPathsVO> pages = auditPathsService.selectAuditPathsPage(Condition.getPage(query), auditPaths);
-		return R.data(pages);
-	}
+	 *  新增或编辑审批流配置
+	 * */
+	 @PostMapping("/modify")
+	 @ApiOperationSupport(order = 3)
+	 @ApiOperation(value = "新增或编辑审批流配置", notes = "传入auditPaths")
+		public R modify(@Valid @RequestBody AuditPaths auditPaths)
+	 {
+			return R.data(auditPathsService.modify(auditPaths));
+	 }
 
-	/**
-	 * 新增 审批流配置主表
-	 */
-	@PostMapping("/save")
-	@ApiOperationSupport(order = 4)
-	@ApiOperation(value = "新增", notes = "传入auditPaths")
-	public R save(@Valid @RequestBody AuditPaths auditPaths) {
-		return R.status(auditPathsService.save(auditPaths));
-	}
 
-	/**
-	 * 修改 审批流配置主表
-	 */
-	@PostMapping("/update")
-	@ApiOperationSupport(order = 5)
-	@ApiOperation(value = "修改", notes = "传入auditPaths")
-	public R update(@Valid @RequestBody AuditPaths auditPaths) {
-		return R.status(auditPathsService.updateById(auditPaths));
-	}
 
-	/**
-	 * 新增或修改 审批流配置主表
-	 */
-	@PostMapping("/submit")
-	@ApiOperationSupport(order = 6)
-	@ApiOperation(value = "新增或修改", notes = "传入auditPaths")
-	public R submit(@Valid @RequestBody AuditPaths auditPaths) {
-		return R.status(auditPathsService.saveOrUpdate(auditPaths));
-	}
 
-	
 	/**
 	 * 删除 审批流配置主表
 	 */
 	@PostMapping("/remove")
-	@ApiOperationSupport(order = 8)
-	@ApiOperation(value = "删除", notes = "传入ids")
+	@ApiOperationSupport(order = 4)
+	@ApiOperation(value = "删除-审批流配置主表", notes = "传入ids")
 	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
 		return R.status(auditPathsService.removeByIds(Func.toLongList(ids)));
 	}
 
-	
+
 }

+ 7 - 0
blade-service/blade-check/src/main/java/com.blade.check/entity/AuditPaths.java

@@ -17,9 +17,12 @@
 package com.blade.check.entity;
 
 import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import java.time.LocalDateTime;
 import java.io.Serializable;
+import java.util.List;
+
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import io.swagger.annotations.ApiModel;
@@ -80,5 +83,9 @@ public class AuditPaths implements Serializable {
 		@ApiModelProperty(value = "备注")
 		private String remarks;
 
+		@ApiModelProperty(value = "审批流配置明细级别表")
+		@TableField(exist = false)
+		private List<AuditPathsLevels> auditPathsLevels;
+
 
 }

+ 3 - 0
blade-service/blade-check/src/main/java/com.blade.check/service/IAuditPathsService.java

@@ -38,4 +38,7 @@ public interface IAuditPathsService extends IService<AuditPaths> {
 	 */
 	IPage<AuditPathsVO> selectAuditPathsPage(IPage<AuditPathsVO> page, AuditPathsVO auditPaths);
 
+
+	AuditPaths modify(AuditPaths auditPaths);
+
 }

+ 41 - 0
blade-service/blade-check/src/main/java/com.blade.check/service/impl/AuditPathsServiceImpl.java

@@ -16,13 +16,19 @@
  */
 package com.blade.check.service.impl;
 
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.blade.check.entity.AuditPaths;
+import com.blade.check.entity.AuditPathsLevels;
 import com.blade.check.vo.AuditPathsVO;
 import com.blade.check.mapper.AuditPathsMapper;
 import com.blade.check.service.IAuditPathsService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.List;
 
 /**
  * 审批流配置主表 服务实现类
@@ -38,4 +44,39 @@ public class AuditPathsServiceImpl extends ServiceImpl<AuditPathsMapper, AuditPa
 		return page.setRecords(baseMapper.selectAuditPathsPage(page, auditPaths));
 	}
 
+	@Override
+	@Transactional
+	public AuditPaths modify(AuditPaths auditPaths)
+	{
+		List<AuditPathsLevels> auditPathsLevels = auditPaths.getAuditPathsLevels();
+		if(CollectionUtils.isEmpty(auditPathsLevels))
+		{
+			throw new SecurityException("无级次信息,请检查数据后提交");
+		}
+		//新增
+		if(auditPaths.getId()==null)
+		{
+
+		}
+		else
+		{
+
+		}
+
+		//校验最后一级审核个数
+		long lastCount = auditPathsLevels.stream().filter(e -> e.getIffinalItem().equals("T")).count();
+		if(lastCount>1)
+		{
+			throw new SecurityException("存在多个最后一级审核,请重新提交");
+		}
+		//校验每一级是否都有审批人
+		long nullCount = auditPathsLevels.stream().filter(e -> StringUtils.isBlank(e.getAuditUserId())).count();
+		if(nullCount>0)
+		{
+			throw new SecurityException("审核级次中存在未补充审批人或者角色");
+		}
+
+		return null;
+	}
+
 }