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 getBidTowerList(BidTowerVo vo) { return mapper.getBidTowerList(vo); } @Override public List getSingleTowerMainList(BidTowerVo vo) { List 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 getTowerListById(BidTowerVo vo) { List 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 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 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 singleTowerVos = new ArrayList<>(); try { singleTowerVos = mapper.getSignProTowerById(vo); } catch (Exception e) { log.error("杆塔信息", e); } return AjaxResult.success(singleTowerVos); } }