项目对应的车辆相机设备配置接口

This commit is contained in:
guoshengxiong 2024-06-05 10:46:42 +08:00
parent e12a1f6852
commit f1ec514ce6
7 changed files with 335 additions and 1 deletions

View File

@ -0,0 +1,128 @@
package com.zhgd.xmgl.modules.car.controller;
import com.zhgd.xmgl.modules.car.entity.ProjectCarCameraConfig;
import com.zhgd.xmgl.modules.car.service.IProjectCarCameraConfigService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiImplicitParams;
import java.util.HashMap;
import springfox.documentation.annotations.ApiIgnore;
import java.util.List;
import com.zhgd.jeecg.common.api.vo.Result;
import org.apache.commons.collections.MapUtils;
import org.simpleframework.xml.core.Validate;
import com.baomidou.mybatisplus.core.metadata.IPage;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
/**
* @Title: Controller
* @Description: 项目对应的车辆相机设备配置
* @author pds
* @date 2024-06-05
* @version V1.0
*/
@RestController
@RequestMapping("/xmgl/projectCarCameraConfig")
@Slf4j
@Api(tags = "项目对应的车辆相机设备配置相关Api")
public class ProjectCarCameraConfigController {
@Autowired
private IProjectCarCameraConfigService projectCarCameraConfigService;
/**
* 分页列表查询
*
* @return
*/
@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<ProjectCarCameraConfig>> queryPageList(@ApiIgnore @RequestParam HashMap<String, Object> param) {
return Result.success(projectCarCameraConfigService.queryPageList(param));
}
/**
* 列表查询
*
* @return
*/
@ApiOperation(value = "列表查询项目对应的车辆相机设备配置信息", notes = "列表查询项目对应的车辆相机设备配置信息", httpMethod = "GET")
@GetMapping(value = "/list")
public Result<List<ProjectCarCameraConfig>> queryList(@ApiIgnore @RequestParam HashMap<String, Object> param) {
return Result.success(projectCarCameraConfigService.queryList(param));
}
/**
* 添加
*
* @param projectCarCameraConfig
* @return
*/
@ApiOperation(value = "添加项目对应的车辆相机设备配置信息", notes = "添加项目对应的车辆相机设备配置信息", httpMethod = "POST")
@PostMapping(value = "/add")
public Result<ProjectCarCameraConfig> add(@RequestBody @Validate ProjectCarCameraConfig projectCarCameraConfig) {
projectCarCameraConfigService.add(projectCarCameraConfig);
return Result.ok();
}
/**
* 编辑
*
* @param projectCarCameraConfig
* @return
*/
@ApiOperation(value = "编辑项目对应的车辆相机设备配置信息", notes = "编辑项目对应的车辆相机设备配置信息", httpMethod = "POST")
@PostMapping(value = "/edit")
public Result<ProjectCarCameraConfig> edit(@RequestBody ProjectCarCameraConfig projectCarCameraConfig) {
projectCarCameraConfigService.edit(projectCarCameraConfig);
return Result.ok();
}
@ApiOperation(value = "添加项目对应的车辆相机设备配置信息", notes = "添加项目对应的车辆相机设备配置信息", httpMethod = "POST")
@PostMapping(value = "/saveProjectCarCameraConfig")
public Result<ProjectCarCameraConfig> saveProjectCarCameraConfig(@RequestBody @Validate ProjectCarCameraConfig projectCarCameraConfig) {
projectCarCameraConfigService.saveProjectCarCameraConfig(projectCarCameraConfig);
return Result.ok();
}
/**
* 通过id删除
*
* @return
*/
@ApiOperation(value = "删除项目对应的车辆相机设备配置信息", notes = "删除项目对应的车辆相机设备配置信息", httpMethod = "POST")
@ApiImplicitParam(name = "id", value = "项目对应的车辆相机设备配置ID", paramType = "body", required = true, dataType = "String", example = "{\"id\":\"1\"}")
@PostMapping(value = "/delete")
public Result<ProjectCarCameraConfig> delete(@ApiIgnore @RequestBody HashMap<String, Object> map) {
projectCarCameraConfigService.delete(MapUtils.getString(map, "id"));
return Result.ok();
}
/**
* 通过id查询
*
* @param id
* @return
*/
@ApiOperation(value = "通过id查询项目对应的车辆相机设备配置信息", notes = "通过id查询项目对应的车辆相机设备配置信息", httpMethod = "GET")
@ApiImplicitParam(name = "id", value = "项目对应的车辆相机设备配置ID", paramType = "query", required = true, dataType = "Integer")
@GetMapping(value = "/queryById")
public Result<ProjectCarCameraConfig> queryById(@RequestParam(name = "id", required = true) String id) {
return Result.success(projectCarCameraConfigService.queryById(id));
}
}

View File

@ -0,0 +1,49 @@
package com.zhgd.xmgl.modules.car.entity;
import java.io.Serializable;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import javax.validation.constraints.NotBlank;
/**
* @Description: 项目对应的车辆相机设备配置
* @author pds
* @date 2024-06-05
* @version V1.0
*/
@Data
@TableName("project_car_camera_config")
@ApiModel(value = "ProjectCarCameraConfig实体类", description = "ProjectCarCameraConfig")
public class ProjectCarCameraConfig implements Serializable {
private static final long serialVersionUID = 1L;
/**
* id
*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "id")
private java.lang.Long id;
/**
* 项目SN
*/
@Excel(name = "项目SN", width = 15)
@ApiModelProperty(value = "项目SN")
@NotBlank(message = "projectSn不能为空")
private java.lang.String projectSn;
/**
* 1海康isc2其他
*/
@Excel(name = "1海康isc、2其他", width = 15)
@ApiModelProperty(value = "1海康isc、2其他")
private java.lang.Integer supplierType;
}

