Browse Source

Merge remote-tracking branch 'origin/lingshan_master' into lingshan_master

master
wxz 2 years ago
parent
commit
2af6d0c8b9
  1. 36
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/form/OrgCommonFormDTO.java
  2. 1
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/DictTypeEnum.java
  3. 199
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/LingshanOfficeHallServiceRecordDTO.java
  4. 48
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/lingshan/LingshanOfficeHallServiceRecordPageFormDTO.java
  5. 175
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/LingshanOfficeHallServiceRecordController.java
  6. 28
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/LingshanOfficeHallServiceRecordDao.java
  7. 118
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/LingshanOfficeHallServiceRecordEntity.java
  8. 92
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/excel/LingshanOfficeHallServiceRecordExportExcel.java
  9. 70
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/LingshanOfficeHallServiceRecordService.java
  10. 169
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/LingshanOfficeHallServiceRecordServiceImpl.java
  11. 42
      epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/LingshanOfficeHallServiceRecordDao.xml
  12. 15
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/lingshan/DangerousChemicalsDistributionFormDTO.java
  13. 56
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/lingshan/DangerousChemicalsTypeStatDetailDTO.java
  14. 17
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/lingshan/DangerousChemicalsTypeStatResultDTO.java
  15. 31
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcDangerousChemicalsController.java
  16. 11
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcDangerousChemicalsDao.java
  17. 21
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcDangerousChemicalsService.java
  18. 96
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcDangerousChemicalsServiceImpl.java
  19. 28
      epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcDangerousChemicalsDao.xml

36
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/form/OrgCommonFormDTO.java

@ -0,0 +1,36 @@
package com.epmet.commons.tools.dto.form;
import com.epmet.commons.tools.validator.group.CustomerClientShowGroup;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
* @Description
* @Author yzm
* @Date 2023/5/15 13:44
*/
@Data
public class OrgCommonFormDTO implements Serializable {
private static final long serialVersionUID = 2261315322260807610L;
public interface AddUserInternalGroup {
}
public interface AddUserShowGroup extends CustomerClientShowGroup {
}
/**
* 组织id或者网格id
*/
@NotBlank(message = "orgId不能为空", groups = AddUserInternalGroup.class)
private String orgId;
/**
* agency
* grid
*/
@NotBlank(message = "orgType不能为空", groups = AddUserInternalGroup.class)
private String orgType;
}

1
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/DictTypeEnum.java

