Procházet zdrojové kódy

app云端场景列表添加深时

lyhzzz před 1 rokem
rodič
revize
de2be8e212
19 změnil soubory, kde provedl 405 přidání a 29 odebrání
  1. 75 0
      src/main/java/com/fdkankan/ucenter/entity/TmContractor.java
  2. 54 0
      src/main/java/com/fdkankan/ucenter/entity/TmContractorNum.java
  3. 1 1
      src/main/java/com/fdkankan/ucenter/generate/AutoGenerate.java
  4. 4 0
      src/main/java/com/fdkankan/ucenter/httpClient/client/LaserClient.java
  5. 14 0
      src/main/java/com/fdkankan/ucenter/httpClient/param/LaserSceneParam.java
  6. 42 4
      src/main/java/com/fdkankan/ucenter/httpClient/service/LaserService.java
  7. 18 0
      src/main/java/com/fdkankan/ucenter/mapper/ITmContractorMapper.java
  8. 18 0
      src/main/java/com/fdkankan/ucenter/mapper/ITmContractorNumMapper.java
  9. 2 0
      src/main/java/com/fdkankan/ucenter/service/ICameraDetailService.java
  10. 19 0
      src/main/java/com/fdkankan/ucenter/service/ITmContractorNumService.java
  11. 19 0
      src/main/java/com/fdkankan/ucenter/service/ITmContractorService.java
  12. 36 19
      src/main/java/com/fdkankan/ucenter/service/impl/AppSceneService.java
  13. 7 0
      src/main/java/com/fdkankan/ucenter/service/impl/CameraDetailServiceImpl.java
  14. 49 0
      src/main/java/com/fdkankan/ucenter/service/impl/TmContractorNumServiceImpl.java
  15. 29 0
      src/main/java/com/fdkankan/ucenter/service/impl/TmContractorServiceImpl.java
  16. 3 0
      src/main/java/com/fdkankan/ucenter/vo/request/AppSceneParam.java
  17. 5 5
      src/main/resources/mapper/ucenter/ScenePlusMapper.xml
  18. 5 0
      src/main/resources/mapper/ucenter/TmContractorMapper.xml
  19. 5 0
      src/main/resources/mapper/ucenter/TmContractorNumMapper.xml

+ 75 - 0
src/main/java/com/fdkankan/ucenter/entity/TmContractor.java

@@ -0,0 +1,75 @@
+package com.fdkankan.ucenter.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author 
+ * @since 2024-03-14
+ */
+@Getter
+@Setter
+@TableName("tm_contractor")
+public class TmContractor implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    /**
+     * 总承包商
+     */
+    @TableField("main_contractor_user_id")
+    private Integer mainContractorUserId;
+
+    @TableField("main_contractor_name")
+    private String mainContractorName;
+
+    @TableField("main_contractor_account")
+    private String mainContractorAccount;
+
+    @TableField("main_contractor_company_id")
+    private Integer mainContractorCompanyId;
+
+    /**
+     * 承包商
+     */
+    @TableField("contractor_user_id")
+    private Integer contractorUserId;
+
+    @TableField("contractor_name")
+    private String contractorName;
+
+    @TableField("contractor_account")
+    private String contractorAccount;
+
+    @TableField("contractor_company_id")
+    private Integer contractorCompanyId;
+
+    @TableField("sys_user_id")
+    private Integer sysUserId;
+
+    @TableField("rec_status")
+    @TableLogic(value = "A",delval = "I")
+    private String recStatus;
+
+    @TableField("create_time")
+    private Date createTime;
+
+    @TableField("update_time")
+    private Date updateTime;
+
+
+}

+ 54 - 0
src/main/java/com/fdkankan/ucenter/entity/TmContractorNum.java

@@ -0,0 +1,54 @@
+package com.fdkankan.ucenter.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author 
+ * @since 2024-03-14
+ */
+@Getter
+@Setter
+@TableName("tm_contractor_num")
+public class TmContractorNum implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    /**
+     * 协作id
+     */
+    @TableField("contractor_id")
+    private Integer contractorId;
+
+    /**
+     * 场景码
+     */
+    @TableField("num")
+    private String num;
+
+    @TableField("rec_status")
+    @TableLogic(value = "A",delval = "I")
+    private String recStatus;
+
+    @TableField("create_time")
+    private Date createTime;
+
+    @TableField("update_time")
+    private Date updateTime;
+
+
+}

