package com.gkhy.assess.system.service.impl;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.gkhy.assess.common.api.CommonPage;
import com.gkhy.assess.common.enums.DeleteFlagEnum;
import com.gkhy.assess.common.exception.ApiException;
import com.gkhy.assess.common.utils.PageUtil;
import com.gkhy.assess.system.domain.SysLaw;
import com.gkhy.assess.system.mapper.SysLawMapper;
import com.gkhy.assess.system.service.SysLawService;
import com.gkhy.assess.system.utils.ShiroUtils;
import org.springframework.stereotype.Service;
import java.util.List;
/**
*
* 法律法规表 服务实现类
*
*
* @author kzy
* @since 2023-11-23 16:04:37
*/
@Service
public class SysLawServiceImpl extends ServiceImpl implements SysLawService {
@Override
public CommonPage lawList(SysLaw law) {
PageUtil.startPage();
List lawList=baseMapper.lawList(law);
return CommonPage.restPage(lawList);
}
@Override
public SysLaw getLawById(Long lawId) {
return baseMapper.getLawById(lawId);
}
@Override
public int addLaw(SysLaw law) {
boolean b=save(law);
law.setCreateBy(ShiroUtils.getSysUser().getUsername());
if(!b){
throw new ApiException("新增法律法规失败");
}
return 1;
}
@Override
public int editLaw(SysLaw law) {
law.setUpdateBy(ShiroUtils.getSysUser().getUsername());
boolean b=updateById(law);
if(!b){
throw new ApiException("修改法律法规失败");
}
return 1;
}
@Override
public int deleteLawById(Long lawId) {
SysLaw sysLaw=new SysLaw().setId(lawId)
.setDelFlag(DeleteFlagEnum.DELETED.getCode());
sysLaw.setUpdateBy(ShiroUtils.getSysUser().getUsername());
boolean b=updateById(sysLaw);
if(!b){
throw new ApiException("删除法律法规失败");
}
return 1;
}
@Override
public int changeLawStatus(SysLaw law) {
checkLawDataScope(law.getId());
SysLaw lw=new SysLaw().setId(law.getId()).setStatus(law.getStatus());
lw.setUpdateBy(ShiroUtils.getSysUser().getUsername());
return baseMapper.updateById(lw);
}
@Override
public SysLaw checkLawDataScope(Long lawId) {
if(lawId==null){
throw new ApiException("法律法规id为空!");
}
SysLaw law = baseMapper.getLawById(lawId);
if (ObjectUtil.isNull(law))
{
throw new ApiException("law数据不存在!");
}
return law;
}
}