package com.doumee.service.business.impl;
|
|
import com.doumee.core.constants.ResponseStatus;
|
import com.doumee.core.exception.BusinessException;
|
import com.doumee.core.utils.Constants;
|
import com.doumee.dao.business.model.Category;
|
import com.doumee.dao.business.model.PlatformGroup;
|
import com.doumee.service.business.third.model.LoginUserInfo;
|
import com.doumee.service.business.third.model.PageData;
|
import com.doumee.service.business.third.model.PageWrap;
|
import com.doumee.core.utils.Utils;
|
import com.doumee.dao.business.WarningMapper;
|
import com.doumee.dao.business.model.Warning;
|
import com.doumee.service.business.WarningService;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
import org.springframework.util.CollectionUtils;
|
|
import java.util.Date;
|
import java.util.List;
|
|
/**
|
* 报警记录信息表Service实现
|
* @author 江蹄蹄
|
* @date 2025/09/28 09:01
|
*/
|
@Service
|
public class WarningServiceImpl implements WarningService {
|
|
@Autowired
|
private WarningMapper warningMapper;
|
|
@Override
|
public Integer create(Warning warning) {
|
if(warningMapper.selectCount(new QueryWrapper<Warning>().lambda()
|
.eq(Warning::getIsdeleted,Constants.ZERO)
|
.eq(Warning::getName,warning.getName()) )>0){
|
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"对不起,事件类型已存在,请返回刷新页面查看!");
|
}
|
warning.setStatus(Constants.formatIntegerNum(warning.getStatus()));
|
warning.setIsdeleted(Constants.ZERO);
|
warning.setCreator(warning.getLoginUserInfo().getId());
|
warning.setCreateDate(new Date());
|
warning.setSubscribeStatus(Constants.ZERO);
|
warning.setEditDate(warning.getCreateDate());
|
warning.setEditor(warning.getCreator());
|
warningMapper.insert(warning);
|
|
return warning.getId();
|
}
|
|
@Override
|
public void deleteById(Integer id, LoginUserInfo user) {
|
warningMapper.update(null,new UpdateWrapper<Warning>().lambda()
|
.set(Warning::getIsdeleted,Constants.ONE)
|
.set(Warning::getEditor,user.getId())
|
.set(Warning::getEditDate,new Date())
|
.eq(Warning::getId,id)
|
);
|
}
|
|
@Override
|
public void delete(Warning warning ) {
|
UpdateWrapper<Warning> deleteWrapper = new UpdateWrapper<>(warning);
|
warningMapper.delete(deleteWrapper);
|
}
|
|
@Override
|
public void deleteByIdInBatch(List<Integer> ids, LoginUserInfo user) {
|
if (CollectionUtils.isEmpty(ids)) {
|
return;
|
}
|
warningMapper.update(null,new UpdateWrapper<Warning>().lambda()
|
.set(Warning::getEditor,user.getId())
|
.set(Warning::getEditDate,new Date())
|
.set(Warning::getIsdeleted,Constants.ONE)
|
.in(Warning::getId,ids)
|
);
|
}
|
|
@Override
|
public void updateById(Warning warning) {
|
if(warningMapper.selectCount(new QueryWrapper<Warning>().lambda()
|
.ne(Warning::getId,warning.getId())
|
.eq(Warning::getIsdeleted,Constants.ZERO)
|
.eq(Warning::getName,warning.getName()) )>0){
|
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"对不起,事件类型已存在,请返回刷新页面查看!");
|
}
|
warning.setEditDate(warning.getCreateDate());
|
warning.setEditor(warning.getCreator());
|
warningMapper.updateById(warning);
|
}
|
|
@Override
|
public void updateByIdInBatch(List<Warning> warnings) {
|
if (CollectionUtils.isEmpty(warnings)) {
|
return;
|
}
|
for (Warning warning: warnings) {
|
this.updateById(warning);
|
}
|
}
|
|
@Override
|
public Warning findById(Integer id) {
|
return warningMapper.selectById(id);
|
}
|
|
@Override
|
public Warning findOne(Warning warning) {
|
QueryWrapper<Warning> wrapper = new QueryWrapper<>(warning);
|
return warningMapper.selectOne(wrapper);
|
}
|
|
@Override
|
public List<Warning> findList(Warning warning) {
|
QueryWrapper<Warning> wrapper = new QueryWrapper<>(warning);
|
return warningMapper.selectList(wrapper);
|
}
|
|
@Override
|
public PageData<Warning> findPage(PageWrap<Warning> pageWrap) {
|
IPage<Warning> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
|
QueryWrapper<Warning> queryWrapper = new QueryWrapper<>();
|
Utils.MP.blankToNull(pageWrap.getModel());
|
pageWrap.getModel().setIsdeleted(Constants.ZERO);
|
if (pageWrap.getModel().getId() != null) {
|
queryWrapper.lambda().eq(Warning::getId, pageWrap.getModel().getId());
|
}
|
if (pageWrap.getModel().getCreator() != null) {
|
queryWrapper.lambda().eq(Warning::getCreator, pageWrap.getModel().getCreator());
|
}
|
if (pageWrap.getModel().getCreateDate() != null) {
|
queryWrapper.lambda().ge(Warning::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
|
queryWrapper.lambda().le(Warning::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
|
}
|
if (pageWrap.getModel().getEditor() != null) {
|
queryWrapper.lambda().eq(Warning::getEditor, pageWrap.getModel().getEditor());
|
}
|
if (pageWrap.getModel().getEditDate() != null) {
|
queryWrapper.lambda().ge(Warning::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
|
queryWrapper.lambda().le(Warning::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
|
}
|
if (pageWrap.getModel().getIsdeleted() != null) {
|
queryWrapper.lambda().eq(Warning::getIsdeleted, pageWrap.getModel().getIsdeleted());
|
}
|
if (pageWrap.getModel().getName() != null) {
|
queryWrapper.lambda().like(Warning::getName, pageWrap.getModel().getName());
|
}
|
if (pageWrap.getModel().getInfo() != null) {
|
queryWrapper.lambda().eq(Warning::getInfo, pageWrap.getModel().getInfo());
|
}
|
if (pageWrap.getModel().getType() != null) {
|
queryWrapper.lambda().eq(Warning::getType, pageWrap.getModel().getType());
|
}
|
if (pageWrap.getModel().getObjId() != null) {
|
queryWrapper.lambda().eq(Warning::getObjId, pageWrap.getModel().getObjId());
|
}
|
if (pageWrap.getModel().getObjType() != null) {
|
queryWrapper.lambda().eq(Warning::getObjType, pageWrap.getModel().getObjType());
|
}
|
if (pageWrap.getModel().getCode() != null) {
|
queryWrapper.lambda().eq(Warning::getCode, pageWrap.getModel().getCode());
|
}
|
if (pageWrap.getModel().getSortnum() != null) {
|
queryWrapper.lambda().eq(Warning::getSortnum, pageWrap.getModel().getSortnum());
|
}
|
if (pageWrap.getModel().getLevel() != null) {
|
queryWrapper.lambda().eq(Warning::getLevel, pageWrap.getModel().getLevel());
|
}
|
if (pageWrap.getModel().getStatus() != null) {
|
queryWrapper.lambda().eq(Warning::getStatus, pageWrap.getModel().getStatus());
|
}
|
if (pageWrap.getModel().getSubscribeStatus() != null) {
|
queryWrapper.lambda().eq(Warning::getSubscribeStatus, pageWrap.getModel().getSubscribeStatus());
|
}
|
if (pageWrap.getModel().getSubscribeDate() != null) {
|
queryWrapper.lambda().ge(Warning::getSubscribeDate, Utils.Date.getStart(pageWrap.getModel().getSubscribeDate()));
|
queryWrapper.lambda().le(Warning::getSubscribeDate, Utils.Date.getEnd(pageWrap.getModel().getSubscribeDate()));
|
}
|
if (pageWrap.getModel().getSubscribeInfo() != null) {
|
queryWrapper.lambda().eq(Warning::getSubscribeInfo, pageWrap.getModel().getSubscribeInfo());
|
}
|
if (pageWrap.getModel().getSubscribeMemberId() != null) {
|
queryWrapper.lambda().eq(Warning::getSubscribeMemberId, pageWrap.getModel().getSubscribeMemberId());
|
}
|
queryWrapper.lambda().orderByDesc(Warning::getSortnum);
|
|
return PageData.from(warningMapper.selectPage(page, queryWrapper));
|
}
|
|
@Override
|
public long count(Warning warning) {
|
QueryWrapper<Warning> wrapper = new QueryWrapper<>(warning);
|
return warningMapper.selectCount(wrapper);
|
}
|
@Override
|
public void updateStatus(Warning param) {
|
Warning model = warningMapper.selectById(param.getId());
|
if (model==null || Constants.equalsInteger(model.getIsdeleted(), Constants.ONE)) {
|
throw new BusinessException(ResponseStatus.DATA_EMPTY);
|
}
|
if(Constants.equalsInteger(model.getStatus(),param.getStatus())){
|
return;
|
}
|
model.setStatus(param.getStatus());
|
model.setEditDate(new Date());
|
model.setEditor(param.getLoginUserInfo().getId());
|
warningMapper.updateById(model);
|
}
|
}
|