Преглед изворни кода

新增测试业务流程演示

hubin пре 1 година
родитељ
комит
cd2cd8ec5a

+ 8 - 0
src/main/java/com/aizuda/boot/config/BlockHandlerInterceptor.java

@@ -1,9 +1,13 @@
 package com.aizuda.boot.config;
 
+import com.baomidou.kisso.SSOHelper;
+import com.baomidou.kisso.security.token.SSOToken;
 import jakarta.servlet.http.HttpServletRequest;
 import jakarta.servlet.http.HttpServletResponse;
 import org.springframework.web.servlet.HandlerInterceptor;
 
+import java.util.Objects;
+
 /**
  * 方法阻断拦截器,禁止演示非法操作
  *
@@ -14,6 +18,10 @@ public class BlockHandlerInterceptor implements HandlerInterceptor {
 
     @Override
     public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
+        SSOToken ssoToken = SSOHelper.getSSOToken(request);
+        if (null != ssoToken && Objects.equals("1", ssoToken.getId())) {
+            return true;
+        }
         String uri = request.getRequestURI();
         if (uri.contains("/create") || uri.contains("/update")
                 || uri.contains("/delete") || uri.contains("/reset-password")

+ 7 - 2
src/main/java/com/aizuda/boot/modules/flw/service/impl/FlwProcessConfigureServiceImpl.java

@@ -8,6 +8,7 @@ import com.aizuda.boot.modules.flw.service.IFlwProcessConfigureService;
 import com.aizuda.service.service.BaseServiceImpl;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import org.apache.commons.collections.CollectionUtils;
 import org.springframework.stereotype.Service;
 
 import java.util.List;
@@ -57,7 +58,11 @@ public class FlwProcessConfigureServiceImpl extends BaseServiceImpl<FlwProcessCo
 
     @Override
     public void updateRelation(List<FlwCategorySortDTO> dtoList) {
-        dtoList.forEach(t -> lambdaUpdate().set(FlwProcessConfigure::getCategoryId, t.getCategoryId())
-                .in(FlwProcessConfigure::getProcessId, t.getProcessIds()).update());
+        dtoList.forEach(t -> {
+            if (CollectionUtils.isNotEmpty(t.getProcessIds())) {
+                lambdaUpdate().set(FlwProcessConfigure::getCategoryId, t.getCategoryId())
+                        .in(FlwProcessConfigure::getProcessId, t.getProcessIds()).update();
+            }
+        });
     }
 }

+ 67 - 0
src/main/java/com/aizuda/boot/modules/test/controller/TestPurchaseOrderController.java

@@ -0,0 +1,67 @@
+package com.aizuda.boot.modules.test.controller;
+
+import com.aizuda.core.api.ApiController;
+import com.aizuda.core.api.PageParam;
+import com.aizuda.core.validation.Create;
+import com.aizuda.core.validation.Update;
+import com.aizuda.boot.modules.test.entity.TestPurchaseOrder;
+import com.aizuda.boot.modules.test.service.ITestPurchaseOrderService;
+import com.baomidou.kisso.annotation.Permission;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import lombok.AllArgsConstructor;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import jakarta.validation.constraints.NotEmpty;
+import java.util.List;
+
+/**
+ * 测试采购单 前端控制器
+ *
+ * @author hubin
+ * @since 2024-06-10
+ */
+@Tag(name = "测试采购单")
+@RestController
+@AllArgsConstructor
+@RequestMapping("/v1/purchase-order")
+public class TestPurchaseOrderController extends ApiController {
+    private ITestPurchaseOrderService testPurchaseOrderService;
+
+    @Operation(summary = "分页列表")
+    @Permission("sys:testPurchaseOrder:page")
+    @PostMapping("/page")
+    public Page<TestPurchaseOrder> getPage(@RequestBody PageParam<TestPurchaseOrder> dto) {
+        return testPurchaseOrderService.page(dto.page(), dto.getData());
+    }
+
+    @Operation(summary = "查询 id 信息")
+    @Permission("sys:testPurchaseOrder:get")
+    @GetMapping("/get")
+    public TestPurchaseOrder get(@RequestParam Long id) {
+        return testPurchaseOrderService.getById(id);
+    }
+
+    @Operation(summary = "根据 id 修改信息")
+    @Permission("sys:testPurchaseOrder:update")
+    @PostMapping("/update")
+    public boolean update(@Validated(Update.class) @RequestBody TestPurchaseOrder testPurchaseOrder) {
+        return testPurchaseOrderService.updateById(testPurchaseOrder);
+    }
+
+    @Operation(summary = "创建添加")
+    @Permission("sys:testPurchaseOrder:create")
+    @PostMapping("/create")
+    public boolean create(@Validated(Create.class) @RequestBody TestPurchaseOrder testPurchaseOrder) {
+        return testPurchaseOrderService.save(testPurchaseOrder);
+    }
+
+    @Operation(summary = "根据 ids 删除")
+    @Permission("sys:testPurchaseOrder:delete")
+    @PostMapping("/delete")
+    public boolean delete(@NotEmpty @RequestBody List<Long> ids) {
+        return testPurchaseOrderService.removeByIds(ids);
+    }
+}

