From 43f0578e80af82ecae6c61b51bd0539c6b960603 Mon Sep 17 00:00:00 2001
From: puhanshu <a9236326>
Date: 星期二, 16 八月 2022 19:08:32 +0800
Subject: [PATCH] 服务范围优化
---
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngVaccinesEnrollRecordServiceImpl.java | 150 +++++++++++++++++++++++++++++++++----------------
1 files changed, 101 insertions(+), 49 deletions(-)
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngVaccinesEnrollRecordServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngVaccinesEnrollRecordServiceImpl.java
index d4aa86f..d008b81 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngVaccinesEnrollRecordServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngVaccinesEnrollRecordServiceImpl.java
@@ -1,6 +1,16 @@
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;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.panzhihua.common.model.dtos.vaccines.EnrollUserByAppDTO;
@@ -10,19 +20,15 @@
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.vaccines.VaccinesEnrollByAdminVO;
import com.panzhihua.common.model.vos.vaccines.VaccinesEnrollUserByAppVO;
-import com.panzhihua.common.utlis.AgeUtils;
import com.panzhihua.common.utlis.IdCard;
+import com.panzhihua.common.utlis.StringUtils;
import com.panzhihua.service_community.dao.ComMngVaccinesDAO;
import com.panzhihua.service_community.dao.ComMngVaccinesEnrollRecordDAO;
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.List;
+import lombok.extern.slf4j.Slf4j;
/**
* @auther lyq
@@ -31,80 +37,97 @@
*/
@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 疫苗类型对应家庭成员接种列表
+ *
+ * @return 疫苗类型对应家庭成员接种列表
*/
@Override
- public R getVaccinesUserListByApp(VaccinesEnrollUserByAppDTO enrollUserByAppDTO){
- //查询当前用户的家庭成员列表
+ public R getVaccinesUserListByApp(VaccinesEnrollUserByAppDTO enrollUserByAppDTO) {
+ // 查询当前用户的家庭成员列表
List<VaccinesEnrollUserByAppVO> userLists = new ArrayList<>();
- //将自己的信息组装进家庭成员列表中
+ // 将自己的信息组装进家庭成员列表中
VaccinesEnrollUserByAppVO ownUser = this.baseMapper.getSysUser(enrollUserByAppDTO.getUserId());
- if(ownUser != null){
+ if (ownUser != null) {
ownUser.setIsUser(1);
- //计算年龄
+ // 计算年龄
ownUser.setAge(IdCard.IdNOToAge(ownUser.getIdCard()));
userLists.add(ownUser);
}
List<VaccinesEnrollUserByAppVO> userList = this.baseMapper.getFamilyUserList(enrollUserByAppDTO.getUserId());
- if(!userList.isEmpty()){
+ if (!userList.isEmpty()) {
userLists.addAll(userList);
}
- if(!userLists.isEmpty()){
+ if (!userLists.isEmpty()) {
userLists.forEach(user -> {
- if(user.getIsUser() == null){
+ if (user.getIsUser() == null) {
user.setIsUser(2);
}
- //查询当前用户是否已经报名
- ComMngVaccinesEnrollRecordDO enrollRecordDO = this.baseMapper.selectOne(new QueryWrapper<ComMngVaccinesEnrollRecordDO>()
- .lambda().eq(ComMngVaccinesEnrollRecordDO::getFamilyUserId,user.getUserId()).eq(ComMngVaccinesEnrollRecordDO::getType,enrollUserByAppDTO.getVaccinesId()));
- if(enrollRecordDO != null){
+ if (StringUtils.isEmpty(user.getJob())) {
+ user.setJob("暂无");
+ }
+ // 查询当前用户是否已经报名
+ 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) {
user.setIsEnroll(VaccinesEnrollUserByAppVO.isEnroll.yes);
- }else{
+ } else {
user.setIsEnroll(VaccinesEnrollUserByAppVO.isEnroll.no);
}
-
});
}
- return R.ok(userLists);
+
+ 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 请求参数
- * @return 报名结果
+ *
+ * @param enrollByAppDTO
+ * 请求参数
+ * @return 报名结果
*/
@Override
- public R VaccinesEnrollByApp(VaccinesEnrollByAppDTO enrollByAppDTO){
- //查询疫苗信息
+ public R VaccinesEnrollByApp(VaccinesEnrollByAppDTO enrollByAppDTO) {
+ // 查询疫苗信息
ComMngVaccinesDO vaccinesDO = comMngVaccinesDAO.selectById(enrollByAppDTO.getVaccinesId());
- if(vaccinesDO == null){
+ if (vaccinesDO == null) {
return R.fail("未找到到疫苗信息");
}
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())
- .eq(ComMngVaccinesEnrollRecordDO::getFamilyUserId,userByAppDTO.getUserId())
- .eq(ComMngVaccinesEnrollRecordDO::getUserId,enrollByAppDTO.getUserId())
- .eq(ComMngVaccinesEnrollRecordDO::getType,enrollByAppDTO.getVaccinesId()));
- if(enrollRecordDO != null){
+ if (!enrollByAppDTO.getEnrollUserList().isEmpty()) {
+ for (EnrollUserByAppDTO userByAppDTO : enrollByAppDTO.getEnrollUserList()) {
+ 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()));
+ if (enrollRecordDO != null) {
continue;
}
- //报名疫苗填充对象
+ // 报名疫苗填充对象
ComMngVaccinesEnrollRecordDO vaccinesEnrollRecordDO = new ComMngVaccinesEnrollRecordDO();
- if(userByAppDTO.getIsUser().equals(EnrollUserByAppDTO.isUser.yes)){
- //如果是自己就查询自己的信息
- VaccinesEnrollUserByAppVO enrollUserByAppVO = this.baseMapper.getSysUser(enrollByAppDTO.getUserId());
- if(enrollUserByAppVO != null){
+ if (userByAppDTO.getIsUser().equals(EnrollUserByAppDTO.isUser.yes)) {
+ // 如果是自己就查询自己的信息
+ VaccinesEnrollUserByAppVO enrollUserByAppVO =
+ this.baseMapper.getSysUser(enrollByAppDTO.getUserId());
+ if (enrollUserByAppVO != null) {
vaccinesEnrollRecordDO.setName(enrollUserByAppVO.getName());
vaccinesEnrollRecordDO.setIdCard(enrollUserByAppVO.getIdCard());
vaccinesEnrollRecordDO.setAge(enrollUserByAppVO.getAge());
@@ -112,9 +135,10 @@
vaccinesEnrollRecordDO.setSex(IdCard.sex(enrollUserByAppVO.getIdCard()));
}
vaccinesEnrollRecordDO.setFamilyUserType(ComMngVaccinesEnrollRecordDO.familyUserType.mini);
- }else{
- VaccinesEnrollUserByAppVO enrollUserByAppVO = this.baseMapper.getFamilyUser(userByAppDTO.getUserId());
- if(enrollUserByAppVO != null){
+ } else {
+ VaccinesEnrollUserByAppVO enrollUserByAppVO =
+ this.baseMapper.getFamilyUser(userByAppDTO.getUserId());
+ if (enrollUserByAppVO != null) {
vaccinesEnrollRecordDO.setName(enrollUserByAppVO.getName());
vaccinesEnrollRecordDO.setIdCard(enrollUserByAppVO.getIdCard());
vaccinesEnrollRecordDO.setAge(enrollUserByAppVO.getAge());
@@ -125,10 +149,11 @@
vaccinesEnrollRecordDO.setUserId(enrollByAppDTO.getUserId());
vaccinesEnrollRecordDO.setFamilyUserId(userByAppDTO.getUserId());
vaccinesEnrollRecordDO.setType(enrollByAppDTO.getVaccinesId());
+ vaccinesEnrollRecordDO.setCommunityId(enrollByAppDTO.getCommunityId());
vaccinesEnrollRecordDOList.add(vaccinesEnrollRecordDO);
}
}
- if(!vaccinesEnrollRecordDOList.isEmpty()){
+ if (!vaccinesEnrollRecordDOList.isEmpty()) {
this.saveBatch(vaccinesEnrollRecordDOList);
}
return R.ok();
@@ -136,10 +161,37 @@
/**
* 查询疫苗登记列表
- * @param vaccinesByAdminDTO 请求参数
- * @return 登记列表
+ *
+ * @param vaccinesByAdminDTO
+ * 请求参数
+ * @return 登记列表
*/
- public R getVaccinesEnrollListByAdmin(VaccinesEnrollByAdminDTO vaccinesByAdminDTO){
- return R.ok(this.baseMapper.getVaccinesEnrollListByAdmin(new Page<VaccinesEnrollByAdminVO>(vaccinesByAdminDTO.getPageNum(),vaccinesByAdminDTO.getPageSize()),vaccinesByAdminDTO));
+ @Override
+ public R getVaccinesEnrollListByAdmin(VaccinesEnrollByAdminDTO 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) {
+ enroll.setSex(3);
+ } else {
+ enroll.setSex(IdCard.sex(enroll.getIdCard()));
+ }
+ }
+ }
+ return R.ok(enrollByAdminVOIPage);
+ }
+
+ /**
+ * 根据条件导出疫苗登记记录
+ *
+ * @param vaccinesByAdminDTO
+ * 请求参数
+ * @return 导出登记列表
+ */
+ @Override
+ public R exportVaccinesEnrollListByAdmin(VaccinesEnrollByAdminDTO vaccinesByAdminDTO) {
+ return R.ok(this.baseMapper.exportVaccinesEnrollListByAdmin(vaccinesByAdminDTO));
}
}
--
Gitblit v1.7.1