czt
2026-01-04 b93f4d2f7c14b6833c26678b57d76bb2baff79ff
增加流媒体配置
已添加5个文件
已修改1个文件
995 ■■■■■ 文件已修改
fzzy-igdss-core/src/main/java/com/fzzy/igds/domain/CameraMedia.java 186 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-core/src/main/java/com/fzzy/igds/mapper/CameraMediaMapper.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/CameraMediaService.java 91 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-view/src/main/java/com/fzzy/igds/CameraMedia.view.xml 621 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-view/src/main/java/com/fzzy/igds/CameraMediaPR.java 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-view/src/main/java/com/fzzy/igds/ConfByDept.view.xml 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-core/src/main/java/com/fzzy/igds/domain/CameraMedia.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,186 @@
package com.fzzy.igds.domain;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
/**
 * @Description è§†é¢‘流媒体配置
 * @Author CZT
 * @Date 2026/01/04 14:48
 */
@Data
@Entity
@Table(name = "d_camera_media")
@TableName("d_camera_media")
@EqualsAndHashCode(callSuper = false)
public class CameraMedia extends BizBaseEntity implements Serializable {
    @Id
    @Column(name = "id", columnDefinition = "varchar(40) COMMENT '主键'")
    @TableField("id")
    private String id;
    @Column(name = "dept_id", columnDefinition = "varchar(40) COMMENT '所属库区'")
    @TableField("dept_id")
    private String deptId;
    //------------移动千里眼流媒体配置信息------------
    @Column(name = "yd_id", columnDefinition = "varchar(40) COMMENT '服务IP'")
    @TableField("yd_id")
    private String ydIp;
    @Column(name = "yd_port", columnDefinition = "int COMMENT '服务端口'")
    @TableField("yd_port")
    private Integer ydPort;
    @Column(name = "yd_login", columnDefinition = "varchar(40) COMMENT '登录用户'")
    @TableField("yd_login")
    private String ydLogin;
    @Column(name = "yd_pwd", columnDefinition = "varchar(40) COMMENT '登录密码'")
    @TableField("yd_pwd")
    private String ydPwd;
    @Column(name = "yd_app_key", columnDefinition = "varchar(40) COMMENT 'APPID'")
    @TableField("yd_app_key")
    private String ydAppKey;
    @Column(name = "yd_app_secret", columnDefinition = "varchar(100) COMMENT '秘钥'")
    @TableField("yd_app_secret")
    private String ydAppSecret;
    @Column(name = "yd_rsa", columnDefinition = "varchar(1000) COMMENT '加密密钥'")
    @TableField("yd_rsa")
    private String ydRsa;
    @Column(name = "yd_store_id", columnDefinition = "varchar(40) COMMENT '节点编码'")
    @TableField("yd_store_id")
    private String ydStoreId;
    //------------GB28181流媒体配置信息------------
    @Column(name = "gb_ip", columnDefinition = "varchar(40) COMMENT '服务IP'")
    @TableField("gb_ip")
    private String gbIp;
    @Column(name = "gb_port", columnDefinition = "int COMMENT '服务端口'")
    @TableField("gb_port")
    private Integer gbPort;
    @Column(name = "gb_login", columnDefinition = "varchar(40) COMMENT '登录用户'")
    @TableField("gb_login")
    private String gbLogin;
    @Column(name = "gb_pwd", columnDefinition = "varchar(40) COMMENT '登录密码'")
    @TableField("gb_pwd")
    private String gbPwd;
    @Column(name = "gb_app_key", columnDefinition = "varchar(40) COMMENT 'APPID'")
    @TableField("gb_app_key")
    private String gbAppKey;
    @Column(name = "gb_app_secret", columnDefinition = "varchar(100) COMMENT '密钥'")
    @TableField("gb_app_secret")
    private String gbAppSecret;
    //------------海康流媒体配置信息------------
    @Column(name = "hik_ip", columnDefinition = "varchar(40) COMMENT '服务IP'")
    @TableField("hik_ip")
    private String hikIp;
    @Column(name = "hik_port", columnDefinition = "int COMMENT '服务端口'")
    @TableField("hik_port")
    private Integer hikPort;
    @Column(name = "hik_login", columnDefinition = "varchar(40) COMMENT '登录用户'")
    @TableField("hik_login")
    private String hikLogin;
    @Column(name = "hik_pwd", columnDefinition = "varchar(40) COMMENT '登录密码'")
    @TableField("hik_pwd")
    private String hikPwd;
    @Column(name = "hik_app_key", columnDefinition = "varchar(40) COMMENT 'APPID'")
    @TableField("hik_app_key")
    private String hikAppKey;
    @Column(name = "hik_app_secret", columnDefinition = "varchar(100) COMMENT '密钥'")
    @TableField("hik_app_secret")
    private String hikAppSecret;
    @Column(name = "hik_path", columnDefinition = "varchar(100) COMMENT '路径配置'")
    @TableField("hik_path")
    private String hikPath;
    @Column(name = "hik_wan_ip", columnDefinition = "varchar(40) COMMENT '映射IP'")
    @TableField("hik_wan_ip")
    private String hikWanIp;
    @Column(name = "hik_wan_port", columnDefinition = "int COMMENT '映射端口'")
    @TableField("hik_wan_port")
    private Integer hikWanPort;
    //------------大华流媒体配置信息------------
    @Column(name = "dh_ip", columnDefinition = "varchar(40) COMMENT '服务IP'")
    @TableField("dh_ip")
    private String dhIp;
    @Column(name = "dh_port", columnDefinition = "int COMMENT '服务端口'")
    @TableField("dh_port")
    private Integer dhPort;
    @Column(name = "dh_login", columnDefinition = "varchar(40) COMMENT '登录用户'")
    @TableField("dh_login")
    private String dhLogin;
    @Column(name = "dh_pwd", columnDefinition = "varchar(40) COMMENT '登录密码'")
    @TableField("dh_pwd")
    private String dhPwd;
    @Column(name = "dh_app_key", columnDefinition = "varchar(40) COMMENT 'APPID'")
    @TableField("dh_app_key")
    private String dhAppKey;
    @Column(name = "dh_app_secret", columnDefinition = "varchar(100) COMMENT '密钥'")
    @TableField("dh_app_secret")
    private String dhAppSecret;
    @Column(name = "dh_wan_ip", columnDefinition = "varchar(40) COMMENT '映射IP'")
    @TableField("dh_wan_ip")
    private String dhWanIp;
    @Column(name = "dh_wan_port", columnDefinition = "int COMMENT '映射端口'")
    @TableField("dh_wan_port")
    private Integer dhWanPort;
    //------------本地WEBRTC配置------------
    @Column(name = "rtc_ip", columnDefinition = "varchar(40) COMMENT '服务IP'")
    @TableField("rtc_ip")
    private String rtcIp;
    @Column(name = "rtc_port", columnDefinition = "int COMMENT '服务端口'")
    @TableField("rtc_port")
    private Integer rtcPort;
    @Column(name = "rtc_login", columnDefinition = "varchar(40) COMMENT '登录用户'")
    @TableField("rtc_login")
    private String rtcLogin;
    @Column(name = "rtc_pwd", columnDefinition = "varchar(40) COMMENT '登录密码'")
    @TableField("rtc_pwd")
    private String rtcPwd;
    //------------其他配置信息------------
    @Column(name = "remark", columnDefinition = "varchar(100) COMMENT '备注说明'")
    @TableField("remark")
    private String remark;
}
fzzy-igdss-core/src/main/java/com/fzzy/igds/mapper/CameraMediaMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,15 @@
package com.fzzy.igds.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.fzzy.igds.domain.CameraMedia;
import org.apache.ibatis.annotations.Mapper;
/**
 * @Description
 * @Author CZT
 * @Date 2026/01/04 15:17
 */
