From 973c131193c4dd3e4ed42518177a996a901037ec Mon Sep 17 00:00:00 2001
From: lishuai <260038442@qq.com>
Date: 星期五, 15 十二月 2023 17:57:01 +0800
Subject: [PATCH] 内部员工门禁组
---
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/ProblemLogServiceImpl.java | 86 +++++++++++++++++++++++++++++++++++++++----
1 files changed, 78 insertions(+), 8 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 f8397d5..98888bc 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,31 +1,50 @@
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瀹炵幇
* @author 姹熻箘韫�
- * @date 2023/11/23 18:16
+ * @date 2023/11/30 15:33
*/
@Service
public class ProblemLogServiceImpl implements ProblemLogService {
@Autowired
private ProblemLogMapper problemLogMapper;
+
+ @Autowired
+ private MemberMapper memberMapper;
+
+ @Autowired
+ private CompanyMapper companyMapper;
@Override
public Integer create(ProblemLog problemLog) {
@@ -83,7 +102,7 @@
QueryWrapper<ProblemLog> wrapper = new QueryWrapper<>(problemLog);
return problemLogMapper.selectList(wrapper);
}
-
+
@Override
public PageData<ProblemLog> findPage(PageWrap<ProblemLog> pageWrap) {
IPage<ProblemLog> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
@@ -127,13 +146,23 @@
if (pageWrap.getModel().getContent() != null) {
queryWrapper.lambda().eq(ProblemLog::getContent, pageWrap.getModel().getContent());
}
- for(PageWrap.SortData sortData: pageWrap.getSorts()) {
- if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
- queryWrapper.orderByDesc(sortData.getProperty());
- } else {
- queryWrapper.orderByAsc(sortData.getProperty());
- }
+ if (pageWrap.getModel().getName() != null) {
+ queryWrapper.lambda().eq(ProblemLog::getName, pageWrap.getModel().getName());
}
+ if (pageWrap.getModel().getPhone() != null) {
+ queryWrapper.lambda().eq(ProblemLog::getPhone, pageWrap.getModel().getPhone());
+ }
+ if (pageWrap.getModel().getCompanyId() != null) {
+ queryWrapper.lambda().eq(ProblemLog::getCompanyId, pageWrap.getModel().getCompanyId());
+ }
+ if (pageWrap.getModel().getCompanyName() != null) {
+ queryWrapper.lambda().eq(ProblemLog::getCompanyName, pageWrap.getModel().getCompanyName());
+ }
+ if (pageWrap.getModel().getOpenid() != null) {
+ queryWrapper.lambda().eq(ProblemLog::getOpenid, pageWrap.getModel().getOpenid());
+ }
+ queryWrapper.select("problem_log.*,(select type from member where member.openid = problem_log.openid) as type");
+ queryWrapper.orderByAsc("problem_log.createDate");
return PageData.from(problemLogMapper.selectPage(page, queryWrapper));
}
@@ -142,4 +171,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