Kaynağa Gözat

feat: 实现查询所有车辆口径描述接口

weijianghai 1 yıl önce
ebeveyn
işleme
5c488e80bd

+ 29 - 0
src/main/java/com/nokia/financeapi/controller/car/CarCaliberDescriptionController.java

@@ -0,0 +1,29 @@
+package com.nokia.financeapi.controller.car;
+
+import com.nokia.financeapi.common.R;
+import com.nokia.financeapi.pojo.po.car.CarCaliberDescriptionPo;
+import com.nokia.financeapi.service.car.CarCaliberDescriptionService;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.LinkedHashMap;
+
+@Tag(name = "车辆口径描述")
+@RestController
+@RequestMapping("/house-car/car/api/caliber-description")
+public class CarCaliberDescriptionController {
+    private final CarCaliberDescriptionService carCaliberDescriptionService;
+
+    public CarCaliberDescriptionController(CarCaliberDescriptionService carCaliberDescriptionService) {
+        this.carCaliberDescriptionService = carCaliberDescriptionService;
+    }
+
+    @Operation(summary = "查询所有车辆口径描述")
+    @PostMapping("/all")
+    public R<LinkedHashMap<String, CarCaliberDescriptionPo>> all() {
+        return carCaliberDescriptionService.all();
+    }
+}

+ 18 - 0
src/main/java/com/nokia/financeapi/dao/car/CarCaliberDescriptionDao.java

@@ -0,0 +1,18 @@
+package com.nokia.financeapi.dao.car;
+
+import com.nokia.financeapi.pojo.po.car.CarCaliberDescriptionPo;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Select;
+
+import java.util.List;
+
+@Mapper
+public interface CarCaliberDescriptionDao {
+    /**
+     * 查询所有车辆口径描述
+     */
+    @Select("""
+select * from car.caliber_description order by second_menu, third_menu, tab_name
+""")
+    List<CarCaliberDescriptionPo> all();
+}

+ 20 - 0
src/main/java/com/nokia/financeapi/pojo/po/car/CarCaliberDescriptionPo.java

@@ -0,0 +1,20 @@
+package com.nokia.financeapi.pojo.po.car;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@NoArgsConstructor
+@Data
+public class CarCaliberDescriptionPo {
+    @Schema(description = "页签id", example = "bao-gao")
+    private String tabId;
+    @Schema(description = "页签名称", example = "不动产运营报告")
+    private String tabName;
+    @Schema(description = "二级菜单名称", example = "不动产运营报告")
+    private String secondMenu;
+    @Schema(description = "三级菜单名称", example = "不动产运营报告")
+    private String thirdMenu;
+    @Schema(description = "口径描述", example = "口径描述")
+    private String description;
+}

+ 27 - 0
src/main/java/com/nokia/financeapi/service/car/CarCaliberDescriptionService.java

@@ -0,0 +1,27 @@
+package com.nokia.financeapi.service.car;
+
+import com.nokia.financeapi.common.R;
+import com.nokia.financeapi.dao.car.CarCaliberDescriptionDao;
+import com.nokia.financeapi.pojo.po.car.CarCaliberDescriptionPo;
+import org.springframework.stereotype.Service;
+
+import java.util.LinkedHashMap;
+import java.util.List;
+
+@Service
+public class CarCaliberDescriptionService {
+    private final CarCaliberDescriptionDao carCaliberDescriptionDao;
+
+    public CarCaliberDescriptionService(CarCaliberDescriptionDao carCaliberDescriptionDao) {
+        this.carCaliberDescriptionDao = carCaliberDescriptionDao;
+    }
+
+    public R<LinkedHashMap<String, CarCaliberDescriptionPo>> all() {
+        List<CarCaliberDescriptionPo> list = carCaliberDescriptionDao.all();
+        LinkedHashMap<String, CarCaliberDescriptionPo> map = new LinkedHashMap<>();
+        for (CarCaliberDescriptionPo t : list) {
+            map.put(t.getTabId(), t);
+        }
+        return R.ok(map);
+    }
+}