榕图bug修复

This commit is contained in:
guo 2023-12-21 18:52:10 +08:00
parent 0eb850c8f1
commit 6be05fecb8
12 changed files with 348 additions and 121 deletions

View File

@ -7,8 +7,15 @@ import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiImplicitParams;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.URLEncoder;
import java.util.HashMap; import java.util.HashMap;
import org.apache.poi.util.IOUtils;
import org.springframework.core.io.ClassPathResource;
import org.springframework.web.multipart.MultipartFile;
import springfox.documentation.annotations.ApiIgnore; import springfox.documentation.annotations.ApiIgnore;
import java.util.List; import java.util.List;
@ -23,6 +30,8 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
/** /**
* @Title: Controller * @Title: Controller
@ -39,6 +48,16 @@ public class RtRiskInventoryTypeController {
@Autowired @Autowired
private IRtRiskInventoryTypeService rtRiskInventoryTypeService; private IRtRiskInventoryTypeService rtRiskInventoryTypeService;
@ApiOperation(value = "tree分页列表查询榕图-风险清册类型信息", notes = "tree分页列表查询榕图-风险清册类型信息", httpMethod = "GET")
@ApiImplicitParams({
@ApiImplicitParam(name = "pageNo", value = "第几页", paramType = "query", required = true, dataType = "Integer"),
@ApiImplicitParam(name = "pageSize", value = "每页显示条数", paramType = "query", required = true, dataType = "Integer"),
})
@GetMapping(value = "/tree/page")
public Result<IPage<RtRiskInventoryType>> queryTreePageList(@ApiIgnore @RequestParam HashMap<String, Object> paramMap) {
return Result.success(rtRiskInventoryTypeService.queryTreePageList(paramMap));
}
/** /**
* 分页列表查询 * 分页列表查询
* *
@ -136,4 +155,32 @@ public class RtRiskInventoryTypeController {
return result; return result;
} }
@ApiOperation(value = "模板导入下载", notes = "模板导入下载")
@GetMapping("/downloadExcelTemplate")
public void downloadRtRiskSecurityLibraryTypeExcelTemplate(HttpServletResponse response) {
try {
OutputStream out = response.getOutputStream();
response.setCharacterEncoding("UTF-8");
response.setContentType("application/vnd.ms-excel;charset=gb2312");
response.setHeader("Content-disposition", "attachment;filename=" + URLEncoder.encode("风险清册导入模板.xlsx", "UTF-8"));
InputStream fis = new ClassPathResource("excel/风险清册导入模板.xlsx").getInputStream();
IOUtils.copy(fis, out);
out.flush();
out.close();
} catch (IOException e) {
e.printStackTrace();
}
}
@ApiOperation(value = "模板导入", notes = "模板导入")
@ApiImplicitParams({
@ApiImplicitParam(name = "projectSn", value = "项目sn", paramType = "query", required = true, dataType = "String"),
@ApiImplicitParam(name = "excelFile", value = "导入文件", paramType = "query", required = true, dataType = "String"),
})
@PostMapping(value = "/importExcelTemplate")
public Result importExcelTemplate(MultipartFile excelFile, String projectSn) throws Exception {
rtRiskInventoryTypeService.importExcelTemplate(excelFile, projectSn);
return Result.ok();
}
} }

View File

@ -1,17 +1,18 @@
package com.zhgd.xmgl.modules.rt.entity; package com.zhgd.xmgl.modules.rt.entity;
import java.io.Serializable;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.List;
/** /**
* @Description: 榕图-风险清册类型 * @Description: 榕图-风险清册类型
@ -37,6 +38,13 @@ public class RtRiskInventoryType implements Serializable {
@Excel(name = "名称", width = 15) @Excel(name = "名称", width = 15)
@ApiModelProperty(value = "名称") @ApiModelProperty(value = "名称")
private java.lang.String name; private java.lang.String name;
/**
* 工序名称
*/
@Excel(name = "工序名称", width = 15)
@ApiModelProperty(value = "工序名称")
private java.lang.String processName;
/** /**
* 编码 * 编码
*/ */
@ -111,4 +119,8 @@ public class RtRiskInventoryType implements Serializable {
@Excel(name = "预防措施", width = 15) @Excel(name = "预防措施", width = 15)
@ApiModelProperty(value = "预防措施") @ApiModelProperty(value = "预防措施")
private java.lang.Object precaution; private java.lang.Object precaution;
@TableField(exist = false)
@ApiModelProperty(value = "榕图-风险清册类型子集")
private List<RtRiskInventoryType> children;
} }

