Browse Source

Merge remote-tracking branch 'origin/master'

luoyb 1 year ago
parent
commit
fbad7cc11e

+ 84 - 0
ruoyi-server/ruoyi-server-consume/src/main/java/org/dromara/server/consume/domain/XfCardLimited.java

@@ -0,0 +1,84 @@
+package org.dromara.server.consume.domain;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.dromara.common.tenant.core.TenantEntity;
+
+import java.io.Serial;
+import java.util.Date;
+
+/**
+ * @ClassName XfCardLimited
+ * @Description 卡片限制信息
+ * @Author luoyibo
+ * @Date 2024-12-25 12:35
+ * @Version 1.0
+ * @since jdk17
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("t_xf_card_limited")
+public class XfCardLimited extends TenantEntity {
+    @Serial
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 限制Id,主键
+     */
+    @TableId(value = "limited_id")
+    private Long limitedId;
+
+    /**
+     * 卡流水号
+     */
+    private Long cardNo;
+
+    /**
+     * 每天限制消费次数
+     */
+    private Long dayCount;
+
+    /**
+     * 每天限制消费金额
+     */
+    private Long dayMoney;
+
+    /**
+     * 每餐限制消费次数
+     */
+    private Long mealCount;
+
+    /**
+     * 每餐限制消费金额
+     */
+    private Long mealMoney;
+
+    /**
+     * 每天折扣限制消费次数
+     */
+    private Long dayDiscountCount;
+
+    /**
+     * 每餐折扣限制消费次数
+     */
+    private Long mealDiscountCount;
+
+    /**
+     * 最后交易时间
+     */
+    private Date lastPay;
+
+    /**
+     * 最后交易餐类,对应营业时段的编号
+     */
+    private Long lastMeal;
+
+    /**
+     * 删除标志(0-未删除 2-已删除)
+     */
+    @TableLogic
+    private String delFlag;
+}

+ 71 - 0
ruoyi-server/ruoyi-server-consume/src/main/java/org/dromara/server/consume/domain/bo/XfCardLimitedBo.java

@@ -0,0 +1,71 @@
+package org.dromara.server.consume.domain.bo;
+
+import io.github.linpeilie.annotations.AutoMapper;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.dromara.common.mybatis.core.domain.BaseEntity;
+import org.dromara.server.consume.domain.XfCardLimited;
+
+import java.util.Date;
+/**
+ * @ClassName XfCardLimitedBo
+ * @Description 卡片限制业务对象 t_xf_card_limited
+ * @Author luoyibo
+ * @Date 2024-12-25 12:41
+ * @Version 1.0
+ * @since jdk17
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@AutoMapper(target = XfCardLimited.class, reverseConvertGenerate = false)
+public class XfCardLimitedBo extends BaseEntity {
+    /**
+     * 限制Id,主键
+     */
+    private Long limitedId;
+
+    /**
+     * 卡流水号
+     */
+    private Long cardNo;
+
+    /**
+     * 每天限制消费次数
+     */
+    private Long dayCount;
+
+    /**
+     * 每天限制消费金额
+     */
+    private Long dayMoney;
+
+    /**
+     * 每餐限制消费次数
+     */
+    private Long mealCount;
+
+    /**
+     * 每餐限制消费金额
+     */
+    private Long mealMoney;
+
+    /**
+     * 每天折扣限制消费次数
+     */
+    private Long dayDiscountCount;
+
+    /**
+     * 每餐折扣限制消费次数
+     */
+    private Long mealDiscountCount;
+
+    /**
+     * 最后交易时间
+     */
+    private Date lastPay;
+
+    /**
+     * 最后交易餐类,对应营业时段的编号
+     */
+    private Long lastMeal;
+}

+ 87 - 0
ruoyi-server/ruoyi-server-consume/src/main/java/org/dromara/server/consume/domain/vo/XfCardLimitedVo.java

