Prechádzať zdrojové kódy

单位关联建筑功能开发

linjiawei 1 mesiac pred
rodič
commit
07efffe978
18 zmenil súbory, kde vykonal 365 pridanie a 10 odobranie
  1. 5 0
      sql/zfjq_2024122701.sql
  2. 3 0
      zfjg-api/zfjg-api-manage/src/main/java/com/zfjg/manage/api/domain/other/EnforceObjArchitectureRelate.java
  3. 4 0
      zfjg-api/zfjg-api-manage/src/main/java/com/zfjg/manage/api/domain/other/EnforceObjArchitectureRelateHis.java
  4. 4 0
      zfjg-api/zfjg-api-manage/src/main/java/com/zfjg/manage/api/domain/other/WReport.java
  5. 9 0
      zfjg-api/zfjg-api-manage/src/main/java/com/zfjg/manage/api/dto/enforce/job/EnforcementJobProcessQuery.java
  6. 3 0
      zfjg-api/zfjg-api-manage/src/main/java/com/zfjg/manage/api/dto/other/EnforceObjArchitectureRelateAdd.java
  7. 3 0
      zfjg-api/zfjg-api-manage/src/main/java/com/zfjg/manage/api/dto/other/EnforceObjArchitectureRelateUpdate.java
  8. 213 0
      zfjg-api/zfjg-api-manage/src/main/java/com/zfjg/manage/api/dto/other/ObjArchitectureDTO.java
  9. 5 0
      zfjg-api/zfjg-api-manage/src/main/java/com/zfjg/manage/api/dto/other/WReportDto.java
  10. 8 0
      zfjg-api/zfjg-api-manage/src/main/java/com/zfjg/manage/api/vo/other/WReportVo.java
  11. 17 2
      zfjg-modules/zfjg-manage/src/main/java/com/zfjg/manage/controller/other/EnforceObjArchitectureRelateController.java
  12. 10 2
      zfjg-modules/zfjg-manage/src/main/java/com/zfjg/manage/controller/other/WReportController.java
  13. 5 0
      zfjg-modules/zfjg-manage/src/main/java/com/zfjg/manage/mapper/other/WReportMapper.java
  14. 4 0
      zfjg-modules/zfjg-manage/src/main/java/com/zfjg/manage/service/impl/other/EnforceObjArchitectureRelateServiceImpl.java
  15. 14 4
      zfjg-modules/zfjg-manage/src/main/java/com/zfjg/manage/service/impl/other/WReportServiceImpl.java
  16. 4 0
      zfjg-modules/zfjg-manage/src/main/java/com/zfjg/manage/service/other/WReportBizService.java
  17. 16 2
      zfjg-modules/zfjg-manage/src/main/resources/mapper/enforce/job/EnforceSuperviseMapper.xml
  18. 38 0
      zfjg-modules/zfjg-manage/src/main/resources/mapper/other/WreportMapper.xml

+ 5 - 0
sql/zfjq_2024122701.sql

@@ -0,0 +1,5 @@
+ALTER TABLE enforce_obj_architecture_relate ADD `architecture_name` varchar(512) DEFAULT NULL COMMENT '建筑名称';
+ALTER TABLE enforce_obj_architecture_relate_his ADD `before_architecture_name` varchar(512) DEFAULT NULL COMMENT '更正前建筑名称';
+ALTER TABLE enforce_obj_architecture_relate_his ADD `after_architecture_name` varchar(512) DEFAULT NULL COMMENT '更正后建筑名称';
+ALTER TABLE w_report ADD `clue_resource` varchar(50) DEFAULT NULL COMMENT '线索来源(SUPERVISE-内部执法监督,REPORT-举报投诉,RECONSIDERATION-复议、诉讼,PATROL-上级巡察,SUPERVISION-上级督导,上级考评-EVALUATE,FIREINVESTIGATION-火灾事故调查,OTHER-其他工作中)';
+

+ 3 - 0
zfjg-api/zfjg-api-manage/src/main/java/com/zfjg/manage/api/domain/other/EnforceObjArchitectureRelate.java