@ -34,6 +34,7 @@ public enum DictTypeEnum {
TRAFFIC_TYPE("traffic_type", "交通方式", 36),
SOJOURN_HISTORY("sojourn_history", "7天内旅居史情况", 37),
TRIP_DATA_TYPE("trip_data_type", "行程记录类型", 39),
LINGSHAN_OFFICE_HALL_SERVICE_RECORD("lingshan_office_hall_service_record","灵山-办事大厅业务类型",40),
;
private final String code;

199
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/LingshanOfficeHallServiceRecordDTO.java

@ -0,0 +1,199 @@
package com.epmet.dto;
import com.epmet.commons.tools.validator.group.CustomerClientShowGroup;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import org.hibernate.validator.constraints.Length;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;
/**
* 灵山_办事大厅服务记录
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2023-05-15
*/
@Data
public class LingshanOfficeHallServiceRecordDTO implements Serializable {
private static final long serialVersionUID = 2157075710544884607L;
public interface AddInternalGroup {
}
public interface AddShowGroup extends CustomerClientShowGroup {
}
public interface UpdateInternalGroup {
}
public interface UpdateShowGroup extends CustomerClientShowGroup {
}
/**
* 主键
*/
@NotBlank(message = "id不能为空",groups = {UpdateInternalGroup.class})
private String id;
/**
* 租户号
*/
private String customerId;
/**
* 工作人员录入gov_pc居民端小程序resi_mp
*/
private String sourceType;
/**
* 事项类型
*/
@NotBlank(message = "事项类型不能为空",groups = {AddShowGroup.class,UpdateShowGroup.class})
private String categoryCode;
/**
* 类别名称
* 举例营业执照服务食品许可证服务医疗保险业务养老保险业务
*/
private String categoryName;
/**
* 事项说明
*/
@NotBlank(message = "事项说明不能为空",groups = {AddShowGroup.class,UpdateShowGroup.class})
@Length(max = 500, message = "事项说明最多输入500字", groups = {AddShowGroup.class, UpdateShowGroup.class})
private String content;
/**
* 申请人所属组织id或者网格id
*/
@NotBlank(message = "申请人所属组织不能为空",groups = {AddShowGroup.class,UpdateShowGroup.class})
private String applicantOrgId;
/**
* agency或者grid
*/
@NotBlank(message = "orgType不能为空",groups = {AddInternalGroup.class,UpdateInternalGroup.class})
private String applicantOrgType;
/**
* ORG_ID全路径
*/
private String applicantOrgIdPath;
/**
* 申请人所属组织名称
*/
private String applicantOrgName;
/**
* 申请人姓名
*/
// @NotBlank(message = "申请人姓名不能为空",groups = {AddShowGroup.class,UpdateShowGroup.class})
// @Length(max = 30, message = "申请人姓名最多输入30字", groups = {AddShowGroup.class, UpdateShowGroup.class})
private String applicantName;
/**
* 申请人联系电话
*/
// @NotBlank(message = "申请人电话不能为空",groups = {AddShowGroup.class,UpdateShowGroup.class})
// @Length(max = 30, message = "申请人电话最多输入30字", groups = {AddShowGroup.class, UpdateShowGroup.class})
private String applicantMobile;
/**
* 申请人身份证号
*/
// @NotBlank(message = "申请人身份证号不能为空",groups = {AddShowGroup.class,UpdateShowGroup.class})
// @Length(max = 30, message = "申请人身份证号最多输入30字", groups = {AddShowGroup.class, UpdateShowGroup.class})
private String applicantIdCard;
/**
* 申请日期
*/
@NotNull(message = "申请日期不能为空",groups = {AddShowGroup.class,UpdateShowGroup.class})
private Date applicantTime;
/**
* 办理人姓名
*/
@NotBlank(message = "办理人姓名不能为空",groups = {AddShowGroup.class,UpdateShowGroup.class})
@Length(max = 30, message = "办理人姓名最多输入30字", groups = {AddShowGroup.class, UpdateShowGroup.class})
private String transactorName;
/**
* 未办结0已办结1
*/
@NotBlank(message = "办理状态不能为空",groups = {AddShowGroup.class,UpdateShowGroup.class})
private String status;
private String statusName;
/**
* 办结日期
*/
@JsonFormat(pattern = "yyyy-MM-dd")
private Date closeTime;
/**
* 满意度评价-1不满意0基本满意1非常满意
*/
private Integer satisfication;
private String satisficationName;
/**
* 本条数据所属组织id/所属网格id
*/
private String orgId;
/**
* agency或者grid
*/
private String orgType;
/**
* 本条数据所属组织的org_id_path
*/
private String orgIdPath;
/**
* 乐观锁
*/
@JsonIgnore
private Integer revision;
/**
* 删除标记
*/
@JsonIgnore
private String delFlag;
/**
* 创建人
*/
@JsonIgnore
private String createdBy;
/**
* 创建时间
*/
@JsonIgnore
private Date createdTime;
/**
* 更新人
*/
@JsonIgnore
private String updatedBy;
/**
* 更新时间
*/
@JsonIgnore
private Date updatedTime;
}

48
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/lingshan/LingshanOfficeHallServiceRecordPageFormDTO.java

@ -0,0 +1,48 @@
package com.epmet.dto.form.lingshan;
import com.epmet.commons.tools.dto.form.PageFormDTO;
import lombok.Data;
/**
* @Description
* @Author yzm
* @Date 2023/5/15 16:31
*/
@Data
public class LingshanOfficeHallServiceRecordPageFormDTO extends PageFormDTO {
private String orgId;
private String orgType;
/**
* 事项类型
*/
private String categoryCode;
/**
* 事项说明
*/
private String content;
/**
* 满意度评价-1不满意0基本满意1非常满意
*/
private Integer satisfication;
/**
* 办结日期
*/
// @DateTimeFormat(pattern = "yyyy-MM-dd")
// @JsonFormat(pattern = "yyyy-MM-dd")
private String startDate;
// @DateTimeFormat(pattern = "yyyy-MM-dd")
// @JsonFormat(pattern = "yyyy-MM-dd")
private String endDate;
/**
* 未办结0已办结1
*/
private String status;
//tokenDto.
private String customerId;
//tokenDto.
private String staffId;
}

175
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/LingshanOfficeHallServiceRecordController.java

@ -0,0 +1,175 @@
package com.epmet.controller;
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.write.metadata.WriteSheet;
import com.alibaba.excel.write.metadata.style.WriteCellStyle;
import com.alibaba.excel.write.style.HorizontalCellStyleStrategy;
import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy;
import com.alibaba.fastjson.JSON;
import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.aop.NoRepeatSubmit;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.EpmetException;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.commons.tools.utils.ExcelUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.utils.poi.excel.handler.FreezeAndFilter;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.dto.LingshanOfficeHallServiceRecordDTO;
import com.epmet.dto.form.lingshan.LingshanOfficeHallServiceRecordPageFormDTO;
import com.epmet.service.LingshanOfficeHallServiceRecordService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.poi.ss.usermodel.IndexedColors;
import org.apache.poi.ss.usermodel.VerticalAlignment;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Date;
import java.util.List;
/**
* 灵山_办事大厅服务记录
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2023-05-15
*/
@Slf4j
@RestController
@RequestMapping("lingshanOfficeHallServiceRecord")
public class LingshanOfficeHallServiceRecordController {
@Autowired
private LingshanOfficeHallServiceRecordService lingshanOfficeHallServiceRecordService;
/**
* 分页列表
*
* @param formDTO
* @return
*/
@PostMapping("page")
public Result<PageData<LingshanOfficeHallServiceRecordDTO>> page(@LoginUser TokenDto tokenDto, @RequestBody LingshanOfficeHallServiceRecordPageFormDTO formDTO) {
formDTO.setCustomerId(tokenDto.getCustomerId());
formDTO.setStaffId(tokenDto.getUserId());
PageData<LingshanOfficeHallServiceRecordDTO> page = lingshanOfficeHallServiceRecordService.page(formDTO);
return new Result<PageData<LingshanOfficeHallServiceRecordDTO>>().ok(page);
}
/**
* 办事大厅-查看详情
*
* @param id
* @return
*/
@RequestMapping(value = "detail/{id}", method = {RequestMethod.POST})
public Result<LingshanOfficeHallServiceRecordDTO> get(@PathVariable("id") String id) {
LingshanOfficeHallServiceRecordDTO data = lingshanOfficeHallServiceRecordService.get(id);
return new Result<LingshanOfficeHallServiceRecordDTO>().ok(data);
}
/**
* 工作端添加
*
* @param dto
* @return
*/
@NoRepeatSubmit
@PostMapping("save")
public Result save(@LoginUser TokenDto tokenDto, @RequestBody LingshanOfficeHallServiceRecordDTO dto) {
dto.setCustomerId(tokenDto.getCustomerId());
dto.setSourceType("gov_pc");
ValidatorUtils.validateEntity(dto, LingshanOfficeHallServiceRecordDTO.AddShowGroup.class, LingshanOfficeHallServiceRecordDTO.AddInternalGroup.class);
lingshanOfficeHallServiceRecordService.save(dto);
return new Result();
}
/**
* 工作端修改
*
* @param dto
* @return
*/
@NoRepeatSubmit
@PostMapping("update")
public Result update(@LoginUser TokenDto tokenDto, @RequestBody LingshanOfficeHallServiceRecordDTO dto) {
dto.setCustomerId(tokenDto.getCustomerId());
dto.setSourceType("gov_pc");
ValidatorUtils.validateEntity(dto, LingshanOfficeHallServiceRecordDTO.UpdateShowGroup.class, LingshanOfficeHallServiceRecordDTO.UpdateInternalGroup.class);
lingshanOfficeHallServiceRecordService.update(dto);
return new Result();
}
/**
* 批量删除
* 单挑删除
*
* @param ids
* @return
*/
@PostMapping("delete")
public Result delete(@RequestBody List<String> ids) {
if (CollectionUtils.isNotEmpty(ids)) {
lingshanOfficeHallServiceRecordService.delete(ids);
}
return new Result();
}
@PostMapping("export")
public void exportEnterprise(@LoginUser TokenDto tokenDto, @RequestBody LingshanOfficeHallServiceRecordPageFormDTO formDTO, HttpServletResponse response) throws IOException {
formDTO.setCustomerId(tokenDto.getCustomerId());
ExcelWriter excelWriter = null;
formDTO.setPageNo(NumConstant.ONE);
formDTO.setPageSize(NumConstant.TEN_THOUSAND);
try {
String fileName = "办事大厅" + DateUtils.format(new Date()) + ".xlsx";
// 头的策略
WriteCellStyle headWriteCellStyle = new WriteCellStyle();
// 背景设置为红色
headWriteCellStyle.setFillForegroundColor(IndexedColors.PALE_BLUE.getIndex());
WriteCellStyle contentWriteCellStyle = new WriteCellStyle();
contentWriteCellStyle.setVerticalAlignment(VerticalAlignment.CENTER);
HorizontalCellStyleStrategy horizontalCellStyleStrategy = new HorizontalCellStyleStrategy(headWriteCellStyle, contentWriteCellStyle);
FreezeAndFilter writeHandler = new FreezeAndFilter();
excelWriter = EasyExcel.write(ExcelUtils.getOutputStreamForExcel(fileName, response), LingshanOfficeHallServiceRecordDTO.class)
.registerWriteHandler(horizontalCellStyleStrategy)
.registerWriteHandler(new LongestMatchColumnWidthStyleStrategy())
.registerWriteHandler(writeHandler).build();
WriteSheet writeSheet = EasyExcel.writerSheet("Sheet1").registerWriteHandler(new FreezeAndFilter()).build();
PageData<LingshanOfficeHallServiceRecordDTO> data = null;
List<LingshanOfficeHallServiceRecordDTO> list = null;
do {
data = lingshanOfficeHallServiceRecordService.page(formDTO);
list = ConvertUtils.sourceToTarget(data.getList(), LingshanOfficeHallServiceRecordDTO.class);
formDTO.setPageNo(formDTO.getPageNo() + NumConstant.ONE);
excelWriter.write(list, writeSheet);
} while (CollectionUtils.isNotEmpty(list) && list.size() == formDTO.getPageSize());
} catch (EpmetException e) {
response.reset();
response.setCharacterEncoding("UTF-8");
response.setHeader("content-type", "application/json; charset=UTF-8");
PrintWriter printWriter = response.getWriter();
Result<Object> result = new Result<>().error(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), e.getMsg());
printWriter.write(JSON.toJSONString(result));
printWriter.close();
} catch (Exception e) {
log.error("办事大厅列表导出异常export exception", e);
} finally {
if (excelWriter != null) {
excelWriter.finish();
}
}
}
}

