| | |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.panzhihua.common.model.dtos.community.acid.ComActAcidRecordDTO; |
| | | import com.panzhihua.common.model.dtos.property.CommonPage; |
| | | import com.panzhihua.common.model.vos.LoginUserInfoVO; |
| | | import com.panzhihua.common.model.vos.R; |
| | | import com.panzhihua.common.model.vos.community.acid.*; |
| | | import com.panzhihua.common.service.user.UserService; |
| | |
| | | import com.panzhihua.service_community.entity.ComActAcidDangerMember; |
| | | import com.panzhihua.service_community.entity.ComActAcidRecord; |
| | | import com.panzhihua.service_community.dao.ComActAcidRecordDao; |
| | | import com.panzhihua.service_community.model.dos.ComActDO; |
| | | import com.panzhihua.service_community.service.ComActAcidRecordService; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.amqp.rabbit.core.RabbitTemplate; |
| | |
| | | if (StringUtils.inStringIgnoreCase(colorMark, "红码", "黄码") || travelCard.equals("是") |
| | | || dangerArea.equals("是") || outsideCity.equals("是") || acidTest.equals("阳性")) { |
| | | //风险人员 |
| | | saveAcidDangerMember(comActAcidRecordVO, comActAcidRecord.getId(), 1); |
| | | String riskType = retrieveRiskType(colorMark, travelCard, dangerArea, outsideCity, acidTest); |
| | | saveAcidDangerMember(comActAcidRecordVO, comActAcidRecord.getId(), 1, riskType); |
| | | return R.ok(); |
| | | } |
| | | if (StringUtils.isEmpty(comActAcidRecordVO.getLocalCity())) { |
| | | //未填住址人员 |
| | | saveAcidDangerMember(comActAcidRecordVO, comActAcidRecord.getId(), 2); |
| | | saveAcidDangerMember(comActAcidRecordVO, comActAcidRecord.getId(), 2, null); |
| | | } |
| | | return R.ok(); |
| | | } |
| | |
| | | return R.fail("操作失败,请重新尝试"); |
| | | } |
| | | |
| | | private void saveAcidDangerMember(ComActAcidRecordVO comActAcidRecordVO, Long recordId, Integer type) { |
| | | private String retrieveRiskType(String colorMark, String travelCard, String dangerArea, String outsideCity, String acidTest) { |
| | | StringBuilder riskType = new StringBuilder(); |
| | | if (StringUtils.inStringIgnoreCase(colorMark, "红码", "黄码")) { |
| | | riskType.append(","); |
| | | riskType.append(ComActAcidDangerMember.RiskType.COLOR); |
| | | } |
| | | if (travelCard.equals("是")) { |
| | | riskType.append(","); |
| | | riskType.append(ComActAcidDangerMember.RiskType.STAR); |
| | | } |
| | | if (dangerArea.equals("是")) { |
| | | riskType.append(","); |
| | | riskType.append(ComActAcidDangerMember.RiskType.HIGH); |
| | | } |
| | | if (outsideCity.equals("是")) { |
| | | riskType.append(","); |
| | | riskType.append(ComActAcidDangerMember.RiskType.OUT); |
| | | } |
| | | if (acidTest.equals("阳性")) { |
| | | riskType.append(","); |
| | | riskType.append(ComActAcidDangerMember.RiskType.TEST); |
| | | } |
| | | return riskType.substring(1); |
| | | } |
| | | |
| | | private void saveAcidDangerMember(ComActAcidRecordVO comActAcidRecordVO, Long recordId, Integer type, String riskType) { |
| | | String localCity = comActAcidRecordVO.getLocalCity(); |
| | | String relationName = "panzhihua"; |
| | | if (isNotEmpty(localCity)) { |
| | |
| | | dangerMember.setType(type); |
| | | dangerMember.setRelationName(relationName); |
| | | dangerMember.setCreateTime(new Date()); |
| | | dangerMember.setRiskType(riskType); |
| | | comActAcidDangerMemberDao.insert(dangerMember); |
| | | } else { |
| | | dangerMember.setName(comActAcidRecordVO.getName()); |
| | |
| | | dangerMember.setType(type); |
| | | dangerMember.setRelationName(relationName); |
| | | dangerMember.setUpdateTime(new Date()); |
| | | dangerMember.setRiskType(riskType); |
| | | comActAcidDangerMemberDao.updateById(dangerMember); |
| | | } |
| | | ComActAcidDangerMemberVO dangerMemberVO = new ComActAcidDangerMemberVO(); |
| | |
| | | |
| | | @Override |
| | | public R updateLocalCity(ComActAcidRecordVO comActAcidRecordVO) { |
| | | ComActAcidRecord comActAcidRecord=new ComActAcidRecord(); |
| | | BeanUtils.copyProperties(comActAcidRecordVO,comActAcidRecord); |
| | | if(StringUtils.isNotEmpty(comActAcidRecord.getLocalCity())){ |
| | | ComActAcidDangerMember comActAcidDangerMember= comActAcidDangerMemberDao.selectOne(new QueryWrapper<ComActAcidDangerMember>().lambda().eq(ComActAcidDangerMember::getRecordId,comActAcidRecordVO.getId())); |
| | | if(comActAcidDangerMember!=null){ |
| | | if(comActAcidDangerMember.getType()==2){ |
| | | this.comActAcidDangerMemberDao.deleteById(comActAcidDangerMember.getId()); |
| | | } |
| | | else { |
| | | comActAcidDangerMember.setRelationName(comActAcidRecord.getLocalCity()); |
| | | this.comActAcidDangerMemberDao.updateById(comActAcidDangerMember); |
| | | } |
| | | } |
| | | ComActAcidRecord comActAcidRecord = new ComActAcidRecord(); |
| | | BeanUtils.copyProperties(comActAcidRecordVO, comActAcidRecord); |
| | | ComActAcidDangerMember comActAcidDangerMember = |
| | | comActAcidDangerMemberDao.selectOne(new QueryWrapper<ComActAcidDangerMember>().lambda() |
| | | .eq(ComActAcidDangerMember::getRecordId, comActAcidRecordVO.getId())); |
| | | String colorMark = comActAcidRecordVO.getColorMark(); |
| | | String travelCard = comActAcidRecordVO.getTravelCard(); |
| | | String dangerArea = comActAcidRecordVO.getDangerArea(); |
| | | String outsideCity = comActAcidRecordVO.getOutsideCity(); |
| | | String acidTest = comActAcidRecordVO.getAcidTest(); |
| | | if (StringUtils.inStringIgnoreCase(colorMark, "红码", "黄码") || travelCard.equals("是") || dangerArea.equals("是") |
| | | || outsideCity.equals("是") || acidTest.equals("阳性")) { |
| | | // 风险人员 |
| | | String riskType = retrieveRiskType(colorMark, travelCard, dangerArea, outsideCity, acidTest); |
| | | saveAcidDangerMember(comActAcidRecordVO, comActAcidRecord.getId(), 1, riskType); |
| | | } else if (StringUtils.isEmpty(comActAcidRecordVO.getLocalCity())) { |
| | | // 未填住址人员 |
| | | saveAcidDangerMember(comActAcidRecordVO, comActAcidRecord.getId(), 2, null); |
| | | } else if (comActAcidDangerMember != null && comActAcidDangerMember.getType() == 2) { |
| | | this.comActAcidDangerMemberDao.deleteById(comActAcidDangerMember.getId()); |
| | | } |
| | | return R.ok(this.baseMapper.updateById(comActAcidRecord)); |
| | | } |