+ 1 - 1
src/main/java/com/fdkankan/ucenter/generate/AutoGenerate.java

@@ -18,7 +18,7 @@ public class AutoGenerate {
         String path =System.getProperty("user.dir") ;
         String path =System.getProperty("user.dir") ;
 
 
         generate(path,"ucenter", getTables(new String[]{
         generate(path,"ucenter", getTables(new String[]{
-                "tm_cold_storage",
+                "tm_contractor",
         }));
         }));
 
 
 //        generate(path,"goods", getTables(new String[]{
 //        generate(path,"goods", getTables(new String[]{

+ 4 - 0
src/main/java/com/fdkankan/ucenter/httpClient/client/LaserClient.java

@@ -3,6 +3,7 @@ package com.fdkankan.ucenter.httpClient.client;
 import com.dtflys.forest.annotation.*;
 import com.dtflys.forest.annotation.*;
 import com.fdkankan.ucenter.common.Result;
 import com.fdkankan.ucenter.common.Result;
 import com.fdkankan.ucenter.httpClient.address.LaserAddressSource;
 import com.fdkankan.ucenter.httpClient.address.LaserAddressSource;
+import com.fdkankan.ucenter.httpClient.param.LaserSceneParam;
 import com.fdkankan.ucenter.httpClient.param.SSDownSceneParam;
 import com.fdkankan.ucenter.httpClient.param.SSDownSceneParam;
 
 
 import java.util.List;
 import java.util.List;
@@ -65,4 +66,7 @@ public interface LaserClient {
      */
      */
     @Post("/laser/4dage/downOfflineSceneStatus")
     @Post("/laser/4dage/downOfflineSceneStatus")
     Result downOfflineSceneStatus(@JSONBody SSDownSceneParam param) ;
     Result downOfflineSceneStatus(@JSONBody SSDownSceneParam param) ;
+
+    @Post("/laser/4dage/managerSceneList")
+    Result sceneList(@JSONBody LaserSceneParam param);
 }
 }

+ 14 - 0
src/main/java/com/fdkankan/ucenter/httpClient/param/LaserSceneParam.java

@@ -0,0 +1,14 @@
+package com.fdkankan.ucenter.httpClient.param;
+
+import lombok.Data;
+
+import java.util.ArrayList;
+import java.util.List;
+
+@Data
+public class LaserSceneParam {
+    private Integer pageNum;
+    private Integer pageSize;
+    private List<String> sceneCodes = new ArrayList<>();
+    private Integer status;
+}

+ 42 - 4
src/main/java/com/fdkankan/ucenter/httpClient/service/LaserService.java

@@ -1,8 +1,10 @@
 package com.fdkankan.ucenter.httpClient.service;
 package com.fdkankan.ucenter.httpClient.service;
 
 
 import cn.hutool.core.io.FileUtil;
 import cn.hutool.core.io.FileUtil;
+import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson.JSONObject;
 import com.alibaba.nacos.common.http.client.NacosAsyncRestTemplate;
 import com.alibaba.nacos.common.http.client.NacosAsyncRestTemplate;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.fdkankan.common.util.FileUtils;
 import com.fdkankan.common.util.FileUtils;
 import com.fdkankan.ucenter.common.CameraTypeEnum;
 import com.fdkankan.ucenter.common.CameraTypeEnum;
 import com.fdkankan.ucenter.common.Result;
 import com.fdkankan.ucenter.common.Result;
@@ -12,14 +14,19 @@ import com.fdkankan.ucenter.entity.Camera;
 import com.fdkankan.ucenter.entity.CameraDetail;
 import com.fdkankan.ucenter.entity.CameraDetail;
 import com.fdkankan.ucenter.entity.User;
 import com.fdkankan.ucenter.entity.User;
 import com.fdkankan.ucenter.httpClient.client.LaserClient;
 import com.fdkankan.ucenter.httpClient.client.LaserClient;
