From 9a43e21c30a5d2db9c29f4ae23df9b39fc858a8a Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期二, 15 七月 2025 11:21:36 +0800
Subject: [PATCH] 111

---
 server/admin/src/main/java/com/doumee/api/business/IdentityInfoController.java              |   11 +++++
 server/services/src/main/java/com/doumee/dao/dto/AuditDTO.java                              |   25 ++++++++++++
 server/services/src/main/java/com/doumee/service/business/IdentityInfoService.java          |    4 ++
 server/services/src/main/java/com/doumee/service/business/impl/IdentityInfoServiceImpl.java |   38 ++++++++++++++++++
 4 files changed, 77 insertions(+), 1 deletions(-)

diff --git a/server/admin/src/main/java/com/doumee/api/business/IdentityInfoController.java b/server/admin/src/main/java/com/doumee/api/business/IdentityInfoController.java
index f827db9..283fc47 100644
--- a/server/admin/src/main/java/com/doumee/api/business/IdentityInfoController.java
+++ b/server/admin/src/main/java/com/doumee/api/business/IdentityInfoController.java
@@ -7,6 +7,7 @@
 import com.doumee.core.model.PageData;
 import com.doumee.core.model.PageWrap;
 import com.doumee.dao.business.model.IdentityInfo;
+import com.doumee.dao.dto.AuditDTO;
 import com.doumee.service.business.IdentityInfoService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -93,4 +94,14 @@
     public ApiResponse findById(@PathVariable Integer id) {
         return ApiResponse.success(identityInfoService.findById(id));
     }
+
+    @ApiOperation("瀹℃壒")
+    @PostMapping("/audit")
+    @RequiresPermissions("business:identityinfo:audit")
+    public ApiResponse audit(@RequestBody AuditDTO auditDTO) {
+        identityInfoService.audit(auditDTO);
+        return ApiResponse.success("鎿嶄綔鎴愬姛");
+    }
+
+
 }
diff --git a/server/services/src/main/java/com/doumee/dao/dto/AuditDTO.java b/server/services/src/main/java/com/doumee/dao/dto/AuditDTO.java
new file mode 100644
index 0000000..6223a8f
--- /dev/null
+++ b/server/services/src/main/java/com/doumee/dao/dto/AuditDTO.java
@@ -0,0 +1,25 @@
+package com.doumee.dao.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * Created by IntelliJ IDEA.
+ *
+ * @Author : Rk
+ * @create 2023/3/23 9:50
+ */
+@Data
+@ApiModel("瀹℃壒璇锋眰绫�")
+public class AuditDTO {
+
+    @ApiModelProperty(value = "涓婚敭")
+    private Integer id;
+
+    @ApiModelProperty(value = "瀹℃壒鐘舵��:0=閫氳繃;1=鎷掔粷;")
+    private Integer auditStatus;
+
+    @ApiModelProperty(value = "瀹℃壒鎻忚堪")
+    private String auditRemark;
+}
diff --git a/server/services/src/main/java/com/doumee/service/business/IdentityInfoService.java b/server/services/src/main/java/com/doumee/service/business/IdentityInfoService.java
index f5595ff..8734a61 100644
--- a/server/services/src/main/java/com/doumee/service/business/IdentityInfoService.java
+++ b/server/services/src/main/java/com/doumee/service/business/IdentityInfoService.java
@@ -3,6 +3,8 @@
 import com.doumee.core.model.PageData;
 import com.doumee.core.model.PageWrap;
 import com.doumee.dao.business.model.IdentityInfo;
