diff --git a/src/main/java/com/zhgd/xmgl/modules/car/controller/ProjectCarCameraConfigController.java b/src/main/java/com/zhgd/xmgl/modules/car/controller/ProjectCarCameraConfigController.java new file mode 100644 index 000000000..63a7f579d --- /dev/null +++ b/src/main/java/com/zhgd/xmgl/modules/car/controller/ProjectCarCameraConfigController.java @@ -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> queryPageList(@ApiIgnore @RequestParam HashMap param) { + return Result.success(projectCarCameraConfigService.queryPageList(param)); + } + + /** + * 列表查询 + * + * @return + */ + @ApiOperation(value = "列表查询项目对应的车辆相机设备配置信息", notes = "列表查询项目对应的车辆相机设备配置信息", httpMethod = "GET") + @GetMapping(value = "/list") + public Result> queryList(@ApiIgnore @RequestParam HashMap param) { + return Result.success(projectCarCameraConfigService.queryList(param)); + } + + /** + * 添加 + * + * @param projectCarCameraConfig + * @return + */ + @ApiOperation(value = "添加项目对应的车辆相机设备配置信息", notes = "添加项目对应的车辆相机设备配置信息", httpMethod = "POST") + @PostMapping(value = "/add") + public Result add(@RequestBody @Validate ProjectCarCameraConfig projectCarCameraConfig) { + projectCarCameraConfigService.add(projectCarCameraConfig); + return Result.ok(); + } + + /** + * 编辑 + * + * @param projectCarCameraConfig + * @return + */ + @ApiOperation(value = "编辑项目对应的车辆相机设备配置信息", notes = "编辑项目对应的车辆相机设备配置信息", httpMethod = "POST") + @PostMapping(value = "/edit") + public Result edit(@RequestBody ProjectCarCameraConfig projectCarCameraConfig) { + projectCarCameraConfigService.edit(projectCarCameraConfig); + return Result.ok(); + } + + + @ApiOperation(value = "添加项目对应的车辆相机设备配置信息", notes = "添加项目对应的车辆相机设备配置信息", httpMethod = "POST") + @PostMapping(value = "/saveProjectCarCameraConfig") + public Result 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 delete(@ApiIgnore @RequestBody HashMap 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 queryById(@RequestParam(name = "id", required = true) String id) { + return Result.success(projectCarCameraConfigService.queryById(id)); + } + +} diff --git a/src/main/java/com/zhgd/xmgl/modules/car/entity/ProjectCarCameraConfig.java b/src/main/java/com/zhgd/xmgl/modules/car/entity/ProjectCarCameraConfig.java new file mode 100644 index 000000000..1a8a3f2af --- /dev/null +++ b/src/main/java/com/zhgd/xmgl/modules/car/entity/ProjectCarCameraConfig.java @@ -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海康isc、2其他 + */ + @Excel(name = "1海康isc、2其他", width = 15) + @ApiModelProperty(value = "1海康isc、2其他") + private java.lang.Integer supplierType; +} diff --git a/src/main/java/com/zhgd/xmgl/modules/car/mapper/ProjectCarCameraConfigMapper.java b/src/main/java/com/zhgd/xmgl/modules/car/mapper/ProjectCarCameraConfigMapper.java new file mode 100644 index 000000000..a9f82a19e --- /dev/null +++ b/src/main/java/com/zhgd/xmgl/modules/car/mapper/ProjectCarCameraConfigMapper.java @@ -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 { + +} diff --git a/src/main/java/com/zhgd/xmgl/modules/car/mapper/xml/CarInfoMapper.xml b/src/main/java/com/zhgd/xmgl/modules/car/mapper/xml/CarInfoMapper.xml index e3f808449..4c5e75660 100644 --- a/src/main/java/com/zhgd/xmgl/modules/car/mapper/xml/CarInfoMapper.xml +++ b/src/main/java/com/zhgd/xmgl/modules/car/mapper/xml/CarInfoMapper.xml @@ -45,7 +45,7 @@ and t.car_number like CONCAT(CONCAT('%', #{param.carNumber}), '%') - + and t.is_black = #{param.isBlack} diff --git a/src/main/java/com/zhgd/xmgl/modules/car/mapper/xml/ProjectCarCameraConfigMapper.xml b/src/main/java/com/zhgd/xmgl/modules/car/mapper/xml/ProjectCarCameraConfigMapper.xml new file mode 100644 index 000000000..a5a49a89d --- /dev/null +++ b/src/main/java/com/zhgd/xmgl/modules/car/mapper/xml/ProjectCarCameraConfigMapper.xml @@ -0,0 +1,4 @@ + + + + diff --git a/src/main/java/com/zhgd/xmgl/modules/car/service/IProjectCarCameraConfigService.java b/src/main/java/com/zhgd/xmgl/modules/car/service/IProjectCarCameraConfigService.java new file mode 100644 index 000000000..9fde3c7cb --- /dev/null +++ b/src/main/java/com/zhgd/xmgl/modules/car/service/IProjectCarCameraConfigService.java @@ -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 { + + IPage queryPageList(HashMap param); + + List queryList(HashMap param); + + void add(ProjectCarCameraConfig projectCarCameraConfig); + + void edit(ProjectCarCameraConfig projectCarCameraConfig); + + void delete(String id); + + ProjectCarCameraConfig queryById(String id); + + void saveProjectCarCameraConfig(ProjectCarCameraConfig projectCarCameraConfig); + +} diff --git a/src/main/java/com/zhgd/xmgl/modules/car/service/impl/ProjectCarCameraConfigServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/car/service/impl/ProjectCarCameraConfigServiceImpl.java new file mode 100644 index 000000000..fa602da40 --- /dev/null +++ b/src/main/java/com/zhgd/xmgl/modules/car/service/impl/ProjectCarCameraConfigServiceImpl.java @@ -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 implements IProjectCarCameraConfigService { + @Autowired + private ProjectCarCameraConfigMapper projectCarCameraConfigMapper; + + @Override + public IPage queryPageList(HashMap param) { + QueryWrapper queryWrapper = getQueryWrapper(param); + Page page = PageUtil.getPage(param); + IPage pageList = this.page(page, queryWrapper); + pageList.setRecords(dealList(pageList.getRecords())); + return pageList; + } + + @Override + public List queryList(HashMap param) { + QueryWrapper queryWrapper = getQueryWrapper(param); + return dealList(this.list(queryWrapper)); + } + + private QueryWrapper getQueryWrapper(HashMap param) { + String alias = ""; + QueryWrapper queryWrapper = QueryGenerator.initPageQueryWrapper(ProjectCarCameraConfig.class, param, alias); + queryWrapper.orderByDesc(alias + RefUtil.fieldNameUlc(ProjectCarCameraConfig::getId)); + return queryWrapper; + } + + private List dealList(List 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() + .eq(ProjectCarCameraConfig::getProjectSn, projectCarCameraConfig.getProjectSn())); + if (pcc == null) { + add(projectCarCameraConfig); + } else { + edit(projectCarCameraConfig); + } + } + +}