From fc17a98e0bd076bd69d2418ec7c5d61e8a54f8bb Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期四, 07 十二月 2023 15:24:41 +0800
Subject: [PATCH] 11111

---
 server/dmvisit_service/src/main/java/com/doumee/service/business/impl/ProblemLogServiceImpl.java |   60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 60 insertions(+), 0 deletions(-)

diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/ProblemLogServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/ProblemLogServiceImpl.java
index e5a37f1..1d303c3 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/ProblemLogServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/ProblemLogServiceImpl.java
@@ -1,20 +1,33 @@
 package com.doumee.service.business.impl;
 
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.exception.BusinessException;
 import com.doumee.core.model.PageData;
 import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Constants;
 import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.CompanyMapper;
+import com.doumee.dao.business.MemberMapper;
 import com.doumee.dao.business.ProblemLogMapper;
+import com.doumee.dao.business.model.Company;
+import com.doumee.dao.business.model.Member;
 import com.doumee.dao.business.model.ProblemLog;
+import com.doumee.dao.web.reqeust.FinishAnswerDTO;
 import com.doumee.service.business.ProblemLogService;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.checkerframework.checker.units.qual.A;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
 
+import java.util.Date;
 import java.util.List;
+import java.util.Objects;
 
 /**
  * 璁垮绛旈璁板綍琛⊿ervice瀹炵幇
@@ -26,6 +39,12 @@
 
     @Autowired
     private ProblemLogMapper problemLogMapper;
+
+    @Autowired
+    private MemberMapper memberMapper;
+
+    @Autowired
+    private CompanyMapper companyMapper;
 
     @Override
     public Integer create(ProblemLog problemLog) {
@@ -157,4 +176,45 @@
         QueryWrapper<ProblemLog> wrapper = new QueryWrapper<>(problemLog);
         return problemLogMapper.selectCount(wrapper);
     }
+
+
+    /**
+     * 淇濆瓨绛旈璁板綍
+     * @param finishAnswerDTO
+     * @return
+     */
+    @Override
+    public Integer finishAnswer(FinishAnswerDTO finishAnswerDTO){
+        ProblemLog problemLog = new ProblemLog();
+        BeanUtils.copyProperties(finishAnswerDTO,problemLog);
+        problemLog.setCreateDate(new Date());
+        problemLog.setIsdeleted(Constants.ZERO);
+        problemLog.setStatus(Constants.ZERO);
+        if(finishAnswerDTO.getUseType().equals(Constants.ZERO)&&StringUtils.isNotBlank(finishAnswerDTO.getUserId())){
+            Member member = memberMapper.selectById(finishAnswerDTO.getUserId());
+            if(Objects.isNull(member)){
+                throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌鍔冲姟浜哄憳");
+            }
+            if(!member.getType().equals(Constants.memberType.lw_visitor)){
+                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"闈炲姵鍔′汉鍛樼被鍨嬶紝绛旈澶辫触");
+            }
+            if(!member.getStatus().equals(Constants.ZERO)){
+                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝璐﹀彿宸茬粡" + (member.getStatus().equals(Constants.ONE)?"绂佺敤":"鎷夐粦/鍒犻櫎") );
+            }
+            problemLog.setName(member.getName());
+            problemLog.setPhone(member.getPhone());
+            problemLog.setCompanyId(member.getCompanyId());
+            Company company = companyMapper.selectById(member.getCompanyId());
+            if(Objects.isNull(company)){
+                throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌鍔冲姟浜哄憳鍏徃");
+            }
+            problemLog.setCompanyName(company.getName());
+        }
+        this.problemLogMapper.insert(problemLog);
+        return problemLog.getId();
+    }
+
+
+
+
 }

--
Gitblit v1.9.3