28
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/LingshanOfficeHallServiceRecordDao.java

@ -0,0 +1,28 @@
package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.LingshanOfficeHallServiceRecordDTO;
import com.epmet.entity.LingshanOfficeHallServiceRecordEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* 灵山_办事大厅服务记录
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2023-05-15
*/
@Mapper
public interface LingshanOfficeHallServiceRecordDao extends BaseDao<LingshanOfficeHallServiceRecordEntity> {
List<LingshanOfficeHallServiceRecordDTO> pageList(@Param("customerId") String customerId,
@Param("orgIdPath") String orgIdPath,
@Param("categoryCode") String categoryCode,
@Param("content") String content,
@Param("satisfication") Integer satisfication,
@Param("startDate") String startDate,
@Param("endDate") String endDate,
@Param("status") String status);
}

118
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/LingshanOfficeHallServiceRecordEntity.java

@ -0,0 +1,118 @@
package com.epmet.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.epmet.commons.mybatis.entity.BaseEpmetEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 灵山_办事大厅服务记录
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2023-05-15
*/
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("lingshan_office_hall_service_record")
public class LingshanOfficeHallServiceRecordEntity extends BaseEpmetEntity {
private static final long serialVersionUID = 1L;
/**
* 租户号
*/
private String customerId;
/**
* 工作人员录入gov_pc居民端小程序resi_mp
*/
private String sourceType;
/**
* 事项类型
*/
private String categoryCode;
/**
* 事项说明
*/
private String content;
/**
* 申请人所属组织id或者网格id
*/
private String applicantOrgId;
/**
* agency或者grid
*/
private String applicantOrgType;
/**
* ORG_ID全路径
*/
private String applicantOrgIdPath;
/**
* 申请人所属组织名称
*/
private String applicantOrgName;
/**
* 申请人姓名
*/
private String applicantName;
/**
* 申请人联系电话
*/
private String applicantMobile;
/**
* 申请人身份证号
*/
private String applicantIdCard;
/**
* 申请日期
*/
private Date applicantTime;
/**
* 办理人姓名
*/
private String transactorName;
/**
* 未办结0已办结1
*/
private String status;
/**
* 办结日期
*/
private Date closeTime;
/**
* 满意度评价-1不满意0基本满意1非常满意
*/
private Integer satisfication;
/**
* 本条数据所属组织id/所属网格id
*/
private String orgId;
/**
* agency或者grid
*/
private String orgType;
/**
* 本条数据所属组织的org_id_path
*/
private String orgIdPath;
}

92
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/excel/LingshanOfficeHallServiceRecordExportExcel.java

