From 00a59b93c16b24e7be77c6f1ce4866c75a2e0431 Mon Sep 17 00:00:00 2001 From: 101captain <237651143@qq.com> Date: 星期二, 19 四月 2022 16:32:21 +0800 Subject: [PATCH] 花城E+防疫修改 --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActReserveServiceImpl.java | 181 +++++++++++++++++++++++++++++++++----------- 1 files changed, 135 insertions(+), 46 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActReserveServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActReserveServiceImpl.java index 941fde8..9f328e5 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActReserveServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActReserveServiceImpl.java @@ -1,44 +1,5 @@ package com.panzhihua.service_community.service.impl; -import com.alibaba.fastjson.JSON; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import cn.hutool.core.date.DateUtil; -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.google.common.collect.Lists; -import com.panzhihua.common.model.dtos.community.OperationDetailDTO; -import com.panzhihua.common.model.dtos.community.reserve.*; -import com.panzhihua.common.model.vos.R; -import com.panzhihua.common.model.vos.community.ComActReserveIndexVo; -import com.panzhihua.common.model.vos.community.bigscreen.IndexBackReserve; -import com.panzhihua.common.model.vos.community.bigscreen.IndexReserve; -import com.panzhihua.common.model.vos.community.questnaire.QuestnaiteSubSelectionVO; -import com.panzhihua.common.model.vos.community.questnaire.QuestnaiteSubVO; -import com.panzhihua.common.model.vos.community.reserve.*; -import com.panzhihua.common.utlis.StringUtils; -import com.panzhihua.service_community.dao.ComActReserveMapper; -import com.panzhihua.service_community.dao.ComActReserveSubMapper; -import com.panzhihua.service_community.model.dos.*; -import com.panzhihua.common.model.dtos.community.PageUserReserveDTO; -import com.panzhihua.common.model.vos.R; -import com.panzhihua.common.model.vos.community.ComActReserveCommitVO; -import com.panzhihua.common.model.vos.community.questnaire.QuestnaiteSubVO; -import com.panzhihua.service_community.dao.*; -import com.panzhihua.service_community.model.dos.*; -import com.panzhihua.service_community.service.ComActReserveAnswerContentService; -import com.panzhihua.service_community.service.ComActReserveRecordService; -import com.panzhihua.service_community.service.ComActReserveService; -import com.panzhihua.service_community.service.ComActReserveSubSelectionService; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.BeanUtils; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import javax.annotation.Resource; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileOutputStream; @@ -48,12 +9,41 @@ import java.util.ArrayList; import java.util.Date; import java.util.List; -import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; + +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import com.alibaba.fastjson.JSON; +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.google.common.collect.Lists; +import com.panzhihua.common.model.dtos.community.OperationDetailDTO; +import com.panzhihua.common.model.dtos.community.PageUserReserveDTO; +import com.panzhihua.common.model.dtos.community.reserve.*; +import com.panzhihua.common.model.vos.R; +import com.panzhihua.common.model.vos.community.ComActReserveCommitVO; +import com.panzhihua.common.model.vos.community.bigscreen.IndexBackReserve; +import com.panzhihua.common.model.vos.community.bigscreen.IndexReserve; +import com.panzhihua.common.model.vos.community.questnaire.QuestnaiteSubSelectionVO; +import com.panzhihua.common.model.vos.community.questnaire.QuestnaiteSubVO; +import com.panzhihua.common.model.vos.community.reserve.*; +import com.panzhihua.common.utlis.Snowflake; +import com.panzhihua.common.utlis.StringUtils; +import com.panzhihua.service_community.dao.*; +import com.panzhihua.service_community.model.dos.*; +import com.panzhihua.service_community.service.ComActReserveAnswerContentService; +import com.panzhihua.service_community.service.ComActReserveRecordService; +import com.panzhihua.service_community.service.ComActReserveService; +import com.panzhihua.service_community.service.ComActReserveSubSelectionService; + +import cn.hutool.core.date.DateUtil; +import lombok.extern.slf4j.Slf4j; /** * @auther lyq @@ -79,12 +69,23 @@ private ComActReserveSubSelectionService comActReserveSubSelectionService; @Resource private ComActReserveRecordService comActReserveRecordService; + @Resource + private ComMngPopulationDAO comMngPopulationDAO; + @Resource + private ComMngPopulationHouseDAO comMngPopulationHouseDAO; + @Resource + private ComMngPopulationCommunityTagsDAO comMngPopulationCommunityTagsDAO; + @Resource + private ComMngPopulationHouseUserDAO comMngPopulationHouseUserDAO; + @Value("${domain.aesKey:}") + private String aesKey; private final static String COMMIT="用户已提交"; @Override @Transactional public R commit(ComActReserveCommitVO comActReserveCommitVO) { if(comActReserveCommitVO!=null){ + ComMngPopulationHouseDO comMngPopulationHouseDO=new ComMngPopulationHouseDO(); Long userId=comActReserveCommitVO.getUserId(); Date nowDate=DateUtil.date(); //查询预约登记记录 @@ -110,6 +111,9 @@ else { List<QuestnaiteSubVO> questnaiteSubVOS = JSON.parseArray(comActReserveCommitVO.getJsonObject(),QuestnaiteSubVO.class); if(!questnaiteSubVOS.isEmpty()){ + String idCard=""; + String houseId=""; + String phone=""; Long questId=comActReserveCommitVO.getId(); List<ComActReserveAnswerContentDO> answerContentList=new ArrayList<>(); for(QuestnaiteSubVO questnaiteSub:questnaiteSubVOS){ @@ -167,9 +171,10 @@ answerContentDO.setAnswerContent(subSelectionDO.getContent()); answerContentList.add(answerContentDO); } - }else{ + } + else{ //文字描述不做处理 - if(!questnaiteSub.getType().equals(QuestnaiteSubVO.type.describe)){ + if(!questnaiteSub.getType().equals(QuestnaiteSubVO.type.describe)&&!questnaiteSub.getType().equals(QuestnaiteSubVO.type.address)){ //问答题处理 String values = questnaiteSub.getValues(); ComActReserveAnswerContentDO answerContentDO = new ComActReserveAnswerContentDO(); @@ -181,9 +186,71 @@ answerContentDO.setAnswerContent(values); answerContentList.add(answerContentDO); } + if(questnaiteSub.getType().equals(QuestnaiteSubVO.type.card)){ + idCard=questnaiteSub.getValues(); + } + if(questnaiteSub.getType().equals(QuestnaiteSubVO.type.phone)){ + phone=questnaiteSub.getValues(); + } + if(questnaiteSub.getType().equals(QuestnaiteSubVO.type.address)){ + houseId=questnaiteSub.getValues(); + comMngPopulationHouseDO=comMngPopulationHouseDAO.selectById(houseId); + ComActReserveAnswerContentDO answerContentDO = new ComActReserveAnswerContentDO(); + answerContentDO.setUserId(userId); + answerContentDO.setCreateAt(nowDate); + answerContentDO.setCreateBy(userId); + answerContentDO.setReserveSubId(queSubId); + answerContentDO.setType(2); + if(comMngPopulationHouseDO!=null){ + answerContentDO.setAnswerContent(comMngPopulationHouseDO.getAddress()); + } + else { + answerContentDO.setAnswerContent(""); + } + answerContentList.add(answerContentDO); + } } } if(!answerContentList.isEmpty()){ + //判断实有人口情况 + if(StringUtils.isNotEmpty(idCard)&&StringUtils.isNotEmpty(houseId)){ + Integer count=comMngPopulationDAO.selectCount(new QueryWrapper<ComMngPopulationDO>().lambda().eq(ComMngPopulationDO::getCardNoStr,idCard)); + if(count==0){ + ComMngPopulationDO comMngPopulationDO=savePopulation(idCard); + if(comMngPopulationHouseDO!=null){ + comMngPopulationDO.setId(Snowflake.getId()); + comMngPopulationDO.setAddress(comMngPopulationHouseDO.getAddress()); + comMngPopulationDO.setActId(comMngPopulationHouseDO.getCommunityId()); + comMngPopulationDO.setStreetId(comMngPopulationHouseDO.getStreetId()); + comMngPopulationDO.setVillageId(comMngPopulationHouseDO.getVillageId()); + comMngPopulationDO.setHouseId(comMngPopulationHouseDO.getId()); + comMngPopulationDO.setOutOrLocal(1); + comMngPopulationDO.setPhone(phone); + comMngPopulationDO.setName(comActReserveCommitVO.getName()); + comMngPopulationDO.setRoad(comMngPopulationHouseDO.getAlley()); + comMngPopulationDO.setDoorNo(comMngPopulationHouseDO.getHouseNum()); + comMngPopulationDO.setFloor(comMngPopulationHouseDO.getFloor()); + comMngPopulationDO.setUnitNo(comMngPopulationHouseDO.getUnitNo()); + comMngPopulationDO.setHouseNo(comMngPopulationHouseDO.getHouseNo()); + comMngPopulationDAO.insert(comMngPopulationDO); + ComMngPopulationCommunityTagsDO comMngPopulationCommunityTagsDO=new ComMngPopulationCommunityTagsDO(); + comMngPopulationCommunityTagsDO.setCommunityId(comMngPopulationDO.getActId()); + comMngPopulationCommunityTagsDO.setPopulationId(comMngPopulationDO.getId()); + comMngPopulationCommunityTagsDO.setId(Snowflake.getId()); + comMngPopulationCommunityTagsDO.setCreateAt(new Date()); + comMngPopulationCommunityTagsDAO.insert(comMngPopulationCommunityTagsDO); + ComMngPopulationHouseUserDO comMngPopulationHouseUserDO=new ComMngPopulationHouseUserDO(); + comMngPopulationHouseUserDO.setId(Snowflake.getId()); + comMngPopulationHouseUserDO.setPopulId(comMngPopulationDO.getId()); + comMngPopulationHouseUserDO.setHouseId(Long.parseLong(houseId)); + comMngPopulationHouseUserDO.setRelation(1); + comMngPopulationHouseUserDO.setRelationId(1); + comMngPopulationHouseUserDO.setResidence(1); + comMngPopulationHouseUserDO.setCreateAt(new Date()); + comMngPopulationHouseUserDAO.insert(comMngPopulationHouseUserDO); + } + } + } //更新回答用户数量 Integer joinCount = comActReserveDO.getJoinCount(); comActReserveDO.setJoinCount(joinCount != null ? joinCount + 1 : 1); @@ -601,7 +668,7 @@ * @return 预约登记详情 */ @Override - public R detailReserveAdmin(Long reserveId){ + public R<ComActReserveDetailAdminVO> detailReserveAdmin(Long reserveId) { ComActReserveDetailAdminVO reserveDetailAdminVO = new ComActReserveDetailAdminVO(); //查询预约登记信息 ComActReserveDO reserveDO = this.baseMapper.selectById(reserveId); @@ -779,6 +846,28 @@ return null; } + public ComMngPopulationDO savePopulation(String idCard){ + ComMngPopulationDO comMngPopulationDO=new ComMngPopulationDO(); + comMngPopulationDO.setDeath("1"); + comMngPopulationDO.setCardNoStr(idCard); + comMngPopulationDO.setCardNo(idCard); + comMngPopulationDO.setSex(getSex(idCard)); + comMngPopulationDO.setBirthday(getBirthday(idCard)); + return comMngPopulationDO; + } + public Integer getSex(String idCard){ + char c = idCard.charAt(idCard.length() - 2); + Integer gender = Integer.parseInt(String.valueOf(c)); + if(gender % 2 == 1){ + return 1; + }else{ + return 2; + } + } + public String getBirthday(String idCard){ + return idCard.substring(6).substring(0, 4)+"-"+idCard.substring(10).substring(0, 2)+"-"+idCard.substring(12).substring(0,2); + } + public static void getFileByBytes(byte[] bytes, String filePath, String fileName) { BufferedOutputStream bos = null; -- Gitblit v1.7.1