From a5a73bf1b545d38f6a82a811295a3deb1341e53a Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期二, 21 五月 2024 09:48:31 +0800
Subject: [PATCH] 最新版本

---
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerParamServiceImpl.java |  117 +++++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 107 insertions(+), 10 deletions(-)

diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerParamServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerParamServiceImpl.java
index a096272..437393f 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerParamServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerParamServiceImpl.java
@@ -1,19 +1,30 @@
 package com.doumee.service.business.impl;
 
+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.Constants;
 import com.doumee.core.utils.Utils;
 import com.doumee.dao.business.HiddenDangerParamMapper;
+import com.doumee.dao.business.MemberMapper;
+import com.doumee.dao.business.model.CarDriver;
 import com.doumee.dao.business.model.HiddenDangerParam;
+import com.doumee.dao.business.model.Member;
 import com.doumee.service.business.HiddenDangerParamService;
 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 io.swagger.models.auth.In;
+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.util.CollectionUtils;
 
+import java.util.Date;
 import java.util.List;
 
 /**
@@ -23,19 +34,62 @@
  */
 @Service
 public class HiddenDangerParamServiceImpl implements HiddenDangerParamService {
-
     @Autowired
     private HiddenDangerParamMapper hiddenDangerParamMapper;
+    @Autowired
+    private MemberMapper memberMapper;
 
     @Override
-    public Integer create(HiddenDangerParam hiddenDangerParam) {
-        hiddenDangerParamMapper.insert(hiddenDangerParam);
-        return hiddenDangerParam.getId();
+    public Integer create(HiddenDangerParam model) {
+        LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+        if(loginUserInfo == null){
+            loginUserInfo = model.getLoginUserInfo();
+        }
+        if(Constants.equalsInteger(model.getType(),Constants.ZERO)){
+            //濡傛灉鏄尯鍩熼厤缃�
+            List<Integer> ids = Constants.getIntegerListByStrs(model.getMemberIds());
+            if(ids==null || ids.size() ==0){
+                throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝瀹夊叏鍛樹俊鎭笉姝g‘锛岃鎸夎姹傚~鍐欏唴瀹癸紒");
+            }
+           List<Member>  memberList = memberMapper.selectList(new QueryWrapper<Member>().lambda()
+                    .eq(Member::getType,Constants.TWO)
+                    .eq(Member::getIsdeleted,Constants.ZERO));
+            if(memberList == null || memberList.size() == 0 || memberList.size() != ids.size() ){
+                throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝璇烽�夋嫨姝g‘鐨勫畨鍏ㄥ憳淇℃伅锛�");
+            }
+            String names = null;
+            String idss = null;
+            for(Member member : memberList){
+                if(StringUtils.isNotBlank(names)){
+                    names += ",";
+                }
+                if(StringUtils.isNotBlank(idss)){
+                    idss += ",";
+                }
+                names += member.getName();
+                names += member.getId();
+            }
+            model.setMemberNames(names);
+            model.setMemberIds(idss);
+        }
+        model.setType(Constants.formatIntegerNum(model.getType()));
+        model.setCreateDate(new Date());
+        model.setCreator(loginUserInfo.getId());
+        model.setEditDate(new Date());
+        model.setEditor(loginUserInfo.getId());
+        model.setStatus(Constants.ZERO);
+        hiddenDangerParamMapper.insert(model);
+        return model.getId();
     }
 
     @Override
-    public void deleteById(Integer id) {
-        hiddenDangerParamMapper.deleteById(id);
+    public void deleteById(Integer id, LoginUserInfo userInfo) {
+        HiddenDangerParam  model = new HiddenDangerParam();
+        model.setEditDate(new Date());
+        model.setEditor(userInfo.getId());
+        model.setId(id);
+        model.setIsdeleted(Constants.ONE);
+        hiddenDangerParamMapper.updateById(model);
     }
 
     @Override
@@ -45,16 +99,57 @@
     }
 
     @Override
-    public void deleteByIdInBatch(List<Integer> ids) {
+    public void deleteByIdInBatch(List<Integer> ids, LoginUserInfo userInfo) {
         if (CollectionUtils.isEmpty(ids)) {
             return;
         }
-        hiddenDangerParamMapper.deleteBatchIds(ids);
+        for(Integer id :ids){
+            deleteById(id,userInfo);
+        }
     }
 
     @Override
-    public void updateById(HiddenDangerParam hiddenDangerParam) {
-        hiddenDangerParamMapper.updateById(hiddenDangerParam);
+    public void updateById(HiddenDangerParam model) {
+        LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+        if(loginUserInfo == null){
+            loginUserInfo = model.getLoginUserInfo();
+        }
+        HiddenDangerParam hiddenDangerParam = hiddenDangerParamMapper.selectById(model.getId());
+        if(hiddenDangerParam == null || Constants.equalsObject(hiddenDangerParam.getIsdeleted(),Constants.ONE)){
+            throw  new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝璇ラ厤缃俊鎭笉瀛樺湪锛岃杩斿洖鍒锋柊椤甸潰閲嶈瘯锛�");
+        }
+        if(Constants.equalsInteger(hiddenDangerParam.getType(),Constants.ZERO)){
+            //濡傛灉鏄尯鍩熼厤缃�,鏍¢獙瀹夊叏鍛樹俊鎭槸鍚︽纭�
+            List<Integer> ids = Constants.getIntegerListByStrs(model.getMemberIds());
+            if(ids==null || ids.size() ==0){
+                throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝瀹夊叏鍛樹俊鎭笉姝g‘锛岃鎸夎姹傚~鍐欏唴瀹癸紒");
+            }
+            List<Member>  memberList = memberMapper.selectList(new QueryWrapper<Member>().lambda()
+                    .eq(Member::getType,Constants.TWO)
+                    .eq(Member::getIsdeleted,Constants.ZERO));
+            if(memberList == null || memberList.size() == 0 || memberList.size() != ids.size() ){
+                throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝璇烽�夋嫨姝g‘鐨勫畨鍏ㄥ憳淇℃伅锛�");
+            }
+            String names = null;
+            String idss = null;
+            for(Member member : memberList){
+                if(StringUtils.isNotBlank(names)){
+                    names += ",";
+                }
+                if(StringUtils.isNotBlank(idss)){
+                    idss += ",";
+                }
+                names += member.getName();
+                names += member.getId();
+            }
+            model.setMemberNames(names);
+            model.setMemberIds(idss);
+        }
+        model.setType(Constants.formatIntegerNum(model.getType()));
+        model.setEditDate(new Date());
+        model.setEditor(loginUserInfo.getId());
+        model.setStatus(Constants.ZERO);
+        hiddenDangerParamMapper.updateById(model);
     }
 
     @Override
@@ -89,6 +184,7 @@
         IPage<HiddenDangerParam> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
         QueryWrapper<HiddenDangerParam> queryWrapper = new QueryWrapper<>();
         Utils.MP.blankToNull(pageWrap.getModel());
+        pageWrap.getModel().setIsdeleted(Constants.ZERO);
         queryWrapper.lambda()
                 .eq(pageWrap.getModel().getId() != null, HiddenDangerParam::getId, pageWrap.getModel().getId())
                 .eq(pageWrap.getModel().getCreator() != null, HiddenDangerParam::getCreator, pageWrap.getModel().getCreator())
@@ -106,6 +202,7 @@
                 .eq(pageWrap.getModel().getMemberIds() != null, HiddenDangerParam::getMemberIds, pageWrap.getModel().getMemberIds())
                 .eq(pageWrap.getModel().getMemberNames() != null, HiddenDangerParam::getMemberNames, pageWrap.getModel().getMemberNames())
                 .eq(pageWrap.getModel().getType() != null, HiddenDangerParam::getType, pageWrap.getModel().getType())
+                .orderByDesc(HiddenDangerParam::getCreateDate)
         ;
         for(PageWrap.SortData sortData: pageWrap.getSorts()) {
             if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {

--
Gitblit v1.9.3