Browse Source

修复安全生产巡查,拟复查时间不能置空,且自动带入的问题

master
yinzuomei 2 years ago
parent
commit
b39fe4bb2e
  1. 45
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcEnterpriseServiceImpl.java

45
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcEnterpriseServiceImpl.java

@ -3,6 +3,7 @@ package com.epmet.service.impl;
import com.alibaba.excel.EasyExcel;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.aop.NoRepeatSubmit;
@ -170,7 +171,16 @@ public class IcEnterpriseServiceImpl extends BaseServiceImpl<IcEnterpriseDao, Ic
enterprisePatrolRecordDao.insert(patrolRecordEntity);
} else {
patrolRecordEntity.setId(formDTO.getPatrolId());
enterprisePatrolRecordDao.updateById(patrolRecordEntity);
LambdaUpdateWrapper<IcEnterprisePatrolRecordEntity> update=new LambdaUpdateWrapper<>();
update.eq(IcEnterprisePatrolRecordEntity::getId, formDTO.getPatrolId())
.set(IcEnterprisePatrolRecordEntity::getPatrolTime, formDTO.getPatrolTime())
.set(IcEnterprisePatrolRecordEntity::getStaffId, formDTO.getStaffId())
.set(IcEnterprisePatrolRecordEntity::getStaffName, formDTO.getStaffName())
.set(IcEnterprisePatrolRecordEntity::getMobile, formDTO.getMobile())
.set(IcEnterprisePatrolRecordEntity::getResult, formDTO.getResult())
.set(IcEnterprisePatrolRecordEntity::getDetailed, formDTO.getDetailed())
.set(IcEnterprisePatrolRecordEntity::getReviewTime, formDTO.getReviewTime());
enterprisePatrolRecordDao.update(null,update);
//删除之前的图片
enterprisePatrolAttachmentDao.deleteByPatrolId(formDTO.getPatrolId(), formDTO.getUserId());
}
@ -187,7 +197,19 @@ public class IcEnterpriseServiceImpl extends BaseServiceImpl<IcEnterpriseDao, Ic
sort++;
}
// 更新主表的最新结果和最新检查时间
baseDao.updateLatestPatrol(formDTO.getEnterpriseId(), patrolRecordEntity.getPatrolTime(), patrolRecordEntity.getResult(), formDTO.getUserId());
// 获取一下最新的巡检时间和巡检结果
LambdaQueryWrapper<IcEnterprisePatrolRecordEntity> queryWrapper = new LambdaQueryWrapper();
queryWrapper.eq(IcEnterprisePatrolRecordEntity::getEnterpriseId, formDTO.getEnterpriseId())
.orderByDesc(IcEnterprisePatrolRecordEntity::getPatrolTime)
.orderByDesc(IcEnterprisePatrolRecordEntity::getCreatedTime)
.last("limit 1");
IcEnterprisePatrolRecordEntity latestPatrol = enterprisePatrolRecordDao.selectOne(queryWrapper);
if (null != latestPatrol) {
// 更新主表的最新结果和最新检查时间
baseDao.updateLatestPatrol(formDTO.getEnterpriseId(), latestPatrol.getPatrolTime(), latestPatrol.getResult(), formDTO.getUserId());
}else{
baseDao.updateLatestPatrol(formDTO.getEnterpriseId(), null, StrConstant.EPMETY_STR, formDTO.getUserId());
}
return patrolRecordEntity.getId();
}
@ -203,14 +225,27 @@ public class IcEnterpriseServiceImpl extends BaseServiceImpl<IcEnterpriseDao, Ic
if (null == origin) {
return;
}
Date nowTime=new Date();
//1、删除巡查记录
enterprisePatrolRecordDao.deleteById(patrolId);
LambdaUpdateWrapper<IcEnterprisePatrolRecordEntity> patrolUpdate = new LambdaUpdateWrapper<>();
patrolUpdate.eq(IcEnterprisePatrolRecordEntity::getId, patrolId)
.set(IcEnterprisePatrolRecordEntity::getUpdatedBy, currentUserId)
.set(IcEnterprisePatrolRecordEntity::getUpdatedTime, nowTime)
.set(IcEnterprisePatrolRecordEntity::getDelFlag, NumConstant.ONE_STR);
enterprisePatrolRecordDao.update(null, patrolUpdate);
//2、删除之前的图片
enterprisePatrolAttachmentDao.deleteByPatrolId(patrolId, currentUserId);
// 3、如果是记录清空,那主表的最近一次巡查时间和最新结果也置空
LambdaQueryWrapper<IcEnterprisePatrolRecordEntity> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(IcEnterprisePatrolRecordEntity::getEnterpriseId, origin.getEnterpriseId());
if (NumConstant.ZERO == enterprisePatrolRecordDao.selectCount(queryWrapper)) {
queryWrapper.eq(IcEnterprisePatrolRecordEntity::getEnterpriseId, origin.getEnterpriseId())
.orderByDesc(IcEnterprisePatrolRecordEntity::getPatrolTime)
.orderByDesc(IcEnterprisePatrolRecordEntity::getCreatedTime)
.last("limit 1");
IcEnterprisePatrolRecordEntity latestPatrol = enterprisePatrolRecordDao.selectOne(queryWrapper);
if (null != latestPatrol) {
// 更新主表的最新结果和最新检查时间
baseDao.updateLatestPatrol(origin.getEnterpriseId(), latestPatrol.getPatrolTime(), latestPatrol.getResult(), currentUserId);
} else {
baseDao.updateLatestPatrol(origin.getEnterpriseId(), null, StrConstant.EPMETY_STR, currentUserId);
}
}

Loading…
Cancel
Save