+import com.doumee.dao.dto.AuditDTO;
+
 import java.util.List;
 
 /**
@@ -101,4 +103,6 @@
     void updateLocation(IdentityInfo identityInfo);
 
     List<IdentityInfo> findMemberList(IdentityInfo pageWrap);
+
+    void audit(AuditDTO auditDTO);
 }
diff --git a/server/services/src/main/java/com/doumee/service/business/impl/IdentityInfoServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/IdentityInfoServiceImpl.java
index a23d9d5..510ccc2 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/IdentityInfoServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/IdentityInfoServiceImpl.java
@@ -6,6 +6,7 @@
 import com.doumee.core.constants.Constants;
 import com.doumee.core.constants.ResponseStatus;
 import com.doumee.core.exception.BusinessException;
+import com.doumee.core.model.LoginUserInfo;
 import com.doumee.core.model.PageData;
 import com.doumee.core.model.PageWrap;
 import com.doumee.core.utils.Utils;
@@ -13,6 +14,7 @@
 import com.doumee.dao.business.MemberMapper;
 import com.doumee.dao.business.model.IdentityInfo;
 import com.doumee.dao.business.model.Member;
+import com.doumee.dao.dto.AuditDTO;
 import com.doumee.dao.system.model.SystemUser;
 import com.doumee.service.business.IdentityInfoService;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -21,9 +23,12 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.github.yulichang.wrapper.MPJLambdaWrapper;
 import io.swagger.annotations.ApiModelProperty;
+import nonapi.io.github.classgraph.json.Id;
 import org.apache.commons.lang3.StringUtils;
+import org.apache.shiro.SecurityUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.CollectionUtils;
 
 import java.util.ArrayList;
@@ -367,8 +372,39 @@
     }
 
 
-    public void audit(){
+    @Override
+    @Transactional(rollbackFor = {BusinessException.class,Exception.class})
+    public void audit(AuditDTO auditDTO){
+        if(Objects.isNull(auditDTO)
+        || Objects.isNull(auditDTO.getId())
+        || Objects.isNull(auditDTO.getAuditStatus())){
+            throw new BusinessException(ResponseStatus.BAD_REQUEST);
+        }
+        LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+        IdentityInfo identityInfo = identityInfoMapper.selectById(auditDTO.getId());
+        if(Objects.nonNull(identityInfo)){
+            throw new BusinessException(ResponseStatus.DATA_EMPTY);
+        }
+        if(!Constants.equalsInteger(identityInfo.getAuditStatus(),Constants.ONE)){
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"宸插鎵癸紝璇峰嬁閲嶅鎿嶄綔");
+        }
+        identityInfoMapper.update(new UpdateWrapper<IdentityInfo>().lambda()
+                .set(IdentityInfo::getAuditStatus,Constants.equalsInteger(auditDTO.getAuditStatus(),Constants.ZERO)?Constants.TWO:Constants.THREE)
+                .set(StringUtils.isNotBlank(auditDTO.getAuditRemark()),IdentityInfo::getAuditRemark,auditDTO.getAuditRemark())
+                .set(IdentityInfo::getAuditTime,"now()")
+                .set(IdentityInfo::getUpdateUser,user.getId())
+                .set(IdentityInfo::getUpdateTime,"now()")
+                .eq(IdentityInfo::getId,identityInfo.getId())
+        );
 
+        memberMapper.update(new UpdateWrapper<Member>().lambda()
+                .set(Member::getUpdateUser,user.getId())
+                .set(Member::getUpdateTime,"now()")
+                .set(Constants.equalsInteger(identityInfo.getType(),Constants.ZERO),Member::getWorkerIdentity,Constants.equalsInteger(auditDTO.getAuditStatus(),Constants.ZERO)?Constants.TWO:Constants.THREE)
+                .set(Constants.equalsInteger(identityInfo.getType(),Constants.ONE),Member::getDriverIdentity,Constants.equalsInteger(auditDTO.getAuditStatus(),Constants.ZERO)?Constants.TWO:Constants.THREE)
+                .set(Constants.equalsInteger(identityInfo.getType(),Constants.TWO),Member::getChefIdentity,Constants.equalsInteger(auditDTO.getAuditStatus(),Constants.ZERO)?Constants.TWO:Constants.THREE)
+                .eq(Member::getId,identityInfo.getMemberId())
+        );
 
     }
 

--
Gitblit v1.9.3