@ -0,0 +1,92 @@
package com.epmet.excel;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.util.Date;
/**
* @Description
* @Author yzm
* @Date 2023/5/15 18:24
*/
@Data
public class LingshanOfficeHallServiceRecordExportExcel {
/**
* 申请人所属组织名称
*/
@ExcelProperty(value = "所属组织")
@ColumnWidth(30)
private String applicantOrgName;
/**
* 类别名称
* 举例营业执照服务食品许可证服务医疗保险业务养老保险业务
*/
@ExcelProperty(value = "事项类型")
@ColumnWidth(25)
private String categoryName;
/**
* 事项说明
*/
@ExcelProperty(value = "事项说明")
@ColumnWidth(40)
private String content;
/**
* 申请人姓名
*/
@ExcelProperty(value = "申请人")
@ColumnWidth(30)
private String applicantName;
/**
* 申请人联系电话
*/
@ExcelProperty(value = "申请人联系电话")
@ColumnWidth(30)
private String applicantMobile;
/**
* 申请人身份证号
*/
@ExcelProperty(value = "申请人身份证号")
@ColumnWidth(30)
private String applicantIdCard;
@ExcelProperty(value = "申请日期")
@ColumnWidth(30)
@JsonFormat(pattern = "yyyy-MM-dd")
private Date applicantTime;
/**
* 办理人姓名
*/
@ExcelProperty(value = "办理人")
@ColumnWidth(30)
private String transactorName;
@ExcelProperty(value = "办理状态")
@ColumnWidth(30)
private String statusName;
/**
* 办结日期
*/
@ExcelProperty(value = "办结日期")
@ColumnWidth(30)
@JsonFormat(pattern = "yyyy-MM-dd")
private Date closeTime;
/**
* 满意度评价-1不满意0基本满意1非常满意
*/
@ExcelProperty(value = "满意度")
@ColumnWidth(25)
private String satisficationName;
}

70
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/LingshanOfficeHallServiceRecordService.java

@ -0,0 +1,70 @@
package com.epmet.service;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData;
import com.epmet.dto.LingshanOfficeHallServiceRecordDTO;
import com.epmet.dto.form.lingshan.LingshanOfficeHallServiceRecordPageFormDTO;
import com.epmet.entity.LingshanOfficeHallServiceRecordEntity;
import java.util.List;
/**
* 灵山_办事大厅服务记录
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2023-05-15
*/
public interface LingshanOfficeHallServiceRecordService extends BaseService<LingshanOfficeHallServiceRecordEntity> {
/**
* 办事大厅-分页列表
*
* @param formDTO
* @return PageData<LingshanOfficeHallServiceRecordDTO>
* @author generator
* @date 2023-05-15
*/
PageData<LingshanOfficeHallServiceRecordDTO> page(LingshanOfficeHallServiceRecordPageFormDTO formDTO);
/**
* 单条查询
*
* @param id
* @return LingshanOfficeHallServiceRecordDTO
* @author generator
* @date 2023-05-15
*/
LingshanOfficeHallServiceRecordDTO get(String id);
/**
* 默认保存
*
* @param dto
* @return void
* @author generator
* @date 2023-05-15
*/
void save(LingshanOfficeHallServiceRecordDTO dto);
/**
* 默认更新
*
* @param dto
* @return void
* @author generator
* @date 2023-05-15
*/
void update(LingshanOfficeHallServiceRecordDTO dto);
/**
* 批量删除
*
* @param ids
* @return void
* @author generator
* @date 2023-05-15
*/
void delete(List<String> ids);
}

169
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/LingshanOfficeHallServiceRecordServiceImpl.java