+import com.fdkankan.ucenter.httpClient.param.LaserSceneParam;
 import com.fdkankan.ucenter.httpClient.param.SSDownSceneParam;
 import com.fdkankan.ucenter.httpClient.param.SSDownSceneParam;
 import com.fdkankan.ucenter.httpClient.vo.SSDownSceneVo;
 import com.fdkankan.ucenter.httpClient.vo.SSDownSceneVo;
+import com.fdkankan.ucenter.service.ICameraDetailService;
 import com.fdkankan.ucenter.service.ICameraService;
 import com.fdkankan.ucenter.service.ICameraService;
 import com.fdkankan.ucenter.service.IUserService;
 import com.fdkankan.ucenter.service.IUserService;
 import com.fdkankan.ucenter.vo.SceneBySnCodeVo;
 import com.fdkankan.ucenter.vo.SceneBySnCodeVo;
+import com.fdkankan.ucenter.vo.request.AppSceneParam;
+import com.fdkankan.ucenter.vo.response.AppSceneVo;
 import com.fdkankan.ucenter.vo.response.SceneNumVo;
 import com.fdkankan.ucenter.vo.response.SceneNumVo;
 import lombok.extern.slf4j.Slf4j;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpEntity;
 import org.springframework.http.HttpEntity;
 import org.springframework.http.HttpHeaders;
 import org.springframework.http.HttpHeaders;
@@ -30,10 +37,8 @@ import org.springframework.stereotype.Service;
 import javax.annotation.Resource;
 import javax.annotation.Resource;
 import java.io.File;
 import java.io.File;
 import java.io.IOException;
 import java.io.IOException;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
+import java.util.stream.Collectors;
 
 
 @Service
 @Service
 @Slf4j
 @Slf4j
@@ -45,6 +50,8 @@ public class LaserService {
     private IUserService userService;
     private IUserService userService;
     @Autowired
     @Autowired
     ICameraService cameraService;
     ICameraService cameraService;
+    @Autowired
+    ICameraDetailService cameraDetailService;
     /**
     /**
      * 根据用户获取激光相机数量
      * 根据用户获取激光相机数量
      * @param token
      * @param token
@@ -257,4 +264,35 @@ public class LaserService {
         return null ;
         return null ;
     }
     }
 
 
+    public HashMap<String, JSONObject> list(List<String> sceneNumList) {
+        LaserSceneParam newParam = new LaserSceneParam();
+        newParam.setPageNum(1);
+        newParam.setPageSize(sceneNumList.size());
+        newParam.setSceneCodes(sceneNumList);
+        return this.list(newParam);
+    }
+    public HashMap<String, JSONObject> list(List<String> sceneNumList,Integer status) {
+        LaserSceneParam newParam = new LaserSceneParam();
+        newParam.setPageNum(1);
+        newParam.setPageSize(sceneNumList.size());
+        newParam.setSceneCodes(sceneNumList);
+        newParam.setStatus(status);
+        return this.list(newParam);
+    }
+
+    public HashMap<String, JSONObject> list(LaserSceneParam newParam) {
+        HashMap<String, JSONObject> map = new HashMap<>();
+        Result fdkkResponse = laserClient.sceneList(newParam);
+        JSONObject jsonObject = (JSONObject) fdkkResponse.getData();
+        if(jsonObject == null){
+            return map;
+        }
+        JSONArray list = jsonObject.getJSONArray("list");
+
+        for (Object o : list) {
+            JSONObject obj = (JSONObject) o;
+            map.put(obj.getString("num"),obj);
+        }
+        return map;
+    }
 }
 }

+ 18 - 0
src/main/java/com/fdkankan/ucenter/mapper/ITmContractorMapper.java

@@ -0,0 +1,18 @@
+package com.fdkankan.ucenter.mapper;
+
+import com.fdkankan.ucenter.entity.TmContractor;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author 
+ * @since 2024-03-14
+ */
+@Mapper
+public interface ITmContractorMapper extends BaseMapper<TmContractor> {
+
+}

+ 18 - 0
src/main/java/com/fdkankan/ucenter/mapper/ITmContractorNumMapper.java

@@ -0,0 +1,18 @@
+package com.fdkankan.ucenter.mapper;
+
+import com.fdkankan.ucenter.entity.TmContractorNum;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author 
+ * @since 2024-03-14
+ */
+@Mapper
+public interface ITmContractorNumMapper extends BaseMapper<TmContractorNum> {
+
+}

+ 2 - 0
src/main/java/com/fdkankan/ucenter/service/ICameraDetailService.java

@@ -44,4 +44,6 @@ public interface ICameraDetailService extends IService<CameraDetail> {
     Long getCountByUserId(Long companyId,Long userId, Integer type);
     Long getCountByUserId(Long companyId,Long userId, Integer type);
 
 
     Long getCountByUserId(Long userId);
     Long getCountByUserId(Long userId);
+
+    List<CameraDetail> getListByCompanyId(Long companyId);
 }
 }