View File

@ -0,0 +1,16 @@
package com.zhgd.xmgl.modules.car.mapper;
import com.zhgd.xmgl.modules.car.entity.ProjectCarCameraConfig;
import org.apache.ibatis.annotations.Mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* @Description: 项目对应的车辆相机设备配置
* @author pds
* @date 2024-06-05
* @version V1.0
*/
@Mapper
public interface ProjectCarCameraConfigMapper extends BaseMapper<ProjectCarCameraConfig> {
}

View File

@ -45,7 +45,7 @@
<if test="param.carNumber != null and param.carNumber != ''">
and t.car_number like CONCAT(CONCAT('%', #{param.carNumber}), '%')
</if>
<if test="param.isBlack != null and param.isBlack != ''">
<if test="param.isBlack != null and param.isBlack != '' or param.isBlack == '0'.toString()">
and t.is_black = #{param.isBlack}
</if>
<if test="param.carModuleType != null and param.carModuleType != '' and param.carModuleType != '4'.toString()">

View File

@ -0,0 +1,4 @@
<?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.car.mapper.ProjectCarCameraConfigMapper">
</mapper>

View File

@ -0,0 +1,32 @@
package com.zhgd.xmgl.modules.car.service;
import com.zhgd.xmgl.modules.car.entity.ProjectCarCameraConfig;
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 2024-06-05
* @version V1.0
*/
public interface IProjectCarCameraConfigService extends IService<ProjectCarCameraConfig> {
IPage<ProjectCarCameraConfig> queryPageList(HashMap<String, Object> param);
List<ProjectCarCameraConfig> queryList(HashMap<String, Object> param);
void add(ProjectCarCameraConfig projectCarCameraConfig);
void edit(ProjectCarCameraConfig projectCarCameraConfig);
void delete(String id);
ProjectCarCameraConfig queryById(String id);
void saveProjectCarCameraConfig(ProjectCarCameraConfig projectCarCameraConfig);
}

View File

@ -0,0 +1,105 @@
package com.zhgd.xmgl.modules.car.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
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.car.entity.ProjectCarCameraConfig;
import com.zhgd.xmgl.modules.car.mapper.ProjectCarCameraConfigMapper;
import com.zhgd.xmgl.modules.car.service.IProjectCarCameraConfigService;
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 org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert;
import java.util.HashMap;
import java.util.List;
/**
* @Description: 项目对应的车辆相机设备配置
* @author pds
* @date 2024-06-05
* @version V1.0
*/
@Service
@Transactional(rollbackFor = Exception.class)
public class ProjectCarCameraConfigServiceImpl extends ServiceImpl<ProjectCarCameraConfigMapper, ProjectCarCameraConfig> implements IProjectCarCameraConfigService {
@Autowired
private ProjectCarCameraConfigMapper projectCarCameraConfigMapper;
@Override
public IPage<ProjectCarCameraConfig> queryPageList(HashMap<String, Object> param) {
QueryWrapper<ProjectCarCameraConfig> queryWrapper = getQueryWrapper(param);
Page<ProjectCarCameraConfig> page = PageUtil.getPage(param);
IPage<ProjectCarCameraConfig> pageList = this.page(page, queryWrapper);
pageList.setRecords(dealList(pageList.getRecords()));
return pageList;
}
@Override
public List<ProjectCarCameraConfig> queryList(HashMap<String, Object> param) {
QueryWrapper<ProjectCarCameraConfig> queryWrapper = getQueryWrapper(param);
return dealList(this.list(queryWrapper));
}
private QueryWrapper<ProjectCarCameraConfig> getQueryWrapper(HashMap<String, Object> param) {
String alias = "";
QueryWrapper<ProjectCarCameraConfig> queryWrapper = QueryGenerator.initPageQueryWrapper(ProjectCarCameraConfig.class, param, alias);
queryWrapper.orderByDesc(alias + RefUtil.fieldNameUlc(ProjectCarCameraConfig::getId));
return queryWrapper;
}
private List<ProjectCarCameraConfig> dealList(List<ProjectCarCameraConfig> list) {
return list;
}
@Override
public void add(ProjectCarCameraConfig projectCarCameraConfig) {
projectCarCameraConfig.setId(null);
baseMapper.insert(projectCarCameraConfig);
}
@Override
public void edit(ProjectCarCameraConfig projectCarCameraConfig) {
ProjectCarCameraConfig oldProjectCarCameraConfig = baseMapper.selectById(projectCarCameraConfig.getId());
if (oldProjectCarCameraConfig == null) {
throw new OpenAlertException("未找到对应实体");
}
baseMapper.updateById(projectCarCameraConfig);
}
@Override
public void delete(String id) {
ProjectCarCameraConfig projectCarCameraConfig = baseMapper.selectById(id);
if (projectCarCameraConfig == null) {
throw new OpenAlertException("未找到对应实体");
}
baseMapper.deleteById(id);
}
@Override
public ProjectCarCameraConfig queryById(String id) {
ProjectCarCameraConfig entity = getById(id);
if (entity == null) {
throw new OpenAlertException("未找到对应实体");
}
return entity;
}
@Override
public void saveProjectCarCameraConfig(ProjectCarCameraConfig projectCarCameraConfig) {
ProjectCarCameraConfig pcc = projectCarCameraConfigMapper.selectOne(new LambdaQueryWrapper<ProjectCarCameraConfig>()
.eq(ProjectCarCameraConfig::getProjectSn, projectCarCameraConfig.getProjectSn()));
if (pcc == null) {
add(projectCarCameraConfig);
} else {
edit(projectCarCameraConfig);
}
}
}