+ 45 - 0
src/main/java/com/aizuda/boot/modules/test/entity/TestPurchaseOrder.java

@@ -0,0 +1,45 @@
+package com.aizuda.boot.modules.test.entity;
+
+import com.aizuda.core.bean.BaseEntity;
+import com.aizuda.core.validation.Create;
+import com.baomidou.mybatisplus.annotation.TableName;
+import jakarta.validation.constraints.PositiveOrZero;
+import jakarta.validation.constraints.Size;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Setter;
+import lombok.Getter;
+
+/**
+ * 测试采购单
+ *
+ * @author hubin
+ * @since 2024-06-10
+ */
+@Getter
+@Setter
+@Schema(name = "TestPurchaseOrder", description = "测试采购单")
+@TableName("test_purchase_order")
+public class TestPurchaseOrder extends BaseEntity {
+
+	@Schema(description = "标题")
+	@Size(max = 255)
+	private String title;
+
+	@Schema(description = "内容")
+	@Size(max = 255)
+	private String content;
+
+	@Schema(description = "审批状态 0,待审批 1,已拒绝 2,已通过")
+	@PositiveOrZero
+	private Short status;
+
+	@Schema(description = "流程实例ID")
+	@PositiveOrZero
+	private Long flwInstanceId;
+
+	@Schema(description = "流程审批评论")
+	@Size(max = 255)
+	private String flwComment;
+
+}

+ 16 - 0
src/main/java/com/aizuda/boot/modules/test/mapper/TestPurchaseOrderMapper.java

@@ -0,0 +1,16 @@
+package com.aizuda.boot.modules.test.mapper;
+
+import com.aizuda.boot.modules.test.entity.TestPurchaseOrder;
+import com.aizuda.service.mapper.CrudMapper;
+
+/**
+ * <p>
+ * 测试采购单 Mapper 接口
+ * </p>
+ *
+ * @author hubin
+ * @since 2024-06-10
+ */
+public interface TestPurchaseOrderMapper extends CrudMapper<TestPurchaseOrder> {
+
+}

+ 17 - 0
src/main/java/com/aizuda/boot/modules/test/service/ITestPurchaseOrderService.java

@@ -0,0 +1,17 @@
+package com.aizuda.boot.modules.test.service;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.aizuda.service.service.IBaseService;
+import com.aizuda.boot.modules.test.entity.TestPurchaseOrder;
+
+/**
+ * 测试采购单 服务类
+ *
+ * @author hubin
+ * @since 2024-06-10
+ */
+public interface ITestPurchaseOrderService extends IBaseService<TestPurchaseOrder> {
+
+    Page<TestPurchaseOrder> page(Page<TestPurchaseOrder> page, TestPurchaseOrder testPurchaseOrder);
+
+}

+ 33 - 0
src/main/java/com/aizuda/boot/modules/test/service/impl/TestPurchaseOrderServiceImpl.java

@@ -0,0 +1,33 @@
+package com.aizuda.boot.modules.test.service.impl;
+
+import com.aizuda.core.api.ApiAssert;
+import com.aizuda.boot.modules.test.entity.TestPurchaseOrder;
+import com.aizuda.boot.modules.test.mapper.TestPurchaseOrderMapper;
+import com.aizuda.boot.modules.test.service.ITestPurchaseOrderService;
+import com.aizuda.service.service.BaseServiceImpl;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.springframework.stereotype.Service;
+
+/**
+ * 测试采购单 服务实现类
+ *
+ * @author hubin
+ * @since 2024-06-10
+ */
+@Service
+public class TestPurchaseOrderServiceImpl extends BaseServiceImpl<TestPurchaseOrderMapper, TestPurchaseOrder> implements ITestPurchaseOrderService {
+
+    @Override
+    public Page<TestPurchaseOrder> page(Page<TestPurchaseOrder> page, TestPurchaseOrder testPurchaseOrder) {
+        LambdaQueryWrapper<TestPurchaseOrder> lqw = Wrappers.lambdaQuery(testPurchaseOrder);
+        return super.page(page, lqw);
+    }
+
+    @Override
+    public boolean updateById(TestPurchaseOrder testPurchaseOrder) {
+        ApiAssert.fail(null == testPurchaseOrder.getId(), "主键不存在无法更新");
+        return super.updateById(testPurchaseOrder);
+    }
+}