package com.thhy.secure.modules.biz.hiddenDanger.service.impl; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.thhy.general.common.BasicResult; import com.thhy.general.config.SysUserInfo; import com.thhy.general.utils.UUIDUtils; import com.thhy.general.utils.UserInfoUtils; import com.thhy.secure.modules.biz.hiddenDanger.entity.HiddenDangerEntity; import com.thhy.secure.modules.biz.hiddenDanger.mapper.HiddenDangerMapper; import com.thhy.secure.modules.biz.hiddenDanger.service.HiddenDangerService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.Date; import java.util.List; import java.util.Map; /** * @Author QiuYuHao * @CreateDate 2023-11-07 14:32:29 * 隐患逻辑 */ @Service public class HiddenDangerServiceImpl implements HiddenDangerService { @Autowired private HiddenDangerMapper hiddenDangerMapper; private static final Object Lock = new Object(); @Override @Transactional(rollbackFor = Exception.class) public BasicResult insert(HiddenDangerEntity hiddenDangerEntity) { SysUserInfo sysUserInfo = UserInfoUtils.getInstance().getUserInfo(); String hiddenDangerId = UUIDUtils.create(); hiddenDangerEntity.setId(hiddenDangerId); hiddenDangerEntity.setCreateUser(sysUserInfo.getUserId()); hiddenDangerEntity.setCompanyId(sysUserInfo.getCompanyId()); synchronized (Lock){ hiddenDangerMapper.insert(hiddenDangerEntity); //图片 hiddenDangerEntity.getImgEntities().forEach(obj->{ obj.setId(UUIDUtils.create()); obj.setHiddenDangerId(hiddenDangerId); hiddenDangerMapper.insertImg(obj); }); } return BasicResult.success(); } @Override @Transactional(rollbackFor = Exception.class) public BasicResult update(HiddenDangerEntity hiddenDangerEntity) { SysUserInfo sysUserInfo = UserInfoUtils.getInstance().getUserInfo(); String userId = sysUserInfo.getUserId(); hiddenDangerEntity.setUpdateUser(userId); hiddenDangerEntity.setUpdateTime(new Date()); synchronized (Lock){ hiddenDangerMapper.update(hiddenDangerEntity); //删除图片 hiddenDangerMapper.deleteImg(hiddenDangerEntity.getId()); //图片 hiddenDangerEntity.getImgEntities().forEach(obj->{ obj.setId(UUIDUtils.create()); obj.setHiddenDangerId(hiddenDangerEntity.getId()); hiddenDangerMapper.insertImg(obj); }); } return BasicResult.success(); } @Override @Transactional(rollbackFor = Exception.class) public BasicResult delete(String id) { synchronized (Lock) { hiddenDangerMapper.delete(id); hiddenDangerMapper.deleteImg(id); } return BasicResult.success(); } @Override public BasicResult selectPageList(Map map) { SysUserInfo sysUserInfo = UserInfoUtils.getInstance().getUserInfo(); map.put("companyId",sysUserInfo.getCompanyId()); int pageNum = (int) map.get("pageNum"); int pageSize = (int) map.get("pageSize"); PageHelper.startPage(pageNum,pageSize); List hiddenDangerEntities = hiddenDangerMapper.selectPageList(map); hiddenDangerEntities.forEach(obj ->{ String id = obj.getId(); obj.setImgEntities(hiddenDangerMapper.selectImgList(id)); }); return BasicResult.success(new PageInfo<>(hiddenDangerEntities)); } @Override public BasicResult selectNoPageList(Map map) { SysUserInfo sysUserInfo = UserInfoUtils.getInstance().getUserInfo(); map.put("companyId",sysUserInfo.getCompanyId()); List hiddenDangerEntities = hiddenDangerMapper.selectPageList(map); hiddenDangerEntities.forEach(obj ->{ String id = obj.getId(); obj.setImgEntities(hiddenDangerMapper.selectImgList(id)); }); return BasicResult.success(hiddenDangerEntities); } @Override public BasicResult selectInfo(String id) { return BasicResult.success(hiddenDangerMapper.selectInfo(id)); } @Override public BasicResult examine(HiddenDangerEntity hiddenDangerEntity) { hiddenDangerMapper.update(hiddenDangerEntity); return BasicResult.success(); } }