package com.gkhy.safePlatform.emergency.service.impl;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.gkhy.safePlatform.commons.enums.ResultCodes;
|
import com.gkhy.safePlatform.commons.query.PageQuery;
|
import com.gkhy.safePlatform.commons.utils.BeanCopyUtils;
|
import com.gkhy.safePlatform.commons.utils.StringUtils;
|
import com.gkhy.safePlatform.commons.vo.ResultVO;
|
import com.gkhy.safePlatform.commons.vo.SearchResultVO;
|
import com.gkhy.safePlatform.emergency.entity.*;
|
import com.gkhy.safePlatform.emergency.enums.EmergencyResultCodes;
|
import com.gkhy.safePlatform.emergency.excepiton.EmergencyException;
|
import com.gkhy.safePlatform.emergency.model.dto.req.*;
|
import com.gkhy.safePlatform.emergency.model.dto.resp.*;
|
import com.gkhy.safePlatform.emergency.query.EmergencySuppliesQuery;
|
import com.gkhy.safePlatform.emergency.query.db.EmergencySuppliesDBQuery;
|
import com.gkhy.safePlatform.emergency.service.EmergencySuppliesService;
|
import com.gkhy.safePlatform.emergency.service.baseService.*;
|
import org.springframework.beans.BeanUtils;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
|
import java.util.Date;
|
import java.util.List;
|
|
@Service("emergencySuppliesService")
|
public class EmergencySuppliesServiceImpl implements EmergencySuppliesService {
|
|
@Autowired
|
private EmergencySuppliesInfoService emergencySuppliesInfoService;
|
|
|
@Override
|
public SearchResultVO<List<EmergencySuppliesPageRespDTO>> selectEmergencySuppliesList(PageQuery<EmergencySuppliesQuery> query) {
|
Long pageIndex = query.getPageIndex();
|
Long pageSize = query.getPageSize();
|
Page<EmergencySuppliesInfoPageDO> page = new Page<>(pageIndex, pageSize);
|
|
EmergencySuppliesDBQuery emergencySuppliesDBQuery = new EmergencySuppliesDBQuery();
|
if (query.getSearchParams() != null) {
|
BeanUtils.copyProperties(query.getSearchParams(), emergencySuppliesDBQuery);
|
}
|
List<EmergencySuppliesInfoPageDO> emergencySuppliesListDoInfoList = emergencySuppliesInfoService.selectEmergencySuppliesList(page,emergencySuppliesDBQuery);
|
List<EmergencySuppliesPageRespDTO> respList = BeanCopyUtils.copyBeanList(emergencySuppliesListDoInfoList, EmergencySuppliesPageRespDTO.class);
|
|
return new SearchResultVO<>(
|
true,
|
pageIndex,
|
pageSize,page.getPages(),
|
page.getTotal(),
|
respList,
|
ResultCodes.OK
|
);
|
}
|
|
@Override
|
public ResultVO addEmergencySupplies(Long uid, EmergencySuppliesReqDTO emergencySuppliesReqDTO) {
|
Date nowDate = new Date();
|
// 新增应急物资
|
EmergencySuppliesInfo emergencySuppliesInfo = new EmergencySuppliesInfo();
|
BeanUtils.copyProperties(emergencySuppliesReqDTO,emergencySuppliesInfo);
|
emergencySuppliesInfo.setDelFlag(false);
|
emergencySuppliesInfo.setCreateUid(uid);
|
emergencySuppliesInfo.setGmtCreate(nowDate);
|
emergencySuppliesInfoService.addEmergencySupplies(emergencySuppliesInfo);
|
|
return new ResultVO<>(ResultCodes.OK);
|
}
|
|
@Override
|
public ResultVO<EmergencySuppliesDetailRespDTO> getEmergencySuppliesById(Long id) {
|
EmergencySuppliesDetailRespDTO emergencySuppliesDetailRespDTO = new EmergencySuppliesDetailRespDTO();
|
// 查询是否存在
|
EmergencySuppliesInfoDetailDO emergencySuppliesInfoDetailDO = emergencySuppliesInfoService.selectEmergencySuppliesById(id);
|
if (emergencySuppliesInfoDetailDO==null){
|
throw new EmergencyException(EmergencyResultCodes.SUPPLIES_NOT_EXIST);
|
}else{
|
BeanUtils.copyProperties(emergencySuppliesInfoDetailDO,emergencySuppliesDetailRespDTO);
|
return new ResultVO<>(ResultCodes.OK,emergencySuppliesDetailRespDTO);
|
}
|
}
|
|
@Override
|
public ResultVO updateEmergencySupplies(Long uid, EmergencySuppliesReqDTO emergencySuppliesReqDTO) {
|
Date nowDate = new Date();
|
// 查询是否存在
|
EmergencySuppliesInfoDetailDO emergencySuppliesInfoDetailDO = emergencySuppliesInfoService.selectEmergencySuppliesById(emergencySuppliesReqDTO.getId());
|
if (emergencySuppliesInfoDetailDO==null){
|
throw new EmergencyException(EmergencyResultCodes.SUPPLIES_NOT_EXIST);
|
}else{
|
EmergencySuppliesInfo emergencySuppliesInfo = new EmergencySuppliesInfo();
|
BeanUtils.copyProperties(emergencySuppliesReqDTO,emergencySuppliesInfo);
|
emergencySuppliesInfo.setUpdateUid(uid);
|
emergencySuppliesInfo.setGmtModitify(nowDate);
|
emergencySuppliesInfoService.updateEmergencySupplies(emergencySuppliesInfo);
|
|
return new ResultVO<>(ResultCodes.OK);
|
}
|
}
|
|
@Override
|
public ResultVO batchDeleteEmergencySupplies(String ids) {
|
if (StringUtils.isBlank(ids)) {
|
throw new EmergencyException(EmergencyResultCodes.SUPPLIES_NULL);
|
} else {
|
String[] idArr = ids.split(",");
|
for (String id : idArr) {
|
deleteEmergencySupplies(Long.valueOf(id));
|
}
|
return new ResultVO(ResultCodes.OK);
|
}
|
}
|
|
private void deleteEmergencySupplies(Long id) {
|
//查询是否存在
|
EmergencySuppliesInfoDetailDO emergencySuppliesInfoDetailDO = emergencySuppliesInfoService.selectEmergencySuppliesById(id);
|
if (emergencySuppliesInfoDetailDO==null){
|
throw new EmergencyException(EmergencyResultCodes.SUPPLIES_NOT_EXIST);
|
}else{
|
Long SuppliesId = emergencySuppliesInfoDetailDO.getId();
|
emergencySuppliesInfoService.deleteEmergencySupplies(SuppliesId);
|
}
|
}
|
}
|