From 56dfe0d4bf81262622a1919cceb2b039fd356209 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期二, 03 九月 2024 16:52:49 +0800
Subject: [PATCH] 代码提交 bug解决

---
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlAuditRecordServiceImpl.java |  208 +++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 206 insertions(+), 2 deletions(-)

diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlAuditRecordServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlAuditRecordServiceImpl.java
index 1cdf376..5610585 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlAuditRecordServiceImpl.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlAuditRecordServiceImpl.java
@@ -1,11 +1,25 @@
 package com.ruoyi.management.service.impl;
 
-import com.ruoyi.management.domain.SlAuditRecord;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.ruoyi.common.core.domain.R;
+import com.ruoyi.common.security.utils.SecurityUtils;
+import com.ruoyi.management.domain.*;
 
-import com.ruoyi.management.mapper.SlAuditRecordMapper;
+import com.ruoyi.management.domain.dto.AuditRecordDTO;
+import com.ruoyi.management.domain.dto.AuditRecordQuery;
+import com.ruoyi.management.mapper.*;
 import com.ruoyi.management.service.SlAuditRecordService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.system.api.domain.SysUser;
+import com.ruoyi.system.api.feignClient.SysUserClient;
 import org.springframework.stereotype.Service;
+import org.springframework.util.StringUtils;
+
+import javax.annotation.Resource;
+import java.util.Date;
+import java.util.List;
 
 /**
  * <p>
@@ -18,4 +32,194 @@
 @Service
 public class SlAuditRecordServiceImpl extends ServiceImpl<SlAuditRecordMapper, SlAuditRecord> implements SlAuditRecordService {
 
+    @Resource
+    private SlAuditMapper slAuditMapper;
+
+    @Resource
+    private SlVolumeProductionRkglMapper slVolumeProductionRkglMapper;
+
+    @Resource
+    private SlVolumeProductionCkglMapper slVolumeProductionCKglMapper;
+
+    @Resource
+    private SlVolumeProductionZyglMapper slVolumeProductionZyglMapper;
+
+    @Resource
+    private SysUserClient sysUserClient;
+    
+    @Override
+    public List<SlAuditRecord> getSlAuditRecord(AuditRecordQuery auditRecordQuery) {
+        LambdaQueryWrapper<SlAuditRecord> wrapper= Wrappers.lambdaQuery();
+        wrapper.eq(SlAuditRecord::getAuditId,auditRecordQuery.getAuditId());
+        wrapper.eq( SlAuditRecord::getDelFlag,0);
+        wrapper.orderByAsc(SlAuditRecord::getType);
+        List<SlAuditRecord> page1 = this.list(wrapper);
+        for (int i = 0; i < page1.size(); i++) {
+            page1.get(i).setIsPlatform(0);
+            SlAudit slAudit = slAuditMapper.selectById(page1.get(i).getAuditId());
+            if (slAudit!=null){
+                String shenhId = slAudit.getAuditUserId();
+                if (StringUtils.hasLength(shenhId)){
+                    String[] split = shenhId.split(",");
+                    // 取最后一个
+                    shenhId = split[split.length - 1];
+                    SysUser data = sysUserClient.getSysUser(Long.valueOf(shenhId)).getData();
+                    if (data!=null){
+                        // 判断当前审核人是不是平台管理员
+                        if (data.getUserType().equals("00")){
+                            page1.get(i).setIsPlatform(1);
+                        }
+                    }
+                }
+            }
+            if (page1.get(i).getState() == 3){
+                assert slAudit != null;
+                page1.get(i).setRefuseReason(slAudit.getCause());
+            }
+        }
+
+        return page1;
+    }
+
+    @Override
+    public void updSlAuditRecord(AuditRecordDTO auditRecordDTO) {
+        SlAudit slAudit = slAuditMapper.selectById(auditRecordDTO.getAuditId());
+        SlAuditRecord byId = this.getOne(new QueryWrapper<SlAuditRecord>()
+                .eq("type", auditRecordDTO.getType())
+                .eq("audit_id", auditRecordDTO.getAuditId()));
+        String auditUserId = slAudit.getAuditUserId();
+        if (StringUtils.hasLength(auditUserId)){
+            slAudit.setAuditUserId(slAudit.getAuditUserId()+","+SecurityUtils.getUserId());
+        }else{
+            slAudit.setAuditUserId(SecurityUtils.getUserId()+"");
+        }
+        Long userid = SecurityUtils.getUserId();
+        SysUser data = sysUserClient.getSysUser(userid).getData();
+        if (auditRecordDTO.getState()==2){
+            byId.setShenhName(data.getNickName());
+            byId.setShenhTime(new Date());
+            byId.setState(auditRecordDTO.getState());
+            this.updateById(byId);
+            if (slAudit.getState()==1){
+                slAudit.setState(2);
+                LambdaQueryWrapper<SlAuditRecord> wrapper= Wrappers.lambdaQuery();
+                wrapper.eq(SlAuditRecord::getAuditId,auditRecordDTO.getAuditId());
+                wrapper.eq(SlAuditRecord::getType,2);
+                wrapper.eq( SlAuditRecord::getDelFlag,0);
+                SlAuditRecord one = this.getOne(wrapper);
+                slAudit.setShenhId(one.getShenhId());
+                slAuditMapper.updateById(slAudit);
+                if (slAudit.getType()==1){
+                    SlVolumeProductionRkgl slVolumeProductionRkgl = slVolumeProductionRkglMapper.selectById(slAudit.getRkId());
+                    slVolumeProductionRkgl.setAuditStatus(2);
+                    slVolumeProductionRkgl.setReasonsRefusal(auditRecordDTO.getCause());
+                    slVolumeProductionRkglMapper.updateById(slVolumeProductionRkgl);
+                }
+                if (slAudit.getType()==2){
+                    SlVolumeProductionCkgl slVolumeProductionCkgl = slVolumeProductionCKglMapper.selectById(slAudit.getRkId());
+                    slVolumeProductionCkgl.setAuditStatus(2);
+                    slVolumeProductionCkgl.setReasonsRefusal(auditRecordDTO.getCause());
+                    slVolumeProductionCKglMapper.updateById(slVolumeProductionCkgl);
+                }
+                if (slAudit.getType()==3){
+                    SlVolumeProductionZygl slVolumeProductionZygl = slVolumeProductionZyglMapper.selectById(slAudit.getRkId());
+                    slVolumeProductionZygl.setAuditStatus(2);
+                    slVolumeProductionZygl.setReasonsRefusal(auditRecordDTO.getCause());
+                    slVolumeProductionZyglMapper.updateById(slVolumeProductionZygl);
+                }
+
+            } else if (slAudit.getState()==2){
+                slAudit.setState(3);
+                LambdaQueryWrapper<SlAuditRecord> wrapper= Wrappers.lambdaQuery();
+                wrapper.eq(SlAuditRecord::getAuditId,auditRecordDTO.getAuditId());
+                wrapper.eq(SlAuditRecord::getType,3);
+                wrapper.eq(SlAuditRecord::getDelFlag,0);
+                SlAuditRecord one = this.getOne(wrapper);
+                slAudit.setShenhId(one.getShenhId());
+                slAuditMapper.updateById(slAudit);
+                if (slAudit.getType()==1){
+                    SlVolumeProductionRkgl slVolumeProductionRkgl = slVolumeProductionRkglMapper.selectById(slAudit.getRkId());
+                    slVolumeProductionRkgl.setAuditStatus(3);
+                    slVolumeProductionRkgl.setReasonsRefusal(auditRecordDTO.getCause());
+                    slVolumeProductionRkglMapper.updateById(slVolumeProductionRkgl);
+                }
+                if (slAudit.getType()==2){
+                    SlVolumeProductionCkgl slVolumeProductionCkgl = slVolumeProductionCKglMapper.selectById(slAudit.getRkId());
+                    slVolumeProductionCkgl.setAuditStatus(3);
+                    slVolumeProductionCkgl.setReasonsRefusal(auditRecordDTO.getCause());
+                    slVolumeProductionCKglMapper.updateById(slVolumeProductionCkgl);
+                }
+                if (slAudit.getType()==3){
+                    SlVolumeProductionZygl slVolumeProductionZygl = slVolumeProductionZyglMapper.selectById(slAudit.getRkId());
+                    slVolumeProductionZygl.setAuditStatus(3);
+                    slVolumeProductionZygl.setReasonsRefusal(auditRecordDTO.getCause());
+                    slVolumeProductionZyglMapper.updateById(slVolumeProductionZygl);
+                }
+
+            }else if (slAudit.getState()==3){
+                slAudit.setState(4);
+                slAuditMapper.updateById(slAudit);
+                if (slAudit.getType()==1){
+                    SlVolumeProductionRkgl slVolumeProductionRkgl = slVolumeProductionRkglMapper.selectById(slAudit.getRkId());
+                    slVolumeProductionRkgl.setAuditStatus(4);
+                    slVolumeProductionRkgl.setPresentState(3);
+                    slVolumeProductionRkgl.setReasonsRefusal(auditRecordDTO.getCause());
+                    slVolumeProductionRkglMapper.updateById(slVolumeProductionRkgl);
+                }
+                if (slAudit.getType()==2){
+                    SlVolumeProductionCkgl slVolumeProductionCkgl = slVolumeProductionCKglMapper.selectById(slAudit.getRkId());
+                    slVolumeProductionCkgl.setAuditStatus(4);
+                    slVolumeProductionCkgl.setPresentState(3);
+                    slVolumeProductionCkgl.setReasonsRefusal(auditRecordDTO.getCause());
+                    slVolumeProductionCKglMapper.updateById(slVolumeProductionCkgl);
+                }
+                if (slAudit.getType()==3){
+                    SlVolumeProductionZygl slVolumeProductionZygl = slVolumeProductionZyglMapper.selectById(slAudit.getRkId());
+                    slVolumeProductionZygl.setAuditStatus(4);
+                    slVolumeProductionZygl.setPresentState(3);
+                    slVolumeProductionZygl.setReasonsRefusal(auditRecordDTO.getCause());
+                    slVolumeProductionZyglMapper.updateById(slVolumeProductionZygl);
+                }
+
+            }
+
+        }else if (auditRecordDTO.getState()==3){
+            byId.setShenhName(data.getNickName());
+            byId.setShenhTime(new Date());
+            byId.setState(auditRecordDTO.getState());
+            this.updateById(byId);
+            LambdaQueryWrapper<SlAuditRecord> wrapper= Wrappers.lambdaQuery();
+            wrapper.eq(SlAuditRecord::getAuditId,auditRecordDTO.getAuditId());
+            wrapper.eq(SlAuditRecord::getType,3);
+            wrapper.eq(SlAuditRecord::getDelFlag,0);
+            SlAuditRecord one = this.getOne(wrapper);
+            slAudit.setShenhId(one.getShenhId());
+            slAudit.setCause(auditRecordDTO.getCause());
+            slAudit.setState(5);
+            slAuditMapper.updateById(slAudit);
+            if (slAudit.getType()==1){
+                SlVolumeProductionRkgl slVolumeProductionRkgl = slVolumeProductionRkglMapper.selectById(slAudit.getRkId());
+                slVolumeProductionRkgl.setAuditStatus(5);
+                slVolumeProductionRkgl.setPresentState(2);
+                slVolumeProductionRkgl.setReasonsRefusal(auditRecordDTO.getCause());
+                slVolumeProductionRkglMapper.updateById(slVolumeProductionRkgl);
+            }
+            if (slAudit.getType()==2){
+                SlVolumeProductionCkgl slVolumeProductionCkgl = slVolumeProductionCKglMapper.selectById(slAudit.getRkId());
+                slVolumeProductionCkgl.setAuditStatus(5);
+                slVolumeProductionCkgl.setPresentState(2);
+                slVolumeProductionCkgl.setReasonsRefusal(auditRecordDTO.getCause());
+                slVolumeProductionCKglMapper.updateById(slVolumeProductionCkgl);
+            }
+            if (slAudit.getType()==3){
+                SlVolumeProductionZygl slVolumeProductionZygl = slVolumeProductionZyglMapper.selectById(slAudit.getRkId());
+                slVolumeProductionZygl.setAuditStatus(5);
+                slVolumeProductionZygl.setPresentState(2);
+                slVolumeProductionZygl.setReasonsRefusal(auditRecordDTO.getCause());
+                slVolumeProductionZyglMapper.updateById(slVolumeProductionZygl);
+            }
+
+        }
+
+    }
 }

--
Gitblit v1.7.1