From f5f58d39e219d6250ae416b4cf374dc247d6317c Mon Sep 17 00:00:00 2001 From: liuguijing <123456> Date: Thu, 4 Jan 2024 17:28:34 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E7=9B=91=E6=B5=8B=E8=A3=85?= =?UTF-8?q?=E7=BD=AE=E7=B1=BB=E5=9E=8B=E8=A1=A8=20=E5=A2=9E=E5=88=A0?= =?UTF-8?q?=E6=94=B9=E6=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cac/controller/ModevTypeController.java | 72 +++++++++++++++++++ .../java/com/xydl/cac/entity/ModevType.java | 35 +++++++++ .../cac/repository/ModevTypeRepository.java | 14 ++++ .../xydl/cac/service/ModevTypeService.java | 18 +++++ .../service/impl/ModevTypeServiceImpl.java | 59 +++++++++++++++ 5 files changed, 198 insertions(+) create mode 100644 src/main/java/com/xydl/cac/controller/ModevTypeController.java create mode 100644 src/main/java/com/xydl/cac/entity/ModevType.java create mode 100644 src/main/java/com/xydl/cac/repository/ModevTypeRepository.java create mode 100644 src/main/java/com/xydl/cac/service/ModevTypeService.java create mode 100644 src/main/java/com/xydl/cac/service/impl/ModevTypeServiceImpl.java diff --git a/src/main/java/com/xydl/cac/controller/ModevTypeController.java b/src/main/java/com/xydl/cac/controller/ModevTypeController.java new file mode 100644 index 0000000..e1ad449 --- /dev/null +++ b/src/main/java/com/xydl/cac/controller/ModevTypeController.java @@ -0,0 +1,72 @@ +package com.xydl.cac.controller; + +import com.xydl.cac.entity.ModevType; +import com.xydl.cac.model.Response; +import com.xydl.cac.service.ModevTypeService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.constraints.NotNull; +import java.util.List; + +@RestController +@Api(tags = {"监测设备类型相关接口"}) +@RequestMapping("modevtype") +@Slf4j +public class ModevTypeController extends BasicController { + + @Resource + ModevTypeService service; + + @GetMapping("listAll") + @ApiOperation("查询列表") + public Response> listAll(Integer bdzid) { + try { + List result = service.listAll(bdzid); + return Response.success(result); + } catch (Exception ex) { + return Response.fail(ex.getMessage()); + } + } + + @PostMapping("add") + @ApiOperation("新增") + public Response add(@Validated @RequestBody ModevType item) { + try { + ModevType result = service.add(item); + return Response.success(result); + } catch (Exception ex) { + return Response.fail(ex.getMessage()); + } + } + + @PostMapping("update") + @ApiOperation("更新") + public Response update(@Validated @RequestBody ModevType item) { + try { + if (item.getId() == null) { + throw new Exception("ID不能为空!"); + } + service.update(item); + return Response.success("OK"); + } catch (Exception ex) { + return Response.fail(ex.getMessage()); + } + } + + @PostMapping("delete") + @ApiOperation("删除") + public Response delete(@Validated @NotNull(message = "ID不能为空!") Integer id) { + try { + service.delete(id); + return Response.success("OK"); + } catch (Exception ex) { + return Response.fail(ex.getMessage()); + } + } + +} diff --git a/src/main/java/com/xydl/cac/entity/ModevType.java b/src/main/java/com/xydl/cac/entity/ModevType.java new file mode 100644 index 0000000..874b25b --- /dev/null +++ b/src/main/java/com/xydl/cac/entity/ModevType.java @@ -0,0 +1,35 @@ +package com.xydl.cac.entity; + +import io.swagger.annotations.ApiModel; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import javax.persistence.*; +import javax.validation.constraints.NotEmpty; + +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +@Entity +@Table(name = "modevtype") +@ApiModel("监测装置类型表") +public class ModevType { + + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(name = "id") + private Integer id; + + @NotEmpty(message = "名称不能为空") + @Column(name = "mc") + private String mc; + + @NotEmpty(message = "表名不能为空") + @Column(name = "tablename") + private String tablename; + + +} \ No newline at end of file diff --git a/src/main/java/com/xydl/cac/repository/ModevTypeRepository.java b/src/main/java/com/xydl/cac/repository/ModevTypeRepository.java new file mode 100644 index 0000000..3e76d8b --- /dev/null +++ b/src/main/java/com/xydl/cac/repository/ModevTypeRepository.java @@ -0,0 +1,14 @@ +package com.xydl.cac.repository; + +import com.xydl.cac.entity.ModevType; +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.data.jpa.repository.JpaSpecificationExecutor; +import org.springframework.stereotype.Repository; + +import java.util.List; + + +@Repository +public interface ModevTypeRepository extends JpaRepository, JpaSpecificationExecutor { + List findByMc(String mc); +} \ No newline at end of file diff --git a/src/main/java/com/xydl/cac/service/ModevTypeService.java b/src/main/java/com/xydl/cac/service/ModevTypeService.java new file mode 100644 index 0000000..1cc9a4e --- /dev/null +++ b/src/main/java/com/xydl/cac/service/ModevTypeService.java @@ -0,0 +1,18 @@ +package com.xydl.cac.service; + +import com.xydl.cac.entity.ModevType; + +import java.util.List; + +public interface ModevTypeService { + + List listAll(Integer modevtypeid); + + ModevType add(ModevType item) throws Exception; + + void update(ModevType item) throws Exception; + + void delete(Integer id); + + ModevType detail(Integer id) throws Exception; +} diff --git a/src/main/java/com/xydl/cac/service/impl/ModevTypeServiceImpl.java b/src/main/java/com/xydl/cac/service/impl/ModevTypeServiceImpl.java new file mode 100644 index 0000000..2239ec0 --- /dev/null +++ b/src/main/java/com/xydl/cac/service/impl/ModevTypeServiceImpl.java @@ -0,0 +1,59 @@ +package com.xydl.cac.service.impl; + +import com.xydl.cac.entity.ModevType; +import com.xydl.cac.repository.ModevTypeRepository; +import com.xydl.cac.service.ModevTypeService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import java.util.List; +import java.util.Optional; + +@Service +@Slf4j +@Transactional(rollbackFor = Exception.class) +public class ModevTypeServiceImpl implements ModevTypeService { + + @Resource + ModevTypeRepository repository; + + @Override + public List listAll(Integer modevtypeid) { + return repository.findAll(); + } + + @Override + public ModevType add(ModevType item) throws Exception { + item.setId(null); + List byMc = repository.findByMc(item.getMc()); + if (!byMc.isEmpty()) { + throw new Exception("该监测装置类型已存在"); + } + return repository.save(item); + } + + @Override + public void update(ModevType item) throws Exception { + List byMc = repository.findByMc(item.getMc()); + if (!byMc.isEmpty()) { + throw new Exception("该监测装置类型已存在"); + } + repository.save(item); + } + + @Override + public void delete(Integer id) { + repository.deleteById(id); + } + + @Override + public ModevType detail(Integer id) throws Exception { + Optional optional = repository.findById(id); + if (!optional.isPresent()) { + throw new Exception("未找到该类型"); + } + return null; + } +}