Browse Source

feign 补充

lyhzzz 3 years ago
parent
commit
446e27cb4d

+ 3 - 0
4dkankan-center-api/4dkankan-center-scene-api/src/main/java/com/fdkankan/scene/api/feign/SceneUserSceneClient.java

@@ -54,4 +54,7 @@ public interface SceneUserSceneClient {
     @PostMapping("/updateUserIdByCameraId")
     ResultData updateUserIdByCameraId(@RequestParam(value = "userId")Long userId,
                                       @RequestParam(value = "cameraId")Long cameraId);
+
+    @PostMapping("/getSceneCount")
+    ResultData getSceneCount(@RequestParam(value = "cameraId") Long cameraId);
 }

+ 4 - 18
4dkankan-center-platform/src/main/java/com/fdkankan/platform/goods/service/impl/DeviceServiceImpl.java

@@ -61,9 +61,8 @@ public class DeviceServiceImpl implements IDeviceService {
             }
             cameraEntity.setUserName(user.getUserName());
         }
-        //sceneService.getSceneCount(cameraEntity.getId());
-        //todo getSceneCount
-        cameraEntity.setSceneCount(0);
+        Long count = (Long) sceneUserSceneClient.getSceneCount(cameraEntity.getId()).getData();
+        cameraEntity.setSceneCount(count.intValue());
         UserIncrement userIncrementEntity = userIncrementService.getByCameraId(cameraEntity.getId());
         if(userIncrementEntity != null){
             cameraEntity.setUserIncrementId(userIncrementEntity.getId());
@@ -263,16 +262,7 @@ public class DeviceServiceImpl implements IDeviceService {
         if(userIncrementEntity != null){
             userIncrementService.unbindCamera(detailEntity.getUserId(), userIncrementEntity.getId(), true,detailEntity,userIncrementEntity);
         }
-//        Result result = null;
-//        if (detailEntity.getType() == 0){
-//            result = sceneService.updateUserIdByCameraId(null, cameraEntity.getId());
-//        }else {
-//            result = sceneService.updateUserIdByCameraIdPro(null, cameraEntity.getId());
-//        }
-//        if (result.getCode() == Result.CODE_FAILURE){
-//            throw new Exception(LoginConstant.ERROR_MSG);
-//        }
-//  todo updateUserIdByCameraId
+        sceneUserSceneClient.updateUserIdByCameraId(userEntity.getId(),cameraEntity.getId());
         //删除所有相机协作信息
 //        if(detailEntity.getCooperationUser() != null){
             camera.setCameraId(cameraEntity.getId());
@@ -314,11 +304,7 @@ public class DeviceServiceImpl implements IDeviceService {
             userIncrementService.unbindCamera(detailEntity.getUserId(), userIncrementEntity.getId(), true,detailEntity,userIncrementEntity);
         }
 
-//        Result result = sceneService.updateUserIdByCameraIdPro(null, cameraEntity.getId());
-//        if (result.getCode() == Result.CODE_FAILURE){
-//            throw new Exception(LoginConstant.ERROR_MSG);
-//        }
-        //todo updateUserIdByCameraIdPro
+        sceneUserSceneClient.updateUserIdByCameraId(userEntity.getId(),cameraEntity.getId());
 
         //删除所有相机协作信息
 //        if(detailEntity.getCooperationUser() != null){

+ 51 - 0
4dkankan-center-scene/src/main/java/com/fdkankan/scene/controller/DeviceSceneController.java

@@ -0,0 +1,51 @@
+package com.fdkankan.scene.controller;
+
+import com.fdkankan.common.controller.BaseController;
+import com.fdkankan.common.response.ResultData;
+import com.fdkankan.scene.service.ISceneService;
+import com.fdkankan.scene.vo.DeviceSceneParamVO;
+import lombok.extern.log4j.Log4j2;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * 设备中心接口-场景模块
+ */
+@Log4j2
+@RestController
+@RequestMapping("/api/device/scene")
+public class DeviceSceneController extends BaseController {
+
+    @Autowired
+    private ISceneService sceneService;
+
+    /**
+     * 获取相机场景记录
+     * cameraId         相机id
+     * cameraType       相机类型
+     * searchKey        关键词
+     * endTime          结束时间
+     * startTime        开始时间
+     * sceneType        0表示其他,1表示文博,2表示地产,3表示电商,4表示餐饮,5表示家居,99一件换装虚拟房源
+     * @return
+     */
+    @RequestMapping(value = "/list", method = RequestMethod.POST)
+    public ResultData getScenes(@RequestBody DeviceSceneParamVO param) throws Exception {
+        return sceneService.getScenes(param);
+    }
+
+    /**
+     * 删除场景
+     * sceneNum     场景码
+     * @return
+     */
+    @RequestMapping(value = "/delete", method = RequestMethod.POST)
+    public ResultData deleteScene(@RequestBody DeviceSceneParamVO param) throws Exception {
+        return sceneService.deleteScene(param.getSceneNum());
+    }
+
+
+}

+ 5 - 0
4dkankan-center-scene/src/main/java/com/fdkankan/scene/feign/UserSceenFeign.java

@@ -109,5 +109,10 @@ public class UserSceenFeign {
         sceneProService.updateUserIdByCameraId(userId,cameraId);
         return ResultData.ok();
     }
+
+    @PostMapping("/getSceneCount")
+    ResultData getSceneCount(@RequestParam(value = "cameraId")Long cameraId) throws Exception{
+        return ResultData.ok(sceneProService.getSceneCount(cameraId));
+    }
 }
 

+ 4 - 4
4dkankan-center-scene/src/main/java/com/fdkankan/scene/service/ISceneService.java

@@ -7,10 +7,7 @@ import com.fdkankan.common.response.ResultData;
 import com.fdkankan.scene.entity.Scene;
 import com.fdkankan.scene.entity.ScenePO;
 import com.fdkankan.scene.entity.SceneProPO;
-import com.fdkankan.scene.vo.BaseSceneParamVO;
-import com.fdkankan.scene.vo.SceneEditParamVO;
-import com.fdkankan.scene.vo.SceneParamVO;
-import com.fdkankan.scene.vo.SceneVO;
+import com.fdkankan.scene.vo.*;
 import org.springframework.web.multipart.MultipartFile;
 
 import java.io.IOException;
@@ -101,4 +98,7 @@ public interface ISceneService extends IService<Scene> {
     ResultData downLoadZSData(BaseSceneParamVO param) throws Exception;
 
 
+    ResultData getScenes(DeviceSceneParamVO param);
+
+    ResultData deleteScene(String sceneNum) throws IOException;
 }

+ 73 - 11
4dkankan-center-scene/src/main/java/com/fdkankan/scene/service/impl/SceneServiceImpl.java

@@ -7,7 +7,9 @@ import cn.hutool.core.util.StrUtil;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -19,8 +21,8 @@ import com.fdkankan.common.util.DateExtUtil;
 import com.fdkankan.common.util.FileUtils;
 import com.fdkankan.fyun.oss.UploadToOssUtil;
 import com.fdkankan.fyun.qiniu.QiniuUpload;
-import com.fdkankan.platform.api.feign.PlatformUserClient;
 import com.fdkankan.platform.api.dto.User;
+import com.fdkankan.platform.api.feign.PlatformUserClient;
 import com.fdkankan.redis.constant.RedisKey;
 import com.fdkankan.redis.constant.RedisLockKey;
 import com.fdkankan.redis.util.RedisLockUtil;
@@ -28,16 +30,8 @@ import com.fdkankan.redis.util.RedisUtil;
 import com.fdkankan.scene.entity.*;
 import com.fdkankan.scene.mapper.ISceneMapper;
 import com.fdkankan.scene.mapper.ISceneProMapper;
-import com.fdkankan.scene.service.ISceneDataDownloadService;
-import com.fdkankan.scene.service.ISceneExtService;
-import com.fdkankan.scene.service.ISceneProExtService;
-import com.fdkankan.scene.service.ISceneProService;
-import com.fdkankan.scene.service.ISceneService;
-import com.fdkankan.scene.vo.BaseSceneParamVO;
-import com.fdkankan.scene.vo.SceneDataDownloadVO;
-import com.fdkankan.scene.vo.SceneEditParamVO;
-import com.fdkankan.scene.vo.SceneParamVO;
-import com.fdkankan.scene.vo.SceneVO;
+import com.fdkankan.scene.service.*;
+import com.fdkankan.scene.vo.*;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
 import org.joda.time.DateTime;
@@ -1242,5 +1236,73 @@ public class SceneServiceImpl extends ServiceImpl<ISceneMapper, Scene> implement
         return ResultData.ok(BeanUtil.copyProperties(sceneDataDownload, SceneDataDownloadVO.class));
     }
 
+    @Override
+    public ResultData getScenes(DeviceSceneParamVO param) {
+
+        QueryWrapper queryWrapper = new QueryWrapper();
+        if(param.getCameraType() == null || param.getCameraType() == 0){
+            queryWrapper.setEntityClass(Scene.class);
+        }else {
+            queryWrapper.setEntityClass(ScenePro.class);
+        }
+        queryWrapper.eq("tb_status",TbStatus.VALID);
+        queryWrapper.orderByDesc("create_time");
+        if (param.getCameraId() != null) {
+            if (StringUtils.isNotEmpty(param.getStartTime()) && StringUtils.isNotEmpty(param.getEndTime())) {
+                queryWrapper.between("create_time", com.fdkankan.common.util.DateUtil.convert2CST(Long.parseLong(param.getStartTime())),
+                        com.fdkankan.common.util.DateUtil.convert2CST(Long.parseLong(param.getEndTime())));
+            }
+
+            if(StringUtils.isNotEmpty(param.getSceneType())){
+                queryWrapper.eq("scene_type",param.getSceneType());
+            }else{
+                queryWrapper.ne("scene_type",99);
+            }
+            queryWrapper.eq("camera_id", param.getCameraId());
+            if(StringUtils.isNotEmpty(param.getSearchKey())){
+                queryWrapper.like("scene_name", "%" + param.getSearchKey() + "%");
+            }
+        }
+        Page page = new Page(param.getPageNum(), param.getPageSize());
+        if(param.getCameraType() == null || param.getCameraType() == 0){
+            page = this.page(page, queryWrapper);
+        }else {
+            page = sceneProService.page(page,queryWrapper);
+        }
+
+        return ResultData.ok(page);
+    }
+
+    @Override
+    public ResultData deleteScene(String sceneNum) throws IOException {
+        ScenePO bySceneNum = this.findBySceneNum(sceneNum);
+        if(bySceneNum != null){
+            UpdateWrapper<Scene> updateWrapper = new UpdateWrapper<>();
+            updateWrapper.lambda()
+                    .eq(Scene::getNum,sceneNum).set(Scene::getTbStatus,TbStatus.DELETE.code());
+            sceneService.update(updateWrapper);
+            return ResultData.ok();
+        }
+        UpdateWrapper<ScenePro> updateWrapper = new UpdateWrapper<>();
+        updateWrapper.lambda()
+                .eq(ScenePro::getNum,sceneNum).set(ScenePro::getTbStatus,TbStatus.DELETE.code());
+        sceneProService.update(updateWrapper);
+
+        ScenePro sceneProEntity = sceneProService.findBySceneNum(sceneNum);
+
+        JSONObject statusJson = new JSONObject();
+        //临时将-2改成1,app还没完全更新
+        statusJson.put("status", sceneProEntity.getSceneStatus() == -2? 1 : sceneProEntity.getSceneStatus());
+        statusJson.put("webSite", sceneProEntity.getWebSite());
+        statusJson.put("sceneNum", sceneProEntity.getNum());
+        statusJson.put("thumb", sceneProEntity.getThumb());
+        statusJson.put("payStatus", sceneProEntity.getPayStatus());
+        statusJson.put("recStatus", sceneProEntity.getTbStatus() == 0 ? "A" :"I");
+        FileUtils.writeFile(ConstantFilePath.SCENE_PATH+"data/data"+sceneNum+File.separator+"status.json", statusJson.toString());
+        uploadToOssUtil.upload(ConstantFilePath.SCENE_PATH+"data/data"+sceneNum+File.separator+"status.json",
+                "data/data"+sceneNum+File.separator+"status.json");
 
+        return ResultData.ok();
+
+    }
 }

+ 28 - 0
4dkankan-center-scene/src/main/java/com/fdkankan/scene/vo/DeviceSceneParamVO.java

@@ -0,0 +1,28 @@
+package com.fdkankan.scene.vo;
+
+import com.fdkankan.common.request.RequestBase;
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+public class DeviceSceneParamVO extends RequestBase implements Serializable {
+
+    private static final long serialVersionUID = 5251625920621810844L;
+
+    private Long cameraId;
+
+    private String searchKey;
+
+    private Integer cameraType;
+
+    private String recStatus;
+
+    private String sceneType;
+
+    private String startTime;
+
+    private String endTime;
+
+    private String sceneNum;
+}