+ 19 - 0
src/main/java/com/fdkankan/ucenter/service/ITmContractorNumService.java

@@ -0,0 +1,19 @@
+package com.fdkankan.ucenter.service;
+
+import com.fdkankan.ucenter.entity.TmContractorNum;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.List;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author 
+ * @since 2024-03-14
+ */
+public interface ITmContractorNumService extends IService<TmContractorNum> {
+
+    List<String> getNumListByCompanyId(Long companyId);
+}

+ 19 - 0
src/main/java/com/fdkankan/ucenter/service/ITmContractorService.java

@@ -0,0 +1,19 @@
+package com.fdkankan.ucenter.service;
+
+import com.fdkankan.ucenter.entity.TmContractor;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.List;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author 
+ * @since 2024-03-14
+ */
+public interface ITmContractorService extends IService<TmContractor> {
+
+    List<TmContractor> getByCompanyId(Long companyId);
+}

+ 36 - 19
src/main/java/com/fdkankan/ucenter/service/impl/AppSceneService.java

@@ -1,5 +1,6 @@
 package com.fdkankan.ucenter.service.impl;
 package com.fdkankan.ucenter.service.impl;
 
 
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.fdkankan.common.util.JwtUtil;
 import com.fdkankan.common.util.JwtUtil;
 import com.fdkankan.ucenter.common.constants.ConstantFilePath;
 import com.fdkankan.ucenter.common.constants.ConstantFilePath;
@@ -11,6 +12,7 @@ import com.fdkankan.redis.util.RedisUtil;
 import com.fdkankan.ucenter.common.OssPath;
 import com.fdkankan.ucenter.common.OssPath;
 import com.fdkankan.ucenter.constant.LoginConstant;
 import com.fdkankan.ucenter.constant.LoginConstant;
 import com.fdkankan.ucenter.entity.*;
 import com.fdkankan.ucenter.entity.*;
+import com.fdkankan.ucenter.httpClient.service.LaserService;
 import com.fdkankan.ucenter.mapper.IScenePlusMapper;
 import com.fdkankan.ucenter.mapper.IScenePlusMapper;
 import com.fdkankan.ucenter.service.*;
 import com.fdkankan.ucenter.service.*;
 import com.fdkankan.ucenter.vo.request.AppSceneParam;
 import com.fdkankan.ucenter.vo.request.AppSceneParam;