@Mapper
public interface CameraMediaMapper extends BaseMapper<CameraMedia> {
}
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/CameraMediaService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,91 @@
package com.fzzy.igds.service;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.fzzy.igds.domain.CameraMedia;
import com.fzzy.igds.mapper.CameraMediaMapper;
import com.fzzy.igds.utils.ContextUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
/**
 * @Description
 * @Author CZT
 * @Date 2026/01/04 15:17
 */
@Slf4j
@Service
public class CameraMediaService {
    @Resource
    private CameraMediaMapper mapper;
    /**
     * åˆ—表查询
     * @return
     */
    public List<CameraMedia> listAll() {
        QueryWrapper<CameraMedia> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("company_id", ContextUtil.getCompanyId());
        return mapper.selectList(queryWrapper);
    }
    /**
     * æ ¹æ®åˆ†åº“ID获取当前配置信息
     * @param deptId
     * @return
     */
    public CameraMedia getByDeptId(String deptId, String companyId) {
        if (null == companyId) companyId = ContextUtil.getCompanyId();
        if (null == deptId) return null;
        QueryWrapper<CameraMedia> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("company_id_", companyId);
        queryWrapper.eq("dept_id_", deptId);
        return mapper.selectOne(queryWrapper);
    }
    /**
     * æ•°æ®æ›´æ–°æˆ–新增
     * @param data
     */
    public void saveData(CameraMedia data) {
        data.setUpdateBy(ContextUtil.getLoginUserName());
        data.setUpdateTime(new Date());
        if (StringUtils.isEmpty(data.getId())) {
            data.setId(ContextUtil.generateId());
            data.setCompanyId(ContextUtil.getCompanyId());
            data.setCreateBy(ContextUtil.getLoginUserName());
            data.setCreateTime(new Date());
            mapper.insert(data);
        } else {
            mapper.updateById(data);
        }
    }
    /**
     * æ•°æ®åˆ é™¤
     * @param data
     * @return
     */
    public String delData(CameraMedia data) {
        if (StringUtils.isEmpty(data.getId())) return null;
        return mapper.deleteById(data.getId()) > 0 ? null : "删除失败";
    }
}
fzzy-igdss-view/src/main/java/com/fzzy/igds/CameraMedia.view.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,621 @@
<?xml version="1.0" encoding="UTF-8"?>
<ViewConfig>
  <Arguments/>
  <Context/>
  <Model>
    <DataType name="dtMain">
      <Property name="creationType">com.fzzy.igds.domain.CameraMedia</Property>
      <PropertyDef name="id">
        <Property></Property>
        <Property name="label">ID</Property>
      </PropertyDef>
      <PropertyDef name="companyId">
        <Property></Property>
        <Property name="label">组织编码</Property>
      </PropertyDef>
      <PropertyDef name="deptId">
        <Property></Property>
        <Property name="label">所属分库</Property>
        <Property name="mapping">
          <Property name="mapValues">${dorado.getDataProvider(&quot;deptPR#getAllData&quot;).getResult()}</Property>
          <Property name="keyProperty">id</Property>
          <Property name="valueProperty">kqmc</Property>
        </Property>
        <Property name="required">true</Property>
      </PropertyDef>
      <PropertyDef name="ydIp">
        <Property></Property>
        <Property name="label">服务IP</Property>
      </PropertyDef>
      <PropertyDef name="ydPort">
        <Property name="dataType">Integer</Property>
        <Property name="label">服务端口</Property>
      </PropertyDef>
      <PropertyDef name="ydLogin">
        <Property></Property>
        <Property name="label">登录账号</Property>
      </PropertyDef>
      <PropertyDef name="ydPwd">
        <Property></Property>
        <Property name="label">登录密码</Property>
      </PropertyDef>
      <PropertyDef name="ydAppKey">
        <Property></Property>
        <Property name="label">APPID</Property>
      </PropertyDef>
      <PropertyDef name="ydAppSecret">
        <Property></Property>
        <Property name="label">APP秘钥</Property>
      </PropertyDef>
      <PropertyDef name="ydRsa">
        <Property></Property>
        <Property name="label">加密密钥</Property>
      </PropertyDef>
      <PropertyDef name="ydStoreId">
        <Property></Property>
        <Property name="label">节点编码</Property>
      </PropertyDef>
      <PropertyDef name="gbIp">
        <Property></Property>
        <Property name="label">服务IP</Property>
      </PropertyDef>
      <PropertyDef name="gbPort">
        <Property name="dataType">Integer</Property>
        <Property name="label">服务端口</Property>
      </PropertyDef>
      <PropertyDef name="gbLogin">
        <Property></Property>
        <Property name="label">登录用户</Property>
      </PropertyDef>
      <PropertyDef name="gbPwd">
        <Property></Property>
        <Property name="label">登录密码</Property>
      </PropertyDef>
      <PropertyDef name="gbAppKey">
        <Property></Property>
        <Property name="label">APPID</Property>
      </PropertyDef>
      <PropertyDef name="gbAppSecret">
        <Property></Property>
        <Property name="label">APP密钥</Property>
      </PropertyDef>
      <PropertyDef name="hikIp">
        <Property></Property>
        <Property name="label">服务IP</Property>
      </PropertyDef>
      <PropertyDef name="hikPort">
        <Property name="dataType">Integer</Property>
        <Property name="label">服务端口</Property>
      </PropertyDef>
      <PropertyDef name="hikLogin">
        <Property></Property>
        <Property name="label">登录用户</Property>
      </PropertyDef>
      <PropertyDef name="hikPwd">
        <Property></Property>
        <Property name="label">登录密码</Property>
      </PropertyDef>
      <PropertyDef name="hikAppKey">
        <Property></Property>
        <Property name="label">APPID</Property>
      </PropertyDef>
      <PropertyDef name="hikAppSecret">
        <Property></Property>
        <Property name="label">APP密钥</Property>
      </PropertyDef>
      <PropertyDef name="dhIp">
        <Property></Property>
        <Property name="label">服务IP</Property>
      </PropertyDef>
      <PropertyDef name="dhPort">
        <Property name="dataType">Integer</Property>
        <Property name="label">服务端口</Property>
      </PropertyDef>
      <PropertyDef name="dhLogin">
        <Property></Property>
        <Property name="label">登录用户</Property>
      </PropertyDef>
      <PropertyDef name="dhPwd">
        <Property></Property>
        <Property name="label">登录密码</Property>
      </PropertyDef>
      <PropertyDef name="dhAppKey">
        <Property></Property>
        <Property name="label">APPID</Property>
      </PropertyDef>
      <PropertyDef name="dhAppSecret">
        <Property></Property>
        <Property name="label">APP密钥</Property>
      </PropertyDef>
      <PropertyDef name="rtcIp">
        <Property></Property>
        <Property name="label">服务IP</Property>
      </PropertyDef>
      <PropertyDef name="rtcPort">
        <Property name="dataType">Integer</Property>
        <Property name="label">服务端口</Property>
      </PropertyDef>
      <PropertyDef name="rtcLogin">
        <Property></Property>
        <Property name="label">登录用户</Property>
      </PropertyDef>
      <PropertyDef name="rtcPwd">
        <Property></Property>
        <Property name="label">登录密码</Property>
      </PropertyDef>
      <PropertyDef name="remark">
        <Property></Property>
        <Property name="label">备注信息</Property>
      </PropertyDef>
      <PropertyDef name="createTime">
        <Property name="dataType">DateTime</Property>
        <Property name="label">创建时间</Property>
        <Property name="readOnly">true</Property>
      </PropertyDef>
      <PropertyDef name="createBy">
        <Property></Property>
        <Property name="label">创建人</Property>
        <Property name="readOnly">true</Property>
      </PropertyDef>
      <PropertyDef name="updateTime">
        <Property name="dataType">DateTime</Property>
        <Property name="label">更新时间</Property>
        <Property name="readOnly">true</Property>
      </PropertyDef>
      <PropertyDef name="updateBy">
        <Property></Property>
        <Property name="label">更新人</Property>
        <Property name="readOnly">true</Property>
      </PropertyDef>
    </DataType>
  </Model>
  <View layout="padding:10">
    <Property name="packages">font-awesome,css-common</Property>
    <Property name="cache">
      <Property name="mode">clientSide</Property>
    </Property>
    <DataSet id="dsMain">
      <Property name="parameter"></Property>
      <Property name="dataType">[dtMain]</Property>
      <Property name="dataProvider">cameraMediaPR#listAll</Property>
    </DataSet>
    <Container>
      <Property name="exClassName">c-data2</Property>
      <Property name="contentOverflow">hidden</Property>
      <ToolBar>
        <ToolBarLabel>
          <Property name="text">菜单栏:</Property>
          <Property name="exClassName">menu-bar-caption</Property>
        </ToolBarLabel>
        <ToolBarButton>
          <ClientEvent name="onClick">view.get(&quot;#dsMain&quot;).insert();&#xD;
view.get(&quot;#dialogMain&quot;).show();</ClientEvent>
          <Property name="caption">新增</Property>
          <Property name="exClassName">btn1</Property>
          <Property name="iconClass">fa fa-plus-circle</Property>
          <Property name="width">80</Property>
        </ToolBarButton>
        <ToolBarButton>
          <ClientEvent name="onClick">var select = view.get(&quot;#dataGridMain&quot;).get(&quot;selection&quot;);&#xD;
if(select){&#xD;
    view.get(&quot;#dialogMain&quot;).show();&#xD;
}else{&#xD;
    $notify(&quot;请选择需要修改的数据……&quot;);&#xD;
}</ClientEvent>
          <Property name="caption">修改</Property>
          <Property name="exClassName">btn2</Property>
          <Property name="iconClass">fa fa-pencil</Property>
          <Property name="width">80</Property>
        </ToolBarButton>
        <ToolBarButton>
          <ClientEvent name="onClick">var select = view.get(&quot;#dataGridMain&quot;).get(&quot;selection&quot;);&#xD;
if (select) {&#xD;
    view.get(&quot;#ajaxDel&quot;).set(&quot;parameter&quot;, select).execute(function(result){&#xD;
        if (result) {&#xD;
            $alert(result);&#xD;
            return;&#xD;
        }&#xD;
        else {&#xD;
            select.remove();&#xD;
        }&#xD;
    });&#xD;
}else{&#xD;
    $notify(&quot;请选择需要删除的数据……&quot;);&#xD;
}</ClientEvent>
          <Property name="caption">删除</Property>
          <Property name="exClassName">btn3</Property>
          <Property name="iconClass">fa fa-minus-circle</Property>
          <Property name="width">80</Property>
        </ToolBarButton>
        <Separator/>
      </ToolBar>
      <DataGrid id="dataGridMain" layoutConstraint="padding:8">
        <ClientEvent name="onDataRowClick">view.get(&quot;#dataGridMain&quot;).set(&quot;selection&quot;,arg.data);</ClientEvent>
        <Property name="dataSet">dsMain</Property>
        <Property name="readOnly">true</Property>
        <Property name="selectionMode">singleRow</Property>
        <RowSelectorColumn/>
        <RowNumColumn/>
        <DataColumn>
          <Property name="property">deptId</Property>
          <Property name="name">deptId</Property>
          <Property name="width">320</Property>
          <Property name="align">center</Property>
        </DataColumn>
        <ColumnGroup>
          <Property name="caption">移动千里眼</Property>
          <DataColumn name="ydStoreId">
            <Property name="property">ydStoreId</Property>
            <Property name="width">250</Property>
            <Property name="align">center</Property>
          </DataColumn>
          <DataColumn name="ydAppKey">
            <Property name="property">ydAppKey</Property>
            <Property name="align">center</Property>
          </DataColumn>
          <DataColumn name="ydAppSecret">
            <Property name="property">ydAppSecret</Property>
            <Property name="align">center</Property>
          </DataColumn>
        </ColumnGroup>
        <ColumnGroup>
          <Property name="caption">WebRtc配置</Property>
          <DataColumn name="rtcIp">
            <Property name="property">rtcIp</Property>
            <Property name="width">120</Property>
            <Property name="align">center</Property>
          </DataColumn>
          <DataColumn name="rtcPort">
            <Property name="property">rtcPort</Property>
            <Property name="width">100</Property>
            <Property name="align">center</Property>
          </DataColumn>
        </ColumnGroup>
        <DataColumn name="remark">
          <Property name="property">remark</Property>
          <Property name="align">center</Property>
        </DataColumn>
        <DataColumn name="updateTime">
          <Property name="property">updateTime</Property>
          <Property name="width">160</Property>
          <Property name="align">center</Property>
        </DataColumn>
      </DataGrid>
    </Container>
    <Dialog id="dialogMain" layout="regionPadding:10">
      <Property name="width">900</Property>
      <Property name="caption">流媒体信息配置</Property>
      <Property name="closeable">false</Property>
      <Property name="height">600</Property>
      <Buttons>
        <Button>
          <ClientEvent name="onClick">view.get(&quot;#updateMain&quot;).execute(function(){&#xD;
    view.get(&quot;#dialogMain&quot;).close();&#xD;
});</ClientEvent>
          <Property name="caption">确定</Property>
          <Property name="iconClass">fa fa-check</Property>
          <Property name="exClassName">btn1</Property>
        </Button>
        <Button>
          <ClientEvent name="onClick">view.get(&quot;#dsMain.data:#&quot;).cancel();&#xD;
self.get(&quot;parent&quot;).hide();</ClientEvent>
          <Property name="caption">取消</Property>
          <Property name="iconClass">fa fa-times</Property>
          <Property name="exClassName">btn3</Property>
        </Button>
      </Buttons>
      <Children>
        <TabControl>
          <ControlTab>
            <Property name="caption">移动千里眼</Property>
            <Property name="iconClass">fa fa-film</Property>
            <Property name="width">150</Property>
            <AutoForm>
              <Property name="dataSet">dsMain</Property>
              <Property name="cols">*,*</Property>
              <Property name="labelAlign">right</Property>
              <Property name="labelSeparator">:</Property>
              <Property name="labelWidth">100</Property>
              <AutoFormElement layoutConstraint="colSpan:2">
                <Property name="name">deptId</Property>
                <Property name="property">deptId</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">ydIp</Property>
                <Property name="property">ydIp</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">ydPort</Property>
                <Property name="property">ydPort</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">ydLogin</Property>
                <Property name="property">ydLogin</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">ydPwd</Property>
                <Property name="property">ydPwd</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">ydAppKey</Property>
                <Property name="property">ydAppKey</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">ydAppSecret</Property>
                <Property name="property">ydAppSecret</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">ydStoreId</Property>
                <Property name="property">ydStoreId</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">updateTime</Property>
                <Property name="property">updateTime</Property>
                <Property name="readOnly">true</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement layoutConstraint="colSpan:3">
                <Property name="name">ydRsa</Property>
                <Property name="property">ydRsa</Property>
                <Property name="editorType">TextArea</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement layoutConstraint="colSpan:2">
                <Property name="name">remark</Property>
                <Property name="property">remark</Property>
                <Property name="editorType">TextArea</Property>
                <Editor/>
              </AutoFormElement>
            </AutoForm>
          </ControlTab>
          <ControlTab>
            <Property name="caption">内网WEBRTC配置</Property>
            <Property name="iconClass">fa fa-film</Property>
            <AutoForm>
              <Property name="dataSet">dsMain</Property>
              <Property name="cols">*,*</Property>
              <Property name="labelAlign">right</Property>
              <Property name="labelSeparator">:</Property>
              <Property name="labelWidth">100</Property>
              <AutoFormElement layoutConstraint="colSpan:2">
                <Property name="name">deptId</Property>
                <Property name="property">deptId</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">rtcIp</Property>
                <Property name="property">rtcIp</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">rtcPort</Property>
                <Property name="property">rtcPort</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">rtcLogin</Property>
                <Property name="property">rtcLogin</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">rtcPwd</Property>
                <Property name="property">rtcPwd</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement layoutConstraint="colSpan:2">
                <Property name="name">remark</Property>
                <Property name="property">remark</Property>
                <Property name="editorType">TextArea</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">updateTime</Property>
                <Property name="property">updateTime</Property>
                <Property name="readOnly">true</Property>
                <Editor/>
              </AutoFormElement>
            </AutoForm>
          </ControlTab>
          <ControlTab>
            <Property name="caption">GB28181流媒体</Property>
            <Property name="iconClass">fa fa-film</Property>
            <Property name="width">150</Property>
            <AutoForm>
              <Property name="dataSet">dsMain</Property>
              <Property name="cols">*,*</Property>
              <Property name="labelAlign">right</Property>
              <Property name="labelSeparator">:</Property>
              <Property name="labelWidth">100</Property>
              <AutoFormElement layoutConstraint="colSpan:2">
                <Property name="name">deptId</Property>
                <Property name="property">deptId</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">gbIp</Property>
                <Property name="property">gbIp</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">gbPort</Property>
                <Property name="property">gbPort</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">gbLogin</Property>
                <Property name="property">gbLogin</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">gbPwd</Property>
                <Property name="property">gbPwd</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">gbAppKey</Property>
                <Property name="property">gbAppKey</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">gbAppSecret</Property>
                <Property name="property">gbAppSecret</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement layoutConstraint="colSpan:2">
                <Property name="name">remark</Property>
                <Property name="property">remark</Property>
                <Property name="editorType">TextArea</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">updateTime</Property>
                <Property name="property">updateTime</Property>
                <Property name="readOnly">true</Property>
                <Editor/>
              </AutoFormElement>
            </AutoForm>
          </ControlTab>
          <ControlTab>
            <Property name="caption">海康流媒体</Property>
            <Property name="iconClass">fa fa-film</Property>
            <Property name="width">150</Property>
            <AutoForm>
              <Property name="dataSet">dsMain</Property>
              <Property name="cols">*,*</Property>
              <Property name="labelAlign">right</Property>
              <Property name="labelSeparator">:</Property>
              <Property name="labelWidth">100</Property>
              <AutoFormElement layoutConstraint="colSpan:2">
                <Property name="name">deptId</Property>
                <Property name="property">deptId</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">hikIp</Property>
                <Property name="property">hikIp</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">hikPort</Property>
                <Property name="property">hikPort</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">hikLogin</Property>
                <Property name="property">hikLogin</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">hikPwd</Property>
                <Property name="property">hikPwd</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">hikAppKey</Property>
                <Property name="property">hikAppKey</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">hikAppSecret</Property>
                <Property name="property">hikAppSecret</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement layoutConstraint="colSpan:2">
                <Property name="name">remark</Property>
                <Property name="property">remark</Property>
                <Property name="editorType">TextArea</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">updateTime</Property>
                <Property name="property">updateTime</Property>
                <Property name="readOnly">true</Property>
                <Editor/>
              </AutoFormElement>
            </AutoForm>
          </ControlTab>
          <ControlTab>
            <Property name="caption">大华流媒体</Property>
            <Property name="iconClass">fa fa-film</Property>
            <Property name="width">150</Property>
            <AutoForm>
              <Property name="dataSet">dsMain</Property>
              <Property name="cols">*,*</Property>
              <Property name="labelAlign">right</Property>
              <Property name="labelSeparator">:</Property>
              <Property name="labelWidth">100</Property>
              <AutoFormElement layoutConstraint="colSpan:2">
                <Property name="name">deptId</Property>
                <Property name="property">deptId</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">dhIp</Property>
                <Property name="property">dhIp</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">dhPort</Property>
                <Property name="property">dhPort</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">dhLogin</Property>
                <Property name="property">dhLogin</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">dhPwd</Property>
                <Property name="property">dhPwd</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">dhAppKey</Property>
                <Property name="property">dhAppKey</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">dhAppSecret</Property>
                <Property name="property">dhAppSecret</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement layoutConstraint="colSpan:2">
                <Property name="name">remark</Property>
                <Property name="property">remark</Property>
                <Property name="editorType">TextArea</Property>
                <Editor/>
              </AutoFormElement>
              <AutoFormElement>
                <Property name="name">updateTime</Property>
                <Property name="property">updateTime</Property>
                <Property name="readOnly">true</Property>
                <Editor/>
              </AutoFormElement>
            </AutoForm>
          </ControlTab>
        </TabControl>
      </Children>
      <Tools/>
    </Dialog>
    <AjaxAction id="ajaxDel">
      <Property name="service">cameraMediaPR#delData</Property>
      <Property name="confirmMessage">确定要删除吗?</Property>
      <Property name="successMessage">删除成功!</Property>
    </AjaxAction>
    <UpdateAction id="updateMain">
      <Property name="dataResolver">cameraMediaPR#saveData</Property>
      <UpdateItem>
        <Property name="dataPath">[#current]</Property>
        <Property name="dataSet">dsMain</Property>
      </UpdateItem>
    </UpdateAction>
  </View>
</ViewConfig>
fzzy-igdss-view/src/main/java/com/fzzy/igds/CameraMediaPR.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,66 @@
package com.fzzy.igds;
import com.bstek.dorado.annotation.DataProvider;
import com.bstek.dorado.annotation.DataResolver;
import com.bstek.dorado.annotation.Expose;
import com.fzzy.igds.domain.CameraMedia;
import com.fzzy.igds.service.CameraMediaService;
import com.ruoyi.common.utils.StringUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.util.List;
/**
 * @Description æµåª’体信息配置
 * @Author CZT
 * @Date 2026/01/04 15:17
 */
@Slf4j
@Component
public class CameraMediaPR {
    @Resource
    private CameraMediaService service;
    /**
     * secCameraMediaPR#listAll æ ¹æ®æ¡ä»¶èŽ·å–æ‰€æœ‰çš„æ‘„åƒæœºé…ç½®ä¿¡æ¯
     *
     */
    @DataProvider
    public List<CameraMedia> listAll() {
        return service.listAll();
    }
    /**
     * secCameraMediaPR#saveData
     *
     * @param data æ•°æ®ä¿¡æ¯
     */
    @DataResolver
    public void saveData(CameraMedia data) {
        CameraMedia newData = new CameraMedia();
        BeanUtils.copyProperties(data, newData);
        service.saveData(newData);
    }
    /**
     * secCameraMediaPR#delData
     *
     * @param data æ•°æ®ä¿¡æ¯
     * @return å¼‚常信息
     */
    @Expose
    public String delData(CameraMedia data) {
        if (StringUtils.isEmpty(data.getId())) {
            return null;
        }
        CameraMedia newData = new CameraMedia();
        BeanUtils.copyProperties(data, newData);
        return service.delData(newData);
    }
}
fzzy-igdss-view/src/main/java/com/fzzy/igds/ConfByDept.view.xml
@@ -191,10 +191,24 @@
    }
};&#xD;
/**&#xD;
* æµåª’体配置&#xD;
*/&#xD;
cameraMediaConf = function(){&#xD;
    var cur = view.get(&quot;#dgMain&quot;).get(&quot;selection&quot;);&#xD;
    if(cur){&#xD;
        var deptId = cur.get(&quot;id&quot;);&#xD;
        var url = &quot;/com.fzzy.igds.CameraMedia.d?deptId=&quot;+ deptId;&#xD;
        window.$openTab(&quot;流媒体配置&quot;, url);
    }else{&#xD;
        $notify(&quot;请先选择库区……&quot;);&#xD;
    }
};
//操作&#xD;
renderCell1 = function(arg,self){&#xD;
    var data = arg.data;&#xD;
    var htm = &quot;&lt;a onClick='inoutConf()' class='a-btn1'>出入库配置&lt;/a>&amp;nbsp;|&amp;nbsp;&lt;a onClick='snapConf()' class='a-btn2'>抓拍配置&lt;/a>&amp;nbsp;|&amp;nbsp;&lt;a onClick='patrolConf()' class='a-btn4'>巡检配置&lt;/a>&amp;nbsp;|&amp;nbsp;&lt;a onClick='workOrderConf()' class='a-btn2'>工单审批&lt;/a>&quot;;&#xD;
    var htm = &quot;&lt;a onClick='inoutConf()' class='a-btn1'>出入库配置&lt;/a>&amp;nbsp;|&amp;nbsp;&lt;a onClick='snapConf()' class='a-btn2'>抓拍配置&lt;/a>&amp;nbsp;|&amp;nbsp;&lt;a onClick='patrolConf()' class='a-btn4'>巡检配置&lt;/a>&amp;nbsp;|&amp;nbsp;&lt;a onClick='workOrderConf()' class='a-btn2'>工单审批&lt;/a>&amp;nbsp;|&amp;nbsp;&lt;a onClick='cameraMediaConf()' class='a-btn1'>流媒体配置&lt;/a>&quot;;&#xD;
    arg.dom.innerHTML = htm;&#xD;
};&#xD;
&#xD;</ClientEvent>