增加工单等其他bug

This commit is contained in:
guoshengxiong 2025-09-28 18:36:59 +08:00
parent 1e38b52511
commit abb64f8d92
18 changed files with 570 additions and 10 deletions

View File

@ -0,0 +1,62 @@
package com.zhgd.xmgl.modules.policecamera.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.zhgd.annotation.OperLog;
import com.zhgd.jeecg.common.api.vo.Result;
import com.zhgd.jeecg.common.execption.OpenAlertException;
import com.zhgd.xmgl.modules.policecamera.entity.PoliceCameraItem;
import com.zhgd.xmgl.modules.policecamera.service.IPoliceCameraItemService;
import com.zhgd.xmgl.modules.policecamera.service.IWorkTicketOrderService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.MapUtils;
import org.simpleframework.xml.core.Validate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Map;
/**
* @Title: Controller
* @Description: 工作票工单APP
* @author pds
* @date 2025-09-28
* @version V1.0
*/
@RestController
@RequestMapping("/xmgl/workTicketOrderApp")
@Slf4j
@Api(tags = "工作票工单APP相关Api")
public class WorkTicketOrderAppController {
@Lazy
@Autowired
private IWorkTicketOrderService workTicketOrderService;
@Lazy
@Autowired
private IPoliceCameraItemService policeCameraItemService;
@OperLog(operModul = "工作票工单APP管理", operType = "", operDesc = "根据执法记录仪设备sn登录")
@ApiOperation(value = "根据执法记录仪设备sn登录", notes = "根据执法记录仪设备sn登录", httpMethod = "POST")
@ApiImplicitParams({
@ApiImplicitParam(name = "devSn", value = "设备编号", paramType = "query", required = true, dataType = "Integer"),
})
@PostMapping(value = "/loginByPoliceCameraSn")
public Result loginByPoliceCameraSn(@RequestBody @Validate Map<String, Object> param) {
String devSn = MapUtils.getString(param, "devSn");
int count = policeCameraItemService.count(new LambdaQueryWrapper<PoliceCameraItem>()
.eq(PoliceCameraItem::getDevSn, devSn));
if (count == 0) {
throw new OpenAlertException("IMEI编号不存在");
}
return Result.ok();
}
}

View File