@@ -52,18 +54,24 @@ public class AppSceneService {
     RedisUtil redisUtil;
     RedisUtil redisUtil;
     @Autowired
     @Autowired
     ISceneCooperationService sceneCooperationService;
     ISceneCooperationService sceneCooperationService;
-
     @Autowired
     @Autowired
     IScenePlusMapper scenePlusMapper;
     IScenePlusMapper scenePlusMapper;
     @Autowired
     @Autowired
     IUserRoleService userRoleService;
     IUserRoleService userRoleService;
     @Autowired
     @Autowired
     ITmColdStorageService tmColdStorageService;
     ITmColdStorageService tmColdStorageService;
+    @Autowired
+    ITmContractorService tmContractorService;
+    @Autowired
+    ITmContractorNumService tmContractorNumService;
+    @Autowired
+    LaserService laserService;
 
 
     @Value("${fyun.host}")
     @Value("${fyun.host}")
     private String ossHost;
     private String ossHost;
 
 
     public PageInfo pageList(AppSceneParam param) {
     public PageInfo pageList(AppSceneParam param) {
+        log.info("getAppAllSceneByPage-param:{}",param);
         if(StringUtils.isEmpty(param.getAppUserName()) && StringUtils.isEmpty(param.getPhoneNum()) && param.getCameraId() == null){
         if(StringUtils.isEmpty(param.getAppUserName()) && StringUtils.isEmpty(param.getPhoneNum()) && param.getCameraId() == null){
             throw new BusinessException(LoginConstant.FAILURE_CODE_3001, LoginConstant.FAILURE_MSG_3001);
             throw new BusinessException(LoginConstant.FAILURE_CODE_3001, LoginConstant.FAILURE_MSG_3001);
         }
         }
@@ -81,37 +89,52 @@ public class AppSceneService {
         }
         }
 
 
         List<String> cooperationNumList = new ArrayList<>();
         List<String> cooperationNumList = new ArrayList<>();
+        Set<Long> roleIds = null;
         if(StringUtils.isNotBlank(param.getPhoneNum())){
         if(StringUtils.isNotBlank(param.getPhoneNum())){
             User user = userService.getByUserName(param.getPhoneNum());
             User user = userService.getByUserName(param.getPhoneNum());
             if(user == null){
             if(user == null){
                 throw new BusinessException(LoginConstant.FAILURE_CODE_3015, LoginConstant.FAILURE_MSG_3015);
                 throw new BusinessException(LoginConstant.FAILURE_CODE_3015, LoginConstant.FAILURE_MSG_3015);
             }
             }
-            cooperationNumList = sceneCooperationService.getNumByUserIds(Arrays.asList(user.getId()));
+
+            cooperationNumList  = tmContractorNumService.getNumListByCompanyId(user.getCompanyId());
             if(cooperationNumList.size() >0){
             if(cooperationNumList.size() >0){
                 param.setCooperationNumList(cooperationNumList );
                 param.setCooperationNumList(cooperationNumList );
             }
             }
-            Set<Long> roleIds = userRoleService.getByUser(user);
+             roleIds = userRoleService.getByUser(user);
 //            if(!roleIds.contains(5L) && !roleIds.contains(6L)){
 //            if(!roleIds.contains(5L) && !roleIds.contains(6L)){
 //                param.setUserId(user.getId());
 //                param.setUserId(user.getId());
 //            }
 //            }
             if(!roleIds.contains(5L) ){
             if(!roleIds.contains(5L) ){
                 param.setCompanyId(user.getCompanyId());
                 param.setCompanyId(user.getCompanyId());
+                param.setUserId(user.getId());
             }
             }
         }
         }
-
         Page<AppSceneVo> page =  scenePlusMapper.pageList(new Page<>(param.getPageNum(),param.getPageSize()),param);
         Page<AppSceneVo> page =  scenePlusMapper.pageList(new Page<>(param.getPageNum(),param.getPageSize()),param);
-
         List<String> numList = page.getRecords().stream().map(AppSceneVo::getNum).collect(Collectors.toList());
         List<String> numList = page.getRecords().stream().map(AppSceneVo::getNum).collect(Collectors.toList());
+
+        HashMap<String, JSONObject> ssSceneMap = new HashMap<>();
+        if(param.getCameraType() == 10 || param.getCameraType() == 11){  //深时
+            ssSceneMap = laserService.list(numList);
+        }
+
         HashMap<String,Boolean> coldMap = tmColdStorageService.getByNumList(numList);
         HashMap<String,Boolean> coldMap = tmColdStorageService.getByNumList(numList);
 
 
-//        Set<Long> cameraIdSet = page.getRecords().stream().map(AppSceneVo::getCameraId).collect(Collectors.toSet());
-//        List<Long> cameraIds =  new ArrayList<>(cameraIdSet);
-//        HashMap<Long, Camera> cameraHashMap = cameraService.getByIds(cameraIds);
-//        HashMap<Long, CameraDetail> detailHashMap = cameraDetailService.getByCameraIds(cameraIds);
         //账号密码登录 sceneSourceType 取值 1用户场景,2协作场景
         //账号密码登录 sceneSourceType 取值 1用户场景,2协作场景
         //相机登录     sceneSourceType 取值皆为0
         //相机登录     sceneSourceType 取值皆为0
 
 
         for (AppSceneVo record : page.getRecords()) {
         for (AppSceneVo record : page.getRecords()) {
+            if(param.getCameraType() == 10 || param.getCameraType() == 11){  //深时
+                JSONObject ssObj = ssSceneMap.get(record.getNum());
+                if(ssObj!=null){
+                    record.setSceneName(ssObj.getString("title"));
+                    record.setThumb(ssObj.getString("thumb"));
+                    record.setWebSite(ssObj.getString("webSite"));
+                }else{
+                    record.setStatus(-1);
+                    record.setWebSite(null);
+                }
+            }
+
             if(coldMap.get(record.getNum()) != null ){
             if(coldMap.get(record.getNum()) != null ){
                 record.setColdStorage(coldMap.get(record.getNum()));
                 record.setColdStorage(coldMap.get(record.getNum()));
             }
             }
@@ -120,20 +143,14 @@ public class AppSceneService {
             } else if (record.getStatus() == 500) {
             } else if (record.getStatus() == 500) {
                 record.setStatus(-1);
                 record.setStatus(-1);
             }
             }
-            //虚拟场景
-            if(record.getCameraId() == null && param.getUserId() != null){
-                record.setSceneSourceType(record.getUserId().equals(param.getUserId()) ? 1 :2);
-                continue;
-            }
-            //相机场景
-            if(param.getCameraId() !=null && record.getCameraId().equals(param.getCameraId())){
-                record.setSceneSourceType(0);
-                continue;
-            }
+            record.setSceneSourceType(2);
             //用户场景
             //用户场景
             if(param.getUserId() != null && record.getUserId() != null){
             if(param.getUserId() != null && record.getUserId() != null){
                 record.setSceneSourceType(record.getUserId().equals(param.getUserId()) ? 1 :2);
                 record.setSceneSourceType(record.getUserId().equals(param.getUserId()) ? 1 :2);
             }
             }
+            if(roleIds!= null && (roleIds.contains(5L) || roleIds.contains(6L))){
+                record.setSceneSourceType(1);
+            }
         }
         }
         return PageInfo.PageInfo(page);
         return PageInfo.PageInfo(page);
     }
     }

