k94314517
2024-10-16 17efddc6a667670dca682bf36b51a43e99615e6d
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerParamServiceImpl.java
@@ -9,24 +9,25 @@
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.HiddenDanger;
import com.doumee.dao.business.model.HiddenDangerParam;
import com.doumee.dao.business.model.Member;
import com.doumee.dao.business.model.*;
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 com.github.yulichang.wrapper.MPJLambdaWrapper;
import io.swagger.models.auth.In;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.checkerframework.checker.units.qual.C;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Objects;
/**
 * 隐患区域配置类型信息表Service实现
@@ -45,6 +46,13 @@
        LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
        if(loginUserInfo == null){
            loginUserInfo = model.getLoginUserInfo();
        }
        if(hiddenDangerParamMapper.selectCount(new QueryWrapper<HiddenDangerParam>().lambda()
                .eq(HiddenDangerParam::getType,model.getType())
                .eq(HiddenDangerParam::getName,model.getName())
                .eq(HiddenDangerParam::getIsdeleted,Constants.ZERO)
        )>Constants.ZERO){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对不起,该名称已存在!");
        }
        if(Constants.equalsInteger(model.getType(),Constants.ZERO)){
            //如果是区域配置
@@ -120,6 +128,14 @@
        HiddenDangerParam hiddenDangerParam = hiddenDangerParamMapper.selectById(model.getId());
        if(hiddenDangerParam == null || Constants.equalsInteger(hiddenDangerParam.getIsdeleted(),Constants.ONE)){
            throw  new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"对不起,该配置信息不存在,请返回刷新页面重试!");
        }
        if(hiddenDangerParamMapper.selectCount(new QueryWrapper<HiddenDangerParam>().lambda()
                .eq(HiddenDangerParam::getType,model.getType())
                .eq(HiddenDangerParam::getName,model.getName())
                .eq(HiddenDangerParam::getIsdeleted,Constants.ZERO)
                .ne(HiddenDangerParam::getId,model.getId())
        )>Constants.ZERO){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对不起,该名称已存在!");
        }
        if(Constants.equalsInteger(hiddenDangerParam.getType(),Constants.ZERO)){
            //如果是区域配置,校验安全员信息是否正确
@@ -226,4 +242,41 @@
        QueryWrapper<HiddenDangerParam> wrapper = new QueryWrapper<>(hiddenDangerParam);
        return hiddenDangerParamMapper.selectCount(wrapper);
    }
    @Override
    public   List<Member> findHiddenAreaMemberList(HiddenDangerParam pageWrap) {
        HiddenDangerParam hiddenDangerParam = new HiddenDangerParam();
        hiddenDangerParam.setIsdeleted(Constants.ZERO);
        if(Objects.nonNull(pageWrap.getId())){
            hiddenDangerParam.setId(pageWrap.getId());
        }
        QueryWrapper<HiddenDangerParam> wrapper = new QueryWrapper<>(hiddenDangerParam);
        List<HiddenDangerParam> list = hiddenDangerParamMapper.selectList(wrapper);
        List<Member> memberList = new ArrayList<>();
        if(list!=null){
            List<Integer> idList = new ArrayList<>();
            for(HiddenDangerParam m : list){
                String ids = m.getMemberIds();
                if(StringUtils.isNotBlank(ids)){
                    String[] t = ids.split(",");
                    for(String d : t){
                        try {
                            idList.add(Integer.parseInt(d));
                        }catch (Exception e){}
                    }
                }
            }
            if(idList.size()>0){
                memberList = memberMapper.selectJoinList(Member.class,new MPJLambdaWrapper<Member>().
                        selectAll(Member.class)
                        .selectAs(Company::getCompanyNamePath,Member::getCompanyName)
                        .leftJoin(Company.class, Company::getId,Member::getCompanyId)
                        .eq(Member::getType,Constants.TWO)
                        .eq(Member::getIsdeleted,Constants.ZERO)
                        .like(StringUtils.isNotBlank(pageWrap.getName()),Member::getName,pageWrap.getName())
                        .in(Member::getId,idList)
                );
            }
        }
        return memberList;
    }
}