| | |
| | | package controllers |
| | | |
| | | import ( |
| | | "regexp" |
| | | "webserver/extend/code" |
| | | "webserver/extend/config" |
| | | "webserver/extend/sys" |
| | |
| | | |
| | | type LocalConfigVo struct { |
| | | Id string `json:"id"` |
| | | |
| | | AlarmIp string `json:"alarm_ip,omitempty" example:"192.168.1.182"` |
| | | AlarmPort int `json:"alarm_port,omitempty" example:"22122"` |
| | | AlarmThresholdType int `json:"alarm_threshold_type"` //报警阈值类型设置:1:按最高分,2:按阈值以上 |
| | |
| | | ServerType int `json:"server_type,omitempty" example:"1"` |
| | | Reserved string `json:"reserved,omitempty" example:"1"` |
| | | RealMax int `json:"real_max"` //实时处理的最大路数 |
| | | } |
| | | |
| | | type ResourceConfigVo struct { |
| | | IpType int `json:"ipType"` //0:本机ip,1:漂移ip |
| | | ServiceIp string `json:"serviceIp"` //外部服务ip |
| | | Domain string `json:"domain"` //域名 |
| | | } |
| | | |
| | | type Gb28181ConfigVo struct { |
| | |
| | | // @Produce json |
| | | // @Tags sysset |
| | | // @Param config body controllers.LocalConfigVo true "报警和存储信息数据" |
| | | // @Success 200 {string} json "{"code":200, msg:"目录结构数据", success:true}" |
| | | // @Failure 500 {string} json "{"code":500, msg:"返回错误信息", success:false}" |
| | | // @Success 200 {string} json "{"code":200, msg:"", success:true}" |
| | | // @Failure 500 {string} json "{"code":500, msg:"", success:false}" |
| | | // @Router /data/api-v/sysset/alarmEdit [POST] |
| | | func (sset SysSetController) AlarmEdit(c *gin.Context) { |
| | | var args LocalConfigVo |
| | |
| | | // @Security ApiKeyAuth |
| | | // @Summary 存储信息修改 |
| | | // @Description 存储信息修改 |
| | | // @Accept json |
| | | // @Produce json |
| | | // @Tags sysset |
| | | // @Success 200 {string} json "{"code":200, msg:"目录结构数据", success:true}" |
| | |
| | | func (sset SysSetController) GetDevInfo(c *gin.Context) { |
| | | var api dbapi.SysSetApi |
| | | b, sysconf := api.GetServerInfo() |
| | | resData := make(map[string]string, 0) |
| | | resData := make(map[string]interface{}, 0) |
| | | if !b { // 查询是否存在 |
| | | util.ResponseFormat(c, code.ServiceInsideError, "查询失败") |
| | | } else { |
| | |
| | | resData["subMask"] = mask |
| | | resData["gateway"] = gateway |
| | | resData["dns"] = dns |
| | | resData["min_video_len"] = sysconf.CutMinDuration |
| | | resData["max_video_len"] = sysconf.CutMaxDuration |
| | | resData["alarm_ip"] = sysconf.AlarmIp |
| | | resData["alarm_port"] = sysconf.AlarmPort |
| | | resData["web_pic_ip"] = sysconf.WebPicIp |
| | | resData["web_pic_port"] = sysconf.WebPicPort |
| | | resData["es_pic_ip"] = sysconf.EsPicIp |
| | | resData["es_pic_port"] = sysconf.EsPicPort |
| | | |
| | | resData["deviceNum"] = config.Server.DeviceNum |
| | | resData["deviceType"] = config.Server.DeviceType |
| | |
| | | // @Failure 500 {string} json "{"code":500, msg:"返回错误信息", success:false}" |
| | | // @Router /data/api-v/sysset/saveDevInfo [POST] |
| | | func (sset SysSetController) SaveDevInfo(c *gin.Context) { |
| | | |
| | | dev_name := c.PostForm("server_name") |
| | | var api dbapi.SysSetApi |
| | | paramBody := make(map[string]interface{}, 0) |
| | |
| | | // @Security ApiKeyAuth |
| | | // @Summary 测试同步时间 |
| | | // @Description 测试同步时间服务器是否可用 |
| | | // @Accept json |
| | | // @Produce json |
| | | // @Tags sysset |
| | | // @Param server query string true "时间服务器ip" |
| | |
| | | return |
| | | } |
| | | |
| | | isIP, err := sys.RunNTPDate(ntpServer) |
| | | if !isIP { |
| | | util.ResponseFormat(c, code.RequestParamError, "指定的服务器地址错误") |
| | | isConn := sys.RunNTPDate(ntpServer) |
| | | if !isConn { |
| | | util.ResponseFormat(c, code.RequestParamError, "NTP服务器不可用") |
| | | return |
| | | } |
| | | |
| | | if err == nil { |
| | | util.ResponseFormat(c, code.Success, "") |
| | | } else { |
| | | util.ResponseFormat(c, code.TaskStoped, "") |
| | | } |
| | | util.ResponseFormat(c, code.Success, "") |
| | | |
| | | } |
| | | |
| | | // @Security ApiKeyAuth |
| | |
| | | |
| | | util.ResponseFormat(c, code.Success, "正在重启") |
| | | } |
| | | |
| | | // @Summary 获取定时重启 |
| | | // @Description 获取定时重启任务的配置规则 |
| | | // @Produce json |
| | | // @Tags sysset |
| | | // @Success 200 {string} json "{"code":200, msg:"目录结构数据", success:true}" |
| | | // @Failure 500 {string} json "{"code":500, msg:"返回错误信息", success:false}" |
| | | // @Router /data/api-v/sysset/rebootTask [GET] |
| | | func (sset SysSetController) GetRebootTask(c *gin.Context) { |
| | | _, msg := sys.ReadRebootTaskInCrontab() |
| | | util.ResponseFormat(c, code.Success, msg) |
| | | } |
| | | |
| | | // @Summary 设置定时重启 |
| | | // @Description 设置定时重启任务的配置规则 |
| | | // @Accept x-www-form-urlencoded |
| | | // @Produce json |
| | | // @Tags sysset |
| | | // @Success 200 {string} json "{"code":200, msg:"目录结构数据", success:true}" |
| | | // @Failure 500 {string} json "{"code":500, msg:"返回错误信息", success:false}" |
| | | // @Router /data/api-v/sysset/rebootTask [POST] |
| | | func (sset SysSetController) SetRebootTask(c *gin.Context) { |
| | | task := c.PostForm("task") |
| | | if len(task) < 1 { |
| | | sys.CleanRebootTask() |
| | | util.ResponseFormat(c, code.Success, "配置成功") |
| | | return |
| | | } |
| | | |
| | | regEx := `^([0-9*]+\s){4}[0-9*]+$` |
| | | if r, _ := regexp.MatchString(regEx, task); !r { |
| | | util.ResponseFormat(c, code.RequestParamError, "参数错误") |
| | | return |
| | | } |
| | | |
| | | if r := sys.UpdateRebootTask(task); !r { |
| | | util.ResponseFormat(c, code.UpdateFail, "配置失败") |
| | | return |
| | | } |
| | | |
| | | util.ResponseFormat(c, code.Success, "配置成功") |
| | | } |
| | | |
| | | // @Security ApiKeyAuth |
| | | // @Summary 获取存储对外服务信息 |
| | | // @Description 获取存储对外服务信息 |
| | | // @Produce json |
| | | // @Tags sysset |
| | | // @Success 200 {string} json "{"code":200, msg:"", success:true}" |
| | | // @Failure 500 {string} json "{"code":500, msg:"", success:false}" |
| | | // @Router /data/api-v/sysset/getResourceConfig [get] |
| | | func (sset SysSetController) GetResourceConfig(c *gin.Context) { |
| | | var sysApi dbapi.SysSetApi |
| | | b,d := sysApi.GetResourceConfig() |
| | | if b { |
| | | util.ResponseFormat(c,code.Success,d) |
| | | } else { |
| | | util.ResponseFormat(c,code.ComError,"") |
| | | } |
| | | } |
| | | |
| | | // @Security ApiKeyAuth |
| | | // @Summary 存储对外服务信息 |
| | | // @Description 存储对外服务信息 |
| | | // @Accept json |
| | | // @Produce json |
| | | // @Tags sysset |
| | | // @Param reqBoby body controllers.ResourceConfigVo true "post请求,json参数" |
| | | // @Success 200 {string} json "{"code":200, msg:"", success:true}" |
| | | // @Failure 500 {string} json "{"code":500, msg:"", success:false}" |
| | | // @Router /data/api-v/sysset/saveResourceConfig [post] |
| | | func (sset SysSetController) SaveResourceConfig(c *gin.Context) { |
| | | var reqBody ResourceConfigVo |
| | | c.BindJSON(&reqBody) |
| | | if reqBody.ServiceIp == "" && reqBody.Domain == "" { |
| | | util.ResponseFormat(c,code.RequestParamError,"") |
| | | return |
| | | } |
| | | var sysApi dbapi.SysSetApi |
| | | paramBody := util.Struct2Map(reqBody) |
| | | if b,_ := sysApi.SaveResourceConfig(paramBody); b { |
| | | util.ResponseFormat(c,code.Success,"") |
| | | } else { |
| | | util.ResponseFormat(c,code.ComError,"") |
| | | } |
| | | } |