diff --git a/src/main/java/com/zhgd/mybatis/DataScopeHandler.java b/src/main/java/com/zhgd/mybatis/DataScopeHandler.java index b2a02ce7c..e45bc637a 100644 --- a/src/main/java/com/zhgd/mybatis/DataScopeHandler.java +++ b/src/main/java/com/zhgd/mybatis/DataScopeHandler.java @@ -4,6 +4,7 @@ import cn.hutool.core.collection.CollUtil; import cn.hutool.core.convert.Convert; import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.handler.DataPermissionHandler; import com.zhgd.annotation.DataScope; import com.zhgd.xmgl.modules.basicdata.enums.SystemUserAccountTypeEnum; @@ -13,6 +14,8 @@ import com.zhgd.xmgl.modules.worker.entity.EnterpriseInfo; import com.zhgd.xmgl.modules.worker.mapper.EnterpriseInfoMapper; import com.zhgd.xmgl.modules.worker.service.impl.UserDevAuthorityServiceImpl; import com.zhgd.xmgl.modules.worker.service.impl.UserEnterpriseServiceImpl; +import com.zhgd.xmgl.modules.xz.security.entity.XzSecurityQualityInspectionEnterprise; +import com.zhgd.xmgl.modules.xz.security.service.IXzSecurityQualityInspectionEnterpriseService; import com.zhgd.xmgl.modules.xz.service.impl.XzSupplierQualificationApplyServiceImpl; import com.zhgd.xmgl.security.entity.UserInfo; import com.zhgd.xmgl.security.util.SecurityUtils; @@ -95,7 +98,7 @@ public class DataScopeHandler implements DataPermissionHandler { tables.put("xz_material", "enterprise_id"); tables.put("inspect_task_record", "enterprise_id"); tables.put("xz_security_inspect_task_record", "enterprise_id"); - tables.put("xz_security_quality_inspection_record", "enterprise_id"); +// tables.put("xz_security_quality_inspection_record", "enterprise_id"); tables.put("exam_notice", "enterprise_id"); tables.put("exam_train_record", "enterprise_id"); tables.put("exam_course_record", "enterprise_id"); @@ -136,6 +139,10 @@ public class DataScopeHandler implements DataPermissionHandler { //} } + @Lazy + @Autowired + private IXzSecurityQualityInspectionEnterpriseService xzSecurityQualityInspectionEnterpriseService; + private PlainSelect dataScopeFilterByProject(PlainSelect plainSelect, UserInfo user, Object obj) { JSONObject jo = (JSONObject) obj; Object parameter = jo.get("parameter"); @@ -213,6 +220,20 @@ public class DataScopeHandler implements DataPermissionHandler { } } + //安全隐患 + HashMap xzSecurityTables = new HashMap<>(); + xzSecurityTables.put("xz_security_quality_inspection_record", "id"); + List filterXzSecurityEnterprises = getNeedFilterLeftExpression(plainSelect, xzSecurityTables, ds); + if (CollUtil.isNotEmpty(filterXzSecurityEnterprises)) { + List enterpriseIds = userEnterpriseService.getEnterpriseIdsIfSubProject(); + enterpriseIds.add("0"); + List rids = xzSecurityQualityInspectionEnterpriseService.list(new LambdaQueryWrapper() + .in(XzSecurityQualityInspectionEnterprise::getEnterpriseId, enterpriseIds)).stream().map(XzSecurityQualityInspectionEnterprise::getInspectionId).collect(Collectors.toList()); + for (Long rid : rids) { + inExpression(rid.toString(), enterpriseIds, plainSelect); + } + } + } else if (Objects.equals(user.getAccountType(), SystemUserAccountTypeEnum.SUPPLIER.getValue())) { List filterEnterprises = getNeedFilterLeftExpression(plainSelect, getFieldEnterpriseTables(), ds); EnterpriseInfo ei = enterpriseInfoMapper.getXzSupplierByUserId(SecurityUtils.getUser().getUserId()); diff --git a/src/main/java/com/zhgd/xmgl/modules/xz/security/controller/HiddenDangerStatisticsAndAnalysisController.java b/src/main/java/com/zhgd/xmgl/modules/xz/security/controller/HiddenDangerStatisticsAndAnalysisController.java index 355040208..fdf0a6580 100644 --- a/src/main/java/com/zhgd/xmgl/modules/xz/security/controller/HiddenDangerStatisticsAndAnalysisController.java +++ b/src/main/java/com/zhgd/xmgl/modules/xz/security/controller/HiddenDangerStatisticsAndAnalysisController.java @@ -96,8 +96,8 @@ public class HiddenDangerStatisticsAndAnalysisController { @ApiOperation(value = "各专业隐患小类风险走势图", notes = "各专业隐患小类风险走势图", httpMethod = "POST") @ApiImplicitParams({ @ApiImplicitParam(name = "projectSn", value = "项目SN", paramType = "body", required = true, dataType = "String"), - @ApiImplicitParam(name = "startDate", value = "开始时间,yyyy-MM-dd", paramType = "body", dataType = "String", required = true), - @ApiImplicitParam(name = "endDate", value = "结束时间,yyyy-MM-dd", paramType = "body", dataType = "String", required = true), + @ApiImplicitParam(name = "startMonth", value = "开始时间,格式2020-08", dataType = "String", paramType = "body", required = true), + @ApiImplicitParam(name = "endMonth", value = "结束时间,格式2020-08", dataType = "String", paramType = "body", required = true), @ApiImplicitParam(name = "dutyMajor", value = "责任专业(字典值)", dataType = "String", paramType = "body", required = false), @ApiImplicitParam(name = "smallId", value = "小类的id", dataType = "String", paramType = "body", required = false), }) diff --git a/src/main/java/com/zhgd/xmgl/modules/xz/security/controller/XzSecurityDangerFieldController.java b/src/main/java/com/zhgd/xmgl/modules/xz/security/controller/XzSecurityDangerFieldController.java index d78466703..b68f3fcd4 100644 --- a/src/main/java/com/zhgd/xmgl/modules/xz/security/controller/XzSecurityDangerFieldController.java +++ b/src/main/java/com/zhgd/xmgl/modules/xz/security/controller/XzSecurityDangerFieldController.java @@ -172,7 +172,12 @@ public class XzSecurityDangerFieldController { List configVos = xzSecurityDangerFieldConfigService.queryList(param); List list = xzSecurityDangerFieldService.queryList(param); if (Objects.equals(companyProjectType, 2) && (CollUtil.isEmpty(list) || Objects.equals(CollUtil.getFirst(configVos).getEnableProject(), 0))) { + //项目不存在,查询企业配置 list = getCompanyConfig(param, sn); + for (XzSecurityDangerFieldVo fieldVo : list) { + fieldVo.setCompanyProjectType(companyProjectType); + fieldVo.setSn(sn); + } } return Result.success(list); } diff --git a/src/main/java/com/zhgd/xmgl/modules/xz/security/controller/XzSecurityDangerReviewVerifyController.java b/src/main/java/com/zhgd/xmgl/modules/xz/security/controller/XzSecurityDangerReviewVerifyController.java index b139dab9b..695f0783e 100644 --- a/src/main/java/com/zhgd/xmgl/modules/xz/security/controller/XzSecurityDangerReviewVerifyController.java +++ b/src/main/java/com/zhgd/xmgl/modules/xz/security/controller/XzSecurityDangerReviewVerifyController.java @@ -1,7 +1,5 @@ package com.zhgd.xmgl.modules.xz.security.controller; -import cn.hutool.core.collection.CollUtil; -import cn.hutool.core.util.ReflectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.zhgd.annotation.OperLog; @@ -27,7 +25,6 @@ import springfox.documentation.annotations.ApiIgnore; import java.util.HashMap; import java.util.List; -import java.util.Objects; /** @@ -153,6 +150,7 @@ public class XzSecurityDangerReviewVerifyController { .eq(XzSecurityDangerReviewVerify::getCompanyProjectType, dto.getCompanyProjectType()) ); if (reviewVerifyDb == null) { + dto.setId(null); xzSecurityDangerReviewVerifyService.save(dto); } else { dto.setId(reviewVerifyDb.getId()); diff --git a/src/main/java/com/zhgd/xmgl/modules/xz/security/controller/XzSecurityDangerTypeRecordController.java b/src/main/java/com/zhgd/xmgl/modules/xz/security/controller/XzSecurityDangerTypeRecordController.java index 98ab4007c..b08f8b067 100644 --- a/src/main/java/com/zhgd/xmgl/modules/xz/security/controller/XzSecurityDangerTypeRecordController.java +++ b/src/main/java/com/zhgd/xmgl/modules/xz/security/controller/XzSecurityDangerTypeRecordController.java @@ -100,6 +100,16 @@ public class XzSecurityDangerTypeRecordController { return Result.success(dangerTypeRecordService.getBigList(projectSn)); } + @ApiOperation(value = "安全管理——安全问题库,获取小项列表", notes = "安全管理——安全问题库,获取小项列表") + @ApiImplicitParams({ + @ApiImplicitParam(name = "projectSn", value = "项目SN", paramType = "query", required = true, dataType = "String"), + @ApiImplicitParam(name = "recordStatus", value = "记录状态,0 启用,1禁用", paramType = "body", required = false, dataType = "String"), + }) + @GetMapping(value = "/getSmallList") + public Result> getSmallList(@RequestParam Map map) { + return Result.success(dangerTypeRecordService.getSmallList(map)); + } + /** * 分页列表查询 * diff --git a/src/main/java/com/zhgd/xmgl/modules/xz/security/entity/XzSecurityQualityInspectionRecordDraft.java b/src/main/java/com/zhgd/xmgl/modules/xz/security/entity/XzSecurityQualityInspectionRecordDraft.java index 82d9b91a1..eae0c8b43 100644 --- a/src/main/java/com/zhgd/xmgl/modules/xz/security/entity/XzSecurityQualityInspectionRecordDraft.java +++ b/src/main/java/com/zhgd/xmgl/modules/xz/security/entity/XzSecurityQualityInspectionRecordDraft.java @@ -301,4 +301,9 @@ public class XzSecurityQualityInspectionRecordDraft implements Serializable { */ @ApiModelProperty(value = "上报部门或班组名称") private String reportDepartmentTeamName; + /** + * 1已生成隐患0未生成隐患 + */ + @ApiModelProperty(value = "1已生成隐患0未生成隐患") + private Integer isGenerate; } diff --git a/src/main/java/com/zhgd/xmgl/modules/xz/security/mapper/XzSecurityDangerTypeRecordMapper.java b/src/main/java/com/zhgd/xmgl/modules/xz/security/mapper/XzSecurityDangerTypeRecordMapper.java index 66f07deb1..4a118b1b9 100644 --- a/src/main/java/com/zhgd/xmgl/modules/xz/security/mapper/XzSecurityDangerTypeRecordMapper.java +++ b/src/main/java/com/zhgd/xmgl/modules/xz/security/mapper/XzSecurityDangerTypeRecordMapper.java @@ -81,4 +81,5 @@ public interface XzSecurityDangerTypeRecordMapper extends BaseMapper getTypeRecordList(Map param); + List getSmallList(Map param); } diff --git a/src/main/java/com/zhgd/xmgl/modules/xz/security/mapper/xml/XzSecurityDangerTypeRecordMapper.xml b/src/main/java/com/zhgd/xmgl/modules/xz/security/mapper/xml/XzSecurityDangerTypeRecordMapper.xml index 9408d36db..477d40bd2 100644 --- a/src/main/java/com/zhgd/xmgl/modules/xz/security/mapper/xml/XzSecurityDangerTypeRecordMapper.xml +++ b/src/main/java/com/zhgd/xmgl/modules/xz/security/mapper/xml/XzSecurityDangerTypeRecordMapper.xml @@ -94,6 +94,34 @@ ORDER BY a.parent_id, a.order_sort + + UPDATE xz_security_danger_type_record SET full_name=REPLACE(full_name, #{oldFullName}, #{newFullName}) diff --git a/src/main/java/com/zhgd/xmgl/modules/xz/security/mapper/xml/XzSecurityQualityInspectionRecordMapper.xml b/src/main/java/com/zhgd/xmgl/modules/xz/security/mapper/xml/XzSecurityQualityInspectionRecordMapper.xml index ea376b215..405fdd9f1 100644 --- a/src/main/java/com/zhgd/xmgl/modules/xz/security/mapper/xml/XzSecurityQualityInspectionRecordMapper.xml +++ b/src/main/java/com/zhgd/xmgl/modules/xz/security/mapper/xml/XzSecurityQualityInspectionRecordMapper.xml @@ -261,6 +261,9 @@ LEFT JOIN (SELECT quality_id,MAX(rectify_time) as rectify_time FROM xz_security_quality_rectify_record GROUP BY quality_id) r ON r.quality_id = t.id WHERE 1=1 + + and t.id = #{param.id} + and t.project_sn = #{param.projectSn} @@ -312,13 +315,15 @@ and t.change_id = #{param.changeId} - and t.review_id = #{param.reviewId} + and t.id in (select inspection_id from xz_security_quality_inspection_review where review_id = + #{param.reviewId}) and t.engineering_id is not null - and t.verify_man_id = #{param.verifyManId} + and t.id in (select inspection_id from xz_security_quality_inspection_verify where verify_id = + #{param.verifyManId}) and t.creator_id = #{param.creatorId} @@ -328,8 +333,10 @@ and ((t.change_id = #{param.operatorId} and t.status = 2) or - (t.review_id = #{param.operatorId} and t.status = 3) or - (t.verify_man_id = #{param.operatorId} and t.status = 4)) + (t.id in (select inspection_id from xz_security_quality_inspection_review where review_id = + #{param.operatorId}) and t.status = 3) or + (t.id in (select inspection_id from xz_security_quality_inspection_verify where verify_id = + #{param.operatorId}) and t.status = 4)) and t.level = #{param.level} @@ -1082,7 +1089,7 @@ and create_time concat(#{endMonth},'-31 23:59:59') - group by priority_name_dic, x + group by priority_name_dic, x_name @@ -1148,11 +1155,11 @@ join xz_security_danger_type_record t2 on t.id=r.danger_type_id where r.project_sn = #{projectSn} and t2.level = 2 - - and r.create_time >= #{startDate} + + and r.create_time =]]> concat(#{startMonth},'-01 00:00:00') - - and r.create_time concat(#{endDate},' 23:59:59') + + and r.create_time concat(#{endMonth},'-31 23:59:59') and r.duty_major = #{dutyMajor} diff --git a/src/main/java/com/zhgd/xmgl/modules/xz/security/service/IXzSecurityDangerTypeRecordService.java b/src/main/java/com/zhgd/xmgl/modules/xz/security/service/IXzSecurityDangerTypeRecordService.java index 9c97b0cd0..4bc735236 100644 --- a/src/main/java/com/zhgd/xmgl/modules/xz/security/service/IXzSecurityDangerTypeRecordService.java +++ b/src/main/java/com/zhgd/xmgl/modules/xz/security/service/IXzSecurityDangerTypeRecordService.java @@ -87,4 +87,6 @@ public interface IXzSecurityDangerTypeRecordService extends IService getTypeRecordList(Map param); void add(XzSecurityDangerTypeRecord xzSecurityDangerTypeRecord); + + List getSmallList(Map param); } diff --git a/src/main/java/com/zhgd/xmgl/modules/xz/security/service/impl/XzSecurityDangerReviewVerifyServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/xz/security/service/impl/XzSecurityDangerReviewVerifyServiceImpl.java index 62c6d9267..91266a0d8 100644 --- a/src/main/java/com/zhgd/xmgl/modules/xz/security/service/impl/XzSecurityDangerReviewVerifyServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/xz/security/service/impl/XzSecurityDangerReviewVerifyServiceImpl.java @@ -152,7 +152,20 @@ public class XzSecurityDangerReviewVerifyServiceImpl extends ServiceImpl getSmallList(Map param) { + return baseMapper.getSmallList(param); + } + private Integer getLevel(String level) { if (level == null) { return null; diff --git a/src/main/java/com/zhgd/xmgl/modules/xz/security/service/impl/XzSecurityQualityInspectionRecordDraftServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/xz/security/service/impl/XzSecurityQualityInspectionRecordDraftServiceImpl.java index acbdb3e00..c18e51d8f 100644 --- a/src/main/java/com/zhgd/xmgl/modules/xz/security/service/impl/XzSecurityQualityInspectionRecordDraftServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/xz/security/service/impl/XzSecurityQualityInspectionRecordDraftServiceImpl.java @@ -55,11 +55,13 @@ public class XzSecurityQualityInspectionRecordDraftServiceImpl extends ServiceIm SystemUser user = systemUserService.getById(draft.getInspectManId()); if (user.getWorkerId() != null) { WorkerInfo worker = workerInfoService.queryById(user.getWorkerId() + ""); - draft.setReportEnterprise(worker.getEnterpriseId()); - draft.setReportDepartmentTeamId(Objects.equals(worker.getPersonType(), WorkerInfoPersonTypeEnum.LW.getValue()) ? worker.getTeamId() : worker.getDepartmentId()); - draft.setReportPersonType(worker.getPersonType()); - draft.setReportEnterpriseName(worker.getEnterpriseName()); - draft.setReportDepartmentTeamName(Objects.equals(worker.getPersonType(), WorkerInfoPersonTypeEnum.LW.getValue()) ? worker.getTeamName() : worker.getDepartmentName()); + if (worker != null) { + draft.setReportEnterprise(worker.getEnterpriseId()); + draft.setReportDepartmentTeamId(Objects.equals(worker.getPersonType(), WorkerInfoPersonTypeEnum.LW.getValue()) ? worker.getTeamId() : worker.getDepartmentId()); + draft.setReportPersonType(worker.getPersonType()); + draft.setReportEnterpriseName(worker.getEnterpriseName()); + draft.setReportDepartmentTeamName(Objects.equals(worker.getPersonType(), WorkerInfoPersonTypeEnum.LW.getValue()) ? worker.getTeamName() : worker.getDepartmentName()); + } } this.save(draft); } diff --git a/src/main/java/com/zhgd/xmgl/modules/xz/security/service/impl/XzSecurityQualityInspectionRecordServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/xz/security/service/impl/XzSecurityQualityInspectionRecordServiceImpl.java index 0bbff2028..a3d9f3347 100644 --- a/src/main/java/com/zhgd/xmgl/modules/xz/security/service/impl/XzSecurityQualityInspectionRecordServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/xz/security/service/impl/XzSecurityQualityInspectionRecordServiceImpl.java @@ -488,6 +488,7 @@ public class XzSecurityQualityInspectionRecordServiceImpl extends ServiceImpl() .in(EnterpriseInfo::getId, eids)).stream().map(EnterpriseInfo::getEnterpriseName).collect(Collectors.joining(",")); + record.setId(null); xzSecurityQualityInspectionRecordMapper.insert(record); saveBindData(record); if (Objects.equals(record.getRecordType(), XzSecurityQualityInspectionRecordRecordTypeEnum.DANGER.getValue()) && Objects.equals(record.getStatus(), XzSecurityQualityInspectionRecordStatusEnum.NOT_RECTIFIED.getValue())) { @@ -1212,6 +1213,23 @@ public class XzSecurityQualityInspectionRecordServiceImpl extends ServiceImpl allData = new ArrayList<>(); + boolean first = true; + for (SeriesItem seriesItem : seriesItems) { + List data = seriesItem.getData(); + if (first) { + allData.addAll(data); + first = false; + } else { + for (int i = 0; i < allData.size(); i++) { + allData.set(i, NumberUtil.add(allData.get(i), data.get(i))); + } + } + } + item.setData(allData); + seriesItems.add(0, item); chartDataVo.setSeries(seriesItems); return chartDataVo; } @@ -1290,7 +1308,7 @@ public class XzSecurityQualityInspectionRecordServiceImpl extends ServiceImpl seriesItems = xzSecurityDangerTypeRecordService.list(new LambdaQueryWrapper() - .eq(XzSecurityDangerTypeRecord::getLevel, 2) + .eq(XzSecurityDangerTypeRecord::getLevel, 1) .eq(XzSecurityDangerTypeRecord::getSn, headquartersSn) ).stream().map(o -> { SeriesItem item = new SeriesItem(); @@ -1312,11 +1330,10 @@ public class XzSecurityQualityInspectionRecordServiceImpl extends ServiceImpl all = baseMapper.countSmallByMonth(map); Map allMap = all.stream() + .filter(ob -> Objects.nonNull(ob.getYVal())) .collect(Collectors.toMap( ChartItemBo::getXName, - item -> { - return item.getYVal(); - } + ChartItemBo::getYVal )); List seriesItems = new ArrayList<>(); SeriesItem item = new SeriesItem(); diff --git a/src/main/java/com/zhgd/xmgl/modules/xz/security/service/impl/XzSecurityQualityRectifyRecordServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/xz/security/service/impl/XzSecurityQualityRectifyRecordServiceImpl.java index f15f3b8f0..4b41935a1 100644 --- a/src/main/java/com/zhgd/xmgl/modules/xz/security/service/impl/XzSecurityQualityRectifyRecordServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/xz/security/service/impl/XzSecurityQualityRectifyRecordServiceImpl.java @@ -161,18 +161,20 @@ public class XzSecurityQualityRectifyRecordServiceImpl extends ServiceImpl