143 lines
4.5 KiB
Plaintext
143 lines
4.5 KiB
Plaintext
package com.sercurityControl.proteam.dutyTask.service;
|
|
|
|
import com.github.pagehelper.PageInfo;
|
|
import com.securityControl.common.core.utils.StringUtils;
|
|
import com.securityControl.common.core.web.domain.AjaxResult;
|
|
import com.sercurityControl.proteam.dutyTask.domain.BidTowerVo;
|
|
import com.sercurityControl.proteam.dutyTask.domain.TowerVo;
|
|
import com.sercurityControl.proteam.dutyTask.mapper.BidTowerMainMapper;
|
|
import com.sercurityControl.proteam.util.CoordinateConversion;
|
|
import com.sercurityControl.proteam.util.DateTimeHelper;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
import org.springframework.transaction.interceptor.TransactionAspectSupport;
|
|
import org.springframework.util.ObjectUtils;
|
|
|
|
import javax.annotation.Resource;
|
|
import java.util.ArrayList;
|
|
import java.util.List;
|
|
|
|
/**
|
|
* @author cw chen
|
|
* @description TODO
|
|
* @date 2023-08-04 10:55
|
|
*/
|
|
@Service("BidTowerMainService")
|
|
@Slf4j
|
|
public class BidTowerMainServiceImpl implements BidTowerMainService {
|
|
|
|
@Resource(name = "BidTowerMainMapper")
|
|
private BidTowerMainMapper mapper;
|
|
|
|
@Override
|
|
public int isRepeat(BidTowerVo vo) {
|
|
return mapper.coloumIsRepeat(vo);
|
|
}
|
|
|
|
@Override
|
|
public BidTowerVo getBidTowerInfoById(BidTowerVo vo) {
|
|
return mapper.getBidTowerInfoById(vo);
|
|
}
|
|
|
|
@Override
|
|
@Transactional(rollbackFor = Exception.class)
|
|
public void addOrUpdateBidTowerInfo(BidTowerVo vo) {
|
|
vo.setCreateTime(DateTimeHelper.getNowTime());
|
|
vo.setType(1);
|
|
if (StringUtils.isNotBlank(vo.getId())) {
|
|
vo.setType(2);
|
|
}
|
|
mapper.addBidTowerInfo(vo);
|
|
}
|
|
|
|
@Override
|
|
public List<BidTowerVo> getBidTowerList(BidTowerVo vo) {
|
|
return mapper.getBidTowerList(vo);
|
|
}
|
|
|
|
@Override
|
|
public List<BidTowerVo> getSingleTowerMainList(BidTowerVo vo) {
|
|
List<BidTowerVo> singleTowerVos = new ArrayList<>();
|
|
try {
|
|
if (StringUtils.isNotEmpty(vo.getCreateTime())) {
|
|
String[] dateArr = vo.getCreateTime().split(" - ");
|
|
vo.setStartTime(dateArr[0]);
|
|
vo.setEndTime(dateArr[1]);
|
|
}
|
|
singleTowerVos = mapper.getSingleTowerMainList(vo);
|
|
} catch (Exception e) {
|
|
log.error("单项工程杆塔维护列表", e);
|
|
}
|
|
return singleTowerVos;
|
|
}
|
|
|
|
@Override
|
|
public List<BidTowerVo> getTowerListById(BidTowerVo vo) {
|
|
List<BidTowerVo> singleTowerVos = new ArrayList<>();
|
|
try {
|
|
singleTowerVos = mapper.getTowerListById(vo);
|
|
} catch (Exception e) {
|
|
log.error("工程杆塔信息", e);
|
|
}
|
|
return singleTowerVos;
|
|
}
|
|
|
|
@Override
|
|
@Transactional(rollbackFor = Exception.class)
|
|
public AjaxResult delTowerData(BidTowerVo vo) {
|
|
try {
|
|
if (vo.getType() == 1) {
|
|
if (StringUtils.isEmpty(vo.getId())) {
|
|
return AjaxResult.error("参数不正确");
|
|
}
|
|
}
|
|
mapper.delTowerData(vo);
|
|
} catch (Exception e) {
|
|
log.error("删除杆塔信息", e);
|
|
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
return AjaxResult.error();
|
|
}
|
|
return AjaxResult.success();
|
|
}
|
|
|
|
@Override
|
|
@Transactional(rollbackFor = Exception.class)
|
|
public void addTowerInfo(List<TowerVo> list,String proNo) {
|
|
list.forEach(item -> {
|
|
item.setProNo(proNo);
|
|
item.setCreateTime(DateTimeHelper.getNowTime());
|
|
TowerVo vo = mapper.getTowerInfo(item);
|
|
if (vo != null) {
|
|
item.setType(1);
|
|
item.setId(vo.getId());
|
|
}else {
|
|
item.setType(2);
|
|
}
|
|
mapper.addTowerInfo(item);
|
|
});
|
|
}
|
|
|
|
@Override
|
|
public AjaxResult getSingleProList(BidTowerVo vo) {
|
|
List<BidTowerVo> list = new ArrayList<>();
|
|
try {
|
|
list = mapper.getSingleProList(vo);
|
|
} catch (Exception e) {
|
|
log.error("单项工程", e);
|
|
}
|
|
return AjaxResult.success(list);
|
|
}
|
|
|
|
@Override
|
|
public AjaxResult getSignProTowerById(BidTowerVo vo) {
|
|
List<BidTowerVo> singleTowerVos = new ArrayList<>();
|
|
try {
|
|
singleTowerVos = mapper.getSignProTowerById(vo);
|
|
} catch (Exception e) {
|
|
log.error("杆塔信息", e);
|
|
}
|
|
return AjaxResult.success(singleTowerVos);
|
|
}
|
|
}
|