@ -0,0 +1,169 @@
package com.epmet.service.impl;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.constant.StrConstant;
import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult;
import com.epmet.commons.tools.enums.DictTypeEnum;
import com.epmet.commons.tools.enums.OrgTypeEnum;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.redis.common.CustomerOrgRedis;
import com.epmet.commons.tools.redis.common.CustomerStaffRedis;
import com.epmet.commons.tools.redis.common.bean.AgencyInfoCache;
import com.epmet.commons.tools.redis.common.bean.GridInfoCache;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.EpmetRequestHolder;
import com.epmet.commons.tools.utils.PidUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dao.LingshanOfficeHallServiceRecordDao;
import com.epmet.dto.LingshanOfficeHallServiceRecordDTO;
import com.epmet.dto.form.lingshan.LingshanOfficeHallServiceRecordPageFormDTO;
import com.epmet.entity.LingshanOfficeHallServiceRecordEntity;
import com.epmet.feign.EpmetAdminOpenFeignClient;
import com.epmet.service.LingshanOfficeHallServiceRecordService;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.collections4.MapUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Map;
/**
* 灵山_办事大厅服务记录
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2023-05-15
*/
@Service
public class LingshanOfficeHallServiceRecordServiceImpl extends BaseServiceImpl<LingshanOfficeHallServiceRecordDao, LingshanOfficeHallServiceRecordEntity> implements LingshanOfficeHallServiceRecordService {
@Autowired
private EpmetAdminOpenFeignClient adminOpenFeignClient;
/**
* 办事大厅-分页列表
*
* @param formDTO
* @return
*/
@Override
public PageData<LingshanOfficeHallServiceRecordDTO> page(LingshanOfficeHallServiceRecordPageFormDTO formDTO) {
if (StringUtils.isBlank(formDTO.getOrgId()) && StringUtils.isBlank(formDTO.getOrgType())) {
formDTO.setOrgId(CustomerStaffRedis.getStaffInfo(formDTO.getCustomerId(), formDTO.getStaffId()).getAgencyId());
formDTO.setOrgType(OrgTypeEnum.AGENCY.getCode());
}
String orgIdPath = queryOrgIdPath(formDTO.getCustomerId(), formDTO.getStaffId(), formDTO.getOrgId(), formDTO.getOrgType());
PageHelper.startPage(formDTO.getPageNo(), formDTO.getPageSize());
List<LingshanOfficeHallServiceRecordDTO> resultList = baseDao.pageList(formDTO.getCustomerId(), orgIdPath, formDTO.getCategoryCode(), formDTO.getContent(), formDTO.getSatisfication(), formDTO.getStartDate(), formDTO.getEndDate(), formDTO.getStatus());
if (CollectionUtils.isNotEmpty(resultList)) {
Result<Map<String, String>> categoryRes = adminOpenFeignClient.dictMap(DictTypeEnum.LINGSHAN_OFFICE_HALL_SERVICE_RECORD.getCode());
resultList.forEach(dto -> {
dto.setCategoryName(MapUtils.isNotEmpty(categoryRes.getData()) ? categoryRes.getData().get(dto.getCategoryCode()) : StrConstant.EPMETY_STR);
});
}
PageInfo pageInfo = new PageInfo<>(resultList);
return new PageData<>(resultList, pageInfo.getTotal());
}
/**
* 办事大厅-查看详情
*
* @param id
* @return
*/
@Override
public LingshanOfficeHallServiceRecordDTO get(String id) {
LingshanOfficeHallServiceRecordEntity entity = baseDao.selectById(id);
return ConvertUtils.sourceToTarget(entity, LingshanOfficeHallServiceRecordDTO.class);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void save(LingshanOfficeHallServiceRecordDTO dto) {
LingshanOfficeHallServiceRecordEntity entity = ConvertUtils.sourceToTarget(dto, LingshanOfficeHallServiceRecordEntity.class);
entity.setStatus(NumConstant.ZERO_STR);
if (StringUtils.isNotBlank(dto.getApplicantOrgId())) {
if (OrgTypeEnum.GRID.getCode().equals(dto.getApplicantOrgType())) {
GridInfoCache gridInfoCache = CustomerOrgRedis.getGridInfo(dto.getApplicantOrgId());
entity.setApplicantOrgIdPath(PidUtils.convertPid2OrgIdPath(gridInfoCache.getId(), gridInfoCache.getPids()));
entity.setApplicantOrgName(gridInfoCache.getGridNamePath());
// 本条数据属于网格
entity.setOrgId(gridInfoCache.getId());
entity.setOrgType(dto.getOrgType());
entity.setOrgIdPath(entity.getApplicantOrgIdPath());
} else if (OrgTypeEnum.AGENCY.getCode().equals(dto.getApplicantOrgType())) {
AgencyInfoCache agencyInfoCache = CustomerOrgRedis.getAgencyInfo(dto.getApplicantOrgId());
entity.setApplicantOrgIdPath(PidUtils.convertPid2OrgIdPath(agencyInfoCache.getId(), agencyInfoCache.getPids()));
entity.setApplicantOrgName(agencyInfoCache.getOrganizationName());
// 本条数据属于组织
entity.setOrgId(agencyInfoCache.getId());
entity.setOrgType(dto.getOrgType());
entity.setOrgIdPath(entity.getApplicantOrgIdPath());
}
} else {
// 如果申请人所属组织没填写, 本条数据属于当前工作人员所属组织
entity.setOrgId(CustomerStaffRedis.getStaffInfo(dto.getCustomerId(), EpmetRequestHolder.getLoginUserId()).getAgencyId());
entity.setOrgType(OrgTypeEnum.AGENCY.getCode());
entity.setOrgIdPath(CustomerOrgRedis.getOrgIdPath(entity.getOrgId(), entity.getOrgType()));
}
insert(entity);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void update(LingshanOfficeHallServiceRecordDTO dto) {
LingshanOfficeHallServiceRecordEntity entity = ConvertUtils.sourceToTarget(dto, LingshanOfficeHallServiceRecordEntity.class);
if (StringUtils.isNotBlank(dto.getApplicantOrgId())) {
if (OrgTypeEnum.GRID.getCode().equals(dto.getApplicantOrgType())) {
GridInfoCache gridInfoCache = CustomerOrgRedis.getGridInfo(dto.getApplicantOrgId());
entity.setApplicantOrgIdPath(PidUtils.convertPid2OrgIdPath(gridInfoCache.getId(), gridInfoCache.getPids()));
entity.setApplicantOrgName(gridInfoCache.getGridNamePath());
// 本条数据属于网格
entity.setOrgId(gridInfoCache.getId());
entity.setOrgType(dto.getOrgType());
entity.setOrgIdPath(entity.getApplicantOrgIdPath());
} else if (OrgTypeEnum.AGENCY.getCode().equals(dto.getApplicantOrgType())) {
AgencyInfoCache agencyInfoCache = CustomerOrgRedis.getAgencyInfo(dto.getApplicantOrgId());
entity.setApplicantOrgIdPath(PidUtils.convertPid2OrgIdPath(agencyInfoCache.getId(), agencyInfoCache.getPids()));
entity.setApplicantOrgName(agencyInfoCache.getOrganizationName());
// 本条数据属于组织
entity.setOrgId(agencyInfoCache.getId());
entity.setOrgType(dto.getOrgType());
entity.setOrgIdPath(entity.getApplicantOrgIdPath());
}
} else {
// 如果申请人所属组织没填写, 本条数据属于当前工作人员所属组织
entity.setOrgId(CustomerStaffRedis.getStaffInfo(dto.getCustomerId(), EpmetRequestHolder.getLoginUserId()).getAgencyId());
entity.setOrgType(OrgTypeEnum.AGENCY.getCode());
entity.setOrgIdPath(CustomerOrgRedis.getOrgIdPath(entity.getOrgId(), entity.getOrgType()));
}
updateById(entity);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void delete(List<String> ids) {
// 逻辑删除(@TableLogic 注解)
baseDao.deleteBatchIds(ids);
}
private String queryOrgIdPath(String customerId, String staffId, String orgId, String orgType) {
String orgIdPath = "";
// 如果没传,默认查询当前工作人员所属组织
if (StringUtils.isBlank(orgId) && StringUtils.isBlank(orgType)) {
CustomerStaffInfoCacheResult staffInfoCacheResult = CustomerStaffRedis.getStaffInfo(customerId, staffId);
orgId = staffInfoCacheResult.getAgencyId();
orgType = OrgTypeEnum.AGENCY.getCode();
}
orgIdPath = CustomerOrgRedis.getOrgIdPath(orgId, orgType);
return orgIdPath;
}
}

42
epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/LingshanOfficeHallServiceRecordDao.xml

@ -0,0 +1,42 @@
<?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.epmet.dao.LingshanOfficeHallServiceRecordDao">
<select id="pageList" parameterType="map" resultType="com.epmet.dto.LingshanOfficeHallServiceRecordDTO">
select r.*,
(case when r.STATUS='0' then '未办结'
when r.STATUS='1' then '已办结'
else ''
end)as statusName,
(
case when r.SATISFICATION='-1' then '不满意'
when r.SATISFICATION='0' then '基本满意'
when r.SATISFICATION='1' then '非常满意'
else ''
end)as satisficationName
from lingshan_office_hall_service_record r
where r.DEL_FLAG = '0'
and r.CUSTOMER_ID = #{customerId}
and r.ORG_ID_PATH like concat(#{orgIdPath},'%')
<if test="categoryCode != null and categoryCode != ''">
and r.CATEGORY_CODE = #{categoryCode}
</if>
<if test="content != null and content != ''">
and r.CONTENT like concat('%',#{content},'%')
</if>
<if test="satisfication != null">
and r.SATISFICATION = #{satisfication}
</if>
<if test="status != null and status != ''">
and r.STATUS = #{status}
</if>
<if test='startDate != null and startDate != "" '>
AND DATE_FORMAT(r.CLOSE_TIME,'%Y-%m-%d') >= #{startDate}
</if>
<if test='endDate != null and endDate != "" '>
AND DATE_FORMAT(r.CLOSE_TIME,'%Y-%m-%d') <![CDATA[ <= ]]> #{endDate}
</if>
ORDER BY R.CREATED_TIME DESC
</select>
</mapper>

15
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/lingshan/DangerousChemicalsDistributionFormDTO.java

@ -0,0 +1,15 @@
package com.epmet.dto.form.lingshan;
import com.epmet.commons.tools.dto.form.OrgCommonFormDTO;
import lombok.Data;
/**
* @Description 灵山大屏-安全生产-生产企业类型统计点击饼图中间地图显示列表
* @Author yzm
* @Date 2023/5/15 14:59
*/
@Data
public class DangerousChemicalsDistributionFormDTO extends OrgCommonFormDTO {
private String typeCode;
}

56
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/lingshan/DangerousChemicalsTypeStatDetailDTO.java

@ -0,0 +1,56 @@
package com.epmet.dto.result.lingshan;
/**
* @Description 灵山大屏-安全生产-生产企业类型统计 点击饼图列表及详情返参DTO
* @Author yzm
* @Date 2023/5/15 15:00
*/
import lombok.Data;
@Data
public class DangerousChemicalsTypeStatDetailDTO {
/**
* 企业id
*/
private String id;
/**
* 企业名称
*/
private String name;
/**
* 企业介绍
*/
private String content;
private String longitude;
private String latitude;
private String addr;
/**
* 联系人
*/
private String annt;
/**
* 联系电话
*/
private String phone;
// @JsonIgnore
private String category;
/**
* 类别名称
*/
private String type;
/**
* 是否重点企业
*/
private Boolean zd;
/**
* 包企领导
*/
private String leader;
/**
* 包企干部
*/
private String cadre;
}

17
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/lingshan/DangerousChemicalsTypeStatResultDTO.java

@ -0,0 +1,17 @@
package com.epmet.dto.result.lingshan;
import lombok.Data;
/**
* @Description 灵山大屏-安全生产-生产企业类型统计
* @Author yzm
* @Date 2023/5/15 13:48
*/
@Data
public class DangerousChemicalsTypeStatResultDTO {
private String name;
private Integer value;
private String typeCode;
}

31
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcDangerousChemicalsController.java

@ -10,6 +10,7 @@ import com.alibaba.fastjson.JSON;
import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.aop.NoRepeatSubmit;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.dto.form.OrgCommonFormDTO;
import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.EpmetException;
import com.epmet.commons.tools.exception.ExceptionUtils;
@ -23,8 +24,11 @@ import com.epmet.dto.IcDangerousChemicalsDTO;
import com.epmet.dto.form.IcDangerousChemicalsAddEditFormDTO;
import com.epmet.dto.form.IcDangerousChemicalsListFormDTO;
import com.epmet.dto.form.ImportTaskCommonFormDTO;
import com.epmet.dto.form.lingshan.DangerousChemicalsDistributionFormDTO;
import com.epmet.dto.result.IcDangerousChemicalsListResultDTO;
import com.epmet.dto.result.ImportTaskCommonResultDTO;
import com.epmet.dto.result.lingshan.DangerousChemicalsTypeStatDetailDTO;
import com.epmet.dto.result.lingshan.DangerousChemicalsTypeStatResultDTO;
import com.epmet.excel.IcDangerousChemicalsExcel;
import com.epmet.feign.EpmetCommonServiceOpenFeignClient;
import com.epmet.service.IcDangerousChemicalsService;
@ -288,5 +292,32 @@ public class IcDangerousChemicalsController {
return new Result();
}
/**
* 灵山大屏-安全生产-生产企业类型统计
*
* @param formDto
* @return
*/
@PostMapping("type-stat")
public Result<List<DangerousChemicalsTypeStatResultDTO>> typeStat(@LoginUser TokenDto tokenDto, @RequestBody OrgCommonFormDTO formDto) {
return new Result<List<DangerousChemicalsTypeStatResultDTO>>().ok(icDangerousChemicalsService.typeStat(tokenDto.getCustomerId(),
tokenDto.getUserId(),
formDto.getOrgId(),
formDto.getOrgType()));
}
/**
* 灵山大屏-安全生产-生产企业类型统计,点击饼图查询列表及详情
* @param tokenDto
* @param formDTO
* @return
*/
@PostMapping("distribution")
public Result<List<DangerousChemicalsTypeStatDetailDTO>> distribution(@LoginUser TokenDto tokenDto, @RequestBody DangerousChemicalsDistributionFormDTO formDTO) {
return new Result<List<DangerousChemicalsTypeStatDetailDTO>>().ok(icDangerousChemicalsService.distribution(tokenDto.getCustomerId(),
tokenDto.getUserId(),
formDTO.getOrgId(),
formDTO.getOrgType(),
formDTO.getTypeCode()));
}
}

11
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcDangerousChemicalsDao.java

@ -3,6 +3,7 @@ package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.form.IcDangerousChemicalsListFormDTO;
import com.epmet.dto.result.IcDangerousChemicalsListResultDTO;
import com.epmet.dto.result.lingshan.DangerousChemicalsTypeStatDetailDTO;
import com.epmet.entity.IcDangerousChemicalsEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -24,4 +25,14 @@ public interface IcDangerousChemicalsDao extends BaseDao<IcDangerousChemicalsEnt
void importInsert(@Param("entityList") List<IcDangerousChemicalsEntity> entityList);
/**
* 灵山大屏-安全生产-生产企业类型统计,点击饼图查询列表及详情
* @param customerId
* @param orgIdPath
* @param typeCode
* @return
*/
List<DangerousChemicalsTypeStatDetailDTO> selectDistributionList(@Param("customerId") String customerId,
@Param("orgIdPath") String orgIdPath,
@Param("typeCode") String typeCode);
}

21
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcDangerousChemicalsService.java

@ -7,6 +7,8 @@ import com.epmet.dto.IcDangerousChemicalsDTO;
import com.epmet.dto.form.IcDangerousChemicalsAddEditFormDTO;
import com.epmet.dto.form.IcDangerousChemicalsListFormDTO;
import com.epmet.dto.result.IcDangerousChemicalsListResultDTO;
import com.epmet.dto.result.lingshan.DangerousChemicalsTypeStatDetailDTO;
import com.epmet.dto.result.lingshan.DangerousChemicalsTypeStatResultDTO;
import com.epmet.entity.IcDangerousChemicalsEntity;
import java.nio.file.Path;
@ -82,4 +84,23 @@ public interface IcDangerousChemicalsService extends BaseService<IcDangerousChem
void importInsert(List<IcDangerousChemicalsEntity> entityList);
IcDangerousChemicalsEntity get(String orgId, String name);
/**
* 灵山大屏-安全生产-生产企业类型统计
* @param orgId
* @param orgType
* @return
*/
List<DangerousChemicalsTypeStatResultDTO> typeStat(String customerId,String staffId,String orgId, String orgType);
/**
* 灵山大屏-安全生产-生产企业类型统计,点击饼图查询列表及详情
* @param customerId
* @param userId
* @param orgId
* @param orgType
* @param typeCode
* @return
*/
List<DangerousChemicalsTypeStatDetailDTO> distribution(String customerId, String staffId, String orgId, String orgType, String typeCode);
}

96
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcDangerousChemicalsServiceImpl.java

@ -28,6 +28,8 @@ import com.epmet.dto.form.ImportTaskCommonFormDTO;
import com.epmet.dto.result.IcCoverageCategoryDictListResultDTO;
import com.epmet.dto.result.IcDangerousChemicalsListResultDTO;
import com.epmet.dto.result.UploadImgResultDTO;
import com.epmet.dto.result.lingshan.DangerousChemicalsTypeStatDetailDTO;
import com.epmet.dto.result.lingshan.DangerousChemicalsTypeStatResultDTO;
import com.epmet.entity.IcDangerousChemicalsEntity;
import com.epmet.feign.EpmetAdminOpenFeignClient;
import com.epmet.feign.EpmetCommonServiceOpenFeignClient;
@ -59,10 +61,7 @@ import java.io.IOException;
import java.io.OutputStream;
import java.nio.file.Files;
import java.nio.file.Path;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
import java.util.*;
import java.util.stream.Collectors;
/**
@ -115,7 +114,7 @@ public class IcDangerousChemicalsServiceImpl extends BaseServiceImpl<IcDangerous
Result<Map<String, String>> statusRes = adminOpenFeignClient.dictMap(DictTypeEnum.IC_DANGER_TYPE.getCode());
Map<String, String> statusMap = statusRes.success() && MapUtils.isNotEmpty(statusRes.getData()) ? statusRes.getData() : new HashMap<>();
//企业类别字典数据
List<IcCoverageCategoryDictListResultDTO> dictList = coverageService.dictMap(formDTO.getCustomerId(), "dangerous_chemicals");
List<IcCoverageCategoryDictListResultDTO> dictList = coverageService.dictMap(formDTO.getCustomerId(), CoveragePlaceTypeEnum.DANGEROUS_CHEMICALS.getCode());
Map<String, String> dictMap = dictList.stream().collect(Collectors.toMap(IcCoverageCategoryDictListResultDTO::getValue, IcCoverageCategoryDictListResultDTO::getLabel));
for (IcDangerousChemicalsListResultDTO v : list) {
if (StringUtils.isNotBlank(v.getCategory())) {
@ -225,7 +224,7 @@ public class IcDangerousChemicalsServiceImpl extends BaseServiceImpl<IcDangerous
Result<Map<String, String>> statusRes = adminOpenFeignClient.dictMap(DictTypeEnum.IC_DANGER_TYPE.getCode());
Map<String, String> statusMap = statusRes.success() && MapUtils.isNotEmpty(statusRes.getData()) ? statusRes.getData() : new HashMap<>();
//企业类别字典数据
List<IcCoverageCategoryDictListResultDTO> dictList = coverageService.dictMap(formDTO.getCustomerId(), "city_management");
List<IcCoverageCategoryDictListResultDTO> dictList = coverageService.dictMap(formDTO.getCustomerId(), CoveragePlaceTypeEnum.DANGEROUS_CHEMICALS.getCode());
Map<String, String> dictMap = dictList.stream().collect(Collectors.toMap(IcCoverageCategoryDictListResultDTO::getValue, IcCoverageCategoryDictListResultDTO::getLabel));
if (StringUtils.isNotBlank(resultDTO.getCategory())) {
resultDTO.setCategoryName(dictMap.get(resultDTO.getCategory()));
@ -355,4 +354,89 @@ public class IcDangerousChemicalsServiceImpl extends BaseServiceImpl<IcDangerous
queryWrapper.eq(IcDangerousChemicalsEntity::getOrgId,orgId).eq(IcDangerousChemicalsEntity::getName,name);
return baseDao.selectOne(queryWrapper);
}
/**
* 灵山大屏-安全生产-生产企业类型统计
*
* @param orgId
* @param orgType
* @return
*/
@Override
public List<DangerousChemicalsTypeStatResultDTO> typeStat(String customerId,String staffId,String orgId, String orgType) {
// 企业类别字典数据
List<IcCoverageCategoryDictListResultDTO> dictList = coverageService.dictMap(customerId, CoveragePlaceTypeEnum.DANGEROUS_CHEMICALS.getCode());
if (CollectionUtils.isEmpty(dictList)) {
return new ArrayList<>();
}
String orgIdPath = queryOrgIdPath(customerId,staffId,orgId, orgType);
if (StringUtils.isBlank(orgIdPath)) {
return new ArrayList<>();
}
List<DangerousChemicalsTypeStatResultDTO> resultList = new ArrayList<>();
for (IcCoverageCategoryDictListResultDTO dto : dictList) {
DangerousChemicalsTypeStatResultDTO resultDTO = new DangerousChemicalsTypeStatResultDTO();
resultDTO.setName(dto.getLabel());
LambdaQueryWrapper<IcDangerousChemicalsEntity> countWrapper = new LambdaQueryWrapper<>();
countWrapper.eq(IcDangerousChemicalsEntity::getCustomerId, customerId)
.likeRight(IcDangerousChemicalsEntity::getOrgIdPath, orgIdPath)
.eq(IcDangerousChemicalsEntity::getCategory, dto.getValue());
resultDTO.setValue(baseDao.selectCount(countWrapper));
resultDTO.setTypeCode(dto.getValue());
resultList.add(resultDTO);
}
return resultList;
}
private String queryOrgIdPath(String customerId,String staffId,String orgId, String orgType) {
String orgIdPath = "";
// 如果没传,默认查询当前工作人员所属组织
if (StringUtils.isBlank(orgId) && StringUtils.isBlank(orgType)) {
CustomerStaffInfoCacheResult staffInfoCacheResult = CustomerStaffRedis.getStaffInfo(customerId, staffId);
orgId = staffInfoCacheResult.getAgencyId();
orgType = OrgTypeEnum.AGENCY.getCode();
}
if (OrgTypeEnum.AGENCY.getCode().equals(orgType)) {
CustomerAgencyDTO customerAgencyDTO = SpringContextUtils.getBean(CustomerAgencyService.class).get(orgId);
orgIdPath = PidUtils.convertPid2OrgIdPath(customerAgencyDTO.getId(), customerAgencyDTO.getPids());
} else if (OrgTypeEnum.GRID.getCode().equals(orgType)) {
CustomerGridDTO customerGridDTO = SpringContextUtils.getBean(CustomerGridService.class).get(orgId);
orgIdPath = PidUtils.convertPid2OrgIdPath(customerGridDTO.getId(), customerGridDTO.getPids());
}
return orgIdPath;
}
/**
* 灵山大屏-安全生产-生产企业类型统计,点击饼图查询列表及详情
*
* @param customerId
* @param staffId
* @param orgId
* @param orgType
* @param typeCode
* @return
*/
@Override
public List<DangerousChemicalsTypeStatDetailDTO> distribution(String customerId, String staffId, String orgId, String orgType, String typeCode) {
// 企业类别字典数据
List<IcCoverageCategoryDictListResultDTO> dictList = coverageService.dictMap(customerId, CoveragePlaceTypeEnum.DANGEROUS_CHEMICALS.getCode());
if (CollectionUtils.isEmpty(dictList)) {
return new ArrayList<>();
}
Map<String, String> categoryDictMap = dictList.stream().collect(Collectors.toMap(IcCoverageCategoryDictListResultDTO::getValue, IcCoverageCategoryDictListResultDTO::getLabel));
String orgIdPath = queryOrgIdPath(customerId, staffId, orgId, orgType);
if (StringUtils.isBlank(orgIdPath)) {
return new ArrayList<>();
}
List<DangerousChemicalsTypeStatDetailDTO> list = baseDao.selectDistributionList(customerId, orgIdPath, typeCode);
list.forEach(l -> {
// 赋值企业分类名称
if (MapUtils.isNotEmpty(categoryDictMap) && categoryDictMap.containsKey(l.getCategory())) {
l.setType(categoryDictMap.get(l.getCategory()));
}
});
return list;
}
}

28
epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcDangerousChemicalsDao.xml

@ -143,5 +143,31 @@
AND del_flag = '0'
</delete>
<!-- 灵山大屏-安全生产-生产企业类型统计,点击饼图,查询列表及详情 -->
<select id="selectDistributionList" parameterType="map" resultType="com.epmet.dto.result.lingshan.DangerousChemicalsTypeStatDetailDTO">
SELECT
c.id,
c.`NAME`,
c.COMPANY_PROFILE AS content,
c.LONGITUDE,
c.LATITUDE,
c.ADDRESS AS addr,
c.PRINCIPAL_NAME AS annt,
c.PRINCIPAL_MOBILE AS phone,
c.CATEGORY,
'' AS type,
c.SECURITY_FLAG AS zd,
c.BQ_LD AS leader,
c.BQ_GB AS cadre
FROM
ic_dangerous_chemicals c
WHERE
c.DEL_FLAG = '0'
AND c.CUSTOMER_ID = #{customerId}
and c.ORG_ID_PATH like concat(#{orgIdPath},'%')
<if test="typeCode != null and typeCode != '' ">
AND c.CATEGORY = #{typeCode}
</if>
order by c.CREATED_TIME desc
</select>
</mapper>
Loading…
Cancel
Save