@@ -41,6 +41,9 @@ public class EnforceObjArchitectureRelate implements Serializable {
     @ApiModelProperty("建筑uuid")
     private String architectureUuid;
 
+    @ApiModelProperty("建筑名称")
+    private String architectureName;
+
     @ApiModelProperty("关系类型:0入驻关系 ,1管理关系")
     private Integer relateType;
 

+ 4 - 0
zfjg-api/zfjg-api-manage/src/main/java/com/zfjg/manage/api/domain/other/EnforceObjArchitectureRelateHis.java

@@ -42,6 +42,8 @@ public class EnforceObjArchitectureRelateHis implements Serializable {
     @ApiModelProperty("更正前建筑uuid")
     private String beforeArchitectureUuid;
 
+    @ApiModelProperty("更正前建筑名称")
+    private String beforeArchitectureName;
 
     @ApiModelProperty("关系类型:0入驻关系 ,1管理关系")
     private Integer beforeRelateType;
@@ -52,6 +54,8 @@ public class EnforceObjArchitectureRelateHis implements Serializable {
     @ApiModelProperty("更正后建筑uuid")
     private String afterArchitectureUuid;
 
+    @ApiModelProperty("更正后建筑名称")
+    private String afterArchitectureName;
 
     @ApiModelProperty("关系类型:0入驻关系 ,1管理关系")
     private Integer afterRelateType;

+ 4 - 0
zfjg-api/zfjg-api-manage/src/main/java/com/zfjg/manage/api/domain/other/WReport.java

@@ -94,5 +94,9 @@ public class WReport implements Serializable {
 
     private String remark;
 
+    @ApiModelProperty("线索来源(SUPERVISE-内部执法监督,REPORT-举报投诉,RECONSIDERATION-复议、诉讼," +
+            "PATROL-上级巡察,SUPERVISION-上级督导,上级考评-EVALUATE,FIREINVESTIGATION-火灾事故调查,OTHER-其他工作中)")
+    private String clueResource;
+
 
 }

+ 9 - 0
zfjg-api/zfjg-api-manage/src/main/java/com/zfjg/manage/api/dto/enforce/job/EnforcementJobProcessQuery.java

@@ -1,5 +1,6 @@
 package com.zfjg.manage.api.dto.enforce.job;
 
+import com.zfjg.common.core.annotation.Excel;
 import com.zfjg.common.core.web.page.PageQuery;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
@@ -60,4 +61,12 @@ public class EnforcementJobProcessQuery extends PageQuery {
 
     private Boolean process;
 
+    /**
+     * 单位规模 1-高危火灾单位,2-消防安全重点单位,3-派出所列管单位,4-其他单位
+     * 重点单位:消防安全重点单位
+     * 其他单位:派出所列管单位和其他单位
+     */
+    @ApiModelProperty(value = "important-重点单位,other-其他单位")
+    private String enforceObjType;
+
 }

+ 3 - 0
zfjg-api/zfjg-api-manage/src/main/java/com/zfjg/manage/api/dto/other/EnforceObjArchitectureRelateAdd.java

@@ -27,6 +27,9 @@ public class EnforceObjArchitectureRelateAdd implements Serializable {
     @ApiModelProperty("建筑uuid")
     private String architectureUuid;
 
+    @ApiModelProperty("建筑名称")
+    private String architectureName;
+
     @ApiModelProperty("关系类型:0入驻关系 ,1管理关系")
     private Integer relateType;
 

+ 3 - 0
zfjg-api/zfjg-api-manage/src/main/java/com/zfjg/manage/api/dto/other/EnforceObjArchitectureRelateUpdate.java

@@ -27,6 +27,9 @@ public class EnforceObjArchitectureRelateUpdate implements Serializable {
     @ApiModelProperty("建筑uuid")
     private String architectureUuid;
 
+    @ApiModelProperty("建筑名称")
+    private String architectureName;
+
     @ApiModelProperty("关系类型:0入驻关系 ,1管理关系")
     private Integer relateType;
 

+ 213 - 0
zfjg-api/zfjg-api-manage/src/main/java/com/zfjg/manage/api/dto/other/ObjArchitectureDTO.java

@@ -0,0 +1,213 @@
+package com.zfjg.manage.api.dto.other;
+
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+
+@Data
+@ApiModel("建筑详情")
+@Accessors(chain = true)
+public class ObjArchitectureDTO {
+
+    @ApiModelProperty("id")
+    private Long id;
+    @ApiModelProperty("社会单位id(管理单位id)")
+    private Long socialUnitId;
+    @ApiModelProperty("支队id")
+    private Long organizationId;
+    @ApiModelProperty("建筑名称")
+    private String architectureName;
+    @ApiModelProperty("建筑高度")
+    private Double architectureHeight;
+    @ApiModelProperty("建筑面积")
+    private Double architectureArea;
+    @ApiModelProperty("地上楼层数")
+    private Integer floorGround;
+    @ApiModelProperty("吊层数")
+    private Integer hangingLayer;
+    @ApiModelProperty("地下楼层数")
+    private Integer floorUnderground;
+    @ApiModelProperty("楼层总数")
+    private Integer floorTotal;
+    @ApiModelProperty("建筑类别")
+    private String buildingType;
+    @ApiModelProperty("建造年代")
+    private String buildEra;
+    @ApiModelProperty("区id")
+    private Long regionId;
+    @ApiModelProperty("区名称")
+    private String regionName;
+    @ApiModelProperty("街道id")
+    private Long streetId;
+    @ApiModelProperty("街道名称")
+    private String streetName;
+    @ApiModelProperty("详细地址")
+    private String address;
+
+    @ApiModelProperty("专用配电间个数")
+    private Integer powerDistributionNum;
+    @ApiModelProperty("专用配电间位置")
+    private String powerDistributionLocation;
+    @ApiModelProperty("消防水泵房间数")
+    private Integer firePumpNum;
+    @ApiModelProperty("消防水泵房位置")
+    private String firePumpLocation;
+    @ApiModelProperty("避难层个数")
+    private Integer hideFloorNum;
+    @ApiModelProperty("避难层位置")
+    private String hideFloorPosition;
+    @ApiModelProperty("消防控制室个数")
+    private Integer fireControlNum;
+    @ApiModelProperty("消防控制室位置")
+    private String fireControlPosition;
+    @ApiModelProperty("发电机房个数")
+    private Integer generatorNum;
+    @ApiModelProperty("发电机房位置")
+    private String generatorPosition;
+    @ApiModelProperty("其他重要设备房数量")
+    private Integer otherImportantNum;
+    @ApiModelProperty("其他重要设备房位置")
+    private String otherImportantPosition;
+    @ApiModelProperty("审核状态:;1.待审核2.已驳回;3.已审核")
+    private Integer auditStatus;
+    @ApiModelProperty("审核拒绝原因")
+    private String rejectReason;
+    @ApiModelProperty("备注信息")
+    private String remark;
+    @ApiModelProperty("消防安全责任人")
+    private String fireDutyerName;
+    @ApiModelProperty("消防安全责任人联系方式")
+    private String fireDutyerPhone;
+    @ApiModelProperty("消防安全管理人")
+    private String fireManagerName;
+    @ApiModelProperty("消防安全管理人联系方式")
+    private String fireManagerPhone;
+    @ApiModelProperty("经度")
+    private String lon;
+    @ApiModelProperty("纬度")
+    private String lat;
+    @ApiModelProperty("火灾危险性")
+    private String fireDanger;
+    @ApiModelProperty("耐火等级")
+    private String fireProof;
+    @ApiModelProperty("结构类型")
+    private String structureType;
+    @ApiModelProperty("毗邻建筑物情况")
+    private String abutBuild;
+    @ApiModelProperty("安全出口位置")
+    private String emergencyExit;
+    @ApiModelProperty("安全出口形式")
+    private String emergencyExitType;
+    @ApiModelProperty("消防电梯数量")
+    private Integer fireLiftNum;
+    @ApiModelProperty("安全出口数量")
+    private Long emergencyExitNum;
+    @ApiModelProperty("日常工作时间人数")
+    private Integer workerNum;
+    @ApiModelProperty("最大容纳人数")
+    private Integer accommodateMaxNum;
+    @ApiModelProperty("储存物名称")
+    private String storageName;
+    @ApiModelProperty("消防电梯容纳总重量")
+    private Integer lifeAccommodateNum;
+    @ApiModelProperty("储存物性质")
+    private String storageNameNature;
+    @ApiModelProperty("储存物形态")
+    private String storageType;
+    @ApiModelProperty("储存容积")
+    private Double storageVolume;
+    @ApiModelProperty("储存物数量")
+    private Integer storageNum;
+    @ApiModelProperty("主要产品")
+    private String products;
+    @ApiModelProperty("主要原料")
+    private String rawMaterial;
+    @ApiModelProperty("建筑立面图id")
+    private String facadeId;
+    @ApiModelProperty("消防设施平面布置图")
+    private String planeId;
+    @ApiModelProperty("建筑平面图")
+    private String buildPlaneId;
+
+    @ApiModelProperty("消防安全责任人照片id")
+    private String fireDutyerImg;
+    @ApiModelProperty("消防安全管理人照片id")
+    private String fireManagerImg;
+    @ApiModelProperty("产权人")
+    private String propertyer;
+    @ApiModelProperty("产权人联系方式")
+    private String propertyerPhone;
+    @ApiModelProperty("产权人身份证号码")
+    private String propertyerCard;
+    @ApiModelProperty("产权人照片id")
+    private String propertyerPhotoId;
+    @ApiModelProperty("消防安全责任人身份证号码")
+    private String fireDutyerCard;
+    @ApiModelProperty("消防安全管理人身份证号码")
+    private String fireManagerCard;
+    @ApiModelProperty("建筑编码")
+    private String buildCode;
+
+    @ApiModelProperty("大数据高层建筑ID")
+    private Long dbId;
+
+
+
+    @ApiModelProperty("建筑性质:1民用 2公共 3工业")
+    private Integer architectureNature;
+
+    @ApiModelProperty("建筑用途")
+    private String architectureUse;
+
+    @ApiModelProperty("占地面积")
+    private Double floorArea;
+
+    @ApiModelProperty("是否有消控室:1是 2否")
+    private Integer hasFireControlRoom;
+
+    @ApiModelProperty("是否有微型消防站:1是 2否")
+    private Integer hasMiniFireStation;
+
+    @ApiModelProperty("存储/生产物物品类别")
+    private String productType;
+
+    @ApiModelProperty("建筑群id")
+    private Long buildGroupsId;
+
+    @ApiModelProperty("建筑类型:1高层建筑 2自建房")
+    private String type;
+
+    @ApiModelProperty("消防安全管理形式")
+    private String managementForm;
+
+    @ApiModelProperty("住房间数")
+    private Long rooms;
+
+    @ApiModelProperty("住宿人数")
+    private Long accommodation;
+
+    @ApiModelProperty("工作人员数量")
+    private Long staffs;
+
+    @ApiModelProperty("疏散楼梯数")
+    private Long escapeStairs;
+
+    @ApiModelProperty("建筑群(小区)")
+    private String buildGroupsName;
+
+    @ApiModelProperty("楼栋")
+    private String floor;
+
+    @ApiModelProperty("大数据工商ID")
+    private String gsid;
+
+    @ApiModelProperty("数据来源")
+    private String source;
+
+    private String uuid;
+
+}

+ 5 - 0
zfjg-api/zfjg-api-manage/src/main/java/com/zfjg/manage/api/dto/other/WReportDto.java

@@ -52,4 +52,9 @@ public class WReportDto {
     private String year;
 
     private String remark;
+
+
+    @ApiModelProperty("线索来源(SUPERVISE-内部执法监督,REPORT-举报投诉,RECONSIDERATION-复议、诉讼," +
+            "PATROL-上级巡察,SUPERVISION-上级督导,上级考评-EVALUATE,FIREINVESTIGATION-火灾事故调查,OTHER-其他工作中)")
+    private String clueResource;
 }

+ 8 - 0
zfjg-api/zfjg-api-manage/src/main/java/com/zfjg/manage/api/vo/other/WReportVo.java

@@ -17,6 +17,7 @@ public class WReportVo {
     private String orgId;
 
     @Excel(name = "执法机构")
+    @ApiModelProperty("执法机构")
     private String orgName;
 
     @Excel(name = "过错责任人")
@@ -25,12 +26,15 @@ public class WReportVo {
     private String cUser;
 
     @Excel(name = "不当履行职责次数")
+    @ApiModelProperty("不当履行职责次数")
     private Integer dCount;
 
     @Excel(name = "未履行职责次数")
+    @ApiModelProperty("未履行职责次数")
     private Integer nCount;
 
     @Excel(name = "违法履行职责次数")
+    @ApiModelProperty("违法履行职责次数")
     private Integer wCount;
 
     @Excel(name = "处理次数")
@@ -45,4 +49,8 @@ public class WReportVo {
     private String year;
 
     private String remark;
+
+
+    @ApiModelProperty("过错责任人次数")
+    private String wUserCount;
 }

+ 17 - 2
zfjg-modules/zfjg-manage/src/main/java/com/zfjg/manage/controller/other/EnforceObjArchitectureRelateController.java

@@ -42,9 +42,9 @@ public class EnforceObjArchitectureRelateController extends BaseController {
     @PostMapping("/enforceObjArchitectureRelate")
     public R<Boolean> save(@RequestBody EnforceObjArchitectureRelateAdd add) {
         EnforceObjArchitectureRelate enforceObjArchitectureRelate = enforceObjArchitectureRelateService.getOne(new LambdaQueryWrapper<EnforceObjArchitectureRelate>()
-                .eq(EnforceObjArchitectureRelate::getEnforceObjId, add.getEnforceObjId()));
+                .eq(EnforceObjArchitectureRelate::getEnforceObjId, add.getEnforceObjId()).eq(EnforceObjArchitectureRelate::getRelateType,add.getRelateType()));
         if (null != enforceObjArchitectureRelate) {
-            return R.fail("该单位已关联过建筑");
+            return R.ok(true);
         }
         return R.ok(enforceObjArchitectureRelateService.insertEnforceObjArchitectureRelate(add));
     }
@@ -61,6 +61,7 @@ public class EnforceObjArchitectureRelateController extends BaseController {
 //        return R.ok(enforceObjArchitectureRelateService.removeById(id));
 //    }
 
+    // todo 这个接口可能没用
     @ApiOperation(value="根据单位id查询建筑信息")
     @GetMapping("/enforceObjArchitectureRelate/{enforceObjId}")
     public R<ArchitectureDTO> get(@PathVariable String enforceObjId) {
@@ -122,6 +123,20 @@ public class EnforceObjArchitectureRelateController extends BaseController {
 //        return R.ok(list);
 //    }
 
+    @ApiOperation(value="根据单位id查询关联的建筑列表")
+    @GetMapping("/enforceObjArchitectureRelate/architecture/{enforceObjId}")
+    public R<List<EnforceObjArchitectureRelate>> getArchitecturelist(@PathVariable String enforceObjId) {
+        List<EnforceObjArchitectureRelate> list = enforceObjArchitectureRelateService.list(new LambdaQueryWrapper<EnforceObjArchitectureRelate>()
+                .eq(EnforceObjArchitectureRelate::getEnforceObjId,enforceObjId).groupBy(EnforceObjArchitectureRelate::getRelateType));
+        return R.ok(list);
+    }
+
+    @ApiOperation(value="解除绑定(解除单位和建筑的绑定)")
+    @GetMapping("/enforceObjArchitectureRelate/unbind/{id}")
+    public R<Boolean> unbind(@PathVariable Long id) {
+        return R.ok(enforceObjArchitectureRelateService.removeById(id));
+    }
+
 
 
 

+ 10 - 2
zfjg-modules/zfjg-manage/src/main/java/com/zfjg/manage/controller/other/WReportController.java

@@ -118,7 +118,8 @@ public class WReportController extends BaseController {
             wReportDto.setWrongCategory1(Optional.ofNullable(it.getWTypeT()).map(item -> JSON.parseArray(item).toJavaList(Map.class)).orElseGet(ArrayList::new));
             wReportDto.setNotCategory1(Optional.ofNullable(it.getNTypeT()).map(item -> JSON.parseArray(item).toJavaList(Map.class)).orElseGet(ArrayList::new));
             wReportDto.setBreakLawCategory1(Optional.ofNullable(it.getSTypeT()).map(item -> JSON.parseArray(item).toJavaList(Map.class)).orElseGet(ArrayList::new));
-
+            wReportDto.setYear(it.getYear());
+            wReportDto.setClueResource(it.getClueResource());
             return wReportDto;
         }).collect(Collectors.toList());
         return R.ok(wReportDtos);
@@ -142,5 +143,12 @@ public class WReportController extends BaseController {
         return wReportBizService.listReport(wReportQuery);
     }
 
+    @ApiOperation(value = "根据机构分组查询过错列表")
+    @GetMapping("/org/list")
+    public R<List<WReportVo>> getWreportList(WReportQuery wReportQuery) {
+        return R.ok(wReportBizService.getWreportList(wReportQuery));
+    }
+
 
-}
+
+    }

+ 5 - 0
zfjg-modules/zfjg-manage/src/main/java/com/zfjg/manage/mapper/other/WReportMapper.java

@@ -2,6 +2,10 @@ package com.zfjg.manage.mapper.other;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.zfjg.manage.api.domain.other.WReport;
+import com.zfjg.manage.api.vo.other.WReportVo;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 /**
  * <p>
@@ -13,5 +17,6 @@ import com.zfjg.manage.api.domain.other.WReport;
  */
 public interface WReportMapper extends BaseMapper<WReport> {
 
+    List<WReportVo> getWreportList(@Param("enforceOrgIds") List<String> enforceOrgIds,@Param("year")String year);
 
 }

+ 4 - 0
zfjg-modules/zfjg-manage/src/main/java/com/zfjg/manage/service/impl/other/EnforceObjArchitectureRelateServiceImpl.java

@@ -75,6 +75,7 @@ public class EnforceObjArchitectureRelateServiceImpl extends ServiceImpl<Enforce
         //第一次记录,没有变更前的原始值
         his.setAfterArchitectureId(param.getArchitectureId());
         his.setAfterArchitectureUuid(param.getArchitectureUuid());
+        his.setAfterArchitectureName(param.getArchitectureName());
         his.setAfterRelateType(param.getRelateType());
         enforceObjArchitectureRelateHisService.save(his);
         return super.save(param);
@@ -98,14 +99,17 @@ public class EnforceObjArchitectureRelateServiceImpl extends ServiceImpl<Enforce
         his.setCreateTime(new Date());
         his.setBeforeArchitectureId(dt.getArchitectureId());
         his.setBeforeArchitectureUuid(dt.getArchitectureUuid());
+        his.setBeforeArchitectureName(dt.getArchitectureName());
         his.setBeforeRelateType(dt.getRelateType());
         his.setAfterArchitectureId(param.getArchitectureId());
         his.setAfterArchitectureUuid(param.getArchitectureUuid());
+        his.setAfterArchitectureName(param.getArchitectureName());
         his.setAfterRelateType(param.getRelateType());
         enforceObjArchitectureRelateHisService.save(his);
 
         dt.setArchitectureId(param.getArchitectureId());
         dt.setArchitectureUuid(param.getArchitectureUuid());
+        dt.setArchitectureName(param.getArchitectureName());
         dt.setUpdateUserId(user.getUid());
         dt.setUpdateUserName(user.getUserName());
         dt.setUpdateTime(new Date());

+ 14 - 4
zfjg-modules/zfjg-manage/src/main/java/com/zfjg/manage/service/impl/other/WReportServiceImpl.java

@@ -23,14 +23,12 @@ import com.zfjg.system.api.RemoteUserService;
 import com.zfjg.system.api.domain.SysDept;
 import com.zfjg.system.api.domain.SysUser;
 import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
 import java.time.LocalDateTime;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -46,6 +44,9 @@ import java.util.stream.Collectors;
 public class WReportServiceImpl extends ServiceImpl<WReportMapper, WReport> implements IWReportService, WReportBizService {
     @Resource
     private RemoteUserService remoteUserService;
+    @Autowired
+    private WReportMapper wReportMapper;
+
 
     @Override
     public String addReport(WReportDto reportDto) {
@@ -329,4 +330,13 @@ public class WReportServiceImpl extends ServiceImpl<WReportMapper, WReport> impl
         return this.getById(id);
     }
 
+    @Override
+    public List<WReportVo> getWreportList(WReportQuery query) {
+        List<String> enforceOrgIds = new ArrayList<>();
+        if (StringUtils.isNotEmpty(query.getOrgId())) {
+            enforceOrgIds = Arrays.asList(query.getOrgId().split(","));
+        }
+        return wReportMapper.getWreportList(enforceOrgIds,query.getYear());
+    }
+
 }

+ 4 - 0
zfjg-modules/zfjg-manage/src/main/java/com/zfjg/manage/service/other/WReportBizService.java

@@ -6,6 +6,7 @@ import com.zfjg.manage.api.dto.other.WReportDto;
 import com.zfjg.manage.api.dto.other.WReportQuery;
 import com.zfjg.manage.api.vo.other.WReportDetailVO;
 import com.zfjg.manage.api.vo.other.WReportVo;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 
@@ -45,4 +46,7 @@ public interface WReportBizService {
     List<WReportVo> getList(WReportQuery wReportQuery);
 
     WReport info(Long id);
+
+    List<WReportVo> getWreportList(WReportQuery query);
+
 }

+ 16 - 2
zfjg-modules/zfjg-manage/src/main/resources/mapper/enforce/job/EnforceSuperviseMapper.xml

@@ -282,11 +282,18 @@
         ) 视频时长
         FROM
         v_rw a
+        left join enforce_obj eo on a.检查对象 = eo.id
         WHERE
         状态 = '已归档'
         <if test="pm.enforceOrgId  != null  and pm.enforceOrgId != ''">
             and 执法机构id = #{pm.enforceOrgId}
         </if>
+        <if test="pm.enforceObjType  != null  and pm.enforceObjType == 'important'">
+            and eo.enforce_obj_type = '2'
+        </if>
+        <if test="pm.enforceObjType  != null  and pm.enforceObjType == 'other'">
+            and eo.enforce_obj_type in ('3','4')
+        </if>
         <if test="pm.enforceOrgIds !=null and pm.enforceOrgIds.size>0">
             and 执法机构id in
             <foreach item="item" index="i" collection="pm.enforceOrgIds" open="(" close=")" separator=",">
@@ -317,7 +324,7 @@
         FROM
         (
         SELECT
-        id,
+        a.id,
         任务编号 jobNo,
         任务类型 jobTypeName,
         检察员名称 executorNames,
@@ -344,6 +351,7 @@
         ) headCorpsAvgTime
         FROM
         v_rw a
+        left join enforce_obj eo on a.检查对象 = eo.id
         WHERE
         状态 = '已归档'
         AND 是否删除 = '正常'
@@ -359,6 +367,12 @@
                 #{item}
             </foreach>
         </if>
+        <if test="pm.enforceObjType  != null  and pm.enforceObjType == 'important'">
+            and eo.enforce_obj_type = '2'
+        </if>
+        <if test="pm.enforceObjType  != null  and pm.enforceObjType == 'other'">
+            and eo.enforce_obj_type in ('3','4')
+        </if>
         <if test="pm.executorId  != null  and pm.executorId != ''">
             and ${pm.executorId} in (检察员ID)
         </if>
@@ -371,7 +385,7 @@
         <if test="pm.endDate != null and pm.endDate !=''">
             AND 结束执行任务时间 <![CDATA[ <= ]]> #{pm.endDate}
         </if>
-        group by id
+        group by a.id
         ) t
         ORDER BY
         rate,enforceOrgId

+ 38 - 0
zfjg-modules/zfjg-manage/src/main/resources/mapper/other/WreportMapper.xml

@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.zfjg.manage.mapper.other.WReportMapper">
+
+    <!-- 根据机构分组查询过错列表   -->
+    <select id="getWreportList" resultType="com.zfjg.manage.api.vo.other.WReportVo">
+        SELECT
+            *
+        FROM
+            (
+                SELECT
+                    org_id orgId,
+                    org_name orgName,
+                    count( user_id ) wUserCount,
+                    count( w_type_c ) dCount,
+                    sum( n_type_c ) nCount,
+                    sum( s_type_c ) wCount
+                FROM
+                    w_report
+            <where>
+                <if test="enforceOrgIds !=null and enforceOrgIds.size>0">
+                    and org_id in
+                    <foreach item="item" index="i" collection="enforceOrgIds" open="(" close=")" separator=",">
+                        #{item}
+                    </foreach>
+                </if>
+                <if test="year  != null  and year != ''">
+                    and year = #{year}
+                </if>
+            </where>
+                GROUP BY
+                    org_id
+            ) t
+        ORDER BY
+            wUserCount DESC
+    </select>
+
+</mapper>