Browse Source

Merge branch 'dev_question_naire' into develop

master
zhaoqifeng 4 years ago
parent
commit
7ab5c4cb31
  1. 19
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/result/RedPointResultDTO.java
  2. 5
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetTDuckController.java
  3. 9
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/PrPublishRangeService.java
  4. 10
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/PrUserProjectService.java
  5. 9
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/PrVistRecordService.java
  6. 26
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrPublishRangeServiceImpl.java
  7. 40
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java
  8. 22
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrVistRecordServiceImpl.java
  9. 9
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/GovOrgService.java
  10. 18
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java

19
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/result/RedPointResultDTO.java

@ -0,0 +1,19 @@
package com.epmet.dataaggre.dto.epmettduck.result;
import lombok.Data;
import java.io.Serializable;
/**
* @Description
* @Author zhaoqifeng
* @Date 2021/9/23 10:03
*/
@Data
public class RedPointResultDTO implements Serializable {
private static final long serialVersionUID = -2230123089546481389L;
/**
* redPoint
*/
private String redPoint;
}

5
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetTDuckController.java

@ -137,4 +137,9 @@ public class EpmetTDuckController {
ValidatorUtils.validateEntity(formDTO,ProjectKeyCommonDTO.AddUserInternalGroup.class); ValidatorUtils.validateEntity(formDTO,ProjectKeyCommonDTO.AddUserInternalGroup.class);
return new Result<ItemResDetailConcatResultDTO>().ok(prUserProjectService.queryItemResDetailConcat(formDTO)); return new Result<ItemResDetailConcatResultDTO>().ok(prUserProjectService.queryItemResDetailConcat(formDTO));
} }
@PostMapping("redpoint")
public Result<RedPointResultDTO> redPoint(@LoginUser TokenDto tokenDto) {
return new Result<RedPointResultDTO>().ok(prUserProjectService.redPoint(tokenDto));
}
} }

9
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/PrPublishRangeService.java

@ -101,4 +101,13 @@ public interface PrPublishRangeService extends BaseService<PrPublishRangeEntity>
* @Date 2021/9/18 15:28 * @Date 2021/9/18 15:28
*/ */
List<String> getRangeOrgList(String projectKey); List<String> getRangeOrgList(String projectKey);
/**
* @Description 获取组织范围内的问卷
* @Param orgList
* @Return {@link List< PrPublishRangeDTO>}
* @Author zhaoqifeng
* @Date 2021/9/23 10:27
*/
List<PrPublishRangeDTO> getListByOrg(List<String> orgList);
} }

10
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/PrUserProjectService.java

@ -19,6 +19,7 @@ package com.epmet.dataaggre.service.epmettduck;
import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.dataaggre.dto.epmettduck.PrUserProjectDTO; import com.epmet.dataaggre.dto.epmettduck.PrUserProjectDTO;
import com.epmet.dataaggre.dto.epmettduck.form.ItemResDetailFormDTO; import com.epmet.dataaggre.dto.epmettduck.form.ItemResDetailFormDTO;
import com.epmet.dataaggre.dto.epmettduck.form.ProjectKeyCommonDTO; import com.epmet.dataaggre.dto.epmettduck.form.ProjectKeyCommonDTO;
@ -164,4 +165,13 @@ public interface PrUserProjectService extends BaseService<PrUserProjectEntity> {
* @date 2021/9/22 2:57 下午 * @date 2021/9/22 2:57 下午
*/ */
ItemResDetailConcatResultDTO queryItemResDetailConcat(ProjectKeyCommonDTO formDTO); ItemResDetailConcatResultDTO queryItemResDetailConcat(ProjectKeyCommonDTO formDTO);
/**
* 有新的问卷显示小红点
* @Param tokenDto
* @Return {@link RedPointResultDTO}
* @Author zhaoqifeng
* @Date 2021/9/23 10:05
*/
RedPointResultDTO redPoint(TokenDto tokenDto);
} }

9
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/PrVistRecordService.java

@ -92,4 +92,13 @@ public interface PrVistRecordService extends BaseService<PrVistRecordEntity> {
* @date 2021-09-15 * @date 2021-09-15
*/ */
void delete(String[] ids); void delete(String[] ids);
/**
* @Description 获取最新访问记录
* @Param staffId
* @Return {@link PrVistRecordDTO}
* @Author zhaoqifeng
* @Date 2021/9/23 14:16
*/
PrVistRecordDTO getNewestRecord(String staffId);
} }

26
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrPublishRangeServiceImpl.java

@ -23,6 +23,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.dynamic.datasource.annotation.DataSource; import com.epmet.commons.dynamic.datasource.annotation.DataSource;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.dataaggre.constant.DataSourceConstant; import com.epmet.dataaggre.constant.DataSourceConstant;
@ -124,4 +125,29 @@ public class PrPublishRangeServiceImpl extends BaseServiceImpl<PrPublishRangeDao
return list.stream().map(PrPublishRangeEntity::getOrgId).collect(Collectors.toList()); return list.stream().map(PrPublishRangeEntity::getOrgId).collect(Collectors.toList());
} }
/**
* @param orgList
* @Description 获取组织范围内的问卷
* @Param orgList
* @Return {@link List< PrPublishRangeDTO>}
* @Author zhaoqifeng
* @Date 2021/9/23 10:27
*/
@Override
public List<PrPublishRangeDTO> getListByOrg(List<String> orgList) {
LambdaQueryWrapper<PrPublishRangeEntity> wrapper = new LambdaQueryWrapper<>();
wrapper.and(w -> {
for (int i = 0; i < orgList.size(); i++) {
if (NumConstant.ZERO == i) {
w.like(PrPublishRangeEntity :: getOrgId, orgList.get(i));
} else {
w.or().like(PrPublishRangeEntity :: getOrgId, orgList.get(i));
}
}
});
wrapper.orderByDesc(PrPublishRangeEntity::getCreatedTime);
List<PrPublishRangeEntity> list = baseDao.selectList(wrapper);
return ConvertUtils.sourceToTarget(list, PrPublishRangeDTO.class);
}
} }

40
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java

@ -28,11 +28,14 @@ import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.constant.StrConstant; import com.epmet.commons.tools.constant.StrConstant;
import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.dataaggre.constant.DataSourceConstant; import com.epmet.dataaggre.constant.DataSourceConstant;
import com.epmet.dataaggre.dao.epmettduck.PrUserProjectDao; import com.epmet.dataaggre.dao.epmettduck.PrUserProjectDao;
import com.epmet.dataaggre.dao.epmettduck.PrVistRecordDao; import com.epmet.dataaggre.dao.epmettduck.PrVistRecordDao;
import com.epmet.dataaggre.dto.epmettduck.PrPublishRangeDTO;
import com.epmet.dataaggre.dto.epmettduck.PrUserProjectDTO; import com.epmet.dataaggre.dto.epmettduck.PrUserProjectDTO;
import com.epmet.dataaggre.dto.epmettduck.PrVistRecordDTO;
import com.epmet.dataaggre.dto.epmettduck.ProjectItemTypeEnum; import com.epmet.dataaggre.dto.epmettduck.ProjectItemTypeEnum;
import com.epmet.dataaggre.dto.epmettduck.form.ItemResDetailFormDTO; import com.epmet.dataaggre.dto.epmettduck.form.ItemResDetailFormDTO;
import com.epmet.dataaggre.dto.epmettduck.form.ProjectKeyCommonDTO; import com.epmet.dataaggre.dto.epmettduck.form.ProjectKeyCommonDTO;
@ -44,6 +47,8 @@ import com.epmet.dataaggre.entity.epmettduck.PrUserProjectEntity;
import com.epmet.dataaggre.entity.epmettduck.PrUserProjectResultEntity; import com.epmet.dataaggre.entity.epmettduck.PrUserProjectResultEntity;
import com.epmet.dataaggre.service.epmettduck.PrPublishRangeService; import com.epmet.dataaggre.service.epmettduck.PrPublishRangeService;
import com.epmet.dataaggre.service.epmettduck.PrUserProjectService; import com.epmet.dataaggre.service.epmettduck.PrUserProjectService;
import com.epmet.dataaggre.service.epmettduck.PrVistRecordService;
import com.epmet.dataaggre.service.govorg.GovOrgService;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@ -74,6 +79,10 @@ public class PrUserProjectServiceImpl extends BaseServiceImpl<PrUserProjectDao,
private PrVistRecordDao visitRecordDao; private PrVistRecordDao visitRecordDao;
@Resource @Resource
private PrPublishRangeService prPublishRangeService; private PrPublishRangeService prPublishRangeService;
@Resource
private GovOrgService govOrgService;
@Resource
private PrVistRecordService prVistRecordService;
@Override @Override
public PageData<PrUserProjectDTO> page(Map<String, Object> params) { public PageData<PrUserProjectDTO> page(Map<String, Object> params) {
@ -667,4 +676,35 @@ public class PrUserProjectServiceImpl extends BaseServiceImpl<PrUserProjectDao,
resultDTO.setDataList(dataList); resultDTO.setDataList(dataList);
return resultDTO; return resultDTO;
} }
/**
* 有新的问卷显示小红点
*
* @param tokenDto
* @Param tokenDto
* @Return {@link RedPointResultDTO}
* @Author zhaoqifeng
* @Date 2021/9/23 10:05
*/
@Override
public RedPointResultDTO redPoint(TokenDto tokenDto) {
RedPointResultDTO result = new RedPointResultDTO();
List<String> orgList = govOrgService.getStaffOrgList(tokenDto.getUserId());
List<PrPublishRangeDTO> list = prPublishRangeService.getListByOrg(orgList);
if (CollectionUtils.isEmpty(list)) {
result.setRedPoint(NumConstant.ZERO_STR);
return result;
}
PrVistRecordDTO visitRecord = prVistRecordService.getNewestRecord(tokenDto.getUserId());
if (null == visitRecord) {
result.setRedPoint(NumConstant.ONE_STR);
return result;
}
if (list.get(0).getCreatedTime().compareTo(visitRecord.getCreatedTime()) > 0) {
result.setRedPoint(NumConstant.ONE_STR);
} else {
result.setRedPoint(NumConstant.ZERO_STR);
}
return result;
}
} }

