huanghongfa
2021-09-02 177249c76aeea0b4bf8d8816d4994e3b445b45ce
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngVaccinesEnrollRecordServiceImpl.java
@@ -1,5 +1,14 @@
package com.panzhihua.service_community.service.impl;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
import java.util.stream.Collectors;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -18,14 +27,8 @@
import com.panzhihua.service_community.model.dos.ComMngVaccinesDO;
import com.panzhihua.service_community.model.dos.ComMngVaccinesEnrollRecordDO;
import com.panzhihua.service_community.service.ComMngVaccinesEnrollRecordService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
import java.util.stream.Collectors;
import lombok.extern.slf4j.Slf4j;
/**
 * @auther lyq
@@ -34,13 +37,16 @@
 */
@Slf4j
@Service
public class ComMngVaccinesEnrollRecordServiceImpl extends ServiceImpl<ComMngVaccinesEnrollRecordDAO, ComMngVaccinesEnrollRecordDO> implements ComMngVaccinesEnrollRecordService {
public class ComMngVaccinesEnrollRecordServiceImpl
    extends ServiceImpl<ComMngVaccinesEnrollRecordDAO, ComMngVaccinesEnrollRecordDO>
    implements ComMngVaccinesEnrollRecordService {
    @Resource
    private ComMngVaccinesDAO comMngVaccinesDAO;
    /**
     * 小程序-疫苗类型对应家庭成员接种列表
     *
     * @return  疫苗类型对应家庭成员接种列表
     */
    @Override
@@ -69,8 +75,9 @@
                    user.setJob("暂无");
                }
                //查询当前用户是否已经报名
                ComMngVaccinesEnrollRecordDO enrollRecordDO = this.baseMapper.selectOne(new QueryWrapper<ComMngVaccinesEnrollRecordDO>()
                        .lambda().eq(ComMngVaccinesEnrollRecordDO::getFamilyUserId,user.getUserId())
                ComMngVaccinesEnrollRecordDO enrollRecordDO =
                    this.baseMapper.selectOne(new QueryWrapper<ComMngVaccinesEnrollRecordDO>().lambda()
                        .eq(ComMngVaccinesEnrollRecordDO::getFamilyUserId, user.getUserId())
                        .eq(ComMngVaccinesEnrollRecordDO::getType,enrollUserByAppDTO.getVaccinesId())
                        .eq(ComMngVaccinesEnrollRecordDO::getFamilyUserType,user.getIsUser()));
                if(enrollRecordDO != null){
@@ -81,14 +88,18 @@
            });
        }
        List<VaccinesEnrollUserByAppVO> newUserLists = userLists.stream().sorted(Comparator.comparing(VaccinesEnrollUserByAppVO::getIsEnroll).reversed()
                .thenComparing(Comparator.comparing(VaccinesEnrollUserByAppVO::getCreateAt).reversed())).collect(Collectors.toList());
        List<VaccinesEnrollUserByAppVO> newUserLists = userLists.stream()
            .sorted(Comparator.comparing(VaccinesEnrollUserByAppVO::getIsEnroll).reversed()
                .thenComparing(Comparator.comparing(VaccinesEnrollUserByAppVO::getCreateAt).reversed()))
            .collect(Collectors.toList());
        return R.ok(newUserLists);
    }
    /**
     * 用户疫苗报名
     * @param enrollByAppDTO    请求参数
     *
     * @param enrollByAppDTO
     *            请求参数
     * @return  报名结果
     */
    @Override
