|
@@ -5,12 +5,13 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.fdkankan.common.constant.*;
|
|
import com.fdkankan.common.constant.*;
|
|
|
|
+import com.fdkankan.common.exception.BusinessException;
|
|
import com.fdkankan.common.response.ResultData;
|
|
import com.fdkankan.common.response.ResultData;
|
|
-import com.fdkankan.common.util.NumberUtils;
|
|
|
|
-import com.fdkankan.platform.agent.constant.AgentConstant;
|
|
|
|
import com.fdkankan.common.user.SSOUser;
|
|
import com.fdkankan.common.user.SSOUser;
|
|
import com.fdkankan.common.util.DateUtil;
|
|
import com.fdkankan.common.util.DateUtil;
|
|
import com.fdkankan.common.util.FileSizeUtil;
|
|
import com.fdkankan.common.util.FileSizeUtil;
|
|
|
|
+import com.fdkankan.common.util.NumberUtils;
|
|
|
|
+import com.fdkankan.platform.agent.constant.AgentConstant;
|
|
import com.fdkankan.platform.goods.entity.Camera;
|
|
import com.fdkankan.platform.goods.entity.Camera;
|
|
import com.fdkankan.platform.goods.entity.CameraDetail;
|
|
import com.fdkankan.platform.goods.entity.CameraDetail;
|
|
import com.fdkankan.platform.goods.entity.Goods;
|
|
import com.fdkankan.platform.goods.entity.Goods;
|
|
@@ -19,6 +20,7 @@ import com.fdkankan.platform.goods.service.ICameraDetailService;
|
|
import com.fdkankan.platform.goods.service.ICameraService;
|
|
import com.fdkankan.platform.goods.service.ICameraService;
|
|
import com.fdkankan.platform.goods.service.ICameraSpaceService;
|
|
import com.fdkankan.platform.goods.service.ICameraSpaceService;
|
|
import com.fdkankan.platform.goods.service.IGoodsService;
|
|
import com.fdkankan.platform.goods.service.IGoodsService;
|
|
|
|
+import com.fdkankan.platform.order.service.IDownloadOrderService;
|
|
import com.fdkankan.platform.user.entity.User;
|
|
import com.fdkankan.platform.user.entity.User;
|
|
import com.fdkankan.platform.user.entity.UserIncrement;
|
|
import com.fdkankan.platform.user.entity.UserIncrement;
|
|
import com.fdkankan.platform.user.request.RequestCamera;
|
|
import com.fdkankan.platform.user.request.RequestCamera;
|
|
@@ -26,9 +28,8 @@ import com.fdkankan.platform.user.service.IUserIncrementService;
|
|
import com.fdkankan.platform.user.service.IUserService;
|
|
import com.fdkankan.platform.user.service.IUserService;
|
|
import com.fdkankan.platform.user.vo.ResponseCamera;
|
|
import com.fdkankan.platform.user.vo.ResponseCamera;
|
|
import com.fdkankan.platform.user.vo.ResponseCameraSpace;
|
|
import com.fdkankan.platform.user.vo.ResponseCameraSpace;
|
|
-import com.fdkankan.common.exception.BusinessException;
|
|
|
|
-import com.fdkankan.scene.api.feign.SceneUserSceneClient;
|
|
|
|
import com.fdkankan.scene.api.dto.SceneProDTO;
|
|
import com.fdkankan.scene.api.dto.SceneProDTO;
|
|
|
|
+import com.fdkankan.scene.api.feign.SceneUserSceneClient;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.apache.poi.hssf.usermodel.HSSFRow;
|
|
import org.apache.poi.hssf.usermodel.HSSFRow;
|
|
import org.apache.poi.hssf.usermodel.HSSFSheet;
|
|
import org.apache.poi.hssf.usermodel.HSSFSheet;
|
|
@@ -42,10 +43,8 @@ import org.springframework.stereotype.Service;
|
|
|
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
import javax.servlet.http.HttpServletResponse;
|
|
import java.io.OutputStream;
|
|
import java.io.OutputStream;
|
|
-import java.util.ArrayList;
|
|
|
|
-import java.util.Arrays;
|
|
|
|
-import java.util.Date;
|
|
|
|
-import java.util.List;
|
|
|
|
|
|
+import java.util.*;
|
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
/**
|
|
* <p>
|
|
* <p>
|
|
@@ -72,6 +71,8 @@ public class CameraServiceImpl extends ServiceImpl<ICameraMapper, Camera> implem
|
|
private String type;
|
|
private String type;
|
|
@Autowired
|
|
@Autowired
|
|
private SceneUserSceneClient sceneUserSceneClient;
|
|
private SceneUserSceneClient sceneUserSceneClient;
|
|
|
|
+ @Autowired
|
|
|
|
+ private IDownloadOrderService downloadOrderService;
|
|
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -156,7 +157,7 @@ public class CameraServiceImpl extends ServiceImpl<ICameraMapper, Camera> implem
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ResultData<Integer> sceneNumResult = sceneUserSceneClient
|
|
ResultData<Integer> sceneNumResult = sceneUserSceneClient
|
|
- .getSceneNumByCameraId(responseCamera.getId());
|
|
|
|
|
|
+ .getSceneNumByCameraId(responseCamera.getId(),responseCamera.getType(),responseCamera.getSnCode());
|
|
if(!sceneNumResult.getSuccess())
|
|
if(!sceneNumResult.getSuccess())
|
|
throw new Exception(ServerCode.FEIGN_REQUEST_FAILD.message());
|
|
throw new Exception(ServerCode.FEIGN_REQUEST_FAILD.message());
|
|
responseCamera.setSceneNum(sceneNumResult.getData());
|
|
responseCamera.setSceneNum(sceneNumResult.getData());
|
|
@@ -249,16 +250,7 @@ public class CameraServiceImpl extends ServiceImpl<ICameraMapper, Camera> implem
|
|
|
|
|
|
private void addCamera(Long userId, Integer cameraType, Long cameraId){
|
|
private void addCamera(Long userId, Integer cameraType, Long cameraId){
|
|
cameraDetailService.bind(userId,cameraId);
|
|
cameraDetailService.bind(userId,cameraId);
|
|
- // TODO: updateUserIdByCameraId
|
|
|
|
-// if (cameraType == null || cameraType == 0){
|
|
|
|
-// result = sceneService.updateUserIdByCameraId(userId, cameraId);
|
|
|
|
-// }else {
|
|
|
|
-// result = sceneService.updateUserIdByCameraIdPro(userId, cameraId);
|
|
|
|
-// }
|
|
|
|
-//
|
|
|
|
-// if (result.getCode() == Result.CODE_FAILURE){
|
|
|
|
-// throw new Exception(LoginConstant.ERROR_MSG);
|
|
|
|
-// }
|
|
|
|
|
|
+ sceneUserSceneClient.updateUserIdByCameraId(userId,cameraId);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -348,7 +340,7 @@ public class CameraServiceImpl extends ServiceImpl<ICameraMapper, Camera> implem
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public HSSFWorkbook export(String token, HttpServletResponse response) throws Exception {
|
|
|
|
|
|
+ public HSSFWorkbook export(String token, HttpServletResponse response,RequestCamera param) throws Exception {
|
|
|
|
|
|
String fileName = "我的相机";
|
|
String fileName = "我的相机";
|
|
SSOUser ssoUser = userService.getSSOUserByToken(token);
|
|
SSOUser ssoUser = userService.getSSOUserByToken(token);
|
|
@@ -421,8 +413,81 @@ public class CameraServiceImpl extends ServiceImpl<ICameraMapper, Camera> implem
|
|
}
|
|
}
|
|
i++;
|
|
i++;
|
|
}
|
|
}
|
|
|
|
+ }
|
|
|
|
+ assert responseCameraList != null;
|
|
|
|
+ List<Long> cameraIdList = responseCameraList.stream().map(ResponseCamera::getId).collect(Collectors.toList());
|
|
|
|
+ StringBuilder cameraIds = new StringBuilder();
|
|
|
|
+ for (Long aLong : cameraIdList) {
|
|
|
|
+ cameraIds.append(aLong).append(",");
|
|
|
|
+ }
|
|
|
|
+ if(cameraIds.length() >0 && cameraIds.toString().contains(",")){
|
|
|
|
+ cameraIds.deleteCharAt(cameraIds.lastIndexOf(","));
|
|
|
|
+ }
|
|
|
|
+ ResultData reultData = sceneUserSceneClient.findByCameraIds(cameraIds.toString(), param.getStartTime(), param.getEndTime());
|
|
|
|
+ List<SceneProDTO> sceneEntityList = (List<SceneProDTO>) reultData.getData();
|
|
|
|
+ HashMap<String, Integer> countBySceneNumMap = downloadOrderService.getCountBySceneNum();
|
|
|
|
+ List<Camera> cameras = this.findByIds(cameraIdList);
|
|
|
|
+ HashMap<Long, String> cameraSnCodeMap = new HashMap<>();
|
|
|
|
+ for (Camera camera : cameras) {
|
|
|
|
+ cameraSnCodeMap.put(camera.getId(),camera.getSnCode());
|
|
|
|
+ }
|
|
|
|
+ HashMap<Long, Integer> cameraSnCodeCountMap = new HashMap<>();
|
|
|
|
+ for (SceneProDTO sceneProEntity : sceneEntityList) {
|
|
|
|
+ if(cameraSnCodeCountMap.get(sceneProEntity.getCameraId()) ==null){
|
|
|
|
+ cameraSnCodeCountMap.put(sceneProEntity.getCameraId(),countBySceneNumMap.get(sceneProEntity.getNum()));
|
|
|
|
+ continue;
|
|
|
|
+ }
|
|
|
|
+ Integer num = countBySceneNumMap.get(sceneProEntity.getNum()) == null ? 0 :countBySceneNumMap.get(sceneProEntity.getNum());
|
|
|
|
+ Integer totalNum = num + (cameraSnCodeCountMap.get(sceneProEntity.getCameraId())== null ? 0 :cameraSnCodeCountMap.get(sceneProEntity.getCameraId()));
|
|
|
|
+ cameraSnCodeCountMap.put(sceneProEntity.getCameraId(),totalNum);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ HSSFSheet sheet = wb.createSheet("scene");
|
|
|
|
+ //在sheet里创建第一行,这里即是表头
|
|
|
|
+ HSSFRow rowTitle = sheet.createRow(0);
|
|
|
|
+ rowTitle.createCell(0).setCellValue("S/N码");
|
|
|
|
+ rowTitle.createCell(1).setCellValue("开始时间");
|
|
|
|
+ rowTitle.createCell(2).setCellValue("结束时间");
|
|
|
|
+ rowTitle.createCell(3).setCellValue("下载数量");
|
|
|
|
+ int i = 1;
|
|
|
|
+ for (Long cameraId : cameraSnCodeMap.keySet()) {
|
|
|
|
+ HSSFRow rowData = sheet.createRow(i);
|
|
|
|
+ i++;
|
|
|
|
+ rowData.createCell(0).setCellValue(cameraSnCodeMap.get(cameraId) == null ? "" : cameraSnCodeMap.get(cameraId));
|
|
|
|
+ rowData.createCell(1).setCellValue(param.getStartDate() == null ? "" : param.getStartDate());
|
|
|
|
+ rowData.createCell(2).setCellValue(param.getEndDate() == null ? "" : param.getEndDate());
|
|
|
|
+ if(cameraSnCodeCountMap.get(cameraId) == null){
|
|
|
|
+ rowData.createCell(3).setCellValue("");
|
|
|
|
+ continue;
|
|
|
|
+ }
|
|
|
|
+ rowData.createCell(3).setCellValue(cameraSnCodeCountMap.get(cameraId));
|
|
|
|
+ }
|
|
|
|
|
|
|
|
+
|
|
|
|
+ HSSFSheet sheet2 = wb.createSheet("info");
|
|
|
|
+ //在sheet里创建第一行,这里即是表头
|
|
|
|
+ HSSFRow rowTitle2 = sheet2.createRow(0);
|
|
|
|
+ rowTitle2.createCell(0).setCellValue("S/N码");
|
|
|
|
+ rowTitle2.createCell(1).setCellValue("场景码");
|
|
|
|
+ rowTitle2.createCell(2).setCellValue("场景名称");
|
|
|
|
+ rowTitle2.createCell(3).setCellValue("场景链接");
|
|
|
|
+ rowTitle2.createCell(4).setCellValue("创建时间");
|
|
|
|
+
|
|
|
|
+ int k = 1;
|
|
|
|
+ for (SceneProDTO sceneProEntity : sceneEntityList) {
|
|
|
|
+ HSSFRow rowData = sheet2.createRow(k);
|
|
|
|
+ k++;
|
|
|
|
+ if(cameraSnCodeMap.get(sceneProEntity.getCameraId()) == null){
|
|
|
|
+ rowData.createCell(0).setCellValue("");
|
|
|
|
+ }else {
|
|
|
|
+ rowData.createCell(0).setCellValue(cameraSnCodeMap.get(sceneProEntity.getCameraId()));
|
|
|
|
+ }
|
|
|
|
+ rowData.createCell(1).setCellValue(sceneProEntity.getNum() == null ? "" :sceneProEntity.getNum());
|
|
|
|
+ rowData.createCell(2).setCellValue(sceneProEntity.getSceneName() == null ? "" :sceneProEntity.getSceneName());
|
|
|
|
+ rowData.createCell(3).setCellValue(sceneProEntity.getWebSite() == null ? "" :sceneProEntity.getWebSite());
|
|
|
|
+ rowData.createCell(4).setCellValue(sceneProEntity.getCreateTime() == null ? "" : DateUtil.date2String(sceneProEntity.getCreateTime(),DateUtil.DEFAULT_DATE_FORMAT));
|
|
}
|
|
}
|
|
|
|
+
|
|
//输出Excel文件
|
|
//输出Excel文件
|
|
OutputStream output = response.getOutputStream();
|
|
OutputStream output = response.getOutputStream();
|
|
response.reset();
|
|
response.reset();
|
|
@@ -562,4 +627,10 @@ public class CameraServiceImpl extends ServiceImpl<ICameraMapper, Camera> implem
|
|
return ServerCode.SUCCESS.message();
|
|
return ServerCode.SUCCESS.message();
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ @Override
|
|
|
|
+ public List<Camera> findByIds(List<Long> ids) {
|
|
|
|
+ LambdaQueryWrapper<Camera> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
|
+ queryWrapper.in(Camera::getId,ids);
|
|
|
|
+ return this.list(queryWrapper);
|
|
|
|
+ }
|
|
}
|
|
}
|