@ -0,0 +1,120 @@
package com.zhgd.xmgl.modules.policecamera.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.zhgd.annotation.OperLog;
import com.zhgd.jeecg.common.api.vo.Result;
import com.zhgd.xmgl.modules.policecamera.entity.WorkTicketOrder;
import com.zhgd.xmgl.modules.policecamera.entity.dto.WorkTicketOrderDto;
import com.zhgd.xmgl.modules.policecamera.entity.vo.WorkTicketOrderVo;
import com.zhgd.xmgl.modules.policecamera.service.IWorkTicketOrderService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.MapUtils;
import org.simpleframework.xml.core.Validate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore;
import java.util.HashMap;
import java.util.List;
/**
* @Title: Controller
* @Description: 工作票工单
* @author pds
* @date 2025-09-28
* @version V1.0
*/
@RestController
@RequestMapping("/xmgl/workTicketOrder")
@Slf4j
@Api(tags = "工作票工单相关Api")
public class WorkTicketOrderController {
@Lazy
@Autowired
private IWorkTicketOrderService workTicketOrderService;
/**
* 分页列表查询
* @return
*/
@OperLog(operModul = "工作票工单管理", operType = "分页查询", operDesc = "分页列表查询工作票工单信息")
@ApiOperation(value = "分页列表查询工作票工单信息", notes = "分页列表查询工作票工单信息", httpMethod="GET")
@ApiImplicitParams({
@ApiImplicitParam(name = "pageNo", value = "第几页", paramType = "query", required = true, dataType = "Integer"),
@ApiImplicitParam(name = "pageSize", value = "每页显示条数", paramType = "query", required = true, dataType = "Integer"),
})
@GetMapping(value = "/page")
public Result<IPage<WorkTicketOrderVo>> queryPageList(@ApiIgnore @RequestParam HashMap<String, Object> param) {
return Result.success(workTicketOrderService.queryPageList(param));
}
/**
* 列表查询
* @return
*/
@OperLog(operModul = "工作票工单管理", operType = "列表查询", operDesc = "列表查询工作票工单信息")
@ApiOperation(value = "列表查询工作票工单信息", notes = "列表查询工作票工单信息", httpMethod="GET")
@GetMapping(value = "/list")
public Result<List<WorkTicketOrderVo>> queryList(@ApiIgnore @RequestParam HashMap<String, Object> param) {
return Result.success(workTicketOrderService.queryList(param));
}
/**
* 添加
* @param workTicketOrderDto
* @return
*/
@OperLog(operModul = "工作票工单管理", operType = "添加", operDesc = "添加工作票工单信息")
@ApiOperation(value = "添加工作票工单信息", notes = "添加工作票工单信息" , httpMethod="POST")
@PostMapping(value = "/add")
public Result<WorkTicketOrderVo> add(@RequestBody @Validate WorkTicketOrderDto workTicketOrderDto) {
workTicketOrderService.add(workTicketOrderDto);
return Result.ok();
}
/**
* 编辑
* @param workTicketOrderDto
* @return
*/
@OperLog(operModul = "工作票工单管理", operType = "编辑", operDesc = "编辑工作票工单信息")
@ApiOperation(value = "编辑工作票工单信息", notes = "编辑工作票工单信息" , httpMethod="POST")
@PostMapping(value = "/edit")
public Result<WorkTicketOrder> edit(@RequestBody WorkTicketOrderDto workTicketOrderDto) {
workTicketOrderService.edit(workTicketOrderDto);
return Result.ok();
}
/**
* 通过id删除
* @return
*/
@OperLog(operModul = "工作票工单管理", operType = "删除", operDesc = "删除工作票工单信息")
@ApiOperation(value = "删除工作票工单信息", notes = "删除工作票工单信息" , httpMethod="POST")
@ApiImplicitParam(name = "id", value = "工作票工单ID", paramType = "body", required = true, dataType = "String", example = "{\"id\":\"1\"}")
@PostMapping(value = "/delete")
public Result<WorkTicketOrder> delete(@ApiIgnore @RequestBody HashMap<String ,Object> map) {
workTicketOrderService.delete(MapUtils.getString(map, "id"));
return Result.ok();
}
/**
* 通过id查询
* @param id
* @return
*/
@OperLog(operModul = "工作票工单管理", operType = "通过id查询", operDesc = "通过id查询工作票工单信息")
@ApiOperation(value = "通过id查询工作票工单信息", notes = "通过id查询工作票工单信息" , httpMethod="GET")
@ApiImplicitParam(name = "id", value = "工作票工单ID", paramType = "query", required = true, dataType = "Integer")
@GetMapping(value = "/queryById")
public Result<WorkTicketOrderVo> queryById(@RequestParam(name="id",required=true) String id) {
return Result.success(workTicketOrderService.queryById(id));
}
}

View File

