| | |
| | | package com.panzhihua.service_jinhui_community.service.impl; |
| | | |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | 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.ComActWorkGuideDTO; |
| | | import com.panzhihua.common.model.dtos.community.PageActWorkGuideDTO; |
| | | import com.panzhihua.common.model.vos.R; |
| | |
| | | import com.panzhihua.common.model.vos.community.ComActWorkGuideDetailAppletsVO; |
| | | import com.panzhihua.common.model.vos.community.ComActWorkGuideMaterialVO; |
| | | import com.panzhihua.common.model.vos.community.ComActWorkGuideVO; |
| | | import com.panzhihua.common.model.vos.community.questnaire.QuestnaiteSubSelectionVO; |
| | | import com.panzhihua.common.model.vos.community.questnaire.QuestnaiteSubVO; |
| | | import com.panzhihua.common.utlis.StringUtils; |
| | | import com.panzhihua.service_jinhui_community.dao.ComActDAO; |
| | | import com.panzhihua.service_jinhui_community.dao.JinhuiComActWorkGuideClassifyDao; |
| | | import com.panzhihua.service_jinhui_community.dao.JinhuiComActWorkGuideDAO; |
| | | import com.panzhihua.service_jinhui_community.dao.JinhuiComActWorkGuideMaterialDao; |
| | | import com.panzhihua.service_jinhui_community.entity.JinhuiComActWorkGuide; |
| | | import com.panzhihua.service_jinhui_community.entity.JinhuiComActWorkGuideClassify; |
| | | import com.panzhihua.service_jinhui_community.entity.JinhuiComActWorkGuideMaterial; |
| | | import com.panzhihua.service_jinhui_community.dao.*; |
| | | import com.panzhihua.service_jinhui_community.entity.*; |
| | | import com.panzhihua.service_jinhui_community.model.dos.ComActDO; |
| | | import com.panzhihua.service_jinhui_community.service.JinhuiComActWorkGuideService; |
| | | import org.springframework.beans.BeanUtils; |
| | |
| | | @Resource |
| | | ComActDAO comActDAO; |
| | | |
| | | @Resource |
| | | private JinhuiComActQuestnaireSubDao questnaireSubDao; |
| | | |
| | | @Resource |
| | | private JinhuiComActQuestnaireSubSelectionServiceImpl questnaireSubSelectionService; |
| | | |
| | | @Override |
| | | public R addWorkGuide(ComActWorkGuideDTO workGuideDTO, String userId) { |
| | | public R addWorkGuide(ComActWorkGuideDTO workGuideDTO, String userId) |
| | | { |
| | | JinhuiComActWorkGuide comActWorkGuideDO = new JinhuiComActWorkGuide(); |
| | | BeanUtils.copyProperties(workGuideDTO, comActWorkGuideDO); |
| | | comActWorkGuideDO.setCreateBy(userId+""); |
| | | comActWorkGuideDO.setCreateBy(userId); |
| | | comActWorkGuideDO.setCreateAt(new Date()); |
| | | this.baseMapper.insert(comActWorkGuideDO); |
| | | |
| | | // 统计该调查问卷填报题目数量 |
| | | int count = 0; |
| | | List<QuestnaiteSubVO> questnaiteSubVOS = JSON.parseArray(comActWorkGuideDO.getJsonObject(), QuestnaiteSubVO.class); |
| | | if (!questnaiteSubVOS.isEmpty()) { |
| | | count = questnaiteSubVOS.size(); |
| | | } |
| | | comActWorkGuideDO.setCount(count); |
| | | |
| | | // 保存办事指南材料 |
| | | workGuideDTO.getMaterials().forEach(material -> { |
| | | comActWorkGuideDO.getMaterials().forEach(material -> { |
| | | JinhuiComActWorkGuideMaterial workGuideMaterialDO = new JinhuiComActWorkGuideMaterial(); |
| | | workGuideMaterialDO.setMaterialName(material.getMaterialName()); |
| | | workGuideMaterialDO.setWorkGuideId(comActWorkGuideDO.getId()); |
| | | workGuideMaterialDAO.insert(workGuideMaterialDO); |
| | | }); |
| | | |
| | | |
| | | int quesCount = this.baseMapper.insert(comActWorkGuideDO); |
| | | if (quesCount != 1) { |
| | | return R.fail("创建失败"); |
| | | } |
| | | |
| | | |
| | | if (!questnaiteSubVOS.isEmpty()) { |
| | | questnaiteSubVOS.forEach(sub -> { |
| | | JinhuiComActQuestnaireSub comActQuestnaireSubDO = new JinhuiComActQuestnaireSub(); |
| | | comActQuestnaireSubDO.setType(sub.getType()+""); |
| | | comActQuestnaireSubDO.setContent(sub.getLabel()); |
| | | comActQuestnaireSubDO.setSort(sub.getSort()+""); |
| | | comActQuestnaireSubDO.setQueId(comActWorkGuideDO.getId()); |
| | | comActQuestnaireSubDO.setCreateBy(userId); |
| | | comActQuestnaireSubDO.setKey(sub.getKey()); |
| | | questnaireSubDao.insert(comActQuestnaireSubDO); |
| | | ArrayList<JinhuiComActQuestnaireSubSelection> subSelectionList = Lists.newArrayList(); |
| | | if (sub.getOptions() != null && !sub.getOptions().isEmpty()) { |
| | | List<QuestnaiteSubSelectionVO> subOptions = sub.getOptions(); |
| | | for (int i = 0; i < subOptions.size(); i++) { |
| | | QuestnaiteSubSelectionVO subSelect = subOptions.get(i); |
| | | JinhuiComActQuestnaireSubSelection subSelectionDO = new JinhuiComActQuestnaireSubSelection(); |
| | | subSelectionDO.setQueSubId(comActQuestnaireSubDO.getId()+""); |
| | | if (subSelect.getType().equals(1)) { |
| | | // 添加选项名称 |
| | | subSelectionDO.setOptionName(subSelect.getOptionName()); |
| | | } else { |
| | | subSelectionDO.setOptionName(String.valueOf(Character.toChars('A' + i))); |
| | | } |
| | | subSelectionDO.setContent(subSelect.getLabel()); |
| | | subSelectionDO.setQueId(comActWorkGuideDO.getId()); |
| | | subSelectionDO.setCreateBy(userId); |
| | | subSelectionDO.setType(subSelect.getType()+""); |
| | | subSelectionDO.setKey(subSelect.getKey()); |
| | | subSelectionDO.setUrl(subSelect.getUrl()); |
| | | subSelectionList.add(subSelectionDO); |
| | | } |
| | | } |
| | | questnaireSubSelectionService.saveBatch(subSelectionList); |
| | | }); |
| | | } |
| | | |
| | | return R.ok(); |
| | | } |
| | | |