|
@@ -0,0 +1,94 @@
|
|
|
+package com.fdkankan.ucenter.controller.fire;
|
|
|
+
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
+import com.fdkankan.common.constant.AppConstant;
|
|
|
+import com.fdkankan.common.exception.BusinessException;
|
|
|
+import com.fdkankan.common.util.JwtUtil;
|
|
|
+import com.fdkankan.ucenter.common.BaseController;
|
|
|
+import com.fdkankan.ucenter.common.Result;
|
|
|
+import com.fdkankan.ucenter.constant.CameraConstant;
|
|
|
+import com.fdkankan.ucenter.constant.LoginConstant;
|
|
|
+import com.fdkankan.ucenter.entity.Camera;
|
|
|
+import com.fdkankan.ucenter.entity.CameraDetail;
|
|
|
+import com.fdkankan.ucenter.entity.User;
|
|
|
+import com.fdkankan.ucenter.service.ICameraDetailService;
|
|
|
+import com.fdkankan.ucenter.service.ICameraService;
|
|
|
+import com.fdkankan.ucenter.service.IUserService;
|
|
|
+import com.fdkankan.ucenter.vo.request.CameraDetailParam;
|
|
|
+import com.fdkankan.ucenter.vo.response.CameraVo;
|
|
|
+import lombok.extern.log4j.Log4j2;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.util.ObjectUtils;
|
|
|
+import org.springframework.util.StringUtils;
|
|
|
+import org.springframework.web.bind.annotation.*;
|
|
|
+
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.Arrays;
|
|
|
+import java.util.List;
|
|
|
+
|
|
|
+@Log4j2
|
|
|
+/**火调-绑定相机*/
|
|
|
+@RestController
|
|
|
+@RequestMapping("/fd/api/user/camera")
|
|
|
+public class FdUserCameraController extends BaseController {
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IUserService userService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private ICameraService cameraService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private ICameraDetailService cameraDetailService;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 用户添加设备
|
|
|
+ */
|
|
|
+ @RequestMapping(value = "/add", method = RequestMethod.POST)
|
|
|
+ public Result addCamera(@RequestBody JSONObject param) throws Exception {
|
|
|
+ if(ObjectUtils.isEmpty(param.getString("snCode"))){
|
|
|
+ throw new BusinessException(-1,"缺少必要参数");
|
|
|
+ }
|
|
|
+ String snCode = param.getString("snCode");
|
|
|
+ Camera cameraEntity = cameraService.getBySnCode(snCode);
|
|
|
+ if(ObjectUtils.isEmpty(cameraEntity)){
|
|
|
+ throw new BusinessException(CameraConstant.FAILURE_CODE_6020,CameraConstant.FAILURE_MSG_6020);
|
|
|
+ }
|
|
|
+ CameraDetail cameraDetailEntity = cameraDetailService.getByCameraId(cameraEntity.getId());
|
|
|
+ if(ObjectUtils.isEmpty(cameraDetailEntity)){
|
|
|
+ throw new BusinessException(CameraConstant.FAILURE_CODE_6020,CameraConstant.FAILURE_MSG_6020);
|
|
|
+ }
|
|
|
+ if (ObjectUtils.isEmpty(cameraDetailEntity.getCompanyId())) {
|
|
|
+ throw new BusinessException(CameraConstant.FAILURE_CODE_6005, CameraConstant.FAILURE_MSG_6005);
|
|
|
+ }
|
|
|
+
|
|
|
+ if(cameraDetailEntity.getUserId() != null){
|
|
|
+ throw new BusinessException(AppConstant.FAILURE_CODE_4011, AppConstant.FAILURE_MSG_4011);
|
|
|
+ }
|
|
|
+
|
|
|
+ // 绑定相机
|
|
|
+ cameraService.bind(cameraDetailEntity.getType(),cameraEntity.getSnCode(), JwtUtil.getUsername(getToken()));
|
|
|
+
|
|
|
+ return Result.success();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取用户设备
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @PostMapping(value = "/details")
|
|
|
+ public Result detail(@RequestBody CameraDetailParam param) {
|
|
|
+ if(StringUtils.isEmpty(param.getChildName()) && param.getChildNames().size() <=0){
|
|
|
+ return Result.success(new ArrayList<>());
|
|
|
+ }
|
|
|
+ if(param.getChildNames().size() <=0){
|
|
|
+ param.setChildNames(Arrays.asList(param.getChildName()));
|
|
|
+ }
|
|
|
+ List<CameraVo> list = new ArrayList<>();
|
|
|
+ for (String childName : param.getChildNames()) {
|
|
|
+ CameraVo vo = userService.findCameraDetailByChildName(getToken(), childName);
|
|
|
+ list.add(vo);
|
|
|
+ }
|
|
|
+ return Result.success(list);
|
|
|
+ }
|
|
|
+}
|