+ 7 - 0
src/main/java/com/fdkankan/ucenter/service/impl/CameraDetailServiceImpl.java

@@ -204,4 +204,11 @@ public class CameraDetailServiceImpl extends ServiceImpl<ICameraDetailMapper, Ca
                 .set(CameraDetail::getLastRequestTime,new DateTime());
                 .set(CameraDetail::getLastRequestTime,new DateTime());
         this.update(wrapper);
         this.update(wrapper);
     }
     }
+
+    @Override
+    public List<CameraDetail> getListByCompanyId(Long companyId) {
+        LambdaQueryWrapper<CameraDetail> wrapper = new LambdaQueryWrapper<>();
+        wrapper.eq(CameraDetail::getCompanyId,companyId);
+        return this.list(wrapper);
+    }
 }
 }

+ 49 - 0
src/main/java/com/fdkankan/ucenter/service/impl/TmContractorNumServiceImpl.java

@@ -0,0 +1,49 @@
+package com.fdkankan.ucenter.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.fdkankan.ucenter.entity.TmContractor;
+import com.fdkankan.ucenter.entity.TmContractorNum;
+import com.fdkankan.ucenter.mapper.ITmContractorNumMapper;
+import com.fdkankan.ucenter.service.ITmContractorNumService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.fdkankan.ucenter.service.ITmContractorService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author 
+ * @since 2024-03-14
+ */
+@Service
+public class TmContractorNumServiceImpl extends ServiceImpl<ITmContractorNumMapper, TmContractorNum> implements ITmContractorNumService {
+
+    @Autowired
+    ITmContractorService tmContractorService;
+    @Override
+    public List<String> getNumListByCompanyId(Long companyId) {
+        List<TmContractor> tmContractors = tmContractorService.getByCompanyId(companyId);
+        if(!tmContractors.isEmpty()){
+            List<Integer> ids = tmContractors.stream().map(TmContractor::getId).collect(Collectors.toList());
+            List<TmContractorNum> list = this.getByContractorIds(ids);
+            return list.stream().map(TmContractorNum::getNum).collect(Collectors.toList());
+        }
+        return new ArrayList<>();
+    }
+
+    public List<TmContractorNum> getByContractorIds(List<Integer> ids) {
+        if(ids.isEmpty()){
+            return new ArrayList<>();
+        }
+        LambdaQueryWrapper<TmContractorNum> wrapper = new LambdaQueryWrapper<>();
+        wrapper.in(TmContractorNum::getContractorId,ids);
+        return this.list(wrapper);
+    }
+}