View File

@ -190,6 +190,9 @@ public class RtWorkTicket implements Serializable {
@ApiModelProperty(value = "榕图-风险安全库-作业类型、工序及部位Json") @ApiModelProperty(value = "榕图-风险安全库-作业类型、工序及部位Json")
private String rtRiskSecurityLibraryTypeJson; private String rtRiskSecurityLibraryTypeJson;
@ApiModelProperty(value = "榕图-风险安全库-作业类型、工序及部位字符串")
private String rtRiskSecurityLibraryTypeStr;
@TableField(exist = false) @TableField(exist = false)
@ApiModelProperty(value = "榕图-风险安全库-作业类型、工序及部位idList") @ApiModelProperty(value = "榕图-风险安全库-作业类型、工序及部位idList")
private List<String> rtRiskSecurityLibraryTypeIdList; private List<String> rtRiskSecurityLibraryTypeIdList;

View File

@ -1,8 +1,15 @@
package com.zhgd.xmgl.modules.rt.mapper; package com.zhgd.xmgl.modules.rt.mapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhgd.xmgl.modules.rt.entity.RtRiskInventoryType; import com.zhgd.xmgl.modules.rt.entity.RtRiskInventoryType;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/** /**
* @Description: 榕图-风险清册类型 * @Description: 榕图-风险清册类型
@ -13,4 +20,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
@Mapper @Mapper
public interface RtRiskInventoryTypeMapper extends BaseMapper<RtRiskInventoryType> { public interface RtRiskInventoryTypeMapper extends BaseMapper<RtRiskInventoryType> {
List<RtRiskInventoryType> queryList(@Param(Constants.WRAPPER) QueryWrapper<RtRiskInventoryType> queryWrapper);
IPage<RtRiskInventoryType> queryList(Page<RtRiskInventoryType> page, @Param(Constants.WRAPPER) QueryWrapper<RtRiskInventoryType> queryWrapper);
} }

View File

@ -1,8 +1,15 @@
package com.zhgd.xmgl.modules.rt.mapper; package com.zhgd.xmgl.modules.rt.mapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhgd.xmgl.modules.rt.entity.RtWorkTicket; import com.zhgd.xmgl.modules.rt.entity.RtWorkTicket;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/** /**
* @Description: 榕图-工作票 * @Description: 榕图-工作票
@ -13,4 +20,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
@Mapper @Mapper
public interface RtWorkTicketMapper extends BaseMapper<RtWorkTicket> { public interface RtWorkTicketMapper extends BaseMapper<RtWorkTicket> {
IPage<RtWorkTicket> queryList(Page<RtWorkTicket> page, @Param(Constants.WRAPPER) QueryWrapper<RtWorkTicket> queryWrapper);
List<RtWorkTicket> queryList(@Param(Constants.WRAPPER) QueryWrapper<RtWorkTicket> queryWrapper);
} }

View File

@ -1,5 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?> <?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"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zhgd.xmgl.modules.rt.mapper.RtRiskInventoryTypeMapper"> <mapper namespace="com.zhgd.xmgl.modules.rt.mapper.RtRiskInventoryTypeMapper">
<select id="queryList" resultType="com.zhgd.xmgl.modules.rt.entity.RtRiskInventoryType">
select *
from rt_risk_inventory_type
${ew.customSqlSegment}
</select>
</mapper> </mapper>

View File

@ -1,4 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?> <?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"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zhgd.xmgl.modules.rt.mapper.RtWorkTicketMapper"> <mapper namespace="com.zhgd.xmgl.modules.rt.mapper.RtWorkTicketMapper">
<resultMap id="queryListResultMap" type="com.zhgd.xmgl.modules.rt.entity.RtWorkTicket">
<id column="id" jdbcType="BIGINT" property="id"/>
<collection property="rtRiskSecurityLibraryTypeIdList" column="id" ofType="string"
select="queryRtWorkTicketToRiskSecurityLibraryTypeId"/>
</resultMap>
<select id="queryList" resultMap="queryListResultMap">
select rwt.*
from rt_work_ticket rwt
${ew.customSqlSegment}
</select>
<select id="queryRtWorkTicketToRiskSecurityLibraryTypeId" resultType="java.lang.String">
SELECT CONCAT(rt_risk_security_library_type_id) rt_work_ticket_to_risk_security_library_type_id
FROM rt_work_ticket_to_risk_security_library_type
WHERE rt_work_ticket_id = #{rtWorkTicketId}
</select>
</mapper> </mapper>

View File

@ -3,7 +3,9 @@ package com.zhgd.xmgl.modules.rt.service;
import com.zhgd.xmgl.modules.rt.entity.RtRiskInventoryType; import com.zhgd.xmgl.modules.rt.entity.RtRiskInventoryType;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springframework.web.multipart.MultipartFile;
import java.io.IOException;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
@ -22,4 +24,8 @@ public interface IRtRiskInventoryTypeService extends IService<RtRiskInventoryTyp
void add(RtRiskInventoryType rtRiskInventoryType); void add(RtRiskInventoryType rtRiskInventoryType);
void edit(RtRiskInventoryType rtRiskInventoryType); void edit(RtRiskInventoryType rtRiskInventoryType);
IPage<RtRiskInventoryType> queryTreePageList(HashMap<String, Object> paramMap);
void importExcelTemplate(MultipartFile excelFile, String projectSn) throws Exception;
} }

View File

@ -1,22 +1,31 @@
package com.zhgd.xmgl.modules.rt.service.impl; package com.zhgd.xmgl.modules.rt.service.impl;
import com.zhgd.xmgl.modules.rt.entity.RtRiskInventoryType; import cn.hutool.core.collection.CollUtil;
import com.zhgd.xmgl.modules.rt.mapper.RtRiskInventoryTypeMapper; import cn.hutool.core.util.StrUtil;
import com.zhgd.xmgl.modules.rt.service.IRtRiskInventoryTypeService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhgd.jeecg.common.system.query.QueryGenerator;
import com.zhgd.xmgl.util.PageUtil;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhgd.jeecg.common.execption.OpenAlertException;
import com.zhgd.jeecg.common.system.query.QueryGenerator;
import com.zhgd.xmgl.modules.rt.entity.RtRiskInventoryType;
import com.zhgd.xmgl.modules.rt.entity.RtRiskSecurityLibraryType;
import com.zhgd.xmgl.modules.rt.mapper.RtRiskInventoryTypeMapper;
import com.zhgd.xmgl.modules.rt.service.IRtRiskInventoryTypeService;
import com.zhgd.xmgl.util.*;
import org.apache.commons.collections.MapUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
import java.io.IOException;
import java.io.InputStream;
import java.util.Collections;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map;
import com.zhgd.xmgl.util.RefUtil; import java.util.stream.Collectors;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.beans.factory.annotation.Autowired;
/** /**
* @Description: 榕图-风险清册类型 * @Description: 榕图-风险清册类型
@ -34,7 +43,7 @@ public class RtRiskInventoryTypeServiceImpl extends ServiceImpl<RtRiskInventoryT
public IPage<RtRiskInventoryType> queryPageList(HashMap<String, Object> paramMap) { public IPage<RtRiskInventoryType> queryPageList(HashMap<String, Object> paramMap) {
QueryWrapper<RtRiskInventoryType> queryWrapper = getQueryWrapper(paramMap); QueryWrapper<RtRiskInventoryType> queryWrapper = getQueryWrapper(paramMap);
Page<RtRiskInventoryType> page = PageUtil.getPage(paramMap); Page<RtRiskInventoryType> page = PageUtil.getPage(paramMap);
IPage<RtRiskInventoryType> pageList = this.page(page, queryWrapper); IPage<RtRiskInventoryType> pageList = baseMapper.queryList(page, queryWrapper);
pageList.setRecords(dealList(pageList.getRecords())); pageList.setRecords(dealList(pageList.getRecords()));
return pageList; return pageList;
} }
@ -42,7 +51,7 @@ public class RtRiskInventoryTypeServiceImpl extends ServiceImpl<RtRiskInventoryT
@Override @Override
public List<RtRiskInventoryType> queryList(HashMap<String, Object> paramMap) { public List<RtRiskInventoryType> queryList(HashMap<String, Object> paramMap) {
QueryWrapper<RtRiskInventoryType> queryWrapper = getQueryWrapper(paramMap); QueryWrapper<RtRiskInventoryType> queryWrapper = getQueryWrapper(paramMap);
return dealList(this.list(queryWrapper)); return dealList(baseMapper.queryList(queryWrapper));
} }
private QueryWrapper<RtRiskInventoryType> getQueryWrapper(HashMap<String, Object> paramMap) { private QueryWrapper<RtRiskInventoryType> getQueryWrapper(HashMap<String, Object> paramMap) {
@ -66,4 +75,71 @@ public class RtRiskInventoryTypeServiceImpl extends ServiceImpl<RtRiskInventoryT
public void edit(RtRiskInventoryType rtRiskInventoryType) { public void edit(RtRiskInventoryType rtRiskInventoryType) {
baseMapper.updateById(rtRiskInventoryType); baseMapper.updateById(rtRiskInventoryType);
} }
@Override
public IPage<RtRiskInventoryType> queryTreePageList(HashMap<String, Object> paramMap) {
String taskName = MapUtils.getString(paramMap, "taskName");
Integer status = MapUtils.getInteger(paramMap, "status");
String actualFinishDate_begin = MapUtils.getString(paramMap, "actualFinishDate_begin");
String actualFinishDate_end = MapUtils.getString(paramMap, "actualFinishDate_end");
if (StrUtil.isBlank(taskName) && StrUtil.isBlank(actualFinishDate_begin) && StrUtil.isBlank(actualFinishDate_end) && status == null) {
int pageNo = Integer.parseInt(paramMap.getOrDefault("pageNo", 1).toString());
int pageSize = Integer.parseInt(paramMap.getOrDefault("pageSize", 10).toString());
List<RtRiskInventoryType> list = getParentChildList(paramMap);
IPage<RtRiskInventoryType> p = new Page<>();
int i = cn.hutool.core.util.PageUtil.getStart(pageNo - 1, pageSize);
p.setTotal(list.size());
p.setRecords(CollUtil.sub(list, i, i + pageSize));
p.setCurrent(pageNo);
p.setSize(pageSize);
return p;
} else {
return this.queryPageList(paramMap);
}
}
@Override
public void importExcelTemplate(MultipartFile excelFile, String projectSn) throws Exception {
InputStream is = excelFile.getInputStream();
List<Map<String, String>> list = ExcelUtils.jxlExlToList(is, 0);
if (list == null || list.size() == 0) {
throw new OpenAlertException(MessageUtil.get("excelNotDataErr"));
}
Map<String, RtRiskSecurityLibraryType> libraryObj = new HashMap<>();
for (Map<String, String> importInfo : list) {
//风险编号 工序 风险可能导致的后果 风险评定值D 风险级别 风险控制关键因素 预控措施 备注
if (importInfo == null || importInfo.get("风险编号") == null || importInfo.get("风险编号").equals("")) {
continue;
}
String code = importInfo.get("编码").trim();
String typeName = importInfo.get("作业类型、工序及部位");
String newCode = CodeUtils.subCode(code);
}
}
public List<RtRiskInventoryType> getParentChildList(HashMap<String, Object> paramMap) {
// 查询项目下的节点集合通过父节点分组
List<RtRiskInventoryType> progressTaskList = this.queryList(paramMap);
Map<Long, List<RtRiskInventoryType>> parentIdTaskListMap = progressTaskList.stream().collect(Collectors.groupingBy(RtRiskInventoryType::getParentId));
return getChild(parentIdTaskListMap, 0L);
}
/**
* 递归设置子节点列表
*
* @param parentIdTaskListMap 父节点对应的子节点列表
* @param parentId 父节点id
* @return
*/
public List<RtRiskInventoryType> getChild(Map<Long, List<RtRiskInventoryType>> parentIdTaskListMap, Long parentId) {
List<RtRiskInventoryType> parentList = parentIdTaskListMap.getOrDefault(parentId, Collections.emptyList());
if (CollUtil.isNotEmpty(parentList)) {
for (RtRiskInventoryType progressTask : parentList) {
progressTask.setChildren(getChild(parentIdTaskListMap, progressTask.getId()));
}
}
return parentList;
}
} }