22
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrVistRecordServiceImpl.java

@ -17,6 +17,7 @@
package com.epmet.dataaggre.service.epmettduck.impl; package com.epmet.dataaggre.service.epmettduck.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.dynamic.datasource.annotation.DataSource; import com.epmet.commons.dynamic.datasource.annotation.DataSource;
@ -30,6 +31,7 @@ import com.epmet.dataaggre.dto.epmettduck.PrVistRecordDTO;
import com.epmet.dataaggre.entity.epmettduck.PrVistRecordEntity; import com.epmet.dataaggre.entity.epmettduck.PrVistRecordEntity;
import com.epmet.dataaggre.service.epmettduck.PrVistRecordService; import com.epmet.dataaggre.service.epmettduck.PrVistRecordService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
@ -101,4 +103,24 @@ public class PrVistRecordServiceImpl extends BaseServiceImpl<PrVistRecordDao, Pr
baseDao.deleteBatchIds(Arrays.asList(ids)); baseDao.deleteBatchIds(Arrays.asList(ids));
} }
/**
* @param staffId
* @Description 获取最新访问记录
* @Param staffId
* @Return {@link PrVistRecordDTO}
* @Author zhaoqifeng
* @Date 2021/9/23 14:16
*/
@Override
public PrVistRecordDTO getNewestRecord(String staffId) {
LambdaQueryWrapper<PrVistRecordEntity> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(PrVistRecordEntity::getUserId, staffId);
wrapper.orderByDesc(PrVistRecordEntity::getCreatedTime);
List<PrVistRecordEntity> list = baseDao.selectList(wrapper);
if (CollectionUtils.isEmpty(list)) {
return null;
}
return ConvertUtils.sourceToTarget(list, PrVistRecordDTO.class).get(0);
}
} }

9
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/GovOrgService.java

@ -145,4 +145,13 @@ public interface GovOrgService {
* @Date 2021/9/17 14:03 * @Date 2021/9/17 14:03
*/ */
List<OrgTreeResultDTO> getAgencyTree(TokenDto tokenDto, SubOrgFormDTO formDTO); List<OrgTreeResultDTO> getAgencyTree(TokenDto tokenDto, SubOrgFormDTO formDTO);
/**
* @Description 工作人员所在的组织部门网格
* @Param staffId
* @Return {@link List< String>}
* @Author zhaoqifeng
* @Date 2021/9/23 10:14
*/
List<String> getStaffOrgList(String staffId);
} }

18
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java

@ -509,13 +509,27 @@ public class GovOrgServiceImpl implements GovOrgService {
*/ */
@Override @Override
public List<OrgTreeResultDTO> getAgencyTree(TokenDto tokenDto, SubOrgFormDTO formDTO) { public List<OrgTreeResultDTO> getAgencyTree(TokenDto tokenDto, SubOrgFormDTO formDTO) {
CustomerStaffInfoCacheResult staffInfo = CustomerStaffRedis.getStaffInfo(tokenDto.getCustomerId(), tokenDto.getUserId());
List<OrgTreeResultDTO> list = new ArrayList<>(); List<OrgTreeResultDTO> list = new ArrayList<>();
if ("resi".equals(formDTO.getClient())) { if ("resi".equals(formDTO.getClient())) {
list.add(customerAgencyDao.getResiOrgTree(formDTO.getAgencyId())); list.add(customerAgencyDao.getResiOrgTree(staffInfo.getAgencyId()));
return list; return list;
} }
list.add(customerAgencyDao.getOrgTree(formDTO.getAgencyId())); list.add(customerAgencyDao.getOrgTree(staffInfo.getAgencyId()));
return list; return list;
} }
/**
* @param staffId
* @Description 工作人员所在的组织部门网格
* @Param staffId
* @Return {@link List< String>}
* @Author zhaoqifeng
* @Date 2021/9/23 10:14
*/
@Override
public List<String> getStaffOrgList(String staffId) {
return customerAgencyDao.getOrgList(staffId);
}
} }

Loading…
Cancel
Save