Selaa lähdekoodia

房价方案 获取接口

shenzhongzheng 2 vuotta sitten
vanhempi
commit
2f45d34dfa

+ 10 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/Vo/SelectVo.java

@@ -0,0 +1,10 @@
+package org.jeecg.modules.rooms.Vo;
+
+import lombok.Data;
+
+@Data
+public class SelectVo {
+    private String label;
+
+    private String value;
+}

+ 45 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/controller/CesRoomPricePlanController.java

@@ -0,0 +1,45 @@
+package org.jeecg.modules.rooms.controller;
+
+
+import io.swagger.annotations.ApiOperation;
+import org.apache.commons.lang3.StringUtils;
+import org.jeecg.common.Enum.ResultCode;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.modules.rooms.entity.CesRoomPricePlan;
+import org.jeecg.modules.rooms.service.CesRoomPricePlanServiceImpl;
+import org.springframework.web.bind.annotation.*;
+
+import org.springframework.stereotype.Controller;
+
+import javax.annotation.Resource;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author fendo
+ * @since 2023-03-02
+ */
+@RestController
+@RequestMapping("/rooms/roomPricePlan")
+public class CesRoomPricePlanController {
+
+    @Resource
+    private CesRoomPricePlanServiceImpl roomPricePlanService;
+
+    @ApiOperation(value="获取当前酒店的房价方案", notes="获取当前酒店的房价方案")
+    @PostMapping(value = "/getRoomPlans/{hotelId}")
+    public Result getRoomPlans(@PathVariable String hotelId){
+        if(StringUtils.isBlank(hotelId)){
+            return Result.error(ResultCode.PARAM_MISS);
+        }
+        try{
+            return  roomPricePlanService.getRoomPlans(hotelId);
+        }catch (Exception e){
+            return Result.error(e.getMessage());
+        }
+    }
+
+}
+

+ 62 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/entity/CesRoomPricePlan.java

@@ -0,0 +1,62 @@
+package org.jeecg.modules.rooms.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import java.time.LocalDateTime;
+import com.baomidou.mybatisplus.annotation.TableField;
+import java.io.Serializable;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * <p>
+ *
+ * </p>
+ *
+ * @author fendo
+ * @since 2023-03-02
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("ces_room_price_plan")
+public class CesRoomPricePlan extends Model<CesRoomPricePlan> {
+
+    private static final long serialVersionUID = 1L;
+
+    private String id;
+
+    private String hotelId;
+    private String name;
+
+    @TableField("createAt")
+    private LocalDateTime createAt;
+
+    @TableField("updateAt")
+    private LocalDateTime updateAt;
+
+    /**
+     * 逻辑删除字段
+     */
+    private Boolean invalid;
+
+
+    public static final String ID = "id";
+
+    public static final String NAME = "name";
+
+    public static final String HOTELID = "hotel_id";
+
+    public static final String CREATEAT = "createAt";
+
+    public static final String UPDATEAT = "updateAt";
+
+    public static final String INVALID = "invalid";
+
+    @Override
+    public Serializable pkVal() {
+        return this.id;
+    }
+
+}

+ 16 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/mapper/CesRoomPricePlanMapper.java

@@ -0,0 +1,16 @@
+package org.jeecg.modules.rooms.mapper;
+
+import org.jeecg.modules.rooms.entity.CesRoomPricePlan;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author fendo
+ * @since 2023-03-02
+ */
+public interface CesRoomPricePlanMapper extends BaseMapper<CesRoomPricePlan> {
+
+}

+ 42 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/service/CesRoomPricePlanServiceImpl.java

@@ -0,0 +1,42 @@
+package org.jeecg.modules.rooms.service;
+
+import cn.hutool.core.collection.CollectionUtil;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.modules.rooms.Vo.SelectVo;
+import org.jeecg.modules.rooms.entity.CesRoomPricePlan;
+import org.jeecg.modules.rooms.mapper.CesRoomPricePlanMapper;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author fendo
+ * @since 2023-03-02
+ */
+@Service
+public class CesRoomPricePlanServiceImpl extends ServiceImpl<CesRoomPricePlanMapper, CesRoomPricePlan> implements IService<CesRoomPricePlan> {
+    @Resource
+    private CesRoomPricePlanMapper pricePlanMapper;
+
+    public Result getRoomPlans(String hotelId){
+        List<CesRoomPricePlan> planList =  pricePlanMapper.selectList(Wrappers.<CesRoomPricePlan>lambdaQuery().eq(CesRoomPricePlan::getHotelId,hotelId).eq(CesRoomPricePlan::getInvalid,false));
+        if(CollectionUtil.isEmpty(planList)) return Result.ok(new ArrayList<>());
+        List<SelectVo> vos = new ArrayList<>();
+        planList.forEach(v -> {
+            SelectVo vo = new SelectVo();
+            vo.setLabel(v.getName());
+            vo.setValue(v.getId());
+            vos.add(vo);
+        });
+        return Result.ok(vos);
+    }
+}