Browse Source

fix: 添加订单国籍关联,添加订单房型关联

luofeiyun 1 tuần trước cách đây
mục cha
commit
f26341fb0d

+ 64 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/dal/dataobject/order/TradeOrderCountryDO.java

@@ -0,0 +1,64 @@
+package com.yc.ship.module.trade.dal.dataobject.order;
+
+import com.yc.ship.framework.tenant.core.db.TenantBaseDO;
+import lombok.*;
+
+import java.math.BigDecimal;
+
+import com.baomidou.mybatisplus.annotation.*;
+import com.yc.ship.framework.mybatis.core.dataobject.BaseDO;
+
+/**
+ * 订单关联国籍数据 DO
+ *
+ * @author 管理员
+ */
+@TableName("trade_order_country")
+@KeySequence("trade_order_country_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+public class TradeOrderCountryDO extends TenantBaseDO {
+
+    /**
+     * ID
+     */
+    @TableId
+    private Long id;
+    /**
+     * 订单ID
+     */
+    private Long orderId;
+    /**
+     * 订单号
+     */
+    private String orderNo;
+    /**
+     * 国家ID
+     */
+    private Integer countryId;
+    /**
+     * 成人数
+     */
+    private Integer adultNum;
+    /**
+     * 儿童数
+     */
+    private Integer childNum;
+    /**
+     * 婴儿数
+     */
+    private Integer babyNum;
+    /**
+     * 陪同数
+     */
+    private Integer withNum;
+    /**
+     * 陪同费
+     */
+    private BigDecimal withPrice;
+
+}

+ 116 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/dal/dataobject/order/TradeOrderRoomModelDO.java

@@ -0,0 +1,116 @@
+package com.yc.ship.module.trade.dal.dataobject.order;
+
+import com.yc.ship.framework.tenant.core.db.TenantBaseDO;
+import lombok.*;
+
+import java.math.BigDecimal;
+
+import com.baomidou.mybatisplus.annotation.*;
+import com.yc.ship.framework.mybatis.core.dataobject.BaseDO;
+
+/**
+ * 订单关联房型数据 DO
+ *
+ * @author 管理员
+ */
+@TableName("trade_order_room_model")
+@KeySequence("trade_order_room_model_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+public class TradeOrderRoomModelDO extends TenantBaseDO {
+
+    /**
+     * ID
+     */
+    @TableId
+    private Long id;
+    /**
+     * 订单ID
+     */
+    private Long orderId;
+    /**
+     * 订单号
+     */
+    private String orderNo;
+    /**
+     * 房型ID
+     */
+    private Long roomModelId;
+    /**
+     * 房型名称
+     */
+    private String roomModelName;
+    /**
+     * 楼层
+     */
+    private Integer floor;
+    /**
+     * 成人数(占床)
+     */
+    private Integer adultTakeNum;
+    /**
+     * 成人加床数
+     */
+    private Integer adultPlusNum;
+    /**
+     * 成人单间数
+     */
+    private Integer adultAloneNum;
+    /**
+     * 儿童不占床数
+     */
+    private Integer childNonTakeNum;
+    /**
+     * 儿童占床数
+     */
+    private Integer childTakeNum;
+    /**
+     * 儿童加床数
+     */
+    private Integer childPlusNum;
+    /**
+     * 婴儿不占床数
+     */
+    private Integer babyNonTakeNum;
+    /**
+     * 婴儿儿童占床数
+     */
+    private Integer babyTakeNum;
+    /**
+     * 婴儿儿童加床数
+     */
+    private Integer babyPlusNum;
+    /**
+     * 原价
+     */
+    private BigDecimal originalPrice;
+    /**
+     * 折扣
+     */
+    private BigDecimal discount;
+    /**
+     * 单价
+     */
+    private BigDecimal price;
+    /**
+     * 是否半套
+     */
+    private Integer halfSet;
+    /**
+     * 用房数
+     */
+    private Double useRoomNum;
+    /**
+     * 小计
+     */
+    private BigDecimal subTotal;
+    /**
+     * 实收金额
+     */
+    private BigDecimal realMoney;
+
+}

+ 16 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/dal/mysql/order/TradeOrderCountryMapper.java

@@ -0,0 +1,16 @@
+package com.yc.ship.module.trade.dal.mysql.order;
+
+import com.yc.ship.framework.mybatis.core.mapper.BaseMapperX;
+import com.yc.ship.module.trade.dal.dataobject.order.TradeOrderCountryDO;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 订单关联国籍数据 Mapper
+ *
+ * @author 管理员
+ */
+@Mapper
+public interface TradeOrderCountryMapper extends BaseMapperX<TradeOrderCountryDO> {
+
+
+}

+ 16 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/dal/mysql/order/TradeOrderRoomModelMapper.java

@@ -0,0 +1,16 @@
+package com.yc.ship.module.trade.dal.mysql.order;
+
+import com.yc.ship.framework.mybatis.core.mapper.BaseMapperX;
+import com.yc.ship.module.trade.dal.dataobject.order.TradeOrderRoomModelDO;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 订单关联房型数据 Mapper
+ *
+ * @author 管理员
+ */
+@Mapper
+public interface TradeOrderRoomModelMapper extends BaseMapperX<TradeOrderRoomModelDO> {
+
+
+}

+ 12 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/service/order/TradeOrderCountryService.java

@@ -0,0 +1,12 @@
+package com.yc.ship.module.trade.service.order;
+
+
+/**
+ * 订单关联国籍数据 Service 接口
+ *
+ * @author 管理员
+ */
+public interface TradeOrderCountryService {
+
+
+}

