rk
3 天以前 568e38a95cb6fb20fe16b53d17f610aefc6f744f
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/WarningServiceImpl.java
@@ -1,5 +1,11 @@
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;
@@ -14,6 +20,7 @@
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.Date;
import java.util.List;
/**
@@ -29,31 +36,62 @@
    @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) {
        warningMapper.deleteById(id);
    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) {
    public void delete(Warning warning ) {
        UpdateWrapper<Warning> deleteWrapper = new UpdateWrapper<>(warning);
        warningMapper.delete(deleteWrapper);
    }
    @Override
    public void deleteByIdInBatch(List<Integer> ids) {
    public void deleteByIdInBatch(List<Integer> ids, LoginUserInfo user) {
        if (CollectionUtils.isEmpty(ids)) {
            return;
        }
        warningMapper.deleteBatchIds(ids);
        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);
    }
@@ -80,6 +118,7 @@
    @Override
    public List<Warning> findList(Warning warning) {
        warning.setIsdeleted(Constants.ZERO);
        QueryWrapper<Warning> wrapper = new QueryWrapper<>(warning);
        return warningMapper.selectList(wrapper);
    }
@@ -89,6 +128,7 @@
        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());
        }
@@ -110,7 +150,7 @@
            queryWrapper.lambda().eq(Warning::getIsdeleted, pageWrap.getModel().getIsdeleted());
        }
        if (pageWrap.getModel().getName() != null) {
            queryWrapper.lambda().eq(Warning::getName, pageWrap.getModel().getName());
            queryWrapper.lambda().like(Warning::getName, pageWrap.getModel().getName());
        }
        if (pageWrap.getModel().getInfo() != null) {
            queryWrapper.lambda().eq(Warning::getInfo, pageWrap.getModel().getInfo());
@@ -149,13 +189,8 @@
        if (pageWrap.getModel().getSubscribeMemberId() != null) {
            queryWrapper.lambda().eq(Warning::getSubscribeMemberId, pageWrap.getModel().getSubscribeMemberId());
        }
        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
                queryWrapper.orderByDesc(sortData.getProperty());
            } else {
                queryWrapper.orderByAsc(sortData.getProperty());
            }
        }
        queryWrapper.lambda().orderByDesc(Warning::getSortnum);
        return PageData.from(warningMapper.selectPage(page, queryWrapper));
    }
@@ -164,4 +199,18 @@
        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);
    }
}