运营区站点数量

This commit is contained in:
attiya 2025-12-18 16:48:46 +08:00
parent 231816d7ae
commit 65996f5be5

View File

@ -2,12 +2,19 @@ package com.cdzy.operations.service.impl;
import cn.dev33.satoken.stp.StpUtil; import cn.dev33.satoken.stp.StpUtil;
import com.cdzy.common.ex.EbikeException; import com.cdzy.common.ex.EbikeException;
import com.cdzy.operations.mapper.EbikeRegionMapper;
import com.cdzy.operations.model.entity.EbikeRegion;
import com.cdzy.operations.model.vo.EbikeSiteVo; import com.cdzy.operations.model.vo.EbikeSiteVo;
import com.mybatisflex.core.query.QueryWrapper;
import com.mybatisflex.spring.service.impl.ServiceImpl; import com.mybatisflex.spring.service.impl.ServiceImpl;
import com.cdzy.operations.model.entity.EbikeSite; import com.cdzy.operations.model.entity.EbikeSite;
import com.cdzy.operations.mapper.EbikeSiteMapper; import com.cdzy.operations.mapper.EbikeSiteMapper;
import com.cdzy.operations.service.EbikeSiteService; import com.cdzy.operations.service.EbikeSiteService;
import jakarta.annotation.Resource;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import static com.cdzy.operations.model.entity.table.EbikeRegionTableDef.EBIKE_REGION;
/** /**
* 服务层实现 * 服务层实现
@ -18,8 +25,19 @@ import org.springframework.stereotype.Service;
@Service @Service
public class EbikeSiteServiceImpl extends ServiceImpl<EbikeSiteMapper, EbikeSite> implements EbikeSiteService { public class EbikeSiteServiceImpl extends ServiceImpl<EbikeSiteMapper, EbikeSite> implements EbikeSiteService {
@Resource
private EbikeRegionMapper regionMapper;
@Transactional
@Override @Override
public void saveSite(EbikeSiteVo ebikeSite) { public void saveSite(EbikeSiteVo ebikeSite) {
QueryWrapper queryWrapper = QueryWrapper.create()
.where(EBIKE_REGION.REGION_ID.eq(ebikeSite.getRegionId()));
EbikeRegion region = regionMapper.selectOneByQuery(queryWrapper);
if (region == null) {
throw new EbikeException("所选运营区不存在");
}
region.setSiteNum(region.getSiteNum() + 1);
EbikeSite site = EbikeSite.builder() EbikeSite site = EbikeSite.builder()
.siteName(ebikeSite.getSiteName()) .siteName(ebikeSite.getSiteName())
.sitePolygon(ebikeSite.getSitePolygon()) .sitePolygon(ebikeSite.getSitePolygon())
@ -29,6 +47,7 @@ public class EbikeSiteServiceImpl extends ServiceImpl<EbikeSiteMapper, EbikeSite
.createdBy(StpUtil.getLoginIdAsLong()) .createdBy(StpUtil.getLoginIdAsLong())
.build(); .build();
this.mapper.insert(site); this.mapper.insert(site);
regionMapper.update(region);
} }
@Override @Override
@ -38,6 +57,12 @@ public class EbikeSiteServiceImpl extends ServiceImpl<EbikeSiteMapper, EbikeSite
if (site == null) { if (site == null) {
throw new EbikeException("站点不存在"); throw new EbikeException("站点不存在");
} }
QueryWrapper queryWrapper = QueryWrapper.create()
.where(EBIKE_REGION.REGION_ID.eq(ebikeSite.getRegionId()));
EbikeRegion region = regionMapper.selectOneByQuery(queryWrapper);
if (region == null) {
throw new EbikeException("所选运营区不存在");
}
site.setSiteName(ebikeSite.getSiteName()); site.setSiteName(ebikeSite.getSiteName());
site.setSitePolygon(ebikeSite.getSitePolygon()); site.setSitePolygon(ebikeSite.getSitePolygon());
site.setOperatorId(ebikeSite.getOperatorId()); site.setOperatorId(ebikeSite.getOperatorId());