+ 23 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/service/order/impl/TradeOrderCountryServiceImpl.java

@@ -0,0 +1,23 @@
+package com.yc.ship.module.trade.service.order.impl;
+
+import com.yc.ship.module.trade.service.order.TradeOrderCountryService;
+import org.springframework.stereotype.Service;
+import javax.annotation.Resource;
+import org.springframework.validation.annotation.Validated;
+
+
+import com.yc.ship.module.trade.dal.mysql.order.TradeOrderCountryMapper;
+
+/**
+ * 订单关联国籍数据 Service 实现类
+ *
+ * @author 管理员
+ */
+@Service
+@Validated
+public class TradeOrderCountryServiceImpl implements TradeOrderCountryService {
+
+    @Resource
+    private TradeOrderCountryMapper orderCountryMapper;
+
+}

+ 53 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/service/orderroommodel/OrderRoomModelService.java

@@ -0,0 +1,53 @@
+package com.yc.ship.module.trade.service.orderroommodel;
+
+import javax.validation.*;
+import com.yc.ship.module.trade.controller.admin.orderroommodel.vo.*;
+import com.yc.ship.module.trade.dal.dataobject.order.TradeOrderRoomModelDO;
+import com.yc.ship.framework.common.pojo.PageResult;
+
+/**
+ * 订单关联房型数据 Service 接口
+ *
+ * @author 管理员
+ */
+public interface OrderRoomModelService {
+
+    /**
+     * 创建订单关联房型数据
+     *
+     * @param createReqVO 创建信息
+     * @return 编号
+     */
+    Long createOrderRoomModel(@Valid OrderRoomModelSaveReqVO createReqVO);
+
+    /**
+     * 更新订单关联房型数据
+     *
+     * @param updateReqVO 更新信息
+     */
+    void updateOrderRoomModel(@Valid OrderRoomModelSaveReqVO updateReqVO);
+
+    /**
+     * 删除订单关联房型数据
+     *
+     * @param id 编号
+     */
+    void deleteOrderRoomModel(Long id);
+
+    /**
+     * 获得订单关联房型数据
+     *
+     * @param id 编号
+     * @return 订单关联房型数据
+     */
+    TradeOrderRoomModelDO getOrderRoomModel(Long id);
+
+    /**
+     * 获得订单关联房型数据分页
+     *
+     * @param pageReqVO 分页查询
+     * @return 订单关联房型数据分页
+     */
+    PageResult<TradeOrderRoomModelDO> getOrderRoomModelPage(OrderRoomModelPageReqVO pageReqVO);
+
+}

+ 70 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/service/orderroommodel/OrderRoomModelServiceImpl.java

@@ -0,0 +1,70 @@
+package com.yc.ship.module.trade.service.orderroommodel;
+
+import org.springframework.stereotype.Service;
+import javax.annotation.Resource;
+import org.springframework.validation.annotation.Validated;
+
+import com.yc.ship.module.trade.controller.admin.orderroommodel.vo.*;
+import com.yc.ship.module.trade.dal.dataobject.order.TradeOrderRoomModelDO;
+import com.yc.ship.framework.common.pojo.PageResult;
+import com.yc.ship.framework.common.util.object.BeanUtils;
+
+import com.yc.ship.module.trade.dal.mysql.order.TradeOrderRoomModelMapper;
+
+import static com.yc.ship.framework.common.exception.util.ServiceExceptionUtil.exception;
+
+/**
+ * 订单关联房型数据 Service 实现类
+ *
+ * @author 管理员
+ */
+@Service
+@Validated
+public class OrderRoomModelServiceImpl implements OrderRoomModelService {
+
+    @Resource
+    private TradeOrderRoomModelMapper orderRoomModelMapper;
+
+    @Override
+    public Long createOrderRoomModel(OrderRoomModelSaveReqVO createReqVO) {
+        // 插入
+        TradeOrderRoomModelDO orderRoomModel = BeanUtils.toBean(createReqVO, TradeOrderRoomModelDO.class);
+        orderRoomModelMapper.insert(orderRoomModel);
+        // 返回
+        return orderRoomModel.getId();
+    }
+
+    @Override
+    public void updateOrderRoomModel(OrderRoomModelSaveReqVO updateReqVO) {
+        // 校验存在
+        validateOrderRoomModelExists(updateReqVO.getId());
+        // 更新
+        TradeOrderRoomModelDO updateObj = BeanUtils.toBean(updateReqVO, TradeOrderRoomModelDO.class);
+        orderRoomModelMapper.updateById(updateObj);
+    }
+
+    @Override
+    public void deleteOrderRoomModel(Long id) {
+        // 校验存在
+        validateOrderRoomModelExists(id);
+        // 删除
+        orderRoomModelMapper.deleteById(id);
+    }
+
+    private void validateOrderRoomModelExists(Long id) {
+        if (orderRoomModelMapper.selectById(id) == null) {
+            throw exception(ORDER_ROOM_MODEL_NOT_EXISTS);
+        }
+    }
+
+    @Override
+    public TradeOrderRoomModelDO getOrderRoomModel(Long id) {
+        return orderRoomModelMapper.selectById(id);
+    }
+
+    @Override
+    public PageResult<TradeOrderRoomModelDO> getOrderRoomModelPage(OrderRoomModelPageReqVO pageReqVO) {
+        return orderRoomModelMapper.selectPage(pageReqVO);
+    }
+
+}