tplink缓存视频存储
This commit is contained in:
parent
e40e60bad6
commit
7aae2df595
|
|
@ -1,16 +1,13 @@
|
||||||
package com.nu.modules.iot.tplink.controller;
|
package com.nu.modules.iot.tplink.camerainfo.controller;
|
||||||
|
|
||||||
import cn.hutool.json.JSONObject;
|
import cn.hutool.json.JSONObject;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
|
|
||||||
import com.nu.modules.iot.tplink.entity.AppCameraInfo;
|
import com.nu.modules.iot.tplink.camerainfo.entity.AppCameraInfo;
|
||||||
import com.nu.modules.iot.tplink.service.IAppCameraInfoService;
|
import com.nu.modules.iot.tplink.camerainfo.service.IAppCameraInfoService;
|
||||||
import io.swagger.annotations.Api;
|
|
||||||
import io.swagger.annotations.ApiOperation;
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.jeecg.common.api.vo.Result;
|
import org.jeecg.common.api.vo.Result;
|
||||||
import org.jeecg.common.aspect.annotation.AutoLog;
|
|
||||||
import org.jeecg.common.system.base.controller.JeecgController;
|
import org.jeecg.common.system.base.controller.JeecgController;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
package com.nu.modules.iot.tplink.entity;
|
package com.nu.modules.iot.tplink.camerainfo.entity;
|
||||||
|
|
||||||
import cn.hutool.json.JSONObject;
|
import cn.hutool.json.JSONObject;
|
||||||
import com.baomidou.mybatisplus.annotation.IdType;
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
package com.nu.modules.iot.tplink.entity;
|
package com.nu.modules.iot.tplink.camerainfo.entity;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.annotation.TableName;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModel;
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
package com.nu.modules.iot.tplink.entity;
|
package com.nu.modules.iot.tplink.camerainfo.entity;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.annotation.IdType;
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
import com.baomidou.mybatisplus.annotation.TableField;
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
package com.nu.modules.iot.tplink.entity;
|
package com.nu.modules.iot.tplink.camerainfo.entity;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.annotation.IdType;
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
import com.baomidou.mybatisplus.annotation.TableField;
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
package com.nu.modules.iot.tplink.entity;
|
package com.nu.modules.iot.tplink.camerainfo.entity;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.annotation.IdType;
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
import com.baomidou.mybatisplus.annotation.TableField;
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
package com.nu.modules.iot.tplink.enums;
|
package com.nu.modules.iot.tplink.camerainfo.enums;
|
||||||
|
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
|
|
@ -1,9 +1,9 @@
|
||||||
package com.nu.modules.iot.tplink.mapper;
|
package com.nu.modules.iot.tplink.camerainfo.mapper;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.nu.modules.iot.tplink.entity.AppCameraInfo;
|
import com.nu.modules.iot.tplink.camerainfo.entity.AppCameraInfo;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
package com.nu.modules.iot.tplink.mapper;
|
package com.nu.modules.iot.tplink.camerainfo.mapper;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
import com.nu.modules.iot.tplink.entity.AppErrorCode;
|
import com.nu.modules.iot.tplink.camerainfo.entity.AppErrorCode;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
package com.nu.modules.iot.tplink.mapper;
|
package com.nu.modules.iot.tplink.camerainfo.mapper;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
import com.nu.modules.iot.tplink.entity.AppProjectInfo;
|
import com.nu.modules.iot.tplink.camerainfo.entity.AppProjectInfo;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Description: 护理单元-物联管理-TPLINK项目信息
|
* @Description: 护理单元-物联管理-TPLINK项目信息
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
package com.nu.modules.iot.tplink.mapper;
|
package com.nu.modules.iot.tplink.camerainfo.mapper;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
import com.nu.modules.iot.tplink.entity.AppRegionInfo;
|
import com.nu.modules.iot.tplink.camerainfo.entity.AppRegionInfo;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Description: 护理单元-物联管理-TPLINK分组信息
|
* @Description: 护理单元-物联管理-TPLINK分组信息
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
package com.nu.modules.iot.tplink.mapper;
|
package com.nu.modules.iot.tplink.camerainfo.mapper;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
import com.nu.modules.iot.tplink.entity.AppTumsConfig;
|
import com.nu.modules.iot.tplink.camerainfo.entity.AppTumsConfig;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?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">
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
<mapper namespace="com.nu.modules.iot.tplink.mapper.AppCameraInfoMapper">
|
<mapper namespace="com.nu.modules.iot.tplink.camerainfo.mapper.AppCameraInfoMapper">
|
||||||
|
|
||||||
<select id="findPage" parameterType="com.nu.modules.iot.tplink.entity.AppCameraInfo" resultType="com.nu.modules.iot.tplink.entity.AppCameraInfo">
|
<select id="findPage" parameterType="com.nu.modules.iot.tplink.camerainfo.entity.AppCameraInfo" resultType="com.nu.modules.iot.tplink.camerainfo.entity.AppCameraInfo">
|
||||||
select a.id,
|
select a.id,
|
||||||
a.device_index as deviceIndex,
|
a.device_index as deviceIndex,
|
||||||
device_name as deviceName,
|
device_name as deviceName,
|
||||||
|
|
@ -61,7 +61,7 @@
|
||||||
</where>
|
</where>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="findAllList" parameterType="com.nu.modules.iot.tplink.entity.AppCameraInfo" resultType="com.nu.modules.iot.tplink.entity.AppCameraInfo">
|
<select id="findAllList" parameterType="com.nu.modules.iot.tplink.camerainfo.entity.AppCameraInfo" resultType="com.nu.modules.iot.tplink.camerainfo.entity.AppCameraInfo">
|
||||||
select a.id,
|
select a.id,
|
||||||
device_index as deviceIndex,
|
device_index as deviceIndex,
|
||||||
device_name as deviceName,
|
device_name as deviceName,
|
||||||
|
|
@ -88,7 +88,7 @@
|
||||||
from nu_iot_tplink_camera a
|
from nu_iot_tplink_camera a
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="findNuPage" parameterType="com.nu.modules.iot.tplink.entity.AppCameraInfo" resultType="com.nu.modules.iot.tplink.entity.AppCameraInfo">
|
<select id="findNuPage" parameterType="com.nu.modules.iot.tplink.camerainfo.entity.AppCameraInfo" resultType="com.nu.modules.iot.tplink.camerainfo.entity.AppCameraInfo">
|
||||||
select
|
select
|
||||||
nu_id as nuId,
|
nu_id as nuId,
|
||||||
nu_name as nuName
|
nu_name as nuName
|
||||||
|
|
@ -103,7 +103,7 @@
|
||||||
</where>
|
</where>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="getByDeviceId" parameterType="com.nu.modules.iot.tplink.entity.AppCameraInfo" resultType="com.nu.modules.iot.tplink.entity.AppCameraInfo">
|
<select id="getByDeviceId" parameterType="com.nu.modules.iot.tplink.camerainfo.entity.AppCameraInfo" resultType="com.nu.modules.iot.tplink.camerainfo.entity.AppCameraInfo">
|
||||||
select a.id,
|
select a.id,
|
||||||
device_index as deviceIndex,
|
device_index as deviceIndex,
|
||||||
device_name as deviceName,
|
device_name as deviceName,
|
||||||
|
|
@ -132,7 +132,7 @@
|
||||||
where device_index = #{deviceIndex}
|
where device_index = #{deviceIndex}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="getByNuId" parameterType="com.nu.modules.iot.tplink.entity.AppCameraInfo" resultType="com.nu.modules.iot.tplink.entity.AppCameraInfo">
|
<select id="getByNuId" parameterType="com.nu.modules.iot.tplink.camerainfo.entity.AppCameraInfo" resultType="com.nu.modules.iot.tplink.camerainfo.entity.AppCameraInfo">
|
||||||
select a.id,
|
select a.id,
|
||||||
device_index as deviceIndex,
|
device_index as deviceIndex,
|
||||||
device_name as deviceName,
|
device_name as deviceName,
|
||||||
|
|
@ -161,7 +161,7 @@
|
||||||
where a.nu_id = #{nuId}
|
where a.nu_id = #{nuId}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="getCapabilityByDeviceId" parameterType="com.nu.modules.iot.tplink.entity.AppCameraInfo" resultType="com.nu.modules.iot.tplink.entity.AppCameraInfo">
|
<select id="getCapabilityByDeviceId" parameterType="com.nu.modules.iot.tplink.camerainfo.entity.AppCameraInfo" resultType="com.nu.modules.iot.tplink.camerainfo.entity.AppCameraInfo">
|
||||||
select a.id,
|
select a.id,
|
||||||
device_index as deviceIndex,
|
device_index as deviceIndex,
|
||||||
motion_detection as motionDetection,
|
motion_detection as motionDetection,
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?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">
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
<mapper namespace="com.nu.modules.iot.tplink.mapper.AppErrorCodeMapper">
|
<mapper namespace="com.nu.modules.iot.tplink.camerainfo.mapper.AppErrorCodeMapper">
|
||||||
|
|
||||||
<select id="getByCode" parameterType="String" resultType="com.nu.modules.iot.tplink.entity.AppErrorCode">
|
<select id="getByCode" parameterType="String" resultType="com.nu.modules.iot.tplink.camerainfo.entity.AppErrorCode">
|
||||||
select
|
select
|
||||||
error_code as errorCode,
|
error_code as errorCode,
|
||||||
error_msg as errorMsg
|
error_msg as errorMsg
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?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">
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
<mapper namespace="com.nu.modules.iot.tplink.mapper.AppProjectInfoMapper">
|
<mapper namespace="com.nu.modules.iot.tplink.camerainfo.mapper.AppProjectInfoMapper">
|
||||||
|
|
||||||
<insert id="addProjectInfo">
|
<insert id="addProjectInfo">
|
||||||
insert into nu_iot_tplink_project(
|
insert into nu_iot_tplink_project(
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?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">
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
<mapper namespace="com.nu.modules.iot.tplink.mapper.AppRegionInfoMapper">
|
<mapper namespace="com.nu.modules.iot.tplink.camerainfo.mapper.AppRegionInfoMapper">
|
||||||
|
|
||||||
<insert id="addRegionInfo">
|
<insert id="addRegionInfo">
|
||||||
insert into nu_iot_tplink_region(
|
insert into nu_iot_tplink_region(
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?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">
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
<mapper namespace="com.nu.modules.iot.tplink.mapper.AppTumsConfigMapper">
|
<mapper namespace="com.nu.modules.iot.tplink.camerainfo.mapper.AppTumsConfigMapper">
|
||||||
|
|
||||||
<select id="getByCode" parameterType="String" resultType="com.nu.modules.iot.tplink.entity.AppTumsConfig">
|
<select id="getByCode" parameterType="String" resultType="com.nu.modules.iot.tplink.camerainfo.entity.AppTumsConfig">
|
||||||
select
|
select
|
||||||
id,
|
id,
|
||||||
tums_url as tumsUrl,
|
tums_url as tumsUrl,
|
||||||
|
|
@ -1,10 +1,10 @@
|
||||||
package com.nu.modules.iot.tplink.service;
|
package com.nu.modules.iot.tplink.camerainfo.service;
|
||||||
|
|
||||||
import cn.hutool.json.JSONObject;
|
import cn.hutool.json.JSONObject;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
import com.nu.modules.iot.tplink.entity.AppCameraInfo;
|
import com.nu.modules.iot.tplink.camerainfo.entity.AppCameraInfo;
|
||||||
import org.jeecg.common.api.vo.Result;
|
import org.jeecg.common.api.vo.Result;
|
||||||
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
package com.nu.modules.iot.tplink.service;
|
package com.nu.modules.iot.tplink.camerainfo.service;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
import com.nu.modules.iot.tplink.entity.AppErrorCode;
|
import com.nu.modules.iot.tplink.camerainfo.entity.AppErrorCode;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Description: 护理单元-物联管理-错误码
|
* @Description: 护理单元-物联管理-错误码
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
package com.nu.modules.iot.tplink.service;
|
package com.nu.modules.iot.tplink.camerainfo.service;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
import com.nu.modules.iot.tplink.entity.AppTumsConfig;
|
import com.nu.modules.iot.tplink.camerainfo.entity.AppTumsConfig;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Description: 护理单元-物联管理-图门系统配置
|
* @Description: 护理单元-物联管理-图门系统配置
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
package com.nu.modules.iot.tplink.service.impl;
|
package com.nu.modules.iot.tplink.camerainfo.service.impl;
|
||||||
|
|
||||||
import cn.hutool.json.JSONArray;
|
import cn.hutool.json.JSONArray;
|
||||||
import cn.hutool.json.JSONObject;
|
import cn.hutool.json.JSONObject;
|
||||||
|
|
@ -6,19 +6,17 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
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.nu.modules.iot.tplink.entity.AppCameraInfo;
|
import com.nu.modules.iot.tplink.camerainfo.entity.AppCameraInfo;
|
||||||
import com.nu.modules.iot.tplink.entity.AppErrorCode;
|
import com.nu.modules.iot.tplink.camerainfo.entity.AppErrorCode;
|
||||||
import com.nu.modules.iot.tplink.entity.AppTumsConfig;
|
import com.nu.modules.iot.tplink.camerainfo.mapper.AppCameraInfoMapper;
|
||||||
import com.nu.modules.iot.tplink.mapper.AppCameraInfoMapper;
|
import com.nu.modules.iot.tplink.camerainfo.entity.AppTumsConfig;
|
||||||
import com.nu.modules.iot.tplink.mapper.AppTumsConfigMapper;
|
import com.nu.modules.iot.tplink.camerainfo.mapper.AppTumsConfigMapper;
|
||||||
import com.nu.modules.iot.tplink.service.IAppCameraInfoService;
|
import com.nu.modules.iot.tplink.camerainfo.service.IAppCameraInfoService;
|
||||||
import com.nu.modules.iot.tplink.service.IAppErrorCodeService;
|
import com.nu.modules.iot.tplink.camerainfo.service.IAppErrorCodeService;
|
||||||
import com.nu.modules.iot.tplink.utils.AppTumsApi;
|
import com.nu.modules.iot.tplink.camerainfo.utils.AppTumsApi;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.commons.compress.utils.Lists;
|
import org.apache.commons.compress.utils.Lists;
|
||||||
import org.apache.shiro.SecurityUtils;
|
|
||||||
import org.jeecg.common.api.vo.Result;
|
import org.jeecg.common.api.vo.Result;
|
||||||
import org.jeecg.common.system.vo.LoginUser;
|
|
||||||
import org.jeecg.common.util.DateUtils;
|
import org.jeecg.common.util.DateUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
@ -1,9 +1,9 @@
|
||||||
package com.nu.modules.iot.tplink.service.impl;
|
package com.nu.modules.iot.tplink.camerainfo.service.impl;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import com.nu.modules.iot.tplink.entity.AppErrorCode;
|
import com.nu.modules.iot.tplink.camerainfo.entity.AppErrorCode;
|
||||||
import com.nu.modules.iot.tplink.mapper.AppErrorCodeMapper;
|
import com.nu.modules.iot.tplink.camerainfo.mapper.AppErrorCodeMapper;
|
||||||
import com.nu.modules.iot.tplink.service.IAppErrorCodeService;
|
import com.nu.modules.iot.tplink.camerainfo.service.IAppErrorCodeService;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -1,9 +1,9 @@
|
||||||
package com.nu.modules.iot.tplink.service.impl;
|
package com.nu.modules.iot.tplink.camerainfo.service.impl;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import com.nu.modules.iot.tplink.entity.AppTumsConfig;
|
import com.nu.modules.iot.tplink.camerainfo.entity.AppTumsConfig;
|
||||||
import com.nu.modules.iot.tplink.mapper.AppTumsConfigMapper;
|
import com.nu.modules.iot.tplink.camerainfo.mapper.AppTumsConfigMapper;
|
||||||
import com.nu.modules.iot.tplink.service.IAppTumsConfigService;
|
import com.nu.modules.iot.tplink.camerainfo.service.IAppTumsConfigService;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -1,21 +1,19 @@
|
||||||
package com.nu.modules.iot.tplink.utils;
|
package com.nu.modules.iot.tplink.camerainfo.utils;
|
||||||
|
|
||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import com.nu.modules.iot.tplink.entity.AppProjectInfo;
|
import com.nu.modules.iot.tplink.camerainfo.entity.AppProjectInfo;
|
||||||
import com.nu.modules.iot.tplink.entity.AppRegionInfo;
|
import com.nu.modules.iot.tplink.camerainfo.entity.AppRegionInfo;
|
||||||
import com.nu.modules.iot.tplink.entity.AppTumsConfig;
|
import com.nu.modules.iot.tplink.camerainfo.enums.AppApiEnum;
|
||||||
import com.nu.modules.iot.tplink.enums.AppApiEnum;
|
import com.nu.modules.iot.tplink.camerainfo.mapper.AppProjectInfoMapper;
|
||||||
import com.nu.modules.iot.tplink.mapper.AppProjectInfoMapper;
|
import com.nu.modules.iot.tplink.camerainfo.mapper.AppRegionInfoMapper;
|
||||||
import com.nu.modules.iot.tplink.mapper.AppRegionInfoMapper;
|
import com.nu.modules.iot.tplink.camerainfo.mapper.AppTumsConfigMapper;
|
||||||
import com.nu.modules.iot.tplink.mapper.AppTumsConfigMapper;
|
import com.nu.modules.iot.tplink.camerainfo.entity.AppTumsConfig;
|
||||||
import com.nu.modules.sysconfig.ISysConfigApi;
|
import com.nu.modules.sysconfig.ISysConfigApi;
|
||||||
import com.nu.utils.HttpRequestUtil;
|
import com.nu.utils.HttpRequestUtil;
|
||||||
import com.tplink.ignite.libs.developersdk.api.TumsClient;
|
import com.tplink.ignite.libs.developersdk.api.TumsClient;
|
||||||
import com.tplink.ignite.libs.developersdk.vo.ResultVO;
|
import com.tplink.ignite.libs.developersdk.vo.ResultVO;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.shiro.SecurityUtils;
|
|
||||||
import org.jeecg.common.system.vo.LoginUser;
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
|
@ -0,0 +1,29 @@
|
||||||
|
package com.nu.modules.iot.tplink.storage.api;
|
||||||
|
|
||||||
|
import com.nu.modules.camerainfo.api.TplinkVideoStorageApi;
|
||||||
|
import org.jeecg.common.api.vo.Result;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/api/tplink/videoStorage")
|
||||||
|
public class TplinkVideoStoApi {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private TplinkVideoStorageApi storageApi;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* tplink缓存视频存储
|
||||||
|
*
|
||||||
|
* @param pic 封面图片
|
||||||
|
* @param video 视频缓存
|
||||||
|
* @param url 存储路径
|
||||||
|
*/
|
||||||
|
@PostMapping("/tplinkVideoStorage")
|
||||||
|
public Result<?> tplinkVideoStorage(@RequestPart("pic") MultipartFile pic, @RequestPart("video") MultipartFile video, @RequestParam("url") String url) {
|
||||||
|
storageApi.tplinkVideoStorage(pic, video, url);
|
||||||
|
return Result.ok();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -83,6 +83,7 @@ public class ShiroConfig {
|
||||||
}
|
}
|
||||||
|
|
||||||
// 配置不会被拦截的链接 顺序判断
|
// 配置不会被拦截的链接 顺序判断
|
||||||
|
filterChainDefinitionMap.put("/api/tplink/videoStorage/**", "anon"); //视频缓存存储接口
|
||||||
filterChainDefinitionMap.put("/iot/tq/api/electricityMeter/**", "anon"); //电表回调
|
filterChainDefinitionMap.put("/iot/tq/api/electricityMeter/**", "anon"); //电表回调
|
||||||
filterChainDefinitionMap.put("/iot/tq/api/waterMeter/**", "anon"); //水表回调
|
filterChainDefinitionMap.put("/iot/tq/api/waterMeter/**", "anon"); //水表回调
|
||||||
filterChainDefinitionMap.put("/sys/cas/client/validateLogin", "anon"); //cas验证登录
|
filterChainDefinitionMap.put("/sys/cas/client/validateLogin", "anon"); //cas验证登录
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,7 @@
|
||||||
|
package com.nu.modules.camerainfo.api;
|
||||||
|
|
||||||
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
|
public interface TplinkVideoStorageApi {
|
||||||
|
void tplinkVideoStorage(MultipartFile pic, MultipartFile video, String url);
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,179 @@
|
||||||
|
package com.nu.modules.tplink.storage.controller;
|
||||||
|
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.io.UnsupportedEncodingException;
|
||||||
|
import java.net.URLDecoder;
|
||||||
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
import org.jeecg.common.api.vo.Result;
|
||||||
|
import org.jeecg.common.system.query.QueryGenerator;
|
||||||
|
import org.jeecg.common.system.query.QueryRuleEnum;
|
||||||
|
import org.jeecg.common.util.oConvertUtils;
|
||||||
|
import com.nu.modules.tplink.storage.entity.TplinkVideoStorage;
|
||||||
|
import com.nu.modules.tplink.storage.service.ITplinkVideoStorageService;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
|
||||||
|
import org.jeecgframework.poi.excel.ExcelImportUtil;
|
||||||
|
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
|
||||||
|
import org.jeecgframework.poi.excel.entity.ExportParams;
|
||||||
|
import org.jeecgframework.poi.excel.entity.ImportParams;
|
||||||
|
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
|
||||||
|
import org.jeecg.common.system.base.controller.JeecgController;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
import org.springframework.web.multipart.MultipartHttpServletRequest;
|
||||||
|
import org.springframework.web.servlet.ModelAndView;
|
||||||
|
import com.alibaba.fastjson.JSON;
|
||||||
|
import io.swagger.annotations.Api;
|
||||||
|
import io.swagger.annotations.ApiOperation;
|
||||||
|
import org.jeecg.common.aspect.annotation.AutoLog;
|
||||||
|
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description: 护理单元-物联管理-TPLINK图门系统视频存储
|
||||||
|
* @Author: jeecg-boot
|
||||||
|
* @Date: 2025-09-01
|
||||||
|
* @Version: V1.0
|
||||||
|
*/
|
||||||
|
@Api(tags="护理单元-物联管理-TPLINK图门系统视频存储")
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/iot/tplink/videoStorage")
|
||||||
|
@Slf4j
|
||||||
|
public class TplinkVideoStorageController extends JeecgController<TplinkVideoStorage, ITplinkVideoStorageService> {
|
||||||
|
@Autowired
|
||||||
|
private ITplinkVideoStorageService tplinkVideoStorageService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 分页列表查询
|
||||||
|
*
|
||||||
|
* @param tplinkVideoStorage
|
||||||
|
* @param pageNo
|
||||||
|
* @param pageSize
|
||||||
|
* @param req
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
//@AutoLog(value = "护理单元-物联管理-TPLINK图门系统视频存储-分页列表查询")
|
||||||
|
@ApiOperation(value="护理单元-物联管理-TPLINK图门系统视频存储-分页列表查询", notes="护理单元-物联管理-TPLINK图门系统视频存储-分页列表查询")
|
||||||
|
@GetMapping(value = "/list")
|
||||||
|
public Result<IPage<TplinkVideoStorage>> queryPageList(TplinkVideoStorage tplinkVideoStorage,
|
||||||
|
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
|
||||||
|
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
|
||||||
|
HttpServletRequest req) {
|
||||||
|
QueryWrapper<TplinkVideoStorage> queryWrapper = QueryGenerator.initQueryWrapper(tplinkVideoStorage, req.getParameterMap());
|
||||||
|
Page<TplinkVideoStorage> page = new Page<TplinkVideoStorage>(pageNo, pageSize);
|
||||||
|
IPage<TplinkVideoStorage> pageList = tplinkVideoStorageService.page(page, queryWrapper);
|
||||||
|
return Result.OK(pageList);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 添加
|
||||||
|
*
|
||||||
|
* @param tplinkVideoStorage
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@AutoLog(value = "护理单元-物联管理-TPLINK图门系统视频存储-添加")
|
||||||
|
@ApiOperation(value="护理单元-物联管理-TPLINK图门系统视频存储-添加", notes="护理单元-物联管理-TPLINK图门系统视频存储-添加")
|
||||||
|
@PostMapping(value = "/add")
|
||||||
|
public Result<String> add(@RequestBody TplinkVideoStorage tplinkVideoStorage) {
|
||||||
|
tplinkVideoStorageService.save(tplinkVideoStorage);
|
||||||
|
return Result.OK("添加成功!");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 编辑
|
||||||
|
*
|
||||||
|
* @param tplinkVideoStorage
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@AutoLog(value = "护理单元-物联管理-TPLINK图门系统视频存储-编辑")
|
||||||
|
@ApiOperation(value="护理单元-物联管理-TPLINK图门系统视频存储-编辑", notes="护理单元-物联管理-TPLINK图门系统视频存储-编辑")
|
||||||
|
@RequiresPermissions("tplinkvideostorage:nu_iot_tplink_video_storage:edit")
|
||||||
|
@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
|
||||||
|
public Result<String> edit(@RequestBody TplinkVideoStorage tplinkVideoStorage) {
|
||||||
|
tplinkVideoStorageService.updateById(tplinkVideoStorage);
|
||||||
|
return Result.OK("编辑成功!");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过id删除
|
||||||
|
*
|
||||||
|
* @param id
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@AutoLog(value = "护理单元-物联管理-TPLINK图门系统视频存储-通过id删除")
|
||||||
|
@ApiOperation(value="护理单元-物联管理-TPLINK图门系统视频存储-通过id删除", notes="护理单元-物联管理-TPLINK图门系统视频存储-通过id删除")
|
||||||
|
@RequiresPermissions("tplinkvideostorage:nu_iot_tplink_video_storage:delete")
|
||||||
|
@DeleteMapping(value = "/delete")
|
||||||
|
public Result<String> delete(@RequestParam(name="id",required=true) String id) {
|
||||||
|
tplinkVideoStorageService.removeById(id);
|
||||||
|
return Result.OK("删除成功!");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量删除
|
||||||
|
*
|
||||||
|
* @param ids
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@AutoLog(value = "护理单元-物联管理-TPLINK图门系统视频存储-批量删除")
|
||||||
|
@ApiOperation(value="护理单元-物联管理-TPLINK图门系统视频存储-批量删除", notes="护理单元-物联管理-TPLINK图门系统视频存储-批量删除")
|
||||||
|
@RequiresPermissions("tplinkvideostorage:nu_iot_tplink_video_storage:deleteBatch")
|
||||||
|
@DeleteMapping(value = "/deleteBatch")
|
||||||
|
public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
|
||||||
|
this.tplinkVideoStorageService.removeByIds(Arrays.asList(ids.split(",")));
|
||||||
|
return Result.OK("批量删除成功!");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过id查询
|
||||||
|
*
|
||||||
|
* @param id
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
//@AutoLog(value = "护理单元-物联管理-TPLINK图门系统视频存储-通过id查询")
|
||||||
|
@ApiOperation(value="护理单元-物联管理-TPLINK图门系统视频存储-通过id查询", notes="护理单元-物联管理-TPLINK图门系统视频存储-通过id查询")
|
||||||
|
@GetMapping(value = "/queryById")
|
||||||
|
public Result<TplinkVideoStorage> queryById(@RequestParam(name="id",required=true) String id) {
|
||||||
|
TplinkVideoStorage tplinkVideoStorage = tplinkVideoStorageService.getById(id);
|
||||||
|
if(tplinkVideoStorage==null) {
|
||||||
|
return Result.error("未找到对应数据");
|
||||||
|
}
|
||||||
|
return Result.OK(tplinkVideoStorage);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 导出excel
|
||||||
|
*
|
||||||
|
* @param request
|
||||||
|
* @param tplinkVideoStorage
|
||||||
|
*/
|
||||||
|
@RequiresPermissions("tplinkvideostorage:nu_iot_tplink_video_storage:exportXls")
|
||||||
|
@RequestMapping(value = "/exportXls")
|
||||||
|
public ModelAndView exportXls(HttpServletRequest request, TplinkVideoStorage tplinkVideoStorage) {
|
||||||
|
return super.exportXls(request, tplinkVideoStorage, TplinkVideoStorage.class, "护理单元-物联管理-TPLINK图门系统视频存储");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过excel导入数据
|
||||||
|
*
|
||||||
|
* @param request
|
||||||
|
* @param response
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@RequiresPermissions("tplinkvideostorage:nu_iot_tplink_video_storage:importExcel")
|
||||||
|
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
|
||||||
|
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
|
||||||
|
return super.importExcel(request, response, TplinkVideoStorage.class);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,54 @@
|
||||||
|
package com.nu.modules.tplink.storage.entity;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.io.UnsupportedEncodingException;
|
||||||
|
import java.util.Date;
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||||
|
import org.jeecg.common.constant.ProvinceCityArea;
|
||||||
|
import org.jeecg.common.util.SpringContextUtils;
|
||||||
|
import lombok.Data;
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
import org.jeecgframework.poi.excel.annotation.Excel;
|
||||||
|
import org.jeecg.common.aspect.annotation.Dict;
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.EqualsAndHashCode;
|
||||||
|
import lombok.experimental.Accessors;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description: 护理单元-物联管理-TPLINK图门系统视频存储
|
||||||
|
* @Author: jeecg-boot
|
||||||
|
* @Date: 2025-09-01
|
||||||
|
* @Version: V1.0
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
@TableName("nu_iot_tplink_video_storage")
|
||||||
|
@Accessors(chain = true)
|
||||||
|
@EqualsAndHashCode(callSuper = false)
|
||||||
|
@ApiModel(value="nu_iot_tplink_video_storage对象", description="护理单元-物联管理-TPLINK图门系统视频存储")
|
||||||
|
public class TplinkVideoStorage implements Serializable {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
/**id*/
|
||||||
|
@TableId(type = IdType.ASSIGN_ID)
|
||||||
|
@ApiModelProperty(value = "id")
|
||||||
|
private java.lang.String id;
|
||||||
|
/**封面*/
|
||||||
|
@Excel(name = "封面", width = 15)
|
||||||
|
@ApiModelProperty(value = "封面")
|
||||||
|
private java.lang.String pic;
|
||||||
|
/**视频存储路径*/
|
||||||
|
@Excel(name = "视频存储路径", width = 15)
|
||||||
|
@ApiModelProperty(value = "视频存储路径")
|
||||||
|
private java.lang.String videoUrl;
|
||||||
|
/**存储时间*/
|
||||||
|
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
|
||||||
|
@ApiModelProperty(value = "存储时间")
|
||||||
|
private java.util.Date createTime;
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,17 @@
|
||||||
|
package com.nu.modules.tplink.storage.mapper;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
import com.nu.modules.tplink.storage.entity.TplinkVideoStorage;
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description: 护理单元-物联管理-TPLINK图门系统视频存储
|
||||||
|
* @Author: jeecg-boot
|
||||||
|
* @Date: 2025-09-01
|
||||||
|
* @Version: V1.0
|
||||||
|
*/
|
||||||
|
public interface TplinkVideoStorageMapper extends BaseMapper<TplinkVideoStorage> {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -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.nu.modules.tplink.storage.mapper.TplinkVideoStorageMapper">
|
||||||
|
|
||||||
|
</mapper>
|
||||||
|
|
@ -0,0 +1,14 @@
|
||||||
|
package com.nu.modules.tplink.storage.service;
|
||||||
|
|
||||||
|
import com.nu.modules.tplink.storage.entity.TplinkVideoStorage;
|
||||||
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description: 护理单元-物联管理-TPLINK图门系统视频存储
|
||||||
|
* @Author: jeecg-boot
|
||||||
|
* @Date: 2025-09-01
|
||||||
|
* @Version: V1.0
|
||||||
|
*/
|
||||||
|
public interface ITplinkVideoStorageService extends IService<TplinkVideoStorage> {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,67 @@
|
||||||
|
package com.nu.modules.tplink.storage.service.impl;
|
||||||
|
|
||||||
|
import cn.hutool.core.io.FileUtil;
|
||||||
|
import cn.hutool.core.util.IdUtil;
|
||||||
|
import com.nu.modules.camerainfo.api.TplinkVideoStorageApi;
|
||||||
|
import com.nu.modules.tplink.storage.entity.TplinkVideoStorage;
|
||||||
|
import com.nu.modules.tplink.storage.mapper.TplinkVideoStorageMapper;
|
||||||
|
import com.nu.modules.tplink.storage.service.ITplinkVideoStorageService;
|
||||||
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.nio.file.Paths;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description: 护理单元-物联管理-TPLINK图门系统视频存储
|
||||||
|
* @Author: jeecg-boot
|
||||||
|
* @Date: 2025-09-01
|
||||||
|
* @Version: V1.0
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class TplinkVideoStorageServiceImpl extends ServiceImpl<TplinkVideoStorageMapper, TplinkVideoStorage> implements ITplinkVideoStorageService, TplinkVideoStorageApi {
|
||||||
|
|
||||||
|
@Value("${jeecg.path.upload}")
|
||||||
|
private String upLoadPath;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void tplinkVideoStorage(MultipartFile pic, MultipartFile video, String url) {
|
||||||
|
|
||||||
|
// 1. 目录准备
|
||||||
|
String baseurl = "";
|
||||||
|
if (System.getProperty("os.name").toLowerCase().contains("win")) {
|
||||||
|
baseurl = Paths.get(System.getProperty("user.dir")).getRoot().toString().replaceAll("[/\\\\]+$", "");
|
||||||
|
}
|
||||||
|
String dirPath = baseurl + upLoadPath + File.separator + url;
|
||||||
|
FileUtil.mkdir(dirPath);
|
||||||
|
|
||||||
|
// 2. 生成不重复文件名
|
||||||
|
String picExt = FileUtil.extName(pic.getOriginalFilename());
|
||||||
|
String picName = IdUtil.fastSimpleUUID() + "." + picExt;
|
||||||
|
|
||||||
|
String videoExt = FileUtil.extName(video.getOriginalFilename());
|
||||||
|
String videoName = IdUtil.fastSimpleUUID() + "." + videoExt;
|
||||||
|
|
||||||
|
// 3. 保存文件
|
||||||
|
File picFile = new File(dirPath, picName);
|
||||||
|
File videoFile = new File(dirPath, videoName);
|
||||||
|
try {
|
||||||
|
pic.transferTo(picFile);
|
||||||
|
video.transferTo(videoFile);
|
||||||
|
} catch (IOException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
|
||||||
|
String picAccessUrl = url.replace("\\", "/") + picName;
|
||||||
|
String videoAccessUrl = url.replace("\\", "/") + videoName;
|
||||||
|
|
||||||
|
TplinkVideoStorage tplinkVideoStorage = new TplinkVideoStorage();
|
||||||
|
tplinkVideoStorage.setPic(picAccessUrl);
|
||||||
|
tplinkVideoStorage.setVideoUrl(videoAccessUrl);
|
||||||
|
baseMapper.insert(tplinkVideoStorage);
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue