diff --git a/src/main/java/com/gunshi/project/xyt/controller/BasicDataController.java b/src/main/java/com/gunshi/project/xyt/controller/BasicDataController.java index 7eafe00..9b0df7e 100644 --- a/src/main/java/com/gunshi/project/xyt/controller/BasicDataController.java +++ b/src/main/java/com/gunshi/project/xyt/controller/BasicDataController.java @@ -11,14 +11,18 @@ import com.gunshi.project.xyt.entity.basedata.StCameraAreaTreeVo; import com.gunshi.project.xyt.entity.basedata.StCameraAreaVo; import com.gunshi.project.xyt.entity.basedata.StCameraSearch; import com.gunshi.project.xyt.entity.basedata.StCameraVo; +import com.gunshi.project.xyt.entity.basedata.StStbprpVo; +import com.gunshi.project.xyt.entity.basedata.StcdSearch; import com.gunshi.project.xyt.entity.basedata.SysDictVo; import com.gunshi.project.xyt.model.StAddvcdD; import com.gunshi.project.xyt.model.StCameraAreaB; import com.gunshi.project.xyt.model.StCameraB; +import com.gunshi.project.xyt.model.StStbprpB; import com.gunshi.project.xyt.model.SysDictB; import com.gunshi.project.xyt.service.StAdcdService; import com.gunshi.project.xyt.service.StCameraAreaService; import com.gunshi.project.xyt.service.StCameraService; +import com.gunshi.project.xyt.service.StStbprpService; import com.gunshi.project.xyt.service.SysDictService; import com.gunshi.project.xyt.validate.markers.Update; import io.swagger.v3.oas.annotations.Operation; @@ -52,6 +56,7 @@ public class BasicDataController { private final StAdcdService stAdcdService; private final StCameraAreaService stCameraAreaService; private final StCameraService stCameraService; + private final StStbprpService stStbprpService; @Post(path = "/dict/search/query", summary = "查询字典接口") @@ -148,7 +153,6 @@ public class BasicDataController { } @Post(path = "/camera/area/search/check", summary = "检查视频区域名称是否存在接口") - @Operation(summary = "检查视频区域名称是否存在接口") public R checkCameraAreaName(@RequestBody @Validated CheckStringSearch checkStringSearch) { try { stCameraAreaService.checkAreaName(checkStringSearch); @@ -159,25 +163,49 @@ public class BasicDataController { } @Post(path = "/camera/search/query", summary = "查询视频列表接口") - @Operation(summary = "查询视频列表接口") public R> queryCameraList(@Validated @RequestBody StCameraSearch search) { return R.ok(stCameraService.queryBySearch(search)); } @Post(path = "/camera/manage/insert", summary = "新增视频接口") - @Operation(summary = "新增视频接口") public R insertCamera(@Validated @RequestBody StCameraB obj) { stCameraService.insert(obj); return R.ok(true); } @Post(path = "/camera/manage/update", summary = "更新视频接口") - @Operation(summary = "更新视频接口") public R updateCamera(@Validated({Update.class}) @RequestBody StCameraB obj) { stCameraService.update(obj); return R.ok(true); } + @Post(path = "/stcd/search/query", summary = "测站列表查询接口") + public R> queryStcdList(@Validated @RequestBody StcdSearch search) { + return R.ok(stStbprpService.queryBySearch(search)); + } + + @Post(path = "/stcd/search/check", summary = "检查测站编码是否存在接口") + public R checkStcdExist(@RequestBody @Validated CheckStringSearch checkStringSearch) { + try { + stStbprpService.checkExist(checkStringSearch); + } catch (IllegalArgumentException e) { + return R.error(417, e.getMessage()); + } + return R.ok(); + } + + @Post(path = "/stcd/manage/insert", summary = "新增测站接口") + public R insertStcd(@Validated @RequestBody StStbprpB obj) { + stStbprpService.insert(obj); + return R.ok(true); + } + + @Post(path = "/stcd/manage/update", summary = "更新测站接口") + public R updateStcd(@Validated @RequestBody StStbprpB obj) { + stStbprpService.update(obj); + return R.ok(true); + } + } diff --git a/src/main/java/com/gunshi/project/xyt/entity/basedata/CheckStringSearch.java b/src/main/java/com/gunshi/project/xyt/entity/basedata/CheckStringSearch.java index 8ac6757..7e5beaf 100644 --- a/src/main/java/com/gunshi/project/xyt/entity/basedata/CheckStringSearch.java +++ b/src/main/java/com/gunshi/project/xyt/entity/basedata/CheckStringSearch.java @@ -16,6 +16,6 @@ public class CheckStringSearch { @Schema(description="编码/名称/关键词") @NotBlank(message = "关键词不能为空") private String keyword; - @Schema(description="修改时候传入当前对象id,用来排除自己") + @Schema(description="修改时候传入当前对象id,用来排除自己 数值类型") private Long id; } diff --git a/src/main/java/com/gunshi/project/xyt/entity/basedata/StStbprpVo.java b/src/main/java/com/gunshi/project/xyt/entity/basedata/StStbprpVo.java new file mode 100644 index 0000000..2193958 --- /dev/null +++ b/src/main/java/com/gunshi/project/xyt/entity/basedata/StStbprpVo.java @@ -0,0 +1,23 @@ +package com.gunshi.project.xyt.entity.basedata; + +import com.gunshi.project.xyt.model.StStbprpB; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.ToString; + +import java.io.Serializable; + +/** + * @author Sun Lejun + * @version 1.0 + * @date 2024/1/26 + */ + +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +public class StStbprpVo extends StStbprpB implements Serializable { + @Schema(description="归属协议名称") + private String protocolName; +} diff --git a/src/main/java/com/gunshi/project/xyt/mapper/StStbprpBMapper.java b/src/main/java/com/gunshi/project/xyt/mapper/StStbprpBMapper.java index c7a3385..7ff6b75 100644 --- a/src/main/java/com/gunshi/project/xyt/mapper/StStbprpBMapper.java +++ b/src/main/java/com/gunshi/project/xyt/mapper/StStbprpBMapper.java @@ -1,12 +1,32 @@ package com.gunshi.project.xyt.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.gunshi.project.xyt.entity.basedata.StStbprpVo; +import com.gunshi.project.xyt.entity.basedata.StcdSearch; import com.gunshi.project.xyt.model.StStbprpB; + import java.util.List; + import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @Mapper public interface StStbprpBMapper extends BaseMapper { int batchInsert(@Param("list") List list); + + /** + * 根据站点编码/名称查询站点 + * @param page 分页对象 + * @param search 查询对象 + * @return 站点集合 + */ + Page queryBySearch(Page page, @Param("obj") StcdSearch search); + + /** + * 根据站点编码/名称查询站点 + * @param search 查询对象 + * @return 站点集合 + */ + List queryBySearch(@Param("obj") StcdSearch search); } \ No newline at end of file diff --git a/src/main/java/com/gunshi/project/xyt/model/StStbprpB.java b/src/main/java/com/gunshi/project/xyt/model/StStbprpB.java index 8ab9299..2d10488 100644 --- a/src/main/java/com/gunshi/project/xyt/model/StStbprpB.java +++ b/src/main/java/com/gunshi/project/xyt/model/StStbprpB.java @@ -125,6 +125,7 @@ public class StStbprpB implements Serializable { 水库水文站RR 地下水站ZG 分洪水位站ZB """) @NotNull(message = "站类不能为空") + @Size(max = 2,message = "站类长度不能超过2") private String sttp; /** @@ -301,6 +302,13 @@ public class StStbprpB implements Serializable { @NotNull(message = "归属协议不能为空") private Long protocols; + /** + * 北斗卡号 + */ + @TableField(value = "BDNUM") + @Schema(description = "北斗卡号") + private String bdnum; + public static final String COL_STCD = "STCD"; public static final String COL_STNM = "STNM"; @@ -372,4 +380,6 @@ public class StStbprpB implements Serializable { public static final String COL_SIM = "SIM"; public static final String COL_PROTOCOLS = "PROTOCOLS"; + + public static final String COL_BDNUM="BDNUM"; } \ No newline at end of file diff --git a/src/main/java/com/gunshi/project/xyt/service/StStbprpService.java b/src/main/java/com/gunshi/project/xyt/service/StStbprpService.java index 689092b..f331f7e 100644 --- a/src/main/java/com/gunshi/project/xyt/service/StStbprpService.java +++ b/src/main/java/com/gunshi/project/xyt/service/StStbprpService.java @@ -1,5 +1,9 @@ package com.gunshi.project.xyt.service; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.gunshi.project.xyt.entity.basedata.CheckStringSearch; +import com.gunshi.project.xyt.entity.basedata.StStbprpVo; +import com.gunshi.project.xyt.entity.basedata.StcdSearch; import com.gunshi.project.xyt.mapper.StStbprpBMapper; import com.gunshi.project.xyt.model.StStbprpB; import lombok.Data; @@ -7,6 +11,9 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.Date; +import java.util.List; + /** * @author Sun Lejun * @version 1.0 @@ -20,17 +27,47 @@ import org.springframework.transaction.annotation.Transactional; public class StStbprpService { private final StStbprpBMapper stStbprpBMapper; + /** + * 根据站点编码查询站点信息 + * @param stcd 站点编码 + * @return 站点信息 + */ public StStbprpB queryByStcd(String stcd) { return stStbprpBMapper.selectById(stcd); } + /** + * 根据站点编码查询站点信息 + * @param search 查询对象 + * @return 站点列表 + */ + public Page queryBySearch(StcdSearch search){ + Page page = search.getPageSo().toPage(); + return stStbprpBMapper.queryBySearch(page, search); + } + /** + * 根据站点编码查询站点信息 + * @param search 查询对象 + * @return 站点列表 + */ + public List queryListBySearch(StcdSearch search){ + return stStbprpBMapper.queryBySearch(search); + } public void insert(StStbprpB stStbprpB) { + stStbprpB.setModitime(new Date()); stStbprpBMapper.insert(stStbprpB); } public void update(StStbprpB stStbprpB) { + stStbprpB.setModitime(new Date()); stStbprpBMapper.updateById(stStbprpB); } + + public void checkExist(CheckStringSearch search) { + if (stStbprpBMapper.selectById(search.getKeyword()) != null) { + throw new IllegalArgumentException("站点编码已存在"); + } + } } diff --git a/src/main/resources/mapper/StStbprpBMapper.xml b/src/main/resources/mapper/StStbprpBMapper.xml index f081bdb..772809f 100644 --- a/src/main/resources/mapper/StStbprpBMapper.xml +++ b/src/main/resources/mapper/StStbprpBMapper.xml @@ -1,75 +1,160 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - STCD, STNM, RVNM, HNNM, BSNM, LGTD, LTTD, STLC, ADDVCD, DTMNM, DTMEL, DTPR, STTP, - FRGRD, ESSTYM, BGFRYM, ATCUNIT, ADMAUTH, LOCALITY, STBK, STAZT, DSTRVM, DRNA, PHCD, - USFL, COMMENTS, MODITIME, SRC, IRR_CODE, ENG_MAN_CODE, [TYPE], CHAN_CODE, RV_CODE, - BNCH, SIM, PROTOCOLS - - - - insert into dbo.ST_STBPRP_B - (STCD, STNM, RVNM, HNNM, BSNM, LGTD, LTTD, STLC, ADDVCD, DTMNM, DTMEL, DTPR, STTP, - FRGRD, ESSTYM, BGFRYM, ATCUNIT, ADMAUTH, LOCALITY, STBK, STAZT, DSTRVM, DRNA, PHCD, - USFL, COMMENTS, MODITIME, SRC, IRR_CODE, ENG_MAN_CODE, [TYPE], CHAN_CODE, RV_CODE, - BNCH, SIM, PROTOCOLS) - values - - (#{item.stcd,jdbcType=VARCHAR}, #{item.stnm,jdbcType=VARCHAR}, #{item.rvnm,jdbcType=VARCHAR}, - #{item.hnnm,jdbcType=VARCHAR}, #{item.bsnm,jdbcType=VARCHAR}, #{item.lgtd,jdbcType=DECIMAL}, - #{item.lttd,jdbcType=DECIMAL}, #{item.stlc,jdbcType=VARCHAR}, #{item.addvcd,jdbcType=VARCHAR}, - #{item.dtmnm,jdbcType=VARCHAR}, #{item.dtmel,jdbcType=DECIMAL}, #{item.dtpr,jdbcType=DECIMAL}, - #{item.sttp,jdbcType=VARCHAR}, #{item.frgrd,jdbcType=VARCHAR}, #{item.esstym,jdbcType=VARCHAR}, - #{item.bgfrym,jdbcType=VARCHAR}, #{item.atcunit,jdbcType=VARCHAR}, #{item.admauth,jdbcType=VARCHAR}, - #{item.locality,jdbcType=VARCHAR}, #{item.stbk,jdbcType=VARCHAR}, #{item.stazt,jdbcType=DECIMAL}, - #{item.dstrvm,jdbcType=DECIMAL}, #{item.drna,jdbcType=DECIMAL}, #{item.phcd,jdbcType=VARCHAR}, - #{item.usfl,jdbcType=VARCHAR}, #{item.comments,jdbcType=VARCHAR}, #{item.moditime,jdbcType=TIMESTAMP}, - #{item.src,jdbcType=VARCHAR}, #{item.irrCode,jdbcType=VARCHAR}, #{item.engManCode,jdbcType=VARCHAR}, - #{item.type,jdbcType=VARCHAR}, #{item.chanCode,jdbcType=VARCHAR}, #{item.rvCode,jdbcType=VARCHAR}, - #{item.bnch,jdbcType=VARCHAR}, #{item.sim,jdbcType=VARCHAR}, #{item.protocols,jdbcType=BIGINT} - ) - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + STCD, + STNM, + RVNM, + HNNM, + BSNM, + LGTD, + LTTD, + STLC, + ADDVCD, + DTMNM, + DTMEL, + DTPR, + STTP, + FRGRD, + ESSTYM, + BGFRYM, + ATCUNIT, + ADMAUTH, + LOCALITY, + STBK, + STAZT, + DSTRVM, + DRNA, + PHCD, + USFL, + COMMENTS, + MODITIME, + SRC, + IRR_CODE, + ENG_MAN_CODE, + [TYPE], + CHAN_CODE, + RV_CODE, + BNCH, + SIM, + PROTOCOLS, + BDNUM + + + + insert into dbo.ST_STBPRP_B + (STCD, STNM, RVNM, HNNM, BSNM, LGTD, LTTD, STLC, ADDVCD, DTMNM, DTMEL, DTPR, STTP, + FRGRD, ESSTYM, BGFRYM, ATCUNIT, ADMAUTH, LOCALITY, STBK, STAZT, DSTRVM, DRNA, PHCD, + USFL, COMMENTS, MODITIME, SRC, IRR_CODE, ENG_MAN_CODE, [TYPE], CHAN_CODE, RV_CODE, + BNCH, SIM, PROTOCOLS, BDNUM) + values + + (#{item.stcd,jdbcType=VARCHAR}, #{item.stnm,jdbcType=VARCHAR}, #{item.rvnm,jdbcType=VARCHAR}, + #{item.hnnm,jdbcType=VARCHAR}, #{item.bsnm,jdbcType=VARCHAR}, #{item.lgtd,jdbcType=DECIMAL}, + #{item.lttd,jdbcType=DECIMAL}, #{item.stlc,jdbcType=VARCHAR}, #{item.addvcd,jdbcType=VARCHAR}, + #{item.dtmnm,jdbcType=VARCHAR}, #{item.dtmel,jdbcType=DECIMAL}, #{item.dtpr,jdbcType=DECIMAL}, + #{item.sttp,jdbcType=VARCHAR}, #{item.frgrd,jdbcType=VARCHAR}, #{item.esstym,jdbcType=VARCHAR}, + #{item.bgfrym,jdbcType=VARCHAR}, #{item.atcunit,jdbcType=VARCHAR}, #{item.admauth,jdbcType=VARCHAR}, + #{item.locality,jdbcType=VARCHAR}, #{item.stbk,jdbcType=VARCHAR}, #{item.stazt,jdbcType=DECIMAL}, + #{item.dstrvm,jdbcType=DECIMAL}, #{item.drna,jdbcType=DECIMAL}, #{item.phcd,jdbcType=VARCHAR}, + #{item.usfl,jdbcType=VARCHAR}, #{item.comments,jdbcType=VARCHAR}, #{item.moditime,jdbcType=TIMESTAMP}, + #{item.src,jdbcType=VARCHAR}, #{item.irrCode,jdbcType=VARCHAR}, #{item.engManCode,jdbcType=VARCHAR}, + #{item.type,jdbcType=VARCHAR}, #{item.chanCode,jdbcType=VARCHAR}, #{item.rvCode,jdbcType=VARCHAR}, + #{item.bnch,jdbcType=VARCHAR}, #{item.sim,jdbcType=VARCHAR}, #{item.protocols,jdbcType=BIGINT}, + #{item.bdnum,jdbcType=VARCHAR}) + + + + \ No newline at end of file