package com.gk.hotwork.Service.ServiceImpl;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.gk.hotwork.Domain.*;
|
import com.gk.hotwork.Domain.Do.SafetySelfInspectionItemQualifiedCountDO;
|
import com.gk.hotwork.Domain.Exception.BusinessException;
|
import com.gk.hotwork.Domain.Utils.PageInfo;
|
import com.gk.hotwork.Domain.Utils.StringUtils;
|
import com.gk.hotwork.Domain.dto.resp.InspectionHiddenDangerRespDTO;
|
import com.gk.hotwork.Mapper.InspectionExpertMapper;
|
import com.gk.hotwork.Mapper.InspectionHiddenDangerMapper;
|
import com.gk.hotwork.Service.AttachmentInfoService;
|
import com.gk.hotwork.Service.InspectionExpertService;
|
import com.gk.hotwork.Service.InspectionHiddenDangerService;
|
import org.apache.commons.collections4.CollectionUtils;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
|
import java.math.BigDecimal;
|
import java.text.DecimalFormat;
|
import java.util.ArrayList;
|
import java.util.Date;
|
import java.util.List;
|
import java.util.Map;
|
import java.util.stream.Collectors;
|
|
/**
|
* @email 1603559716@qq.com
|
* @author: zf
|
* @date: 2023/7/19
|
* @time: 17:30
|
*/
|
@Service
|
public class InspectionHiddenDangerServiceImpl extends ServiceImpl<InspectionHiddenDangerMapper, InspectionHiddenDanger> implements InspectionHiddenDangerService {
|
|
@Autowired
|
private InspectionHiddenDangerMapper inspectionHiddenDangerMapper;
|
|
@Autowired
|
private AttachmentInfoService attachmentInfoService;
|
|
/**
|
* 修改
|
* @param inspectionHiddenDanger
|
*/
|
|
@Override
|
public void mod(InspectionHiddenDanger inspectionHiddenDanger, UserInfo userInfo) {
|
modrequiredVerification(inspectionHiddenDanger);
|
|
StringBuffer stringBuffer = new StringBuffer();
|
//附件
|
if(CollectionUtils.isNotEmpty(inspectionHiddenDanger.getRattachmentList())){
|
for (AttachmentInfo attachmentInfo : inspectionHiddenDanger.getRattachmentList()) {
|
attachmentInfo.setBusinessId(inspectionHiddenDanger.getId());
|
stringBuffer.append(attachmentInfo.getId().toString()).append(",");
|
}
|
stringBuffer = stringBuffer.deleteCharAt(stringBuffer.length()-1);
|
}
|
|
inspectionHiddenDanger.setUpdateTime(new Date());
|
inspectionHiddenDanger.setUpdateBy(userInfo.getRealname());
|
inspectionHiddenDanger.setRectificationUrl(stringBuffer.toString());
|
inspectionHiddenDangerMapper.updateById(inspectionHiddenDanger);
|
//更新附件
|
if(CollectionUtils.isNotEmpty(inspectionHiddenDanger.getRattachmentList())){
|
attachmentInfoService.updateBusinessIdBatch(inspectionHiddenDanger.getRattachmentList());
|
}
|
}
|
|
/**
|
* 删除
|
* @param
|
*/
|
public void delByInspectionItemId(Long inspectionItemId,UserInfo userInfo){
|
InspectionHiddenDanger inspectionHiddenDanger = new InspectionHiddenDanger();
|
inspectionHiddenDanger.setSelfInspectionItemId(inspectionItemId);
|
inspectionHiddenDanger.setUpdateBy(userInfo.getRealname());
|
inspectionHiddenDanger.setUpdateTime(new Date());
|
inspectionHiddenDangerMapper.delByInspectionItemId(inspectionHiddenDanger);
|
|
}
|
|
@Override
|
public List<InspectionHiddenDanger> getBySafetySelfInspectionItemId(Long inspectionItemId) {
|
List<InspectionHiddenDanger> inspectionHiddenDangerList = inspectionHiddenDangerMapper.selectList(new LambdaQueryWrapper<InspectionHiddenDanger>()
|
.eq(InspectionHiddenDanger::getValidFlag, true)
|
.eq(InspectionHiddenDanger::getSelfInspectionItemId, inspectionItemId));
|
return inspectionHiddenDangerList;
|
}
|
|
|
public List<InspectionHiddenDanger> getBySafetySelfInspectionId(Long inspectionId) {
|
List<InspectionHiddenDanger> inspectionHiddenDangerList = inspectionHiddenDangerMapper.selectList(new LambdaQueryWrapper<InspectionHiddenDanger>()
|
.eq(InspectionHiddenDanger::getValidFlag, true)
|
.eq(InspectionHiddenDanger::getSelfInspectionId, inspectionId));
|
return inspectionHiddenDangerList;
|
}
|
|
@Override
|
public List<InspectionHiddenDanger> listByPage(PageInfo pageInfo) {
|
return null;
|
}
|
|
@Override
|
public void delByIds(List<Long> idList) {
|
inspectionHiddenDangerMapper.delByIds(idList);
|
}
|
|
@Override
|
public IPage selectPage(Page<SafetySelfInspection> page, Map<String, Object> params, UserInfo user) {
|
Integer type = user.getType();
|
//普通用户
|
if (type.equals(3)) {
|
Long companyid = user.getCompanyid();
|
params.put("checkedCompanyId",companyid);
|
}
|
//监管用户
|
if (type.equals(2)) {
|
//获取企业信息
|
params.put("province",user.getProvince());
|
params.put("city",user.getCity());
|
params.put("area",user.getCounty());
|
}
|
IPage<SafetySelfInspectionDO> res = inspectionHiddenDangerMapper.selectPages(page, params);
|
return res;
|
}
|
|
@Override
|
public List<InspectionHiddenDanger> inspectionHdangerlist(Long selfInspectionId) {
|
|
List<InspectionHiddenDanger> inspectionHiddenDangerList = inspectionHiddenDangerMapper.inspectionHdangerlist(selfInspectionId);
|
for (InspectionHiddenDanger inspectionHiddenDanger : inspectionHiddenDangerList) {
|
if(StringUtils.isNotBlank(inspectionHiddenDanger.getRectificationUrl())){
|
List<Long> idList = new ArrayList<>();
|
String[] split = inspectionHiddenDanger.getRectificationUrl().split(",");
|
for (String s : split) {
|
idList.add(Long.valueOf(s));
|
}
|
List<AttachmentInfo> byIds = attachmentInfoService.findByIds(idList);
|
inspectionHiddenDanger.setRattachmentList(byIds);
|
}
|
if(StringUtils.isNotBlank(inspectionHiddenDanger.getUrl())){
|
List<Long> idList = new ArrayList<>();
|
String[] split = inspectionHiddenDanger.getUrl().split(",");
|
for (String s : split) {
|
idList.add(Long.valueOf(s));
|
}
|
List<AttachmentInfo> byIds = attachmentInfoService.findByIds(idList);
|
inspectionHiddenDanger.setAttachmentList(byIds);
|
}
|
}
|
return inspectionHiddenDangerList;
|
|
}
|
|
private void modrequiredVerification(InspectionHiddenDanger inspectionHiddenDanger){
|
if(inspectionHiddenDanger.getId() == null){
|
throw new BusinessException("隐患主键不可为空");
|
}
|
InspectionHiddenDanger danger = this.inspectionHiddenDangerMapper.selectById(inspectionHiddenDanger.getId());
|
if(danger.getStatus().equals((byte) 1)){
|
throw new BusinessException("已整改不可再修改");
|
}
|
if (inspectionHiddenDanger.getLevel() == null) throw new BusinessException("请选择隐患等级");
|
if (inspectionHiddenDanger.getStatus() == null) throw new BusinessException("整改状态不可为空");
|
}
|
}
|