101captain
2021-11-26 befacc0412ab011e5cd41a8cf732a1f988600c77
1126天府通办相关功能提交
7个文件已修改
182 ■■■■■ 已修改文件
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/ComActReserveApi.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityActivityApi.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityConvenientApi.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComActReserveApi.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActReserveService.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActReserveServiceImpl.java 125 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java
@@ -5514,6 +5514,8 @@
    @PostMapping("/reserve/commit")
    R reserveCommit(@RequestBody ComActReserveCommitVO comActReserveCommitVO);
    @PostMapping("/reserve/commitNoToken")
    R reserveCommitNoToken(@RequestBody ComActReserveCommitVO comActReserveCommitVO);
    /**
     * 我的预约/登记
     * @param pageUserReserveDTO
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/ComActReserveApi.java
@@ -8,6 +8,7 @@
import javax.annotation.Resource;
import com.panzhihua.common.model.vos.community.ComActReserveCommitVO;
import com.panzhihua.common.model.vos.community.reserve.HomeQuarantineRegisterExportVO;
import org.apache.poi.ss.usermodel.HorizontalAlignment;
import org.apache.poi.ss.usermodel.VerticalAlignment;
@@ -738,4 +739,15 @@
        return communityService.registerDetailedDetailAdmin(reserveRecordId);
    }
    @ApiOperation("对外用户提交数据")
    @PostMapping("/commit/noToken")
    public R commitNoToken(@RequestBody ComActReserveCommitVO comActReserveCommitVO){
        return communityService.reserveCommitNoToken(comActReserveCommitVO);
    }
    @ApiOperation(value = "查询西区社区列表")
    @GetMapping("/westList/noToken")
    public R getWestCommunityLists() {
        return communityService.getWestCommunityLists();
    }
}
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityActivityApi.java
@@ -589,16 +589,6 @@
        if (ObjectUtils.isEmpty(id)) {
            return R.fail("动态主键不能为空");
        }
        Date publishAt = comActDynVO.getPublishAt();
        if (!ObjectUtils.isEmpty(publishAt)) {
            long time = publishAt.getTime();
            long l = System.currentTimeMillis();
            if (l >= time) {
                comActDynVO.setStatus(1);
            } else {
                comActDynVO.setStatus(0);
            }
        }
        comActDynVO.setCommunityId(communityId);
        return communityService.putDynamic(comActDynVO);
    }
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityConvenientApi.java
@@ -215,6 +215,24 @@
        }
    }
    @ApiOperation(value = "上传文件")
    @PostMapping(value = "/upload/file/noToken", consumes = "multipart/*", headers = "content-type=multipart/form-date")
    public R uploadImageNoToken(@RequestParam MultipartFile file, HttpServletRequest request) {
        String extension = FilenameUtils.getExtension(file.getOriginalFilename());
        String name = UUID.randomUUID().toString().replaceAll("-", "") + "." + extension;
        try {
            SFTPUtil sftp = new SFTPUtil(userName, password, host, port);
            sftp.login();
            InputStream is = file.getInputStream();
            sftp.uploadMore(FtpConstants.FTPFILEPATH_IDCARD, name, is);
            sftp.logout();
            return R.ok(url + "/idcard/" + name);
        } catch (Exception e) {
            log.error("上传照片失败【{}】", e.getMessage());
            return R.fail();
        }
    }
    @ApiOperation(value = "minio上传文件测试")
    @PostMapping(value = "/minio/upload/file", consumes = "multipart/*", headers = "content-type=multipart/form-date")
    public R minipuploadImage(@RequestParam MultipartFile file, HttpServletRequest request) {
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComActReserveApi.java
@@ -111,8 +111,14 @@
    }
    /**
     *
     * 外部调用提交预约/登记
     * @param comActReserveCommitVO
     * @return
     */
    @PostMapping("/commitNoToken")
    public R commitNoToken(@RequestBody ComActReserveCommitVO comActReserveCommitVO){
        return comActReserveService.commitNoToken(comActReserveCommitVO);
    }
    /**
     * 小程序提交预约/登记
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActReserveService.java
@@ -22,6 +22,13 @@
    R commit(ComActReserveCommitVO comActReserveCommitVO);
    /**
     * 外部提交预约登记
     * @param comActReserveCommitVO
     * @return 预约登记结果
     */
    R commitNoToken(ComActReserveCommitVO comActReserveCommitVO);
    /**
     * 小程序我的预约登记
     * @param pageUserReserveDTO
     * @return 预约登记列表
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActReserveServiceImpl.java
@@ -231,6 +231,131 @@
        return R.fail("参数错误");
    }
    @Override
    public R commitNoToken(ComActReserveCommitVO comActReserveCommitVO) {
        if(comActReserveCommitVO!=null){
            ComActReserveDO comActReserveDO=new ComActReserveDO();
            Date nowDate=DateUtil.date();
            //查询预约登记记录
            List<ComActReserveDO> list=comActReserveMapper.selectList(new QueryWrapper<ComActReserveDO>().lambda().eq(ComActReserveDO::getCommunityId,comActReserveCommitVO.getCommunityId()).eq(ComActReserveDO::getTitle,"返攀登记"));
            if(!list.isEmpty()){
                comActReserveDO=list.get(0);
            }
            comActReserveCommitVO.setId(comActReserveDO.getId());
            if(comActReserveDO!=null){
                    List<QuestnaiteSubVO> questnaiteSubVOS = JSON.parseArray(comActReserveCommitVO.getJsonObject(),QuestnaiteSubVO.class);
                    if(!questnaiteSubVOS.isEmpty()){
                        Long questId=comActReserveCommitVO.getId();
                        List<ComActReserveAnswerContentDO> answerContentList=new ArrayList<>();
                        for(QuestnaiteSubVO questnaiteSub:questnaiteSubVOS){
                            //查询用户填写题目
                            ComActReserveSubDO questnaireSubDO = comActReserveSubMapper.selectOne(new QueryWrapper<ComActReserveSubDO>().lambda()
                                    .eq(ComActReserveSubDO::getReserveId,questId).eq(ComActReserveSubDO::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) || questnaiteSub.getType().equals(QuestnaiteSubVO.type.imgselect)){
                                //单选题处理
                                ComActReserveSubSelectionDO subSelectionDO = comActReserveSubSelectionMapper.selectOne(new QueryWrapper<ComActReserveSubSelectionDO>()
                                        .lambda().eq(ComActReserveSubSelectionDO::getReserveSubId,queSubId).eq(ComActReserveSubSelectionDO::getReserveId,questId)
                                        .eq(ComActReserveSubSelectionDO::getKey,questnaiteSub.getValues()));
                                if(subSelectionDO == null){
                                    log.error("未查询到调查问卷选项,题目名称:" + questnaiteSub.getLabel() + "选项key:" + questnaiteSub.getValues());
                                    continue;
                                }
                                ComActReserveAnswerContentDO answerContentDO = new ComActReserveAnswerContentDO();
                                answerContentDO.setCreateAt(nowDate);
                                answerContentDO.setReserveSelectionId(subSelectionDO.getId());
                                answerContentDO.setReserveSubId(queSubId);
                                answerContentDO.setType(1);
                                answerContentDO.setChoice(subSelectionDO.getOptionName());
                                answerContentDO.setAnswerContent(subSelectionDO.getContent());
                                answerContentList.add(answerContentDO);
                            }else if(questnaiteSub.getType().equals(QuestnaiteSubVO.type.duoxuan)){
                                //多选题处理
                                String values = questnaiteSub.getValues();
                                String []value = values.split(",");
                                for (int i = 0; i < value.length; i++) {
                                    ComActReserveSubSelectionDO subSelectionDO = comActReserveSubSelectionMapper.selectOne(new QueryWrapper<ComActReserveSubSelectionDO>()
                                            .lambda().eq(ComActReserveSubSelectionDO::getReserveSubId,queSubId).eq(ComActReserveSubSelectionDO::getReserveId,questId)
                                            .eq(ComActReserveSubSelectionDO::getKey,value[i]));
                                    if(subSelectionDO == null){
                                        log.error("未查询到调查问卷选项,题目名称:" + questnaiteSub.getLabel() + "选项key:" + questnaiteSub.getValues());
                                        continue;
                                    }
                                    ComActReserveAnswerContentDO answerContentDO = new ComActReserveAnswerContentDO();
                                    answerContentDO.setCreateAt(nowDate);
                                    answerContentDO.setReserveSelectionId(subSelectionDO.getId());
                                    answerContentDO.setReserveSubId(queSubId);
                                    answerContentDO.setType(1);
                                    answerContentDO.setChoice(subSelectionDO.getOptionName());
                                    answerContentDO.setAnswerContent(subSelectionDO.getContent());
                                    answerContentList.add(answerContentDO);
                                }
                            }else{
                                //文字描述不做处理
                                if(!questnaiteSub.getType().equals(QuestnaiteSubVO.type.describe)){
                                    //问答题处理
                                    String values = questnaiteSub.getValues();
                                    ComActReserveAnswerContentDO answerContentDO = new ComActReserveAnswerContentDO();
                                    answerContentDO.setCreateAt(nowDate);
                                    answerContentDO.setReserveSubId(queSubId);
                                    answerContentDO.setType(2);
                                    answerContentDO.setAnswerContent(values);
                                    answerContentList.add(answerContentDO);
                                }
                            }
                        }
                        if(!answerContentList.isEmpty()){
                            //更新回答用户数量
                            Integer joinCount = comActReserveDO.getJoinCount();
                            comActReserveDO.setJoinCount(joinCount != null ? joinCount + 1 : 1);
                            comActReserveMapper.updateById(comActReserveDO);
                            //新增用户答题记录
                            ComActReserveRecordDO userAnswerDO = new ComActReserveRecordDO();
                            userAnswerDO.setContent(comActReserveCommitVO.getContent()!=null?comActReserveCommitVO.getContent():"");
                            userAnswerDO.setName(comActReserveCommitVO.getName()!=null?comActReserveCommitVO.getName():"");
                            userAnswerDO.setCommunityId(comActReserveCommitVO.getCommunityId());
                            userAnswerDO.setPhone(comActReserveCommitVO.getPhone()!=null?comActReserveCommitVO.getPhone():"");
                            userAnswerDO.setReserveId(questId);
                            userAnswerDO.setReserveTime(comActReserveCommitVO.getReserveTime()!=null?comActReserveCommitVO.getReserveTime():new Date());
                            userAnswerDO.setType(comActReserveCommitVO.getType()!=null? comActReserveCommitVO.getType() : 2);
                            userAnswerDO.setCreateAt(nowDate);
                            userAnswerDO.setJsonObject(comActReserveCommitVO.getJsonObject());
                            userAnswerDO.setStatus(ComActReserveRecordDO.status.cg);
                            comActReserveRecordService.saveOrUpdate(userAnswerDO);
                            //给答题记录赋值预约登记记录id
                            answerContentList.forEach(answerContent -> {
                                answerContent.setReserveRecordId(userAnswerDO.getId());
                            });
                            comActReserveAnswerContentService.saveBatch(answerContentList);
                            //新增用户操作记录
                            ComActReserveOperationRecordDO comActReserveOperationRecordDO=new ComActReserveOperationRecordDO();
                            comActReserveOperationRecordDO.setReserveId(comActReserveCommitVO.getId());
                            comActReserveOperationRecordDO.setReserveRecordId(userAnswerDO.getId());
                            comActReserveOperationRecordDO.setType(ComActReserveOperationRecordDO.type.br);
                            comActReserveOperationRecordDO.setCreateAt(DateUtil.date());
                            comActReserveOperationRecordDO.setReserveTime(comActReserveCommitVO.getReserveTime());
                            comActReserveOperationRecordDO.setReserveContent(COMMIT);
                            //comActReserveOperationRecordDO.setPhone(comActReserveCommitVO.getPhone());
                            comActReserveOperationRecordDO.setStatus(ComActReserveOperationRecordDO.status.ytj);
                            //comActReserveOperationRecordDO.setRemark(comActReserveCommitVO.getContent());
                            comActReserveOperationRecordMapper.insert(comActReserveOperationRecordDO);
                            return R.ok("提交成功");
                        }
                    }
            }
        }
        return R.fail("参数错误");
    }
    /**
     * 社区后台-分页查询预约登记列表