Merge branch 'xjw_attendance' into prod
This commit is contained in:
commit
97c134b227
@ -0,0 +1,141 @@
|
||||
package com.zhgd.xmgl.modules.basicdata.controller;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
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.basicdata.entity.CompanyBigScreenConfig;
|
||||
import com.zhgd.xmgl.modules.basicdata.entity.dto.CompanyBigScreenConfigDto;
|
||||
import com.zhgd.xmgl.modules.basicdata.entity.vo.CompanyBigScreenConfigVo;
|
||||
import com.zhgd.xmgl.modules.basicdata.service.ICompanyBigScreenConfigService;
|
||||
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-07-15
|
||||
* @version: V1.0
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/xmgl/companyBigScreenConfig")
|
||||
@Slf4j
|
||||
@Api(tags = "企业大屏配置相关Api")
|
||||
public class CompanyBigScreenConfigController {
|
||||
@Lazy
|
||||
@Autowired
|
||||
private ICompanyBigScreenConfigService companyBigScreenConfigService;
|
||||
|
||||
/**
|
||||
* 分页列表查询
|
||||
*
|
||||
* @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<CompanyBigScreenConfigVo>> queryPageList(@ApiIgnore @RequestParam HashMap<String, Object> param) {
|
||||
return Result.success(companyBigScreenConfigService.queryPageList(param));
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@OperLog(operModul = "企业大屏配置管理", operType = "列表查询", operDesc = "列表查询企业大屏配置信息")
|
||||
@ApiOperation(value = "列表查询企业大屏配置信息", notes = "列表查询企业大屏配置信息", httpMethod = "GET")
|
||||
@GetMapping(value = "/list")
|
||||
public Result<List<CompanyBigScreenConfigVo>> queryList(@ApiIgnore @RequestParam HashMap<String, Object> param) {
|
||||
return Result.success(companyBigScreenConfigService.queryList(param));
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加
|
||||
*
|
||||
* @param companyBigScreenConfigDto
|
||||
* @return
|
||||
*/
|
||||
@OperLog(operModul = "企业大屏配置管理", operType = "添加", operDesc = "添加企业大屏配置信息")
|
||||
@ApiOperation(value = "添加企业大屏配置信息", notes = "添加企业大屏配置信息", httpMethod = "POST")
|
||||
@PostMapping(value = "/add")
|
||||
public Result<CompanyBigScreenConfigVo> add(@RequestBody @Validate CompanyBigScreenConfigDto companyBigScreenConfigDto) {
|
||||
companyBigScreenConfigService.add(companyBigScreenConfigDto);
|
||||
return Result.ok();
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑
|
||||
*
|
||||
* @param companyBigScreenConfigDto
|
||||
* @return
|
||||
*/
|
||||
@OperLog(operModul = "企业大屏配置管理", operType = "编辑", operDesc = "编辑企业大屏配置信息")
|
||||
@ApiOperation(value = "编辑企业大屏配置信息", notes = "编辑企业大屏配置信息", httpMethod = "POST")
|
||||
@PostMapping(value = "/edit")
|
||||
public Result<CompanyBigScreenConfig> edit(@RequestBody CompanyBigScreenConfigDto companyBigScreenConfigDto) {
|
||||
companyBigScreenConfigService.edit(companyBigScreenConfigDto);
|
||||
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<CompanyBigScreenConfig> delete(@ApiIgnore @RequestBody HashMap<String, Object> map) {
|
||||
companyBigScreenConfigService.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<CompanyBigScreenConfigVo> queryById(@RequestParam(name = "id", required = true) String id) {
|
||||
return Result.success(companyBigScreenConfigService.queryById(id));
|
||||
}
|
||||
|
||||
@OperLog(operModul = "企业大屏配置管理", operType = "", operDesc = "保存企业大屏配置信息")
|
||||
@ApiOperation(value = "保存企业大屏配置信息", notes = "保存企业大屏配置信息", httpMethod = "POST")
|
||||
@PostMapping(value = "/saveEntity")
|
||||
public Result<CompanyBigScreenConfig> saveEntity(@RequestBody CompanyBigScreenConfigDto companyBigScreenConfigDto) {
|
||||
CompanyBigScreenConfig config = companyBigScreenConfigService.getOne(new LambdaQueryWrapper<CompanyBigScreenConfig>()
|
||||
.eq(CompanyBigScreenConfig::getCompanySn, companyBigScreenConfigDto.getCompanySn()));
|
||||
if (config == null) {
|
||||
companyBigScreenConfigService.add(companyBigScreenConfigDto);
|
||||
} else {
|
||||
companyBigScreenConfigDto.setId(config.getId());
|
||||
companyBigScreenConfigService.edit(companyBigScreenConfigDto);
|
||||
}
|
||||
return Result.ok();
|
||||
}
|
||||
}
|
||||
@ -1,20 +1,32 @@
|
||||
package com.zhgd.xmgl.modules.basicdata.controller;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.jgoodies.common.base.Objects;
|
||||
import com.zhgd.jeecg.common.api.vo.Result;
|
||||
import com.zhgd.xmgl.modules.basicdata.entity.Company;
|
||||
import com.zhgd.xmgl.modules.basicdata.entity.SystemUser;
|
||||
import com.zhgd.xmgl.modules.basicdata.entity.vo.CompanyProjectTypeCountVo;
|
||||
import com.zhgd.xmgl.modules.basicdata.entity.vo.ProjectWorkAndInspectCountVo;
|
||||
import com.zhgd.xmgl.modules.basicdata.enums.SystemUserAccountTypeEnum;
|
||||
import com.zhgd.xmgl.modules.basicdata.service.ICompanyBigScreenStatisticsService;
|
||||
import com.zhgd.xmgl.modules.basicdata.service.ICompanyService;
|
||||
import com.zhgd.xmgl.modules.basicdata.service.ISystemUserService;
|
||||
import com.zhgd.xmgl.security.util.SecurityUtils;
|
||||
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.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 springfox.documentation.annotations.ApiIgnore;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@ -27,11 +39,16 @@ import java.util.Map;
|
||||
@RestController
|
||||
@RequestMapping("/xmgl/companyBigScreen")
|
||||
@Slf4j
|
||||
@Api(tags="企业大屏统计")
|
||||
@Api(tags = "企业大屏统计")
|
||||
public class CompanyBigScreenStatisticsController {
|
||||
@Autowired
|
||||
private ICompanyBigScreenStatisticsService companyBigScreenStatisticsService;
|
||||
|
||||
@Lazy
|
||||
@Autowired
|
||||
private ISystemUserService systemUserService;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private ICompanyService companyService;
|
||||
|
||||
@ApiOperation(value = "统计企业下项目类型统计", notes = "统计企业下项目类型统计")
|
||||
@ApiImplicitParams({
|
||||
@ -56,7 +73,7 @@ public class CompanyBigScreenStatisticsController {
|
||||
@ApiImplicitParam(name = "sn", value = "公司sn", paramType = "body", required = true, dataType = "String"),
|
||||
})
|
||||
@PostMapping("/selectWorkerAndAttendanceCount")
|
||||
public Result<Map<String,Object>> selectWorkerAndAttendanceCount(@RequestBody Map<String, Object> map) {
|
||||
public Result<Map<String, Object>> selectWorkerAndAttendanceCount(@RequestBody Map<String, Object> map) {
|
||||
return Result.success(companyBigScreenStatisticsService.selectWorkerAndAttendanceCount(map));
|
||||
}
|
||||
|
||||
@ -65,7 +82,7 @@ public class CompanyBigScreenStatisticsController {
|
||||
@ApiImplicitParam(name = "sn", value = "公司sn或项目sn", paramType = "body", required = true, dataType = "String"),
|
||||
})
|
||||
@PostMapping("/selectDevCountStatistics")
|
||||
public Result<Map<String,Object>> selectDevCountStatistics(@RequestBody Map<String, Object> map) {
|
||||
public Result<Map<String, Object>> selectDevCountStatistics(@RequestBody Map<String, Object> map) {
|
||||
return Result.success(companyBigScreenStatisticsService.selectDevCountStatistics(map));
|
||||
}
|
||||
|
||||
@ -74,7 +91,7 @@ public class CompanyBigScreenStatisticsController {
|
||||
@ApiImplicitParam(name = "sn", value = "公司sn或项目sn", paramType = "body", required = true, dataType = "String"),
|
||||
})
|
||||
@PostMapping("/selectDevCurrentAlarmCount")
|
||||
public Result<Map<String,Object>> selectDevCurrentAlarmCount(@RequestBody Map<String, Object> map) {
|
||||
public Result<Map<String, Object>> selectDevCurrentAlarmCount(@RequestBody Map<String, Object> map) {
|
||||
return Result.success(companyBigScreenStatisticsService.selectDevCurrentAlarmCount(map));
|
||||
}
|
||||
|
||||
@ -83,7 +100,7 @@ public class CompanyBigScreenStatisticsController {
|
||||
@ApiImplicitParam(name = "sn", value = "公司sn或项目sn", paramType = "body", required = true, dataType = "String"),
|
||||
})
|
||||
@PostMapping("/selectEnvironmentSevenDayAlarmList")
|
||||
public Result<List<Map<String,Object>>> selectEnvironmentSevenDayAlarmList(@RequestBody Map<String, Object> map) {
|
||||
public Result<List<Map<String, Object>>> selectEnvironmentSevenDayAlarmList(@RequestBody Map<String, Object> map) {
|
||||
return Result.success(companyBigScreenStatisticsService.selectEnvironmentSevenDayAlarmList(map));
|
||||
}
|
||||
|
||||
@ -92,7 +109,7 @@ public class CompanyBigScreenStatisticsController {
|
||||
@ApiImplicitParam(name = "sn", value = "公司sn或项目sn", paramType = "body", required = true, dataType = "String"),
|
||||
})
|
||||
@PostMapping("/selectTowerSevenDayAlarmList")
|
||||
public Result<List<Map<String,Object>>> selectTowerSevenDayAlarmList(@RequestBody Map<String, Object> map) {
|
||||
public Result<List<Map<String, Object>>> selectTowerSevenDayAlarmList(@RequestBody Map<String, Object> map) {
|
||||
return Result.success(companyBigScreenStatisticsService.selectTowerSevenDayAlarmList(map));
|
||||
}
|
||||
|
||||
@ -101,7 +118,7 @@ public class CompanyBigScreenStatisticsController {
|
||||
@ApiImplicitParam(name = "sn", value = "公司sn或项目sn", paramType = "body", required = true, dataType = "String"),
|
||||
})
|
||||
@PostMapping("/selectLifterSevenDayAlarmList")
|
||||
public Result<List<Map<String,Object>>> selectLifterSevenDayAlarmList(@RequestBody Map<String, Object> map) {
|
||||
public Result<List<Map<String, Object>>> selectLifterSevenDayAlarmList(@RequestBody Map<String, Object> map) {
|
||||
return Result.success(companyBigScreenStatisticsService.selectLifterSevenDayAlarmList(map));
|
||||
}
|
||||
|
||||
@ -110,7 +127,7 @@ public class CompanyBigScreenStatisticsController {
|
||||
@ApiImplicitParam(name = "sn", value = "公司sn或项目sn", paramType = "body", required = true, dataType = "String"),
|
||||
})
|
||||
@PostMapping("/selectDischargingSevenDayAlarmList")
|
||||
public Result<List<Map<String,Object>>> selectDischargingSevenDayAlarmList(@RequestBody Map<String, Object> map) {
|
||||
public Result<List<Map<String, Object>>> selectDischargingSevenDayAlarmList(@RequestBody Map<String, Object> map) {
|
||||
return Result.success(companyBigScreenStatisticsService.selectDischargingSevenDayAlarmList(map));
|
||||
}
|
||||
|
||||
@ -119,7 +136,7 @@ public class CompanyBigScreenStatisticsController {
|
||||
@ApiImplicitParam(name = "sn", value = "公司sn或项目sn", paramType = "body", required = true, dataType = "String"),
|
||||
})
|
||||
@PostMapping("/selectVideoSevenDayAlarmList")
|
||||
public Result<List<Map<String,Object>>> selectVideoSevenDayAlarmList(@RequestBody Map<String, Object> map) {
|
||||
public Result<List<Map<String, Object>>> selectVideoSevenDayAlarmList(@RequestBody Map<String, Object> map) {
|
||||
return Result.success(companyBigScreenStatisticsService.selectVideoSevenDayAlarmList(map));
|
||||
}
|
||||
|
||||
@ -131,4 +148,35 @@ public class CompanyBigScreenStatisticsController {
|
||||
public Result<ProjectWorkAndInspectCountVo> selectProjectWorkAndInspectCount(@RequestBody Map<String, Object> map) {
|
||||
return Result.success(companyBigScreenStatisticsService.selectProjectWorkAndInspectCount(map));
|
||||
}
|
||||
|
||||
@ApiOperation(value = "根据企业账号查询该公司的管辖区域范围(总公司看子级的管辖区域范围,其他公司他自己的管辖区域范围)", notes = "根据企业账号查询该公司的管辖区域范围(总公司看子级的管辖区域范围,其他公司他自己的管辖区域范围)", httpMethod = "POST")
|
||||
@ApiImplicitParams({
|
||||
// @ApiImplicitParam(name = "userId", value = "用户id", paramType = "body", required = true, dataType = "String"),
|
||||
})
|
||||
@PostMapping(value = "/getRangeAddrByUserId")
|
||||
public Result<List<Company>> getRangeAddrByUserId(@ApiIgnore @RequestBody HashMap<String, Object> paramMap) {
|
||||
Long userId = SecurityUtils.getUser().getUserId();
|
||||
if (userId == null) {
|
||||
return null;
|
||||
}
|
||||
SystemUser systemUser = systemUserService.getById(userId);
|
||||
if (systemUser == null) {
|
||||
return null;
|
||||
}
|
||||
List<Company> rtList = new ArrayList<>();
|
||||
Company company = companyService.getOne(new LambdaQueryWrapper<Company>()
|
||||
.eq(Company::getCompanySn, systemUser.getSn()));
|
||||
if (Objects.equals(systemUser.getAccountType(), SystemUserAccountTypeEnum.ENTERPRISE_ADMINISTRATOR_ACCOUNT.getValue())) {
|
||||
//查下级的管辖区域范围
|
||||
rtList = companyService.list(new LambdaQueryWrapper<Company>()
|
||||
.eq(Company::getCompanyType, 2)
|
||||
.eq(Company::getHeadquartersSn, company.getHeadquartersSn())
|
||||
);
|
||||
} else {
|
||||
//查自己的管辖区域范围
|
||||
rtList.add(company);
|
||||
}
|
||||
return Result.success(rtList);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -0,0 +1,65 @@
|
||||
package com.zhgd.xmgl.modules.basicdata.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* @Description: 企业大屏配置
|
||||
* @author: pds
|
||||
* @date: 2025-07-15
|
||||
* @version: V1.0
|
||||
*/
|
||||
@Data
|
||||
@TableName("company_big_screen_config")
|
||||
@ApiModel(value = "CompanyBigScreenConfig实体类", description = "CompanyBigScreenConfig")
|
||||
public class CompanyBigScreenConfig implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* id
|
||||
*/
|
||||
@TableId(type = IdType.ASSIGN_ID)
|
||||
@ApiModelProperty(value = "id")
|
||||
private java.lang.Long id;
|
||||
/**
|
||||
* companySn
|
||||
*/
|
||||
@ApiModelProperty(value = "companySn")
|
||||
private java.lang.String companySn;
|
||||
/**
|
||||
* 摄像头数量统计:是否启用,0否,1是
|
||||
*/
|
||||
@ApiModelProperty(value = "摄像头数量统计:是否启用,0否,1是")
|
||||
private java.lang.Integer enableVideoDev;
|
||||
/**
|
||||
* 扬尘设备监测数量统计:是否启用,0否,1是
|
||||
*/
|
||||
@ApiModelProperty(value = "扬尘设备监测数量统计:是否启用,0否,1是")
|
||||
private java.lang.Integer enableDustDev;
|
||||
/**
|
||||
* 执法记录仪设备监测数量统计:是否启用,0否,1是
|
||||
*/
|
||||
@ApiModelProperty(value = "执法记录仪设备监测数量统计:是否启用,0否,1是")
|
||||
private java.lang.Integer enablePoliceCameraDev;
|
||||
/**
|
||||
* 车辆道闸设备监测数量统计:是否启用,0否,1是
|
||||
*/
|
||||
@ApiModelProperty(value = "车辆道闸设备监测数量统计:是否启用,0否,1是")
|
||||
private java.lang.Integer enableCarCameraDev;
|
||||
/**
|
||||
* AI设备监测数量统计:是否启用,0否,1是
|
||||
*/
|
||||
@ApiModelProperty(value = "AI设备监测数量统计:是否启用,0否,1是")
|
||||
private java.lang.Integer enableAiAnalyseDev;
|
||||
/**
|
||||
* 临边防护监测数量统计:是否启用,0否,1是
|
||||
*/
|
||||
@ApiModelProperty(value = "临边防护监测数量统计:是否启用,0否,1是")
|
||||
private java.lang.Integer enableFrontierProtectionDev;
|
||||
}
|
||||
@ -0,0 +1,11 @@
|
||||
package com.zhgd.xmgl.modules.basicdata.entity.dto;
|
||||
|
||||
import com.zhgd.xmgl.modules.basicdata.entity.CompanyBigScreenConfig;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
@ApiModel(value = "CompanyBigScreenConfigDto实体类", description = "CompanyBigScreenConfigDto实体类")
|
||||
public class CompanyBigScreenConfigDto extends CompanyBigScreenConfig {
|
||||
|
||||
}
|
||||
@ -0,0 +1,11 @@
|
||||
package com.zhgd.xmgl.modules.basicdata.entity.vo;
|
||||
|
||||
import com.zhgd.xmgl.modules.basicdata.entity.CompanyBigScreenConfig;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
@ApiModel(value = "CompanyBigScreenConfigVo实体类", description = "CompanyBigScreenConfigVo实体类")
|
||||
public class CompanyBigScreenConfigVo extends CompanyBigScreenConfig {
|
||||
|
||||
}
|
||||
@ -0,0 +1,53 @@
|
||||
package com.zhgd.xmgl.modules.basicdata.mapper;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.HashMap;
|
||||
|
||||
import com.zhgd.xmgl.modules.basicdata.entity.CompanyBigScreenConfig;
|
||||
import com.zhgd.xmgl.modules.basicdata.entity.vo.CompanyBigScreenConfigVo;
|
||||
import com.zhgd.xmgl.modules.basicdata.entity.dto.CompanyBigScreenConfigDto;
|
||||
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-07-15
|
||||
* @version: V1.0
|
||||
*/
|
||||
@Mapper
|
||||
public interface CompanyBigScreenConfigMapper extends BaseMapper<CompanyBigScreenConfig> {
|
||||
|
||||
/**
|
||||
* 分页列表查询企业大屏配置信息
|
||||
*
|
||||
* @param page
|
||||
* @param queryWrapper
|
||||
* @param param
|
||||
* @return
|
||||
*/
|
||||
IPage<CompanyBigScreenConfigVo> queryList(Page<CompanyBigScreenConfigVo> page, @Param(Constants.WRAPPER) QueryWrapper<CompanyBigScreenConfigVo> queryWrapper, @Param("param") HashMap<String, Object> param);
|
||||
|
||||
/**
|
||||
* 列表查询企业大屏配置信息
|
||||
*
|
||||
* @param queryWrapper
|
||||
* @param param
|
||||
* @return
|
||||
*/
|
||||
List<CompanyBigScreenConfigVo> queryList(@Param(Constants.WRAPPER) QueryWrapper<CompanyBigScreenConfigVo> queryWrapper, @Param("param") HashMap<String, Object> param);
|
||||
|
||||
|
||||
/**
|
||||
* 通过id查询企业大屏配置信息
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
CompanyBigScreenConfigVo queryById(String id);
|
||||
}
|
||||
@ -0,0 +1,18 @@
|
||||
<?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.basicdata.mapper.CompanyBigScreenConfigMapper">
|
||||
<select id="queryList" resultType="com.zhgd.xmgl.modules.basicdata.entity.vo.CompanyBigScreenConfigVo">
|
||||
select * from (
|
||||
select t.*
|
||||
from company_big_screen_config t
|
||||
)t
|
||||
${ew.customSqlSegment}
|
||||
</select>
|
||||
<select id="queryById" resultType="com.zhgd.xmgl.modules.basicdata.entity.vo.CompanyBigScreenConfigVo">
|
||||
select * from (
|
||||
select t.*
|
||||
from company_big_screen_config t
|
||||
)t
|
||||
where t.id = #{id}
|
||||
</select>
|
||||
</mapper>
|
||||
@ -0,0 +1,67 @@
|
||||
package com.zhgd.xmgl.modules.basicdata.service;
|
||||
|
||||
import com.zhgd.xmgl.modules.basicdata.entity.CompanyBigScreenConfig;
|
||||
import com.zhgd.xmgl.modules.basicdata.entity.vo.CompanyBigScreenConfigVo;
|
||||
import com.zhgd.xmgl.modules.basicdata.entity.dto.CompanyBigScreenConfigDto;
|
||||
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-07-15
|
||||
* @version: V1.0
|
||||
*/
|
||||
public interface ICompanyBigScreenConfigService extends IService<CompanyBigScreenConfig> {
|
||||
/**
|
||||
* 分页列表查询企业大屏配置信息
|
||||
*
|
||||
* @param param 参数map
|
||||
* @return
|
||||
*/
|
||||
IPage<CompanyBigScreenConfigVo> queryPageList(HashMap<String, Object> param);
|
||||
|
||||
/**
|
||||
* 列表查询企业大屏配置信息
|
||||
*
|
||||
* @param param 参数map
|
||||
* @return
|
||||
*/
|
||||
List<CompanyBigScreenConfigVo> queryList(HashMap<String, Object> param);
|
||||
|
||||
/**
|
||||
* 添加企业大屏配置信息
|
||||
*
|
||||
* @param companyBigScreenConfigDto 企业大屏配置
|
||||
* @return
|
||||
*/
|
||||
void add(CompanyBigScreenConfigDto companyBigScreenConfigDto);
|
||||
|
||||
/**
|
||||
* 编辑企业大屏配置信息
|
||||
*
|
||||
* @param companyBigScreenConfigDto 企业大屏配置
|
||||
* @return
|
||||
*/
|
||||
void edit(CompanyBigScreenConfigDto companyBigScreenConfigDto);
|
||||
|
||||
/**
|
||||
* 根据id删除企业大屏配置信息
|
||||
*
|
||||
* @param id 企业大屏配置的id
|
||||
* @return
|
||||
*/
|
||||
void delete(String id);
|
||||
|
||||
/**
|
||||
* 根据id查询企业大屏配置信息
|
||||
*
|
||||
* @param id 企业大屏配置的id
|
||||
* @return
|
||||
*/
|
||||
CompanyBigScreenConfigVo queryById(String id);
|
||||
|
||||
}
|
||||
@ -0,0 +1,93 @@
|
||||
package com.zhgd.xmgl.modules.basicdata.service.impl;
|
||||
|
||||
import com.zhgd.jeecg.common.execption.OpenAlertException;
|
||||
import com.zhgd.xmgl.modules.basicdata.entity.CompanyBigScreenConfig;
|
||||
import com.zhgd.xmgl.modules.basicdata.entity.vo.CompanyBigScreenConfigVo;
|
||||
import com.zhgd.xmgl.modules.basicdata.entity.dto.CompanyBigScreenConfigDto;
|
||||
import com.zhgd.xmgl.modules.basicdata.mapper.CompanyBigScreenConfigMapper;
|
||||
import com.zhgd.xmgl.modules.basicdata.service.ICompanyBigScreenConfigService;
|
||||
import org.springframework.stereotype.Service;
|
||||
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.zhgd.jeecg.common.system.query.QueryGenerator;
|
||||
import com.zhgd.xmgl.util.PageUtil;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
|
||||
import com.zhgd.xmgl.util.RefUtil;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
/**
|
||||
* @Description: 企业大屏配置
|
||||
* @author: pds
|
||||
* @date: 2025-07-15
|
||||
* @version: V1.0
|
||||
*/
|
||||
@Service
|
||||
public class CompanyBigScreenConfigServiceImpl extends ServiceImpl<CompanyBigScreenConfigMapper, CompanyBigScreenConfig> implements ICompanyBigScreenConfigService {
|
||||
@Autowired
|
||||
private CompanyBigScreenConfigMapper companyBigScreenConfigMapper;
|
||||
|
||||
@Override
|
||||
public IPage<CompanyBigScreenConfigVo> queryPageList(HashMap<String, Object> param) {
|
||||
QueryWrapper<CompanyBigScreenConfigVo> queryWrapper = this.getQueryWrapper(param);
|
||||
Page<CompanyBigScreenConfigVo> page = PageUtil.getPage(param);
|
||||
IPage<CompanyBigScreenConfigVo> pageList = baseMapper.queryList(page, queryWrapper, param);
|
||||
pageList.setRecords(this.dealList(pageList.getRecords()));
|
||||
return pageList;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<CompanyBigScreenConfigVo> queryList(HashMap<String, Object> param) {
|
||||
QueryWrapper<CompanyBigScreenConfigVo> queryWrapper = getQueryWrapper(param);
|
||||
return dealList(baseMapper.queryList(queryWrapper, param));
|
||||
}
|
||||
|
||||
private QueryWrapper<CompanyBigScreenConfigVo> getQueryWrapper(HashMap<String, Object> param) {
|
||||
QueryWrapper<CompanyBigScreenConfigVo> queryWrapper = QueryGenerator.initPageQueryWrapper(CompanyBigScreenConfigVo.class, param, true);
|
||||
queryWrapper.orderByDesc(RefUtil.fieldNameUlc(CompanyBigScreenConfigVo::getId));
|
||||
return queryWrapper;
|
||||
}
|
||||
|
||||
private List<CompanyBigScreenConfigVo> dealList(List<CompanyBigScreenConfigVo> list) {
|
||||
return list;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void add(CompanyBigScreenConfigDto companyBigScreenConfigDto) {
|
||||
companyBigScreenConfigDto.setId(null);
|
||||
baseMapper.insert(companyBigScreenConfigDto);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void edit(CompanyBigScreenConfigDto companyBigScreenConfigDto) {
|
||||
CompanyBigScreenConfig oldCompanyBigScreenConfig = baseMapper.selectById(companyBigScreenConfigDto.getId());
|
||||
if (oldCompanyBigScreenConfig == null) {
|
||||
throw new OpenAlertException("未找到对应实体");
|
||||
}
|
||||
baseMapper.updateById(companyBigScreenConfigDto);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void delete(String id) {
|
||||
CompanyBigScreenConfig companyBigScreenConfig = baseMapper.selectById(id);
|
||||
if (companyBigScreenConfig == null) {
|
||||
throw new OpenAlertException("未找到对应实体");
|
||||
}
|
||||
baseMapper.deleteById(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public CompanyBigScreenConfigVo queryById(String id) {
|
||||
CompanyBigScreenConfigVo entity = baseMapper.queryById(id);
|
||||
if (entity == null) {
|
||||
throw new OpenAlertException("未找到对应实体");
|
||||
}
|
||||
return entity;
|
||||
}
|
||||
|
||||
}
|
||||
@ -32,4 +32,14 @@ public class CompanyProjectStat {
|
||||
|
||||
@ApiModelProperty(value = "项目列表")
|
||||
private List<Project> projectList;
|
||||
|
||||
@ApiModelProperty(value = "执法记录仪数量")
|
||||
private Integer policeCameraNum;
|
||||
@ApiModelProperty(value = "车辆道闸数量")
|
||||
private Integer carCameraNum;
|
||||
@ApiModelProperty(value = "AI设备数量")
|
||||
private Integer aiAnalyseHardNum;
|
||||
@ApiModelProperty(value = "临边防护(有网)数量")
|
||||
private Integer frontierProtectionDevNum;
|
||||
|
||||
}
|
||||
|
||||
@ -1,11 +1,8 @@
|
||||
package com.zhgd.xmgl.modules.project.entity.dto;
|
||||
|
||||
import com.zhgd.xmgl.modules.project.entity.Project;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class ProjectDevStat {
|
||||
|
||||
@ -17,4 +14,14 @@ public class ProjectDevStat {
|
||||
|
||||
@ApiModelProperty(value = "扬尘设备")
|
||||
private Integer environmentDevNum;
|
||||
|
||||
@ApiModelProperty(value = "执法记录仪数量")
|
||||
private Integer policeCameraNum;
|
||||
@ApiModelProperty(value = "车辆道闸数量")
|
||||
private Integer carCameraNum;
|
||||
@ApiModelProperty(value = "AI设备数量")
|
||||
private Integer aiAnalyseHardNum;
|
||||
@ApiModelProperty(value = "临边防护(有网)数量")
|
||||
private Integer frontierProtectionDevNum;
|
||||
|
||||
}
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
package com.zhgd.xmgl.modules.project.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.convert.Convert;
|
||||
import cn.hutool.core.date.DateField;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.NumberUtil;
|
||||
@ -44,13 +45,18 @@ import com.zhgd.xmgl.modules.bimface.entity.BimfaceConfig;
|
||||
import com.zhgd.xmgl.modules.bimface.mapper.BimfaceConfigMapper;
|
||||
import com.zhgd.xmgl.modules.car.entity.CarCamera;
|
||||
import com.zhgd.xmgl.modules.car.mapper.CarCameraMapper;
|
||||
import com.zhgd.xmgl.modules.car.service.ICarCameraService;
|
||||
import com.zhgd.xmgl.modules.car.service.ICarInfoService;
|
||||
import com.zhgd.xmgl.modules.electrical.entity.ElectricalDev;
|
||||
import com.zhgd.xmgl.modules.electrical.service.IElectricalDevService;
|
||||
import com.zhgd.xmgl.modules.environment.entity.EnvironmentDev;
|
||||
import com.zhgd.xmgl.modules.environment.service.IAirQualityAnalysisService;
|
||||
import com.zhgd.xmgl.modules.environment.service.IEnvironmentDevService;
|
||||
import com.zhgd.xmgl.modules.frontier.entity.FrontierProtectionDev;
|
||||
import com.zhgd.xmgl.modules.frontier.service.FrontierProtectionDevService;
|
||||
import com.zhgd.xmgl.modules.massrebound.service.IFunctionRoomService;
|
||||
import com.zhgd.xmgl.modules.policecamera.entity.PoliceCameraItem;
|
||||
import com.zhgd.xmgl.modules.policecamera.service.IPoliceCameraItemService;
|
||||
import com.zhgd.xmgl.modules.project.entity.Project;
|
||||
import com.zhgd.xmgl.modules.project.entity.ProjectConfig;
|
||||
import com.zhgd.xmgl.modules.project.entity.WSSsdrAddress;
|
||||
@ -66,10 +72,12 @@ import com.zhgd.xmgl.modules.project.service.IProjectService;
|
||||
import com.zhgd.xmgl.modules.project.service.IProjectVideoConfigService;
|
||||
import com.zhgd.xmgl.modules.standard.entity.StandardDev;
|
||||
import com.zhgd.xmgl.modules.standard.service.IStandardDevService;
|
||||
import com.zhgd.xmgl.modules.video.entity.AiAnalyseHardWareRecord;
|
||||
import com.zhgd.xmgl.modules.video.entity.VideoGroup;
|
||||
import com.zhgd.xmgl.modules.video.entity.VideoItem;
|
||||
import com.zhgd.xmgl.modules.video.mapper.VideoGroupMapper;
|
||||
import com.zhgd.xmgl.modules.video.mapper.VideoItemMapper;
|
||||
import com.zhgd.xmgl.modules.video.service.IAiAnalyseHardWareRecordService;
|
||||
import com.zhgd.xmgl.modules.worker.entity.UfaceDev;
|
||||
import com.zhgd.xmgl.modules.worker.service.*;
|
||||
import com.zhgd.xmgl.util.*;
|
||||
@ -78,6 +86,7 @@ import org.apache.commons.collections.MapUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.context.annotation.Lazy;
|
||||
import org.springframework.security.crypto.password.PasswordEncoder;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
@ -189,6 +198,18 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
||||
*/
|
||||
@Value("${fmsMonitoringScreenPageUrl:}")
|
||||
private String fmsMonitoringScreenPageUrl;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private IAiAnalyseHardWareRecordService aiAnalyseHardWareRecordService;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private ICarCameraService carCameraService;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private IPoliceCameraItemService policeCameraItemService;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private FrontierProtectionDevService frontierProtectionDevService;
|
||||
|
||||
@Override
|
||||
public List<String> getProjectSnList(String sn) {
|
||||
@ -490,14 +511,30 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
||||
companyProjectStat.setCompleteProject((int) projectList.stream().filter(p -> p.getBulidStatus() == 4).count());
|
||||
companyProjectStat.setVideoNum(videoItems.size());
|
||||
companyProjectStat.setEnvironmentDevNum(environmentDevList.size());
|
||||
List<PoliceCameraItem> policeCameras = policeCameraItemService.list(new LambdaQueryWrapper<PoliceCameraItem>()
|
||||
.in(PoliceCameraItem::getProjectSn, snList));
|
||||
companyProjectStat.setPoliceCameraNum(policeCameras.size());
|
||||
List<CarCamera> carCameras = carCameraService.list(new LambdaQueryWrapper<CarCamera>()
|
||||
.in(CarCamera::getProjectSn, snList));
|
||||
companyProjectStat.setCarCameraNum(carCameras.size());
|
||||
List<AiAnalyseHardWareRecord> aiAnalyseHards = aiAnalyseHardWareRecordService.list(new LambdaQueryWrapper<AiAnalyseHardWareRecord>()
|
||||
.in(AiAnalyseHardWareRecord::getProjectSn, snList));
|
||||
companyProjectStat.setAiAnalyseHardNum(aiAnalyseHards.size());
|
||||
List<FrontierProtectionDev> frontierProtectionDevs = frontierProtectionDevService.list(new LambdaQueryWrapper<FrontierProtectionDev>()
|
||||
.in(FrontierProtectionDev::getProjectSn, snList));
|
||||
companyProjectStat.setFrontierProtectionDevNum(frontierProtectionDevs.size());
|
||||
List<ProjectDevStat> projectDevStatList = new ArrayList<>();
|
||||
for (Project project : projectList) {
|
||||
ProjectDevStat projectDevStat = new ProjectDevStat();
|
||||
projectDevStat.setProjectName(project.getProjectName());
|
||||
List<String> groupIds = videoGroups.stream().filter(v -> v.getProjectSn().equals(project.getProjectSn())).map(v -> v.getId().toString()).collect(Collectors.toList());
|
||||
groupIds.add("0");
|
||||
projectDevStat.setVideoNum((int) videoItems.stream().filter(v -> groupIds.contains(v.getGroupId())).count());
|
||||
projectDevStat.setVideoNum((int) videoItems.stream().filter(v -> groupIds.contains(Convert.toStr(v.getGroupId()))).count());
|
||||
projectDevStat.setEnvironmentDevNum((int) environmentDevList.stream().filter(e -> e.getProjectSn().equals(project.getProjectSn())).count());
|
||||
projectDevStat.setPoliceCameraNum((int) policeCameras.stream().filter(e -> e.getProjectSn().equals(project.getProjectSn())).count());
|
||||
projectDevStat.setCarCameraNum((int) carCameras.stream().filter(e -> e.getProjectSn().equals(project.getProjectSn())).count());
|
||||
projectDevStat.setAiAnalyseHardNum((int) aiAnalyseHards.stream().filter(e -> e.getProjectSn().equals(project.getProjectSn())).count());
|
||||
projectDevStat.setFrontierProtectionDevNum((int) frontierProtectionDevs.stream().filter(e -> e.getProjectSn().equals(project.getProjectSn())).count());
|
||||
projectDevStatList.add(projectDevStat);
|
||||
}
|
||||
companyProjectStat.setProjectDevStatList(projectDevStatList);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user