@@ -0,0 +1,87 @@
+package org.dromara.server.consume.domain.vo;
+
+import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
+import com.alibaba.excel.annotation.ExcelProperty;
+import io.github.linpeilie.annotations.AutoMapper;
+import lombok.Data;
+import org.dromara.server.consume.domain.XfCardLimited;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * @ClassName XfCardLimitedVo
+ * @Description 卡片限制视图对象
+ * @Author luoyibo
+ * @Date 2024-12-25 12:38
+ * @Version 1.0
+ * @since jdk17
+ */
+@Data
+@ExcelIgnoreUnannotated
+@AutoMapper(target = XfCardLimited.class)
+public class XfCardLimitedVo implements Serializable {
+    @Serial
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 限制Id,主键
+     */
+    @ExcelProperty(value = "限制Id,主键")
+    private Long limitedId;
+
+    /**
+     * 卡流水号
+     */
+    @ExcelProperty(value = "卡流水号")
+    private Long cardNo;
+
+    /**
+     * 每天限制消费次数
+     */
+    @ExcelProperty(value = "每天限制消费次数")
+    private Long dayCount;
+
+    /**
+     * 每天限制消费金额
+     */
+    @ExcelProperty(value = "每天限制消费金额")
+    private Long dayMoney;
+
+    /**
+     * 每餐限制消费次数
+     */
+    @ExcelProperty(value = "每餐限制消费次数")
+    private Long mealCount;
+
+    /**
+     * 每餐限制消费金额
+     */
+    @ExcelProperty(value = "每餐限制消费金额")
+    private Long mealMoney;
+
+    /**
+     * 每天折扣限制消费次数
+     */
+    @ExcelProperty(value = "每天折扣限制消费次数")
+    private Long dayDiscountCount;
+
+    /**
+     * 每餐折扣限制消费次数
+     */
+    @ExcelProperty(value = "每餐折扣限制消费次数")
+    private Long mealDiscountCount;
+
+    /**
+     * 最后交易时间
+     */
+    @ExcelProperty(value = "最后交易时间")
+    private Date lastPay;
+
+    /**
+     * 最后交易餐类,对应营业时段的编号
+     */
+    @ExcelProperty(value = "最后交易餐类,对应营业时段的编号")
+    private Long lastMeal;
+}

+ 17 - 0
ruoyi-server/ruoyi-server-consume/src/main/java/org/dromara/server/consume/mapper/XfCardLimitedMapper.java

@@ -0,0 +1,17 @@
+package org.dromara.server.consume.mapper;
+
+import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
+import org.dromara.server.consume.domain.XfCardLimited;
+import org.dromara.server.consume.domain.vo.XfCardLimitedVo;
+
+/**
+ * @ClassName XfCardLimitedMapper
+ * @Description 卡片限制Mapper接口
+ * @Author luoyibo
+ * @Date 2024-12-25 12:44
+ * @Version 1.0
+ * @since jdk17
+ */
+public interface XfCardLimitedMapper extends BaseMapperPlus<XfCardLimited, XfCardLimitedVo> {
+
+}

+ 69 - 0
ruoyi-server/ruoyi-server-consume/src/main/java/org/dromara/server/consume/service/IXfCardLimitedService.java

@@ -0,0 +1,69 @@
+package org.dromara.server.consume.service;
+
+import org.dromara.common.mybatis.core.page.PageQuery;
+import org.dromara.common.mybatis.core.page.TableDataInfo;
+import org.dromara.server.consume.domain.bo.XfCardLimitedBo;
+import org.dromara.server.consume.domain.vo.XfCardLimitedVo;
+
+import java.util.Collection;
+import java.util.List;
+
+/**
+ * @ClassName IXfCardLimitedService
+ * @Description 卡片限制Service接口
+ * @Author luoyibo
+ * @Date 2024-12-25 13:08
+ * @Version 1.0
+ * @since jdk17
+ */
+public interface IXfCardLimitedService {
+    /**
+     * 查询卡片限制
+     *
+     * @param limitedId 主键
+     * @return 卡片限制
+     */
+    XfCardLimitedVo queryById(Long limitedId);
+
+    /**
+     * 分页查询卡片限制列表
+     *
+     * @param bo        查询条件
+     * @param pageQuery 分页参数
+     * @return 卡片限制分页列表
+     */
+    TableDataInfo<XfCardLimitedVo> queryPageList(XfCardLimitedBo bo, PageQuery pageQuery);
+
+    /**
+     * 查询符合条件的卡片限制列表
+     *
+     * @param bo 查询条件
+     * @return 卡片限制列表
+     */
+    List<XfCardLimitedVo> queryList(XfCardLimitedBo bo);
+
+    /**
+     * 新增卡片限制
+     *
+     * @param bo 卡片限制
+     * @return 是否新增成功
+     */
+    Boolean insertByBo(XfCardLimitedBo bo);
+
+    /**
+     * 修改卡片限制
+     *
+     * @param bo 卡片限制
+     * @return 是否修改成功
+     */
+    Boolean updateByBo(XfCardLimitedBo bo);
+
+    /**
+     * 校验并批量删除卡片限制信息
+     *
+     * @param ids     待删除的主键集合
+     * @param isValid 是否进行有效性校验
+     * @return 是否删除成功
+     */
+    Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
+}

