package com.ard.work.grid.service.impl;
|
|
import com.ard.common.core.utils.DateUtils;
|
import com.ard.common.core.utils.uuid.IdUtils;
|
import com.ard.common.datascope.annotation.DataScope;
|
import com.ard.common.security.utils.SecurityUtils;
|
import com.ard.work.grid.domain.ArdGridAreaEntity;
|
import com.ard.work.grid.domain.ArdGridLibrayEntity;
|
import com.ard.work.grid.mapper.ArdGridAreaEntityMapper;
|
import com.ard.work.grid.mapper.ArdGridLibrayEntityMapper;
|
import com.ard.work.grid.service.IArdGridLibrayEntityService;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
|
import java.util.ArrayList;
|
import java.util.List;
|
|
/**
|
* 网格库Service业务层处理
|
*
|
* @author XiaJiJian
|
* @date 2024-09-27
|
*/
|
@Service
|
public class ArdGridLibrayEntityServiceImpl implements IArdGridLibrayEntityService
|
{
|
@Autowired
|
private ArdGridLibrayEntityMapper ardGridLibrayEntityMapper;
|
|
@Autowired
|
private ArdGridAreaEntityMapper ardGridAreaEntityMapper;
|
|
/**
|
* 查询网格库
|
*
|
* @param gridId 网格库主键
|
* @return 网格库
|
*/
|
@Override
|
public ArdGridLibrayEntity selectArdGridLibrayEntityByGridId(String gridId)
|
{
|
return ardGridLibrayEntityMapper.selectArdGridLibrayEntityByGridId(gridId);
|
}
|
|
/**
|
* 查询网格库列表
|
*
|
* @param ardGridLibrayEntity 网格库
|
* @return 网格库
|
*/
|
@Override
|
@DataScope(deptAlias = "d", userAlias = "u")
|
public List<ArdGridLibrayEntity> selectArdGridLibrayEntityList(ArdGridLibrayEntity ardGridLibrayEntity)
|
{
|
return ardGridLibrayEntityMapper.selectArdGridLibrayEntityList(ardGridLibrayEntity);
|
}
|
|
/**
|
* 新增网格库
|
*
|
* @param ardGridLibrayEntity 网格库
|
* @return 结果
|
*/
|
@Override
|
public int insertArdGridLibrayEntity(ArdGridLibrayEntity ardGridLibrayEntity)
|
{
|
ardGridLibrayEntity.setGridId(IdUtils.simpleUUID());
|
ardGridLibrayEntity.setCreateBy(SecurityUtils.getUsername());
|
ardGridLibrayEntity.setCreateTime(DateUtils.getNowDate());
|
return ardGridLibrayEntityMapper.insertArdGridLibrayEntity(ardGridLibrayEntity);
|
}
|
|
/**
|
* 修改网格库
|
*
|
* @param ardGridLibrayEntity 网格库
|
* @return 结果
|
*/
|
@Override
|
public int updateArdGridLibrayEntity(ArdGridLibrayEntity ardGridLibrayEntity)
|
{
|
ardGridLibrayEntity.setUpdateBy(SecurityUtils.getUsername());
|
ardGridLibrayEntity.setUpdateTime(DateUtils.getNowDate());
|
return ardGridLibrayEntityMapper.updateArdGridLibrayEntity(ardGridLibrayEntity);
|
}
|
|
/**
|
* 批量删除网格库
|
*
|
* @param gridIds 需要删除的网格库主键
|
* @return 结果
|
*/
|
@Override
|
public int deleteArdGridLibrayEntityByGridIds(String[] gridIds)
|
{
|
int dels = ardGridLibrayEntityMapper.deleteArdGridLibrayEntityByGridIds(gridIds);
|
//删除下属网格信息
|
deleteardGridAreaTable(gridIds);
|
return dels;
|
}
|
|
/**
|
* 删除网格库信息
|
*
|
* @param gridId 网格库主键
|
* @return 结果
|
*/
|
@Override
|
public int deleteArdGridLibrayEntityByGridId(String gridId)
|
{
|
int del = ardGridLibrayEntityMapper.deleteArdGridLibrayEntityByGridId(gridId);
|
//删除下属网格信息
|
String[] gridIds = new String[]{gridId};
|
deleteardGridAreaTable(gridIds);
|
return del;
|
}
|
|
/**
|
* 删除网格库信息的同时,也要删除网格库下网格信息。
|
*
|
* @param gridIds
|
*/
|
private void deleteardGridAreaTable(String[] gridIds){
|
for (int i=0;i < gridIds.length; i++){
|
ArdGridAreaEntity ardGridAreaEntity = new ArdGridAreaEntity();
|
ardGridAreaEntity.setGridId(gridIds[i]);
|
List<ArdGridAreaEntity> gridLs = ardGridAreaEntityMapper.selectArdGridAreaEntityList(ardGridAreaEntity);
|
if (!gridLs.isEmpty()) {
|
List<String> areaIdList = new ArrayList<>();
|
for(ArdGridAreaEntity entity : gridLs){
|
areaIdList.add(entity.getGridId());
|
}
|
String[] areaIds = areaIdList.toArray(new String[0]);
|
ardGridAreaEntityMapper.deleteArdGridAreaEntityByAreaIds(areaIds);
|
}
|
}
|
}
|
}
|