@ -40,6 +40,11 @@ public class PoliceCameraItemFile implements Serializable {
*/
@ApiModelProperty(value = "工作票历史记录id")
private java.lang.Long historyId;
/**
* 工作票工单id
*/
@ApiModelProperty(value = "工作票工单id")
private java.lang.Long orderId;
/**
* 外部id
*/

View File

@ -0,0 +1,74 @@
package com.zhgd.xmgl.modules.policecamera.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
/**
* @Description: 工作票工单
* @author pds
* @date 2025-09-28
* @version V1.0
*/
@Data
@TableName("work_ticket_order")
@ApiModel(value="WorkTicketOrder实体类",description="WorkTicketOrder")
public class WorkTicketOrder implements Serializable {
private static final long serialVersionUID = 1L;
/**id*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value="id")
private java.lang.Long id ;
/**工作票id*/
@ApiModelProperty(value="工作票id")
private java.lang.Long workTicketId ;
/**
* 工作票历史记录id
*/
@ApiModelProperty(value = "工作票历史记录id")
private java.lang.Long historyId;
/**
* 设备编号
*/
@ApiModelProperty(value = "设备编号")
private java.lang.String devSn;
/**项目sn*/
@ApiModelProperty(value="项目sn")
private java.lang.String projectSn ;
/**创建时间*/
@ApiModelProperty(value="创建时间")
private java.util.Date createTime ;
/**更新时间*/
@ApiModelProperty(value="更新时间")
private java.util.Date updateTime ;
/**工作票编号*/
@ApiModelProperty(value="工作票编号")
private java.lang.String workTicketNumber ;
/**施工场站s多个,分割)*/
@ApiModelProperty(value="施工场站s多个,分割)")
private java.lang.String constructionAreas ;
/**下发时间*/
@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 sendTime ;
/**作业人员*/
@ApiModelProperty(value="作业人员")
private java.lang.String operator ;
/**作业内容*/
@ApiModelProperty(value="作业内容")
private java.lang.String workContent ;
/**安全措施*/
@ApiModelProperty(value="安全措施")
private java.lang.String safetyMeasure ;
/**状态1:未开始;2:进行中;3:已完成;*/
@ApiModelProperty(value="状态1:未开始;2:进行中;3:已完成;")
private java.lang.Integer status ;
}

View File

@ -0,0 +1,11 @@
package com.zhgd.xmgl.modules.policecamera.entity.dto;
import com.zhgd.xmgl.modules.policecamera.entity.WorkTicketOrder;
import io.swagger.annotations.ApiModel;
import lombok.Data;
@Data
@ApiModel(value="WorkTicketOrderDto实体类",description="WorkTicketOrderDto实体类")
public class WorkTicketOrderDto extends WorkTicketOrder {
}

View File

@ -0,0 +1,11 @@
package com.zhgd.xmgl.modules.policecamera.entity.vo;
import com.zhgd.xmgl.modules.policecamera.entity.WorkTicketOrder;
import io.swagger.annotations.ApiModel;
import lombok.Data;
@Data
@ApiModel(value="WorkTicketOrderVo实体类",description="WorkTicketOrderVo实体类")
public class WorkTicketOrderVo extends WorkTicketOrder {
}

View File

@ -0,0 +1,44 @@
package com.zhgd.xmgl.modules.policecamera.mapper;
import java.util.List;
import java.util.HashMap;
import com.zhgd.xmgl.modules.policecamera.entity.WorkTicketOrder;
import com.zhgd.xmgl.modules.policecamera.entity.vo.WorkTicketOrderVo;
import com.zhgd.xmgl.modules.policecamera.entity.dto.WorkTicketOrderDto;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* @Description: 工作票工单
* @author pds
* @date 2025-09-28
* @version V1.0
*/
@Mapper
public interface WorkTicketOrderMapper extends BaseMapper<WorkTicketOrder> {
/**
* 分页列表查询工作票工单信息
*
* @param page
* @param queryWrapper
* @param param
* @return
*/
IPage<WorkTicketOrderVo> queryList(Page<WorkTicketOrderVo> page, @Param(Constants.WRAPPER) QueryWrapper<WorkTicketOrderVo> queryWrapper, @Param("param") HashMap<String, Object> param);
/**
* 列表查询工作票工单信息
*
* @param queryWrapper
* @param param
* @return
*/
List<WorkTicketOrderVo> queryList(@Param(Constants.WRAPPER) QueryWrapper<WorkTicketOrderVo> queryWrapper, @Param("param") HashMap<String, Object> param);
}

View File

@ -0,0 +1,15 @@
<?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.zhgd.xmgl.modules.policecamera.mapper.WorkTicketOrderMapper">
<select id="queryList" resultType="com.zhgd.xmgl.modules.policecamera.entity.vo.WorkTicketOrderVo">
select * from (
select t.*
from work_ticket_order t
where 1=1
<if test="param.devSn != null and param.devSn != ''">
and t.dev_sn = #{param.devSn}
</if>
)t
${ew.customSqlSegment}
</select>
</mapper>

View File

@ -0,0 +1,55 @@
package com.zhgd.xmgl.modules.policecamera.service;
import com.zhgd.xmgl.modules.policecamera.entity.WorkTicketOrder;
import com.zhgd.xmgl.modules.policecamera.entity.vo.WorkTicketOrderVo;
import com.zhgd.xmgl.modules.policecamera.entity.dto.WorkTicketOrderDto;
import com.baomidou.mybatisplus.extension.service.IService;
import com.baomidou.mybatisplus.core.metadata.IPage;
import java.util.HashMap;
import java.util.List;
/**
* @Description: 工作票工单
* @author pds
* @date 2025-09-28
* @version V1.0
*/
public interface IWorkTicketOrderService extends IService<WorkTicketOrder> {
/**
* 分页列表查询工作票工单信息
* @param param 参数map
* @return
*/
IPage<WorkTicketOrderVo> queryPageList(HashMap<String, Object> param);
/**
* 列表查询工作票工单信息
* @param param 参数map
* @return
*/
List<WorkTicketOrderVo> queryList(HashMap<String, Object> param);
/**
* 添加工作票工单信息
* @param workTicketOrderDto 工作票工单
* @return
*/
void add(WorkTicketOrderDto workTicketOrderDto);
/**
* 编辑工作票工单信息
* @param workTicketOrderDto 工作票工单
* @return
*/
void edit(WorkTicketOrderDto workTicketOrderDto);
/**
* 根据id删除工作票工单信息
* @param id 工作票工单的id
* @return
*/
void delete(String id);
/**
* 根据id查询工作票工单信息
* @param id 工作票工单的id
* @return
*/
WorkTicketOrderVo queryById(String id);
}

View File

@ -0,0 +1,95 @@
package com.zhgd.xmgl.modules.policecamera.service.impl;
import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhgd.jeecg.common.execption.OpenAlertException;
import com.zhgd.jeecg.common.system.query.QueryGenerator;
import com.zhgd.xmgl.modules.policecamera.entity.WorkTicketOrder;
import com.zhgd.xmgl.modules.policecamera.entity.dto.WorkTicketOrderDto;
import com.zhgd.xmgl.modules.policecamera.entity.vo.WorkTicketOrderVo;
import com.zhgd.xmgl.modules.policecamera.mapper.WorkTicketOrderMapper;
import com.zhgd.xmgl.modules.policecamera.service.IWorkTicketOrderService;
import com.zhgd.xmgl.util.MapBuilder;
import com.zhgd.xmgl.util.PageUtil;
import com.zhgd.xmgl.util.RefUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.HashMap;
import java.util.List;
/**
* @Description: 工作票工单
* @author pds
* @date 2025-09-28
* @version V1.0
*/
@Service
public class WorkTicketOrderServiceImpl extends ServiceImpl<WorkTicketOrderMapper, WorkTicketOrder> implements IWorkTicketOrderService {
@Autowired
private WorkTicketOrderMapper workTicketOrderMapper;
@Override
public IPage<WorkTicketOrderVo> queryPageList(HashMap<String, Object> param) {
QueryWrapper<WorkTicketOrderVo> queryWrapper = this.getQueryWrapper(param);
Page<WorkTicketOrderVo> page = PageUtil.getPage(param);
IPage<WorkTicketOrderVo> pageList = baseMapper.queryList(page, queryWrapper,param);
pageList.setRecords(this.dealList(pageList.getRecords()));
return pageList;
}
@Override
public List<WorkTicketOrderVo> queryList(HashMap<String, Object> param) {
QueryWrapper<WorkTicketOrderVo> queryWrapper = getQueryWrapper(param);
return dealList(baseMapper.queryList(queryWrapper,param));
}
private QueryWrapper<WorkTicketOrderVo> getQueryWrapper(HashMap<String, Object> param) {
QueryWrapper<WorkTicketOrderVo> queryWrapper = QueryGenerator.initPageQueryWrapper(WorkTicketOrderVo.class, param, true);
queryWrapper.orderByDesc(RefUtil.fieldNameUlc(WorkTicketOrderVo::getId));
return queryWrapper;
}
private List<WorkTicketOrderVo> dealList(List<WorkTicketOrderVo> list) {
return list;
}
@Override
public void add(WorkTicketOrderDto workTicketOrderDto) {
workTicketOrderDto.setId(null);
baseMapper.insert(workTicketOrderDto);
}
@Override
public void edit(WorkTicketOrderDto workTicketOrderDto) {
WorkTicketOrder oldWorkTicketOrder = baseMapper.selectById(workTicketOrderDto.getId());
if(oldWorkTicketOrder==null) {
throw new OpenAlertException("未找到对应实体");
}
baseMapper.updateById(workTicketOrderDto);
}
@Override
public void delete(String id) {
WorkTicketOrder workTicketOrder = baseMapper.selectById(id);
if(workTicketOrder==null) {
throw new OpenAlertException("未找到对应实体");
}
baseMapper.deleteById(id);
}
@Override
public WorkTicketOrderVo queryById(String id) {
List<WorkTicketOrderVo> list = this.queryList(new MapBuilder<String, Object>()
.put("id", id)
.build());
WorkTicketOrderVo entity = CollUtil.getFirst(list);
if (entity == null) {
throw new OpenAlertException("未找到对应实体");
}
return entity;
}
}

View File

@ -4,6 +4,7 @@ import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@ -12,10 +13,7 @@ import com.zhgd.jeecg.common.system.query.QueryGenerator;
import com.zhgd.xmgl.call.api.PoliceCameraManufacturer;
import com.zhgd.xmgl.call.factory.PoliceCameraManufacturerFactory;
import com.zhgd.xmgl.modules.basicdata.service.ISystemUserService;
import com.zhgd.xmgl.modules.policecamera.entity.PoliceCameraItem;
import com.zhgd.xmgl.modules.policecamera.entity.WorkTicket;
import com.zhgd.xmgl.modules.policecamera.entity.WorkTicketCameraRel;
import com.zhgd.xmgl.modules.policecamera.entity.WorkTicketHistory;
import com.zhgd.xmgl.modules.policecamera.entity.*;
import com.zhgd.xmgl.modules.policecamera.entity.dto.OperateWorkTicketDto;
import com.zhgd.xmgl.modules.policecamera.entity.dto.WorkTicketDto;
import com.zhgd.xmgl.modules.policecamera.entity.vo.CountWorkTicketVo;
@ -85,6 +83,9 @@ public class WorkTicketServiceImpl extends ServiceImpl<WorkTicketMapper, WorkTic
@Lazy
@Autowired
private IWorkTicketService workTicketService;
@Lazy
@Autowired
private IWorkTicketOrderService workTicketOrderService;
@Override
public IPage<WorkTicketVo> queryPageList(HashMap<String, Object> param) {
@ -261,6 +262,28 @@ public class WorkTicketServiceImpl extends ServiceImpl<WorkTicketMapper, WorkTic
manufacturer.endWork(ticket, his.getId() + "");
}
}
if (workTicketDto.getOperateStatus() == 1 || workTicketDto.getOperateStatus() == 3) {
for (PoliceCameraItem item : ticket.getItemList()) {
WorkTicketOrder order = new WorkTicketOrder();
order.setWorkTicketId(ticketId);
order.setHistoryId(his.getId());
order.setDevSn(item.getDevSn());
order.setProjectSn(ticket.getProjectSn());
order.setWorkTicketNumber(ticket.getWorkTicketNumber());
order.setConstructionAreas(ticket.getConstructionAreas());
order.setSendTime(new Date());
order.setOperator(ticket.getOperator());
order.setWorkContent(ticket.getWorkContent());
order.setSafetyMeasure(ticket.getSafetyMeasure());
order.setStatus(1);
workTicketOrderService.save(order);
}
} else if (workTicketDto.getOperateStatus() == 2 || workTicketDto.getOperateStatus() == 4) {
workTicketOrderService.update(null, new LambdaUpdateWrapper<WorkTicketOrder>()
.set(WorkTicketOrder::getStatus, 3)
.eq(WorkTicketOrder::getHistoryId, his.getId())
);
}
}
}