+ 160 - 0
ruoyi-server/ruoyi-server-consume/src/main/java/org/dromara/server/consume/service/impl/XfCardLimitedServiceImpl.java

@@ -0,0 +1,160 @@
+package org.dromara.server.consume.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import lombok.RequiredArgsConstructor;
+import org.dromara.common.core.utils.MapstructUtils;
+import org.dromara.common.core.utils.StringUtils;
+import org.dromara.common.mybatis.core.page.PageQuery;
+import org.dromara.common.mybatis.core.page.TableDataInfo;
+import org.dromara.server.consume.domain.XfCardLimited;
+import org.dromara.server.consume.domain.bo.XfCardLimitedBo;
+import org.dromara.server.consume.domain.vo.XfCardLimitedVo;
+import org.dromara.server.consume.mapper.XfCardLimitedMapper;
+import org.dromara.server.consume.service.IXfCardLimitedService;
+import org.springframework.stereotype.Service;
+
+import java.util.Collection;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @ClassName XfCardLimitedServiceImpl
+ * @Description 卡片限制Service业务层处理
+ * @Author luoyibo
+ * @Date 2024-12-25 13:09
+ * @Version 1.0
+ * @since jdk17
+ */
+@RequiredArgsConstructor
+@Service
+public class XfCardLimitedServiceImpl implements IXfCardLimitedService {
+
+    private final XfCardLimitedMapper baseMapper;
+
+    /**
+     * 查询卡片限制
+     *
+     * @param limitedId 主键
+     * @return 卡片限制
+     */
+    @Override
+    public XfCardLimitedVo queryById(Long limitedId){
+        return baseMapper.selectVoById(limitedId);
+    }
+
+    /**
+     * 分页查询卡片限制列表
+     *
+     * @param bo        查询条件
+     * @param pageQuery 分页参数
+     * @return 卡片限制分页列表
+     */
+    @Override
+    public TableDataInfo<XfCardLimitedVo> queryPageList(XfCardLimitedBo bo, PageQuery pageQuery) {
+        LambdaQueryWrapper<XfCardLimited> lqw = buildQueryWrapper(bo);
+        Page<XfCardLimitedVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
+        return TableDataInfo.build(result);
+    }
+
+    /**
+     * 查询符合条件的卡片限制列表
+     *
+     * @param bo 查询条件
+     * @return 卡片限制列表
+     */
+    @Override
+    public List<XfCardLimitedVo> queryList(XfCardLimitedBo bo) {
+        LambdaQueryWrapper<XfCardLimited> lqw = buildQueryWrapper(bo);
+        return baseMapper.selectVoList(lqw);
+    }
+
+    private LambdaQueryWrapper<XfCardLimited> buildQueryWrapper(XfCardLimitedBo bo) {
+        Map<String, Object> params = bo.getParams();
+        LambdaQueryWrapper<XfCardLimited> lqw = Wrappers.lambdaQuery();
+        lqw.eq(bo.getCardNo() != null, XfCardLimited::getCardNo, bo.getCardNo());
+        lqw.eq(bo.getDayCount() != null, XfCardLimited::getDayCount, bo.getDayCount());
+        lqw.eq(bo.getDayMoney() != null, XfCardLimited::getDayMoney, bo.getDayMoney());
+        lqw.eq(bo.getMealCount() != null, XfCardLimited::getMealCount, bo.getMealCount());
+        lqw.eq(bo.getMealMoney() != null, XfCardLimited::getMealMoney, bo.getMealMoney());
+        lqw.eq(bo.getDayDiscountCount() != null, XfCardLimited::getDayDiscountCount, bo.getDayDiscountCount());
+        lqw.eq(bo.getMealDiscountCount() != null, XfCardLimited::getMealDiscountCount, bo.getMealDiscountCount());
+        lqw.eq(bo.getLastPay() != null, XfCardLimited::getLastPay, bo.getLastPay());
+        lqw.eq(bo.getLastMeal() != null, XfCardLimited::getLastMeal, bo.getLastMeal());
+        return lqw;
+    }
+
+    private QueryWrapper<XfCardLimited> buildQueryWrapper(XfCardLimitedBo bo,String tableAlias) {
+        QueryWrapper<XfCardLimited> lqw = new QueryWrapper<>();
+        String columnPrefix = "";
+        if(StringUtils.isNotBlank(tableAlias)){
+            columnPrefix = tableAlias + ".";
+        }
+        lqw.eq(bo.getCardNo() != null, columnPrefix+"card_no", bo.getCardNo());
+        lqw.eq(bo.getDayCount() != null, columnPrefix+"day_count", bo.getDayCount());
+        lqw.eq(bo.getDayMoney() != null, columnPrefix+"day_Money", bo.getDayMoney());
+        lqw.eq(bo.getMealCount() != null, columnPrefix+"meal_count", bo.getMealCount());
+        lqw.eq(bo.getMealMoney() != null, columnPrefix+"meal_money", bo.getMealMoney());
+        lqw.eq(bo.getDayDiscountCount() != null, columnPrefix+"day_discount_count", bo.getDayDiscountCount());
+        lqw.eq(bo.getMealDiscountCount() != null, columnPrefix+"meal_discount_count", bo.getMealDiscountCount());
+        lqw.eq(bo.getLastPay() != null, columnPrefix+"last_pay", bo.getLastPay());
+        lqw.eq(bo.getLastMeal() != null, columnPrefix+"last_meal", bo.getLastMeal());
+        return lqw;
+    }
+
+    /**
+     * 新增卡片限制
+     *
+     * @param bo 卡片限制
+     * @return 是否新增成功
+     */
+    @Override
+    public Boolean insertByBo(XfCardLimitedBo bo) {
+        XfCardLimited add = MapstructUtils.convert(bo, XfCardLimited.class);
+        validEntityBeforeSave(add);
+        boolean flag = baseMapper.insert(add) > 0;
+        if (flag) {
+            if (add != null) {
+                bo.setLimitedId(add.getLimitedId());
+            }
+        }
+        return flag;
+    }
+
+    /**
+     * 修改卡片限制
+     *
+     * @param bo 卡片限制
+     * @return 是否修改成功
+     */
+    @Override
+    public Boolean updateByBo(XfCardLimitedBo bo) {
+        XfCardLimited update = MapstructUtils.convert(bo, XfCardLimited.class);
+        validEntityBeforeSave(update);
+        return baseMapper.updateById(update) > 0;
+    }
+
+    /**
+     * 保存前的数据校验
+     */
+    private void validEntityBeforeSave(XfCardLimited entity){
+        //TODO 做一些数据校验,如唯一约束
+    }
+
+    /**
+     * 校验并批量删除卡片限制信息
+     *
+     * @param ids     待删除的主键集合
+     * @param isValid 是否进行有效性校验
+     * @return 是否删除成功
+     */
+    @Override
+    public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
+        if(isValid){
+            //TODO 做一些业务上的校验,判断是否需要校验
+        }
+        return baseMapper.deleteByIds(ids) > 0;
+    }
+}

