From 5a8a90c095280fbd2106869ecd2bad10e01a57a6 Mon Sep 17 00:00:00 2001 From: 101captain <237651143@qq.com> Date: 星期四, 23 十二月 2021 18:10:22 +0800 Subject: [PATCH] 12/23 大屏修改 --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActQuestnaireServiceImpl.java | 552 ++++++++++++++++++++++++++++++------------------------ 1 files changed, 309 insertions(+), 243 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActQuestnaireServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActQuestnaireServiceImpl.java index dab2545..bed5874 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActQuestnaireServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActQuestnaireServiceImpl.java @@ -2,19 +2,23 @@ import java.math.BigDecimal; import java.math.RoundingMode; -import java.util.*; -import java.util.stream.Collectors; +import java.util.ArrayList; +import java.util.Comparator; +import java.util.Date; +import java.util.List; + +import javax.annotation.Resource; + +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.google.common.collect.Lists; -import com.panzhihua.common.enums.QuestnaireState; -import com.panzhihua.common.exceptions.ServiceException; import com.panzhihua.common.model.dtos.community.PageQuestnaireAnswerDTO; import com.panzhihua.common.model.dtos.community.PageQuestnaireDTO; import com.panzhihua.common.model.dtos.community.PageQuestnaireSubDetailsDTO; @@ -22,22 +26,18 @@ import com.panzhihua.common.model.dtos.community.questnaire.StatisticsSummaryDTO; import com.panzhihua.common.model.vos.LoginUserInfoVO; import com.panzhihua.common.model.vos.R; +import com.panzhihua.common.model.vos.community.ComActQuestnaireAnswerContentVO; +import com.panzhihua.common.model.vos.community.ComActQuestnaireSubSelectionVO; +import com.panzhihua.common.model.vos.community.ComActQuestnaireSubVO; +import com.panzhihua.common.model.vos.community.ComActQuestnaireVO; import com.panzhihua.common.model.vos.community.questnaire.*; import com.panzhihua.common.service.user.UserService; import com.panzhihua.common.utlis.DateUtils; import com.panzhihua.service_community.dao.*; import com.panzhihua.service_community.model.dos.*; import com.panzhihua.service_community.service.ComActQuestnaireService; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.BeanUtils; -import org.springframework.stereotype.Service; -import com.panzhihua.common.model.vos.community.ComActQuestnaireAnswerContentVO; -import com.panzhihua.common.model.vos.community.ComActQuestnaireSubSelectionVO; -import com.panzhihua.common.model.vos.community.ComActQuestnaireSubVO; -import com.panzhihua.common.model.vos.community.ComActQuestnaireVO; -import org.springframework.transaction.annotation.Transactional; -import javax.annotation.Resource; +import lombok.extern.slf4j.Slf4j; /** * @Author: llming @@ -71,58 +71,59 @@ @Transactional(rollbackFor = Exception.class) public R addQuestnaire(QuestnaireVO questnaireVO) { Long userId = questnaireVO.getUserId(); - if(questnaireVO.getAdverPositionPopup().equals(ComActQuestnaireDO.isOk.yes)){ - //查询当前时间段是否已有弹窗提醒了 - Integer count = questnaireDAO.getAdvPopupCount(questnaireVO.getCommunityId(),questnaireVO.getStartTime(),questnaireVO.getEndTime(),null); - if(count > 0){ + if (questnaireVO.getAdverPositionPopup().equals(ComActQuestnaireDO.isOk.yes)) { + // 查询当前时间段是否已有弹窗提醒了 + Integer count = questnaireDAO.getAdvPopupCount(questnaireVO.getCommunityId(), questnaireVO.getStartTime(), + questnaireVO.getEndTime(), null); + if (count > 0) { return R.fail("所选时间段已设置了问卷调查弹窗,暂不支持再次添加!"); } } ComActQuestnaireDO comActQuestnaireDO = new ComActQuestnaireDO(); Date nowDate = new Date(); - BeanUtils.copyProperties(questnaireVO,comActQuestnaireDO); + BeanUtils.copyProperties(questnaireVO, comActQuestnaireDO); comActQuestnaireDO.setState(ComActQuestnaireDO.state.dfb); comActQuestnaireDO.setTitle(questnaireVO.getTitle()); comActQuestnaireDO.setJoinCount(0); comActQuestnaireDO.setCreateBy(userId); comActQuestnaireDO.setCreateAt(nowDate); - Date startDate = DateUtils.stringToDate(questnaireVO.getStartTime(),DateUtils.ymdhms_format); - if(startDate != null && startDate.getTime() <= nowDate.getTime()){ + Date startDate = DateUtils.stringToDate(questnaireVO.getStartTime(), DateUtils.ymdhms_format); + if (startDate != null && startDate.getTime() <= nowDate.getTime()) { comActQuestnaireDO.setState(ComActQuestnaireDO.state.dyz); comActQuestnaireDO.setPublishTime(nowDate); } - Date endDate = DateUtils.stringToDate(questnaireVO.getEndTime(),DateUtils.ymdhms_format); - if(endDate != null && endDate.getTime() <= nowDate.getTime()){ + Date endDate = DateUtils.stringToDate(questnaireVO.getEndTime(), DateUtils.ymdhms_format); + if (endDate != null && endDate.getTime() <= nowDate.getTime()) { comActQuestnaireDO.setState(ComActQuestnaireDO.state.yjs); } comActQuestnaireDO.setStartTime(startDate); comActQuestnaireDO.setEndTime(endDate); - if(questnaireVO.getIdentity().equals(QuestnaireVO.identity.jm)){ + if (questnaireVO.getIdentity().equals(QuestnaireVO.identity.jm)) { comActQuestnaireDO.setForMasses(ComActQuestnaireDO.isOk.yes); - }else if(questnaireVO.getIdentity().equals(QuestnaireVO.identity.dy)){ + } else if (questnaireVO.getIdentity().equals(QuestnaireVO.identity.dy)) { comActQuestnaireDO.setForParty(ComActQuestnaireDO.isOk.yes); - }else if(questnaireVO.getIdentity().equals(QuestnaireVO.identity.zyz)){ + } else if (questnaireVO.getIdentity().equals(QuestnaireVO.identity.zyz)) { comActQuestnaireDO.setForVolunteer(ComActQuestnaireDO.isOk.yes); } - if(questnaireVO.getIsRelease() != null && questnaireVO.getIsRelease().equals(1)){ + if (questnaireVO.getIsRelease() != null && questnaireVO.getIsRelease().equals(1)) { comActQuestnaireDO.setStartTime(nowDate); } - //统计该调查问卷填报题目数量 + // 统计该调查问卷填报题目数量 int count = 0; - List<QuestnaiteSubVO> questnaiteSubVOS = JSON.parseArray(questnaireVO.getJsonObject().toString(),QuestnaiteSubVO.class); - if(!questnaiteSubVOS.isEmpty()){ + List<QuestnaiteSubVO> questnaiteSubVOS = JSON.parseArray(questnaireVO.getJsonObject(), QuestnaiteSubVO.class); + if (!questnaiteSubVOS.isEmpty()) { count = questnaiteSubVOS.size(); } comActQuestnaireDO.setCount(count); comActQuestnaireDO.setJsonObject(questnaireVO.getJsonObject()); int quesCount = questnaireDAO.insert(comActQuestnaireDO); - if(quesCount !=1 ){ + if (quesCount != 1) { return R.fail("创建失败"); } - if(!questnaiteSubVOS.isEmpty()) { + if (!questnaiteSubVOS.isEmpty()) { questnaiteSubVOS.forEach(sub -> { ComActQuestnaireSubDO comActQuestnaireSubDO = new ComActQuestnaireSubDO(); comActQuestnaireSubDO.setType(sub.getType()); @@ -133,16 +134,16 @@ comActQuestnaireSubDO.setKey(sub.getKey()); questnaireSubDAO.insert(comActQuestnaireSubDO); ArrayList<ComActQuestnaireSubSelectionDO> subSelectionList = Lists.newArrayList(); - if(sub.getOptions() != null && !sub.getOptions().isEmpty()) { + if (sub.getOptions() != null && !sub.getOptions().isEmpty()) { List<QuestnaiteSubSelectionVO> subOptions = sub.getOptions(); - for(int i=0; i<subOptions.size(); i++){ + for (int i = 0; i < subOptions.size(); i++) { QuestnaiteSubSelectionVO subSelect = subOptions.get(i); ComActQuestnaireSubSelectionDO subSelectionDO = new ComActQuestnaireSubSelectionDO(); subSelectionDO.setQueSubId(comActQuestnaireSubDO.getId()); - if(subSelect.getType().equals(1)){ - //添加选项名称 + if (subSelect.getType().equals(1)) { + // 添加选项名称 subSelectionDO.setOptionName(subSelect.getOptionName()); - }else { + } else { subSelectionDO.setOptionName(String.valueOf(Character.toChars('A' + i))); } subSelectionDO.setContent(subSelect.getLabel()); @@ -150,6 +151,7 @@ subSelectionDO.setCreateBy(userId); subSelectionDO.setType(subSelect.getType()); subSelectionDO.setKey(subSelect.getKey()); + subSelectionDO.setUrl(subSelect.getUrl()); subSelectionList.add(subSelectionDO); } } @@ -161,38 +163,43 @@ @Override public R pageQuestnaire(PageQuestnaireDTO pageQuestnaireDTO) { - IPage<QuestnaireListVo> voPage = questnaireDAO.selectPageList(new Page<>(pageQuestnaireDTO.getPageNum(),pageQuestnaireDTO.getPageSize()),pageQuestnaireDTO); + IPage<QuestnaireListVo> voPage = questnaireDAO.selectPageList( + new Page<>(pageQuestnaireDTO.getPageNum(), pageQuestnaireDTO.getPageSize()), pageQuestnaireDTO); return R.ok(voPage); } @Override public R pageQuestnaireAdmin(PageQuestnaireDTO pageQuestnaireDTO) { - IPage<QuestnaireListAdminVO> voPage = questnaireDAO.selectPageListAdmin(new Page<>(pageQuestnaireDTO.getPageNum(),pageQuestnaireDTO.getPageSize()),pageQuestnaireDTO); - if(!voPage.getRecords().isEmpty()){ + IPage<QuestnaireListAdminVO> voPage = questnaireDAO.selectPageListAdmin( + new Page<>(pageQuestnaireDTO.getPageNum(), pageQuestnaireDTO.getPageSize()), pageQuestnaireDTO); + if (!voPage.getRecords().isEmpty()) { voPage.getRecords().forEach(vo -> { - //判断调查人员身份 - if(vo.getForMasses().equals(ComActQuestnaireDO.isOk.yes)){ + // 判断调查人员身份 + if (vo.getForMasses().equals(ComActQuestnaireDO.isOk.yes)) { vo.setIdentity("全部居民"); - }else if(vo.getForParty().equals(ComActQuestnaireDO.isOk.yes)){ + } else if (vo.getForParty().equals(ComActQuestnaireDO.isOk.yes)) { vo.setIdentity("党员"); - }else if(vo.getForVolunteer().equals(ComActQuestnaireDO.isOk.yes)){ + } else if (vo.getForVolunteer().equals(ComActQuestnaireDO.isOk.yes)) { vo.setIdentity("志愿者"); } - //判断广告位置 + // 判断广告位置 StringBuilder sb = new StringBuilder(); - if(vo.getAdverPositionPopup().equals(ComActQuestnaireDO.isOk.yes)){ + if (vo.getAdverPositionPopup().equals(ComActQuestnaireDO.isOk.yes)) { sb.append("首页弹窗,"); } - if(vo.getAdverPositionTop().equals(ComActQuestnaireDO.isOk.yes)){ + if (vo.getAdverPositionTop().equals(ComActQuestnaireDO.isOk.yes)) { sb.append("首页顶部,"); } - if(vo.getAdverPositionApplication().equals(ComActQuestnaireDO.isOk.yes)){ + if (vo.getAdverPositionApplication().equals(ComActQuestnaireDO.isOk.yes)) { sb.append("首页应用,"); } + if (vo.getIsCover().equals(ComActQuestnaireDO.isOk.yes)) { + sb.append("设置封面,"); + } String advertPosition = sb.toString(); - if(advertPosition.length() > 0){ - vo.setAdvertPosition(advertPosition.substring(0,advertPosition.length()-1)); - }else{ + if (advertPosition.length() > 0) { + vo.setAdvertPosition(advertPosition.substring(0, advertPosition.length() - 1)); + } else { vo.setAdvertPosition("无"); } }); @@ -206,64 +213,65 @@ Long queId = questnaireVO.getId(); Long userId = questnaireVO.getUserId(); ComActQuestnaireDO questnaireDO = this.questnaireDAO.selectById(queId); - if(questnaireDO == null){ + if (questnaireDO == null) { return R.fail("未查询到该问卷调查"); } - if(!questnaireDO.getState().equals(1)){ + if (!questnaireDO.getState().equals(1)) { return R.fail("该调查问卷不是待发布状态,不可编辑"); } - if(questnaireVO.getAdverPositionPopup().equals(ComActQuestnaireDO.isOk.yes)){ - //查询当前时间段是否已有弹窗提醒了 - Integer count = questnaireDAO.getAdvPopupCount(questnaireVO.getCommunityId(),questnaireVO.getStartTime(),questnaireVO.getEndTime(),queId); - if(count > 0){ + if (questnaireVO.getAdverPositionPopup().equals(ComActQuestnaireDO.isOk.yes)) { + // 查询当前时间段是否已有弹窗提醒了 + Integer count = questnaireDAO.getAdvPopupCount(questnaireVO.getCommunityId(), questnaireVO.getStartTime(), + questnaireVO.getEndTime(), queId); + if (count > 0) { return R.fail("所选时间段已设置了问卷调查弹窗,暂不支持再次添加!"); } } - //更新调查问卷信息 + // 更新调查问卷信息 Date nowDate = new Date(); - BeanUtils.copyProperties(questnaireVO,questnaireDO); + BeanUtils.copyProperties(questnaireVO, questnaireDO); questnaireDO.setState(ComActQuestnaireDO.state.dfb); questnaireDO.setTitle(questnaireVO.getTitle()); questnaireDO.setUpdateBy(userId); questnaireDO.setUpdateAt(nowDate); - Date startDate = DateUtils.stringToDate(questnaireVO.getStartTime(),DateUtils.ymdhms_format); - if(startDate != null && startDate.getTime() <= nowDate.getTime()){ + Date startDate = DateUtils.stringToDate(questnaireVO.getStartTime(), DateUtils.ymdhms_format); + if (startDate != null && startDate.getTime() <= nowDate.getTime()) { questnaireDO.setState(ComActQuestnaireDO.state.dyz); questnaireDO.setPublishTime(nowDate); } - Date endDate = DateUtils.stringToDate(questnaireVO.getEndTime(),DateUtils.ymdhms_format); - if(endDate != null && endDate.getTime() <= nowDate.getTime()){ + Date endDate = DateUtils.stringToDate(questnaireVO.getEndTime(), DateUtils.ymdhms_format); + if (endDate != null && endDate.getTime() <= nowDate.getTime()) { questnaireDO.setState(ComActQuestnaireDO.state.yjs); } questnaireDO.setStartTime(startDate); questnaireDO.setEndTime(endDate); - if(questnaireVO.getIdentity().equals(QuestnaireVO.identity.jm)){ + if (questnaireVO.getIdentity().equals(QuestnaireVO.identity.jm)) { questnaireDO.setForMasses(ComActQuestnaireDO.isOk.yes); - }else if(questnaireVO.getIdentity().equals(QuestnaireVO.identity.dy)){ + } else if (questnaireVO.getIdentity().equals(QuestnaireVO.identity.dy)) { questnaireDO.setForParty(ComActQuestnaireDO.isOk.yes); - }else if(questnaireVO.getIdentity().equals(QuestnaireVO.identity.zyz)){ + } else if (questnaireVO.getIdentity().equals(QuestnaireVO.identity.zyz)) { questnaireDO.setForVolunteer(ComActQuestnaireDO.isOk.yes); } - if(questnaireVO.getIsRelease() != null && questnaireVO.getIsRelease().equals(1)){ + if (questnaireVO.getIsRelease() != null && questnaireVO.getIsRelease().equals(1)) { questnaireDO.setStartTime(nowDate); } - //统计该调查问卷填报题目数量 + // 统计该调查问卷填报题目数量 int count = 0; - List<QuestnaiteSubVO> questnaiteSubVOS = JSON.parseArray(questnaireVO.getJsonObject().toString(),QuestnaiteSubVO.class); - if(!questnaiteSubVOS.isEmpty()){ + List<QuestnaiteSubVO> questnaiteSubVOS = JSON.parseArray(questnaireVO.getJsonObject(), QuestnaiteSubVO.class); + if (!questnaiteSubVOS.isEmpty()) { count = questnaiteSubVOS.size(); } questnaireDO.setCount(count); questnaireDO.setJsonObject(questnaireVO.getJsonObject()); questnaireDAO.updateById(questnaireDO); - //删除原调查问卷题目以及选项,重新进行新增 + // 删除原调查问卷题目以及选项,重新进行新增 questnaireDAO.deleteQuesSubAll(queId); - //重新新增题目以及题目选项 - if(!questnaiteSubVOS.isEmpty()) { + // 重新新增题目以及题目选项 + if (!questnaiteSubVOS.isEmpty()) { questnaiteSubVOS.forEach(sub -> { ComActQuestnaireSubDO comActQuestnaireSubDO = new ComActQuestnaireSubDO(); comActQuestnaireSubDO.setType(sub.getType()); @@ -274,16 +282,16 @@ comActQuestnaireSubDO.setCreateBy(userId); questnaireSubDAO.insert(comActQuestnaireSubDO); ArrayList<ComActQuestnaireSubSelectionDO> subSelectionList = Lists.newArrayList(); - if(sub.getOptions() != null && !sub.getOptions().isEmpty()) { + if (sub.getOptions() != null && !sub.getOptions().isEmpty()) { List<QuestnaiteSubSelectionVO> subOptions = sub.getOptions(); - for(int i=0; i<subOptions.size(); i++){ + for (int i = 0; i < subOptions.size(); i++) { QuestnaiteSubSelectionVO subSelect = subOptions.get(i); ComActQuestnaireSubSelectionDO subSelectionDO = new ComActQuestnaireSubSelectionDO(); subSelectionDO.setQueSubId(comActQuestnaireSubDO.getId()); - if(subSelect.getType().equals(1)){ - //添加选项名称 + if (subSelect.getType().equals(1)) { + // 添加选项名称 subSelectionDO.setOptionName(subSelect.getOptionName()); - }else { + } else { subSelectionDO.setOptionName(String.valueOf(Character.toChars('A' + i))); } subSelectionDO.setKey(subSelect.getKey()); @@ -304,25 +312,25 @@ public R editQuestnaireDO(EditComActQuestnaireVo editComActQuestnaireVo) { Long userId = editComActQuestnaireVo.getUserId(); LambdaQueryWrapper<ComActQuestnaireDO> subParam = new LambdaQueryWrapper<ComActQuestnaireDO>() - .eq(ComActQuestnaireDO::getId, editComActQuestnaireVo.getQuestId()); + .eq(ComActQuestnaireDO::getId, editComActQuestnaireVo.getQuestId()); ComActQuestnaireDO questDO = questnaireDAO.selectOne(subParam); if (questDO == null) { return R.fail("未查询到调查问卷记录"); } - if(editComActQuestnaireVo.getType().equals(EditComActQuestnaireVo.type.jx)){ - questDO.setEndTime(DateUtils.stringToDate(editComActQuestnaireVo.getEndTime(),DateUtils.ymdhms_format)); + if (editComActQuestnaireVo.getType().equals(EditComActQuestnaireVo.type.jx)) { + questDO.setEndTime(DateUtils.stringToDate(editComActQuestnaireVo.getEndTime(), DateUtils.ymdhms_format)); questDO.setState(ComActQuestnaireDO.state.dyz); - }else if(editComActQuestnaireVo.getType().equals(EditComActQuestnaireVo.type.tz)){ + } else if (editComActQuestnaireVo.getType().equals(EditComActQuestnaireVo.type.tz)) { questDO.setState(ComActQuestnaireDO.state.yjs); - }else if(editComActQuestnaireVo.getType().equals(EditComActQuestnaireVo.type.fb)){ + } else if (editComActQuestnaireVo.getType().equals(EditComActQuestnaireVo.type.fb)) { questDO.setState(ComActQuestnaireDO.state.dyz); questDO.setStartTime(new Date()); } questDO.setUpdateBy(userId); questDO.setUpdateAt(new Date()); - if(questnaireDAO.updateById(questDO) > 0){ + if (questnaireDAO.updateById(questDO) > 0) { return R.ok(); - }else{ + } else { return R.fail(); } } @@ -333,38 +341,40 @@ if (queDO == null) { return R.fail("未查询到调查问卷记录"); } - if(!queDO.getState().equals(ComActQuestnaireDO.state.dfb)){ + if (!queDO.getState().equals(ComActQuestnaireDO.state.dfb)) { return R.fail("该调查问卷不是待发布状态,不可删除"); } queDO.setUpdateBy(userId); queDO.setUpdateAt(new Date()); queDO.setIsHide(1); - if(questnaireDAO.updateById(queDO) > 0){ + if (questnaireDAO.updateById(queDO) > 0) { return R.ok(); - }else{ + } else { return R.fail(); } } @Override public R statQuestnaire(Long questId) { - ComActQuestnaireDO comActQuestnaireDO = questnaireDAO.selectOne(new QueryWrapper<ComActQuestnaireDO>().lambda().eq(ComActQuestnaireDO::getId, questId).eq(ComActQuestnaireDO::getIsHide, 0)); + ComActQuestnaireDO comActQuestnaireDO = questnaireDAO.selectOne(new QueryWrapper<ComActQuestnaireDO>().lambda() + .eq(ComActQuestnaireDO::getId, questId).eq(ComActQuestnaireDO::getIsHide, 0)); - if(comActQuestnaireDO==null){ + if (comActQuestnaireDO == null) { return R.fail("问卷已删除!"); } QuestnaireAnswerStatVO usersAnswerStatVO = new QuestnaireAnswerStatVO(); - //问卷信息 + // 问卷信息 ComActQuestnaireVO comActQuestnaireVO = new ComActQuestnaireVO(); BeanUtils.copyProperties(comActQuestnaireDO, comActQuestnaireVO); usersAnswerStatVO.setQuestnaire(comActQuestnaireVO); - //问卷题目列表 - List<ComActQuestnaireSubDO> comActQuestnaireSubDOList = - questnaireSubDAO.selectList(new QueryWrapper<ComActQuestnaireSubDO>().lambda().eq(ComActQuestnaireSubDO::getQueId, questId)); - //题目统计信息 - List<UserSubAnswerSelectionStatVO> usearSubAnswerSelectionStatVOList = questnaireAnswerContentDAO.selectQuestnaireStat(questId); + // 问卷题目列表 + List<ComActQuestnaireSubDO> comActQuestnaireSubDOList = questnaireSubDAO.selectList( + new QueryWrapper<ComActQuestnaireSubDO>().lambda().eq(ComActQuestnaireSubDO::getQueId, questId)); + // 题目统计信息 + List<UserSubAnswerSelectionStatVO> usearSubAnswerSelectionStatVOList = + questnaireAnswerContentDAO.selectQuestnaireStat(questId); List<UsersSubAnswerStatVO> usersSubAnswerStatVOList = new ArrayList<>(); @@ -379,15 +389,14 @@ usersSubAnswerStatVO.setTotal(0); usearSubAnswerSelectionStatVOList.forEach(stat -> { - if (stat.getSubId().equals(comActQuestnaireSubDO.getId()) - && stat.getTotal()>0) { + if (stat.getSubId().equals(comActQuestnaireSubDO.getId()) && stat.getTotal() > 0) { userSubAnswerSelectionStatVOList.add(stat); } }); usersSubAnswerStatVO.setUsersAnswer(userSubAnswerSelectionStatVOList); - Integer count = questnaireAnswerContentDAO.selectCount(new QueryWrapper<ComActQuestnaireAnswerContentDO>() - .select(" DISTINCT sub_id, user_id ").lambda() - .eq(ComActQuestnaireAnswerContentDO::getSubId, comActQuestnaireSubDO.getId())); + Integer count = questnaireAnswerContentDAO + .selectCount(new QueryWrapper<ComActQuestnaireAnswerContentDO>().select(" DISTINCT sub_id, user_id ") + .lambda().eq(ComActQuestnaireAnswerContentDO::getSubId, comActQuestnaireSubDO.getId())); usersSubAnswerStatVO.setTotal(count); usersSubAnswerStatVOList.add(usersSubAnswerStatVO); }); @@ -402,7 +411,8 @@ @Override public R answerInfoQuestnaire(Long userId, Long questId) { - ComActQuestnaireDO comActQuestnaireDO = questnaireDAO.selectOne(new QueryWrapper<ComActQuestnaireDO>().lambda().eq(ComActQuestnaireDO::getId, questId).eq(ComActQuestnaireDO::getIsHide, 0)); + ComActQuestnaireDO comActQuestnaireDO = questnaireDAO.selectOne(new QueryWrapper<ComActQuestnaireDO>().lambda() + .eq(ComActQuestnaireDO::getId, questId).eq(ComActQuestnaireDO::getIsHide, 0)); if (comActQuestnaireDO == null) { return R.fail("问卷不存在!"); } @@ -412,48 +422,50 @@ BeanUtils.copyProperties(comActQuestnaireDO, comActQuestnaireVO); usersAnswerVO.setQuestnaire(comActQuestnaireVO); - List<ComActQuestnaireSubDO> list = questnaireSubDAO.selectList(new QueryWrapper<ComActQuestnaireSubDO>().lambda().eq(ComActQuestnaireSubDO::getQueId, questId)); + List<ComActQuestnaireSubDO> list = questnaireSubDAO.selectList( + new QueryWrapper<ComActQuestnaireSubDO>().lambda().eq(ComActQuestnaireSubDO::getQueId, questId)); list.sort(Comparator.comparing(ComActQuestnaireSubDO::getSort)); List<UsersSubAnswerVO> usersSubAnswerVOList = new ArrayList<>(); list.forEach(comActQuestnaireSubDO -> { - UsersSubAnswerVO usersSubAnswerVO = new UsersSubAnswerVO(); - //问卷调查题目 - ComActQuestnaireSubVO comActQuestnaireSubVO = new ComActQuestnaireSubVO(); - BeanUtils.copyProperties(comActQuestnaireSubDO, comActQuestnaireSubVO); - usersSubAnswerVO.setQuestSubVO(comActQuestnaireSubVO); + UsersSubAnswerVO usersSubAnswerVO = new UsersSubAnswerVO(); + // 问卷调查题目 + ComActQuestnaireSubVO comActQuestnaireSubVO = new ComActQuestnaireSubVO(); + BeanUtils.copyProperties(comActQuestnaireSubDO, comActQuestnaireSubVO); + usersSubAnswerVO.setQuestSubVO(comActQuestnaireSubVO); - //问卷调查题目-选项 - Long subId = comActQuestnaireSubDO.getId(); - List<ComActQuestnaireSubSelectionDO> comActQuestnaireSubSelectionDOs = - questnaireSubSelectionDAO.selectList(new QueryWrapper<ComActQuestnaireSubSelectionDO>().lambda().eq(ComActQuestnaireSubSelectionDO::getQueSubId, subId)); + // 问卷调查题目-选项 + Long subId = comActQuestnaireSubDO.getId(); + List<ComActQuestnaireSubSelectionDO> comActQuestnaireSubSelectionDOs = + questnaireSubSelectionDAO.selectList(new QueryWrapper<ComActQuestnaireSubSelectionDO>().lambda() + .eq(ComActQuestnaireSubSelectionDO::getQueSubId, subId)); + List<ComActQuestnaireSubSelectionVO> comActQuestnaireSubSelectionVOs = new ArrayList<>(); + comActQuestnaireSubSelectionDOs.forEach(comActQuestnaireSubSelectionDO -> { + ComActQuestnaireSubSelectionVO comActQuestnaireSubSelectionVO = new ComActQuestnaireSubSelectionVO(); + BeanUtils.copyProperties(comActQuestnaireSubSelectionDO, comActQuestnaireSubSelectionVO); + comActQuestnaireSubSelectionVOs.add(comActQuestnaireSubSelectionVO); + }); + usersSubAnswerVO.setQuestSelectionList(comActQuestnaireSubSelectionVOs); + // 用户回答 + if (userId != null) { + List<ComActQuestnaireAnswerContentDO> questnaireAnswerContentDOList = + questnaireAnswerContentDAO.selectList(new QueryWrapper<ComActQuestnaireAnswerContentDO>().lambda() + .eq(ComActQuestnaireAnswerContentDO::getUserId, userId) + .eq(ComActQuestnaireAnswerContentDO::getSubId, subId)); - List<ComActQuestnaireSubSelectionVO> comActQuestnaireSubSelectionVOs = new ArrayList<>(); - comActQuestnaireSubSelectionDOs.forEach(comActQuestnaireSubSelectionDO -> { - ComActQuestnaireSubSelectionVO comActQuestnaireSubSelectionVO = new ComActQuestnaireSubSelectionVO(); - BeanUtils.copyProperties(comActQuestnaireSubSelectionDO, comActQuestnaireSubSelectionVO); - comActQuestnaireSubSelectionVOs.add(comActQuestnaireSubSelectionVO); - }); - usersSubAnswerVO.setQuestSelectionList(comActQuestnaireSubSelectionVOs); - //用户回答 - if (userId != null) { - List<ComActQuestnaireAnswerContentDO> questnaireAnswerContentDOList = - questnaireAnswerContentDAO.selectList(new QueryWrapper<ComActQuestnaireAnswerContentDO>().lambda().eq(ComActQuestnaireAnswerContentDO::getUserId, userId) - .eq(ComActQuestnaireAnswerContentDO::getSubId, subId)); + List<ComActQuestnaireAnswerContentVO> questnaireAnswerContentVOList = new ArrayList<>(); + questnaireAnswerContentDOList.forEach(questnaireAnswerContentDO -> { + ComActQuestnaireAnswerContentVO comActQuestnaireSubSelectionVO = + new ComActQuestnaireAnswerContentVO(); + BeanUtils.copyProperties(questnaireAnswerContentDO, comActQuestnaireSubSelectionVO); + questnaireAnswerContentVOList.add(comActQuestnaireSubSelectionVO); + }); - List<ComActQuestnaireAnswerContentVO> questnaireAnswerContentVOList = new ArrayList<>(); - questnaireAnswerContentDOList.forEach(questnaireAnswerContentDO -> { - ComActQuestnaireAnswerContentVO comActQuestnaireSubSelectionVO = new ComActQuestnaireAnswerContentVO(); - BeanUtils.copyProperties(questnaireAnswerContentDO, comActQuestnaireSubSelectionVO); - questnaireAnswerContentVOList.add(comActQuestnaireSubSelectionVO); - }); - - usersSubAnswerVO.setUsersAnswer(questnaireAnswerContentVOList); - } - usersSubAnswerVOList.add(usersSubAnswerVO); - } - ); + usersSubAnswerVO.setUsersAnswer(questnaireAnswerContentVOList); + } + usersSubAnswerVOList.add(usersSubAnswerVO); + }); usersAnswerVO.setUsersSubAnswer(usersSubAnswerVOList); return R.ok(usersAnswerVO); @@ -465,25 +477,24 @@ /** * 查询题目 */ - List<ComActQuestnaireSubDO> list = questnaireSubDAO.selectList(new QueryWrapper<ComActQuestnaireSubDO>().lambda().eq(ComActQuestnaireSubDO::getQueId, questId)); + List<ComActQuestnaireSubDO> list = questnaireSubDAO.selectList( + new QueryWrapper<ComActQuestnaireSubDO>().lambda() + .eq(ComActQuestnaireSubDO::getQueId, questId).orderByAsc(ComActQuestnaireSubDO::getCreateAt)); List<ComActQuestnaireSubVO> listSubVo = new ArrayList<>(); list.forEach(subDo -> { - ComActQuestnaireSubVO comActQuestnaireSubVO = new ComActQuestnaireSubVO(); - BeanUtils.copyProperties(subDo, comActQuestnaireSubVO); - listSubVo.add(comActQuestnaireSubVO); + if(!subDo.getType().equals(ComActQuestnaireSubDO.type.describe)){ + ComActQuestnaireSubVO comActQuestnaireSubVO = new ComActQuestnaireSubVO(); + BeanUtils.copyProperties(subDo, comActQuestnaireSubVO); + listSubVo.add(comActQuestnaireSubVO); + } }); questnaireAnswersDTO.setSubs(listSubVo); /** * 查询用户回答 */ - List<ComActQuestnaireAnswerContentDO> questnaireAnswerContentDOList = questnaireAnswerContentDAO.selectListByQuestnaire(questId); - List<ComActQuestnaireAnswerContentVO> vos = new ArrayList<>(); - questnaireAnswerContentDOList.forEach(dos -> { - ComActQuestnaireAnswerContentVO vo = new ComActQuestnaireAnswerContentVO(); - BeanUtils.copyProperties(dos, vo); - vos.add(vo); - }); - questnaireAnswersDTO.setAnswers(vos); + List<ComActQuestnaireAnswerContentVO> questnaireAnswerContentDOList = + questnaireAnswerContentDAO.selectListByQuestnaire(questId); + questnaireAnswersDTO.setAnswers(questnaireAnswerContentDOList); return R.ok(questnaireAnswersDTO); } @@ -492,20 +503,21 @@ public R qaQeustDetails(PageQuestnaireSubDetailsDTO pageQuestnaireSubDetailsDTO) { Page userPage = new Page(pageQuestnaireSubDetailsDTO.getPageNum(), pageQuestnaireSubDetailsDTO.getPageSize()); IPage<ComActQuestnaireAnswerContentVO> doPager = - questnaireAnswerContentDAO.selectVoByPage(userPage, pageQuestnaireSubDetailsDTO); + questnaireAnswerContentDAO.selectVoByPage(userPage, pageQuestnaireSubDetailsDTO); return R.ok(doPager); } @Override public R pageQuestnaireAnswer(PageQuestnaireAnswerDTO pageQuestnaireAnswerDTO) { - if(pageQuestnaireAnswerDTO.getPageNum()==null||pageQuestnaireAnswerDTO.getPageNum().longValue()==0){ - pageQuestnaireAnswerDTO.setPageNum(1l); + if (pageQuestnaireAnswerDTO.getPageNum() == null || pageQuestnaireAnswerDTO.getPageNum().longValue() == 0) { + pageQuestnaireAnswerDTO.setPageNum(1L); } - if(pageQuestnaireAnswerDTO.getPageSize()==null||pageQuestnaireAnswerDTO.getPageSize().longValue()==0){ - pageQuestnaireAnswerDTO.setPageSize(10l); + if (pageQuestnaireAnswerDTO.getPageSize() == null || pageQuestnaireAnswerDTO.getPageSize().longValue() == 0) { + pageQuestnaireAnswerDTO.setPageSize(10L); } Page userPage = new Page(pageQuestnaireAnswerDTO.getPageNum(), pageQuestnaireAnswerDTO.getPageSize()); - IPage<ComActQuestnaireAnswerContentVO> doPager = questnaireAnswerContentDAO.selectAnswersByPage(userPage, pageQuestnaireAnswerDTO); + IPage<ComActQuestnaireAnswerContentVO> doPager = + questnaireAnswerContentDAO.selectAnswersByPage(userPage, pageQuestnaireAnswerDTO); return R.ok(doPager); } @@ -524,39 +536,62 @@ return R.fail("调查问卷不存在!"); } - if(!questnaireDO.getState().equals(ComActQuestnaireDO.state.dyz)){ + if (!questnaireDO.getState().equals(ComActQuestnaireDO.state.dyz)) { return R.fail("该调查问卷已结束,不可提交!"); } - ComActQuestnaireUserAnswerDO oldUserAnswerDO = comActQuestnaireUserAnswerMapper.selectOne(new QueryWrapper<ComActQuestnaireUserAnswerDO>().lambda() - .eq(ComActQuestnaireUserAnswerDO::getQuestnaireId,questId).eq(ComActQuestnaireUserAnswerDO::getUserId,userId)); - if(oldUserAnswerDO != null){ + ComActQuestnaireUserAnswerDO oldUserAnswerDO = + comActQuestnaireUserAnswerMapper.selectOne(new QueryWrapper<ComActQuestnaireUserAnswerDO>().lambda() + .eq(ComActQuestnaireUserAnswerDO::getQuestnaireId, questId) + .eq(ComActQuestnaireUserAnswerDO::getUserId, userId)); + if (oldUserAnswerDO != null) { return R.fail("您已填写该问卷,不可重复提交"); + } + + // 查询填报人员信息 + R<LoginUserInfoVO> userResult = userService.getUserInfoByUserId(userId + ""); + if (!R.isOk(userResult)) { + log.error("填写问卷调查失败,未查询到用户信息"); + return R.fail("填写失败"); + } + LoginUserInfoVO userInfo = userResult.getData(); + if (questnaireDO.getForParty().equals(ComActQuestnaireDO.isOk.yes)) { + if (!userInfo.getIsPartymember().equals(1)) { + return R.fail("您还未进行党员认证,无法填报"); + } + } + if (questnaireDO.getForVolunteer().equals(ComActQuestnaireDO.isOk.yes)) { + if (!userInfo.getIsVolunteer().equals(1)) { + return R.fail("您还未进行志愿者认证,无法填报"); + } } List<ComActQuestnaireAnswerContentDO> answerContentList = new ArrayList<>(); - //解析用户上传json数据 - List<QuestnaiteSubVO> questnaiteSubVOS = JSON.parseArray(answerQuestnaireVO.getJsonObject().toString(),QuestnaiteSubVO.class); - if(!questnaiteSubVOS.isEmpty()){ - for (QuestnaiteSubVO questnaiteSub:questnaiteSubVOS) { - //查询用户填写题目 - ComActQuestnaireSubDO questnaireSubDO = questnaireSubDAO.selectOne(new QueryWrapper<ComActQuestnaireSubDO>().lambda() - .eq(ComActQuestnaireSubDO::getQueId,questId).eq(ComActQuestnaireSubDO::getKey,questnaiteSub.getKey())); - if(questnaireSubDO == null){ + // 解析用户上传json数据 + List<QuestnaiteSubVO> questnaiteSubVOS = + JSON.parseArray(answerQuestnaireVO.getJsonObject(), QuestnaiteSubVO.class); + if (!questnaiteSubVOS.isEmpty()) { + for (QuestnaiteSubVO questnaiteSub : questnaiteSubVOS) { + // 查询用户填写题目 + ComActQuestnaireSubDO questnaireSubDO = questnaireSubDAO.selectOne( + new QueryWrapper<ComActQuestnaireSubDO>().lambda().eq(ComActQuestnaireSubDO::getQueId, questId) + .eq(ComActQuestnaireSubDO::getKey, questnaiteSub.getKey())); + if (questnaireSubDO == null) { log.error("未查询到调查问卷题目,题目名称:" + questnaiteSub.getLabel() + "题目key:" + questnaiteSub.getKey()); continue; } Long queSubId = questnaireSubDO.getId(); - //根据上传的类型查询不同的题目选项 - if(questnaiteSub.getType().equals(QuestnaiteSubVO.type.danxuan)){ - - //单选题处理 - ComActQuestnaireSubSelectionDO subSelectionDO = questnaireSubSelectionDAO.selectOne(new QueryWrapper<ComActQuestnaireSubSelectionDO>() - .lambda().eq(ComActQuestnaireSubSelectionDO::getQueSubId,queSubId).eq(ComActQuestnaireSubSelectionDO::getQueId,questId) - .eq(ComActQuestnaireSubSelectionDO::getKey,questnaiteSub.getValues())); - if(subSelectionDO == null){ + // 根据上传的类型查询不同的题目选项 + if (questnaiteSub.getType().equals(QuestnaiteSubVO.type.danxuan) || questnaiteSub.getType().equals(QuestnaiteSubVO.type.imgselect)) { + // 单选题处理 + ComActQuestnaireSubSelectionDO subSelectionDO = + questnaireSubSelectionDAO.selectOne(new QueryWrapper<ComActQuestnaireSubSelectionDO>().lambda() + .eq(ComActQuestnaireSubSelectionDO::getQueSubId, queSubId) + .eq(ComActQuestnaireSubSelectionDO::getQueId, questId) + .eq(ComActQuestnaireSubSelectionDO::getKey, questnaiteSub.getValues())); + if (subSelectionDO == null) { log.error("未查询到调查问卷选项,题目名称:" + questnaiteSub.getLabel() + "选项key:" + questnaiteSub.getValues()); continue; } @@ -571,16 +606,19 @@ answerContentDO.setChoice(subSelectionDO.getOptionName()); answerContentDO.setAnswerContent(subSelectionDO.getContent()); answerContentList.add(answerContentDO); - }else if(questnaiteSub.getType().equals(QuestnaiteSubVO.type.duoxuan)){ - //多选题处理 + } else if (questnaiteSub.getType().equals(QuestnaiteSubVO.type.duoxuan)) { + // 多选题处理 String values = questnaiteSub.getValues(); - String []value = values.split(","); + String[] value = values.split(","); for (int i = 0; i < value.length; i++) { - ComActQuestnaireSubSelectionDO subSelectionDO = questnaireSubSelectionDAO.selectOne(new QueryWrapper<ComActQuestnaireSubSelectionDO>() - .lambda().eq(ComActQuestnaireSubSelectionDO::getQueSubId,queSubId).eq(ComActQuestnaireSubSelectionDO::getQueId,questId) - .eq(ComActQuestnaireSubSelectionDO::getKey,value[i])); - if(subSelectionDO == null){ - log.error("未查询到调查问卷选项,题目名称:" + questnaiteSub.getLabel() + "选项key:" + questnaiteSub.getValues()); + ComActQuestnaireSubSelectionDO subSelectionDO = + questnaireSubSelectionDAO.selectOne(new QueryWrapper<ComActQuestnaireSubSelectionDO>() + .lambda().eq(ComActQuestnaireSubSelectionDO::getQueSubId, queSubId) + .eq(ComActQuestnaireSubSelectionDO::getQueId, questId) + .eq(ComActQuestnaireSubSelectionDO::getKey, value[i])); + if (subSelectionDO == null) { + log.error( + "未查询到调查问卷选项,题目名称:" + questnaiteSub.getLabel() + "选项key:" + questnaiteSub.getValues()); continue; } ComActQuestnaireAnswerContentDO answerContentDO = new ComActQuestnaireAnswerContentDO(); @@ -594,8 +632,8 @@ answerContentDO.setAnswerContent(subSelectionDO.getContent()); answerContentList.add(answerContentDO); } - }else if(questnaiteSub.getType().equals(QuestnaiteSubVO.type.wenda)){ - //问答题处理 + } else { + // 问答题处理 String values = questnaiteSub.getValues(); ComActQuestnaireAnswerContentDO answerContentDO = new ComActQuestnaireAnswerContentDO(); answerContentDO.setUserId(userId); @@ -608,16 +646,14 @@ } } } - //新增用户填写的答卷 - if(!answerContentList.isEmpty()){ - answerContentService.saveBatch(answerContentList); - - //更新回答用户数量 + // 新增用户填写的答卷 + if (!answerContentList.isEmpty()) { + // 更新回答用户数量 Integer joinCount = questnaireDO.getJoinCount(); questnaireDO.setJoinCount(joinCount != null ? joinCount + 1 : 1); questnaireDAO.updateById(questnaireDO); - //新增用户答题记录 + // 新增用户答题记录 ComActQuestnaireUserAnswerDO userAnswerDO = new ComActQuestnaireUserAnswerDO(); userAnswerDO.setQuestnaireId(questId); userAnswerDO.setUserId(userId); @@ -625,19 +661,26 @@ userAnswerDO.setJsonObject(answerQuestnaireVO.getJsonObject()); comActQuestnaireUserAnswerMapper.insert(userAnswerDO); + answerContentList.forEach(answerContent -> { + answerContent.setAnswerId(userAnswerDO.getId()); + }); + answerContentService.saveBatch(answerContentList); + } return R.ok(); } /** * 社区后台-查询问卷调查详情 - * @param questId 问卷id - * @return 问卷调查详情 + * + * @param questId + * 问卷id + * @return 问卷调查详情 */ @Override - public R getQuesDetailAdmin(Long questId){ + public R getQuesDetailAdmin(Long questId) { QuestnaireDetailAdminVO result = questnaireDAO.getQuesDetailAdmin(questId); - if(result == null){ + if (result == null) { return R.fail("未查询到该记录"); } return R.ok(result); @@ -645,19 +688,24 @@ /** * 小程序-问卷调查详情 - * @param userId 用户id - * @param questId 问卷id - * @return 问卷调查详情 + * + * @param userId + * 用户id + * @param questId + * 问卷id + * @return 问卷调查详情 */ @Override - public R getQuesDetail(Long questId,Long userId){ - QuestnaireDetailAdminVO result = questnaireDAO.getQuesDetail(questId,userId); - if(result == null){ + public R getQuesDetail(Long questId, Long userId) { + QuestnaireDetailAdminVO result = questnaireDAO.getQuesDetail(questId, userId); + if (result == null) { return R.fail("未查询到该记录"); } - ComActQuestnaireUserAnswerDO oldUserAnswerDO = comActQuestnaireUserAnswerMapper.selectOne(new QueryWrapper<ComActQuestnaireUserAnswerDO>().lambda() - .eq(ComActQuestnaireUserAnswerDO::getQuestnaireId,questId).eq(ComActQuestnaireUserAnswerDO::getUserId,userId)); - if(oldUserAnswerDO != null){ + ComActQuestnaireUserAnswerDO oldUserAnswerDO = + comActQuestnaireUserAnswerMapper.selectOne(new QueryWrapper<ComActQuestnaireUserAnswerDO>().lambda() + .eq(ComActQuestnaireUserAnswerDO::getQuestnaireId, questId) + .eq(ComActQuestnaireUserAnswerDO::getUserId, userId)); + if (oldUserAnswerDO != null) { result.setIsOk(1); } @@ -666,17 +714,22 @@ /** * 问卷调查统计汇总 - * @param summaryDTO 请求参数 - * @return 统计汇总 + * + * @param summaryDTO + * 请求参数 + * @return 统计汇总 */ @Override - public R statisticsSummary(StatisticsSummaryDTO summaryDTO){ - IPage<QuestnaireStatisticsSummaryAdminVO> summaryAdminList = questnaireDAO.getStatisticsSummaryAdmin(new Page(summaryDTO.getPageNum(),summaryDTO.getPageSize()),summaryDTO); + public R statisticsSummary(StatisticsSummaryDTO summaryDTO) { + IPage<QuestnaireStatisticsSummaryAdminVO> summaryAdminList = questnaireDAO + .getStatisticsSummaryAdmin(new Page(summaryDTO.getPageNum(), summaryDTO.getPageSize()), summaryDTO); summaryAdminList.getRecords().forEach(summary -> { - if(summary.getAllCount().equals(0)){ + if (summary.getAllCount().equals(0)) { summary.setTag(BigDecimal.ZERO); - }else{ - summary.setTag(BigDecimal.valueOf(summary.getCount()).divide(BigDecimal.valueOf(summary.getAllCount()),2, RoundingMode.HALF_UP).multiply(BigDecimal.valueOf(100))); + } else { + summary.setTag(BigDecimal.valueOf(summary.getCount()) + .divide(BigDecimal.valueOf(summary.getAllCount()), 2, RoundingMode.HALF_UP) + .multiply(BigDecimal.valueOf(100))); } }); return R.ok(summaryAdminList); @@ -684,17 +737,22 @@ /** * 问卷调查统计汇总导出数据查询 - * @param questId 调查问卷id - * @return 调查统计汇总导出数据 + * + * @param questId + * 调查问卷id + * @return 调查统计汇总导出数据 */ @Override - public R statisticsSummaryExport(Long questId){ - List<QuestnaireStatisticsSummaryExcelAdminVO> summaryExcelList = questnaireDAO.getStatisticsSummaryExcelAdmin(questId); + public R statisticsSummaryExport(Long questId) { + List<QuestnaireStatisticsSummaryExcelAdminVO> summaryExcelList = + questnaireDAO.getStatisticsSummaryExcelAdmin(questId); summaryExcelList.forEach(summary -> { - if(summary.getAllCount().equals(0)){ + if (summary.getAllCount().equals(0)) { summary.setTag(BigDecimal.ZERO); - }else{ - summary.setTag(BigDecimal.valueOf(summary.getCount()).divide(BigDecimal.valueOf(summary.getAllCount()),2, RoundingMode.HALF_UP).multiply(BigDecimal.valueOf(100))); + } else { + summary.setTag(BigDecimal.valueOf(summary.getCount()) + .divide(BigDecimal.valueOf(summary.getAllCount()), 2, RoundingMode.HALF_UP) + .multiply(BigDecimal.valueOf(100))); } }); return R.ok(summaryExcelList); @@ -702,17 +760,20 @@ /** * 问卷调查统计汇总表头统计 - * @param questId 调查问卷id - * @return 问卷调查统计汇总表头统计数据 + * + * @param questId + * 调查问卷id + * @return 问卷调查统计汇总表头统计数据 */ @Override - public R statisticsSummaryHeader(Long questId,Long communityId){ - QuestnaireStatisticsSummaryHeaderAdminVO summaryHeaderAdminVO = this.questnaireDAO.statisticsSummaryHeader(questId,communityId); - if(summaryHeaderAdminVO != null){ - if(!summaryHeaderAdminVO.getUserCount().equals(0)){ + public R statisticsSummaryHeader(Long questId, Long communityId) { + QuestnaireStatisticsSummaryHeaderAdminVO summaryHeaderAdminVO = + this.questnaireDAO.statisticsSummaryHeader(questId, communityId); + if (summaryHeaderAdminVO != null) { + if (!summaryHeaderAdminVO.getUserCount().equals(0)) { BigDecimal nub1 = BigDecimal.valueOf(summaryHeaderAdminVO.getAllCount()); BigDecimal nub2 = BigDecimal.valueOf(summaryHeaderAdminVO.getUserCount()); - BigDecimal result = nub1.divide(nub2,2,RoundingMode.HALF_UP).multiply(BigDecimal.valueOf(100)); + BigDecimal result = nub1.divide(nub2, 2, RoundingMode.HALF_UP).multiply(BigDecimal.valueOf(100)); summaryHeaderAdminVO.setTag(result); } } @@ -724,22 +785,22 @@ */ @Override @Transactional(rollbackFor = Exception.class) - public R timedTaskQuestionnaire(){ + public R timedTaskQuestionnaire() { Date nowDate = new Date(); - //查询所有开始时间已经超过当前时间的待发布状态调查问卷 - List<ComActQuestnaireDO> questnaireDOList = questnaireDAO.selectList(new QueryWrapper<ComActQuestnaireDO>().lambda() - .eq(ComActQuestnaireDO::getState,ComActQuestnaireDO.state.dfb).eq(ComActQuestnaireDO::getIsHide,0) - .le(ComActQuestnaireDO::getStartTime,nowDate)); + // 查询所有开始时间已经超过当前时间的待发布状态调查问卷 + List<ComActQuestnaireDO> questnaireDOList = questnaireDAO.selectList(new QueryWrapper<ComActQuestnaireDO>() + .lambda().eq(ComActQuestnaireDO::getState, ComActQuestnaireDO.state.dfb) + .eq(ComActQuestnaireDO::getIsHide, 0).le(ComActQuestnaireDO::getStartTime, nowDate)); questnaireDOList.forEach(questnaire -> { questnaire.setState(ComActQuestnaireDO.state.dyz); questnaire.setPublishTime(nowDate); questnaireDAO.updateById(questnaire); }); - //查询所有结束时间已经超过当前时间的调研中状态调查问卷 - List<ComActQuestnaireDO> questnaireList = questnaireDAO.selectList(new QueryWrapper<ComActQuestnaireDO>().lambda() - .eq(ComActQuestnaireDO::getState,ComActQuestnaireDO.state.dyz).eq(ComActQuestnaireDO::getIsHide,0) - .le(ComActQuestnaireDO::getEndTime,nowDate)); + // 查询所有结束时间已经超过当前时间的调研中状态调查问卷 + List<ComActQuestnaireDO> questnaireList = questnaireDAO.selectList(new QueryWrapper<ComActQuestnaireDO>() + .lambda().eq(ComActQuestnaireDO::getState, ComActQuestnaireDO.state.dyz) + .eq(ComActQuestnaireDO::getIsHide, 0).le(ComActQuestnaireDO::getEndTime, nowDate)); questnaireList.forEach(questnaire -> { questnaire.setState(ComActQuestnaireDO.state.yjs); questnaireDAO.updateById(questnaire); @@ -749,13 +810,15 @@ /** * 小程序-新增问卷调查浏览数量 - * @param questId 问卷调查id - * @return 增加结果 + * + * @param questId + * 问卷调查id + * @return 增加结果 */ @Override - public R addQuestnaireView(Long questId){ + public R addQuestnaireView(Long questId) { ComActQuestnaireDO questnaireDO = questnaireDAO.selectById(questId); - if(questnaireDO != null){ + if (questnaireDO != null) { questnaireDO.setViewNum(questnaireDO.getViewNum() + 1); questnaireDAO.updateById(questnaireDO); } @@ -764,13 +827,16 @@ /** * 小程序-用户弹窗添加不在提醒接口 - * @param questId 问卷id - * @param userId 用户id - * @return 添加结果 + * + * @param questId + * 问卷id + * @param userId + * 用户id + * @return 添加结果 */ @Override - public R addNoNotice(Long questId,Long userId){ - questnaireDAO.addNoNotice(questId,userId); + public R addNoNotice(Long questId, Long userId) { + questnaireDAO.addNoNotice(questId, userId); return R.ok(); } -- Gitblit v1.7.1