View File

@ -1,26 +1,31 @@
package com.zhgd.xmgl.modules.rt.service.impl; package com.zhgd.xmgl.modules.rt.service.impl;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import com.zhgd.xmgl.modules.rt.entity.RtWorkTicket; import com.alibaba.fastjson.JSON;
import com.zhgd.xmgl.modules.rt.entity.RtWorkTicketToRiskSecurityLibraryType; import com.alibaba.fastjson.JSONArray;
import com.zhgd.xmgl.modules.rt.mapper.RtWorkTicketMapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.zhgd.xmgl.modules.rt.mapper.RtWorkTicketToRiskSecurityLibraryTypeMapper;
import com.zhgd.xmgl.modules.rt.service.IRtWorkTicketService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhgd.jeecg.common.system.query.QueryGenerator;
import com.zhgd.xmgl.util.PageUtil;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhgd.jeecg.common.system.query.QueryGenerator;
import com.zhgd.xmgl.modules.rt.entity.RtRiskSecurityLibraryType;
import com.zhgd.xmgl.modules.rt.entity.RtWorkTicket;
import com.zhgd.xmgl.modules.rt.entity.RtWorkTicketToRiskSecurityLibraryType;
import com.zhgd.xmgl.modules.rt.mapper.RtRiskSecurityLibraryTypeMapper;
import com.zhgd.xmgl.modules.rt.mapper.RtWorkTicketMapper;
import com.zhgd.xmgl.modules.rt.mapper.RtWorkTicketToRiskSecurityLibraryTypeMapper;
import com.zhgd.xmgl.modules.rt.service.IRtWorkTicketService;
import com.zhgd.xmgl.util.PageUtil;
import com.zhgd.xmgl.util.RefUtil;
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.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import com.zhgd.xmgl.util.RefUtil;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.beans.factory.annotation.Autowired;
/** /**
* @Description: 榕图-工作票 * @Description: 榕图-工作票
* @author pds * @author pds
@ -34,12 +39,14 @@ public class RtWorkTicketServiceImpl extends ServiceImpl<RtWorkTicketMapper, RtW
private RtWorkTicketMapper rtWorkTicketMapper; private RtWorkTicketMapper rtWorkTicketMapper;
@Autowired @Autowired
private RtWorkTicketToRiskSecurityLibraryTypeMapper rtWorkTicketToRiskSecurityLibraryTypeMapper; private RtWorkTicketToRiskSecurityLibraryTypeMapper rtWorkTicketToRiskSecurityLibraryTypeMapper;
@Autowired
private RtRiskSecurityLibraryTypeMapper rtRiskSecurityLibraryTypeMapper;
@Override @Override
public IPage<RtWorkTicket> queryPageList(HashMap<String, Object> paramMap) { public IPage<RtWorkTicket> queryPageList(HashMap<String, Object> paramMap) {
QueryWrapper<RtWorkTicket> queryWrapper = getQueryWrapper(paramMap); QueryWrapper<RtWorkTicket> queryWrapper = getQueryWrapper(paramMap);
Page<RtWorkTicket> page = PageUtil.getPage(paramMap); Page<RtWorkTicket> page = PageUtil.getPage(paramMap);
IPage<RtWorkTicket> pageList = this.page(page, queryWrapper); IPage<RtWorkTicket> pageList = baseMapper.queryList(page, queryWrapper);
pageList.setRecords(dealList(pageList.getRecords())); pageList.setRecords(dealList(pageList.getRecords()));
return pageList; return pageList;
} }
@ -47,11 +54,11 @@ public class RtWorkTicketServiceImpl extends ServiceImpl<RtWorkTicketMapper, RtW
@Override @Override
public List<RtWorkTicket> queryList(HashMap<String, Object> paramMap) { public List<RtWorkTicket> queryList(HashMap<String, Object> paramMap) {
QueryWrapper<RtWorkTicket> queryWrapper = getQueryWrapper(paramMap); QueryWrapper<RtWorkTicket> queryWrapper = getQueryWrapper(paramMap);
return dealList(this.list(queryWrapper)); return dealList(baseMapper.queryList(queryWrapper));
} }
private QueryWrapper<RtWorkTicket> getQueryWrapper(HashMap<String, Object> paramMap) { private QueryWrapper<RtWorkTicket> getQueryWrapper(HashMap<String, Object> paramMap) {
String alias = ""; String alias = "rwt.";
QueryWrapper<RtWorkTicket> queryWrapper = QueryGenerator.initPageQueryWrapper(RtWorkTicket.class, paramMap, alias); QueryWrapper<RtWorkTicket> queryWrapper = QueryGenerator.initPageQueryWrapper(RtWorkTicket.class, paramMap, alias);
queryWrapper.orderByDesc(alias + RefUtil.fieldNameUlc(RtWorkTicket::getId)); queryWrapper.orderByDesc(alias + RefUtil.fieldNameUlc(RtWorkTicket::getId));
return queryWrapper; return queryWrapper;
@ -64,7 +71,12 @@ public class RtWorkTicketServiceImpl extends ServiceImpl<RtWorkTicketMapper, RtW
@Override @Override
public void add(RtWorkTicket rtWorkTicket) { public void add(RtWorkTicket rtWorkTicket) {
rtWorkTicket.setId(null); rtWorkTicket.setId(null);
setRtRiskSecurityLibraryTypeStrIf(rtWorkTicket);
baseMapper.insert(rtWorkTicket); baseMapper.insert(rtWorkTicket);
insertRelIf(rtWorkTicket);
}
private void insertRelIf(RtWorkTicket rtWorkTicket) {
List<String> rtRiskSecurityLibraryTypeIdList = rtWorkTicket.getRtRiskSecurityLibraryTypeIdList(); List<String> rtRiskSecurityLibraryTypeIdList = rtWorkTicket.getRtRiskSecurityLibraryTypeIdList();
if (CollUtil.isNotEmpty(rtRiskSecurityLibraryTypeIdList)) { if (CollUtil.isNotEmpty(rtRiskSecurityLibraryTypeIdList)) {
for (String id : rtRiskSecurityLibraryTypeIdList) { for (String id : rtRiskSecurityLibraryTypeIdList) {
@ -76,8 +88,39 @@ public class RtWorkTicketServiceImpl extends ServiceImpl<RtWorkTicketMapper, RtW
} }
} }
private void setRtRiskSecurityLibraryTypeStrIf(RtWorkTicket rtWorkTicket) {
String json = rtWorkTicket.getRtRiskSecurityLibraryTypeJson();
if (StringUtils.isNotBlank(json) && !json.equals("[]")) {
StringBuilder s = new StringBuilder();
JSONArray array = JSON.parseArray(json);
for (Object o : array) {
JSONArray o1 = (JSONArray) o;
if (o1.size() > 1) {
for (int i = 0; i < o1.size(); i++) {
String o3 = (String) o1.get(i);
RtRiskSecurityLibraryType type = rtRiskSecurityLibraryTypeMapper.selectById(o3);
if (type != null) {
s.append(type.getName());
if (i == (o1.size() - 1)) {
s.append(";");
} else {
s.append(":");
}
}
}
}
}
rtWorkTicket.setRtRiskSecurityLibraryTypeStr(s.toString());
}
}
@Override @Override
public void edit(RtWorkTicket rtWorkTicket) { public void edit(RtWorkTicket rtWorkTicket) {
setRtRiskSecurityLibraryTypeStrIf(rtWorkTicket);
//中间表
rtWorkTicketToRiskSecurityLibraryTypeMapper.delete(new LambdaQueryWrapper<RtWorkTicketToRiskSecurityLibraryType>()
.eq(RtWorkTicketToRiskSecurityLibraryType::getRtWorkTicketId, rtWorkTicket.getId()));
insertRelIf(rtWorkTicket);
baseMapper.updateById(rtWorkTicket); baseMapper.updateById(rtWorkTicket);
} }
} }

Binary file not shown.