删除
This commit is contained in:
@@ -1,23 +0,0 @@
|
||||
package top.wms.admin.consume.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.springframework.stereotype.Repository;
|
||||
import top.continew.starter.data.mp.base.BaseMapper;
|
||||
import top.wms.admin.consume.model.entity.DownRecordDO;
|
||||
import top.wms.admin.consume.model.resp.DownRecordResp;
|
||||
|
||||
/**
|
||||
* 消费下发记录 Mapper
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/02/25 11:01
|
||||
*/
|
||||
@Repository
|
||||
public interface DownRecordMapper extends BaseMapper<DownRecordDO> {
|
||||
|
||||
IPage<DownRecordResp> selectRecordsPage(@Param("page") IPage<Object> page,
|
||||
@Param(Constants.WRAPPER) QueryWrapper<DownRecordDO> queryWrapper);
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
package top.wms.admin.consume.mapper;
|
||||
|
||||
import top.continew.starter.data.mp.base.BaseMapper;
|
||||
import top.wms.admin.consume.model.entity.GroupDO;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
/**
|
||||
* 消费组 Mapper
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/27 13:48
|
||||
*/
|
||||
@Repository
|
||||
public interface GroupMapper extends BaseMapper<GroupDO> {}
|
||||
@@ -1,16 +0,0 @@
|
||||
package top.wms.admin.consume.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import org.springframework.stereotype.Repository;
|
||||
import top.wms.admin.consume.model.entity.GroupUserDO;
|
||||
|
||||
/**
|
||||
* 消费组用户映射器
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/27 13:48
|
||||
*/
|
||||
@Repository
|
||||
public interface GroupUserMapper extends BaseMapper<GroupUserDO> {
|
||||
|
||||
}
|
||||
@@ -1,40 +0,0 @@
|
||||
package top.wms.admin.consume.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import top.continew.starter.data.mp.base.BaseMapper;
|
||||
import top.wms.admin.consume.model.entity.RechargeRecordDO;
|
||||
import org.springframework.stereotype.Repository;
|
||||
import top.wms.admin.consume.model.resp.RechargeRecordResp;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 充值记录 Mapper
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/29 16:11
|
||||
*/
|
||||
@Repository
|
||||
public interface RechargeRecordMapper extends BaseMapper<RechargeRecordDO> {
|
||||
|
||||
/**
|
||||
* 查询充值记录分页
|
||||
*
|
||||
* @param page 分页查询条件
|
||||
* @param queryWrapper 查询条件
|
||||
* @return 分页信息
|
||||
*/
|
||||
IPage<RechargeRecordResp> selectRechargePage(@Param("page") IPage<Object> page,
|
||||
@Param(Constants.WRAPPER) QueryWrapper<RechargeRecordDO> queryWrapper);
|
||||
|
||||
/**
|
||||
* 导出充值记录
|
||||
*
|
||||
* @param queryWrapper 查询条件
|
||||
* @return 充值记录列表
|
||||
*/
|
||||
List<RechargeRecordResp> selectExport(@Param(Constants.WRAPPER) QueryWrapper<RechargeRecordDO> queryWrapper);
|
||||
}
|
||||
@@ -1,40 +0,0 @@
|
||||
package top.wms.admin.consume.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.springframework.stereotype.Repository;
|
||||
import top.continew.starter.data.mp.base.BaseMapper;
|
||||
import top.wms.admin.consume.model.entity.RecordDO;
|
||||
import top.wms.admin.consume.model.resp.RecordResp;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 消费记录 Mapper
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/21 17:53
|
||||
*/
|
||||
@Repository
|
||||
public interface RecordMapper extends BaseMapper<RecordDO> {
|
||||
|
||||
/**
|
||||
* 分页查询列表
|
||||
*
|
||||
* @param page 分页查询条件
|
||||
* @param queryWrapper 查询条件
|
||||
* @return 分页信息
|
||||
*/
|
||||
IPage<RecordResp> selectRecordsPage(@Param("page") IPage<Object> page,
|
||||
@Param(Constants.WRAPPER) QueryWrapper<RecordDO> queryWrapper);
|
||||
|
||||
/**
|
||||
* 导出列表
|
||||
*
|
||||
* @param queryWrapper 查询条件
|
||||
* @return 列表信息
|
||||
*/
|
||||
List<RecordResp> selectRecordsExport(@Param(Constants.WRAPPER) QueryWrapper<RecordDO> queryWrapper);
|
||||
}
|
||||
@@ -1,69 +0,0 @@
|
||||
package top.wms.admin.consume.mapper;
|
||||
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.springframework.stereotype.Repository;
|
||||
import top.wms.admin.consume.model.query.ReportQuery;
|
||||
import top.wms.admin.consume.model.resp.report.*;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Repository
|
||||
public interface ReportMapper {
|
||||
/**
|
||||
* 查询商户报表
|
||||
*
|
||||
* @param query 查询参数
|
||||
* @return 商户报表列表
|
||||
*/
|
||||
List<MerchantReport> queryMerchantReport(ReportQuery query);
|
||||
|
||||
/**
|
||||
* 查询报表总价
|
||||
*
|
||||
* @param query 查询参数
|
||||
* @return 报表列表总价
|
||||
*/
|
||||
BaseReport totalReport(ReportQuery query);
|
||||
|
||||
/**
|
||||
* 查询餐段报表
|
||||
*
|
||||
* @param query 查询参数
|
||||
* @return 餐段报表列表
|
||||
*/
|
||||
List<MealReport> queryMealReport(ReportQuery query);
|
||||
|
||||
/**
|
||||
* 查询店铺报表
|
||||
*
|
||||
* @param query 查询参数
|
||||
* @return 分店报表列表
|
||||
*/
|
||||
List<BranchReport> queryBranchReport(ReportQuery query);
|
||||
|
||||
/**
|
||||
* 查询人员报表
|
||||
*
|
||||
* @param query 查询参数
|
||||
* @return 人员报表列表
|
||||
*/
|
||||
List<PeopleReport> queryPeopleReport(@Param("query") ReportQuery query,
|
||||
@Param("size") Integer size,
|
||||
@Param("offset") Integer offset);
|
||||
|
||||
/**
|
||||
* 查询人员报表总数
|
||||
*
|
||||
* @param query 查询参数
|
||||
* @return 人员报表总数
|
||||
*/
|
||||
long selectCount(ReportQuery query);
|
||||
|
||||
/**
|
||||
* 查询人员报表导出数据
|
||||
*
|
||||
* @param query 查询参数
|
||||
* @return 人员报表导出数据列表
|
||||
*/
|
||||
List<PeopleReport> queryPeopleExport(ReportQuery query);
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
package top.wms.admin.consume.mapper;
|
||||
|
||||
import top.continew.starter.data.mp.base.BaseMapper;
|
||||
import top.wms.admin.consume.model.entity.TenantDO;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
/**
|
||||
* 商户信息 Mapper
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/30 14:55
|
||||
*/
|
||||
@Repository
|
||||
public interface TenantMapper extends BaseMapper<TenantDO> {
|
||||
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
package top.wms.admin.consume.mapper;
|
||||
|
||||
import top.continew.starter.data.mp.base.BaseMapper;
|
||||
import top.wms.admin.consume.model.entity.TimeIntervalDO;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
/**
|
||||
* 消费时段 Mapper
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/30 14:56
|
||||
*/
|
||||
@Repository
|
||||
public interface TimeIntervalMapper extends BaseMapper<TimeIntervalDO> {
|
||||
|
||||
}
|
||||
@@ -1,58 +0,0 @@
|
||||
package top.wms.admin.consume.mapstruct;
|
||||
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.Mapping;
|
||||
import top.wms.admin.common.enums.ConsumeRechargeModeEnum;
|
||||
import top.wms.admin.common.enums.ConsumeRechargeTypeEnum;
|
||||
import top.wms.admin.common.enums.ConsumeRechargeWayEnum;
|
||||
import top.wms.admin.consume.model.entity.RechargeRecordDO;
|
||||
import top.wms.admin.consume.model.resp.RechargeRecordResp;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Mapper(componentModel = "spring")
|
||||
public interface RechargeRecordConvert {
|
||||
|
||||
@Mapping(target = "rechargeWay", expression = "java(convertRechargeWay(recordDO.getRechargeWay()))")
|
||||
@Mapping(target = "rechargeMode", expression = "java(convertRechargeMode(recordDO.getRechargeMode()))")
|
||||
@Mapping(target = "rechargeType", expression = "java(convertRechargeType(recordDO.getRechargeType()))")
|
||||
RechargeRecordResp toRecordResp(RechargeRecordDO recordDO);
|
||||
|
||||
List<RechargeRecordResp> ListToRecordResp(List<RechargeRecordDO> recordDOS);
|
||||
|
||||
default ConsumeRechargeWayEnum convertRechargeWay(Integer rechargeWay) {
|
||||
if (rechargeWay == null) {
|
||||
return null;
|
||||
}
|
||||
for (ConsumeRechargeWayEnum way : ConsumeRechargeWayEnum.values()) {
|
||||
if (way.getValue().equals(rechargeWay)) {
|
||||
return way;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
default ConsumeRechargeModeEnum convertRechargeMode(Integer rechargeMode) {
|
||||
if (rechargeMode == null) {
|
||||
return null;
|
||||
}
|
||||
for (ConsumeRechargeModeEnum way : ConsumeRechargeModeEnum.values()) {
|
||||
if (way.getValue().equals(rechargeMode)) {
|
||||
return way;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
default ConsumeRechargeTypeEnum convertRechargeType(Integer rechargeType) {
|
||||
if (rechargeType == null) {
|
||||
return null;
|
||||
}
|
||||
for (ConsumeRechargeTypeEnum way : ConsumeRechargeTypeEnum.values()) {
|
||||
if (way.getValue().equals(rechargeType)) {
|
||||
return way;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -1,8 +0,0 @@
|
||||
package top.wms.admin.consume.mapstruct;
|
||||
|
||||
import org.mapstruct.Mapper;
|
||||
|
||||
@Mapper(componentModel = "spring")
|
||||
public interface RecordConvert {
|
||||
|
||||
}
|
||||
@@ -1,54 +0,0 @@
|
||||
package top.wms.admin.consume.model.entity;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
|
||||
import top.wms.admin.common.model.entity.BaseDO;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.time.*;
|
||||
|
||||
/**
|
||||
* 消费下发记录实体
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/02/25 11:01
|
||||
*/
|
||||
@Data
|
||||
@TableName("consume_down_record")
|
||||
public class DownRecordDO extends BaseDO {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 设备ID
|
||||
*/
|
||||
private Long equipmentId;
|
||||
|
||||
/**
|
||||
* 人员ID
|
||||
*/
|
||||
private Long peopleId;
|
||||
|
||||
/**
|
||||
* 下发时间
|
||||
*/
|
||||
private LocalDateTime downTime;
|
||||
|
||||
/**
|
||||
* 下发结果:0-成功,1-失败
|
||||
*/
|
||||
private Integer downResult;
|
||||
|
||||
/**
|
||||
* 下发结果报文
|
||||
*/
|
||||
private String msg;
|
||||
|
||||
/**
|
||||
* 0:新增 1:修改 2:下发 3:删除
|
||||
*/
|
||||
private Integer operType;
|
||||
}
|
||||
@@ -1,47 +0,0 @@
|
||||
package top.wms.admin.consume.model.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
import top.wms.admin.common.model.entity.BaseDO;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 消费组实体
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/27 13:48
|
||||
*/
|
||||
@Data
|
||||
@TableName("consume_group")
|
||||
public class GroupDO extends BaseDO {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 消费组名称
|
||||
*/
|
||||
private String groupName;
|
||||
|
||||
/**
|
||||
* 补贴金额
|
||||
*/
|
||||
private BigDecimal money;
|
||||
|
||||
/**
|
||||
* 部门ID
|
||||
*/
|
||||
private String branchId;
|
||||
|
||||
/**
|
||||
* 补贴日期(每月几号)
|
||||
*/
|
||||
private String subsidyDate;
|
||||
|
||||
/**
|
||||
* 是否补贴:0否,1是
|
||||
*/
|
||||
private Integer timedConsumption;
|
||||
}
|
||||
@@ -1,25 +0,0 @@
|
||||
package top.wms.admin.consume.model.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 消费组用户关联表
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/27 13:48
|
||||
*/
|
||||
@Data
|
||||
@TableName("consume_group_user")
|
||||
public class GroupUserDO {
|
||||
|
||||
/**
|
||||
* 消费组ID
|
||||
*/
|
||||
private Long groupId;
|
||||
|
||||
/**
|
||||
* 用户ID
|
||||
*/
|
||||
private Long userId;
|
||||
}
|
||||
@@ -1,114 +0,0 @@
|
||||
package top.wms.admin.consume.model.entity;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
|
||||
import top.wms.admin.common.model.entity.BaseDO;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.time.*;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 充值记录实体
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/29 16:11
|
||||
*/
|
||||
@Data
|
||||
@TableName("consume_recharge_record")
|
||||
public class RechargeRecordDO extends BaseDO {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 帐号people_id
|
||||
*/
|
||||
private Long accountId;
|
||||
|
||||
/**
|
||||
* 后面A表示工号,如果是B表示卡号
|
||||
*/
|
||||
private String adminRecharge;
|
||||
|
||||
/**
|
||||
* 内部图片路径
|
||||
*/
|
||||
private String base64;
|
||||
|
||||
/**
|
||||
* 消费金额,分
|
||||
*/
|
||||
private BigDecimal consumeMoney;
|
||||
|
||||
/**
|
||||
* 折扣金额,分
|
||||
*/
|
||||
private BigDecimal discountMoney;
|
||||
|
||||
/**
|
||||
* 工号
|
||||
*/
|
||||
private String empId;
|
||||
|
||||
/**
|
||||
* 交易发起时间
|
||||
*/
|
||||
private LocalDateTime startTime;
|
||||
|
||||
/**
|
||||
* 交易结束时间
|
||||
*/
|
||||
private LocalDateTime endTime;
|
||||
|
||||
/**
|
||||
* 订单类型
|
||||
*/
|
||||
private Integer orderType;
|
||||
|
||||
/**
|
||||
* 单号,支付宝和微信使用,平台单号
|
||||
*/
|
||||
private String outTradeId;
|
||||
|
||||
/**
|
||||
* 支付类型:0人脸 1云卡 2刷卡 3支付宝 4微信 5取餐码
|
||||
*/
|
||||
private Integer payMode;
|
||||
|
||||
/**
|
||||
* 交易状态 0在线消费 1离线消费 2超时 3消费异常,4异常消费
|
||||
*/
|
||||
private Integer resultCode;
|
||||
|
||||
/**
|
||||
* 记录版本1考勤,2门禁,22人脸机消费,25人脸机充值
|
||||
*/
|
||||
private Integer ver;
|
||||
|
||||
/**
|
||||
* 充值方式 0现金 1支付宝 2微信 3网银
|
||||
*/
|
||||
private Integer rechargeMode;
|
||||
|
||||
/**
|
||||
* 充值来源 0平台 1手机
|
||||
*/
|
||||
private Integer rechargeWay;
|
||||
|
||||
/**
|
||||
* 充值类型 0补贴 1充值 2退款
|
||||
*/
|
||||
private Integer rechargeType;
|
||||
/**
|
||||
* 清除补贴金额,分
|
||||
*/
|
||||
private BigDecimal clearBtje;
|
||||
|
||||
/**
|
||||
* 清除充值金额,分
|
||||
*/
|
||||
private BigDecimal clearCzje;
|
||||
}
|
||||
@@ -1,155 +0,0 @@
|
||||
package top.wms.admin.consume.model.entity;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
|
||||
import top.wms.admin.common.model.entity.BaseDO;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.math.BigDecimal;
|
||||
import java.time.*;
|
||||
|
||||
/**
|
||||
* 消费记录实体
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/21 17:53
|
||||
*/
|
||||
@Data
|
||||
@TableName("consume_record")
|
||||
public class RecordDO extends BaseDO {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 记录版本1考勤,2门禁,22人脸机消费,25人脸机充值
|
||||
*/
|
||||
private Integer ver;
|
||||
|
||||
/**
|
||||
* 工号
|
||||
*/
|
||||
private String empId;
|
||||
|
||||
/**
|
||||
* 帐号
|
||||
*/
|
||||
private Long accountId;
|
||||
|
||||
/**
|
||||
* 内部图片路径
|
||||
*/
|
||||
private String base64;
|
||||
|
||||
/**
|
||||
* 消费方式:0单价 1定额 2时段模式 3计次 5点餐机模式 9身份模式
|
||||
*/
|
||||
private Integer consumeType;
|
||||
|
||||
/**
|
||||
* 消费金额,分
|
||||
*/
|
||||
private BigDecimal consumeMoney;
|
||||
|
||||
/**
|
||||
* 补贴消费金额,分
|
||||
*/
|
||||
private BigDecimal subsidyMoney;
|
||||
|
||||
/**
|
||||
* 充值消费金额,分
|
||||
*/
|
||||
private BigDecimal rechargeMoney;
|
||||
|
||||
/**
|
||||
* 折扣金额,分
|
||||
*/
|
||||
private BigDecimal discountMoney;
|
||||
|
||||
/**
|
||||
* 单号,支付宝和微信使用,平台单号
|
||||
*/
|
||||
private String outTradeId;
|
||||
|
||||
/**
|
||||
* 交易发起时间
|
||||
*/
|
||||
private String startTime;
|
||||
|
||||
/**
|
||||
* 交易结束时间
|
||||
*/
|
||||
private String endTime;
|
||||
|
||||
/**
|
||||
* 交易状态 0在线消费 1离线消费 2超时 3消费异常,4异常消费
|
||||
*/
|
||||
private Integer resultCode;
|
||||
|
||||
/**
|
||||
* 支付类型:0人脸 1云卡 2刷卡 3支付宝 4微信 5取餐码
|
||||
*/
|
||||
private Integer payMode;
|
||||
|
||||
/**
|
||||
* 订单类型
|
||||
*/
|
||||
private Integer orderType;
|
||||
|
||||
/**
|
||||
* 钱包扣款模式:0先消费补贴再个人,1仅现金,2仅补贴
|
||||
*/
|
||||
private Integer walletConsumeMode;
|
||||
|
||||
/**
|
||||
* 多个相似的人脸出现时返回工号,最多3个,分号隔开
|
||||
*/
|
||||
private String likeId;
|
||||
|
||||
/**
|
||||
* 卡号
|
||||
*/
|
||||
private String cardSn;
|
||||
|
||||
/**
|
||||
* 交易发起时间
|
||||
*/
|
||||
private LocalDateTime startDate;
|
||||
|
||||
/**
|
||||
* 交易结束时间
|
||||
*/
|
||||
private LocalDateTime endDate;
|
||||
|
||||
/**
|
||||
* 交易结果
|
||||
*/
|
||||
private String consumeResult;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 设备ID
|
||||
*/
|
||||
private Long devId;
|
||||
|
||||
/**
|
||||
* 餐段ID
|
||||
*/
|
||||
private String timeId;
|
||||
|
||||
/**
|
||||
* 支付宝买家ID
|
||||
*/
|
||||
private String buyerId;
|
||||
|
||||
/**
|
||||
* 微信买家ID
|
||||
*/
|
||||
private String openid;
|
||||
}
|
||||
@@ -1,93 +0,0 @@
|
||||
package top.wms.admin.consume.model.entity;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
|
||||
import top.wms.admin.common.model.entity.BaseDO;
|
||||
|
||||
import java.io.Serial;
|
||||
|
||||
/**
|
||||
* 商户信息实体
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/30 14:55
|
||||
*/
|
||||
@Data
|
||||
@TableName("consume_tenant")
|
||||
public class TenantDO extends BaseDO {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 商户名称
|
||||
*/
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 商户类型 0支付宝 1微信 2支付宝+微信 3银行
|
||||
*/
|
||||
private Integer type;
|
||||
|
||||
/**
|
||||
* 客户的appid
|
||||
*/
|
||||
private String zfbAppId;
|
||||
|
||||
/**
|
||||
* 服务商PID
|
||||
*/
|
||||
private String zfbSysServiceProviderId;
|
||||
|
||||
/**
|
||||
* 私有密钥
|
||||
*/
|
||||
private String zfbRsaPrivateKey;
|
||||
|
||||
/**
|
||||
* 是否停用
|
||||
*/
|
||||
private Long zfbStop;
|
||||
|
||||
/**
|
||||
* 是否测试模式
|
||||
*/
|
||||
private Integer zfbMode;
|
||||
|
||||
/**
|
||||
* 公众号appid
|
||||
*/
|
||||
private String wxAppid;
|
||||
|
||||
/**
|
||||
* 服务商商户号
|
||||
*/
|
||||
private String wxMchId;
|
||||
|
||||
/**
|
||||
* 特约商户号
|
||||
*/
|
||||
private String wxSubMchId;
|
||||
|
||||
/**
|
||||
* 支付key
|
||||
*/
|
||||
private String wxKey;
|
||||
|
||||
/**
|
||||
* 是否停用
|
||||
*/
|
||||
private Integer wxStop;
|
||||
|
||||
/**
|
||||
* 是否测试模式
|
||||
*/
|
||||
private Integer wxMode;
|
||||
|
||||
/**
|
||||
* 平台参数ID
|
||||
*/
|
||||
private String paramId;
|
||||
}
|
||||
@@ -1,74 +0,0 @@
|
||||
package top.wms.admin.consume.model.entity;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
|
||||
import top.wms.admin.common.model.entity.BaseDO;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 消费时段实体
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/30 14:56
|
||||
*/
|
||||
@Data
|
||||
@TableName("consume_time_interval")
|
||||
public class TimeIntervalDO extends BaseDO {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 开始时间
|
||||
*/
|
||||
private String startTime;
|
||||
|
||||
/**
|
||||
* 结束时间
|
||||
*/
|
||||
private String endTime;
|
||||
|
||||
/**
|
||||
* 刷卡方式 00刷卡 01刷卡+密码
|
||||
*/
|
||||
private String useMode;
|
||||
|
||||
/**
|
||||
* 消费餐段 0早餐 1中餐 2午餐 3夜餐
|
||||
*/
|
||||
private Integer tmrtype;
|
||||
|
||||
/**
|
||||
* 预留
|
||||
*/
|
||||
private String mark;
|
||||
|
||||
/**
|
||||
* 卡级别
|
||||
*/
|
||||
private Integer level;
|
||||
|
||||
/**
|
||||
* 最大刷卡次数
|
||||
*/
|
||||
private Integer maxcount;
|
||||
|
||||
/**
|
||||
* 定额方式下要扣的金额
|
||||
*/
|
||||
private BigDecimal fixmoney;
|
||||
|
||||
/**
|
||||
* 消费方式 0单价 1定额 2时段模式 3计次 5点餐机模式 9身份模式
|
||||
*/
|
||||
private Integer consumeType;
|
||||
|
||||
/**
|
||||
* 平台参数ID
|
||||
*/
|
||||
private String paramId;
|
||||
}
|
||||
@@ -1,66 +0,0 @@
|
||||
package top.wms.admin.consume.model.query;
|
||||
|
||||
import cn.hutool.core.date.DatePattern;
|
||||
import lombok.Data;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.time.*;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 消费下发记录查询条件
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/02/25 11:01
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "消费下发记录查询条件")
|
||||
public class DownRecordQuery implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 设备ID
|
||||
*/
|
||||
@Schema(description = "设备ID")
|
||||
private Long equipmentId;
|
||||
|
||||
/**
|
||||
* 人员名称
|
||||
*/
|
||||
@Schema(description = "人员名称")
|
||||
private String peopleName;
|
||||
|
||||
/**
|
||||
* 下发时间开始
|
||||
*/
|
||||
@Schema(description = "下发时间开始")
|
||||
@DateTimeFormat(pattern = DatePattern.NORM_DATETIME_PATTERN)
|
||||
private Date startTime;
|
||||
|
||||
/**
|
||||
* 下发时间结束
|
||||
*/
|
||||
@Schema(description = "下发时间结束")
|
||||
@DateTimeFormat(pattern = DatePattern.NORM_DATETIME_PATTERN)
|
||||
private Date endTime;
|
||||
|
||||
/**
|
||||
* 下发结果:0-成功,1-失败
|
||||
*/
|
||||
@Schema(description = "下发结果:0-成功,1-失败")
|
||||
private Integer downResult;
|
||||
|
||||
/**
|
||||
* 0:新增 1:修改 2:下发 3:删除
|
||||
*/
|
||||
@Schema(description = "0:新增 1:修改 2:下发 3:删除")
|
||||
private Integer operType;
|
||||
|
||||
}
|
||||
@@ -1,33 +0,0 @@
|
||||
package top.wms.admin.consume.model.query;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
|
||||
import top.continew.starter.data.core.annotation.Query;
|
||||
import top.continew.starter.data.core.enums.QueryType;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.time.*;
|
||||
|
||||
/**
|
||||
* 消费组查询条件
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/27 13:48
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "消费组查询条件")
|
||||
public class GroupQuery implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 消费组名称
|
||||
*/
|
||||
@Query(type = QueryType.LIKE)
|
||||
private String groupName;
|
||||
|
||||
}
|
||||
@@ -1,58 +0,0 @@
|
||||
package top.wms.admin.consume.model.query;
|
||||
|
||||
import cn.hutool.core.date.DatePattern;
|
||||
import lombok.Data;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 充值记录查询条件
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/29 16:11
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "充值记录查询条件")
|
||||
public class RechargeRecordQuery implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 帐号名称
|
||||
*/
|
||||
@Schema(description = "帐号名称")
|
||||
private String accountName;
|
||||
|
||||
/**
|
||||
* 工号
|
||||
*/
|
||||
@Schema(description = "工号")
|
||||
private String empId;
|
||||
|
||||
/**
|
||||
* 充值类型:0补贴 1充值
|
||||
*/
|
||||
@Schema(description = "充值类型:0补贴 1充值 2退款")
|
||||
private Integer rechargeType;
|
||||
/**
|
||||
* 开始时间
|
||||
*/
|
||||
@Schema(description = "开始时间")
|
||||
@DateTimeFormat(pattern = DatePattern.NORM_DATETIME_PATTERN)
|
||||
private Date startTime;
|
||||
|
||||
/**
|
||||
* 结束时间
|
||||
*/
|
||||
@Schema(description = "结束时间")
|
||||
@DateTimeFormat(pattern = DatePattern.NORM_DATETIME_PATTERN)
|
||||
private Date endTime;
|
||||
|
||||
}
|
||||
@@ -1,84 +0,0 @@
|
||||
package top.wms.admin.consume.model.query;
|
||||
|
||||
import cn.hutool.core.date.DatePattern;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
import top.continew.starter.data.core.annotation.Query;
|
||||
import top.continew.starter.data.core.enums.QueryType;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 消费记录查询条件
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/21 17:53
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "消费记录查询条件")
|
||||
public class RecordQuery implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 工号
|
||||
*/
|
||||
@Schema(description = "工号")
|
||||
@Query(type = QueryType.EQ)
|
||||
private String empId;
|
||||
|
||||
/**
|
||||
* 单号,支付宝和微信使用,平台单号
|
||||
*/
|
||||
@Schema(description = "单号,支付宝和微信使用,平台单号")
|
||||
@Query(type = QueryType.EQ)
|
||||
private String outTradeId;
|
||||
|
||||
/**
|
||||
* 人员名称
|
||||
*/
|
||||
@Schema(description = "人员名称")
|
||||
private String accountName;
|
||||
|
||||
/**
|
||||
* 交易发起时间
|
||||
*/
|
||||
@Schema(description = "交易发起时间")
|
||||
@DateTimeFormat(pattern = DatePattern.NORM_DATETIME_PATTERN)
|
||||
@Query(type = QueryType.GT)
|
||||
private Date startDate;
|
||||
|
||||
/**
|
||||
* 交易结束时间
|
||||
*/
|
||||
@Schema(description = "交易结束时间")
|
||||
@DateTimeFormat(pattern = DatePattern.NORM_DATETIME_PATTERN)
|
||||
@Query(type = QueryType.LT)
|
||||
private Date endDate;
|
||||
|
||||
/**
|
||||
* 交易状态 0在线消费 1离线消费 2超时 3消费异常,4异常消费
|
||||
*/
|
||||
@Schema(description = "交易状态 0在线消费 1离线消费 2超时 3消费异常,4异常消费")
|
||||
@Query(type = QueryType.EQ)
|
||||
private Integer resultCode;
|
||||
|
||||
/**
|
||||
* 支付类型:0人脸 1云卡 2刷卡 3支付宝 4微信 5取餐码
|
||||
*/
|
||||
@Schema(description = "支付类型:0人脸 1云卡 2刷卡 3支付宝 4微信 5取餐码")
|
||||
@Query(type = QueryType.EQ)
|
||||
private Integer payMode;
|
||||
|
||||
/**
|
||||
* 设备ID
|
||||
*/
|
||||
@Schema(description = "设备ID")
|
||||
@Query(type = QueryType.EQ)
|
||||
private Long devId;
|
||||
|
||||
}
|
||||
@@ -1,28 +0,0 @@
|
||||
package top.wms.admin.consume.model.query;
|
||||
|
||||
import cn.hutool.core.date.DatePattern;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import jakarta.validation.constraints.Size;
|
||||
import lombok.Data;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
@Schema(description = "报表查询条件")
|
||||
public class ReportQuery {
|
||||
|
||||
@Schema(description = "创建时间", example = "2023-08-08 00:00:00,2023-08-08 23:59:59")
|
||||
@DateTimeFormat(pattern = DatePattern.NORM_DATETIME_PATTERN)
|
||||
@Size(max = 2, message = "创建时间必须是一个范围")
|
||||
private List<Date> createTime;
|
||||
|
||||
private String branchId;
|
||||
|
||||
private String peopleName;
|
||||
|
||||
private String gh;
|
||||
|
||||
private Integer tmrtype;
|
||||
}
|
||||
@@ -1,40 +0,0 @@
|
||||
package top.wms.admin.consume.model.query;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
|
||||
import top.continew.starter.data.core.annotation.Query;
|
||||
import top.continew.starter.data.core.enums.QueryType;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.time.*;
|
||||
|
||||
/**
|
||||
* 商户信息查询条件
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/30 14:55
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "商户信息查询条件")
|
||||
public class TenantQuery implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 商户类型 0支付宝 1微信 2支付宝+微信 3银行
|
||||
*/
|
||||
@Schema(description = "商户类型 0支付宝 1微信 2支付宝+微信 3银行")
|
||||
@Query(type = QueryType.EQ)
|
||||
private Integer type;
|
||||
|
||||
/**
|
||||
* 商户名称
|
||||
*/
|
||||
@Schema(description = "商户名称")
|
||||
@Query(type = QueryType.LIKE)
|
||||
private String name;
|
||||
}
|
||||
@@ -1,41 +0,0 @@
|
||||
package top.wms.admin.consume.model.query;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
|
||||
import top.continew.starter.data.core.annotation.Query;
|
||||
import top.continew.starter.data.core.enums.QueryType;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.time.*;
|
||||
|
||||
/**
|
||||
* 消费时段查询条件
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/30 14:56
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "消费时段查询条件")
|
||||
public class TimeIntervalQuery implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 刷卡方式 00刷卡 01刷卡+密码
|
||||
*/
|
||||
@Schema(description = "刷卡方式 00刷卡 01刷卡+密码")
|
||||
@Query(type = QueryType.EQ)
|
||||
private String useMode;
|
||||
|
||||
/**
|
||||
* 消费方式 0单价 1定额 2时段模式 3计次 5点餐机模式 9身份模式
|
||||
*/
|
||||
@Schema(description = "消费方式 0单价 1定额 2时段模式 3计次 5点餐机模式 9身份模式")
|
||||
@Query(type = QueryType.EQ)
|
||||
private Integer consumeType;
|
||||
|
||||
}
|
||||
@@ -1,74 +0,0 @@
|
||||
package top.wms.admin.consume.model.req;
|
||||
|
||||
import jakarta.validation.constraints.*;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.time.*;
|
||||
|
||||
/**
|
||||
* 创建或修改消费下发记录参数
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/02/25 11:01
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "创建或修改消费下发记录参数")
|
||||
public class DownRecordReq implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 设备ID
|
||||
*/
|
||||
@Schema(description = "设备ID")
|
||||
@NotNull(message = "设备ID不能为空")
|
||||
private Long equipmentId;
|
||||
|
||||
/**
|
||||
* 人员ID
|
||||
*/
|
||||
@Schema(description = "人员ID")
|
||||
@NotNull(message = "人员ID不能为空")
|
||||
private Long peopleId;
|
||||
|
||||
/**
|
||||
* 下发时间
|
||||
*/
|
||||
@Schema(description = "下发时间")
|
||||
@NotNull(message = "下发时间不能为空")
|
||||
private LocalDateTime downTime;
|
||||
|
||||
/**
|
||||
* 下发结果:0-成功,1-失败
|
||||
*/
|
||||
@Schema(description = "下发结果:0-成功,1-失败")
|
||||
@NotNull(message = "下发结果:0-成功,1-失败不能为空")
|
||||
private Integer downResult;
|
||||
|
||||
/**
|
||||
* 0:新增 1:修改 2:下发 3:删除
|
||||
*/
|
||||
@Schema(description = "0:新增 1:修改 2:下发 3:删除")
|
||||
@NotNull(message = "0:新增 1:修改 2:下发 3:删除不能为空")
|
||||
private Integer operType;
|
||||
|
||||
/**
|
||||
* 创建人
|
||||
*/
|
||||
@Schema(description = "创建人")
|
||||
@NotNull(message = "创建人不能为空")
|
||||
private Long createUser;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@Schema(description = "创建时间")
|
||||
@NotNull(message = "创建时间不能为空")
|
||||
private LocalDateTime createTime;
|
||||
}
|
||||
@@ -1,62 +0,0 @@
|
||||
package top.wms.admin.consume.model.req;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 创建或修改消费组参数
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/27 13:48
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "创建或修改消费组参数")
|
||||
public class GroupReq implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 消费组名称
|
||||
*/
|
||||
@Schema(description = "消费组名称")
|
||||
@Length(max = 64, message = "消费组名称长度不能超过64个字符")
|
||||
private String groupName;
|
||||
|
||||
/**
|
||||
* 补贴金额
|
||||
*/
|
||||
@Schema(description = "补贴金额")
|
||||
private BigDecimal money;
|
||||
|
||||
/**
|
||||
* 补贴日期(每月几号)
|
||||
*/
|
||||
@Schema(description = "补贴日期(每月几号)")
|
||||
private String subsidyDate;
|
||||
|
||||
/**
|
||||
* 是否补贴:0否,1是
|
||||
*/
|
||||
@Schema(description = "是否补贴:0否,1是")
|
||||
private Integer timedConsumption;
|
||||
|
||||
/**
|
||||
* 人员ids
|
||||
*/
|
||||
@Schema(description = "人员ids")
|
||||
private List<Long> peopleIds;
|
||||
|
||||
/**
|
||||
* 部门id
|
||||
*/
|
||||
@Schema(description = "部门id")
|
||||
private String branchId;
|
||||
|
||||
}
|
||||
@@ -1,46 +0,0 @@
|
||||
package top.wms.admin.consume.model.req;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.Data;
|
||||
import top.wms.admin.system.enums.ImportPolicyEnum;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 人员充值导入参数
|
||||
*
|
||||
* @author zc
|
||||
* @since 2024-6-17 16:42
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "人员充值导入参数")
|
||||
public class PeopleDepositImportReq implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 导入会话KEY
|
||||
*/
|
||||
@Schema(description = "导入会话KEY", example = "1b9d6bcd-bbfd-4b2d-9b5d-ab8dfbbd4bed")
|
||||
@NotBlank(message = "导入已过期,请重新上传")
|
||||
private String importKey;
|
||||
|
||||
/**
|
||||
* 用户重复策略
|
||||
*/
|
||||
@Schema(description = "人员不存在策略", example = "1")
|
||||
@NotNull(message = "人员不存在策略不能为空")
|
||||
private ImportPolicyEnum peopleNotExist;
|
||||
|
||||
/**
|
||||
* 消费未启用策略
|
||||
*/
|
||||
@Schema(description = "消费未启用策略", example = "1")
|
||||
@NotNull(message = "消费未启用策略不能为空")
|
||||
private ImportPolicyEnum consumeNotEnable;
|
||||
|
||||
}
|
||||
@@ -1,62 +0,0 @@
|
||||
package top.wms.admin.consume.model.req;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.Pattern;
|
||||
import lombok.Data;
|
||||
import top.wms.admin.common.constant.RegexConstants;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 人员充值导入行数据
|
||||
*
|
||||
* @author Kils
|
||||
* @since 2024-6-17 16:42
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "人员充值导入行数据")
|
||||
public class PeopleDepositImportRowReq implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 用户名
|
||||
*/
|
||||
private String peopleName;
|
||||
|
||||
/**
|
||||
* 工号
|
||||
*/
|
||||
@NotBlank(message = "工号不能为空")
|
||||
private String gh;
|
||||
|
||||
/**
|
||||
* 充值金额
|
||||
*/
|
||||
@NotBlank(message = "充值金额不能为空")
|
||||
@Pattern(regexp = RegexConstants.MONEY, message = "充值金额必须为数字")
|
||||
private String czje;
|
||||
|
||||
/**
|
||||
* 补贴金额
|
||||
*/
|
||||
@NotBlank(message = "补贴金额不能为空")
|
||||
@Pattern(regexp = RegexConstants.MONEY, message = "补贴金额必须为数字")
|
||||
private String btje;
|
||||
|
||||
/**
|
||||
* 是否启用消费
|
||||
*/
|
||||
@NotBlank(message = "是否启用消费不能为空")
|
||||
private String isConsume;
|
||||
|
||||
/**
|
||||
* 是否冻结
|
||||
*/
|
||||
@NotBlank(message = "是否冻结不能为空")
|
||||
private String freeze;
|
||||
|
||||
}
|
||||
@@ -1,100 +0,0 @@
|
||||
package top.wms.admin.consume.model.req;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 创建或修改充值记录参数
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/29 16:11
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "创建或修改充值记录参数")
|
||||
public class RechargeRecordReq implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 帐号people_id
|
||||
*/
|
||||
@Schema(description = "帐号people_id")
|
||||
private Long accountId;
|
||||
|
||||
/**
|
||||
* 后面A表示工号,如果是B表示卡号
|
||||
*/
|
||||
@Schema(description = "后面A表示工号,如果是B表示卡号")
|
||||
@Length(max = 50, message = "后面A表示工号,如果是B表示卡号长度不能超过 {max} 个字符")
|
||||
private String adminRecharge;
|
||||
|
||||
/**
|
||||
* 消费金额,分
|
||||
*/
|
||||
@Schema(description = "消费金额,分")
|
||||
private BigDecimal consumeMoney;
|
||||
|
||||
/**
|
||||
* 折扣金额,分
|
||||
*/
|
||||
@Schema(description = "折扣金额,分")
|
||||
private BigDecimal discountMoney;
|
||||
|
||||
/**
|
||||
* 工号
|
||||
*/
|
||||
@Schema(description = "工号")
|
||||
@Length(max = 50, message = "工号长度不能超过 {max} 个字符")
|
||||
private String empId;
|
||||
|
||||
/**
|
||||
* 订单类型
|
||||
*/
|
||||
@Schema(description = "订单类型")
|
||||
private Integer orderType;
|
||||
|
||||
/**
|
||||
* 单号,支付宝和微信使用,平台单号
|
||||
*/
|
||||
@Schema(description = "单号,支付宝和微信使用,平台单号")
|
||||
@Length(max = 50, message = "单号,支付宝和微信使用,平台单号长度不能超过 {max} 个字符")
|
||||
private String outTradeId;
|
||||
|
||||
/**
|
||||
* 支付类型:0人脸 1云卡 2刷卡 3支付宝 4微信 5取餐码
|
||||
*/
|
||||
@Schema(description = "支付类型:0人脸 1云卡 2刷卡 3支付宝 4微信 5取餐码")
|
||||
private Integer payMode;
|
||||
|
||||
/**
|
||||
* 交易状态 0在线消费 1离线消费 2超时 3消费异常,4异常消费
|
||||
*/
|
||||
@Schema(description = "交易状态 0在线消费 1离线消费 2超时 3消费异常,4异常消费")
|
||||
private Integer resultCode;
|
||||
|
||||
/**
|
||||
* 充值方式
|
||||
*/
|
||||
@Schema(description = "充值方式")
|
||||
private Integer rechargeMode;
|
||||
|
||||
/**
|
||||
* 充值来源
|
||||
*/
|
||||
@Schema(description = "充值来源")
|
||||
private Integer rechargeWay;
|
||||
|
||||
/**
|
||||
* 充值类型
|
||||
*/
|
||||
@Schema(description = "充值类型")
|
||||
private Integer rechargeType;
|
||||
}
|
||||
@@ -1,23 +0,0 @@
|
||||
package top.wms.admin.consume.model.req;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.time.*;
|
||||
|
||||
/**
|
||||
* 创建或修改消费记录参数
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/21 17:53
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "创建或修改消费记录参数")
|
||||
public class RecordReq implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
}
|
||||
@@ -1,112 +0,0 @@
|
||||
package top.wms.admin.consume.model.req;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 创建或修改商户信息参数
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/30 14:55
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "创建或修改商户信息参数")
|
||||
public class TenantReq implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
/**
|
||||
* 商户名称
|
||||
*/
|
||||
@Schema(description = "商户名称")
|
||||
@Length(max = 50, message = "商户名称长度不能超过50个字符")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 商户类型 0支付宝 1微信 2支付宝+微信 3银行
|
||||
*/
|
||||
@Schema(description = "商户类型 0支付宝 1微信 2支付宝+微信 3银行")
|
||||
private Integer type;
|
||||
|
||||
/**
|
||||
* 客户的appid
|
||||
*/
|
||||
@Schema(description = "客户的appid")
|
||||
@Length(max = 50, message = "客户的appid长度不能超过50个字符")
|
||||
private String zfbAppId;
|
||||
|
||||
/**
|
||||
* 服务商PID
|
||||
*/
|
||||
@Schema(description = "服务商PID")
|
||||
@Length(max = 50, message = "服务商PID长度不能超过50个字符")
|
||||
private String zfbSysServiceProviderId;
|
||||
|
||||
/**
|
||||
* 私有密钥
|
||||
*/
|
||||
@Schema(description = "私有密钥")
|
||||
private String zfbRsaPrivateKey;
|
||||
|
||||
/**
|
||||
* 是否停用
|
||||
*/
|
||||
@Schema(description = "是否停用")
|
||||
private Long zfbStop;
|
||||
|
||||
/**
|
||||
* 是否测试模式
|
||||
*/
|
||||
@Schema(description = "是否测试模式")
|
||||
private Integer zfbMode;
|
||||
|
||||
/**
|
||||
* 公众号appid
|
||||
*/
|
||||
@Schema(description = "公众号appid")
|
||||
@Length(max = 50, message = "公众号appid长度不能超过50个字符")
|
||||
private String wxAppid;
|
||||
|
||||
/**
|
||||
* 服务商商户号
|
||||
*/
|
||||
@Schema(description = "服务商商户号")
|
||||
@Length(max = 50, message = "服务商商户号长度不能超过50个字符")
|
||||
private String wxMchId;
|
||||
|
||||
/**
|
||||
* 特约商户号
|
||||
*/
|
||||
@Schema(description = "特约商户号")
|
||||
@Length(max = 50, message = "特约商户号长度不能超过50个字符")
|
||||
private String wxSubMchId;
|
||||
|
||||
/**
|
||||
* 支付key
|
||||
*/
|
||||
@Schema(description = "支付key")
|
||||
@Length(max = 50, message = "支付key长度不能超过50个字符")
|
||||
private String wxKey;
|
||||
|
||||
/**
|
||||
* 是否停用
|
||||
*/
|
||||
@Schema(description = "是否停用")
|
||||
private Integer wxStop;
|
||||
|
||||
/**
|
||||
* 是否测试模式
|
||||
*/
|
||||
@Schema(description = "是否测试模式")
|
||||
private Integer wxMode;
|
||||
|
||||
/**
|
||||
* 平台参数ID
|
||||
*/
|
||||
@Schema(description = "平台参数ID")
|
||||
private String paramId;
|
||||
}
|
||||
@@ -1,58 +0,0 @@
|
||||
package top.wms.admin.consume.model.req;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 创建或修改消费时段参数
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/30 14:56
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "创建或修改消费时段参数")
|
||||
public class TimeIntervalReq implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 开始时间
|
||||
*/
|
||||
private String startTime;
|
||||
|
||||
/**
|
||||
* 结束时间
|
||||
*/
|
||||
private String endTime;
|
||||
|
||||
/**
|
||||
* 刷卡方式 00刷卡 01刷卡+密码
|
||||
*/
|
||||
private String useMode;
|
||||
|
||||
/**
|
||||
* 最大刷卡次数
|
||||
*/
|
||||
private Integer maxcount;
|
||||
|
||||
/**
|
||||
* 定额方式下要扣的金额
|
||||
*/
|
||||
private BigDecimal fixmoney;
|
||||
|
||||
/**
|
||||
* 消费方式 0单价 1定额 2时段模式 3计次 5点餐机模式 9身份模式
|
||||
*/
|
||||
private Integer consumeType;
|
||||
|
||||
/**
|
||||
* 消费餐段 0早餐 1中餐 2午餐 3夜餐
|
||||
*/
|
||||
private Integer tmrtype;
|
||||
|
||||
}
|
||||
@@ -1,78 +0,0 @@
|
||||
package top.wms.admin.consume.model.resp;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
|
||||
import top.wms.admin.common.model.resp.BaseDetailResp;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.time.*;
|
||||
|
||||
/**
|
||||
* 消费下发记录信息
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/02/25 11:01
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "消费下发记录信息")
|
||||
public class DownRecordResp extends BaseDetailResp {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 设备ID
|
||||
*/
|
||||
@Schema(description = "设备ID")
|
||||
private Long equipmentId;
|
||||
|
||||
/**
|
||||
* 设备名称
|
||||
*/
|
||||
@Schema(description = "设备名称")
|
||||
private String equipmentName;
|
||||
|
||||
/**
|
||||
* 人员ID
|
||||
*/
|
||||
@Schema(description = "人员ID")
|
||||
private Long peopleId;
|
||||
|
||||
/**
|
||||
* 人员名称
|
||||
*/
|
||||
@Schema(description = "人员名称")
|
||||
private String peopleName;
|
||||
|
||||
/**
|
||||
* 工号
|
||||
*/
|
||||
@Schema(description = "工号")
|
||||
private String gh;
|
||||
|
||||
/**
|
||||
* 下发时间
|
||||
*/
|
||||
@Schema(description = "下发时间")
|
||||
private LocalDateTime downTime;
|
||||
|
||||
/**
|
||||
* 下发结果:0-成功,1-失败
|
||||
*/
|
||||
@Schema(description = "下发结果:0-成功,1-失败")
|
||||
private Integer downResult;
|
||||
|
||||
/**
|
||||
* 下发结果报文
|
||||
*/
|
||||
@Schema(description = "下发结果报文")
|
||||
private String msg;
|
||||
|
||||
/**
|
||||
* 0:新增 1:修改 2:下发 3:删除
|
||||
*/
|
||||
@Schema(description = "0:新增 1:修改 2:下发 3:删除")
|
||||
private Integer operType;
|
||||
}
|
||||
@@ -1,64 +0,0 @@
|
||||
package top.wms.admin.consume.model.resp;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
|
||||
import top.continew.starter.extension.crud.model.resp.LabelValueResp;
|
||||
import top.wms.admin.common.model.resp.BaseDetailResp;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.math.BigDecimal;
|
||||
import java.time.*;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 消费组信息
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/27 13:48
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "消费组信息")
|
||||
public class GroupResp extends BaseDetailResp {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 消费组名称
|
||||
*/
|
||||
@Schema(description = "消费组名称")
|
||||
private String groupName;
|
||||
|
||||
/**
|
||||
* 补贴金额
|
||||
*/
|
||||
@Schema(description = "补贴金额")
|
||||
private BigDecimal money;
|
||||
|
||||
/**
|
||||
* 补贴日期
|
||||
*/
|
||||
@Schema(description = "补贴日期(每月几号)")
|
||||
private String subsidyDate;
|
||||
|
||||
/**
|
||||
* 是否补贴
|
||||
*/
|
||||
@Schema(description = "是否补贴")
|
||||
private Integer timedConsumption;
|
||||
|
||||
/**
|
||||
* 人员ids
|
||||
*/
|
||||
@Schema(description = "人员ids")
|
||||
private List<Long> peopleIds;
|
||||
|
||||
/**
|
||||
* 人员下拉数据
|
||||
*/
|
||||
@Schema(description = "人员下拉数据")
|
||||
private List<LabelValueResp> peopleSelect;
|
||||
|
||||
}
|
||||
@@ -1,53 +0,0 @@
|
||||
package top.wms.admin.consume.model.resp;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 人员充值导入解析结果
|
||||
*
|
||||
*/
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Schema(description = "人员充值导入解析结果")
|
||||
public class PeopleDepositImportParseResp implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 导入会话 Key
|
||||
*/
|
||||
@Schema(description = "导入会话Key", example = "1b9d6bcd-bbfd-4b2d-9b5d-ab8dfbbd4bed")
|
||||
private String importKey;
|
||||
|
||||
/**
|
||||
* 总计行数
|
||||
*/
|
||||
@Schema(description = "总计行数", example = "100")
|
||||
private Integer totalRows;
|
||||
|
||||
/**
|
||||
* 有效行数
|
||||
*/
|
||||
@Schema(description = "有效行数", example = "100")
|
||||
private Integer validRows;
|
||||
|
||||
/**
|
||||
* 重复行数
|
||||
*/
|
||||
@Schema(description = "重复行数", example = "100")
|
||||
private Integer duplicateUserRows;
|
||||
|
||||
/**
|
||||
* 消费未启用行数
|
||||
*/
|
||||
@Schema(description = "消费未启用行数", example = "100")
|
||||
private Integer unEnabledRows;
|
||||
}
|
||||
@@ -1,171 +0,0 @@
|
||||
package top.wms.admin.consume.model.resp;
|
||||
|
||||
import com.alibaba.excel.annotation.ExcelIgnore;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import com.alibaba.excel.annotation.write.style.ColumnWidth;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import top.continew.starter.file.excel.converter.ExcelBaseEnumConverter;
|
||||
import top.wms.admin.common.enums.ConsumeRechargeModeEnum;
|
||||
import top.wms.admin.common.enums.ConsumeRechargeTypeEnum;
|
||||
import top.wms.admin.common.enums.ConsumeRechargeWayEnum;
|
||||
import top.wms.admin.common.model.resp.BaseDetailResp;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* 充值记录信息
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/29 16:11
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "充值记录信息")
|
||||
public class RechargeRecordResp extends BaseDetailResp {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 帐号people_id
|
||||
*/
|
||||
@Schema(description = "帐号people_id")
|
||||
@ExcelIgnore
|
||||
private Long accountId;
|
||||
|
||||
/**
|
||||
* 人员名称
|
||||
*/
|
||||
@Schema(description = "人员名称")
|
||||
@ExcelProperty(value = "人员名称", order = 2)
|
||||
private String accountName;
|
||||
|
||||
/**
|
||||
* 后面A表示工号,如果是B表示卡号
|
||||
*/
|
||||
@Schema(description = "后面A表示工号,如果是B表示卡号")
|
||||
@ExcelIgnore
|
||||
private String adminRecharge;
|
||||
|
||||
/**
|
||||
* 内部图片路径
|
||||
*/
|
||||
@Schema(description = "内部图片路径")
|
||||
@ExcelIgnore
|
||||
private String base64;
|
||||
|
||||
/**
|
||||
* 消费金额,分
|
||||
*/
|
||||
@Schema(description = "充值金额,分")
|
||||
@ExcelProperty(value = "操作金额(分)", order = 3)
|
||||
private BigDecimal consumeMoney;
|
||||
|
||||
/**
|
||||
* 折扣金额,分
|
||||
*/
|
||||
@Schema(description = "折扣金额,分")
|
||||
@ExcelIgnore
|
||||
private BigDecimal discountMoney;
|
||||
|
||||
/**
|
||||
* 工号
|
||||
*/
|
||||
@Schema(description = "工号")
|
||||
@ExcelProperty(value = "工号", order = 1)
|
||||
private String empId;
|
||||
|
||||
/**
|
||||
* 交易发起时间
|
||||
*/
|
||||
@Schema(description = "交易发起时间")
|
||||
@ExcelIgnore
|
||||
private LocalDateTime startTime;
|
||||
|
||||
/**
|
||||
* 交易结束时间
|
||||
*/
|
||||
@Schema(description = "交易结束时间")
|
||||
@ExcelIgnore
|
||||
private LocalDateTime endTime;
|
||||
|
||||
/**
|
||||
* 订单类型
|
||||
*/
|
||||
@Schema(description = "订单类型")
|
||||
@ExcelIgnore
|
||||
private Integer orderType;
|
||||
|
||||
/**
|
||||
* 单号,支付宝和微信使用,平台单号
|
||||
*/
|
||||
@Schema(description = "单号,支付宝和微信使用,平台单号")
|
||||
@ExcelIgnore
|
||||
private String outTradeId;
|
||||
|
||||
/**
|
||||
* 支付类型:0人脸 1云卡 2刷卡 3支付宝 4微信 5取餐码
|
||||
*/
|
||||
@Schema(description = "支付类型:0人脸 1云卡 2刷卡 3支付宝 4微信 5取餐码")
|
||||
@ExcelIgnore
|
||||
private Integer payMode;
|
||||
|
||||
/**
|
||||
* 交易状态 0在线消费 1离线消费 2超时 3消费异常,4异常消费
|
||||
*/
|
||||
@Schema(description = "交易状态 0在线消费 1离线消费 2超时 3消费异常,4异常消费")
|
||||
@ExcelIgnore
|
||||
private Integer resultCode;
|
||||
|
||||
/**
|
||||
* 记录版本1考勤,2门禁,22人脸机消费,25人脸机充值
|
||||
*/
|
||||
@Schema(description = "记录版本1考勤,2门禁,22人脸机消费,25人脸机充值")
|
||||
@ExcelIgnore
|
||||
private Integer ver;
|
||||
|
||||
/**
|
||||
* 充值方式
|
||||
*/
|
||||
@Schema(description = "充值方式 0现金 1支付宝 2微信 3网银")
|
||||
@ExcelProperty(value = "充值方式", converter = ExcelBaseEnumConverter.class, order = 5)
|
||||
private ConsumeRechargeModeEnum rechargeMode;
|
||||
|
||||
/**
|
||||
* 充值来源
|
||||
*/
|
||||
@Schema(description = "充值来源 0平台 1手机")
|
||||
@ExcelProperty(value = "充值来源", converter = ExcelBaseEnumConverter.class, order = 6)
|
||||
private ConsumeRechargeWayEnum rechargeWay;
|
||||
|
||||
/**
|
||||
* 充值类型
|
||||
*/
|
||||
@Schema(description = "充值类型 0补贴 1充值")
|
||||
@ExcelProperty(value = "充值类型", converter = ExcelBaseEnumConverter.class, order = 4)
|
||||
private ConsumeRechargeTypeEnum rechargeType;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@Schema(description = "创建时间", example = "2023-08-08 08:08:08", type = "string")
|
||||
@ExcelProperty(value = "创建时间", order = 7)
|
||||
@ColumnWidth(30)
|
||||
private LocalDateTime createTime;
|
||||
|
||||
/**
|
||||
* 清除补贴金额,分
|
||||
*/
|
||||
@Schema(description = "清除补贴金额,分")
|
||||
@ExcelIgnore
|
||||
private BigDecimal clearBtje;
|
||||
|
||||
/**
|
||||
* 清除充值金额,分
|
||||
*/
|
||||
@Schema(description = "清除充值金额,分")
|
||||
@ExcelIgnore
|
||||
private BigDecimal clearCzje;
|
||||
}
|
||||
@@ -1,247 +0,0 @@
|
||||
package top.wms.admin.consume.model.resp;
|
||||
|
||||
import com.alibaba.excel.annotation.ExcelIgnore;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import com.alibaba.excel.annotation.write.style.ColumnWidth;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import top.continew.starter.file.excel.converter.ExcelBaseEnumConverter;
|
||||
import top.wms.admin.common.enums.*;
|
||||
import top.wms.admin.common.model.resp.BaseDetailResp;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* 消费记录信息
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/21 17:53
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "消费记录信息")
|
||||
public class RecordResp extends BaseDetailResp {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 记录版本1考勤,2门禁,22人脸机消费,25人脸机充值
|
||||
*/
|
||||
@Schema(description = "记录版本1考勤,2门禁,22人脸机消费,25人脸机充值")
|
||||
@ExcelIgnore
|
||||
private Integer ver;
|
||||
|
||||
/**
|
||||
* 工号
|
||||
*/
|
||||
@Schema(description = "工号")
|
||||
@ExcelProperty(value = "工号", order = 1)
|
||||
private String empId;
|
||||
|
||||
/**
|
||||
* 帐号
|
||||
*/
|
||||
@Schema(description = "帐号")
|
||||
@ExcelIgnore
|
||||
private Long accountId;
|
||||
|
||||
/**
|
||||
* 人员名称
|
||||
*/
|
||||
@Schema(description = "人员名称")
|
||||
@ExcelProperty(value = "人员", order = 2)
|
||||
private String accountName;
|
||||
|
||||
/**
|
||||
* 内部图片路径
|
||||
*/
|
||||
@Schema(description = "内部图片路径")
|
||||
@ExcelIgnore
|
||||
private String base64;
|
||||
|
||||
/**
|
||||
* 消费方式:0单价 1定额 2时段模式 3计次 5点餐机模式 9身份模式
|
||||
*/
|
||||
@Schema(description = "消费方式:0单价 1定额 2时段模式 3计次 5点餐机模式 9身份模式")
|
||||
@ExcelProperty(value = "消费方式", converter = ExcelBaseEnumConverter.class, order = 4)
|
||||
private ConsumeTypeConverter consumeType;
|
||||
|
||||
/**
|
||||
* 消费金额,分
|
||||
*/
|
||||
@Schema(description = "消费总金额,分")
|
||||
@ExcelProperty(value = "消费总金额", order = 5)
|
||||
private BigDecimal consumeMoney = BigDecimal.ZERO;
|
||||
|
||||
/**
|
||||
* 补贴消费金额,分
|
||||
*/
|
||||
@Schema(description = "补贴消费金额,分")
|
||||
@ExcelProperty(value = "补贴消费金额", order = 6)
|
||||
private BigDecimal subsidyMoney = BigDecimal.ZERO;
|
||||
|
||||
/**
|
||||
* 充值消费金额,分
|
||||
*/
|
||||
@Schema(description = "充值消费金额,分")
|
||||
@ExcelProperty(value = "充值消费金额", order = 7)
|
||||
private BigDecimal rechargeMoney = BigDecimal.ZERO;
|
||||
|
||||
/**
|
||||
* 折扣金额,分
|
||||
*/
|
||||
@Schema(description = "折扣金额,分")
|
||||
@ExcelIgnore
|
||||
private BigDecimal discountMoney = BigDecimal.ZERO;
|
||||
|
||||
/**
|
||||
* 单号,支付宝和微信使用,平台单号
|
||||
*/
|
||||
@Schema(description = "单号,支付宝和微信使用,平台单号")
|
||||
@ExcelProperty(value = "单号", order = 10)
|
||||
private String outTradeId;
|
||||
|
||||
/**
|
||||
* 交易发起时间
|
||||
*/
|
||||
@Schema(description = "交易发起时间")
|
||||
@ExcelIgnore
|
||||
private String startTime;
|
||||
|
||||
/**
|
||||
* 交易结束时间
|
||||
*/
|
||||
@Schema(description = "交易结束时间")
|
||||
@ExcelIgnore
|
||||
private String endTime;
|
||||
|
||||
/**
|
||||
* 交易状态 0在线消费 1离线消费 2超时 3消费异常,4异常消费
|
||||
*/
|
||||
@Schema(description = "交易状态 0在线消费 1离线消费 2超时 3消费异常,4异常消费")
|
||||
@ExcelProperty(value = "交易状态", converter = ExcelBaseEnumConverter.class, order = 11)
|
||||
private ConsumeResultEnum resultCode;
|
||||
|
||||
/**
|
||||
* 支付类型:0人脸 1云卡 2刷卡 3支付宝 4微信 5取餐码
|
||||
*/
|
||||
@Schema(description = "支付类型:0人脸 1云卡 2刷卡 3支付宝 4微信 5取餐码")
|
||||
@ExcelProperty(value = "支付类型", converter = ExcelBaseEnumConverter.class, order = 12)
|
||||
private ConsumePayModeEnum payMode;
|
||||
|
||||
/**
|
||||
* 订单类型
|
||||
*/
|
||||
@Schema(description = "订单类型")
|
||||
@ExcelProperty(value = "订单类型", converter = ExcelBaseEnumConverter.class, order = 13)
|
||||
private ConsumeOrderTypeEnum orderType;
|
||||
|
||||
/**
|
||||
* 钱包扣款模式:0先消费补贴再个人,1仅现金,2仅补贴
|
||||
*/
|
||||
@Schema(description = "钱包扣款模式:0先消费补贴再个人,1仅现金,2仅补贴")
|
||||
@ExcelIgnore
|
||||
private ConsumeWalletModeEnum walletConsumeMode;
|
||||
|
||||
/**
|
||||
* 多个相似的人脸出现时返回工号,最多3个,分号隔开
|
||||
*/
|
||||
@Schema(description = "多个相似的人脸出现时返回工号,最多3个,分号隔开")
|
||||
@ExcelIgnore
|
||||
private String likeId;
|
||||
|
||||
/**
|
||||
* 卡号
|
||||
*/
|
||||
@Schema(description = "卡号")
|
||||
@ExcelIgnore
|
||||
private String cardSn;
|
||||
|
||||
/**
|
||||
* 交易发起时间
|
||||
*/
|
||||
@Schema(description = "交易发起时间")
|
||||
@ExcelIgnore
|
||||
private LocalDateTime startDate;
|
||||
|
||||
/**
|
||||
* 交易结束时间
|
||||
*/
|
||||
@Schema(description = "交易结束时间")
|
||||
@ExcelIgnore
|
||||
private LocalDateTime endDate;
|
||||
|
||||
/**
|
||||
* 交易结果
|
||||
*/
|
||||
@Schema(description = "交易结果")
|
||||
@ExcelIgnore
|
||||
private String consumeResult;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@Schema(description = "备注")
|
||||
@ExcelIgnore
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 设备ID
|
||||
*/
|
||||
@Schema(description = "设备ID")
|
||||
@ExcelIgnore
|
||||
private Long devId;
|
||||
|
||||
/**
|
||||
* 设备名称
|
||||
*/
|
||||
@Schema(description = "设备名称")
|
||||
@ExcelProperty(value = "设备名称", order = 3)
|
||||
private String equipmentName;
|
||||
|
||||
/**
|
||||
* 餐段ID
|
||||
*/
|
||||
@Schema(description = "餐段ID")
|
||||
@ExcelIgnore
|
||||
private String timeId;
|
||||
|
||||
/**
|
||||
* 支付宝买家ID
|
||||
*/
|
||||
@Schema(description = "支付宝买家ID")
|
||||
@ExcelIgnore
|
||||
private String buyerId;
|
||||
|
||||
/**
|
||||
* 微信买家ID
|
||||
*/
|
||||
@Schema(description = "微信买家ID")
|
||||
@ExcelIgnore
|
||||
private String openid;
|
||||
|
||||
/**
|
||||
* 充值金额
|
||||
*/
|
||||
@Schema(description = "充值金额")
|
||||
@ExcelProperty(value = "充值金额", order = 9)
|
||||
private BigDecimal czje = BigDecimal.ZERO;
|
||||
|
||||
/**
|
||||
* 补贴金额
|
||||
*/
|
||||
@Schema(description = "补贴金额")
|
||||
@ExcelProperty(value = "补贴金额", order = 8)
|
||||
private BigDecimal btje = BigDecimal.ZERO;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@Schema(description = "创建时间", example = "2023-08-08 08:08:08", type = "string")
|
||||
@ExcelProperty(value = "创建时间", order = 14)
|
||||
@ColumnWidth(30)
|
||||
private LocalDateTime createTime;
|
||||
|
||||
}
|
||||
@@ -1,120 +0,0 @@
|
||||
package top.wms.admin.consume.model.resp;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
|
||||
import top.wms.admin.common.model.resp.BaseDetailResp;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.time.*;
|
||||
|
||||
/**
|
||||
* 商户信息信息
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/30 14:55
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "商户信息信息")
|
||||
public class TenantResp extends BaseDetailResp {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 商户名称
|
||||
*/
|
||||
@Schema(description = "商户名称")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 商户类型
|
||||
*/
|
||||
@Schema(description = "商户类型")
|
||||
private String type;
|
||||
|
||||
/**
|
||||
* 客户的appid
|
||||
*/
|
||||
@Schema(description = "客户的appid")
|
||||
private String zfbAppId;
|
||||
|
||||
/**
|
||||
* 服务商PID
|
||||
*/
|
||||
@Schema(description = "服务商PID")
|
||||
private String zfbSysServiceProviderId;
|
||||
|
||||
/**
|
||||
* 私有密钥
|
||||
*/
|
||||
@Schema(description = "私有密钥")
|
||||
private String zfbRsaPrivateKey;
|
||||
|
||||
/**
|
||||
* 是否停用
|
||||
*/
|
||||
@Schema(description = "是否停用")
|
||||
private String zfbStop;
|
||||
|
||||
/**
|
||||
* 是否测试模式
|
||||
*/
|
||||
@Schema(description = "是否测试模式")
|
||||
private String zfbMode;
|
||||
|
||||
/**
|
||||
* 公众号appid
|
||||
*/
|
||||
@Schema(description = "公众号appid")
|
||||
private String wxAppid;
|
||||
|
||||
/**
|
||||
* 服务商商户号
|
||||
*/
|
||||
@Schema(description = "服务商商户号")
|
||||
private String wxMchId;
|
||||
|
||||
/**
|
||||
* 特约商户号
|
||||
*/
|
||||
@Schema(description = "特约商户号")
|
||||
private String wxSubMchId;
|
||||
|
||||
/**
|
||||
* 支付key
|
||||
*/
|
||||
@Schema(description = "支付key")
|
||||
private String wxKey;
|
||||
|
||||
/**
|
||||
* 是否停用
|
||||
*/
|
||||
@Schema(description = "是否停用")
|
||||
private String wxStop;
|
||||
|
||||
/**
|
||||
* 是否测试模式
|
||||
*/
|
||||
@Schema(description = "是否测试模式")
|
||||
private String wxMode;
|
||||
|
||||
/**
|
||||
* 平台参数ID
|
||||
*/
|
||||
@Schema(description = "平台参数ID")
|
||||
private String paramId;
|
||||
|
||||
/**
|
||||
* 更新者
|
||||
*/
|
||||
@Schema(description = "更新者")
|
||||
private Long updateUser;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@Schema(description = "更新时间")
|
||||
private LocalDateTime updateTime;
|
||||
}
|
||||
@@ -1,97 +0,0 @@
|
||||
package top.wms.admin.consume.model.resp;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
|
||||
import top.wms.admin.common.model.resp.BaseDetailResp;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.time.*;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 消费时段信息
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/30 14:56
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "消费时段信息")
|
||||
public class TimeIntervalResp extends BaseDetailResp {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 开始时间
|
||||
*/
|
||||
@Schema(description = "开始时间")
|
||||
private String startTime;
|
||||
|
||||
/**
|
||||
* 结束时间
|
||||
*/
|
||||
@Schema(description = "结束时间")
|
||||
private String endTime;
|
||||
|
||||
/**
|
||||
* 刷卡方式 00刷卡 01刷卡+密码
|
||||
*/
|
||||
@Schema(description = "刷卡方式 00刷卡 01刷卡+密码")
|
||||
private String useMode;
|
||||
|
||||
/**
|
||||
* 消费餐段 0早餐 1中餐 2午餐 3夜餐
|
||||
*/
|
||||
@Schema(description = "消费餐段 0早餐 1中餐 2午餐 3夜餐")
|
||||
private String tmrtype;
|
||||
|
||||
/**
|
||||
* 预留
|
||||
*/
|
||||
@Schema(description = "预留")
|
||||
private String mark;
|
||||
|
||||
/**
|
||||
* 卡级别
|
||||
*/
|
||||
@Schema(description = "卡级别")
|
||||
private Integer level;
|
||||
|
||||
/**
|
||||
* 最大刷卡次数
|
||||
*/
|
||||
@Schema(description = "最大刷卡次数")
|
||||
private Integer maxcount;
|
||||
|
||||
/**
|
||||
* 定额方式下要扣的金额
|
||||
*/
|
||||
@Schema(description = "定额方式下要扣的金额")
|
||||
private BigDecimal fixmoney;
|
||||
|
||||
/**
|
||||
* 消费方式 0单价 1定额 2时段模式 3计次 5点餐机模式 9身份模式
|
||||
*/
|
||||
@Schema(description = "消费方式 0单价 1定额 2时段模式 3计次 5点餐机模式 9身份模式")
|
||||
private String consumeType;
|
||||
|
||||
/**
|
||||
* 平台参数ID
|
||||
*/
|
||||
@Schema(description = "平台参数ID")
|
||||
private String paramId;
|
||||
|
||||
/**
|
||||
* 更新者
|
||||
*/
|
||||
@Schema(description = "更新者")
|
||||
private Long updateUser;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@Schema(description = "更新时间")
|
||||
private LocalDateTime updateTime;
|
||||
}
|
||||
@@ -1,73 +0,0 @@
|
||||
package top.wms.admin.consume.model.resp.report;
|
||||
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
@Data
|
||||
@Schema(description = "基础报表")
|
||||
public class BaseReport {
|
||||
|
||||
/**
|
||||
* 合计次数
|
||||
*/
|
||||
@ExcelProperty(value = "合计次数", order = Integer.MAX_VALUE - 10)
|
||||
private Integer totalCount = 0;
|
||||
|
||||
/**
|
||||
* 合计金额
|
||||
*/
|
||||
@ExcelProperty(value = "合计金额", order = Integer.MAX_VALUE - 9)
|
||||
private BigDecimal totalAmount = BigDecimal.ZERO;
|
||||
|
||||
/**
|
||||
* 单价次数
|
||||
*/
|
||||
@ExcelProperty(value = "单价次数", order = Integer.MAX_VALUE - 8)
|
||||
private Integer unitPriceCount = 0;
|
||||
|
||||
/**
|
||||
* 单价金额
|
||||
*/
|
||||
@ExcelProperty(value = "单价金额", order = Integer.MAX_VALUE - 7)
|
||||
private BigDecimal unitPriceAmount = BigDecimal.ZERO;
|
||||
|
||||
/**
|
||||
* 定值次数
|
||||
*/
|
||||
@ExcelProperty(value = "定值次数", order = Integer.MAX_VALUE - 6)
|
||||
private Integer fixedValueCount = 0;
|
||||
|
||||
/**
|
||||
* 定值金额
|
||||
*/
|
||||
@ExcelProperty(value = "定值金额", order = Integer.MAX_VALUE - 5)
|
||||
private BigDecimal fixedValueAmount = BigDecimal.ZERO;
|
||||
|
||||
/**
|
||||
* 计次次数
|
||||
*/
|
||||
@ExcelProperty(value = "计次次数", order = Integer.MAX_VALUE - 4)
|
||||
private Integer countingCount = 0;
|
||||
|
||||
/**
|
||||
* 计次金额
|
||||
*/
|
||||
@ExcelProperty(value = "计次金额", order = Integer.MAX_VALUE - 3)
|
||||
private BigDecimal countingAmount = BigDecimal.ZERO;
|
||||
|
||||
/**
|
||||
* 二维码次数
|
||||
*/
|
||||
@ExcelProperty(value = "二维码次数", order = Integer.MAX_VALUE - 2)
|
||||
private Integer qrcodeCount = 0;
|
||||
|
||||
/**
|
||||
* 二维码金额
|
||||
*/
|
||||
@ExcelProperty(value = "二维码金额", order = Integer.MAX_VALUE - 1)
|
||||
private BigDecimal qrcodeAmount = BigDecimal.ZERO;
|
||||
|
||||
}
|
||||
@@ -1,20 +0,0 @@
|
||||
package top.wms.admin.consume.model.resp.report;
|
||||
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 部门报表
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "部门报表")
|
||||
public class BranchReport extends BaseReport {
|
||||
|
||||
/**
|
||||
* 部门名称
|
||||
*/
|
||||
@ExcelProperty(value = "部门名称", order = Integer.MAX_VALUE - 11)
|
||||
private String branchName;
|
||||
|
||||
}
|
||||
@@ -1,35 +0,0 @@
|
||||
package top.wms.admin.consume.model.resp.report;
|
||||
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import top.continew.starter.file.excel.converter.ExcelBaseEnumConverter;
|
||||
import top.wms.admin.common.enums.ConsumeTmrtypeEnum;
|
||||
|
||||
/**
|
||||
* 餐段报表
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "餐段报表")
|
||||
public class MealReport extends BaseReport {
|
||||
|
||||
/**
|
||||
* 商户名称
|
||||
*/
|
||||
@ExcelProperty(value = "商户名称", order = Integer.MAX_VALUE - 13)
|
||||
private String merchant;
|
||||
|
||||
/**
|
||||
* 设备名称
|
||||
*/
|
||||
|
||||
@ExcelProperty(value = "设备名称", order = Integer.MAX_VALUE - 12)
|
||||
private String equipmentName;
|
||||
|
||||
/**
|
||||
* 消费餐段 0早餐 1中餐 2午餐 3夜餐
|
||||
*/
|
||||
@ExcelProperty(value = "消费餐段", converter = ExcelBaseEnumConverter.class, order = Integer.MAX_VALUE - 11)
|
||||
private ConsumeTmrtypeEnum tmrtype;
|
||||
|
||||
}
|
||||
@@ -1,28 +0,0 @@
|
||||
package top.wms.admin.consume.model.resp.report;
|
||||
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 商户报表
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "商户报表")
|
||||
public class MerchantReport extends BaseReport {
|
||||
|
||||
/**
|
||||
* 商户名称
|
||||
*/
|
||||
@Schema(description = "商户名称")
|
||||
@ExcelProperty(value = "商户名称", order = Integer.MAX_VALUE - 12)
|
||||
private String merchant;
|
||||
|
||||
/**
|
||||
* 设备名称
|
||||
*/
|
||||
@Schema(description = "设备名称")
|
||||
@ExcelProperty(value = "设备名称", order = Integer.MAX_VALUE - 11)
|
||||
private String equipmentName;
|
||||
|
||||
}
|
||||
@@ -1,32 +0,0 @@
|
||||
package top.wms.admin.consume.model.resp.report;
|
||||
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 人员报表
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "人员报表")
|
||||
public class PeopleReport extends BaseReport {
|
||||
|
||||
/**
|
||||
* 人员名称
|
||||
*/
|
||||
@ExcelProperty(value = "人员名称", order = Integer.MAX_VALUE - 13)
|
||||
private String peopleName;
|
||||
|
||||
/**
|
||||
* 人员工号
|
||||
*/
|
||||
@ExcelProperty(value = "人员工号", order = Integer.MAX_VALUE - 12)
|
||||
private String gh;
|
||||
|
||||
/**
|
||||
* 部门名称
|
||||
*/
|
||||
@ExcelProperty(value = "部门名称", order = Integer.MAX_VALUE - 11)
|
||||
private String branchName;
|
||||
|
||||
}
|
||||
@@ -1,17 +0,0 @@
|
||||
package top.wms.admin.consume.service;
|
||||
|
||||
import top.continew.starter.extension.crud.service.BaseService;
|
||||
import top.wms.admin.consume.model.query.DownRecordQuery;
|
||||
import top.wms.admin.consume.model.req.DownRecordReq;
|
||||
import top.wms.admin.consume.model.resp.DownRecordResp;
|
||||
|
||||
/**
|
||||
* 消费下发记录业务接口
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/02/25 11:01
|
||||
*/
|
||||
public interface DownRecordService extends BaseService<DownRecordResp, DownRecordResp, DownRecordQuery, DownRecordReq> {
|
||||
|
||||
void down(Long equipmentId, Long peopleId);
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
package top.wms.admin.consume.service;
|
||||
|
||||
import top.continew.starter.extension.crud.service.BaseService;
|
||||
import top.wms.admin.consume.model.query.GroupQuery;
|
||||
import top.wms.admin.consume.model.req.GroupReq;
|
||||
import top.wms.admin.consume.model.resp.GroupResp;
|
||||
|
||||
/**
|
||||
* 消费组业务接口
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/27 13:48
|
||||
*/
|
||||
public interface GroupService extends BaseService<GroupResp, GroupResp, GroupQuery, GroupReq> {}
|
||||
@@ -1,8 +0,0 @@
|
||||
package top.wms.admin.consume.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import top.wms.admin.consume.model.entity.GroupUserDO;
|
||||
|
||||
public interface GroupUserService extends IService<GroupUserDO> {
|
||||
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
package top.wms.admin.consume.service;
|
||||
|
||||
import top.continew.starter.extension.crud.service.BaseService;
|
||||
import top.wms.admin.consume.model.query.RechargeRecordQuery;
|
||||
import top.wms.admin.consume.model.req.RechargeRecordReq;
|
||||
import top.wms.admin.consume.model.resp.RechargeRecordResp;
|
||||
|
||||
/**
|
||||
* 充值记录业务接口
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/29 16:11
|
||||
*/
|
||||
public interface RechargeRecordService extends BaseService<RechargeRecordResp, RechargeRecordResp, RechargeRecordQuery, RechargeRecordReq> {
|
||||
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
package top.wms.admin.consume.service;
|
||||
|
||||
import top.continew.starter.extension.crud.service.BaseService;
|
||||
import top.wms.admin.consume.model.query.RecordQuery;
|
||||
import top.wms.admin.consume.model.req.RecordReq;
|
||||
import top.wms.admin.consume.model.resp.RecordResp;
|
||||
|
||||
/**
|
||||
* 消费记录业务接口
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/21 17:53
|
||||
*/
|
||||
public interface RecordService extends BaseService<RecordResp, RecordResp, RecordQuery, RecordReq> {}
|
||||
@@ -1,77 +0,0 @@
|
||||
package top.wms.admin.consume.service;
|
||||
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import top.continew.starter.extension.crud.model.query.PageQuery;
|
||||
import top.continew.starter.extension.crud.model.resp.PageResp;
|
||||
import top.wms.admin.consume.model.query.ReportQuery;
|
||||
import top.wms.admin.consume.model.resp.report.BranchReport;
|
||||
import top.wms.admin.consume.model.resp.report.MealReport;
|
||||
import top.wms.admin.consume.model.resp.report.MerchantReport;
|
||||
import top.wms.admin.consume.model.resp.report.PeopleReport;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface ReportService {
|
||||
|
||||
/**
|
||||
* 查询商户报表
|
||||
*
|
||||
* @param query 查询参数
|
||||
* @return 商户报表列表
|
||||
*/
|
||||
List<MerchantReport> queryMerchantReport(ReportQuery query);
|
||||
|
||||
/**
|
||||
* 查询餐段报表
|
||||
*
|
||||
* @param query 查询参数
|
||||
* @return 餐段报表列表
|
||||
*/
|
||||
List<MealReport> queryMealReport(ReportQuery query);
|
||||
|
||||
/**
|
||||
* 查询部门报表
|
||||
*
|
||||
* @param query 查询参数
|
||||
* @return 部门报表列表
|
||||
*/
|
||||
List<BranchReport> queryBranchReport(ReportQuery query);
|
||||
|
||||
/**
|
||||
* 查询人员报表
|
||||
*
|
||||
* @param query 查询参数
|
||||
* @param pageQuery 分页查询参数
|
||||
* @return 人员报表分页列表
|
||||
*/
|
||||
PageResp<PeopleReport> page(@Param("query") ReportQuery query, @Param("pageQuery") PageQuery pageQuery);
|
||||
|
||||
/**
|
||||
* 导出商户报表
|
||||
*
|
||||
* @param query 查询参数
|
||||
*/
|
||||
void exportMerchant(ReportQuery query, HttpServletResponse response);
|
||||
|
||||
/**
|
||||
* 导出餐段报表
|
||||
*
|
||||
* @param query 查询参数
|
||||
*/
|
||||
void exportMeal(ReportQuery query, HttpServletResponse response);
|
||||
|
||||
/**
|
||||
* 导出部门报表
|
||||
*
|
||||
* @param query 查询参数
|
||||
*/
|
||||
void exportBranch(ReportQuery query, HttpServletResponse response);
|
||||
|
||||
/**
|
||||
* 导出人员报表
|
||||
*
|
||||
* @param query 查询参数
|
||||
*/
|
||||
void exportPeople(ReportQuery query, HttpServletResponse response);
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
package top.wms.admin.consume.service;
|
||||
|
||||
import top.continew.starter.extension.crud.service.BaseService;
|
||||
import top.wms.admin.consume.model.query.TenantQuery;
|
||||
import top.wms.admin.consume.model.req.TenantReq;
|
||||
import top.wms.admin.consume.model.resp.TenantResp;
|
||||
|
||||
/**
|
||||
* 商户信息业务接口
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/30 14:55
|
||||
*/
|
||||
public interface TenantService extends BaseService<TenantResp, TenantResp, TenantQuery, TenantReq> {
|
||||
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
package top.wms.admin.consume.service;
|
||||
|
||||
import top.continew.starter.extension.crud.service.BaseService;
|
||||
import top.wms.admin.consume.model.query.TimeIntervalQuery;
|
||||
import top.wms.admin.consume.model.req.TimeIntervalReq;
|
||||
import top.wms.admin.consume.model.resp.TimeIntervalResp;
|
||||
|
||||
/**
|
||||
* 消费时段业务接口
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/30 14:56
|
||||
*/
|
||||
public interface TimeIntervalService extends BaseService<TimeIntervalResp, TimeIntervalResp, TimeIntervalQuery, TimeIntervalReq> {
|
||||
|
||||
}
|
||||
@@ -1,57 +0,0 @@
|
||||
package top.wms.admin.consume.service.impl;
|
||||
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import top.continew.starter.extension.crud.model.query.PageQuery;
|
||||
import top.continew.starter.extension.crud.model.resp.PageResp;
|
||||
import top.continew.starter.extension.crud.service.BaseServiceImpl;
|
||||
import top.wms.admin.consume.mapper.DownRecordMapper;
|
||||
import top.wms.admin.consume.model.entity.DownRecordDO;
|
||||
import top.wms.admin.consume.model.query.DownRecordQuery;
|
||||
import top.wms.admin.consume.model.req.DownRecordReq;
|
||||
import top.wms.admin.consume.model.resp.DownRecordResp;
|
||||
import top.wms.admin.consume.service.DownRecordService;
|
||||
import top.wms.admin.system.mapper.PeopleEquipmentMapper;
|
||||
import top.wms.admin.system.model.entity.PeopleEquipmentDO;
|
||||
|
||||
/**
|
||||
* 消费下发记录业务实现
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/02/25 11:01
|
||||
*/
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class DownRecordServiceImpl extends BaseServiceImpl<DownRecordMapper, DownRecordDO, DownRecordResp, DownRecordResp, DownRecordQuery, DownRecordReq> implements DownRecordService {
|
||||
|
||||
private final PeopleEquipmentMapper peopleEquipmentMapper;
|
||||
|
||||
@Override
|
||||
public PageResp<DownRecordResp> page(DownRecordQuery query, PageQuery pageQuery) {
|
||||
QueryWrapper<DownRecordDO> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.like(StrUtil.isNotBlank(query.getPeopleName()), "p.name", query.getPeopleName());
|
||||
queryWrapper.eq(null != query.getDownResult(), "r.down_result", query.getDownResult());
|
||||
queryWrapper.eq(null != query.getOperType(), "r.oper_type", query.getOperType());
|
||||
queryWrapper.eq(null != query.getEquipmentId(), "r.equipment_id", query.getEquipmentId());
|
||||
queryWrapper.ge(null != query.getStartTime(), "r.down_time", query.getStartTime());
|
||||
queryWrapper.le(null != query.getEndTime(), "r.down_time", query.getEndTime());
|
||||
this.sort(queryWrapper, pageQuery);
|
||||
|
||||
IPage<DownRecordResp> page = baseMapper.selectRecordsPage(new Page<>(pageQuery.getPage(), pageQuery
|
||||
.getSize()), queryWrapper);
|
||||
|
||||
return PageResp.build(page);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down(Long equipmentId, Long peopleId) {
|
||||
peopleEquipmentMapper.delete(new QueryWrapper<PeopleEquipmentDO>().eq("equipment_id", equipmentId)
|
||||
.eq("people_id", peopleId));
|
||||
}
|
||||
}
|
||||
@@ -1,96 +0,0 @@
|
||||
package top.wms.admin.consume.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import top.continew.starter.extension.crud.service.BaseServiceImpl;
|
||||
import top.wms.admin.consume.mapper.GroupMapper;
|
||||
import top.wms.admin.consume.model.entity.GroupDO;
|
||||
import top.wms.admin.consume.model.entity.GroupUserDO;
|
||||
import top.wms.admin.consume.model.query.GroupQuery;
|
||||
import top.wms.admin.consume.model.req.GroupReq;
|
||||
import top.wms.admin.consume.model.resp.GroupResp;
|
||||
import top.wms.admin.consume.service.GroupService;
|
||||
import top.wms.admin.consume.service.GroupUserService;
|
||||
import top.wms.admin.peopleBranch.mapper.PeopleMapper;
|
||||
import top.wms.admin.peopleBranch.mapstruct.PeopleConvert;
|
||||
import top.wms.admin.peopleBranch.model.entity.PeopleDO;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 消费组业务实现
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/27 13:48
|
||||
*/
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class GroupServiceImpl extends BaseServiceImpl<GroupMapper, GroupDO, GroupResp, GroupResp, GroupQuery, GroupReq> implements GroupService {
|
||||
|
||||
private final GroupUserService groupUserService;
|
||||
|
||||
private final PeopleMapper peopleMapper;
|
||||
|
||||
private final PeopleConvert peopleConvert;
|
||||
|
||||
@Override
|
||||
public GroupResp get(Long id) {
|
||||
GroupDO entity = baseMapper.selectById(id);
|
||||
GroupResp detail = BeanUtil.toBean(entity, GroupResp.class);
|
||||
|
||||
List<GroupUserDO> groupUserDOS = groupUserService.list(new LambdaQueryWrapper<GroupUserDO>()
|
||||
.eq(GroupUserDO::getGroupId, id));
|
||||
if (CollUtil.isNotEmpty(groupUserDOS)) {
|
||||
detail.setPeopleIds(groupUserDOS.stream().map(GroupUserDO::getUserId).toList());
|
||||
|
||||
//返回人员下拉数据
|
||||
List<PeopleDO> peopleDOS = peopleMapper.selectByIds(detail.getPeopleIds());
|
||||
if (CollUtil.isNotEmpty(peopleDOS)) {
|
||||
detail.setPeopleSelect(peopleConvert.labelValueList(peopleDOS));
|
||||
}
|
||||
}
|
||||
|
||||
this.fill(detail);
|
||||
return detail;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void afterAdd(GroupReq req, GroupDO groupDO) {
|
||||
if (CollUtil.isNotEmpty(req.getPeopleIds())) {
|
||||
List<GroupUserDO> groupUserDOS = req.getPeopleIds().stream().map(userId -> {
|
||||
GroupUserDO groupUserDO = new GroupUserDO();
|
||||
groupUserDO.setGroupId(groupDO.getId());
|
||||
groupUserDO.setUserId(userId);
|
||||
return groupUserDO;
|
||||
}).collect(Collectors.toList());
|
||||
|
||||
groupUserService.saveBatch(groupUserDOS);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void afterUpdate(GroupReq req, GroupDO groupDO) {
|
||||
if (CollUtil.isNotEmpty(req.getPeopleIds())) {
|
||||
List<GroupUserDO> groupUserDOS = req.getPeopleIds().stream().map(userId -> {
|
||||
GroupUserDO groupUserDO = new GroupUserDO();
|
||||
groupUserDO.setGroupId(groupDO.getId());
|
||||
groupUserDO.setUserId(userId);
|
||||
return groupUserDO;
|
||||
}).collect(Collectors.toList());
|
||||
groupUserService.remove(new LambdaQueryWrapper<GroupUserDO>().eq(GroupUserDO::getGroupId, groupDO.getId()));
|
||||
groupUserService.saveBatch(groupUserDOS);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void afterDelete(List<Long> ids) {
|
||||
if (CollUtil.isNotEmpty(ids)) {
|
||||
groupUserService.remove(new LambdaQueryWrapper<GroupUserDO>().in(GroupUserDO::getGroupId, ids));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,20 +0,0 @@
|
||||
package top.wms.admin.consume.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import top.wms.admin.consume.mapper.GroupUserMapper;
|
||||
import top.wms.admin.consume.model.entity.GroupUserDO;
|
||||
import top.wms.admin.consume.service.GroupUserService;
|
||||
|
||||
/**
|
||||
* 消费组用户业务实现
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/27 13:48
|
||||
*/
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class GroupUserServiceImpl extends ServiceImpl<GroupUserMapper, GroupUserDO> implements GroupUserService {
|
||||
|
||||
}
|
||||
@@ -1,72 +0,0 @@
|
||||
package top.wms.admin.consume.service.impl;
|
||||
|
||||
import cn.crane4j.annotation.AutoOperate;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import top.continew.starter.extension.crud.model.query.PageQuery;
|
||||
import top.continew.starter.extension.crud.model.query.SortQuery;
|
||||
import top.continew.starter.extension.crud.model.resp.PageResp;
|
||||
import top.continew.starter.extension.crud.service.BaseServiceImpl;
|
||||
import top.continew.starter.file.excel.util.ExcelUtils;
|
||||
import top.wms.admin.consume.mapper.RechargeRecordMapper;
|
||||
import top.wms.admin.consume.model.entity.RechargeRecordDO;
|
||||
import top.wms.admin.consume.model.query.RechargeRecordQuery;
|
||||
import top.wms.admin.consume.model.req.RechargeRecordReq;
|
||||
import top.wms.admin.consume.model.resp.RechargeRecordResp;
|
||||
import top.wms.admin.consume.service.RechargeRecordService;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 充值记录业务实现
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/29 16:11
|
||||
*/
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class RechargeRecordServiceImpl extends BaseServiceImpl<RechargeRecordMapper, RechargeRecordDO, RechargeRecordResp, RechargeRecordResp, RechargeRecordQuery, RechargeRecordReq> implements RechargeRecordService {
|
||||
|
||||
@Override
|
||||
@AutoOperate(type = RechargeRecordResp.class, on = "list")
|
||||
public PageResp<RechargeRecordResp> page(RechargeRecordQuery query, PageQuery pageQuery) {
|
||||
QueryWrapper<RechargeRecordDO> queryWrapper = buildQueryWrapper(query);
|
||||
this.sort(queryWrapper, pageQuery);
|
||||
|
||||
IPage<RechargeRecordResp> page = baseMapper.selectRechargePage(new Page<>(pageQuery.getPage(), pageQuery
|
||||
.getSize()), queryWrapper);
|
||||
|
||||
return PageResp.build(page);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void export(RechargeRecordQuery query, SortQuery sortQuery, HttpServletResponse response) {
|
||||
QueryWrapper<RechargeRecordDO> queryWrapper = buildQueryWrapper(query);
|
||||
this.sort(queryWrapper, sortQuery);
|
||||
List<RechargeRecordResp> rechargeRecordResps = baseMapper.selectExport(queryWrapper);
|
||||
|
||||
ExcelUtils.export(rechargeRecordResps, "充值记录_" + DateUtil.today(), RechargeRecordResp.class, response);
|
||||
}
|
||||
|
||||
public QueryWrapper<RechargeRecordDO> buildQueryWrapper(RechargeRecordQuery query) {
|
||||
QueryWrapper<RechargeRecordDO> queryWrapper = new QueryWrapper<>();
|
||||
//根据人员名称查询
|
||||
queryWrapper.like(StrUtil.isNotBlank(query.getAccountName()), "p.name", query.getAccountName());
|
||||
//根据工号查询
|
||||
queryWrapper.like(StrUtil.isNotBlank(query.getEmpId()), "r.emp_id", query.getEmpId());
|
||||
//根据充值类型查询
|
||||
queryWrapper.eq(query.getRechargeType() != null, "r.recharge_type", query.getRechargeType());
|
||||
//根据开始时间查询
|
||||
queryWrapper.ge(query.getStartTime() != null, "r.create_time", query.getStartTime());
|
||||
//根据结束时间查询
|
||||
queryWrapper.le(query.getEndTime() != null, "r.create_time", query.getEndTime());
|
||||
return queryWrapper;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,74 +0,0 @@
|
||||
package top.wms.admin.consume.service.impl;
|
||||
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import top.continew.starter.extension.crud.model.query.PageQuery;
|
||||
import top.continew.starter.extension.crud.model.query.SortQuery;
|
||||
import top.continew.starter.extension.crud.model.resp.PageResp;
|
||||
import top.continew.starter.extension.crud.service.BaseServiceImpl;
|
||||
import top.continew.starter.file.excel.util.ExcelUtils;
|
||||
import top.wms.admin.consume.mapper.RecordMapper;
|
||||
import top.wms.admin.consume.model.entity.RecordDO;
|
||||
import top.wms.admin.consume.model.query.RecordQuery;
|
||||
import top.wms.admin.consume.model.req.RecordReq;
|
||||
import top.wms.admin.consume.model.resp.RecordResp;
|
||||
import top.wms.admin.consume.service.RecordService;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 消费记录业务实现
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/21 17:53
|
||||
*/
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class RecordServiceImpl extends BaseServiceImpl<RecordMapper, RecordDO, RecordResp, RecordResp, RecordQuery, RecordReq> implements RecordService {
|
||||
|
||||
@Override
|
||||
public PageResp<RecordResp> page(RecordQuery query, PageQuery pageQuery) {
|
||||
QueryWrapper<RecordDO> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq(StrUtil.isNotBlank(query.getEmpId()), "r.emp_id", query.getEmpId());
|
||||
queryWrapper.eq(StrUtil.isNotBlank(query.getOutTradeId()), "r.out_trade_id", query.getOutTradeId());
|
||||
queryWrapper.eq(null != query.getPayMode(), "r.pay_mode", query.getPayMode());
|
||||
queryWrapper.eq(null != query.getResultCode(), "r.result_code", query.getResultCode());
|
||||
queryWrapper.ge(null != query.getStartDate(), "r.start_date", query.getStartDate());
|
||||
queryWrapper.le(null != query.getEndDate(), "r.end_date", query.getEndDate());
|
||||
queryWrapper.le(null != query.getDevId(), "r.dev_id", query.getDevId());
|
||||
queryWrapper.like(StrUtil.isNotBlank(query.getAccountName()), "p.name", query.getAccountName());
|
||||
this.sort(queryWrapper, pageQuery);
|
||||
|
||||
IPage<RecordResp> page = baseMapper.selectRecordsPage(new Page<>(pageQuery.getPage(), pageQuery
|
||||
.getSize()), queryWrapper);
|
||||
|
||||
return PageResp.build(page);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void export(RecordQuery query, SortQuery sortQuery, HttpServletResponse response) {
|
||||
QueryWrapper<RecordDO> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq(StrUtil.isNotBlank(query.getEmpId()), "r.emp_id", query.getEmpId());
|
||||
queryWrapper.eq(StrUtil.isNotBlank(query.getOutTradeId()), "r.out_trade_id", query.getOutTradeId());
|
||||
queryWrapper.eq(null != query.getPayMode(), "r.pay_mode", query.getPayMode());
|
||||
queryWrapper.eq(null != query.getResultCode(), "r.result_code", query.getResultCode());
|
||||
queryWrapper.ge(null != query.getStartDate(), "r.start_date", query.getStartDate());
|
||||
queryWrapper.le(null != query.getEndDate(), "r.end_date", query.getEndDate());
|
||||
queryWrapper.le(null != query.getDevId(), "r.dev_id", query.getDevId());
|
||||
queryWrapper.like(StrUtil.isNotBlank(query.getAccountName()), "p.name", query.getAccountName());
|
||||
this.sort(queryWrapper, sortQuery);
|
||||
|
||||
List<RecordResp> list = baseMapper.selectRecordsExport(queryWrapper);
|
||||
|
||||
ExcelUtils.export(list, "消费记录_" + DateUtil.today(), this.getDetailClass(), response);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,129 +0,0 @@
|
||||
package top.wms.admin.consume.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import top.continew.starter.extension.crud.model.query.PageQuery;
|
||||
import top.continew.starter.extension.crud.model.resp.PageResp;
|
||||
import top.continew.starter.file.excel.util.ExcelUtils;
|
||||
import top.wms.admin.consume.mapper.ReportMapper;
|
||||
import top.wms.admin.consume.model.query.ReportQuery;
|
||||
import top.wms.admin.consume.model.resp.report.*;
|
||||
import top.wms.admin.consume.service.ReportService;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class ReportServiceImpl implements ReportService {
|
||||
|
||||
private final ReportMapper reportMapper;
|
||||
|
||||
/**
|
||||
* 查询商户报表
|
||||
*
|
||||
* @param query 查询参数
|
||||
* @return 商户报表列表
|
||||
*/
|
||||
@Override
|
||||
public List<MerchantReport> queryMerchantReport(ReportQuery query) {
|
||||
List<MerchantReport> list = reportMapper.queryMerchantReport(query);
|
||||
BaseReport totalReport = reportMapper.totalReport(query);
|
||||
MerchantReport merchantReport = new MerchantReport();
|
||||
merchantReport.setMerchant("总价");
|
||||
BeanUtil.copyProperties(totalReport, merchantReport);
|
||||
list.add(merchantReport);
|
||||
return list;
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询餐段报表
|
||||
*
|
||||
* @param query 查询参数
|
||||
* @return 餐段报表列表
|
||||
*/
|
||||
@Override
|
||||
public List<MealReport> queryMealReport(ReportQuery query) {
|
||||
List<MealReport> list = reportMapper.queryMealReport(query);
|
||||
BaseReport totalReport = reportMapper.totalReport(query);
|
||||
MealReport mealReport = new MealReport();
|
||||
mealReport.setMerchant("总价");
|
||||
BeanUtil.copyProperties(totalReport, mealReport);
|
||||
list.add(mealReport);
|
||||
return list;
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询部门报表
|
||||
*
|
||||
* @param query 查询参数
|
||||
* @return 部门报表列表
|
||||
*/
|
||||
@Override
|
||||
public List<BranchReport> queryBranchReport(ReportQuery query) {
|
||||
List<BranchReport> list = reportMapper.queryBranchReport(query);
|
||||
BaseReport totalReport = reportMapper.totalReport(query);
|
||||
BranchReport branchReport = new BranchReport();
|
||||
branchReport.setBranchName("总价");
|
||||
BeanUtil.copyProperties(totalReport, branchReport);
|
||||
list.add(branchReport);
|
||||
return list;
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询人员报表
|
||||
*
|
||||
* @param query 查询参数
|
||||
* @param pageQuery 分页查询参数
|
||||
* @return 人员报表分页列表
|
||||
*/
|
||||
@Override
|
||||
public PageResp<PeopleReport> page(ReportQuery query, PageQuery pageQuery) {
|
||||
int offset = (pageQuery.getPage() - 1) * pageQuery.getSize();
|
||||
List<PeopleReport> list = reportMapper.queryPeopleReport(query, pageQuery.getSize(), offset);
|
||||
long total = reportMapper.selectCount(query);
|
||||
return new PageResp<>(list, total);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void exportMerchant(ReportQuery query, HttpServletResponse response) {
|
||||
List<MerchantReport> list = reportMapper.queryMerchantReport(query);
|
||||
BaseReport totalReport = reportMapper.totalReport(query);
|
||||
MerchantReport merchantReport = new MerchantReport();
|
||||
merchantReport.setMerchant("总价");
|
||||
BeanUtil.copyProperties(totalReport, merchantReport);
|
||||
list.add(merchantReport);
|
||||
ExcelUtils.export(list, "商户营业报表_" + DateUtil.today(), MerchantReport.class, response);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void exportMeal(ReportQuery query, HttpServletResponse response) {
|
||||
List<MealReport> list = reportMapper.queryMealReport(query);
|
||||
BaseReport totalReport = reportMapper.totalReport(query);
|
||||
MealReport mealReport = new MealReport();
|
||||
mealReport.setMerchant("总价");
|
||||
BeanUtil.copyProperties(totalReport, mealReport);
|
||||
list.add(mealReport);
|
||||
ExcelUtils.export(list, "餐段消费报表_" + DateUtil.today(), MealReport.class, response);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void exportBranch(ReportQuery query, HttpServletResponse response) {
|
||||
List<BranchReport> list = reportMapper.queryBranchReport(query);
|
||||
BaseReport totalReport = reportMapper.totalReport(query);
|
||||
BranchReport branchReport = new BranchReport();
|
||||
branchReport.setBranchName("总价");
|
||||
BeanUtil.copyProperties(totalReport, branchReport);
|
||||
list.add(branchReport);
|
||||
ExcelUtils.export(list, "部门消费报表_" + DateUtil.today(), BranchReport.class, response);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void exportPeople(ReportQuery query, HttpServletResponse response) {
|
||||
List<PeopleReport> list = reportMapper.queryPeopleExport(query);
|
||||
ExcelUtils.export(list, "个人消费报表_" + DateUtil.today(), PeopleReport.class, response);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,25 +0,0 @@
|
||||
package top.wms.admin.consume.service.impl;
|
||||
|
||||
import lombok.RequiredArgsConstructor;
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import top.continew.starter.extension.crud.service.BaseServiceImpl;
|
||||
import top.wms.admin.consume.mapper.TenantMapper;
|
||||
import top.wms.admin.consume.model.entity.TenantDO;
|
||||
import top.wms.admin.consume.model.query.TenantQuery;
|
||||
import top.wms.admin.consume.model.req.TenantReq;
|
||||
import top.wms.admin.consume.model.resp.TenantResp;
|
||||
import top.wms.admin.consume.service.TenantService;
|
||||
|
||||
/**
|
||||
* 商户信息业务实现
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/30 14:55
|
||||
*/
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class TenantServiceImpl extends BaseServiceImpl<TenantMapper, TenantDO, TenantResp, TenantResp, TenantQuery, TenantReq> implements TenantService {
|
||||
|
||||
}
|
||||
@@ -1,25 +0,0 @@
|
||||
package top.wms.admin.consume.service.impl;
|
||||
|
||||
import lombok.RequiredArgsConstructor;
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import top.continew.starter.extension.crud.service.BaseServiceImpl;
|
||||
import top.wms.admin.consume.mapper.TimeIntervalMapper;
|
||||
import top.wms.admin.consume.model.entity.TimeIntervalDO;
|
||||
import top.wms.admin.consume.model.query.TimeIntervalQuery;
|
||||
import top.wms.admin.consume.model.req.TimeIntervalReq;
|
||||
import top.wms.admin.consume.model.resp.TimeIntervalResp;
|
||||
import top.wms.admin.consume.service.TimeIntervalService;
|
||||
|
||||
/**
|
||||
* 消费时段业务实现
|
||||
*
|
||||
* @author zc
|
||||
* @since 2026/01/30 14:56
|
||||
*/
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class TimeIntervalServiceImpl extends BaseServiceImpl<TimeIntervalMapper, TimeIntervalDO, TimeIntervalResp, TimeIntervalResp, TimeIntervalQuery, TimeIntervalReq> implements TimeIntervalService {
|
||||
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
package top.wms.admin.equipment.mapper;
|
||||
|
||||
import org.springframework.stereotype.Repository;
|
||||
import top.continew.starter.data.mp.base.BaseMapper;
|
||||
import top.wms.admin.equipment.model.entity.EquipmentDO;
|
||||
|
||||
/**
|
||||
* 设备信息 Mapper
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/03/26 17:14
|
||||
*/
|
||||
@Repository
|
||||
public interface EquipmentMapper extends BaseMapper<EquipmentDO> {
|
||||
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
package top.wms.admin.equipment.mapper;
|
||||
|
||||
import top.continew.starter.data.mp.base.BaseMapper;
|
||||
import top.wms.admin.equipment.model.entity.ProductDO;
|
||||
|
||||
/**
|
||||
* 产品信息 Mapper
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/05/26 15:18
|
||||
*/
|
||||
public interface ProductMapper extends BaseMapper<ProductDO> {}
|
||||
@@ -1,24 +0,0 @@
|
||||
package top.wms.admin.equipment.mapstruct;
|
||||
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.Mapping;
|
||||
import top.continew.starter.extension.crud.model.resp.LabelValueResp;
|
||||
import top.wms.admin.equipment.model.entity.EquipmentDO;
|
||||
import top.wms.admin.equipment.model.req.EquipmentReq;
|
||||
import top.wms.admin.equipment.model.resp.EquipmentResp;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Mapper(componentModel = "spring")
|
||||
public interface EquipmentConvert {
|
||||
|
||||
EquipmentResp DOToResp(EquipmentDO equipmentDO);
|
||||
|
||||
EquipmentReq RespToReq(EquipmentResp equipmentDO);
|
||||
|
||||
@Mapping(source = "id", target = "value")
|
||||
@Mapping(source = "name", target = "label")
|
||||
LabelValueResp labelValue(EquipmentDO equipmentDOS);
|
||||
|
||||
List<LabelValueResp> labelValueList(List<EquipmentDO> equipmentDOS);
|
||||
}
|
||||
@@ -1,20 +0,0 @@
|
||||
package top.wms.admin.equipment.mapstruct;
|
||||
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.Mapping;
|
||||
import top.continew.starter.extension.crud.model.resp.LabelValueResp;
|
||||
import top.wms.admin.equipment.model.entity.ProductDO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Mapper(componentModel = "spring")
|
||||
public interface ProductConvert {
|
||||
|
||||
@Mapping(source = "id", target = "value")
|
||||
@Mapping(source = "name", target = "label")
|
||||
@Mapping(source = "avatar", target = "extra")
|
||||
LabelValueResp labelValue(ProductDO productDO);
|
||||
|
||||
List<LabelValueResp> labelValueList(List<ProductDO> productDOS);
|
||||
|
||||
}
|
||||
@@ -1,91 +0,0 @@
|
||||
package top.wms.admin.equipment.model.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
import top.wms.admin.common.model.entity.BaseDO;
|
||||
|
||||
import java.io.Serial;
|
||||
|
||||
/**
|
||||
* 设备信息实体
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/03/26 17:10
|
||||
*/
|
||||
@Data
|
||||
@TableName("sys_equipment")
|
||||
public class EquipmentDO extends BaseDO {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 所属产品Id
|
||||
*/
|
||||
private Long productId;
|
||||
|
||||
/**
|
||||
* 设备名称
|
||||
*/
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 设备序列号
|
||||
*/
|
||||
private String sequence;
|
||||
|
||||
/**
|
||||
* 设备Ip
|
||||
*/
|
||||
private String ip;
|
||||
|
||||
/**
|
||||
* 设备密码
|
||||
*/
|
||||
private String password;
|
||||
|
||||
/**
|
||||
* 设备区域
|
||||
*/
|
||||
private Long spaceId;
|
||||
|
||||
/**
|
||||
* 设备位置
|
||||
*/
|
||||
private Long pointId;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 对接状态(0未对接 1对接成功)
|
||||
*/
|
||||
private Integer state;
|
||||
|
||||
/**
|
||||
* 设备状态(0在线 1离线)
|
||||
*/
|
||||
private String flag;
|
||||
|
||||
/**
|
||||
* 设备回调地址
|
||||
*/
|
||||
private String backUrl;
|
||||
|
||||
/**
|
||||
* 是否采集设备
|
||||
*/
|
||||
private String isCj;
|
||||
|
||||
/**
|
||||
* 门禁位置 1.进;2.出
|
||||
*/
|
||||
private String entryExitType;
|
||||
|
||||
/**
|
||||
* 文件类型 1.图片;2.视频
|
||||
*/
|
||||
private String fileType;
|
||||
}
|
||||
@@ -1,78 +0,0 @@
|
||||
package top.wms.admin.equipment.model.entity;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
|
||||
import top.wms.admin.common.model.entity.BaseDO;
|
||||
|
||||
import java.io.Serial;
|
||||
|
||||
/**
|
||||
* 产品信息实体
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/05/26 15:18
|
||||
*/
|
||||
@Data
|
||||
@TableName("sys_product")
|
||||
public class ProductDO extends BaseDO {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 产品图片地址
|
||||
*/
|
||||
private String avatar;
|
||||
|
||||
/**
|
||||
* 产品名称
|
||||
*/
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 产品型号
|
||||
*/
|
||||
private String version;
|
||||
|
||||
/**
|
||||
* 产品品类(大类)
|
||||
*/
|
||||
private String bigtype;
|
||||
|
||||
/**
|
||||
* 产品品类(小类)
|
||||
*/
|
||||
private String subtype;
|
||||
|
||||
/**
|
||||
* 节点类型
|
||||
*/
|
||||
private String genre;
|
||||
|
||||
/**
|
||||
* 产品描述
|
||||
*/
|
||||
private String describes;
|
||||
|
||||
/**
|
||||
* 联网方式
|
||||
*/
|
||||
private String network;
|
||||
|
||||
/**
|
||||
* 数据格式
|
||||
*/
|
||||
private String dataFormat;
|
||||
|
||||
/**
|
||||
* 数据校验级别
|
||||
*/
|
||||
private String scale;
|
||||
|
||||
/**
|
||||
* 认证方式
|
||||
*/
|
||||
private String attestation;
|
||||
}
|
||||
@@ -1,53 +0,0 @@
|
||||
package top.wms.admin.equipment.model.query;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
|
||||
import top.continew.starter.data.core.annotation.Query;
|
||||
import top.continew.starter.data.core.enums.QueryType;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 设备信息查询条件
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/03/26 17:14
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "设备信息查询条件")
|
||||
public class EquipmentQuery implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 设备名称
|
||||
*/
|
||||
@Schema(description = "设备名称")
|
||||
@Query(type = QueryType.LIKE)
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 设备序列号
|
||||
*/
|
||||
@Schema(description = "设备序列号")
|
||||
@Query(type = QueryType.EQ)
|
||||
private String sequence;
|
||||
|
||||
/**
|
||||
* 所属产品
|
||||
*/
|
||||
@Schema(description = "所属产品")
|
||||
@Query(type = QueryType.EQ)
|
||||
private Long productId;
|
||||
|
||||
/**
|
||||
* 设备状态(0在线 1离线)
|
||||
*/
|
||||
@Schema(description = "设备状态(0在线 1离线)")
|
||||
@Query(type = QueryType.EQ)
|
||||
private String flag;
|
||||
}
|
||||
@@ -1,47 +0,0 @@
|
||||
package top.wms.admin.equipment.model.query;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
|
||||
import top.continew.starter.data.core.annotation.Query;
|
||||
import top.continew.starter.data.core.enums.QueryType;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.time.*;
|
||||
|
||||
/**
|
||||
* 产品信息查询条件
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/05/26 15:18
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "产品信息查询条件")
|
||||
public class ProductQuery implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 产品名称
|
||||
*/
|
||||
@Schema(description = "产品名称")
|
||||
@Query(type = QueryType.LIKE)
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 产品名称
|
||||
*/
|
||||
@Schema(description = "产品型号")
|
||||
@Query(type = QueryType.LIKE)
|
||||
private String version;
|
||||
|
||||
/**
|
||||
* 产品名称
|
||||
*/
|
||||
@Schema(description = "节点类型")
|
||||
@Query(type = QueryType.EQ)
|
||||
private String genre;
|
||||
}
|
||||
@@ -1,142 +0,0 @@
|
||||
package top.wms.admin.equipment.model.req;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import lombok.Data;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* 创建或修改设备信息参数
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/03/26 16:40
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "创建或修改设备信息参数")
|
||||
public class EquipmentReq implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 设备Id
|
||||
*/
|
||||
@Schema(description = "设备Id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 所属产品Id
|
||||
*/
|
||||
@Schema(description = "所属产品Id")
|
||||
private Long productId;
|
||||
|
||||
/**
|
||||
* 设备名称
|
||||
*/
|
||||
@Schema(description = "设备名称")
|
||||
@NotBlank(message = "设备名称不能为空")
|
||||
@Length(max = 50, message = "设备名称长度不能超过 {max} 个字符")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 设备序列号
|
||||
*/
|
||||
@Schema(description = "设备序列号")
|
||||
@Length(max = 50, message = "设备序列号长度不能超过 {max} 个字符")
|
||||
private String sequence;
|
||||
|
||||
/**
|
||||
* 设备Ip
|
||||
*/
|
||||
@Schema(description = "设备Ip")
|
||||
@Length(max = 50, message = "设备Ip长度不能超过 {max} 个字符")
|
||||
private String ip;
|
||||
|
||||
/**
|
||||
* 设备密码
|
||||
*/
|
||||
@Schema(description = "设备密码")
|
||||
@Length(max = 50, message = "设备密码长度不能超过 {max} 个字符")
|
||||
private String password;
|
||||
|
||||
/**
|
||||
* 设备区域
|
||||
*/
|
||||
@Schema(description = "设备区域")
|
||||
private Long spaceId;
|
||||
|
||||
/**
|
||||
* 设备位置
|
||||
*/
|
||||
@Schema(description = "设备位置")
|
||||
private Long pointId;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@Schema(description = "备注")
|
||||
@Length(max = 200, message = "备注长度不能超过 {max} 个字符")
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@Schema(description = "")
|
||||
private Long createUser;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@Schema(description = "创建时间")
|
||||
private LocalDateTime createTime;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@Schema(description = "")
|
||||
private Long updateUser;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@Schema(description = "更新时间")
|
||||
private LocalDateTime updateTime;
|
||||
|
||||
/**
|
||||
* 对接状态(0未对接 1对接成功)
|
||||
*/
|
||||
@Schema(description = "对接状态(0未对接 1对接成功)")
|
||||
private Integer state;
|
||||
|
||||
/**
|
||||
* 设备状态(0在线 1离线)
|
||||
*/
|
||||
@Schema(description = "设备状态(0在线 1离线)")
|
||||
@Length(max = 50, message = "设备状态(0在线 1离线)长度不能超过 {max} 个字符")
|
||||
private String flag;
|
||||
|
||||
/*** 设备回调地址 ***/
|
||||
private String backUrl;
|
||||
|
||||
/**
|
||||
* 是否采集设备
|
||||
*/
|
||||
@Schema(description = "是否采集设备")
|
||||
private String isCj;
|
||||
|
||||
/**
|
||||
* 门卡号码
|
||||
*/
|
||||
private String doorNo;
|
||||
|
||||
/**
|
||||
* 门禁位置 1.进;2.出
|
||||
*/
|
||||
@Schema(description = "门禁位置 1.进;2.出")
|
||||
private String entryExitType;
|
||||
|
||||
}
|
||||
@@ -1,105 +0,0 @@
|
||||
package top.wms.admin.equipment.model.req;
|
||||
|
||||
import jakarta.validation.constraints.*;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.time.*;
|
||||
|
||||
/**
|
||||
* 创建或修改产品信息参数
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/05/26 15:18
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "创建或修改产品信息参数")
|
||||
public class ProductReq implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 产品图片地址
|
||||
*/
|
||||
@Schema(description = "产品图片地址")
|
||||
@Length(max = 500, message = "产品图片地址长度不能超过 {max} 个字符")
|
||||
private String avatar;
|
||||
|
||||
/**
|
||||
* 产品名称
|
||||
*/
|
||||
@Schema(description = "产品名称")
|
||||
@NotBlank(message = "产品名称不能为空")
|
||||
@Length(max = 50, message = "产品名称长度不能超过 {max} 个字符")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 产品型号
|
||||
*/
|
||||
@Schema(description = "产品型号")
|
||||
@Length(max = 500, message = "产品型号长度不能超过 {max} 个字符")
|
||||
private String version;
|
||||
|
||||
/**
|
||||
* 产品品类(大类)
|
||||
*/
|
||||
@Schema(description = "产品品类(大类)")
|
||||
@Length(max = 1, message = "产品品类(大类)长度不能超过 {max} 个字符")
|
||||
private String bigtype;
|
||||
|
||||
/**
|
||||
* 产品品类(小类)
|
||||
*/
|
||||
@Schema(description = "产品品类(小类)")
|
||||
@Length(max = 1, message = "产品品类(小类)长度不能超过 {max} 个字符")
|
||||
private String subtype;
|
||||
|
||||
/**
|
||||
* 节点类型
|
||||
*/
|
||||
@Schema(description = "节点类型")
|
||||
@Length(max = 1, message = "节点类型长度不能超过 {max} 个字符")
|
||||
private String genre;
|
||||
|
||||
/**
|
||||
* 产品描述
|
||||
*/
|
||||
@Schema(description = "产品描述")
|
||||
@Length(max = 200, message = "产品描述长度不能超过 {max} 个字符")
|
||||
private String describes;
|
||||
|
||||
/**
|
||||
* 联网方式
|
||||
*/
|
||||
@Schema(description = "联网方式")
|
||||
@Length(max = 1, message = "联网方式长度不能超过 {max} 个字符")
|
||||
private String network;
|
||||
|
||||
/**
|
||||
* 数据格式
|
||||
*/
|
||||
@Schema(description = "数据格式")
|
||||
@Length(max = 50, message = "数据格式长度不能超过 {max} 个字符")
|
||||
private String dataFormat;
|
||||
|
||||
/**
|
||||
* 数据校验级别
|
||||
*/
|
||||
@Schema(description = "数据校验级别")
|
||||
@Length(max = 50, message = "数据校验级别长度不能超过 {max} 个字符")
|
||||
private String scale;
|
||||
|
||||
/**
|
||||
* 认证方式
|
||||
*/
|
||||
@Schema(description = "认证方式")
|
||||
@Length(max = 1, message = "认证方式长度不能超过 {max} 个字符")
|
||||
private String attestation;
|
||||
}
|
||||
@@ -1,125 +0,0 @@
|
||||
package top.wms.admin.equipment.model.resp;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
|
||||
import top.wms.admin.common.model.resp.BaseDetailResp;
|
||||
|
||||
import java.io.Serial;
|
||||
|
||||
/**
|
||||
* 设备信息详情信息
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/03/26 17:11
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@Schema(description = "设备信息详情信息")
|
||||
public class EquipmentDetailResp extends BaseDetailResp {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 所属产品Id
|
||||
*/
|
||||
@Schema(description = "所属产品Id")
|
||||
@ExcelProperty(value = "所属产品Id")
|
||||
private Long productId;
|
||||
|
||||
/**
|
||||
* 设备名称
|
||||
*/
|
||||
@Schema(description = "设备名称")
|
||||
@ExcelProperty(value = "设备名称")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 设备序列号
|
||||
*/
|
||||
@Schema(description = "设备序列号")
|
||||
@ExcelProperty(value = "设备序列号")
|
||||
private String sequence;
|
||||
|
||||
/**
|
||||
* 设备Ip
|
||||
*/
|
||||
@Schema(description = "设备Ip")
|
||||
@ExcelProperty(value = "设备Ip")
|
||||
private String ip;
|
||||
|
||||
/**
|
||||
* 设备密码
|
||||
*/
|
||||
@Schema(description = "设备密码")
|
||||
@ExcelProperty(value = "设备密码")
|
||||
private String password;
|
||||
|
||||
/**
|
||||
* 设备区域
|
||||
*/
|
||||
@Schema(description = "设备区域")
|
||||
@ExcelProperty(value = "设备区域")
|
||||
private Long spaceId;
|
||||
|
||||
/**
|
||||
* 设备位置
|
||||
*/
|
||||
@Schema(description = "设备位置")
|
||||
@ExcelProperty(value = "设备位置")
|
||||
private Long pointId;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@Schema(description = "备注")
|
||||
@ExcelProperty(value = "备注")
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 对接状态(0未对接 1对接成功)
|
||||
*/
|
||||
@Schema(description = "对接状态(0未对接 1对接成功)")
|
||||
@ExcelProperty(value = "对接状态(0未对接 1对接成功)")
|
||||
private Integer state;
|
||||
|
||||
/**
|
||||
* 设备状态(0在线 1离线)
|
||||
*/
|
||||
@Schema(description = "设备状态(0在线 1离线)")
|
||||
@ExcelProperty(value = "设备状态(0在线 1离线)")
|
||||
private String flag;
|
||||
|
||||
/**
|
||||
* 设备回调地址
|
||||
*/
|
||||
@Schema(description = "设备回调地址")
|
||||
@ExcelProperty(value = "设备回调地址")
|
||||
private String backUrl;
|
||||
|
||||
/**
|
||||
* 是否采集设备
|
||||
*/
|
||||
@Schema(description = "是否采集设备")
|
||||
@ExcelProperty(value = "是否采集设备")
|
||||
private String isCj;
|
||||
|
||||
/**
|
||||
* 门禁位置 1.进;2.出
|
||||
*/
|
||||
@Schema(description = "门禁位置 1.进;2.出")
|
||||
@ExcelProperty(value = "门禁位置 1.进;2.出")
|
||||
private String entryExitType;
|
||||
|
||||
/**
|
||||
* 文件类型 1.图片;2.视频
|
||||
*/
|
||||
@Schema(description = "文件类型 1.图片;2.视频")
|
||||
@ExcelProperty(value = "文件类型 1.图片;2.视频")
|
||||
private String fileType;
|
||||
}
|
||||
@@ -1,141 +0,0 @@
|
||||
package top.wms.admin.equipment.model.resp;
|
||||
|
||||
import cn.crane4j.annotation.Assemble;
|
||||
import cn.crane4j.annotation.Mapping;
|
||||
import lombok.Data;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
|
||||
import top.wms.admin.common.constant.ContainerConstants;
|
||||
import top.wms.admin.common.model.resp.BaseResp;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.time.*;
|
||||
|
||||
/**
|
||||
* 设备信息信息
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/03/26 17:11
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "设备信息信息")
|
||||
public class EquipmentResp extends BaseResp {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 所属产品Id
|
||||
*/
|
||||
@Schema(description = "所属产品Id")
|
||||
@Assemble(props = @Mapping(src = "name", ref = "productName"), container = ContainerConstants.PRODUCT_NAME_AVATAR)
|
||||
@Assemble(props = @Mapping(src = "avatar", ref = "avatar"), container = ContainerConstants.PRODUCT_NAME_AVATAR)
|
||||
private Long productId;
|
||||
|
||||
/**
|
||||
* 产品名称
|
||||
*/
|
||||
@Schema(description = "产品名称")
|
||||
private String productName;
|
||||
|
||||
/**
|
||||
* 产品图片
|
||||
*/
|
||||
@Schema(description = "产品图片")
|
||||
private String avatar;
|
||||
|
||||
/**
|
||||
* 设备名称
|
||||
*/
|
||||
@Schema(description = "设备名称")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 设备序列号
|
||||
*/
|
||||
@Schema(description = "设备序列号")
|
||||
private String sequence;
|
||||
|
||||
/**
|
||||
* 设备Ip
|
||||
*/
|
||||
@Schema(description = "设备Ip")
|
||||
private String ip;
|
||||
|
||||
/**
|
||||
* 设备密码
|
||||
*/
|
||||
@Schema(description = "设备密码")
|
||||
private String password;
|
||||
|
||||
/**
|
||||
* 设备区域
|
||||
*/
|
||||
@Schema(description = "设备区域")
|
||||
private Long spaceId;
|
||||
|
||||
/**
|
||||
* 设备位置
|
||||
*/
|
||||
@Schema(description = "设备位置")
|
||||
private Long pointId;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@Schema(description = "备注")
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@Schema(description = "")
|
||||
private Long updateUser;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@Schema(description = "更新时间")
|
||||
private LocalDateTime updateTime;
|
||||
|
||||
/**
|
||||
* 对接状态(0未对接 1对接成功)
|
||||
*/
|
||||
@Schema(description = "对接状态(0未对接 1对接成功)")
|
||||
private Integer state;
|
||||
|
||||
/**
|
||||
* 设备状态(0在线 1离线)
|
||||
*/
|
||||
@Schema(description = "设备状态(0在线 1离线)")
|
||||
private String flag;
|
||||
|
||||
/**
|
||||
* 设备回调地址
|
||||
*/
|
||||
@Schema(description = "设备回调地址")
|
||||
private String backUrl;
|
||||
|
||||
/**
|
||||
* 是否采集设备
|
||||
*/
|
||||
@Schema(description = "是否采集设备")
|
||||
private String isCj;
|
||||
|
||||
/**
|
||||
* 门禁位置 1.进;2.出
|
||||
*/
|
||||
@Schema(description = "门禁位置 1.进;2.出")
|
||||
private String entryExitType;
|
||||
|
||||
/**
|
||||
* 文件类型 1.图片;2.视频
|
||||
*/
|
||||
@Schema(description = "文件类型 1.图片;2.视频")
|
||||
private String fileType;
|
||||
|
||||
/** 门卡号码 */
|
||||
@Schema(name = "卡号")
|
||||
private String doorNo;
|
||||
}
|
||||
@@ -1,105 +0,0 @@
|
||||
package top.wms.admin.equipment.model.resp;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
|
||||
import top.wms.admin.common.model.resp.BaseDetailResp;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.time.*;
|
||||
|
||||
/**
|
||||
* 产品信息详情信息
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/05/26 15:18
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@Schema(description = "产品信息详情信息")
|
||||
public class ProductDetailResp extends BaseDetailResp {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 产品图片地址
|
||||
*/
|
||||
@Schema(description = "产品图片地址")
|
||||
@ExcelProperty(value = "产品图片地址")
|
||||
private String avatar;
|
||||
|
||||
/**
|
||||
* 产品名称
|
||||
*/
|
||||
@Schema(description = "产品名称")
|
||||
@ExcelProperty(value = "产品名称")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 产品型号
|
||||
*/
|
||||
@Schema(description = "产品型号")
|
||||
@ExcelProperty(value = "产品型号")
|
||||
private String version;
|
||||
|
||||
/**
|
||||
* 产品品类(大类)
|
||||
*/
|
||||
@Schema(description = "产品品类(大类)")
|
||||
@ExcelProperty(value = "产品品类(大类)")
|
||||
private String bigtype;
|
||||
|
||||
/**
|
||||
* 产品品类(小类)
|
||||
*/
|
||||
@Schema(description = "产品品类(小类)")
|
||||
@ExcelProperty(value = "产品品类(小类)")
|
||||
private String subtype;
|
||||
|
||||
/**
|
||||
* 节点类型
|
||||
*/
|
||||
@Schema(description = "节点类型")
|
||||
@ExcelProperty(value = "节点类型")
|
||||
private String genre;
|
||||
|
||||
/**
|
||||
* 产品描述
|
||||
*/
|
||||
@Schema(description = "产品描述")
|
||||
@ExcelProperty(value = "产品描述")
|
||||
private String describes;
|
||||
|
||||
/**
|
||||
* 联网方式
|
||||
*/
|
||||
@Schema(description = "联网方式")
|
||||
@ExcelProperty(value = "联网方式")
|
||||
private String network;
|
||||
|
||||
/**
|
||||
* 数据格式
|
||||
*/
|
||||
@Schema(description = "数据格式")
|
||||
@ExcelProperty(value = "数据格式")
|
||||
private String dataFormat;
|
||||
|
||||
/**
|
||||
* 数据校验级别
|
||||
*/
|
||||
@Schema(description = "数据校验级别")
|
||||
@ExcelProperty(value = "数据校验级别")
|
||||
private String scale;
|
||||
|
||||
/**
|
||||
* 认证方式
|
||||
*/
|
||||
@Schema(description = "认证方式")
|
||||
@ExcelProperty(value = "认证方式")
|
||||
private String attestation;
|
||||
}
|
||||
@@ -1,102 +0,0 @@
|
||||
package top.wms.admin.equipment.model.resp;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
|
||||
import top.wms.admin.common.model.resp.BaseDetailResp;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.time.*;
|
||||
|
||||
/**
|
||||
* 产品信息信息
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/05/26 15:18
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "产品信息信息")
|
||||
public class ProductResp extends BaseDetailResp {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 产品图片地址
|
||||
*/
|
||||
@Schema(description = "产品图片地址")
|
||||
private String avatar;
|
||||
|
||||
/**
|
||||
* 产品名称
|
||||
*/
|
||||
@Schema(description = "产品名称")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 产品型号
|
||||
*/
|
||||
@Schema(description = "产品型号")
|
||||
private String version;
|
||||
|
||||
/**
|
||||
* 产品品类(大类)
|
||||
*/
|
||||
@Schema(description = "产品品类(大类)")
|
||||
private String bigtype;
|
||||
|
||||
/**
|
||||
* 产品品类(小类)
|
||||
*/
|
||||
@Schema(description = "产品品类(小类)")
|
||||
private String subtype;
|
||||
|
||||
/**
|
||||
* 节点类型
|
||||
*/
|
||||
@Schema(description = "节点类型")
|
||||
private String genre;
|
||||
|
||||
/**
|
||||
* 产品描述
|
||||
*/
|
||||
@Schema(description = "产品描述")
|
||||
private String describes;
|
||||
|
||||
/**
|
||||
* 联网方式
|
||||
*/
|
||||
@Schema(description = "联网方式")
|
||||
private String network;
|
||||
|
||||
/**
|
||||
* 数据格式
|
||||
*/
|
||||
@Schema(description = "数据格式")
|
||||
private String dataFormat;
|
||||
|
||||
/**
|
||||
* 数据校验级别
|
||||
*/
|
||||
@Schema(description = "数据校验级别")
|
||||
private String scale;
|
||||
|
||||
/**
|
||||
* 认证方式
|
||||
*/
|
||||
@Schema(description = "认证方式")
|
||||
private String attestation;
|
||||
|
||||
/**
|
||||
* 更新者
|
||||
*/
|
||||
@Schema(description = "更新者")
|
||||
private Long updateUser;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@Schema(description = "更新时间")
|
||||
private LocalDateTime updateTime;
|
||||
}
|
||||
@@ -1,27 +0,0 @@
|
||||
package top.wms.admin.equipment.service;
|
||||
|
||||
import top.continew.starter.extension.crud.model.resp.LabelValueResp;
|
||||
import top.continew.starter.extension.crud.service.BaseService;
|
||||
import top.wms.admin.equipment.model.query.EquipmentQuery;
|
||||
import top.wms.admin.equipment.model.req.EquipmentReq;
|
||||
import top.wms.admin.equipment.model.resp.EquipmentDetailResp;
|
||||
import top.wms.admin.equipment.model.resp.EquipmentResp;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 设备信息业务接口
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/03/26 17:14
|
||||
*/
|
||||
public interface EquipmentService extends BaseService<EquipmentResp, EquipmentDetailResp, EquipmentQuery, EquipmentReq> {
|
||||
|
||||
EquipmentResp selectSysEquipment(EquipmentReq equipment);
|
||||
|
||||
List<LabelValueResp> getEquipmentNameList(EquipmentReq equipmentReq);
|
||||
|
||||
EquipmentResp selectEquipmentById(Long id);
|
||||
|
||||
String getEquipmentName(Long id);
|
||||
}
|
||||
@@ -1,23 +0,0 @@
|
||||
package top.wms.admin.equipment.service;
|
||||
|
||||
import top.continew.starter.extension.crud.model.resp.LabelValueResp;
|
||||
import top.continew.starter.extension.crud.service.BaseService;
|
||||
import top.wms.admin.equipment.model.entity.ProductDO;
|
||||
import top.wms.admin.equipment.model.query.ProductQuery;
|
||||
import top.wms.admin.equipment.model.req.ProductReq;
|
||||
import top.wms.admin.equipment.model.resp.ProductResp;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 产品信息业务接口
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/05/26 15:18
|
||||
*/
|
||||
public interface ProductService extends BaseService<ProductResp, ProductResp, ProductQuery, ProductReq> {
|
||||
|
||||
List<ProductDO> getProductNameAvatarList();
|
||||
|
||||
List<LabelValueResp> getProductNameList();
|
||||
}
|
||||
@@ -1,119 +0,0 @@
|
||||
package top.wms.admin.equipment.service.impl;
|
||||
|
||||
import cn.crane4j.annotation.AutoOperate;
|
||||
import cn.crane4j.annotation.ContainerMethod;
|
||||
import cn.crane4j.annotation.MappingType;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import top.continew.starter.data.mp.util.QueryWrapperHelper;
|
||||
import top.continew.starter.extension.crud.model.query.PageQuery;
|
||||
import top.continew.starter.extension.crud.model.resp.LabelValueResp;
|
||||
import top.continew.starter.extension.crud.model.resp.PageResp;
|
||||
import top.continew.starter.extension.crud.service.BaseServiceImpl;
|
||||
import top.wms.admin.common.constant.ContainerConstants;
|
||||
import top.wms.admin.equipment.mapper.EquipmentMapper;
|
||||
import top.wms.admin.equipment.mapstruct.EquipmentConvert;
|
||||
import top.wms.admin.equipment.model.entity.EquipmentDO;
|
||||
import top.wms.admin.equipment.model.query.EquipmentQuery;
|
||||
import top.wms.admin.equipment.model.req.EquipmentReq;
|
||||
import top.wms.admin.equipment.model.resp.EquipmentDetailResp;
|
||||
import top.wms.admin.equipment.model.resp.EquipmentResp;
|
||||
import top.wms.admin.equipment.service.EquipmentService;
|
||||
import top.wms.admin.yfApi.service.IYFPushService;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 设备信息业务实现
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/03/26 17:14
|
||||
*/
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class EquipmentServiceImpl extends BaseServiceImpl<EquipmentMapper, EquipmentDO, EquipmentResp, EquipmentDetailResp, EquipmentQuery, EquipmentReq> implements EquipmentService {
|
||||
|
||||
private final EquipmentConvert equipmentConvert;
|
||||
|
||||
private final IYFPushService iyfPushService;
|
||||
|
||||
@Override
|
||||
@AutoOperate(type = EquipmentResp.class, on = "list")
|
||||
public PageResp<EquipmentResp> page(EquipmentQuery query, PageQuery pageQuery) {
|
||||
QueryWrapper<EquipmentDO> queryWrapper = QueryWrapperHelper.build(query, pageQuery.getSort());
|
||||
IPage<EquipmentDO> page = baseMapper.selectPage(new Page<>(pageQuery.getPage(), pageQuery
|
||||
.getSize()), queryWrapper);
|
||||
return PageResp.build(page.convert(equipmentConvert::DOToResp));
|
||||
}
|
||||
|
||||
@Override
|
||||
public EquipmentResp selectSysEquipment(EquipmentReq equipment) {
|
||||
LambdaQueryWrapper<EquipmentDO> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(ObjectUtil.isNotEmpty(equipment.getName()), EquipmentDO::getName, equipment.getName());
|
||||
queryWrapper.eq(null != equipment.getPointId(), EquipmentDO::getPointId, equipment.getPointId());
|
||||
queryWrapper.eq(StrUtil.isNotBlank(equipment.getFlag()), EquipmentDO::getFlag, equipment.getFlag());
|
||||
queryWrapper.eq(StrUtil.isNotBlank(equipment.getIsCj()), EquipmentDO::getIsCj, equipment.getIsCj());
|
||||
queryWrapper.eq(null != equipment.getProductId(), EquipmentDO::getProductId, equipment.getProductId());
|
||||
return equipmentConvert.DOToResp(baseMapper.selectOne(queryWrapper));
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<LabelValueResp> getEquipmentNameList(EquipmentReq equipmentReq) {
|
||||
LambdaQueryWrapper<EquipmentDO> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(null != equipmentReq.getPointId(), EquipmentDO::getPointId, equipmentReq.getPointId());
|
||||
queryWrapper.eq(StrUtil.isNotBlank(equipmentReq.getFlag()), EquipmentDO::getFlag, equipmentReq.getFlag());
|
||||
queryWrapper.eq(StrUtil.isNotBlank(equipmentReq.getIsCj()), EquipmentDO::getIsCj, equipmentReq.getIsCj());
|
||||
queryWrapper.eq(null != equipmentReq.getProductId(), EquipmentDO::getProductId, equipmentReq.getProductId());
|
||||
queryWrapper.orderByDesc(EquipmentDO::getId);
|
||||
List<EquipmentDO> equipmentDOS = baseMapper.selectList(queryWrapper);
|
||||
return equipmentConvert.labelValueList(equipmentDOS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public EquipmentResp selectEquipmentById(Long id) {
|
||||
LambdaQueryWrapper<EquipmentDO> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(null != id, EquipmentDO::getId, id);
|
||||
return equipmentConvert.DOToResp(baseMapper.selectOne(queryWrapper));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void afterAdd(EquipmentReq equipmentReq, EquipmentDO equipmentDO) {
|
||||
if (StringUtils.isNotEmpty(equipmentReq.getBackUrl())) {
|
||||
iyfPushService.setIdentifyCallBack(equipmentReq.getBackUrl(), equipmentDO.getIp(), equipmentDO
|
||||
.getPassword());
|
||||
iyfPushService.setDeviceHeartBeat(equipmentReq.getBackUrl(), equipmentDO.getIp(), equipmentDO
|
||||
.getPassword());
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void afterUpdate(EquipmentReq equipmentReq, EquipmentDO equipmentDO) {
|
||||
if (StringUtils.isNotEmpty(equipmentReq.getBackUrl())) {
|
||||
iyfPushService.setIdentifyCallBack(equipmentReq.getBackUrl(), equipmentDO.getIp(), equipmentDO
|
||||
.getPassword());
|
||||
iyfPushService.setDeviceHeartBeat(equipmentReq.getBackUrl(), equipmentDO.getIp(), equipmentDO
|
||||
.getPassword());
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@ContainerMethod(namespace = ContainerConstants.EQUIPMENT_NAME, type = MappingType.ORDER_OF_KEYS)
|
||||
public String getEquipmentName(Long id) {
|
||||
if (null == id) {
|
||||
return "";
|
||||
}
|
||||
|
||||
EquipmentDO equipmentDO = baseMapper.lambdaQuery().eq(EquipmentDO::getId, id).one();
|
||||
return equipmentDO != null ? equipmentDO.getName() : "";
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,47 +0,0 @@
|
||||
package top.wms.admin.equipment.service.impl;
|
||||
|
||||
import cn.crane4j.annotation.ContainerMethod;
|
||||
import cn.crane4j.annotation.MappingType;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import top.continew.starter.extension.crud.model.resp.LabelValueResp;
|
||||
import top.continew.starter.extension.crud.service.BaseServiceImpl;
|
||||
import top.wms.admin.common.constant.ContainerConstants;
|
||||
import top.wms.admin.equipment.mapper.ProductMapper;
|
||||
import top.wms.admin.equipment.mapstruct.ProductConvert;
|
||||
import top.wms.admin.equipment.model.entity.ProductDO;
|
||||
import top.wms.admin.equipment.model.query.ProductQuery;
|
||||
import top.wms.admin.equipment.model.req.ProductReq;
|
||||
import top.wms.admin.equipment.model.resp.ProductResp;
|
||||
import top.wms.admin.equipment.service.ProductService;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 产品信息业务实现
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/05/26 15:18
|
||||
*/
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class ProductServiceImpl extends BaseServiceImpl<ProductMapper, ProductDO, ProductResp, ProductResp, ProductQuery, ProductReq> implements ProductService {
|
||||
|
||||
private final ProductConvert productConvert;
|
||||
|
||||
@Override
|
||||
@ContainerMethod(namespace = ContainerConstants.PRODUCT_NAME_AVATAR, resultType = ProductDO.class, resultKey = "id", type = MappingType.ONE_TO_ONE)
|
||||
public List<ProductDO> getProductNameAvatarList() {
|
||||
return baseMapper.selectList(new QueryWrapper<ProductDO>().select("id", "avatar", "name"));
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<LabelValueResp> getProductNameList() {
|
||||
List<ProductDO> productDOS = baseMapper.selectList(new QueryWrapper<>());
|
||||
return productConvert.labelValueList(productDOS);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,21 +0,0 @@
|
||||
package top.wms.admin.peopleBranch.mapper;
|
||||
|
||||
// import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import org.springframework.stereotype.Repository;
|
||||
import top.continew.starter.data.mp.base.BaseMapper;
|
||||
import top.wms.admin.peopleBranch.model.entity.BranchDO;
|
||||
import top.wms.admin.peopleBranch.model.resp.BranchResp;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 部门管理 Mapper
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/03/19 17:46
|
||||
*/
|
||||
@Repository
|
||||
public interface BranchMapper extends BaseMapper<BranchDO> {
|
||||
|
||||
List<BranchResp> queryJuniorBranch(String branchId);
|
||||
}
|
||||
@@ -1,20 +0,0 @@
|
||||
package top.wms.admin.peopleBranch.mapper;
|
||||
|
||||
import org.springframework.stereotype.Repository;
|
||||
import top.continew.starter.data.mp.base.BaseMapper;
|
||||
import top.wms.admin.peopleBranch.model.entity.BranchRuleDO;
|
||||
import top.wms.admin.peopleBranch.model.resp.BranchRuleResp;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 通行规则 Mapper
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/03/26 22:59
|
||||
*/
|
||||
@Repository
|
||||
public interface BranchRuleMapper extends BaseMapper<BranchRuleDO> {
|
||||
|
||||
List<BranchRuleResp> selectRuleNames();
|
||||
}
|
||||
@@ -1,60 +0,0 @@
|
||||
package top.wms.admin.peopleBranch.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.springframework.stereotype.Repository;
|
||||
import top.continew.starter.data.mp.base.BaseMapper;
|
||||
import top.wms.admin.peopleBranch.model.entity.PeopleDO;
|
||||
import top.wms.admin.peopleBranch.model.resp.ConsumePeopleResp;
|
||||
import top.wms.admin.peopleBranch.model.resp.PeopleResp;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 人员管理业 Mapper
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/03/19 17:46
|
||||
*/
|
||||
@Repository
|
||||
public interface PeopleMapper extends BaseMapper<PeopleDO> {
|
||||
|
||||
/**
|
||||
* 导出消费人员充值列表
|
||||
*
|
||||
* @param queryWrapper
|
||||
* @return
|
||||
*/
|
||||
List<ConsumePeopleResp> selectExportConsume(@Param(Constants.WRAPPER) QueryWrapper<PeopleDO> queryWrapper);
|
||||
|
||||
/**
|
||||
* 导出人员列表
|
||||
*
|
||||
* @param queryWrapper
|
||||
* @return
|
||||
*/
|
||||
List<PeopleResp> selectExportPeople(@Param(Constants.WRAPPER) QueryWrapper<PeopleDO> queryWrapper);
|
||||
|
||||
/**
|
||||
* 分页查询人员充值列表
|
||||
*
|
||||
* @param objectPage
|
||||
* @param queryWrapper
|
||||
* @return
|
||||
*/
|
||||
IPage<ConsumePeopleResp> selectPageConsume(@Param("page") Page<Object> objectPage,
|
||||
@Param(Constants.WRAPPER) QueryWrapper<PeopleDO> queryWrapper);
|
||||
|
||||
/**
|
||||
* 分页查询人员充值列表
|
||||
*
|
||||
* @param objectPage
|
||||
* @param queryWrapper
|
||||
* @return
|
||||
*/
|
||||
IPage<PeopleResp> selectPeoplePage(@Param("page") Page<Object> objectPage,
|
||||
@Param(Constants.WRAPPER) QueryWrapper<PeopleDO> queryWrapper);
|
||||
}
|
||||
@@ -1,18 +0,0 @@
|
||||
package top.wms.admin.peopleBranch.mapstruct;
|
||||
|
||||
import org.mapstruct.Mapper;
|
||||
import top.wms.admin.peopleBranch.model.entity.BranchDO;
|
||||
import top.wms.admin.peopleBranch.model.req.BranchReq;
|
||||
import top.wms.admin.peopleBranch.model.resp.BranchResp;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Mapper(componentModel = "spring")
|
||||
public interface BranchConvert {
|
||||
|
||||
BranchResp branchDOToResp(BranchDO branchDO);
|
||||
|
||||
BranchDO branchReqToDO(BranchReq branchReq);
|
||||
|
||||
List<BranchResp> ListDOToResp(List<BranchDO> branchDOS);
|
||||
}
|
||||
@@ -1,33 +0,0 @@
|
||||
package top.wms.admin.peopleBranch.mapstruct;
|
||||
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.Mapping;
|
||||
import top.continew.starter.extension.crud.model.resp.LabelValueResp;
|
||||
import top.wms.admin.peopleBranch.model.entity.PeopleDO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Mapper(componentModel = "spring")
|
||||
public interface PeopleConvert {
|
||||
|
||||
List<LabelValueResp> labelValueList(List<PeopleDO> peopleDOS);
|
||||
|
||||
@Mapping(source = "id", target = "value")
|
||||
@Mapping(source = "name", target = "label")
|
||||
LabelValueResp labelValueResp(PeopleDO peopleDO);
|
||||
|
||||
/*@Mapping(target = "isConsume", expression = "java(convertEnableEnum(peopleDO.getIsConsume()))")
|
||||
ConsumePeopleResp toConsumePeopleResp(PeopleDO peopleDO);
|
||||
|
||||
default EnableEnum convertEnableEnum(Integer isConsume) {
|
||||
if (isConsume == null) {
|
||||
return null;
|
||||
}
|
||||
for (EnableEnum value : EnableEnum.values()) {
|
||||
if (value.getValue().equals(isConsume)) {
|
||||
return value;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}*/
|
||||
}
|
||||
@@ -1,55 +0,0 @@
|
||||
package top.wms.admin.peopleBranch.mapstruct;
|
||||
|
||||
import com.alibaba.excel.converters.Converter;
|
||||
import com.alibaba.excel.enums.CellDataTypeEnum;
|
||||
import com.alibaba.excel.metadata.GlobalConfiguration;
|
||||
import com.alibaba.excel.metadata.data.ReadCellData;
|
||||
import com.alibaba.excel.metadata.data.WriteCellData;
|
||||
import com.alibaba.excel.metadata.property.ExcelContentProperty;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
public class SexConverter implements Converter<Integer> {
|
||||
|
||||
private static final Map<Integer, String> SEX_MAP = new HashMap<>();
|
||||
static {
|
||||
SEX_MAP.put(1, "男");
|
||||
SEX_MAP.put(2, "女");
|
||||
SEX_MAP.put(4, "保密");
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class<?> supportJavaTypeKey() {
|
||||
return Integer.class; // 支持的 Java 类型
|
||||
}
|
||||
|
||||
@Override
|
||||
public CellDataTypeEnum supportExcelTypeKey() {
|
||||
return CellDataTypeEnum.STRING; // 写入 Excel 时用字符串
|
||||
}
|
||||
|
||||
@Override
|
||||
public WriteCellData<String> convertToExcelData(Integer value,
|
||||
ExcelContentProperty contentProperty,
|
||||
GlobalConfiguration globalConfiguration) {
|
||||
if (value == null) {
|
||||
return new WriteCellData<>("未知");
|
||||
}
|
||||
String label = SEX_MAP.getOrDefault(value, "未知");
|
||||
return new WriteCellData<>(label);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer convertToJavaData(ReadCellData<?> cellData,
|
||||
ExcelContentProperty contentProperty,
|
||||
GlobalConfiguration globalConfiguration) {
|
||||
String stringValue = cellData.getStringValue();
|
||||
for (Map.Entry<Integer, String> entry : SEX_MAP.entrySet()) {
|
||||
if (entry.getValue().equals(stringValue)) {
|
||||
return entry.getKey();
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -1,81 +0,0 @@
|
||||
package top.wms.admin.peopleBranch.model.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
import top.wms.admin.common.model.entity.BaseStrIdDO;
|
||||
|
||||
import java.io.Serial;
|
||||
|
||||
/**
|
||||
* 部门管理实体
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/03/19 17:40
|
||||
*/
|
||||
@Data
|
||||
@TableName("sys_branch")
|
||||
public class BranchDO extends BaseStrIdDO {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 部门名称
|
||||
*/
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 部门负责人
|
||||
*/
|
||||
private String leader;
|
||||
|
||||
/**
|
||||
* 联系电话
|
||||
*/
|
||||
private String phone;
|
||||
|
||||
/**
|
||||
* 父级Id
|
||||
*/
|
||||
private String parentId;
|
||||
|
||||
/**
|
||||
* 祖级列表
|
||||
*/
|
||||
private String ancestors;
|
||||
|
||||
/**
|
||||
* 所属空间
|
||||
*/
|
||||
private Long spaceId;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 关联部门
|
||||
*/
|
||||
private Long deptId;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private String level;
|
||||
|
||||
/**
|
||||
* 部门code
|
||||
*/
|
||||
private String deptCode;
|
||||
|
||||
/**
|
||||
* 梯控规则id
|
||||
*/
|
||||
private String ladderRuleId;
|
||||
|
||||
/**
|
||||
* 访客是否审核 0 否;1 是
|
||||
*/
|
||||
private String isExamine;
|
||||
}
|
||||
@@ -1,28 +0,0 @@
|
||||
package top.wms.admin.peopleBranch.model.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 通行规则实体
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/03/26 22:58
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@TableName("sys_branch_rule")
|
||||
public class BranchRuleDO {
|
||||
|
||||
/**
|
||||
* 部门id
|
||||
*/
|
||||
private String branchId;
|
||||
|
||||
/**
|
||||
* 规则id
|
||||
*/
|
||||
private Long ruleId;
|
||||
|
||||
}
|
||||
@@ -1,148 +0,0 @@
|
||||
package top.wms.admin.peopleBranch.model.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
import top.wms.admin.common.model.entity.BaseDO;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 人员管理实体
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/03/21 18:10
|
||||
*/
|
||||
@Data
|
||||
@TableName("sys_people")
|
||||
public class PeopleDO extends BaseDO {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 人员名称
|
||||
*/
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 联系电话
|
||||
*/
|
||||
private String phone;
|
||||
|
||||
/**
|
||||
* 用户性别(1男 2女 4保密)
|
||||
*/
|
||||
private Integer sex;
|
||||
|
||||
/**
|
||||
* 头像地址
|
||||
*/
|
||||
private String avatar;
|
||||
|
||||
/**
|
||||
* 所在部门
|
||||
*/
|
||||
private String branchId;
|
||||
|
||||
/**
|
||||
* 职位标签
|
||||
*/
|
||||
private String position;
|
||||
|
||||
/**
|
||||
* 身份证号码
|
||||
*/
|
||||
private String idcard;
|
||||
|
||||
/**
|
||||
* 门卡号码
|
||||
*/
|
||||
private String doorNo;
|
||||
|
||||
/**
|
||||
* 人员编号对接
|
||||
*/
|
||||
private String guid;
|
||||
|
||||
/**
|
||||
* 人像对接
|
||||
*/
|
||||
private String faceGuid;
|
||||
|
||||
/**
|
||||
* 关联用户
|
||||
*/
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 工号
|
||||
*/
|
||||
private String gh;
|
||||
|
||||
/**
|
||||
* 指纹特征值
|
||||
*/
|
||||
private String fingerprint;
|
||||
|
||||
/**
|
||||
* 入职时间
|
||||
*/
|
||||
private Date joinTime;
|
||||
|
||||
/**
|
||||
* 下发次数
|
||||
*/
|
||||
private Long down;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private String delFlag;
|
||||
|
||||
/**
|
||||
* 微信公众号id
|
||||
*/
|
||||
private String openid;
|
||||
|
||||
/**
|
||||
* 消费标志(0未同步 1已同步 2删除同步)
|
||||
*/
|
||||
private Integer xfFlag;
|
||||
|
||||
/**
|
||||
* 充值金额
|
||||
*/
|
||||
private BigDecimal czje;
|
||||
|
||||
/**
|
||||
* 补贴金额
|
||||
*/
|
||||
private BigDecimal btje;
|
||||
|
||||
/**
|
||||
* 是否消费 0:否,1:是
|
||||
*/
|
||||
private Integer isConsume;
|
||||
|
||||
/**
|
||||
* 消费金额
|
||||
*/
|
||||
private BigDecimal xfje;
|
||||
|
||||
/**
|
||||
* 消费次数
|
||||
*/
|
||||
private Integer xfcs;
|
||||
|
||||
/**
|
||||
* 是否冻结 0:否,1:是
|
||||
*/
|
||||
private Integer freeze;
|
||||
}
|
||||
@@ -1,39 +0,0 @@
|
||||
package top.wms.admin.peopleBranch.model.query;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
|
||||
import top.continew.starter.data.core.annotation.Query;
|
||||
import top.continew.starter.data.core.enums.QueryType;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 部门管理查询条件
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/03/19 17:40
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "部门管理查询条件")
|
||||
public class BranchQuery implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 部门名称
|
||||
*/
|
||||
@Schema(description = "部门名称")
|
||||
@Query(type = QueryType.EQ)
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 部门负责人
|
||||
*/
|
||||
@Schema(description = "部门负责人")
|
||||
@Query(type = QueryType.EQ)
|
||||
private String leader;
|
||||
}
|
||||
@@ -1,111 +0,0 @@
|
||||
package top.wms.admin.peopleBranch.model.query;
|
||||
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import top.continew.starter.data.core.annotation.Query;
|
||||
import top.continew.starter.data.core.enums.QueryType;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 人员管理查询条件
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/03/21 18:10
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "人员管理查询条件")
|
||||
@Builder
|
||||
public class PeopleQuery implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
private String id;
|
||||
|
||||
/**
|
||||
* 主键ids
|
||||
*/
|
||||
@Query(columns = {"id"}, type = QueryType.IN)
|
||||
private List<Long> ids;
|
||||
|
||||
/**
|
||||
* 人员名称
|
||||
*/
|
||||
@Schema(description = "人员名称")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 部门
|
||||
*/
|
||||
@Schema(description = "部门")
|
||||
private String branchId;
|
||||
|
||||
/**
|
||||
* 联系电话
|
||||
*/
|
||||
@Schema(description = "联系电话")
|
||||
private String phone;
|
||||
|
||||
/**
|
||||
* 身份证号码
|
||||
*/
|
||||
@Schema(description = "身份证号码")
|
||||
private String idcard;
|
||||
|
||||
/**
|
||||
* 是否注册
|
||||
*/
|
||||
@Schema(description = "是否注册")
|
||||
private String guidFlag;
|
||||
|
||||
/**
|
||||
* 是否下发
|
||||
*/
|
||||
@Schema(description = "是否下发")
|
||||
private String downFlag;
|
||||
|
||||
/**
|
||||
* 人脸注册
|
||||
*/
|
||||
@Schema(description = "人脸注册")
|
||||
private String faceFlag;
|
||||
|
||||
/**
|
||||
* 卡号注册
|
||||
*/
|
||||
@Schema(description = "卡号注册")
|
||||
private String cardFlag;
|
||||
|
||||
/**
|
||||
* 卡号
|
||||
*/
|
||||
@Schema(description = "卡号")
|
||||
private String doorNo;
|
||||
|
||||
/**
|
||||
* 工号
|
||||
*/
|
||||
@Schema(description = "工号")
|
||||
private String gh;
|
||||
|
||||
/**
|
||||
* 是否消费 0:否,1:是
|
||||
*/
|
||||
@Schema(description = "是否消费 0:否,1:是")
|
||||
private Integer isConsume;
|
||||
|
||||
/**
|
||||
* 是否冻结 0:否,1:是
|
||||
*/
|
||||
@Schema(description = "是否冻结 0:否,1:是")
|
||||
private Integer freeze;
|
||||
|
||||
}
|
||||
@@ -1,69 +0,0 @@
|
||||
package top.wms.admin.peopleBranch.model.req;
|
||||
|
||||
import jakarta.validation.constraints.*;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 创建或修改部门管理参数
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/03/19 17:40
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "创建或修改部门管理参数")
|
||||
public class BranchReq implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 部门名称
|
||||
*/
|
||||
@Schema(description = "部门名称")
|
||||
@NotBlank(message = "部门名称不能为空")
|
||||
@Length(max = 50, message = "部门名称长度不能超过 {max} 个字符")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 部门负责人
|
||||
*/
|
||||
@Schema(description = "部门负责人")
|
||||
@Length(max = 50, message = "部门负责人长度不能超过 {max} 个字符")
|
||||
private String leader;
|
||||
|
||||
/**
|
||||
* 联系电话
|
||||
*/
|
||||
@Schema(description = "联系电话")
|
||||
@Length(max = 50, message = "联系电话长度不能超过 {max} 个字符")
|
||||
private String phone;
|
||||
|
||||
/**
|
||||
* 父级Id
|
||||
*/
|
||||
@Schema(description = "父级Id")
|
||||
@NotBlank(message = "父级Id不能为空")
|
||||
@Length(max = 36, message = "父级Id长度不能超过 {max} 个字符")
|
||||
private String parentId;
|
||||
|
||||
/**
|
||||
* 关联部门
|
||||
*/
|
||||
@Schema(description = "关联部门")
|
||||
private Long deptId;
|
||||
|
||||
/**
|
||||
* 规则id
|
||||
*/
|
||||
@Schema(description = "规则ids")
|
||||
private List<Long> ruleIdList;
|
||||
}
|
||||
@@ -1,51 +0,0 @@
|
||||
package top.wms.admin.peopleBranch.model.req;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.Data;
|
||||
import top.wms.admin.common.enums.DisEnableStatusEnum;
|
||||
import top.wms.admin.system.enums.ImportPolicyEnum;
|
||||
|
||||
import java.io.Serial;
|
||||
|
||||
@Data
|
||||
@Schema(description = "人员导入参数")
|
||||
public class PeopleImportReq {
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 导入会话KEY
|
||||
*/
|
||||
@Schema(description = "导入会话KEY", example = "1b9d6bcd-bbfd-4b2d-9b5d-ab8dfbbd4bed")
|
||||
@NotBlank(message = "导入已过期,请重新上传")
|
||||
private String importKey;
|
||||
|
||||
/**
|
||||
* 用户重复策略
|
||||
*/
|
||||
@Schema(description = "重复用户策略", example = "1")
|
||||
@NotNull(message = "重复用户策略不能为空")
|
||||
private ImportPolicyEnum duplicateUser;
|
||||
|
||||
/**
|
||||
* 重复邮箱策略
|
||||
*/
|
||||
// @Schema(description = "重复邮箱策略", example = "1")
|
||||
// @NotNull(message = "重复邮箱策略不能为空")
|
||||
// private ImportPolicyEnum duplicateEmail;
|
||||
|
||||
/**
|
||||
* 重复手机策略
|
||||
*/
|
||||
// @Schema(description = "重复手机策略", example = "1")
|
||||
// @NotNull(message = "重复手机策略不能为空")
|
||||
// private ImportPolicyEnum duplicatePhone;
|
||||
|
||||
/**
|
||||
* 默认状态
|
||||
*/
|
||||
@Schema(description = "默认状态", example = "1")
|
||||
private DisEnableStatusEnum defaultStatus;
|
||||
}
|
||||
@@ -1,65 +0,0 @@
|
||||
package top.wms.admin.peopleBranch.model.req;
|
||||
|
||||
import cn.hutool.core.lang.RegexPool;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.Pattern;
|
||||
import lombok.Data;
|
||||
import top.wms.admin.common.constant.RegexConstants;
|
||||
import top.wms.admin.peopleBranch.mapstruct.SexConverter;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@Schema(description = "人员导入行数据")
|
||||
public class PeopleImportRowReq implements Serializable {
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 用户名
|
||||
*/
|
||||
@NotBlank(message = "用户名不能为空")
|
||||
@Pattern(regexp = RegexConstants.USERNAME, message = "用户名长度为 4-64 个字符,支持大小写字母、数字、下划线,以字母开头")
|
||||
@ExcelProperty(value = "姓名", order = 2)
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 部门名称
|
||||
*/
|
||||
@NotBlank(message = "所属部门不能为空")
|
||||
@ExcelProperty(value = "部门名称", order = 6)
|
||||
private String branchName;
|
||||
|
||||
/**
|
||||
* 性别
|
||||
*/
|
||||
@ExcelProperty(value = "性别", converter = SexConverter.class, order = 4)
|
||||
private Integer sex;
|
||||
|
||||
/**
|
||||
* 手机号码
|
||||
*/
|
||||
@Pattern(regexp = "^$|" + RegexPool.MOBILE, message = "手机号码格式错误")
|
||||
@ExcelProperty(value = "联系电话", order = 3)
|
||||
private String phone;
|
||||
|
||||
@ExcelProperty(value = "工号", order = 1)
|
||||
private String gh;
|
||||
|
||||
@ExcelProperty(value = "职位标签", order = 7)
|
||||
private String position;
|
||||
|
||||
@ExcelProperty(value = "身份证号码", order = 8)
|
||||
private String idcard;
|
||||
|
||||
@ExcelProperty(value = "卡号", order = 9)
|
||||
private String doorNo;
|
||||
|
||||
@ExcelProperty(value = "入职时间", order = 10)
|
||||
private Date joinTime;
|
||||
|
||||
}
|
||||
@@ -1,183 +0,0 @@
|
||||
package top.wms.admin.peopleBranch.model.req;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.Data;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 创建或修改人员管理参数
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/03/21 18:10
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "创建或修改人员管理参数")
|
||||
public class PeopleReq implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@Schema(description = "主键id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 人员名称
|
||||
*/
|
||||
@Schema(description = "人员名称")
|
||||
@NotBlank(message = "人员名称不能为空")
|
||||
@Length(max = 25, message = "人员名称长度不能超过 {max} 个字符")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 联系电话
|
||||
*/
|
||||
@Schema(description = "联系电话")
|
||||
@Length(max = 50, message = "联系电话长度不能超过 {max} 个字符")
|
||||
private String phone;
|
||||
|
||||
/**
|
||||
* 用户性别(0男 1女 2保密)
|
||||
*/
|
||||
@Schema(description = "用户性别(1男 2女 4保密)")
|
||||
private Integer sex;
|
||||
|
||||
/**
|
||||
* 头像地址
|
||||
*/
|
||||
@Schema(description = "头像地址")
|
||||
@Length(max = 500, message = "头像地址长度不能超过 {max} 个字符")
|
||||
private String avatar;
|
||||
|
||||
/**
|
||||
* 所在部门
|
||||
*/
|
||||
@Schema(description = "所在部门")
|
||||
@NotNull(message = "所属部门不能为空")
|
||||
@Length(max = 36, message = "所在部门长度不能超过 {max} 个字符")
|
||||
private String branchId;
|
||||
|
||||
/**
|
||||
* 职位标签
|
||||
*/
|
||||
@Schema(description = "职位标签")
|
||||
@Length(max = 50, message = "职位标签长度不能超过 {max} 个字符")
|
||||
private String position;
|
||||
|
||||
/**
|
||||
* 身份证号码
|
||||
*/
|
||||
@Schema(description = "身份证号码")
|
||||
@Length(max = 50, message = "身份证号码长度不能超过 {max} 个字符")
|
||||
private String idcard;
|
||||
|
||||
/**
|
||||
* 门卡号码
|
||||
*/
|
||||
@Schema(description = "门卡号码")
|
||||
@Length(max = 50, message = "门卡号码长度不能超过 {max} 个字符")
|
||||
private String doorNo;
|
||||
|
||||
/**
|
||||
* 人员编号对接
|
||||
*/
|
||||
@Schema(description = "人员编号对接")
|
||||
@Length(max = 200, message = "人员编号对接长度不能超过 {max} 个字符")
|
||||
private String guid;
|
||||
|
||||
/**
|
||||
* 人像对接
|
||||
*/
|
||||
@Schema(description = "人像对接")
|
||||
@Length(max = 200, message = "人像对接长度不能超过 {max} 个字符")
|
||||
private String faceGuid;
|
||||
|
||||
/**
|
||||
* 关联用户
|
||||
*/
|
||||
@Schema(description = "关联用户")
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@Schema(description = "备注")
|
||||
@Length(max = 200, message = "备注长度不能超过 {max} 个字符")
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 工号
|
||||
*/
|
||||
@Schema(description = "工号")
|
||||
@NotNull(message = "工号不能为空")
|
||||
@Length(max = 8, message = "工号长度不能超过 {max} 个字符")
|
||||
private String gh;
|
||||
|
||||
/**
|
||||
* 指纹特征值
|
||||
*/
|
||||
@Schema(description = "指纹特征值")
|
||||
@Length(max = 255, message = "指纹特征值长度不能超过 {max} 个字符")
|
||||
private String fingerprint;
|
||||
|
||||
/**
|
||||
* 入职时间
|
||||
*/
|
||||
@Schema(description = "入职时间")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private Date joinTime;
|
||||
|
||||
/**
|
||||
* 入职时间
|
||||
*/
|
||||
@Schema(description = "入职时间")
|
||||
private Long down;
|
||||
|
||||
/**
|
||||
* 是否需要下发设备(用于修改人员信息时,校验是否修改人员姓名,照片等需要下发的设备的参数)
|
||||
*/
|
||||
@Schema(description = "是否需要下发设备")
|
||||
private Boolean needDown = false;
|
||||
|
||||
/**
|
||||
* 人员id列表
|
||||
*/
|
||||
@Schema(description = "人员id列表")
|
||||
private List<Long> ids;
|
||||
|
||||
/**
|
||||
* 消费充值的金额or补贴的金额
|
||||
*/
|
||||
@Schema(description = "金额")
|
||||
private BigDecimal money;
|
||||
|
||||
/**
|
||||
* 是否消费 0:否,1:是
|
||||
*/
|
||||
@Schema(description = "是否消费 0:否,1:是")
|
||||
private Integer isConsume;
|
||||
|
||||
/**
|
||||
* 一键清零所有人 0:否,1:是
|
||||
*/
|
||||
@Schema(description = "一键清零所有人 0:否,1:是")
|
||||
private Integer resetMoneyAll;
|
||||
|
||||
/**
|
||||
* 一键清零金额种类 0:全部,1:充值,2:补贴
|
||||
*/
|
||||
@Schema(description = "一键清零金额种类 0:全部,1:充值,2:补贴")
|
||||
private Integer resetMoneyType;
|
||||
|
||||
}
|
||||
@@ -1,114 +0,0 @@
|
||||
package top.wms.admin.peopleBranch.model.resp;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import top.wms.admin.common.model.resp.BaseStrIdResp;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 部门管理信息
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/03/19 17:46
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "部门管理信息")
|
||||
public class BranchResp extends BaseStrIdResp {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 部门名称
|
||||
*/
|
||||
@Schema(description = "部门名称")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 部门负责人
|
||||
*/
|
||||
@Schema(description = "部门负责人")
|
||||
private String leader;
|
||||
|
||||
/**
|
||||
* 联系电话
|
||||
*/
|
||||
@Schema(description = "联系电话")
|
||||
private String phone;
|
||||
|
||||
/**
|
||||
* 父级Id
|
||||
*/
|
||||
@Schema(description = "父级Id")
|
||||
private String parentId;
|
||||
|
||||
/**
|
||||
* 祖级列表
|
||||
*/
|
||||
@Schema(description = "祖级列表")
|
||||
private String ancestors;
|
||||
|
||||
/**
|
||||
* 所属空间
|
||||
*/
|
||||
@Schema(description = "所属空间")
|
||||
private Long spaceId;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@Schema(description = "备注")
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@Schema(description = "更新时间")
|
||||
private LocalDateTime updateTime;
|
||||
|
||||
/**
|
||||
* 关联部门
|
||||
*/
|
||||
@Schema(description = "关联部门")
|
||||
private Long deptId;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@Schema(description = "")
|
||||
private String level;
|
||||
|
||||
/**
|
||||
* 部门code
|
||||
*/
|
||||
@Schema(description = "部门code")
|
||||
private String deptCode;
|
||||
|
||||
/**
|
||||
* 规则ids
|
||||
*/
|
||||
@Schema(description = "规则ids")
|
||||
private List<Long> ruleIdList;
|
||||
|
||||
/**
|
||||
* 规则名称
|
||||
*/
|
||||
@Schema(description = "规则名称")
|
||||
private String ruleNames;
|
||||
|
||||
/**
|
||||
* 梯控规则id
|
||||
*/
|
||||
@Schema(description = "梯控规则id")
|
||||
private String ladderRuleId;
|
||||
|
||||
/**
|
||||
* 访客是否审核 0 否;1 是
|
||||
*/
|
||||
@Schema(description = "访客是否审核 0 否;1 是")
|
||||
private String isExamine;
|
||||
|
||||
}
|
||||
@@ -1,22 +0,0 @@
|
||||
package top.wms.admin.peopleBranch.model.resp;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class BranchRuleResp {
|
||||
|
||||
/**
|
||||
* 部门id
|
||||
*/
|
||||
private String branchId;
|
||||
|
||||
/**
|
||||
* 规则id
|
||||
*/
|
||||
private Long ruleId;
|
||||
|
||||
/**
|
||||
* 规则名称
|
||||
*/
|
||||
private String ruleName;
|
||||
}
|
||||
@@ -1,233 +0,0 @@
|
||||
package top.wms.admin.peopleBranch.model.resp;
|
||||
|
||||
import cn.crane4j.annotation.Assemble;
|
||||
import cn.crane4j.core.executor.handler.ManyToManyAssembleOperationHandler;
|
||||
import com.alibaba.excel.annotation.ExcelIgnore;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import com.alibaba.excel.annotation.write.style.ColumnWidth;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import top.continew.starter.file.excel.converter.ExcelBaseEnumConverter;
|
||||
import top.wms.admin.common.constant.ContainerConstants;
|
||||
import top.wms.admin.common.enums.EnableEnum;
|
||||
import top.wms.admin.common.enums.YesNoEnum;
|
||||
import top.wms.admin.common.model.resp.BaseDetailResp;
|
||||
import top.wms.admin.peopleBranch.mapstruct.SexConverter;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 消费人员管理信息
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/03/21 18:10
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "人员管理信息")
|
||||
public class ConsumePeopleResp extends BaseDetailResp {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 人员名称
|
||||
*/
|
||||
@Schema(description = "人员名称")
|
||||
@ExcelProperty(value = "姓名", order = 1)
|
||||
@ColumnWidth(10)
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 联系电话
|
||||
*/
|
||||
@Schema(description = "联系电话")
|
||||
@ExcelIgnore
|
||||
private String phone;
|
||||
|
||||
/**
|
||||
* 用户性别(1男 2女 4保密)
|
||||
*/
|
||||
@Schema(description = "用户性别(1男 2女 4保密)")
|
||||
@ExcelProperty(value = "性别", converter = SexConverter.class, order = 3)
|
||||
private Integer sex;
|
||||
|
||||
/**
|
||||
* 头像地址
|
||||
*/
|
||||
@Schema(description = "头像地址")
|
||||
@ExcelIgnore
|
||||
private String avatar;
|
||||
|
||||
/**
|
||||
* 所在部门
|
||||
*/
|
||||
@Schema(description = "所在部门")
|
||||
@Assemble(prop = ":branchName", container = ContainerConstants.BRANCH_NAME, handlerType = ManyToManyAssembleOperationHandler.class)
|
||||
@ExcelIgnore
|
||||
private String branchId;
|
||||
|
||||
/**
|
||||
* 所在部门名称
|
||||
*/
|
||||
@Schema(description = "所在部门名称")
|
||||
@ExcelProperty(value = "部门名称", order = 4)
|
||||
private String branchName;
|
||||
|
||||
/**
|
||||
* 职位标签
|
||||
*/
|
||||
@Schema(description = "职位标签")
|
||||
@ExcelIgnore
|
||||
private String position;
|
||||
|
||||
/**
|
||||
* 身份证号码
|
||||
*/
|
||||
@Schema(description = "身份证号码")
|
||||
@ExcelIgnore
|
||||
private String idcard;
|
||||
|
||||
/**
|
||||
* 门卡号码
|
||||
*/
|
||||
@Schema(description = "门卡号码")
|
||||
@ExcelIgnore
|
||||
private String doorNo;
|
||||
|
||||
/**
|
||||
* 人员编号对接
|
||||
*/
|
||||
@Schema(description = "人员编号对接")
|
||||
@ExcelIgnore
|
||||
private String guid;
|
||||
|
||||
/**
|
||||
* 人像对接
|
||||
*/
|
||||
@Schema(description = "人像对接")
|
||||
@ExcelIgnore
|
||||
private String faceGuid;
|
||||
|
||||
/**
|
||||
* 关联用户
|
||||
*/
|
||||
@Schema(description = "关联用户")
|
||||
@ExcelIgnore
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 关联用户
|
||||
*/
|
||||
@Schema(description = "关联用户")
|
||||
@ExcelIgnore
|
||||
private String userName;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@Schema(description = "备注")
|
||||
@ExcelIgnore
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@Schema(description = "更新时间")
|
||||
@ExcelIgnore
|
||||
private LocalDateTime updateTime;
|
||||
|
||||
/**
|
||||
* 工号
|
||||
*/
|
||||
@Schema(description = "工号")
|
||||
@ExcelProperty(value = "工号", order = 2)
|
||||
@ColumnWidth(30)
|
||||
private String gh;
|
||||
|
||||
/**
|
||||
* 指纹特征值
|
||||
*/
|
||||
@Schema(description = "指纹特征值")
|
||||
@ExcelIgnore
|
||||
private String fingerprint;
|
||||
|
||||
/**
|
||||
* 入职时间
|
||||
*/
|
||||
@Schema(description = "入职时间")
|
||||
@ExcelIgnore
|
||||
private Date joinTime;
|
||||
|
||||
/**
|
||||
* 下发次数
|
||||
*/
|
||||
@Schema(description = "下发次数")
|
||||
@ExcelIgnore
|
||||
private Long down;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@Schema(description = "")
|
||||
@ExcelIgnore
|
||||
private String delFlag;
|
||||
|
||||
/**
|
||||
* 微信公众号id
|
||||
*/
|
||||
@Schema(description = "微信公众号id")
|
||||
@ExcelIgnore
|
||||
private String openid;
|
||||
|
||||
/**
|
||||
* 消费标志(0未同步 1已同步 2删除同步)
|
||||
*/
|
||||
@Schema(description = "消费标志(0未同步 1已同步 2删除同步)")
|
||||
@ExcelIgnore
|
||||
private Integer xfFlag;
|
||||
|
||||
/**
|
||||
* 充值金额
|
||||
*/
|
||||
@Schema(description = "充值金额")
|
||||
@ExcelProperty(value = "充值金额", order = 5)
|
||||
private BigDecimal czje = BigDecimal.ZERO;
|
||||
|
||||
/**
|
||||
* 补贴金额
|
||||
*/
|
||||
@Schema(description = "补贴金额")
|
||||
@ExcelProperty(value = "补贴金额", order = 6)
|
||||
private BigDecimal btje = BigDecimal.ZERO;
|
||||
|
||||
/**
|
||||
* 是否消费 0:否,1:是
|
||||
*/
|
||||
@Schema(description = "是否启用消费 0:否,1:是")
|
||||
@ExcelProperty(value = "是否启用消费", converter = ExcelBaseEnumConverter.class, order = 7)
|
||||
private EnableEnum isConsume;
|
||||
|
||||
/**
|
||||
* 消费金额
|
||||
*/
|
||||
@Schema(description = "消费金额")
|
||||
@ExcelIgnore
|
||||
private BigDecimal xfje = BigDecimal.ZERO;
|
||||
|
||||
/**
|
||||
* 消费次数
|
||||
*/
|
||||
@Schema(description = "消费次数")
|
||||
@ExcelIgnore
|
||||
private Integer xfcs;
|
||||
|
||||
/**
|
||||
* 是否冻结 0:否,1:是
|
||||
*/
|
||||
@Schema(description = "是否冻结 0:否,1:是")
|
||||
@ExcelProperty(value = "是否冻结", converter = ExcelBaseEnumConverter.class, order = 8)
|
||||
private YesNoEnum freeze;
|
||||
}
|
||||
@@ -1,51 +0,0 @@
|
||||
package top.wms.admin.peopleBranch.model.resp;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Schema(description = "人员导入解析结果")
|
||||
public class PeopleImportParseResp implements Serializable {
|
||||
/**
|
||||
* 导入会话 Key
|
||||
*/
|
||||
@Schema(description = "导入会话Key", example = "1b9d6bcd-bbfd-4b2d-9b5d-ab8dfbbd4bed")
|
||||
private String importKey;
|
||||
|
||||
/**
|
||||
* 总计行数
|
||||
*/
|
||||
@Schema(description = "总计行数", example = "100")
|
||||
private Integer totalRows;
|
||||
|
||||
/**
|
||||
* 有效行数
|
||||
*/
|
||||
@Schema(description = "有效行数", example = "100")
|
||||
private Integer validRows;
|
||||
|
||||
/**
|
||||
* 重复人员行数
|
||||
*/
|
||||
@Schema(description = "重复行数", example = "100")
|
||||
private Integer duplicatePeopleRows;
|
||||
|
||||
//
|
||||
// /**
|
||||
// * 重复工号行数
|
||||
// */
|
||||
// @Schema(description = "重复邮箱行数", example = "100")
|
||||
// private Integer duplicateEmailRows;
|
||||
//
|
||||
// /**
|
||||
// * 重复卡号行数
|
||||
// */
|
||||
// @Schema(description = "重复手机行数", example = "100")
|
||||
// private Integer duplicatePhoneRows;
|
||||
}
|
||||
@@ -1,31 +0,0 @@
|
||||
package top.wms.admin.peopleBranch.model.resp;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Schema(description = "人员导入结果")
|
||||
public class PeopleImportResp {
|
||||
private static final long serialVersionUID = 1L;
|
||||
/**
|
||||
* 总计行数
|
||||
*/
|
||||
@Schema(description = "总计行数", example = "100")
|
||||
private Integer totalRows;
|
||||
|
||||
/**
|
||||
* 新增行数
|
||||
*/
|
||||
@Schema(description = "新增行数", example = "100")
|
||||
private Integer insertRows;
|
||||
|
||||
/**
|
||||
* 修改行数
|
||||
*/
|
||||
@Schema(description = "修改行数", example = "100")
|
||||
private Integer updateRows;
|
||||
}
|
||||
@@ -1,237 +0,0 @@
|
||||
package top.wms.admin.peopleBranch.model.resp;
|
||||
|
||||
import cn.crane4j.annotation.Assemble;
|
||||
import cn.crane4j.core.executor.handler.ManyToManyAssembleOperationHandler;
|
||||
import com.alibaba.excel.annotation.ExcelIgnore;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import com.alibaba.excel.annotation.write.style.ColumnWidth;
|
||||
import lombok.Data;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
|
||||
import top.wms.admin.common.constant.ContainerConstants;
|
||||
import top.wms.admin.common.model.resp.BaseDetailResp;
|
||||
import top.wms.admin.peopleBranch.mapstruct.SexConverter;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.math.BigDecimal;
|
||||
import java.time.*;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 人员管理信息
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/03/21 18:10
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "人员管理信息")
|
||||
public class PeopleResp extends BaseDetailResp {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 人员名称
|
||||
*/
|
||||
@Schema(description = "人员名称")
|
||||
@ExcelProperty(value = "姓名", order = 2)
|
||||
@ColumnWidth(10)
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 联系电话
|
||||
*/
|
||||
@Schema(description = "联系电话")
|
||||
@ExcelProperty(value = "联系电话", order = 3)
|
||||
@ColumnWidth(15)
|
||||
private String phone;
|
||||
|
||||
/**
|
||||
* 用户性别(1男 2女 4保密)
|
||||
*/
|
||||
@Schema(description = "用户性别(1男 2女 4保密)")
|
||||
@ExcelProperty(value = "性别", converter = SexConverter.class, order = 4)
|
||||
private Integer sex;
|
||||
|
||||
/**
|
||||
* 头像地址
|
||||
*/
|
||||
@Schema(description = "头像地址")
|
||||
@ExcelIgnore
|
||||
private String avatar;
|
||||
|
||||
/**
|
||||
* 所在部门
|
||||
*/
|
||||
@Schema(description = "所在部门")
|
||||
@ExcelIgnore
|
||||
@Assemble(prop = ":branchName", container = ContainerConstants.BRANCH_NAME, handlerType = ManyToManyAssembleOperationHandler.class)
|
||||
private String branchId;
|
||||
|
||||
/**
|
||||
* 所在部门名称
|
||||
*/
|
||||
@Schema(description = "所在部门名称")
|
||||
@ExcelProperty(value = "部门名称", order = 5)
|
||||
private String branchName;
|
||||
|
||||
/**
|
||||
* 职位标签
|
||||
*/
|
||||
@Schema(description = "职位标签")
|
||||
@ExcelProperty(value = "职位标签", order = 6)
|
||||
private String position;
|
||||
|
||||
/**
|
||||
* 身份证号码
|
||||
*/
|
||||
@Schema(description = "身份证号码")
|
||||
@ExcelProperty(value = "身份证号码", order = 7)
|
||||
@ColumnWidth(25)
|
||||
private String idcard;
|
||||
|
||||
/**
|
||||
* 门卡号码
|
||||
*/
|
||||
@Schema(description = "门卡号码")
|
||||
@ExcelProperty(value = "卡号", order = 8)
|
||||
@ColumnWidth(15)
|
||||
private String doorNo;
|
||||
|
||||
/**
|
||||
* 人员编号对接
|
||||
*/
|
||||
@Schema(description = "人员编号对接")
|
||||
@ExcelIgnore
|
||||
private String guid;
|
||||
|
||||
/**
|
||||
* 人像对接
|
||||
*/
|
||||
@Schema(description = "人像对接")
|
||||
@ExcelIgnore
|
||||
private String faceGuid;
|
||||
|
||||
/**
|
||||
* 关联用户
|
||||
*/
|
||||
@Schema(description = "关联用户")
|
||||
@Assemble(prop = ":userName", container = ContainerConstants.USER_NAME, handlerType = ManyToManyAssembleOperationHandler.class)
|
||||
@ExcelIgnore
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 关联用户
|
||||
*/
|
||||
@Schema(description = "关联用户")
|
||||
@ExcelIgnore
|
||||
private String userName;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@Schema(description = "备注")
|
||||
@ExcelIgnore
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@Schema(description = "更新时间")
|
||||
@ExcelIgnore
|
||||
private LocalDateTime updateTime;
|
||||
|
||||
/**
|
||||
* 工号
|
||||
*/
|
||||
@Schema(description = "工号")
|
||||
@ExcelProperty(value = "工号", order = 1)
|
||||
@ColumnWidth(30)
|
||||
private String gh;
|
||||
|
||||
/**
|
||||
* 指纹特征值
|
||||
*/
|
||||
@Schema(description = "指纹特征值")
|
||||
@ExcelIgnore
|
||||
private String fingerprint;
|
||||
|
||||
/**
|
||||
* 入职时间
|
||||
*/
|
||||
@Schema(description = "入职时间")
|
||||
@ExcelProperty(value = "入职时间", order = 9)
|
||||
@ColumnWidth(35)
|
||||
private Date joinTime;
|
||||
|
||||
/**
|
||||
* 下发次数
|
||||
*/
|
||||
@Schema(description = "下发次数")
|
||||
@ExcelIgnore
|
||||
private Long down;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@Schema(description = "")
|
||||
@ExcelIgnore
|
||||
private String delFlag;
|
||||
|
||||
/**
|
||||
* 微信公众号id
|
||||
*/
|
||||
@Schema(description = "微信公众号id")
|
||||
@ExcelIgnore
|
||||
private String openid;
|
||||
|
||||
/**
|
||||
* 消费标志(0未同步 1已同步 2删除同步)
|
||||
*/
|
||||
@Schema(description = "消费标志(0未同步 1已同步 2删除同步)")
|
||||
@ExcelIgnore
|
||||
private Integer xfFlag;
|
||||
|
||||
/**
|
||||
* 充值金额
|
||||
*/
|
||||
@Schema(description = "充值金额")
|
||||
@ExcelIgnore
|
||||
private BigDecimal czje;
|
||||
|
||||
/**
|
||||
* 补贴金额
|
||||
*/
|
||||
@Schema(description = "补贴金额")
|
||||
@ExcelIgnore
|
||||
private BigDecimal btje;
|
||||
|
||||
/**
|
||||
* 是否消费 0:否,1:是
|
||||
*/
|
||||
@Schema(description = "是否消费 0:否,1:是")
|
||||
@ExcelIgnore
|
||||
private Integer isConsume;
|
||||
|
||||
/**
|
||||
* 消费金额
|
||||
*/
|
||||
@Schema(description = "消费金额")
|
||||
@ExcelIgnore
|
||||
private BigDecimal xfje;
|
||||
|
||||
/**
|
||||
* 消费次数
|
||||
*/
|
||||
@Schema(description = "消费次数")
|
||||
@ExcelIgnore
|
||||
private Integer xfcs;
|
||||
|
||||
/**
|
||||
* 是否冻结 0:否,1:是
|
||||
*/
|
||||
@Schema(description = "是否冻结 0:否,1:是")
|
||||
@ExcelIgnore
|
||||
private Integer freeze;
|
||||
}
|
||||
@@ -1,35 +0,0 @@
|
||||
package top.wms.admin.peopleBranch.service;
|
||||
|
||||
import cn.hutool.core.lang.tree.Tree;
|
||||
import top.continew.starter.data.mp.service.IService;
|
||||
import top.wms.admin.peopleBranch.model.entity.BranchDO;
|
||||
import top.wms.admin.peopleBranch.model.query.BranchQuery;
|
||||
import top.wms.admin.peopleBranch.model.req.BranchReq;
|
||||
import top.wms.admin.peopleBranch.model.resp.BranchResp;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 部门管理业务接口
|
||||
*
|
||||
* @author zc
|
||||
* @since 2025/03/19 17:46
|
||||
*/
|
||||
public interface BranchService extends IService<BranchDO> {
|
||||
|
||||
List<Tree<String>> selectBranchTree(BranchQuery branchQuery);
|
||||
|
||||
BranchResp selectBranchById(String id);
|
||||
|
||||
String insertBranch(BranchReq branchReq);
|
||||
|
||||
void updateBranch(BranchReq branchReq, String id);
|
||||
|
||||
void deleteBranchById(String id);
|
||||
|
||||
List<Tree<String>> tree(BranchQuery query);
|
||||
|
||||
List<BranchDO> listByNames(List<String> list);
|
||||
|
||||
String branchNameById(Long id);
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user