init
parent
1df0fbdfb0
commit
e5173a33f0
|
|
@ -2,10 +2,10 @@ nacos:
|
|||
url: 192.168.20.100:30290
|
||||
namespace: jjb-dragon
|
||||
application:
|
||||
name: jjb-saas-zcloud-key_project
|
||||
name: jjb-saas-zcloud-key-project
|
||||
version:
|
||||
gateway: keyProject
|
||||
cn-name: 重点工程
|
||||
gateway: keyProjectInfo
|
||||
cn-name: 重点作业
|
||||
spring:
|
||||
application:
|
||||
name: ${application.name}${application.version}
|
||||
|
|
|
|||
|
|
@ -8,9 +8,12 @@ import com.alibaba.cola.dto.SingleResponse;
|
|||
import com.jjb.saas.framework.auth.model.SSOUser;
|
||||
import com.jjb.saas.framework.auth.utils.AuthContext;
|
||||
import com.zcloud.key.project.api.KeyProjectCameraServiceI;
|
||||
import com.zcloud.key.project.dto.CameraListCmd;
|
||||
import com.zcloud.key.project.dto.KeyProjectCameraAddCmd;
|
||||
import com.zcloud.key.project.dto.KeyProjectCameraPageQry;
|
||||
import com.zcloud.key.project.dto.KeyProjectCameraUpdateCmd;
|
||||
import com.zcloud.key.project.dto.clientobject.CameraInfoCO;
|
||||
import com.zcloud.key.project.dto.clientobject.KeyProjectCO;
|
||||
import com.zcloud.key.project.dto.clientobject.KeyProjectCameraCO;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
|
|
@ -33,50 +36,48 @@ import java.util.ArrayList;
|
|||
public class KeyProjectCameraController {
|
||||
private final KeyProjectCameraServiceI keyProjectCameraService;
|
||||
|
||||
@ApiOperation("新增")
|
||||
/* @ApiOperation("新增摄像头")
|
||||
@PostMapping("/save")
|
||||
public SingleResponse<KeyProjectCameraCO> add(@Validated @RequestBody KeyProjectCameraAddCmd cmd) {
|
||||
SSOUser ssoUser = AuthContext.getCurrentUser();
|
||||
return keyProjectCameraService.add(cmd);
|
||||
}
|
||||
}*/
|
||||
|
||||
@ApiOperation("分页")
|
||||
@ApiOperation("重点作业下摄像头分页")
|
||||
@PostMapping("/list")
|
||||
public PageResponse<KeyProjectCameraCO> page(@RequestBody KeyProjectCameraPageQry qry) {
|
||||
return keyProjectCameraService.listPage(qry);
|
||||
}
|
||||
|
||||
@ApiOperation("所有数据")
|
||||
@ApiOperation("重点作业下摄像头所有数据")
|
||||
@GetMapping("/listAll")
|
||||
public MultiResponse<KeyProjectCameraCO> listAll() {
|
||||
return MultiResponse.of(new ArrayList<KeyProjectCameraCO>());
|
||||
public MultiResponse<KeyProjectCameraCO> listAll(@RequestBody KeyProjectCameraPageQry qry) {
|
||||
return MultiResponse.of(keyProjectCameraService.listAll(qry));
|
||||
}
|
||||
|
||||
@ApiOperation("详情")
|
||||
/* @ApiOperation("详情")
|
||||
@GetMapping("/{id}")
|
||||
public SingleResponse<KeyProjectCameraCO> getInfoById(@PathVariable("id") Long id) {
|
||||
return SingleResponse.of(new KeyProjectCameraCO());
|
||||
}
|
||||
}*/
|
||||
|
||||
@ApiOperation("删除")
|
||||
@DeleteMapping("/{id}")
|
||||
@PostMapping("/{id}")
|
||||
public Response remove(@PathVariable("id") Long id) {
|
||||
keyProjectCameraService.remove(id);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
|
||||
@ApiOperation("删除多个")
|
||||
@DeleteMapping("/ids")
|
||||
@PostMapping("/ids")
|
||||
public Response removeBatch(@RequestParam Long[] ids) {
|
||||
keyProjectCameraService.removeBatch(ids);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
|
||||
@ApiOperation("修改")
|
||||
@PutMapping("/edit")
|
||||
public SingleResponse edit(@Validated @RequestBody KeyProjectCameraUpdateCmd keyProjectCameraUpdateCmd) {
|
||||
keyProjectCameraService.edit(keyProjectCameraUpdateCmd);
|
||||
return SingleResponse.buildSuccess();
|
||||
@ApiOperation("摄像头系统-获取所有的摄像头数据")
|
||||
@PostMapping("/listCameraAll")
|
||||
public PageResponse<CameraInfoCO> listCameraAll(@RequestBody CameraListCmd cameraListCmd) {
|
||||
return keyProjectCameraService.listCameraAll(cameraListCmd);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -5,13 +5,10 @@ import com.alibaba.cola.dto.MultiResponse;
|
|||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.alibaba.cola.dto.Response;
|
||||
import com.alibaba.cola.dto.SingleResponse;
|
||||
import com.jjb.saas.framework.auth.model.SSOUser;
|
||||
import com.jjb.saas.framework.auth.utils.AuthContext;
|
||||
import com.zcloud.key.project.api.KeyProjectServiceI;
|
||||
import com.zcloud.key.project.dto.KeyProjectAddCmd;
|
||||
import com.zcloud.key.project.dto.KeyProjectPageQry;
|
||||
import com.zcloud.key.project.dto.KeyProjectUpdateCmd;
|
||||
import com.zcloud.key.project.dto.clientobject.KeyProjectCO;
|
||||
import com.zcloud.key.project.domain.enums.KeyProjectApplyStatusEnum;
|
||||
import com.zcloud.key.project.dto.*;
|
||||
import com.zcloud.key.project.dto.clientobject.*;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.AllArgsConstructor;
|
||||
|
|
@ -27,56 +24,102 @@ import java.util.ArrayList;
|
|||
* @Date 2026-03-16 10:00:38
|
||||
*/
|
||||
@Api(tags = "重点作业表")
|
||||
@RequestMapping("/${application.gateway}/keyProject")
|
||||
@RequestMapping("/${application.gateway}/info")
|
||||
@RestController
|
||||
@AllArgsConstructor
|
||||
public class KeyProjectController {
|
||||
private final KeyProjectServiceI keyProjectService;
|
||||
|
||||
@ApiOperation("新增")
|
||||
@ApiOperation("重点作业新增")
|
||||
@PostMapping("/save")
|
||||
public SingleResponse<KeyProjectCO> add(@Validated @RequestBody KeyProjectAddCmd cmd) {
|
||||
SSOUser ssoUser = AuthContext.getCurrentUser();
|
||||
cmd.setApplyStatus(KeyProjectApplyStatusEnum.NOT_STARTED.getCode());
|
||||
|
||||
return keyProjectService.add(cmd);
|
||||
}
|
||||
@ApiOperation("重点作业暂存")
|
||||
@PostMapping("/saveStorage")
|
||||
public SingleResponse<KeyProjectCO> saveStorage(@RequestBody KeyProjectAddCmd cmd) {
|
||||
cmd.setApplyStatus(KeyProjectApplyStatusEnum.TEMPORARY_SAVE.getCode());
|
||||
return keyProjectService.add(cmd);
|
||||
}
|
||||
|
||||
@ApiOperation("分页")
|
||||
@ApiOperation("重点作业管理分页")
|
||||
@PostMapping("/list")
|
||||
public PageResponse<KeyProjectCO> page(@RequestBody KeyProjectPageQry qry) {
|
||||
return keyProjectService.listPage(qry);
|
||||
}
|
||||
|
||||
@ApiOperation("所有数据")
|
||||
@ApiOperation("重点作业确认分页-监管-分公司")
|
||||
@PostMapping("/pageConfirm")
|
||||
public PageResponse<KeyProjectCO> pageConfirm(@RequestBody KeyProjectPageQry qry) {
|
||||
return keyProjectService.pageConfirm(qry);
|
||||
}
|
||||
|
||||
/*@ApiOperation("所有数据")
|
||||
@GetMapping("/listAll")
|
||||
public MultiResponse<KeyProjectCO> listAll() {
|
||||
return MultiResponse.of(new ArrayList<KeyProjectCO>());
|
||||
}
|
||||
}*/
|
||||
|
||||
@ApiOperation("详情")
|
||||
@ApiOperation("重点作业详情")
|
||||
@GetMapping("/{id}")
|
||||
public SingleResponse<KeyProjectCO> getInfoById(@PathVariable("id") Long id) {
|
||||
return SingleResponse.of(new KeyProjectCO());
|
||||
return SingleResponse.of(keyProjectService.getInfoById(id));
|
||||
}
|
||||
|
||||
@ApiOperation("删除")
|
||||
@DeleteMapping("/{id}")
|
||||
@PostMapping("/{id}")
|
||||
public Response remove(@PathVariable("id") Long id) {
|
||||
keyProjectService.remove(id);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
|
||||
@ApiOperation("删除多个")
|
||||
/* @ApiOperation("删除多个")
|
||||
@DeleteMapping("/ids")
|
||||
public Response removeBatch(@RequestParam Long[] ids) {
|
||||
keyProjectService.removeBatch(ids);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
}*/
|
||||
|
||||
@ApiOperation("修改")
|
||||
@PutMapping("/edit")
|
||||
@PostMapping("/edit")
|
||||
public SingleResponse edit(@Validated @RequestBody KeyProjectUpdateCmd keyProjectUpdateCmd) {
|
||||
keyProjectService.edit(keyProjectUpdateCmd);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
@ApiOperation("重点作业修改暂存")
|
||||
@PostMapping("/editStorage")
|
||||
public SingleResponse<KeyProjectCO> editStorage(@RequestBody KeyProjectUpdateCmd keyProjectUpdateCmd) {
|
||||
keyProjectService.edit(keyProjectUpdateCmd);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
|
||||
@ApiOperation("修改状态")
|
||||
@PostMapping("/editStatus")
|
||||
public SingleResponse editStatus(@Validated @RequestBody KeyProjectUpdateStatusCmd keyProjectUpdateStatusCmd) {
|
||||
keyProjectService.editStatus(keyProjectUpdateStatusCmd);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
|
||||
@ApiOperation("股份端-企业重点作业情况统计")
|
||||
@PostMapping("/corpStatistics")
|
||||
public PageResponse<CorpStatisticsCO> corpStatistics(@RequestBody CorpStatisticsPageQry qry) {
|
||||
return keyProjectService.corpStatistics(qry);
|
||||
}
|
||||
@ApiOperation("分公司-重点作业情况统计")
|
||||
@PostMapping("/keyProjectStatistics")
|
||||
public PageResponse<KeyProjectStatisticsCO> keyProjectStatistics(@RequestBody KeyProjectStatisticsPageQry qry) {
|
||||
return keyProjectService.keyProjectStatistics(qry);
|
||||
}
|
||||
|
||||
@ApiOperation("相关方-重点作业情况统计")
|
||||
@PostMapping("/xgfCorpStatistics")
|
||||
public PageResponse<XgfCorpStatisticsCO> xgfCorpStatistics(@RequestBody XgfCorpStatisticsPageQry qry) {
|
||||
return keyProjectService.xgfCorpStatistics(qry);
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,14 +1,23 @@
|
|||
package com.zcloud.key.project.command;
|
||||
|
||||
import com.alibaba.cola.exception.BizException;
|
||||
import com.zcloud.gbscommon.utils.Tools;
|
||||
import com.zcloud.key.project.command.convertor.KeyProjectCameraCoConvertor;
|
||||
import com.zcloud.key.project.domain.enums.KeyProjectApplyStatusEnum;
|
||||
import com.zcloud.key.project.domain.gateway.KeyProjectCameraGateway;
|
||||
import com.zcloud.key.project.domain.gateway.KeyProjectGateway;
|
||||
import com.zcloud.key.project.domain.model.KeyProjectE;
|
||||
import com.zcloud.key.project.dto.KeyProjectAddCmd;
|
||||
import com.zcloud.key.project.dto.KeyProjectCameraAddCmd;
|
||||
import com.zcloud.key.project.persistence.dataobject.KeyProjectCameraDO;
|
||||
import com.zcloud.key.project.persistence.repository.KeyProjectCameraRepository;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* web-app
|
||||
|
|
@ -20,6 +29,9 @@ import org.springframework.transaction.annotation.Transactional;
|
|||
@AllArgsConstructor
|
||||
public class KeyProjectAddExe {
|
||||
private final KeyProjectGateway keyProjectGateway;
|
||||
private final KeyProjectCameraRepository keyProjectCameraRepository;
|
||||
private final KeyProjectCameraCoConvertor keyProjectCameraCoConvertor;
|
||||
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean execute(KeyProjectAddCmd cmd) {
|
||||
|
|
@ -34,6 +46,16 @@ public class KeyProjectAddExe {
|
|||
if (!res) {
|
||||
throw new BizException("保存失败");
|
||||
}
|
||||
if(cmd.getKeyProjectCameraAddCmdList()!=null) {
|
||||
List<KeyProjectCameraAddCmd> keyProjectCameraAddCmdList = cmd.getKeyProjectCameraAddCmdList();
|
||||
|
||||
List<KeyProjectCameraDO> keyProjectCameraDOList = keyProjectCameraCoConvertor.converCmdsToDOs(keyProjectCameraAddCmdList);
|
||||
keyProjectCameraDOList.forEach(keyProjectCameraAddCmd -> {
|
||||
keyProjectCameraAddCmd.setKeyProjectId(keyProjectE.getKeyProjectId());
|
||||
keyProjectCameraAddCmd.setKeyProjectCameraId(Tools.get32UUID());
|
||||
});
|
||||
keyProjectCameraRepository.saveBatch(keyProjectCameraDOList);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,7 +1,10 @@
|
|||
package com.zcloud.key.project.command;
|
||||
|
||||
import com.alibaba.cola.exception.BizException;
|
||||
import com.zcloud.key.project.domain.enums.KeyProjectApplyStatusEnum;
|
||||
import com.zcloud.key.project.domain.gateway.KeyProjectGateway;
|
||||
import com.zcloud.key.project.persistence.dataobject.KeyProjectDO;
|
||||
import com.zcloud.key.project.persistence.repository.KeyProjectRepository;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
|
@ -17,9 +20,17 @@ import org.springframework.transaction.annotation.Transactional;
|
|||
@AllArgsConstructor
|
||||
public class KeyProjectRemoveExe {
|
||||
private final KeyProjectGateway keyProjectGateway;
|
||||
private final KeyProjectRepository keyProjectRepository;
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean execute(Long id) {
|
||||
KeyProjectDO byId = keyProjectRepository.getById(id);
|
||||
if (byId == null) {
|
||||
throw new BizException("数据不存在");
|
||||
}
|
||||
if(!KeyProjectApplyStatusEnum.NOT_STARTED.getCode().equals(byId.getApplyStatus()) || !KeyProjectApplyStatusEnum.TEMPORARY_SAVE.getCode().equals(byId.getApplyStatus())){
|
||||
throw new BizException("该状态项目不允许删除");
|
||||
}
|
||||
boolean res = keyProjectGateway.deletedKeyProjectById(id);
|
||||
if (!res) {
|
||||
throw new BizException("删除失败");
|
||||
|
|
|
|||
|
|
@ -1,14 +1,27 @@
|
|||
package com.zcloud.key.project.command;
|
||||
|
||||
import com.alibaba.cola.exception.BizException;
|
||||
import com.zcloud.gbscommon.utils.Tools;
|
||||
import com.zcloud.key.project.command.convertor.KeyProjectCameraCoConvertor;
|
||||
import com.zcloud.key.project.domain.enums.KeyProjectApplyStatusEnum;
|
||||
import com.zcloud.key.project.domain.gateway.KeyProjectGateway;
|
||||
import com.zcloud.key.project.domain.model.KeyProjectE;
|
||||
import com.zcloud.key.project.dto.KeyProjectCameraAddCmd;
|
||||
import com.zcloud.key.project.dto.KeyProjectUpdateCmd;
|
||||
import com.zcloud.key.project.dto.KeyProjectUpdateStatusCmd;
|
||||
import com.zcloud.key.project.persistence.dataobject.KeyProjectCameraDO;
|
||||
import com.zcloud.key.project.persistence.dataobject.KeyProjectDO;
|
||||
import com.zcloud.key.project.persistence.repository.KeyProjectCameraRepository;
|
||||
import com.zcloud.key.project.persistence.repository.KeyProjectRepository;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* web-app
|
||||
|
|
@ -20,15 +33,74 @@ import org.springframework.transaction.annotation.Transactional;
|
|||
@AllArgsConstructor
|
||||
public class KeyProjectUpdateExe {
|
||||
private final KeyProjectGateway keyProjectGateway;
|
||||
private final KeyProjectRepository keyProjectRepository;
|
||||
private final KeyProjectCameraCoConvertor keyProjectCameraCoConvertor;
|
||||
private final KeyProjectCameraRepository keyProjectCameraRepository;
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void execute(KeyProjectUpdateCmd keyProjectUpdateCmd) {
|
||||
KeyProjectDO byId = keyProjectRepository.getById(keyProjectUpdateCmd.getId());
|
||||
if (byId == null) {
|
||||
throw new BizException("数据不存在");
|
||||
}
|
||||
if (!Arrays.asList(
|
||||
KeyProjectApplyStatusEnum.NOT_STARTED.getCode(),
|
||||
KeyProjectApplyStatusEnum.TEMPORARY_SAVE.getCode()
|
||||
).contains(byId.getApplyStatus())) {
|
||||
throw new BizException("该状态项目不允许修改");
|
||||
}
|
||||
KeyProjectE keyProjectE = new KeyProjectE();
|
||||
BeanUtils.copyProperties(keyProjectUpdateCmd, keyProjectE);
|
||||
boolean res = keyProjectGateway.update(keyProjectE);
|
||||
if (!res) {
|
||||
throw new BizException("修改失败");
|
||||
}
|
||||
keyProjectCameraRepository.deleteByKeyProjectId(keyProjectE.getKeyProjectId());
|
||||
if(keyProjectUpdateCmd.getKeyProjectCameraAddCmdList()!=null){
|
||||
List<KeyProjectCameraAddCmd> keyProjectCameraAddCmdList = keyProjectUpdateCmd.getKeyProjectCameraAddCmdList();
|
||||
List<KeyProjectCameraDO> keyProjectCameraDOList =keyProjectCameraCoConvertor.converCmdsToDOs(keyProjectCameraAddCmdList);
|
||||
keyProjectCameraDOList.forEach(keyProjectCameraAddCmd -> {
|
||||
keyProjectCameraAddCmd.setKeyProjectId(keyProjectE.getKeyProjectId());
|
||||
keyProjectCameraAddCmd.setKeyProjectCameraId(Tools.get32UUID());
|
||||
});
|
||||
keyProjectCameraRepository.saveBatch(keyProjectCameraDOList);
|
||||
}
|
||||
}
|
||||
|
||||
public void editStatus(KeyProjectUpdateStatusCmd keyProjectUpdateStatusCmd) {
|
||||
KeyProjectDO byId = keyProjectRepository.getById(keyProjectUpdateStatusCmd.getId());
|
||||
if (byId == null) {
|
||||
throw new BizException("数据不存在");
|
||||
}
|
||||
KeyProjectE keyProjectE = new KeyProjectE();
|
||||
BeanUtils.copyProperties(keyProjectUpdateStatusCmd, keyProjectE);
|
||||
if(KeyProjectApplyStatusEnum.START_APPLY.getCode().equals(keyProjectUpdateStatusCmd.getApplyStatus())){
|
||||
keyProjectE.setApplyDateTime(LocalDateTime.now());
|
||||
}
|
||||
if(KeyProjectApplyStatusEnum.IN_PROGRESS.getCode().equals(keyProjectUpdateStatusCmd.getApplyStatus())){
|
||||
keyProjectE.setApplyConfirmDateTime(LocalDateTime.now());
|
||||
}
|
||||
if(KeyProjectApplyStatusEnum.FINISH_APPLY.getCode().equals(keyProjectUpdateStatusCmd.getApplyStatus())){
|
||||
keyProjectE.setCompletedDateTime(LocalDateTime.now());
|
||||
}
|
||||
if(KeyProjectApplyStatusEnum.FINISHED.getCode().equals(keyProjectUpdateStatusCmd.getApplyStatus())){
|
||||
keyProjectE.setCompletedConfirmDateTime(LocalDateTime.now());
|
||||
}
|
||||
boolean res = keyProjectGateway.update(keyProjectE);
|
||||
if (!res) {
|
||||
throw new BizException("修改失败");
|
||||
}
|
||||
if(keyProjectUpdateStatusCmd.getKeyProjectCameraAddCmdList()!=null){
|
||||
keyProjectCameraRepository.deleteByKeyProjectId(byId.getKeyProjectId());
|
||||
List<KeyProjectCameraAddCmd> keyProjectCameraAddCmdList = keyProjectUpdateStatusCmd.getKeyProjectCameraAddCmdList();
|
||||
List<KeyProjectCameraDO> keyProjectCameraDOList =keyProjectCameraCoConvertor.converCmdsToDOs(keyProjectCameraAddCmdList);
|
||||
keyProjectCameraDOList.forEach(keyProjectCameraAddCmd -> {
|
||||
keyProjectCameraAddCmd.setKeyProjectId(byId.getKeyProjectId());
|
||||
keyProjectCameraAddCmd.setKeyProjectCameraId(Tools.get32UUID());
|
||||
});
|
||||
keyProjectCameraRepository.saveBatch(keyProjectCameraDOList);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,9 @@
|
|||
package com.zcloud.key.project.command.convertor;
|
||||
|
||||
import com.zcloud.key.project.dto.KeyProjectCameraAddCmd;
|
||||
import com.zcloud.key.project.dto.clientobject.CameraInfoCO;
|
||||
import com.zcloud.key.project.dto.clientobject.KeyProjectCameraCO;
|
||||
import com.zcloud.key.project.persistence.dataobject.CameraInfoDO;
|
||||
import com.zcloud.key.project.persistence.dataobject.KeyProjectCameraDO;
|
||||
import org.mapstruct.Mapper;
|
||||
|
||||
|
|
@ -20,5 +23,9 @@ public interface KeyProjectCameraCoConvertor {
|
|||
* @return
|
||||
*/
|
||||
List<KeyProjectCameraCO> converDOsToCOs(List<KeyProjectCameraDO> keyProjectCameraDOs);
|
||||
|
||||
List<KeyProjectCameraDO> converCmdsToDOs(List<KeyProjectCameraAddCmd> keyProjectCameraAddCmdList);
|
||||
|
||||
List<CameraInfoCO> converCameraDOsToCOs(List<CameraInfoDO> data);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,10 +1,22 @@
|
|||
package com.zcloud.key.project.command.convertor;
|
||||
|
||||
import com.zcloud.key.project.dto.clientobject.CorpStatisticsCO;
|
||||
import com.zcloud.key.project.dto.clientobject.KeyProjectCO;
|
||||
import com.zcloud.key.project.dto.clientobject.KeyProjectStatisticsCO;
|
||||
import com.zcloud.key.project.dto.clientobject.XgfCorpStatisticsCO;
|
||||
import com.zcloud.key.project.persistence.dataobject.CorpStatisticsDO;
|
||||
import com.zcloud.key.project.persistence.dataobject.KeyProjectDO;
|
||||
import com.zcloud.key.project.persistence.dataobject.KeyProjectStatisticsDO;
|
||||
import com.zcloud.key.project.persistence.dataobject.XgfCorpStatisticsDO;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.Mapping;
|
||||
import org.mapstruct.Named;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
|
||||
/**
|
||||
|
|
@ -20,5 +32,40 @@ public interface KeyProjectCoConvertor {
|
|||
* @return
|
||||
*/
|
||||
List<KeyProjectCO> converDOsToCOs(List<KeyProjectDO> keyProjectDOs);
|
||||
|
||||
KeyProjectCO converDOToCO(KeyProjectDO keyProjectDO);
|
||||
|
||||
|
||||
@Mapping(source = "fixedCameraIdList", target = "fixedCameraIdList", qualifiedByName = "stringToList")
|
||||
@Mapping(source = "mobileCameraIdList", target = "mobileCameraIdList", qualifiedByName = "stringToList")
|
||||
CorpStatisticsCO toCorpStatisticsCO(CorpStatisticsDO data);
|
||||
|
||||
|
||||
List<CorpStatisticsCO> converStatisticsDOsToCOs(List<CorpStatisticsDO> data);
|
||||
|
||||
|
||||
|
||||
@Mapping(source = "fixedCameraIdList", target = "fixedCameraIdList", qualifiedByName = "stringToList")
|
||||
@Mapping(source = "mobileCameraIdList", target = "mobileCameraIdList", qualifiedByName = "stringToList")
|
||||
KeyProjectStatisticsCO toProjectCO(KeyProjectStatisticsDO data);
|
||||
|
||||
List<KeyProjectStatisticsCO> converProjectStatisticsDOsToCOs(List<KeyProjectStatisticsDO> data);
|
||||
|
||||
@Mapping(source = "fixedCameraIdList", target = "fixedCameraIdList", qualifiedByName = "stringToList")
|
||||
@Mapping(source = "mobileCameraIdList", target = "mobileCameraIdList", qualifiedByName = "stringToList")
|
||||
XgfCorpStatisticsCO toXgfProjectCO(XgfCorpStatisticsDO data);
|
||||
|
||||
List<XgfCorpStatisticsCO> converXgfCorpStatisticsDOsToCOs(List<XgfCorpStatisticsDO> data);
|
||||
|
||||
@Named("stringToList")
|
||||
default List<String> stringToList(String str) {
|
||||
if (StringUtils.isEmpty(str)) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
return Arrays.stream(str.split(","))
|
||||
.map(String::trim)
|
||||
.filter(s -> !s.isEmpty())
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,10 +1,16 @@
|
|||
package com.zcloud.key.project.command.query;
|
||||
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.jjb.saas.framework.auth.utils.AuthContext;
|
||||
import com.zcloud.gbscommon.utils.PageQueryHelper;
|
||||
import com.zcloud.key.project.command.convertor.KeyProjectCameraCoConvertor;
|
||||
import com.zcloud.key.project.domain.enums.KeyProjectCameraTypeEnum;
|
||||
import com.zcloud.key.project.dto.CameraListCmd;
|
||||
import com.zcloud.key.project.dto.KeyProjectCameraPageQry;
|
||||
import com.zcloud.key.project.dto.clientobject.CameraInfoCO;
|
||||
import com.zcloud.key.project.dto.clientobject.KeyProjectCO;
|
||||
import com.zcloud.key.project.dto.clientobject.KeyProjectCameraCO;
|
||||
import com.zcloud.key.project.persistence.dataobject.CameraInfoDO;
|
||||
import com.zcloud.key.project.persistence.dataobject.KeyProjectCameraDO;
|
||||
import com.zcloud.key.project.persistence.repository.KeyProjectCameraRepository;
|
||||
import lombok.AllArgsConstructor;
|
||||
|
|
@ -38,5 +44,28 @@ public class KeyProjectCameraQueryExe {
|
|||
List<KeyProjectCameraCO> examCenterCOS = keyProjectCameraCoConvertor.converDOsToCOs(pageResponse.getData());
|
||||
return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
|
||||
}
|
||||
|
||||
public List<KeyProjectCameraCO> listAll(KeyProjectCameraPageQry qry) {
|
||||
List<KeyProjectCameraDO> keyProjectCameraDOList =keyProjectCameraRepository.getCameraListByProjectId(qry.getKeyProjectId());
|
||||
return keyProjectCameraCoConvertor.converDOsToCOs(keyProjectCameraDOList);
|
||||
}
|
||||
|
||||
public PageResponse<CameraInfoCO> listCameraAll(CameraListCmd cameraListCmd) {
|
||||
Map<String, Object> params = PageQueryHelper.toHashMap(cameraListCmd);
|
||||
params.put("corpinfoId", AuthContext.getTenantId());
|
||||
PageResponse<CameraInfoDO> pageResponse = new PageResponse<>();
|
||||
if(KeyProjectCameraTypeEnum.FIXED_CAMERA.getCode().equals(cameraListCmd.getCameraType())){
|
||||
pageResponse = keyProjectCameraRepository.listFixedCameraAll(params);
|
||||
}
|
||||
if(KeyProjectCameraTypeEnum.MOBILE_CAMERA.getCode().equals(cameraListCmd.getCameraType())){
|
||||
pageResponse = keyProjectCameraRepository.listMobileCameraAll(params);
|
||||
}
|
||||
List<CameraInfoCO> examCenterCOS = keyProjectCameraCoConvertor.converCameraDOsToCOs(pageResponse.getData());
|
||||
|
||||
return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,17 +1,30 @@
|
|||
package com.zcloud.key.project.command.query;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.jjb.saas.framework.auth.utils.AuthContext;
|
||||
import com.zcloud.gbscommon.utils.PageQueryHelper;
|
||||
import com.zcloud.key.project.command.convertor.KeyProjectCameraCoConvertor;
|
||||
import com.zcloud.key.project.command.convertor.KeyProjectCoConvertor;
|
||||
import com.zcloud.key.project.domain.enums.KeyProjectCameraTypeEnum;
|
||||
import com.zcloud.key.project.dto.CorpStatisticsPageQry;
|
||||
import com.zcloud.key.project.dto.KeyProjectPageQry;
|
||||
import com.zcloud.key.project.dto.XgfCorpStatisticsPageQry;
|
||||
import com.zcloud.key.project.dto.clientobject.CorpStatisticsCO;
|
||||
import com.zcloud.key.project.dto.clientobject.KeyProjectCO;
|
||||
import com.zcloud.key.project.persistence.dataobject.KeyProjectDO;
|
||||
import com.zcloud.key.project.dto.clientobject.KeyProjectStatisticsCO;
|
||||
import com.zcloud.key.project.dto.KeyProjectStatisticsPageQry;
|
||||
import com.zcloud.key.project.dto.clientobject.XgfCorpStatisticsCO;
|
||||
import com.zcloud.key.project.persistence.dataobject.*;
|
||||
import com.zcloud.key.project.persistence.repository.CorpInfoRepository;
|
||||
import com.zcloud.key.project.persistence.repository.KeyProjectCameraRepository;
|
||||
import com.zcloud.key.project.persistence.repository.KeyProjectRepository;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
|
||||
/**
|
||||
|
|
@ -25,6 +38,9 @@ import java.util.Map;
|
|||
public class KeyProjectQueryExe {
|
||||
private final KeyProjectRepository keyProjectRepository;
|
||||
private final KeyProjectCoConvertor keyProjectCoConvertor;
|
||||
private final KeyProjectCameraRepository keyProjectCameraRepository;
|
||||
private final KeyProjectCameraCoConvertor keyProjectCameraCoConvertor;
|
||||
private final CorpInfoRepository corpInfoRepository;
|
||||
|
||||
/**
|
||||
* 分页
|
||||
|
|
@ -36,7 +52,138 @@ public class KeyProjectQueryExe {
|
|||
Map<String, Object> params = PageQueryHelper.toHashMap(keyProjectPageQry);
|
||||
PageResponse<KeyProjectDO> pageResponse = keyProjectRepository.listPage(params);
|
||||
List<KeyProjectCO> examCenterCOS = keyProjectCoConvertor.converDOsToCOs(pageResponse.getData());
|
||||
if(CollUtil.isEmpty(examCenterCOS)){
|
||||
return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
|
||||
}
|
||||
//获取所有keyProjectId
|
||||
List<String> keyProjectIdList = examCenterCOS.stream().map(KeyProjectCO::getKeyProjectId).collect(Collectors.toList());
|
||||
|
||||
List<KeyProjectCameraDO> keyProjectCameraDOList =keyProjectCameraRepository.getCameraList(keyProjectIdList);
|
||||
//按照keyProjectId进行分组
|
||||
Map<String, List<KeyProjectCameraDO>> keyProjectIdCameraMap = keyProjectCameraDOList.stream().collect(Collectors.groupingBy(KeyProjectCameraDO::getKeyProjectId));
|
||||
examCenterCOS.forEach(examCenterCO -> {
|
||||
List<KeyProjectCameraDO> keyProjectCameraDOList1 = keyProjectIdCameraMap.get(examCenterCO.getKeyProjectId());
|
||||
if(CollUtil.isNotEmpty(keyProjectCameraDOList1)){
|
||||
//keyProjectCameraDOList1 区分固定摄像头和移动摄像头id
|
||||
examCenterCO.setFixedCameraidList(keyProjectCameraDOList1.stream().filter(keyProjectCameraDO -> KeyProjectCameraTypeEnum.FIXED_CAMERA.getCode().equals(keyProjectCameraDO.getCameraType())).map(KeyProjectCameraDO::getCameraId).collect(Collectors.toList()));
|
||||
examCenterCO.setMobileCameraIdList(keyProjectCameraDOList1.stream().filter(keyProjectCameraDO -> KeyProjectCameraTypeEnum.MOBILE_CAMERA.getCode().equals(keyProjectCameraDO.getCameraType())).map(KeyProjectCameraDO::getCameraId).collect(Collectors.toList()));
|
||||
}
|
||||
});
|
||||
|
||||
return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
|
||||
}
|
||||
public PageResponse<KeyProjectCO> pageConfirm(KeyProjectPageQry keyProjectPageQry) {
|
||||
//如果是相关方
|
||||
Boolean checkCorp = corpInfoRepository.checkCorp();
|
||||
if(corpInfoRepository.isXgf()){
|
||||
//
|
||||
if(checkCorp){
|
||||
keyProjectPageQry.setXgfCorpinfoId(AuthContext.getTenantId());
|
||||
}else{
|
||||
keyProjectPageQry.setXgfMasterUserId(AuthContext.getUserId());
|
||||
}
|
||||
}else{
|
||||
if(checkCorp){
|
||||
keyProjectPageQry.setJurisdictionCorpinfoId(AuthContext.getTenantId());
|
||||
}else{
|
||||
keyProjectPageQry.setJurisdictionUserId(AuthContext.getUserId());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
Map<String, Object> params = PageQueryHelper.toHashMap(keyProjectPageQry);
|
||||
PageResponse<KeyProjectDO> pageResponse = keyProjectRepository.pageConfirm(params);
|
||||
List<KeyProjectCO> examCenterCOS = keyProjectCoConvertor.converDOsToCOs(pageResponse.getData());
|
||||
if(CollUtil.isEmpty(examCenterCOS)){
|
||||
return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
|
||||
}
|
||||
//获取所有keyProjectId
|
||||
List<String> keyProjectIdList = examCenterCOS.stream().map(KeyProjectCO::getKeyProjectId).collect(Collectors.toList());
|
||||
|
||||
List<KeyProjectCameraDO> keyProjectCameraDOList =keyProjectCameraRepository.getCameraList(keyProjectIdList);
|
||||
//按照keyProjectId进行分组
|
||||
Map<String, List<KeyProjectCameraDO>> keyProjectIdCameraMap = keyProjectCameraDOList.stream().collect(Collectors.groupingBy(KeyProjectCameraDO::getKeyProjectId));
|
||||
examCenterCOS.forEach(examCenterCO -> {
|
||||
List<KeyProjectCameraDO> keyProjectCameraDOList1 = keyProjectIdCameraMap.get(examCenterCO.getKeyProjectId());
|
||||
if(CollUtil.isNotEmpty(keyProjectCameraDOList1)){
|
||||
//keyProjectCameraDOList1 区分固定摄像头和移动摄像头id
|
||||
examCenterCO.setFixedCameraidList(keyProjectCameraDOList1.stream().filter(keyProjectCameraDO -> KeyProjectCameraTypeEnum.FIXED_CAMERA.getCode().equals(keyProjectCameraDO.getCameraType())).map(KeyProjectCameraDO::getCameraId).collect(Collectors.toList()));
|
||||
examCenterCO.setMobileCameraIdList(keyProjectCameraDOList1.stream().filter(keyProjectCameraDO -> KeyProjectCameraTypeEnum.MOBILE_CAMERA.getCode().equals(keyProjectCameraDO.getCameraType())).map(KeyProjectCameraDO::getCameraId).collect(Collectors.toList()));
|
||||
}
|
||||
});
|
||||
|
||||
return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
|
||||
}
|
||||
|
||||
|
||||
|
||||
public KeyProjectCO getInfoById(Long id) {
|
||||
KeyProjectDO keyProjectDO = keyProjectRepository.getInfoById(id);
|
||||
if(keyProjectDO== null){
|
||||
return null;
|
||||
}
|
||||
KeyProjectCO keyProjectCO = keyProjectCoConvertor.converDOToCO(keyProjectDO);
|
||||
//查询摄像头
|
||||
List<KeyProjectCameraDO> keyProjectCameraDOList =keyProjectCameraRepository.getCameraListByProjectId(keyProjectDO.getKeyProjectId());
|
||||
|
||||
keyProjectCO.setKeyProjectCameraList(keyProjectCameraCoConvertor.converDOsToCOs(keyProjectCameraDOList));
|
||||
return keyProjectCO;
|
||||
}
|
||||
|
||||
|
||||
public PageResponse<CorpStatisticsCO> corpStatistics(CorpStatisticsPageQry qry) {
|
||||
Map<String, Object> params = PageQueryHelper.toHashMap(qry);
|
||||
PageResponse<CorpStatisticsDO> pageResponse = keyProjectRepository.corpStatistics(params);
|
||||
List<CorpStatisticsCO> examCenterCOS = keyProjectCoConvertor.converStatisticsDOsToCOs(pageResponse.getData());
|
||||
if(CollUtil.isEmpty(examCenterCOS)){
|
||||
return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
|
||||
}
|
||||
|
||||
|
||||
|
||||
//TODO 补充检查次数,隐患数,在线数,摄像头数
|
||||
|
||||
|
||||
return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
|
||||
|
||||
}
|
||||
|
||||
public PageResponse<KeyProjectStatisticsCO> keyProjectStatistics(KeyProjectStatisticsPageQry qry) {
|
||||
Map<String, Object> params = PageQueryHelper.toHashMap(qry);
|
||||
params.put("jurisdictionCorpinfoId",AuthContext.getTenantId());
|
||||
PageResponse<KeyProjectStatisticsDO> pageResponse = keyProjectRepository.keyProjectStatistics(params);
|
||||
|
||||
List<KeyProjectStatisticsCO> examCenterCOS = keyProjectCoConvertor.converProjectStatisticsDOsToCOs(pageResponse.getData());
|
||||
if(CollUtil.isEmpty(examCenterCOS)){
|
||||
return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
|
||||
}
|
||||
|
||||
//TODO 补充检查次数,隐患数,在线数,摄像头数
|
||||
|
||||
|
||||
return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
|
||||
}
|
||||
|
||||
public PageResponse<XgfCorpStatisticsCO> xgfCorpStatistics(XgfCorpStatisticsPageQry qry) {
|
||||
if(CollUtil.isEmpty(qry.getJurisdictionCorpinfoIdList())){
|
||||
return PageResponse.of(null,0,0, 0);
|
||||
}
|
||||
Map<String, Object> params = PageQueryHelper.toHashMap(qry);
|
||||
|
||||
params.put("xgfCorpinfoId",AuthContext.getTenantId());
|
||||
PageResponse<XgfCorpStatisticsDO> pageResponse = keyProjectRepository.xgfCorpStatistics(params);
|
||||
|
||||
List<XgfCorpStatisticsCO> examCenterCOS = keyProjectCoConvertor.converXgfCorpStatisticsDOsToCOs(pageResponse.getData());
|
||||
if(CollUtil.isEmpty(examCenterCOS)){
|
||||
return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
|
||||
}
|
||||
|
||||
//TODO 补充检查次数,隐患数,在线数,摄像头数
|
||||
|
||||
|
||||
return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -7,13 +7,20 @@ import com.zcloud.key.project.command.KeyProjectCameraAddExe;
|
|||
import com.zcloud.key.project.command.KeyProjectCameraRemoveExe;
|
||||
import com.zcloud.key.project.command.KeyProjectCameraUpdateExe;
|
||||
import com.zcloud.key.project.command.query.KeyProjectCameraQueryExe;
|
||||
import com.zcloud.key.project.dto.CameraListCmd;
|
||||
import com.zcloud.key.project.dto.KeyProjectCameraAddCmd;
|
||||
import com.zcloud.key.project.dto.KeyProjectCameraPageQry;
|
||||
import com.zcloud.key.project.dto.KeyProjectCameraUpdateCmd;
|
||||
import com.zcloud.key.project.dto.clientobject.CameraInfoCO;
|
||||
import com.zcloud.key.project.dto.clientobject.KeyProjectCO;
|
||||
import com.zcloud.key.project.dto.clientobject.KeyProjectCameraCO;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* web-app
|
||||
*
|
||||
|
|
@ -55,5 +62,15 @@ public class KeyProjectCameraServiceImpl implements KeyProjectCameraServiceI {
|
|||
public void removeBatch(Long[] ids) {
|
||||
keyProjectCameraRemoveExe.execute(ids);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<KeyProjectCameraCO> listAll(KeyProjectCameraPageQry qry) {
|
||||
return keyProjectCameraQueryExe.listAll(qry);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResponse<CameraInfoCO> listCameraAll(CameraListCmd cameraListCmd) {
|
||||
return keyProjectCameraQueryExe.listCameraAll(cameraListCmd);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -7,10 +7,12 @@ import com.zcloud.key.project.command.KeyProjectAddExe;
|
|||
import com.zcloud.key.project.command.KeyProjectRemoveExe;
|
||||
import com.zcloud.key.project.command.KeyProjectUpdateExe;
|
||||
import com.zcloud.key.project.command.query.KeyProjectQueryExe;
|
||||
import com.zcloud.key.project.dto.KeyProjectAddCmd;
|
||||
import com.zcloud.key.project.dto.KeyProjectPageQry;
|
||||
import com.zcloud.key.project.dto.KeyProjectUpdateCmd;
|
||||
import com.zcloud.key.project.dto.*;
|
||||
import com.zcloud.key.project.dto.clientobject.CorpStatisticsCO;
|
||||
import com.zcloud.key.project.dto.clientobject.KeyProjectCO;
|
||||
import com.zcloud.key.project.dto.clientobject.KeyProjectStatisticsCO;
|
||||
import com.zcloud.key.project.dto.KeyProjectStatisticsPageQry;
|
||||
import com.zcloud.key.project.dto.clientobject.XgfCorpStatisticsCO;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
|
|
@ -34,6 +36,11 @@ public class KeyProjectServiceImpl implements KeyProjectServiceI {
|
|||
return keyProjectQueryExe.execute(qry);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResponse<KeyProjectCO> pageConfirm(KeyProjectPageQry qry) {
|
||||
return keyProjectQueryExe.pageConfirm(qry);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SingleResponse add(KeyProjectAddCmd cmd) {
|
||||
|
||||
|
|
@ -55,5 +62,30 @@ public class KeyProjectServiceImpl implements KeyProjectServiceI {
|
|||
public void removeBatch(Long[] ids) {
|
||||
keyProjectRemoveExe.execute(ids);
|
||||
}
|
||||
|
||||
@Override
|
||||
public KeyProjectCO getInfoById(Long id) {
|
||||
return keyProjectQueryExe.getInfoById(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void editStatus(KeyProjectUpdateStatusCmd keyProjectUpdateStatusCmd) {
|
||||
keyProjectUpdateExe.editStatus(keyProjectUpdateStatusCmd);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResponse<CorpStatisticsCO> corpStatistics(CorpStatisticsPageQry qry) {
|
||||
return keyProjectQueryExe.corpStatistics(qry);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResponse<KeyProjectStatisticsCO> keyProjectStatistics(KeyProjectStatisticsPageQry qry) {
|
||||
return keyProjectQueryExe.keyProjectStatistics(qry);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResponse<XgfCorpStatisticsCO> xgfCorpStatistics(XgfCorpStatisticsPageQry qry) {
|
||||
return keyProjectQueryExe.xgfCorpStatistics(qry);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -2,11 +2,17 @@ package com.zcloud.key.project.api;
|
|||
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.alibaba.cola.dto.SingleResponse;
|
||||
import com.zcloud.key.project.dto.CameraListCmd;
|
||||
import com.zcloud.key.project.dto.KeyProjectCameraAddCmd;
|
||||
import com.zcloud.key.project.dto.KeyProjectCameraPageQry;
|
||||
import com.zcloud.key.project.dto.KeyProjectCameraUpdateCmd;
|
||||
import com.zcloud.key.project.dto.clientobject.CameraInfoCO;
|
||||
import com.zcloud.key.project.dto.clientobject.KeyProjectCO;
|
||||
import com.zcloud.key.project.dto.clientobject.KeyProjectCameraCO;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* web-client
|
||||
*
|
||||
|
|
@ -23,5 +29,9 @@ public interface KeyProjectCameraServiceI {
|
|||
void remove(Long id);
|
||||
|
||||
void removeBatch(Long[] ids);
|
||||
|
||||
List<KeyProjectCameraCO> listAll(KeyProjectCameraPageQry qry);
|
||||
|
||||
PageResponse<CameraInfoCO> listCameraAll(CameraListCmd cameraListCmd);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -2,10 +2,12 @@ package com.zcloud.key.project.api;
|
|||
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.alibaba.cola.dto.SingleResponse;
|
||||
import com.zcloud.key.project.dto.KeyProjectAddCmd;
|
||||
import com.zcloud.key.project.dto.KeyProjectPageQry;
|
||||
import com.zcloud.key.project.dto.KeyProjectUpdateCmd;
|
||||
import com.zcloud.key.project.dto.*;
|
||||
import com.zcloud.key.project.dto.clientobject.CorpStatisticsCO;
|
||||
import com.zcloud.key.project.dto.clientobject.KeyProjectCO;
|
||||
import com.zcloud.key.project.dto.clientobject.KeyProjectStatisticsCO;
|
||||
import com.zcloud.key.project.dto.KeyProjectStatisticsPageQry;
|
||||
import com.zcloud.key.project.dto.clientobject.XgfCorpStatisticsCO;
|
||||
|
||||
/**
|
||||
* web-client
|
||||
|
|
@ -23,5 +25,18 @@ public interface KeyProjectServiceI {
|
|||
void remove(Long id);
|
||||
|
||||
void removeBatch(Long[] ids);
|
||||
|
||||
|
||||
KeyProjectCO getInfoById(Long id);
|
||||
|
||||
void editStatus(KeyProjectUpdateStatusCmd keyProjectUpdateStatusCmd);
|
||||
|
||||
PageResponse<KeyProjectCO> pageConfirm(KeyProjectPageQry qry);
|
||||
|
||||
PageResponse<CorpStatisticsCO> corpStatistics(CorpStatisticsPageQry qry);
|
||||
|
||||
PageResponse<KeyProjectStatisticsCO> keyProjectStatistics(KeyProjectStatisticsPageQry qry);
|
||||
|
||||
PageResponse<XgfCorpStatisticsCO> xgfCorpStatistics(XgfCorpStatisticsPageQry qry);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,15 +1,17 @@
|
|||
package com.zcloud.key.project.dto;
|
||||
|
||||
import com.alibaba.cola.dto.Command;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* web-client
|
||||
|
|
@ -17,14 +19,10 @@ import java.time.LocalDateTime;
|
|||
* @Author zhaokai
|
||||
* @Date 2026-03-16 10:00:37
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class KeyProjectAddCmd extends Command {
|
||||
@ApiModelProperty(value = "企业id", name = "corpinfoId", required = true)
|
||||
@NotNull(message = "企业id不能为空")
|
||||
private Long corpinfoId;
|
||||
public class KeyProjectAddCmd implements Serializable {
|
||||
|
||||
@ApiModelProperty(value = "辖区单位企业id", name = "jurisdictionCorpinfoId", required = true)
|
||||
@NotNull(message = "辖区单位企业id不能为空")
|
||||
|
|
@ -59,12 +57,14 @@ public class KeyProjectAddCmd extends Command {
|
|||
private String projectTypeName;
|
||||
|
||||
@ApiModelProperty(value = "计划工期开始时间", name = "planWorkStartDate", required = true)
|
||||
@NotEmpty(message = "计划工期开始时间不能为空")
|
||||
private LocalDateTime planWorkStartDate;
|
||||
@NotNull(message = "计划工期开始时间不能为空")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private LocalDate planWorkStartDate;
|
||||
|
||||
@ApiModelProperty(value = "计划工期结束时间", name = "planWorkEndDate", required = true)
|
||||
@NotEmpty(message = "计划工期结束时间不能为空")
|
||||
private LocalDateTime planWorkEndDate;
|
||||
@NotNull(message = "计划工期结束时间不能为空")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private LocalDate planWorkEndDate;
|
||||
|
||||
@ApiModelProperty(value = "相关方企业id", name = "xgfCorpinfoId", required = true)
|
||||
@NotNull(message = "相关方企业id不能为空")
|
||||
|
|
@ -94,16 +94,8 @@ public class KeyProjectAddCmd extends Command {
|
|||
@NotEmpty(message = "监理单位负责人手机号不能为空")
|
||||
private String supervisionUnitUserPhone;
|
||||
|
||||
@ApiModelProperty(value = "申请时间", name = "applyDateTime", required = true)
|
||||
@NotEmpty(message = "申请时间不能为空")
|
||||
private LocalDateTime applyDateTime;
|
||||
|
||||
@ApiModelProperty(value = "确认时间", name = "confirmDateTime", required = true)
|
||||
@NotEmpty(message = "确认时间不能为空")
|
||||
private LocalDateTime confirmDateTime;
|
||||
|
||||
@ApiModelProperty(value = "状态,1:未开工,2:开工申请中,3:已超期,4:进行中,5:完工申请中,6:已完工", name = "applyStatus", required = true)
|
||||
@NotNull(message = "状态,1:未开工,2:开工申请中,3:已超期,4:进行中,5:完工申请中,6:已完工不能为空")
|
||||
@ApiModelProperty(value = "状态,0:暂存。1:未开工,2:开工申请中,3:已超期,4:进行中,5:完工申请中,6:已完工", name = "applyStatus")
|
||||
private Integer applyStatus;
|
||||
|
||||
@ApiModelProperty(value = "经度", name = "longitude", required = true)
|
||||
|
|
@ -114,5 +106,8 @@ public class KeyProjectAddCmd extends Command {
|
|||
@NotEmpty(message = "纬度不能为空")
|
||||
private String latitude;
|
||||
|
||||
@ApiModelProperty(value = "重点作业摄像头信息", name = "keyProjectCameraAddCmdList")
|
||||
private List<KeyProjectCameraAddCmd> keyProjectCameraAddCmdList;
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@ import lombok.NoArgsConstructor;
|
|||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* web-client
|
||||
|
|
@ -16,13 +17,11 @@ import javax.validation.constraints.NotNull;
|
|||
* @Author zhaokai
|
||||
* @Date 2026-03-16 10:00:55
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class KeyProjectCameraAddCmd extends Command {
|
||||
@ApiModelProperty(value = "重点作业id", name = "keyProjectId", required = true)
|
||||
@NotEmpty(message = "重点作业id不能为空")
|
||||
public class KeyProjectCameraAddCmd implements Serializable {
|
||||
@ApiModelProperty(value = "重点作业id", name = "keyProjectId")
|
||||
private String keyProjectId;
|
||||
|
||||
@ApiModelProperty(value = "摄像头id", name = "cameraId", required = true)
|
||||
|
|
|
|||
|
|
@ -1,8 +1,11 @@
|
|||
package com.zcloud.key.project.dto;
|
||||
|
||||
import com.alibaba.cola.dto.PageQuery;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
|
||||
|
||||
/**
|
||||
* web-client
|
||||
|
|
@ -23,6 +26,9 @@ public class KeyProjectCameraPageQry extends PageQuery {
|
|||
* - `le`: 小于等于比较查询
|
||||
* - `ne`: 不等比较查询,对应SQL的!=操作符
|
||||
*/
|
||||
private String likeKeyProjectCameraId;
|
||||
|
||||
@ApiModelProperty(value = "重点作业id", name = "keyProjectId")
|
||||
@NotEmpty(message = "重点作业不能为空")
|
||||
private String keyProjectId;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,8 +1,15 @@
|
|||
package com.zcloud.key.project.dto;
|
||||
|
||||
import com.alibaba.cola.dto.PageQuery;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* web-client
|
||||
|
|
@ -23,6 +30,49 @@ public class KeyProjectPageQry extends PageQuery {
|
|||
* - `le`: 小于等于比较查询
|
||||
* - `ne`: 不等比较查询,对应SQL的!=操作符
|
||||
*/
|
||||
private String likeKeyProjectId;
|
||||
@ApiModelProperty(value = "重点作业名称")
|
||||
private String projectName;
|
||||
@ApiModelProperty(value = "相关方单位id")
|
||||
private Long xgfCorpinfoId;
|
||||
@ApiModelProperty(value = "相关方单位名称")
|
||||
private Long xgfCorpinfoName;
|
||||
@ApiModelProperty(value = "主管部门id")
|
||||
private Long masterDepartmentId;
|
||||
|
||||
@ApiModelProperty(value = "状态,0:暂存。1:未开工,2:开工申请中,3:已超期,4:进行中,5:完工申请中,6:已完工")
|
||||
private Integer applyStatus;
|
||||
|
||||
@ApiModelProperty(value = "状态,0:暂存。1:未开工,2:开工申请中,3:已超期,4:进行中,5:完工申请中,6:已完工")
|
||||
private List<Integer> applyStatusList;
|
||||
|
||||
@ApiModelProperty(value = "计划工期开始时间", name = "planWorkStartDate", required = true)
|
||||
@NotEmpty(message = "计划工期开始时间不能为空")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private LocalDate planWorkStartDate;
|
||||
|
||||
//计划工期结束时间
|
||||
@ApiModelProperty(value = "计划工期结束时间")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private LocalDate planWorkEndDate;
|
||||
|
||||
@ApiModelProperty(value = "创建单位id")
|
||||
private Integer corpinfoId;
|
||||
@ApiModelProperty(value = "创建单位名称")
|
||||
private String corpinfName;
|
||||
|
||||
@ApiModelProperty(value = "project_type")
|
||||
private Long projectType;
|
||||
|
||||
//辖区单位企业id
|
||||
@ApiModelProperty(value = "辖区单位企业id")
|
||||
private Long jurisdictionCorpinfoId;
|
||||
|
||||
//辖区项目负责人id
|
||||
@ApiModelProperty(value = "辖区项目负责人id")
|
||||
private Long jurisdictionUserId;
|
||||
|
||||
//相关方单位负责人id
|
||||
@ApiModelProperty(value = "相关方单位负责人id")
|
||||
private Long xgfMasterUserId;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,15 +1,17 @@
|
|||
package com.zcloud.key.project.dto;
|
||||
|
||||
import com.alibaba.cola.dto.Command;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* web-client
|
||||
|
|
@ -17,85 +19,96 @@ import java.time.LocalDateTime;
|
|||
* @Author zhaokai
|
||||
* @Date 2026-03-16 10:00:38
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class KeyProjectUpdateCmd extends Command {
|
||||
public class KeyProjectUpdateCmd implements Serializable {
|
||||
@ApiModelProperty(value = "主键", name = "id", required = true)
|
||||
@NotNull(message = "主键不能为空")
|
||||
private Long id;
|
||||
@ApiModelProperty(value = "业务主键id", name = "keyProjectId", required = true)
|
||||
@NotEmpty(message = "业务主键id不能为空")
|
||||
private String keyProjectId;
|
||||
@ApiModelProperty(value = "企业id", name = "corpinfoId", required = true)
|
||||
@NotNull(message = "企业id不能为空")
|
||||
private Long corpinfoId;
|
||||
@ApiModelProperty(value = "辖区单位企业id", name = "jurisdictionCorpinfoId", required = true)
|
||||
@NotNull(message = "辖区单位企业id不能为空")
|
||||
private Long jurisdictionCorpinfoId;
|
||||
|
||||
@ApiModelProperty(value = "辖区单位部门id", name = "jurisdictionDepartmentId", required = true)
|
||||
@NotNull(message = "辖区单位部门id不能为空")
|
||||
private Long jurisdictionDepartmentId;
|
||||
|
||||
@ApiModelProperty(value = "辖区项目负责人id", name = "jurisdictionUserId", required = true)
|
||||
@NotNull(message = "辖区项目负责人id不能为空")
|
||||
private Long jurisdictionUserId;
|
||||
|
||||
@ApiModelProperty(value = "主管部门id", name = "masterDepartmentId", required = true)
|
||||
@NotNull(message = "主管部门id不能为空")
|
||||
private Long masterDepartmentId;
|
||||
|
||||
@ApiModelProperty(value = "是否已有项目内作业,1:是,0:否", name = "projectWorkFlag", required = true)
|
||||
@NotNull(message = "是否已有项目内作业,1:是,0:否不能为空")
|
||||
private Integer projectWorkFlag;
|
||||
|
||||
@ApiModelProperty(value = "重点作业名称", name = "projectName", required = true)
|
||||
@NotEmpty(message = "重点作业名称不能为空")
|
||||
private String projectName;
|
||||
|
||||
@ApiModelProperty(value = "涉及重点作业属性类型", name = "projectType", required = true)
|
||||
@NotEmpty(message = "涉及重点作业属性类型不能为空")
|
||||
private String projectType;
|
||||
|
||||
@ApiModelProperty(value = "涉及重点作业属性类型名称", name = "projectTypeName", required = true)
|
||||
@NotEmpty(message = "涉及重点作业属性类型名称不能为空")
|
||||
private String projectTypeName;
|
||||
|
||||
@ApiModelProperty(value = "计划工期开始时间", name = "planWorkStartDate", required = true)
|
||||
@NotEmpty(message = "计划工期开始时间不能为空")
|
||||
private LocalDateTime planWorkStartDate;
|
||||
@NotNull(message = "计划工期开始时间不能为空")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private LocalDate planWorkStartDate;
|
||||
|
||||
@ApiModelProperty(value = "计划工期结束时间", name = "planWorkEndDate", required = true)
|
||||
@NotEmpty(message = "计划工期结束时间不能为空")
|
||||
private LocalDateTime planWorkEndDate;
|
||||
@NotNull(message = "计划工期结束时间不能为空")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private LocalDate planWorkEndDate;
|
||||
|
||||
@ApiModelProperty(value = "相关方企业id", name = "xgfCorpinfoId", required = true)
|
||||
@NotNull(message = "相关方企业id不能为空")
|
||||
private Long xgfCorpinfoId;
|
||||
|
||||
@ApiModelProperty(value = "相关方单位负责人id", name = "xgfMasterUserId", required = true)
|
||||
@NotNull(message = "相关方单位负责人id不能为空")
|
||||
private Long xgfMasterUserId;
|
||||
|
||||
@ApiModelProperty(value = "相关方单位负责人手机号", name = "xgfMasterPhone", required = true)
|
||||
@NotEmpty(message = "相关方单位负责人手机号不能为空")
|
||||
private String xgfMasterPhone;
|
||||
|
||||
@ApiModelProperty(value = "是否设置监理单位,1:是,0:否", name = "supervisionUnitFlag", required = true)
|
||||
@NotNull(message = "是否设置监理单位,1:是,0:否不能为空")
|
||||
private Integer supervisionUnitFlag;
|
||||
|
||||
@ApiModelProperty(value = "监理单位名称", name = "supervisionUnitCorpName", required = true)
|
||||
@NotEmpty(message = "监理单位名称不能为空")
|
||||
private String supervisionUnitCorpName;
|
||||
|
||||
@ApiModelProperty(value = "监理单位负责人名称", name = "supervisionUnitUserName", required = true)
|
||||
@NotEmpty(message = "监理单位负责人名称不能为空")
|
||||
private String supervisionUnitUserName;
|
||||
|
||||
@ApiModelProperty(value = "监理单位负责人手机号", name = "supervisionUnitUserPhone", required = true)
|
||||
@NotEmpty(message = "监理单位负责人手机号不能为空")
|
||||
private String supervisionUnitUserPhone;
|
||||
@ApiModelProperty(value = "申请时间", name = "applyDateTime", required = true)
|
||||
@NotEmpty(message = "申请时间不能为空")
|
||||
private LocalDateTime applyDateTime;
|
||||
@ApiModelProperty(value = "确认时间", name = "confirmDateTime", required = true)
|
||||
@NotEmpty(message = "确认时间不能为空")
|
||||
private LocalDateTime confirmDateTime;
|
||||
@ApiModelProperty(value = "状态,1:未开工,2:开工申请中,3:已超期,4:进行中,5:完工申请中,6:已完工", name = "applyStatus", required = true)
|
||||
@NotNull(message = "状态,1:未开工,2:开工申请中,3:已超期,4:进行中,5:完工申请中,6:已完工不能为空")
|
||||
|
||||
|
||||
@ApiModelProperty(value = "状态,0:暂存。1:未开工,2:开工申请中,3:已超期,4:进行中,5:完工申请中,6:已完工", name = "applyStatus")
|
||||
private Integer applyStatus;
|
||||
|
||||
@ApiModelProperty(value = "经度", name = "longitude", required = true)
|
||||
@NotEmpty(message = "经度不能为空")
|
||||
private String longitude;
|
||||
|
||||
@ApiModelProperty(value = "纬度", name = "latitude", required = true)
|
||||
@NotEmpty(message = "纬度不能为空")
|
||||
private String latitude;
|
||||
|
||||
@ApiModelProperty(value = "重点作业摄像头信息", name = "keyProjectCameraAddCmdList")
|
||||
private List<KeyProjectCameraAddCmd> keyProjectCameraAddCmdList;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,10 +1,14 @@
|
|||
package com.zcloud.key.project.dto.clientobject;
|
||||
|
||||
import com.alibaba.cola.dto.ClientObject;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
|
|
@ -50,10 +54,12 @@ public class KeyProjectCO extends ClientObject {
|
|||
private String projectTypeName;
|
||||
//计划工期开始时间
|
||||
@ApiModelProperty(value = "计划工期开始时间")
|
||||
private LocalDateTime planWorkStartDate;
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private LocalDate planWorkStartDate;
|
||||
//计划工期结束时间
|
||||
@ApiModelProperty(value = "计划工期结束时间")
|
||||
private LocalDateTime planWorkEndDate;
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private LocalDate planWorkEndDate;
|
||||
//相关方企业id
|
||||
@ApiModelProperty(value = "相关方企业id")
|
||||
private Long xgfCorpinfoId;
|
||||
|
|
@ -77,12 +83,24 @@ public class KeyProjectCO extends ClientObject {
|
|||
private String supervisionUnitUserPhone;
|
||||
//申请时间
|
||||
@ApiModelProperty(value = "申请时间")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime applyDateTime;
|
||||
//确认时间
|
||||
@ApiModelProperty(value = "确认时间")
|
||||
private LocalDateTime confirmDateTime;
|
||||
//状态,1:未开工,2:开工申请中,3:已超期,4:进行中,5:完工申请中,6:已完工
|
||||
@ApiModelProperty(value = "状态,1:未开工,2:开工申请中,3:已超期,4:进行中,5:完工申请中,6:已完工")
|
||||
|
||||
//申请确认时间
|
||||
@ApiModelProperty(value = "申请确认时间")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime applyConfirmDateTime;
|
||||
//完工时间
|
||||
@ApiModelProperty(value = "完工时间")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime completedDateTime;
|
||||
//完工确认时间
|
||||
@ApiModelProperty(value = "完工确认时间")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime completedConfirmDateTime;
|
||||
|
||||
//状态,0:暂存。1:未开工,2:开工申请中,3:已超期,4:进行中,5:完工申请中,6:已完工
|
||||
@ApiModelProperty(value = "状态,0:暂存。1:未开工,2:开工申请中,3:已超期,4:进行中,5:完工申请中,6:已完工")
|
||||
private Integer applyStatus;
|
||||
//经度
|
||||
@ApiModelProperty(value = "经度")
|
||||
|
|
@ -90,41 +108,52 @@ public class KeyProjectCO extends ClientObject {
|
|||
//纬度
|
||||
@ApiModelProperty(value = "纬度")
|
||||
private String latitude;
|
||||
//乐观锁
|
||||
@ApiModelProperty(value = "乐观锁")
|
||||
private Integer version;
|
||||
|
||||
//创建人
|
||||
@ApiModelProperty(value = "创建人")
|
||||
private Long createId;
|
||||
//创建人姓名
|
||||
@ApiModelProperty(value = "创建人姓名")
|
||||
private String createName;
|
||||
|
||||
|
||||
@ApiModelProperty(value = "辖区单位企业名称")
|
||||
@TableField(exist = false)
|
||||
private String jurisdictionCorpinfoName;
|
||||
|
||||
@ApiModelProperty(value = "辖区单位部门名称")
|
||||
@TableField(exist = false)
|
||||
private String jurisdictionDepartmentName;
|
||||
|
||||
@ApiModelProperty(value = "辖区项目负责人名称")
|
||||
@TableField(exist = false)
|
||||
private String jurisdictionUserName;
|
||||
|
||||
|
||||
@ApiModelProperty(value = "主管部门名称")
|
||||
@TableField(exist = false)
|
||||
private String masterDepartmentName;
|
||||
|
||||
|
||||
@ApiModelProperty(value = "相关方企业名称")
|
||||
@TableField(exist = false)
|
||||
private String xgfCorpinfoName;
|
||||
|
||||
@ApiModelProperty(value = "相关方单位负责人名称")
|
||||
@TableField(exist = false)
|
||||
private String xgfUserName;
|
||||
|
||||
@ApiModelProperty(value = "摄像头信息列表")
|
||||
private List<KeyProjectCameraCO> keyProjectCameraList;
|
||||
|
||||
|
||||
//创建时间
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
private LocalDateTime createTime;
|
||||
//更新人
|
||||
@ApiModelProperty(value = "更新人")
|
||||
private Long updateId;
|
||||
//修改人名称
|
||||
@ApiModelProperty(value = "修改人名称")
|
||||
private String updateName;
|
||||
//更新时间
|
||||
@ApiModelProperty(value = "更新时间")
|
||||
private LocalDateTime updateTime;
|
||||
//描述
|
||||
@ApiModelProperty(value = "描述")
|
||||
private String remarks;
|
||||
//是否删除
|
||||
@ApiModelProperty(value = "是否删除")
|
||||
private String deleteEnum;
|
||||
//租户id
|
||||
@ApiModelProperty(value = "租户id")
|
||||
private Long tenantId;
|
||||
//机构id
|
||||
@ApiModelProperty(value = "机构id")
|
||||
private Long orgId;
|
||||
//环境
|
||||
@ApiModelProperty(value = "环境")
|
||||
private String env;
|
||||
@ApiModelProperty(value = "固定摄像头idList")
|
||||
private List<String> fixedCameraidList;
|
||||
|
||||
@ApiModelProperty(value = "移动摄像头idList")
|
||||
private List<String> mobileCameraIdList;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,9 +1,11 @@
|
|||
package com.zcloud.key.project.dto.clientobject;
|
||||
|
||||
import com.alibaba.cola.dto.ClientObject;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
|
||||
|
|
@ -14,7 +16,7 @@ import java.time.LocalDateTime;
|
|||
* @Date 2026-03-16 10:00:55
|
||||
*/
|
||||
@Data
|
||||
public class KeyProjectCameraCO extends ClientObject {
|
||||
public class KeyProjectCameraCO implements Serializable {
|
||||
//主键
|
||||
@ApiModelProperty(value = "主键")
|
||||
private Long id;
|
||||
|
|
@ -30,41 +32,8 @@ public class KeyProjectCameraCO extends ClientObject {
|
|||
//摄像头类型,1:固定摄像头,2:移动摄像头
|
||||
@ApiModelProperty(value = "摄像头类型,1:固定摄像头,2:移动摄像头")
|
||||
private Integer cameraType;
|
||||
//乐观锁
|
||||
@ApiModelProperty(value = "乐观锁")
|
||||
private Integer version;
|
||||
//创建人
|
||||
@ApiModelProperty(value = "创建人")
|
||||
private Long createId;
|
||||
//创建人姓名
|
||||
@ApiModelProperty(value = "创建人姓名")
|
||||
private String createName;
|
||||
//创建时间
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
private LocalDateTime createTime;
|
||||
//更新人
|
||||
@ApiModelProperty(value = "更新人")
|
||||
private Long updateId;
|
||||
//修改人名称
|
||||
@ApiModelProperty(value = "修改人名称")
|
||||
private String updateName;
|
||||
//更新时间
|
||||
@ApiModelProperty(value = "更新时间")
|
||||
private LocalDateTime updateTime;
|
||||
//描述
|
||||
@ApiModelProperty(value = "描述")
|
||||
private String remarks;
|
||||
//是否删除
|
||||
@ApiModelProperty(value = "是否删除")
|
||||
private String deleteEnum;
|
||||
//租户id
|
||||
@ApiModelProperty(value = "租户id")
|
||||
private Long tenantId;
|
||||
//机构id
|
||||
@ApiModelProperty(value = "机构id")
|
||||
private Long orgId;
|
||||
//环境
|
||||
@ApiModelProperty(value = "环境")
|
||||
private String env;
|
||||
|
||||
@ApiModelProperty(value = "摄像头名称")
|
||||
private String cameraName;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,8 +1,10 @@
|
|||
package com.zcloud.key.project.domain.model;
|
||||
|
||||
import com.jjb.saas.framework.domain.model.BaseE;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
|
|
@ -36,9 +38,9 @@ public class KeyProjectE extends BaseE {
|
|||
//涉及重点作业属性类型名称
|
||||
private String projectTypeName;
|
||||
//计划工期开始时间
|
||||
private LocalDateTime planWorkStartDate;
|
||||
private LocalDate planWorkStartDate;
|
||||
//计划工期结束时间
|
||||
private LocalDateTime planWorkEndDate;
|
||||
private LocalDate planWorkEndDate;
|
||||
//相关方企业id
|
||||
private Long xgfCorpinfoId;
|
||||
//相关方单位负责人id
|
||||
|
|
@ -56,8 +58,12 @@ public class KeyProjectE extends BaseE {
|
|||
//申请时间
|
||||
private LocalDateTime applyDateTime;
|
||||
//确认时间
|
||||
private LocalDateTime confirmDateTime;
|
||||
//状态,1:未开工,2:开工申请中,3:已超期,4:进行中,5:完工申请中,6:已完工
|
||||
private LocalDateTime applyConfirmDateTime;
|
||||
//申请时间
|
||||
private LocalDateTime completedDateTime;
|
||||
//确认时间
|
||||
private LocalDateTime completedConfirmDateTime;
|
||||
//状态,0:暂存。1:未开工,2:开工申请中,3:已超期,4:进行中,5:完工申请中,6:已完工
|
||||
private Integer applyStatus;
|
||||
//经度
|
||||
private String longitude;
|
||||
|
|
|
|||
|
|
@ -1,10 +1,12 @@
|
|||
package com.zcloud.key.project.gatewayimpl;
|
||||
|
||||
import com.zcloud.gbscommon.utils.Tools;
|
||||
import com.zcloud.key.project.domain.gateway.KeyProjectCameraGateway;
|
||||
import com.zcloud.key.project.domain.model.KeyProjectCameraE;
|
||||
import com.zcloud.key.project.persistence.dataobject.KeyProjectCameraDO;
|
||||
import com.zcloud.key.project.persistence.repository.KeyProjectCameraRepository;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
|
|
@ -23,6 +25,9 @@ public class KeyProjectCameraGatewayImpl implements KeyProjectCameraGateway {
|
|||
|
||||
@Override
|
||||
public Boolean add(KeyProjectCameraE keyProjectCameraE) {
|
||||
if(StringUtils.isEmpty(keyProjectCameraE.getKeyProjectCameraId())){
|
||||
keyProjectCameraE.setKeyProjectCameraId(Tools.get32UUID());
|
||||
}
|
||||
KeyProjectCameraDO d = new KeyProjectCameraDO();
|
||||
BeanUtils.copyProperties(keyProjectCameraE, d);
|
||||
keyProjectCameraRepository.save(d);
|
||||
|
|
|
|||
|
|
@ -1,10 +1,13 @@
|
|||
package com.zcloud.key.project.gatewayimpl;
|
||||
|
||||
import com.jjb.saas.framework.auth.utils.AuthContext;
|
||||
import com.zcloud.gbscommon.utils.Tools;
|
||||
import com.zcloud.key.project.domain.gateway.KeyProjectGateway;
|
||||
import com.zcloud.key.project.domain.model.KeyProjectE;
|
||||
import com.zcloud.key.project.persistence.dataobject.KeyProjectDO;
|
||||
import com.zcloud.key.project.persistence.repository.KeyProjectRepository;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
|
|
@ -23,6 +26,12 @@ public class KeyProjectGatewayImpl implements KeyProjectGateway {
|
|||
|
||||
@Override
|
||||
public Boolean add(KeyProjectE keyProjectE) {
|
||||
if(StringUtils.isEmpty(keyProjectE.getKeyProjectId())){
|
||||
keyProjectE.setKeyProjectId(Tools.get32UUID());
|
||||
}
|
||||
if(keyProjectE.getCorpinfoId()==null){
|
||||
keyProjectE.setCorpinfoId(AuthContext.getTenantId());
|
||||
}
|
||||
KeyProjectDO d = new KeyProjectDO();
|
||||
BeanUtils.copyProperties(keyProjectE, d);
|
||||
keyProjectRepository.save(d);
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
package com.zcloud.key.project.persistence.dataobject;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.jjb.saas.framework.repository.basedo.BaseDO;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
|
|
@ -31,6 +32,10 @@ public class KeyProjectCameraDO extends BaseDO {
|
|||
@ApiModelProperty(value = "摄像头类型,1:固定摄像头,2:移动摄像头")
|
||||
private Integer cameraType;
|
||||
|
||||
@ApiModelProperty(value = "摄像头名称")
|
||||
@TableField(exist = false)
|
||||
private String cameraName;
|
||||
|
||||
public KeyProjectCameraDO(String keyProjectCameraId) {
|
||||
this.keyProjectCameraId = keyProjectCameraId;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
package com.zcloud.key.project.persistence.dataobject;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.jjb.saas.framework.repository.basedo.BaseDO;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
|
|
@ -7,7 +8,9 @@ import lombok.Data;
|
|||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* web-infrastructure
|
||||
|
|
@ -52,10 +55,10 @@ public class KeyProjectDO extends BaseDO {
|
|||
private String projectTypeName;
|
||||
//计划工期开始时间
|
||||
@ApiModelProperty(value = "计划工期开始时间")
|
||||
private LocalDateTime planWorkStartDate;
|
||||
private LocalDate planWorkStartDate;
|
||||
//计划工期结束时间
|
||||
@ApiModelProperty(value = "计划工期结束时间")
|
||||
private LocalDateTime planWorkEndDate;
|
||||
private LocalDate planWorkEndDate;
|
||||
//相关方企业id
|
||||
@ApiModelProperty(value = "相关方企业id")
|
||||
private Long xgfCorpinfoId;
|
||||
|
|
@ -81,10 +84,16 @@ public class KeyProjectDO extends BaseDO {
|
|||
@ApiModelProperty(value = "申请时间")
|
||||
private LocalDateTime applyDateTime;
|
||||
//确认时间
|
||||
@ApiModelProperty(value = "确认时间")
|
||||
private LocalDateTime confirmDateTime;
|
||||
//状态,1:未开工,2:开工申请中,3:已超期,4:进行中,5:完工申请中,6:已完工
|
||||
@ApiModelProperty(value = "状态,1:未开工,2:开工申请中,3:已超期,4:进行中,5:完工申请中,6:已完工")
|
||||
@ApiModelProperty(value = "申请确认时间")
|
||||
private LocalDateTime applyConfirmDateTime;
|
||||
//申请时间
|
||||
@ApiModelProperty(value = "完工时间")
|
||||
private LocalDateTime completedDateTime;
|
||||
//确认时间
|
||||
@ApiModelProperty(value = "完工确认时间")
|
||||
private LocalDateTime completedConfirmDateTime;
|
||||
//状态,0:暂存。1:未开工,2:开工申请中,3:已超期,4:进行中,5:完工申请中,6:已完工
|
||||
@ApiModelProperty(value = "状态,0:暂存。1:未开工,2:开工申请中,3:已超期,4:进行中,5:完工申请中,6:已完工")
|
||||
private Integer applyStatus;
|
||||
//经度
|
||||
@ApiModelProperty(value = "经度")
|
||||
|
|
@ -93,6 +102,33 @@ public class KeyProjectDO extends BaseDO {
|
|||
@ApiModelProperty(value = "纬度")
|
||||
private String latitude;
|
||||
|
||||
@ApiModelProperty(value = "辖区单位企业名称")
|
||||
@TableField(exist = false)
|
||||
private String jurisdictionCorpinfoName;
|
||||
|
||||
@ApiModelProperty(value = "辖区单位部门名称")
|
||||
@TableField(exist = false)
|
||||
private String jurisdictionDepartmentName;
|
||||
|
||||
@ApiModelProperty(value = "辖区项目负责人名称")
|
||||
@TableField(exist = false)
|
||||
private String jurisdictionUserName;
|
||||
|
||||
|
||||
@ApiModelProperty(value = "主管部门名称")
|
||||
@TableField(exist = false)
|
||||
private String masterDepartmentName;
|
||||
|
||||
|
||||
@ApiModelProperty(value = "相关方企业名称")
|
||||
@TableField(exist = false)
|
||||
private String xgfCorpinfoName;
|
||||
|
||||
@ApiModelProperty(value = "相关方单位负责人名称")
|
||||
@TableField(exist = false)
|
||||
private String xgfUserName;
|
||||
|
||||
|
||||
public KeyProjectDO(String keyProjectId) {
|
||||
this.keyProjectId = keyProjectId;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,9 +1,14 @@
|
|||
package com.zcloud.key.project.persistence.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.zcloud.key.project.persistence.dataobject.CameraInfoDO;
|
||||
import com.zcloud.key.project.persistence.dataobject.KeyProjectCameraDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* web-infrastructure
|
||||
*
|
||||
|
|
@ -13,5 +18,14 @@ import org.apache.ibatis.annotations.Mapper;
|
|||
@Mapper
|
||||
public interface KeyProjectCameraMapper extends BaseMapper<KeyProjectCameraDO> {
|
||||
|
||||
List<KeyProjectCameraDO> getCameraListByProjectId(String keyProjectId);
|
||||
|
||||
void deleteByKeyProjectId(String keyProjectId);
|
||||
|
||||
IPage<KeyProjectCameraDO> listPage(IPage<KeyProjectCameraDO> iPage, Map<String, Object> params);
|
||||
|
||||
IPage<CameraInfoDO> listFixedCameraAll(IPage<CameraInfoDO> iPage, Map<String, Object> params);
|
||||
|
||||
IPage<CameraInfoDO> listMobileCameraAll(IPage<CameraInfoDO> iPage, Map<String, Object> params);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,9 +1,17 @@
|
|||
package com.zcloud.key.project.persistence.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.jjb.saas.framework.datascope.annotation.DataScope;
|
||||
import com.jjb.saas.framework.datascope.annotation.DataScopes;
|
||||
import com.zcloud.key.project.persistence.dataobject.CorpStatisticsDO;
|
||||
import com.zcloud.key.project.persistence.dataobject.KeyProjectDO;
|
||||
import com.zcloud.key.project.persistence.dataobject.KeyProjectStatisticsDO;
|
||||
import com.zcloud.key.project.persistence.dataobject.XgfCorpStatisticsDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* web-infrastructure
|
||||
*
|
||||
|
|
@ -11,7 +19,22 @@ import org.apache.ibatis.annotations.Mapper;
|
|||
* @Date 2026-03-16 10:00:38
|
||||
*/
|
||||
@Mapper
|
||||
@DataScopes({
|
||||
@DataScope(method = "listPage", menuPerms = ""),
|
||||
@DataScope(method = "pageConfirm", menuPerms = ""),
|
||||
})
|
||||
public interface KeyProjectMapper extends BaseMapper<KeyProjectDO> {
|
||||
|
||||
IPage<KeyProjectDO> listPage(IPage<KeyProjectDO> iPage, Map<String, Object> params, String menuPerms);
|
||||
|
||||
KeyProjectDO getInfoById(Long id);
|
||||
|
||||
IPage<KeyProjectDO> pageConfirm(IPage<KeyProjectDO> iPage, Map<String, Object> params, String menuPerms);
|
||||
|
||||
IPage<CorpStatisticsDO> corpStatistics(IPage<CorpStatisticsDO> iPage, Map<String, Object> params);
|
||||
|
||||
IPage<KeyProjectStatisticsDO> keyProjectStatistics(IPage<KeyProjectStatisticsDO> iPage, Map<String, Object> params);
|
||||
|
||||
IPage<XgfCorpStatisticsDO> xgfCorpStatistics(IPage<XgfCorpStatisticsDO> iPage, Map<String, Object> params);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -2,8 +2,10 @@ package com.zcloud.key.project.persistence.repository;
|
|||
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.jjb.saas.framework.repository.repo.BaseRepository;
|
||||
import com.zcloud.key.project.persistence.dataobject.CameraInfoDO;
|
||||
import com.zcloud.key.project.persistence.dataobject.KeyProjectCameraDO;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
|
|
@ -14,5 +16,15 @@ import java.util.Map;
|
|||
*/
|
||||
public interface KeyProjectCameraRepository extends BaseRepository<KeyProjectCameraDO> {
|
||||
PageResponse<KeyProjectCameraDO> listPage(Map<String, Object> params);
|
||||
|
||||
List<KeyProjectCameraDO> getCameraList(List<String> keyProjectIdList);
|
||||
|
||||
List<KeyProjectCameraDO> getCameraListByProjectId(String keyProjectId);
|
||||
|
||||
void deleteByKeyProjectId(String keyProjectId);
|
||||
|
||||
PageResponse<CameraInfoDO> listFixedCameraAll(Map<String, Object> params);
|
||||
|
||||
PageResponse<CameraInfoDO> listMobileCameraAll(Map<String, Object> params);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,10 @@ package com.zcloud.key.project.persistence.repository;
|
|||
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.jjb.saas.framework.repository.repo.BaseRepository;
|
||||
import com.zcloud.key.project.persistence.dataobject.CorpStatisticsDO;
|
||||
import com.zcloud.key.project.persistence.dataobject.KeyProjectDO;
|
||||
import com.zcloud.key.project.persistence.dataobject.KeyProjectStatisticsDO;
|
||||
import com.zcloud.key.project.persistence.dataobject.XgfCorpStatisticsDO;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
|
|
@ -14,5 +17,15 @@ import java.util.Map;
|
|||
*/
|
||||
public interface KeyProjectRepository extends BaseRepository<KeyProjectDO> {
|
||||
PageResponse<KeyProjectDO> listPage(Map<String, Object> params);
|
||||
|
||||
KeyProjectDO getInfoById(Long id);
|
||||
|
||||
PageResponse<KeyProjectDO> pageConfirm(Map<String, Object> params);
|
||||
|
||||
PageResponse<CorpStatisticsDO> corpStatistics(Map<String, Object> params);
|
||||
|
||||
PageResponse<KeyProjectStatisticsDO> keyProjectStatistics(Map<String, Object> params);
|
||||
|
||||
PageResponse<XgfCorpStatisticsDO> xgfCorpStatistics(Map<String, Object> params);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -7,12 +7,15 @@ import com.jjb.saas.framework.repository.common.PageHelper;
|
|||
import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl;
|
||||
import com.zcloud.gbscommon.utils.PageQueryHelper;
|
||||
import com.zcloud.gbscommon.utils.Query;
|
||||
import com.zcloud.key.project.persistence.dataobject.CameraInfoDO;
|
||||
import com.zcloud.key.project.persistence.dataobject.KeyProjectCameraDO;
|
||||
import com.zcloud.key.project.persistence.mapper.KeyProjectCameraMapper;
|
||||
import com.zcloud.key.project.persistence.repository.KeyProjectCameraRepository;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
|
|
@ -29,10 +32,38 @@ public class KeyProjectCameraRepositoryImpl extends BaseRepositoryImpl<KeyProjec
|
|||
@Override
|
||||
public PageResponse<KeyProjectCameraDO> listPage(Map<String, Object> params) {
|
||||
IPage<KeyProjectCameraDO> iPage = new Query<KeyProjectCameraDO>().getPage(params);
|
||||
IPage<KeyProjectCameraDO> result = keyProjectCameraMapper.listPage(iPage, params);
|
||||
return PageHelper.pageToResponse(result, result.getRecords());
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<KeyProjectCameraDO> getCameraList(List<String> keyProjectIdList) {
|
||||
QueryWrapper<KeyProjectCameraDO> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper = PageQueryHelper.createPageQueryWrapper(queryWrapper, params);
|
||||
queryWrapper.orderByDesc("create_time");
|
||||
IPage<KeyProjectCameraDO> result = keyProjectCameraMapper.selectPage(iPage, queryWrapper);
|
||||
queryWrapper.in("key_project_id", keyProjectIdList);
|
||||
return keyProjectCameraMapper.selectList(queryWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<KeyProjectCameraDO> getCameraListByProjectId(String keyProjectId) {
|
||||
return keyProjectCameraMapper.getCameraListByProjectId(keyProjectId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteByKeyProjectId(String keyProjectId) {
|
||||
keyProjectCameraMapper.deleteByKeyProjectId(keyProjectId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResponse<CameraInfoDO> listFixedCameraAll(Map<String, Object> params) {
|
||||
IPage<CameraInfoDO> iPage = new Query<CameraInfoDO>().getPage(params);
|
||||
IPage<CameraInfoDO> result = keyProjectCameraMapper.listFixedCameraAll(iPage, params);
|
||||
return PageHelper.pageToResponse(result, result.getRecords());
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResponse<CameraInfoDO> listMobileCameraAll(Map<String, Object> params) {
|
||||
IPage<CameraInfoDO> iPage = new Query<CameraInfoDO>().getPage(params);
|
||||
IPage<CameraInfoDO> result = keyProjectCameraMapper.listMobileCameraAll(iPage, params);
|
||||
return PageHelper.pageToResponse(result, result.getRecords());
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,7 +7,11 @@ import com.jjb.saas.framework.repository.common.PageHelper;
|
|||
import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl;
|
||||
import com.zcloud.gbscommon.utils.PageQueryHelper;
|
||||
import com.zcloud.gbscommon.utils.Query;
|
||||
import com.zcloud.key.project.domain.enums.MenuEnum;
|
||||
import com.zcloud.key.project.persistence.dataobject.CorpStatisticsDO;
|
||||
import com.zcloud.key.project.persistence.dataobject.KeyProjectDO;
|
||||
import com.zcloud.key.project.persistence.dataobject.KeyProjectStatisticsDO;
|
||||
import com.zcloud.key.project.persistence.dataobject.XgfCorpStatisticsDO;
|
||||
import com.zcloud.key.project.persistence.mapper.KeyProjectMapper;
|
||||
import com.zcloud.key.project.persistence.repository.KeyProjectRepository;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
|
|
@ -29,10 +33,48 @@ public class KeyProjectRepositoryImpl extends BaseRepositoryImpl<KeyProjectMappe
|
|||
@Override
|
||||
public PageResponse<KeyProjectDO> listPage(Map<String, Object> params) {
|
||||
IPage<KeyProjectDO> iPage = new Query<KeyProjectDO>().getPage(params);
|
||||
QueryWrapper<KeyProjectDO> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper = PageQueryHelper.createPageQueryWrapper(queryWrapper, params);
|
||||
queryWrapper.orderByDesc("create_time");
|
||||
IPage<KeyProjectDO> result = keyProjectMapper.selectPage(iPage, queryWrapper);
|
||||
String menuPerms = "";
|
||||
// if (!org.springframework.util.ObjectUtils.isEmpty(params.get("menuPath"))){
|
||||
// menuPerms = MenuEnum.getMenuKeyByPath(params.get("menuPath").toString());
|
||||
// }
|
||||
IPage<KeyProjectDO> result = keyProjectMapper.listPage(iPage, params,menuPerms);
|
||||
return PageHelper.pageToResponse(result, result.getRecords());
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResponse<KeyProjectDO> pageConfirm(Map<String, Object> params) {
|
||||
IPage<KeyProjectDO> iPage = new Query<KeyProjectDO>().getPage(params);
|
||||
String menuPerms = "";
|
||||
// if (!org.springframework.util.ObjectUtils.isEmpty(params.get("menuPath"))){
|
||||
// menuPerms = MenuEnum.getMenuKeyByPath(params.get("menuPath").toString());
|
||||
// }
|
||||
IPage<KeyProjectDO> result = keyProjectMapper.pageConfirm(iPage, params,menuPerms);
|
||||
return PageHelper.pageToResponse(result, result.getRecords());
|
||||
}
|
||||
|
||||
@Override
|
||||
public KeyProjectDO getInfoById(Long id) {
|
||||
return keyProjectMapper.getInfoById(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResponse<CorpStatisticsDO> corpStatistics(Map<String, Object> params) {
|
||||
IPage<CorpStatisticsDO> iPage = new Query<CorpStatisticsDO>().getPage(params);
|
||||
IPage<CorpStatisticsDO> result = keyProjectMapper.corpStatistics(iPage, params);
|
||||
return PageHelper.pageToResponse(result, result.getRecords());
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResponse<KeyProjectStatisticsDO> keyProjectStatistics(Map<String, Object> params) {
|
||||
IPage<KeyProjectStatisticsDO> iPage = new Query<KeyProjectStatisticsDO>().getPage(params);
|
||||
IPage<KeyProjectStatisticsDO> result = keyProjectMapper.keyProjectStatistics(iPage, params);
|
||||
return PageHelper.pageToResponse(result, result.getRecords());
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResponse<XgfCorpStatisticsDO> xgfCorpStatistics(Map<String, Object> params) {
|
||||
IPage<XgfCorpStatisticsDO> iPage = new Query<XgfCorpStatisticsDO>().getPage(params);
|
||||
IPage<XgfCorpStatisticsDO> result = keyProjectMapper.xgfCorpStatistics(iPage, params);
|
||||
return PageHelper.pageToResponse(result, result.getRecords());
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,5 +3,75 @@
|
|||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
|
||||
<mapper namespace="com.zcloud.key.project.persistence.mapper.KeyProjectCameraMapper">
|
||||
|
||||
<select id="getCameraListByProjectId" resultType="com.zcloud.key.project.persistence.dataobject.KeyProjectCameraDO">
|
||||
|
||||
SELECT
|
||||
lpc.*,
|
||||
CASE
|
||||
WHEN lpc.camera_type = 1 THEN fc.video_name
|
||||
WHEN lpc.camera_type = 2 THEN mc.video_name
|
||||
END AS cameraName
|
||||
FROM key_project_camera lpc
|
||||
LEFT JOIN fixed_camera fc ON lpc.camera_id = fc.fixed_camera_id AND lpc.camera_type = 1
|
||||
LEFT JOIN mobile_camera mc ON lpc.camera_id = mc.mobile_camera_id AND lpc.camera_type = 2
|
||||
WHERE lpc.key_project_id = #{keyProjectId} and lpc.delete_enum='false'
|
||||
</select>
|
||||
|
||||
<update id="deleteByKeyProjectId">
|
||||
UPDATE key_project_camera
|
||||
SET delete_enum = 'TRUE'
|
||||
WHERE key_project_id = #{keyProjectId}
|
||||
</update>
|
||||
|
||||
<select id="listPage" resultType="com.zcloud.key.project.persistence.dataobject.KeyProjectCameraDO">
|
||||
|
||||
SELECT
|
||||
lpc.*,
|
||||
CASE
|
||||
WHEN lpc.camera_type = 1 THEN fc.video_name
|
||||
WHEN lpc.camera_type = 2 THEN mc.video_name
|
||||
END AS cameraName
|
||||
FROM key_project_camera lpc
|
||||
LEFT JOIN fixed_camera fc ON lpc.camera_id = fc.fixed_camera_id AND lpc.camera_type = 1
|
||||
LEFT JOIN mobile_camera mc ON lpc.camera_id = mc.mobile_camera_id AND lpc.camera_type = 2
|
||||
WHERE lpc.key_project_id = #{params.keyProjectId} and lpc.delete_enum='false'
|
||||
</select>
|
||||
|
||||
<select id="listFixedCameraAll" resultType="com.zcloud.key.project.persistence.dataobject.CameraInfoDO">
|
||||
SELECT mc.fixed_camera_id as cameraId, mc.video_name as cameraName, 1 as cameraType
|
||||
FROM fixed_camera mc
|
||||
WHERE mc.delete_enum = 'FALSE'
|
||||
<if test="params.corpinfoId != null">
|
||||
and mc.corpinfo_id = #{params.corpinfoId}
|
||||
</if>
|
||||
|
||||
AND NOT EXISTS (SELECT 1
|
||||
FROM key_project_camera kpc
|
||||
INNER JOIN key_project kp ON kpc.key_project_id = kp.key_project_id
|
||||
WHERE kpc.camera_id = mc.fixed_camera_id
|
||||
AND kp.delete_enum = 'FALSE'
|
||||
AND kpc.delete_enum = 'FALSE'
|
||||
AND kp.apply_status != 6
|
||||
)
|
||||
</select>
|
||||
|
||||
<select id="listMobileCameraAll" resultType="com.zcloud.key.project.persistence.dataobject.CameraInfoDO">
|
||||
|
||||
SELECT mc.mobile_camera_id as cameraId, mc.video_name as cameraName, 2 as cameraType
|
||||
FROM mobile_camera mc
|
||||
WHERE mc.delete_enum = 'FALSE'
|
||||
<if test="params.corpinfoId != null">
|
||||
and mc.corpinfo_id = #{params.corpinfoId}
|
||||
</if>
|
||||
AND NOT EXISTS (SELECT 1
|
||||
FROM key_project_camera kpc
|
||||
INNER JOIN key_project kp ON kpc.key_project_id = kp.key_project_id
|
||||
WHERE kpc.camera_id = mc.mobile_camera_id
|
||||
AND kp.delete_enum = 'FALSE'
|
||||
AND kpc.delete_enum = 'FALSE'
|
||||
AND kp.apply_status != 6
|
||||
)
|
||||
</select>
|
||||
</mapper>
|
||||
|
||||
|
|
|
|||
|
|
@ -3,5 +3,261 @@
|
|||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
|
||||
<mapper namespace="com.zcloud.key.project.persistence.mapper.KeyProjectMapper">
|
||||
|
||||
<select id="listPage" resultType="com.zcloud.key.project.persistence.dataobject.KeyProjectDO">
|
||||
SELECT kp.*,
|
||||
fpd.name AS masterDepartmentName,
|
||||
ci.name AS jurisdictionDepartmentName,
|
||||
jurcorp.corp_name as jurisdictionCorpinfoName,
|
||||
juruser.name as jurisdictionUserName,
|
||||
xgfci.corp_name AS xgfCorpinfoName,
|
||||
xgfuser.name as xgfUserName
|
||||
FROM key_project kp
|
||||
LEFT JOIN department fpd ON kp.master_department_id = fpd.id
|
||||
LEFT JOIN department ci ON kp.jurisdiction_department_id = ci.id
|
||||
left join corp_info jurcorp on jurcorp.id = kp.jurisdiction_corpinfo_id
|
||||
left join user juruser on juruser.id = kp.jurisdiction_user_id
|
||||
LEFT JOIN corp_info xgfci ON kp.xgf_corpinfo_id = xgfci.id
|
||||
left join user xgfuser ON kp.xgf_master_user_id = xgfuser.id
|
||||
LEFT JOIN corp_info cp ON kp.corpinfo_id = cp.id
|
||||
<where>
|
||||
<!-- projectName 模糊查询判空 -->
|
||||
<if test="params.projectName != null and params.projectName != ''">
|
||||
AND kp.project_name LIKE CONCAT('%', #{params.projectName}, '%')
|
||||
</if>
|
||||
<if test="params.jurisdictionCorpinfoId != null">
|
||||
AND kp.jurisdiction_corpinfo_id = #{params.jurisdictionCorpinfoId}
|
||||
</if>
|
||||
<if test="params.jurisdictionUserId != null">
|
||||
AND kp.jurisdiction_user_id = #{params.jurisdictionUserId}
|
||||
</if>
|
||||
<!-- xgfCorpinfoId 判空 -->
|
||||
<if test="params.xgfCorpinfoId != null">
|
||||
AND kp.xgf_corpinfo_id = #{params.xgfCorpinfoId}
|
||||
</if>
|
||||
<if test="params.xgfCorpinfoName != null and params.xgfCorpinfoName != ''">
|
||||
AND xgfci.corp_name LIKE CONCAT('%', #{params.xgfCorpinfoName}, '%')
|
||||
</if>
|
||||
<if test="params.corpinfName != null and params.corpinfName != ''">
|
||||
AND cp.corp_name LIKE CONCAT('%', #{params.corpinfName}, '%')
|
||||
</if>
|
||||
<if test="params.xgfMasterUserId != null">
|
||||
AND kp.xgf_master_user_id = #{params.xgfMasterUserId}
|
||||
</if>
|
||||
|
||||
<!-- masterDepartmentId 判空 -->
|
||||
<if test="params.masterDepartmentId != null">
|
||||
AND kp.master_department_id = #{params.masterDepartmentId}
|
||||
</if>
|
||||
|
||||
<!-- applyStatus 判空 -->
|
||||
<if test="params.applyStatus != null and params.applyStatus != ''">
|
||||
AND kp.apply_status = #{params.applyStatus}
|
||||
</if>
|
||||
|
||||
<!-- applyStatusList 集合判空 -->
|
||||
<if test="params.applyStatusList != null and params.applyStatusList.size() > 0">
|
||||
AND kp.apply_status IN
|
||||
<foreach collection="params.applyStatusList" item="status" open="(" separator="," close=")">
|
||||
#{status}
|
||||
</foreach>
|
||||
</if>
|
||||
|
||||
<!-- planWorkStartDate 判空 -->
|
||||
<if test="params.planWorkStartDate != null">
|
||||
AND kp.plan_work_start_date <![CDATA[ <= ]]> #{params.planWorkStartDate}
|
||||
</if>
|
||||
|
||||
<!-- planWorkEndDate 判空 -->
|
||||
<if test="params.planWorkEndDate != null">
|
||||
AND kp.plan_work_end_date <![CDATA[ >= ]]> #{params.planWorkEndDate}
|
||||
</if>
|
||||
|
||||
<!-- corpinfoId 判空 -->
|
||||
<if test="params.corpinfoId != null">
|
||||
AND kp.corpinfo_id = #{params.corpinfoId}
|
||||
</if>
|
||||
|
||||
<!-- projectType 判空 -->
|
||||
<if test="params.projectType != null and params.projectType != ''">
|
||||
AND kp.project_type = #{params.projectType}
|
||||
</if>
|
||||
</where>
|
||||
GROUP BY kp.key_project_id
|
||||
ORDER BY kp.apply_status asc, kp.create_time DESC
|
||||
</select>
|
||||
<select id="pageConfirm" resultType="com.zcloud.key.project.persistence.dataobject.KeyProjectDO">
|
||||
|
||||
SELECT kp.*,
|
||||
fpd.name AS masterDepartmentName,
|
||||
ci.name AS jurisdictionDepartmentName,
|
||||
jurcorp.corp_name as jurisdictionCorpinfoName,
|
||||
juruser.name as jurisdictionUserName,
|
||||
xgfci.corp_name AS xgfCorpinfoName,
|
||||
xgfuser.name as xgfUserName
|
||||
FROM key_project kp
|
||||
LEFT JOIN department fpd ON kp.master_department_id = fpd.id
|
||||
LEFT JOIN department ci ON kp.jurisdiction_department_id = ci.id
|
||||
left join corp_info jurcorp on jurcorp.id = kp.jurisdiction_corpinfo_id
|
||||
left join user juruser on juruser.id = kp.jurisdiction_user_id
|
||||
LEFT JOIN corp_info xgfci ON kp.xgf_corpinfo_id = xgfci.id
|
||||
left join user xgfuser ON kp.xgf_master_user_id = xgfuser.id
|
||||
LEFT JOIN corp_info cp ON kp.corpinfo_id = cp.id
|
||||
<where>
|
||||
<!-- projectName 模糊查询判空 -->
|
||||
<if test="params.projectName != null and params.projectName != ''">
|
||||
AND kp.project_name LIKE CONCAT('%', #{params.projectName}, '%')
|
||||
</if>
|
||||
<if test="params.jurisdictionCorpinfoId != null">
|
||||
AND kp.jurisdiction_corpinfo_id = #{params.jurisdictionCorpinfoId}
|
||||
</if>
|
||||
<if test="params.jurisdictionUserId != null">
|
||||
AND kp.jurisdiction_user_id = #{params.jurisdictionUserId}
|
||||
</if>
|
||||
<!-- xgfCorpinfoId 判空 -->
|
||||
<if test="params.xgfCorpinfoId != null">
|
||||
AND kp.xgf_corpinfo_id = #{params.xgfCorpinfoId}
|
||||
</if>
|
||||
<if test="params.xgfCorpinfoName != null and params.xgfCorpinfoName != ''">
|
||||
AND xgfci.corp_name LIKE CONCAT('%', #{params.xgfCorpinfoName}, '%')
|
||||
</if>
|
||||
<if test="params.corpinfName != null and params.corpinfName != ''">
|
||||
AND cp.corp_name LIKE CONCAT('%', #{params.corpinfName}, '%')
|
||||
</if>
|
||||
<if test="params.xgfMasterUserId != null">
|
||||
AND kp.xgf_master_user_id = #{params.xgfMasterUserId}
|
||||
</if>
|
||||
|
||||
<!-- masterDepartmentId 判空 -->
|
||||
<if test="params.masterDepartmentId != null">
|
||||
AND kp.master_department_id = #{params.masterDepartmentId}
|
||||
</if>
|
||||
|
||||
<!-- applyStatus 判空 -->
|
||||
<if test="params.applyStatus != null and params.applyStatus != ''">
|
||||
AND kp.apply_status = #{params.applyStatus}
|
||||
</if>
|
||||
|
||||
<!-- applyStatusList 集合判空 -->
|
||||
<if test="params.applyStatusList != null and params.applyStatusList.size() > 0">
|
||||
AND kp.apply_status IN
|
||||
<foreach collection="params.applyStatusList" item="status" open="(" separator="," close=")">
|
||||
#{status}
|
||||
</foreach>
|
||||
</if>
|
||||
|
||||
<!-- planWorkStartDate 判空 -->
|
||||
<if test="params.planWorkStartDate != null">
|
||||
AND kp.plan_work_start_date <![CDATA[ <= ]]> #{params.planWorkStartDate}
|
||||
</if>
|
||||
|
||||
<!-- planWorkEndDate 判空 -->
|
||||
<if test="params.planWorkEndDate != null">
|
||||
AND kp.plan_work_end_date <![CDATA[ >= ]]> #{params.planWorkEndDate}
|
||||
</if>
|
||||
|
||||
<!-- corpinfoId 判空 -->
|
||||
<if test="params.corpinfoId != null">
|
||||
AND kp.corpinfo_id = #{params.corpinfoId}
|
||||
</if>
|
||||
|
||||
<!-- projectType 判空 -->
|
||||
<if test="params.projectType != null and params.projectType != ''">
|
||||
AND kp.project_type = #{params.projectType}
|
||||
</if>
|
||||
</where>
|
||||
GROUP BY kp.key_project_id
|
||||
ORDER BY kp.update_time asc
|
||||
</select>
|
||||
<select id="getInfoById" resultType="com.zcloud.key.project.persistence.dataobject.KeyProjectDO">
|
||||
SELECT kp.*,
|
||||
fpd.name AS masterDepartmentName,
|
||||
ci.name AS jurisdictionDepartmentName,
|
||||
jurcorp.corp_name as jurisdictionCorpinfoName,
|
||||
juruser.name as jurisdictionUserName,
|
||||
xgfci.corp_name AS xgfCorpinfoName,
|
||||
xgfuser.name as xgfUserName
|
||||
FROM key_project kp
|
||||
LEFT JOIN department fpd ON kp.master_department_id = fpd.id
|
||||
LEFT JOIN department ci ON kp.jurisdiction_department_id = ci.id
|
||||
left join corp_info jurcorp on jurcorp.id = kp.jurisdiction_corpinfo_id
|
||||
left join user juruser on juruser.id = kp.jurisdiction_user_id
|
||||
LEFT JOIN corp_info xgfci ON kp.xgf_corpinfo_id = xgfci.id
|
||||
left join user xgfuser ON kp.xgf_master_user_id = xgfuser.id
|
||||
|
||||
where kp.id = #{id} and kp.delete_enum = 'FALSE'
|
||||
|
||||
</select>
|
||||
|
||||
<select id="corpStatistics" resultType="com.zcloud.key.project.persistence.dataobject.CorpStatisticsDO">
|
||||
SELECT cp.id AS corpinfoId,
|
||||
cp.corp_name AS corpinfoName,
|
||||
COUNT(distinct kp.id) AS totalProjectCount,
|
||||
COUNT(DISTINCT CASE WHEN kp.apply_status = 4 THEN kp.id END) AS startCount,
|
||||
COUNT(DISTINCT CASE WHEN kp.apply_status = 6 THEN kp.id END) AS completeCount,
|
||||
COUNT(DISTINCT CASE WHEN kpc.camera_type = 1 THEN kpc.camera_id END) AS fixedCameraCount,
|
||||
COUNT(DISTINCT CASE WHEN kpc.camera_type = 2 THEN kpc.camera_id END) AS mobileCameraCount,
|
||||
GROUP_CONCAT(DISTINCT CASE WHEN kpc.camera_type = 1 THEN kpc.camera_id END) AS fixedCameraIdList,
|
||||
GROUP_CONCAT(DISTINCT CASE WHEN kpc.camera_type = 2 THEN kpc.camera_id END) AS mobileCameraIdList
|
||||
FROM corp_info cp
|
||||
LEFT JOIN key_project kp
|
||||
ON cp.id = kp.jurisdiction_corpinfo_id AND kp.delete_enum = 'FALSE'
|
||||
left join key_project_camera kpc on kp.key_project_id = kpc.key_project_id AND kpc.delete_enum = 'FALSE'
|
||||
WHERE cp.delete_enum = 'FALSE'
|
||||
AND cp.use_flag = 1
|
||||
AND cp.type IN (0, 1, 2, 6)
|
||||
<if test="params.corpinfoName != null and params.corpinfoName != ''">
|
||||
AND cp.corp_name like concat('%',#{params.corpinfoName},'%')
|
||||
</if>
|
||||
GROUP BY cp.id
|
||||
order by cp.corp_order ASC,cp.create_time desc
|
||||
</select>
|
||||
|
||||
<select id="keyProjectStatistics" resultType="com.zcloud.key.project.persistence.dataobject.KeyProjectStatisticsDO">
|
||||
select kp.id,
|
||||
kp.key_project_id as keyProjectId,
|
||||
kp.project_name as projectName,
|
||||
COUNT(DISTINCT CASE WHEN kpc.camera_type = 1 THEN kpc.camera_id END) AS fixedCameraCount,
|
||||
COUNT(DISTINCT CASE WHEN kpc.camera_type = 2 THEN kpc.camera_id END) AS mobileCameraCount,
|
||||
GROUP_CONCAT(DISTINCT CASE WHEN kpc.camera_type = 1 THEN kpc.camera_id END) AS fixedCameraIdList,
|
||||
GROUP_CONCAT(DISTINCT CASE WHEN kpc.camera_type = 2 THEN kpc.camera_id END) AS mobileCameraIdList
|
||||
from key_project kp
|
||||
left join key_project_camera kpc on kp.key_project_id = kpc.key_project_id AND kpc.delete_enum = 'FALSE'
|
||||
where kp.delete_enum = 'FALSE'
|
||||
and jurisdiction_corpinfo_id = #{params.jurisdictionCorpinfoId}
|
||||
<if test="params.projectName != null and params.projectName != ''">
|
||||
AND cp.project_name like concat('%',#{params.projectName},'%')
|
||||
</if>
|
||||
GROUP BY kp.id
|
||||
ORDER BY kp.apply_status asc, kp.create_time DESC
|
||||
</select>
|
||||
|
||||
<select id="xgfCorpStatistics" resultType="com.zcloud.key.project.persistence.dataobject.XgfCorpStatisticsDO">
|
||||
select kp.id,
|
||||
kp.jurisdiction_corpinfo_id as jurisdictionCorpinfoId,
|
||||
COUNT(distinct kp.id) AS totalProjectCount,
|
||||
COUNT(DISTINCT CASE WHEN kp.apply_status = 4 THEN kp.id END) AS startCount,
|
||||
COUNT(DISTINCT CASE WHEN kp.apply_status = 6 THEN kp.id END) AS completeCount,
|
||||
COUNT(DISTINCT CASE WHEN kpc.camera_type = 1 THEN kpc.camera_id END) AS fixedCameraCount,
|
||||
COUNT(DISTINCT CASE WHEN kpc.camera_type = 2 THEN kpc.camera_id END) AS mobileCameraCount,
|
||||
GROUP_CONCAT(DISTINCT CASE WHEN kpc.camera_type = 1 THEN kpc.camera_id END) AS fixedCameraIdList,
|
||||
GROUP_CONCAT(DISTINCT CASE WHEN kpc.camera_type = 2 THEN kpc.camera_id END) AS mobileCameraIdList
|
||||
from key_project kp
|
||||
left join key_project_camera kpc on kp.key_project_id = kpc.key_project_id AND kpc.delete_enum = 'FALSE'
|
||||
left join corp_info cp on kp.jurisdiction_corpinfo_id = cp.id
|
||||
where kp.delete_enum = 'FALSE'
|
||||
<if test="params.jurisdictionCorpinfoIdList != null and params.jurisdictionCorpinfoIdList.size() > 0">
|
||||
and jurisdiction_corpinfo_id in
|
||||
<foreach collection="params.jurisdictionCorpinfoIdList" item="corpinfoId" open="(" separator="," close=")">
|
||||
#{corpinfoId}
|
||||
</foreach>
|
||||
</if>
|
||||
|
||||
and kp.xgf_corpinfo_id = #{params.xgfCorpinfoId}
|
||||
GROUP BY kp.id
|
||||
order by cp.corp_order ASC,cp.create_time desc
|
||||
|
||||
|
||||
</select>
|
||||
</mapper>
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue