From 29dae2aa29d1d98df3beb9f87a9764edb39cfb32 Mon Sep 17 00:00:00 2001 From: zhouxiunai <154707516@qq.com> Date: Mon, 25 Feb 2019 16:54:13 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=A0=B9=E6=8D=AEstandCode?= =?UTF-8?q?=E8=8E=B7=E5=8F=96bridgeCode=E7=9A=84=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../basicdata/OrmsStandController.java | 33 +++++++++++ .../dao/basicdata/OrmsStandAirbridgeDao.java | 15 +++++ .../entity/baiscdata/OrmsStandAirbridge.java | 31 ++++++++++ .../baiscdata/OrmsStandAirbridgePK.java | 57 +++++++++++++++++++ .../basicdata/OrmsStandControllerTest.java | 38 +++++++++++++ .../basicdata/OrmsStandAirbridgeDaoTest.java | 28 +++++++++ 6 files changed, 202 insertions(+) create mode 100644 src/main/java/com/gzzn/omms/adminapi/domain/secondary/dao/basicdata/OrmsStandAirbridgeDao.java create mode 100644 src/main/java/com/gzzn/omms/adminapi/domain/secondary/entity/baiscdata/OrmsStandAirbridge.java create mode 100644 src/main/java/com/gzzn/omms/adminapi/domain/secondary/entity/baiscdata/OrmsStandAirbridgePK.java create mode 100644 src/test/java/com/gzzn/omms/adminapi/controller/basicdata/OrmsStandControllerTest.java create mode 100644 src/test/java/com/gzzn/omms/adminapi/domain/secondary/dao/basicdata/OrmsStandAirbridgeDaoTest.java diff --git a/src/main/java/com/gzzn/omms/adminapi/controller/basicdata/OrmsStandController.java b/src/main/java/com/gzzn/omms/adminapi/controller/basicdata/OrmsStandController.java index fb85964..981e7ad 100644 --- a/src/main/java/com/gzzn/omms/adminapi/controller/basicdata/OrmsStandController.java +++ b/src/main/java/com/gzzn/omms/adminapi/controller/basicdata/OrmsStandController.java @@ -2,18 +2,24 @@ package com.gzzn.omms.adminapi.controller.basicdata; import io.swagger.annotations.ApiOperation; +import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; +import org.apache.commons.collections.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RestController; +import com.gzzn.omms.adminapi.domain.secondary.dao.basicdata.OrmsStandAirbridgeDao; import com.gzzn.omms.adminapi.domain.secondary.dao.basicdata.OrmsStandDao; import com.gzzn.omms.adminapi.domain.secondary.entity.baiscdata.OrmsStand; +import com.gzzn.omms.adminapi.domain.secondary.entity.baiscdata.OrmsStandAirbridge; import com.gzzn.omms.adminapi.dto.ResponseDto; import com.gzzn.omms.adminapi.dto.basicdata.OrmsStandDto; import com.gzzn.omms.adminapi.dto.basicdata.convert.OrmsStandConvert; +import com.gzzn.omms.adminapi.enums.ResultCode; /** * 机位 @@ -28,6 +34,11 @@ public class OrmsStandController { */ @Autowired private OrmsStandDao ormsStandDao; + + + @Autowired + private OrmsStandAirbridgeDao ormsStandAirbridgeDao; + /** * 机位Dto接口 */ @@ -50,4 +61,26 @@ public class OrmsStandController { return ResponseDto.success(ormsStandListDto); } + + + /** + * 获取指定机位的登机桥信息 + * @return + */ + @ApiOperation(value="获取指定机位的登机桥代码",tags="基础数据") + @GetMapping(value="/basicdata/ormsStands/{standCode}/airbridgeCode") + public ResponseDto> getAirbridgeCodeByStandCode(@PathVariable String standCode) { + List lsAirbridges = ormsStandAirbridgeDao.findByStandCode(standCode); + + List lsAirbridgesCode = new ArrayList(); + if(!CollectionUtils.isEmpty(lsAirbridges)) + { + lsAirbridgesCode = lsAirbridges.stream().map(node->{ + return node.getId().getAirbridgeCode(); + }).collect(Collectors.toList()); + } + + + return ResponseDto.success(lsAirbridgesCode); + } } diff --git a/src/main/java/com/gzzn/omms/adminapi/domain/secondary/dao/basicdata/OrmsStandAirbridgeDao.java b/src/main/java/com/gzzn/omms/adminapi/domain/secondary/dao/basicdata/OrmsStandAirbridgeDao.java new file mode 100644 index 0000000..b6542a9 --- /dev/null +++ b/src/main/java/com/gzzn/omms/adminapi/domain/secondary/dao/basicdata/OrmsStandAirbridgeDao.java @@ -0,0 +1,15 @@ +package com.gzzn.omms.adminapi.domain.secondary.dao.basicdata; + +import java.util.List; + +import org.springframework.data.jpa.repository.Query; +import org.springframework.data.repository.CrudRepository; + +import com.gzzn.omms.adminapi.domain.secondary.entity.baiscdata.OrmsStandAirbridge; +import com.gzzn.omms.adminapi.domain.secondary.entity.baiscdata.OrmsStandAirbridgePK; + +public interface OrmsStandAirbridgeDao extends CrudRepository { + + @Query("select o from OrmsStandAirbridge o where o.id.standCode = ?1") + public List findByStandCode(String standCode); +} diff --git a/src/main/java/com/gzzn/omms/adminapi/domain/secondary/entity/baiscdata/OrmsStandAirbridge.java b/src/main/java/com/gzzn/omms/adminapi/domain/secondary/entity/baiscdata/OrmsStandAirbridge.java new file mode 100644 index 0000000..071b977 --- /dev/null +++ b/src/main/java/com/gzzn/omms/adminapi/domain/secondary/entity/baiscdata/OrmsStandAirbridge.java @@ -0,0 +1,31 @@ +package com.gzzn.omms.adminapi.domain.secondary.entity.baiscdata; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the ORMS_STAND_AIRBRIDGE database table. + * + */ +@Entity +@Table(name="ORMS_STAND_AIRBRIDGE") +@NamedQuery(name="OrmsStandAirbridge.findAll", query="SELECT o FROM OrmsStandAirbridge o") +public class OrmsStandAirbridge implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private OrmsStandAirbridgePK id; + + public OrmsStandAirbridge() { + } + + public OrmsStandAirbridgePK getId() { + return this.id; + } + + public void setId(OrmsStandAirbridgePK id) { + this.id = id; + } + +} \ No newline at end of file diff --git a/src/main/java/com/gzzn/omms/adminapi/domain/secondary/entity/baiscdata/OrmsStandAirbridgePK.java b/src/main/java/com/gzzn/omms/adminapi/domain/secondary/entity/baiscdata/OrmsStandAirbridgePK.java new file mode 100644 index 0000000..a10208e --- /dev/null +++ b/src/main/java/com/gzzn/omms/adminapi/domain/secondary/entity/baiscdata/OrmsStandAirbridgePK.java @@ -0,0 +1,57 @@ +package com.gzzn.omms.adminapi.domain.secondary.entity.baiscdata; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the ORMS_STAND_AIRBRIDGE database table. + * + */ +@Embeddable +public class OrmsStandAirbridgePK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(name="STAND_CODE") + private String standCode; + + @Column(name="AIRBRIDGE_CODE") + private String airbridgeCode; + + public OrmsStandAirbridgePK() { + } + public String getStandCode() { + return this.standCode; + } + public void setStandCode(String standCode) { + this.standCode = standCode; + } + public String getAirbridgeCode() { + return this.airbridgeCode; + } + public void setAirbridgeCode(String airbridgeCode) { + this.airbridgeCode = airbridgeCode; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof OrmsStandAirbridgePK)) { + return false; + } + OrmsStandAirbridgePK castOther = (OrmsStandAirbridgePK)other; + return + this.standCode.equals(castOther.standCode) + && this.airbridgeCode.equals(castOther.airbridgeCode); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.standCode.hashCode(); + hash = hash * prime + this.airbridgeCode.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/test/java/com/gzzn/omms/adminapi/controller/basicdata/OrmsStandControllerTest.java b/src/test/java/com/gzzn/omms/adminapi/controller/basicdata/OrmsStandControllerTest.java new file mode 100644 index 0000000..44db6ec --- /dev/null +++ b/src/test/java/com/gzzn/omms/adminapi/controller/basicdata/OrmsStandControllerTest.java @@ -0,0 +1,38 @@ +package com.gzzn.omms.adminapi.controller.basicdata; + +import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; +import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.http.MediaType; +import org.springframework.test.context.junit4.SpringRunner; +import org.springframework.test.web.servlet.MockMvc; +import org.springframework.test.web.servlet.ResultHandler; + +@RunWith(SpringRunner.class) +@SpringBootTest +@AutoConfigureMockMvc +public class OrmsStandControllerTest { + + @Autowired + private MockMvc mvc; + + @Test + public void testGetAirbridgeCodeByStandCode() throws Exception + { + mvc. + perform(get("/basicdata/ormsStands/{standCode}/airbridgeCode","147")) + .andExpect(status().isOk()) + .andExpect(content().contentType(MediaType.APPLICATION_JSON_UTF8)) + .andExpect(jsonPath("$.is_success").value(true)) + .andDo(print()) + ; + } +} diff --git a/src/test/java/com/gzzn/omms/adminapi/domain/secondary/dao/basicdata/OrmsStandAirbridgeDaoTest.java b/src/test/java/com/gzzn/omms/adminapi/domain/secondary/dao/basicdata/OrmsStandAirbridgeDaoTest.java new file mode 100644 index 0000000..734f792 --- /dev/null +++ b/src/test/java/com/gzzn/omms/adminapi/domain/secondary/dao/basicdata/OrmsStandAirbridgeDaoTest.java @@ -0,0 +1,28 @@ +package com.gzzn.omms.adminapi.domain.secondary.dao.basicdata; + +import static org.assertj.core.api.Assertions.assertThat; + +import java.util.List; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; + +import com.gzzn.omms.adminapi.domain.secondary.entity.baiscdata.OrmsStandAirbridge; + +@RunWith(SpringRunner.class) +@SpringBootTest +public class OrmsStandAirbridgeDaoTest { + + @Autowired + private OrmsStandAirbridgeDao ormsStandAirbridgeDao; + + @Test + public void testFindByStandCode() + { + List ls = ormsStandAirbridgeDao.findByStandCode("147"); + assertThat(ls).isNotEmpty().hasSize(2); + } +}