+ 29 - 0
src/main/java/com/fdkankan/ucenter/service/impl/TmContractorServiceImpl.java

@@ -0,0 +1,29 @@
+package com.fdkankan.ucenter.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.fdkankan.ucenter.entity.TmContractor;
+import com.fdkankan.ucenter.mapper.ITmContractorMapper;
+import com.fdkankan.ucenter.service.ITmContractorService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author 
+ * @since 2024-03-14
+ */
+@Service
+public class TmContractorServiceImpl extends ServiceImpl<ITmContractorMapper, TmContractor> implements ITmContractorService {
+
+    @Override
+    public List<TmContractor> getByCompanyId(Long companyId) {
+        LambdaQueryWrapper<TmContractor> wrapper = new LambdaQueryWrapper<>();
+        wrapper.eq(TmContractor::getContractorCompanyId,companyId);
+        return this.list(wrapper);
+    }
+}

+ 3 - 0
src/main/java/com/fdkankan/ucenter/vo/request/AppSceneParam.java

@@ -2,11 +2,13 @@ package com.fdkankan.ucenter.vo.request;
 
 
 import com.fdkankan.ucenter.common.RequestBase;
 import com.fdkankan.ucenter.common.RequestBase;
 import lombok.Data;
 import lombok.Data;
+import lombok.ToString;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.StringUtils;
 
 
 import java.util.List;
 import java.util.List;
 
 
 @Data
 @Data
+@ToString
 public class AppSceneParam extends RequestBase {
 public class AppSceneParam extends RequestBase {
 
 
     private String appUserName;
     private String appUserName;
@@ -34,5 +36,6 @@ public class AppSceneParam extends RequestBase {
     private Long companyId;
     private Long companyId;
 
 
 
 
+    private List<String> snCodes;
 
 
 }
 }

+ 5 - 5
src/main/resources/mapper/ucenter/ScenePlusMapper.xml

@@ -38,12 +38,15 @@
 
 
 
 
     <sql id="commonWhere">
     <sql id="commonWhere">
-        <if test= 'param.userId != null or param.cooperationNumList != null or param.cameraId != null'>
+        <if test= 'param.userId != null or param.cooperationNumList != null or param.cameraId != null or param.companyId != null'>
            and  ( 1!=1
            and  ( 1!=1
         </if>
         </if>
         <if test="param.userId != null">
         <if test="param.userId != null">
             or  p.user_id =#{param.userId}
             or  p.user_id =#{param.userId}
         </if>
         </if>
+        <if test= 'param.companyId != null' >
+            or com.id = #{param.companyId}
+        </if>
         <if test="param.cameraId !=null ">
         <if test="param.cameraId !=null ">
             or p.camera_id = #{param.cameraId}
             or p.camera_id = #{param.cameraId}
         </if>
         </if>
@@ -53,7 +56,7 @@
                    #{sceneNum}
                    #{sceneNum}
                </foreach>
                </foreach>
         </if>
         </if>
-        <if test= 'param.userId != null or param.cooperationNumList != null or param.cameraId != null'>
+        <if test= 'param.userId != null or param.cooperationNumList != null or param.cameraId != null or param.companyId != null'>
             )
             )
         </if>
         </if>
         <if test="param.sceneType !=null and param.sceneType !=''">
         <if test="param.sceneType !=null and param.sceneType !=''">
@@ -62,9 +65,6 @@
         <if test= 'param.cameraType != null' >
         <if test= 'param.cameraType != null' >
             and tcd.goods_id = #{param.cameraType}
             and tcd.goods_id = #{param.cameraType}
         </if>
         </if>
-        <if test= 'param.companyId != null' >
-            and com.id = #{param.companyId}
-        </if>
     </sql>
     </sql>
 
 
 
 

+ 5 - 0
src/main/resources/mapper/ucenter/TmContractorMapper.xml

@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.fdkankan.ucenter.mapper.ITmContractorMapper">
+
+</mapper>

+ 5 - 0
src/main/resources/mapper/ucenter/TmContractorNumMapper.xml

@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.fdkankan.ucenter.mapper.ITmContractorNumMapper">
+
+</mapper>