@@ -101,8 +112,9 @@
        List<ComMngVaccinesEnrollRecordDO> vaccinesEnrollRecordDOList = new ArrayList<>();
        if(!enrollByAppDTO.getEnrollUserList().isEmpty()){
            for (EnrollUserByAppDTO userByAppDTO:enrollByAppDTO.getEnrollUserList()) {
                ComMngVaccinesEnrollRecordDO enrollRecordDO = this.baseMapper.selectOne(new QueryWrapper<ComMngVaccinesEnrollRecordDO>()
                        .lambda().eq(ComMngVaccinesEnrollRecordDO::getFamilyUserType,userByAppDTO.getIsUser())
                ComMngVaccinesEnrollRecordDO enrollRecordDO =
                    this.baseMapper.selectOne(new QueryWrapper<ComMngVaccinesEnrollRecordDO>().lambda()
                        .eq(ComMngVaccinesEnrollRecordDO::getFamilyUserType, userByAppDTO.getIsUser())
                        .eq(ComMngVaccinesEnrollRecordDO::getFamilyUserId,userByAppDTO.getUserId())
                        .eq(ComMngVaccinesEnrollRecordDO::getUserId,enrollByAppDTO.getUserId())
                        .eq(ComMngVaccinesEnrollRecordDO::getType,enrollByAppDTO.getVaccinesId()));
@@ -113,7 +125,8 @@
                ComMngVaccinesEnrollRecordDO vaccinesEnrollRecordDO = new ComMngVaccinesEnrollRecordDO();
                if(userByAppDTO.getIsUser().equals(EnrollUserByAppDTO.isUser.yes)){
                    //如果是自己就查询自己的信息
                    VaccinesEnrollUserByAppVO enrollUserByAppVO = this.baseMapper.getSysUser(enrollByAppDTO.getUserId());
                    VaccinesEnrollUserByAppVO enrollUserByAppVO =
                        this.baseMapper.getSysUser(enrollByAppDTO.getUserId());
                    if(enrollUserByAppVO != null){
                        vaccinesEnrollRecordDO.setName(enrollUserByAppVO.getName());
                        vaccinesEnrollRecordDO.setIdCard(enrollUserByAppVO.getIdCard());
@@ -123,7 +136,8 @@
                    }
                    vaccinesEnrollRecordDO.setFamilyUserType(ComMngVaccinesEnrollRecordDO.familyUserType.mini);
                }else{
                    VaccinesEnrollUserByAppVO enrollUserByAppVO = this.baseMapper.getFamilyUser(userByAppDTO.getUserId());
                    VaccinesEnrollUserByAppVO enrollUserByAppVO =
                        this.baseMapper.getFamilyUser(userByAppDTO.getUserId());
                    if(enrollUserByAppVO != null){
                        vaccinesEnrollRecordDO.setName(enrollUserByAppVO.getName());
                        vaccinesEnrollRecordDO.setIdCard(enrollUserByAppVO.getIdCard());
@@ -147,12 +161,16 @@
    /**
     * 查询疫苗登记列表
     * @param vaccinesByAdminDTO 请求参数
     *
     * @param vaccinesByAdminDTO
     *            请求参数
     * @return  登记列表
     */
    @Override
    public R getVaccinesEnrollListByAdmin(VaccinesEnrollByAdminDTO vaccinesByAdminDTO){
        IPage<VaccinesEnrollByAdminVO> enrollByAdminVOIPage = this.baseMapper.getVaccinesEnrollListByAdmin(new Page<VaccinesEnrollByAdminVO>(vaccinesByAdminDTO.getPageNum(),vaccinesByAdminDTO.getPageSize()),vaccinesByAdminDTO);
        IPage<VaccinesEnrollByAdminVO> enrollByAdminVOIPage = this.baseMapper.getVaccinesEnrollListByAdmin(
            new Page<VaccinesEnrollByAdminVO>(vaccinesByAdminDTO.getPageNum(), vaccinesByAdminDTO.getPageSize()),
            vaccinesByAdminDTO);
        if(!enrollByAdminVOIPage.getRecords().isEmpty()){
            for (VaccinesEnrollByAdminVO enroll:enrollByAdminVOIPage.getRecords()) {
                if(enroll.getIdCard().length() != 18){
@@ -167,7 +185,9 @@
    /**
     * 根据条件导出疫苗登记记录
     * @param vaccinesByAdminDTO    请求参数
     *
     * @param vaccinesByAdminDTO
     *            请求参数
     * @return  导出登记列表
     */
    @Override