|
|
@@ -21,6 +21,7 @@ import com.ydtech.modules.admin.model.vo.HouLinePersonnelReportVo;
|
|
|
import com.ydtech.modules.admin.model.vo.QxFrontlineAgentVo;
|
|
|
import com.ydtech.modules.admin.model.vo.SysUserBaseVO;
|
|
|
import com.ydtech.modules.admin.service.UserReportService;
|
|
|
+import com.ydtech.modules.admin.utils.SliceUpDateUtil;
|
|
|
import com.ydtech.modules.base.model.vo.PageVo;
|
|
|
import com.ydtech.modules.esm.dao.EsmUserReferrerMapper;
|
|
|
import com.ydtech.modules.esm.model.EsmUserReferrer;
|
|
|
@@ -195,6 +196,9 @@ public class UserReportServiceImpl implements UserReportService {
|
|
|
@Override
|
|
|
public HttpResult<IPage<QxFrontlineAgentDto>> queryQxFrontlineAgent(QxFrontlineAgentVo qxFrontlineAgentVo) {
|
|
|
try {
|
|
|
+ HashMap<String, String> map = getDateMapByType(qxFrontlineAgentVo.getDays(), qxFrontlineAgentVo.getCreatetimeStart(), qxFrontlineAgentVo.getCreatetimeEnd());
|
|
|
+ qxFrontlineAgentVo.setCreatetimeStart(map.get("startDate"));
|
|
|
+ qxFrontlineAgentVo.setCreatetimeEnd(map.get("endDate"));
|
|
|
PageVo<SettlementDocumentaryFeesSumEntity> pageVo = new PageVo<>();
|
|
|
Page page = new Page(qxFrontlineAgentVo.getPageNum(), qxFrontlineAgentVo.getPageSize());
|
|
|
pageVo.setPageNum(qxFrontlineAgentVo.getPageNum());
|
|
|
@@ -212,6 +216,38 @@ public class UserReportServiceImpl implements UserReportService {
|
|
|
return HttpResult.error("查询异常");
|
|
|
}
|
|
|
}
|
|
|
+ /**
|
|
|
+ * @version
|
|
|
+ * @author: hxl
|
|
|
+ * @Date: 2024/6/19 11:57
|
|
|
+ * @Description: 通过时间类型判断
|
|
|
+ */
|
|
|
+ private static HashMap<String,String> getDateMapByType(String type, String startDate, String endDate) {
|
|
|
+ HashMap<String,String> map =new HashMap<>();
|
|
|
+ String startDateStr="";
|
|
|
+ String endDateStr="";
|
|
|
+ if(org.apache.commons.lang3.StringUtils.isNotBlank(startDate) && org.apache.commons.lang3.StringUtils.isNotBlank(endDate)){
|
|
|
+ startDateStr= org.apache.commons.lang3.StringUtils.isNotBlank(startDate)?startDate+" 00:00:00":null;
|
|
|
+ endDateStr= org.apache.commons.lang3.StringUtils.isNotBlank(endDate)?endDate+" 23:59:59":null;
|
|
|
+ }else{
|
|
|
+ if("1".equals(type)){
|
|
|
+ // 近1天
|
|
|
+ startDateStr= SliceUpDateUtil.getBeforeDay(new Date(),5)+" 00:00:00";
|
|
|
+ endDateStr=SliceUpDateUtil.getBeforeDay(new Date(),0)+" 23:59:59";
|
|
|
+ }else if("2".equals(type)){
|
|
|
+ // 近7天
|
|
|
+ startDateStr=SliceUpDateUtil.getBeforeDay(new Date(),1)+" 00:00:00";
|
|
|
+ endDateStr=SliceUpDateUtil.getBeforeDay(new Date(),0)+" 23:59:59";
|
|
|
+ }else if("3".equals(type)){
|
|
|
+ // 近30天
|
|
|
+ startDateStr=SliceUpDateUtil.getBeforeDay(new Date(),6)+" 00:00:00";
|
|
|
+ endDateStr=SliceUpDateUtil.getBeforeDay(new Date(),0)+" 23:59:59";
|
|
|
+ }
|
|
|
+ }
|
|
|
+ map.put("startDate",startDateStr);
|
|
|
+ map.put("endDate",endDateStr);
|
|
|
+ return map;
|
|
|
+ }
|
|
|
|
|
|
private void agentPerson(List<QxFrontlineAgentDto> sysUserList,QxFrontlineAgentVo qxFrontlineAgentVo) {
|
|
|
HashMap<String, Integer> humanResources = new HashMap<>();
|
|
|
@@ -260,32 +296,24 @@ public class UserReportServiceImpl implements UserReportService {
|
|
|
for (QxFrontlineAgentDto item : sysUserList){
|
|
|
// 是否是团队长
|
|
|
String userId = item.getUserId();
|
|
|
- QueryWrapper<SysUserRole> queryWrapper = new QueryWrapper<>();
|
|
|
- queryWrapper.eq("user_id",userId);
|
|
|
- SysUserRole sysUserRole = sysUserRoleMapper.selectOne(queryWrapper);
|
|
|
- if(ObjectUtils.isNotEmpty(sysUserRole) && StringUtils.isNotEmpty(sysUserRole.getRoleId().toString()) && "21".equals(sysUserRole.getRoleId().toString())){//团队长
|
|
|
+ String roleId = item.getRoleId();
|
|
|
+ if(StringUtils.isNotBlank(roleId) && "21".equals(roleId)){//团队长
|
|
|
QueryWrapper<SysUser> wrapper = new QueryWrapper<>();
|
|
|
wrapper.eq("operatorCode", userId);
|
|
|
wrapper.eq("status", "1");
|
|
|
List<SysUser> sysUsers = sysUserMapper.selectList(wrapper);
|
|
|
- List<String> collect = sysUsers.stream().map(SysUser::getId).collect(Collectors.toList());
|
|
|
- QxFrontlineAgentDto qxFrontlineAgentDto = new QxFrontlineAgentDto();
|
|
|
- qxFrontlineAgentDto.setIds(new ArrayList<>());
|
|
|
-
|
|
|
- if (!collect.isEmpty()) {
|
|
|
- qxFrontlineAgentDto.setCreatetimeEnd(qxFrontlineAgentVo.getCreatetimeEnd());
|
|
|
- qxFrontlineAgentDto.setCreatetimeStart(qxFrontlineAgentVo.getCreatetimeStart());
|
|
|
- qxFrontlineAgentDto.getIds().addAll(collect);
|
|
|
- QxFrontlineAgentDto taskStatisticsDto = insAreaCompanyMapper.getOrderManpowerNew(qxFrontlineAgentDto);
|
|
|
- item.setTotalPremium(taskStatisticsDto.getTotalPremium());
|
|
|
- }else {
|
|
|
- collect.add(userId);
|
|
|
- qxFrontlineAgentDto.setCreatetimeEnd(qxFrontlineAgentVo.getCreatetimeEnd());
|
|
|
- qxFrontlineAgentDto.setCreatetimeStart(qxFrontlineAgentVo.getCreatetimeStart());
|
|
|
- qxFrontlineAgentDto.getIds().addAll(collect);
|
|
|
- QxFrontlineAgentDto taskStatisticsDto = insAreaCompanyMapper.getOrderManpowerNew(qxFrontlineAgentDto);
|
|
|
- item.setTotalPremium(taskStatisticsDto.getTotalPremium());
|
|
|
+ List<String> collect =new ArrayList<>();
|
|
|
+ if(sysUsers!=null && sysUsers.size()>0){
|
|
|
+ collect = sysUsers.stream().map(SysUser::getId).collect(Collectors.toList());
|
|
|
}
|
|
|
+ QxFrontlineAgentDto qxFrontlineAgentDto = new QxFrontlineAgentDto();
|
|
|
+ collect.add(userId);
|
|
|
+ qxFrontlineAgentDto.setCreatetimeEnd(qxFrontlineAgentVo.getCreatetimeEnd());
|
|
|
+ qxFrontlineAgentDto.setCreatetimeStart(qxFrontlineAgentVo.getCreatetimeStart());
|
|
|
+ qxFrontlineAgentDto.setIds(collect);
|
|
|
+ QxFrontlineAgentDto taskStatisticsDto = insAreaCompanyMapper.getOrderManpowerNew(qxFrontlineAgentDto);
|
|
|
+ item.setAveragePremium(taskStatisticsDto.getAveragePremium());
|
|
|
+ item.setTotalPremium(taskStatisticsDto.getTotalPremium());
|
|
|
}
|
|
|
}
|
|
|
}
|