View File

@ -1,9 +1,12 @@
package com.zhgd.xmgl.modules.project.controller;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.StrUtil;
import com.zhgd.annotation.OperLog;
import com.zhgd.jeecg.common.api.vo.Result;
import com.zhgd.redis.annotation.ApiIdempotent;
import com.zhgd.xmgl.modules.project.entity.ProjectVideoConfig;
import com.zhgd.xmgl.modules.project.entity.dto.ProjectVideoConfigDto;
import com.zhgd.xmgl.modules.project.service.IProjectVideoConfigService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
@ -51,14 +54,19 @@ public class ProjectVideoConfigController {
/**
* 编辑
* @param projectVideoConfig
* @param dto
* @return
*/
@ApiIdempotent
@OperLog(operModul = "视频管理",operType = "编辑视频配置信息",operDesc = "编辑视频配置信息")
@ApiOperation(value = "编辑视频配置信息", notes = "编辑视频配置信息" , httpMethod="POST")
@PostMapping(value = "/edit")
public Result<ProjectVideoConfig> editProjectVideoConfig(@RequestBody ProjectVideoConfig projectVideoConfig) {
public Result<ProjectVideoConfig> editProjectVideoConfig(@RequestBody ProjectVideoConfigDto dto) {
ProjectVideoConfig projectVideoConfig = new ProjectVideoConfig();
BeanUtil.copyProperties(dto, projectVideoConfig);
if (StrUtil.isNotBlank(dto.getPort())) {
projectVideoConfig.setPassword(dto.getPort());
}
projectVideoConfigService.editProjectVideoConfig(projectVideoConfig);
return Result.ok();
}

View File

@ -0,0 +1,14 @@
package com.zhgd.xmgl.modules.project.entity.dto;
import com.zhgd.xmgl.modules.project.entity.ProjectVideoConfig;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class ProjectVideoConfigDto extends ProjectVideoConfig {
/**
* 端口替换password字段
*/
@ApiModelProperty(value = "端口替换password字段")
private java.lang.String port;
}

View File

@ -6,6 +6,6 @@ import lombok.Data;
@Data
public class VideoGroupVo extends VideoGroup {
@ApiModelProperty("摄像头数量")
@ApiModelProperty("该分组的摄像头数量(不包含下级分组的摄像头数量)")
private Integer totalNum;
}

View File

@ -26,7 +26,7 @@
and vi.group_id = #{groupId}
</if>
<if test="videoName != null and videoName != ''">
and vi.video_name = #{videoName}
and vi.video_name like CONCAT(CONCAT('%', #{videoName}), '%')
</if>
<if test="devIds != null and devIds.size() != 0">
and vi.item_id in

View File

@ -132,7 +132,7 @@ public class VideoGroupServiceImpl extends ServiceImpl<VideoGroupMapper, VideoGr
JSONArray jsonArray = ListUtils.listToTree(JSONArray.parseArray(JSON.toJSONString(videoGroupVos)), "id", "parentId", "children");
for (int i = 0; i < jsonArray.size(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
getTotalNum(jsonObject, "children");
// getTotalNum(jsonObject, "children");
}
return jsonArray;
}

View File

@ -78,6 +78,9 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
http.authorizeRequests()
//请求路径允许访问
.antMatchers("/xmgl/workTicketOrderApp/*").permitAll()
.antMatchers("/xmgl/policeCameraItem/*").permitAll()
.antMatchers("/xmgl/workTicketOrder/*").permitAll()
.antMatchers("/xmgl/bridgeCraneData/add").permitAll()
.antMatchers("/xmgl/bridgeCraneDev/updateDevInfo").permitAll()
.antMatchers("/xmgl/appVersion/list").permitAll()

View File

@ -1,6 +1,7 @@
package com.zhgd.xmgl.util;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.http.HttpException;
import cn.hutool.http.HttpUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@ -244,7 +245,7 @@ public class AqiUtil {
return (HashMap) ro;
}
Map<String, SystemCities> cityIdMap = systemCities.stream().collect(Collectors.toMap(e -> e.getCityid(), Function.identity(), (o, o2) -> o));
HashMap result = null;
Map result = null;
try {
Map<String, Object> param = new HashMap<>(16);
param.put("appid", tianqiAppid);
@ -261,6 +262,25 @@ public class AqiUtil {
result = JSON.parseObject(rs, HashMap.class);
} catch (Exception e) {
log.error("error", e);
result = JSON.parseObject("{\n" +
" \"date\": \"" + DateUtil.today() + "\",\n" +
" \"tem_day\": \"32\",\n" +
" \"win_meter\": \"3km/h\",\n" +
" \"week\": \"" + DateUtil.thisDayOfWeekEnum().toChinese() + "\",\n" +
" \"city\": \"深圳\",\n" +
" \"tem_night\": \"27\",\n" +
" \"cityid\": \"101280601\",\n" +
" \"air\": \"22\",\n" +
" \"pressure\": \"1005\",\n" +
" \"update_time\": \"17:05\",\n" +
" \"wea\": \"多云\",\n" +
" \"wea_img\": \"yun\",\n" +
" \"win_speed\": \"1级\",\n" +
" \"humidity\": \"65%\",\n" +
" \"tem\": \"29.6\",\n" +
" \"win\": \"东风\",\n" +
" \"nums\": 50\n" +
" }",HashMap.class);
}
redisRepository.set(key, result, 60 * 60L);
return result;