+ 26 - 0
ruoyi-server/ruoyi-server-consume/src/main/resources/mapper/consume/XfCardLimitedMapper.xml

@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.dromara.server.consume.mapper.XfCardLimitedMapper">
+
+    <resultMap type="org.dromara.server.consume.domain.XfCardLimited" id="XfCardLimitedResult">
+        <result property="limitedId"    column="limited_id"    />
+        <result property="tenantId"    column="tenant_id"    />
+        <result property="cardNo"    column="card_no"    />
+        <result property="dayCount"    column="day_count"    />
+        <result property="dayMoney"    column="day_Money"    />
+        <result property="mealCount"    column="meal_count"    />
+        <result property="mealMoney"    column="meal_money"    />
+        <result property="dayDiscountCount"    column="day_discount_count"    />
+        <result property="mealDiscountCount"    column="meal_discount_count"    />
+        <result property="lastPay"    column="last_pay"    />
+        <result property="lastMeal"    column="last_meal"    />
+        <result property="delFlag"    column="del_flag"    />
+        <result property="createDept"    column="create_dept"    />
+        <result property="createBy"    column="create_by"    />
+        <result property="createTime"    column="create_time"    />
+        <result property="updateBy"    column="update_by"    />
+        <result property="updateTime"    column="update_time"    />
+    </resultMap>
+</mapper>