Merge remote-tracking branch 'origin/master'

This commit is contained in:
Tankaikai
2025-04-07 10:13:57 +08:00
16 changed files with 449 additions and 70 deletions

View File

@@ -0,0 +1,64 @@
package com.czg.account.dto;
import java.io.Serializable;
import java.time.LocalDateTime;
import com.alibaba.fastjson2.annotation.JSONField;
import java.io.Serial;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* 实体类。
*
* @author zs
* @since 2025-04-07
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public class SyncNoticeDTO implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
private Long id;
/**
* 商品名称或耗材名称
*/
private String name;
/**
* 来源id
*/
private Long sourceId;
/**
* 操作用户id
*/
private Long sysUserId;
/**
* 通知类型 0 商品变动 1 耗材变动
*/
private Integer type;
/**
* 是否已读1已读
*/
private Integer isRead;
/**
* 店铺id
*/
private Long shopId;
/**
* 创建时间
*/
@JSONField(format = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime createTime;
}

View File

@@ -38,7 +38,7 @@ public class ShopInfo implements Serializable {
/**
* 主店id
*/
private Integer mainId;
private Long mainId;
/**
* 店铺口号
@@ -90,7 +90,7 @@ public class ShopInfo implements Serializable {
*/
private String detail;
/**
* 注册类型
* 注册类型(经营模式)
* 快餐版 先付 munchies
* 餐饮版 先付/后付 restaurant
*/
@@ -187,46 +187,11 @@ public class ShopInfo implements Serializable {
*/
private String address;
/**
* 是否允许会员自定义金额 1 允许 0 不允许
*/
private Integer isCustomAmount;
/**
* 是否开启退款密码 1 启用 0 禁用
*/
private Integer isReturnPwd;
/**
* 是否开启会员充值密码 1 启用 0 禁用
*/
private Integer isMemberInPwd;
/**
* 是否开启会员退款密码 1 启用 0 禁用
*/
private Integer isMemberReturnPwd;
/**
* 是否免除桌位费 0否1是
*/
private Integer isTableFee;
/**
* 是否开启会员余额支付
*/
private Integer isAccountPay;
/**
* 桌位费
*/
private BigDecimal tableFee;
/**
* 是否启用会员价 0否1是
*/
private Integer isMemberPrice;
/**
* 就餐模式 堂食 dine-in 外带 take-out
*/
@@ -272,4 +237,64 @@ public class ShopInfo implements Serializable {
*/
private String taxAmount;
/**
* 是否启用商品同步 1-是 0-否
*/
@Column(ignore = true)
private Integer isEnableProdSync;
/**
* 是否启用会员同步 1-是 0-否
*/
@Column(ignore = true)
private Integer isEnableVipSync;
/**
* 是否启用耗材同步 1-是 0-否
*/
@Column(ignore = true)
private Integer isEnableConsSync;
/**
* 是否允许账号登录 1-是 0-否
*/
@Column(ignore = true)
private Integer isAllowAccountLogin;
/**
* 是否允许会员自定义金额 1-允许 0-不允许
*/
@Column(ignore = true)
private Integer isCustomAmount;
/**
* 是否开启退款密码 1-启用 0-禁用
*/
@Column(ignore = true)
private Integer isReturnPwd;
/**
* 是否开启会员充值密码 1-启用 0-禁用
*/
@Column(ignore = true)
private Integer isMemberInPwd;
/**
* 是否开启会员退款密码 1-启用 0-禁用
*/
@Column(ignore = true)
private Integer isMemberReturnPwd;
/**
* 是否免除桌位费 1-是 0-否
*/
@Column(ignore = true)
private Integer isTableFee;
/**
* 是否启用会员价 1-是 0-否
*/
@Column(ignore = true)
private Integer isMemberPrice;
/**
* 是否允许会员余额支付 1-是 0-否
*/
@Column(ignore = true)
private Integer isAccountPay;
/**
* 是否主店 1-是 0-否
*/
@Column(ignore = true)
private Integer isHeadShop;
}

View File

@@ -0,0 +1,73 @@
package com.czg.account.entity;
import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.io.Serial;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* 实体类。
*
* @author zs
* @since 2025-04-07
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Table("tb_sync_notice")
public class SyncNotice implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
@Id(keyType = KeyType.Auto)
private Long id;
/**
* 商品名称或耗材名称
*/
private String name;
/**
* 来源id
*/
private Long sourceId;
/**
* 操作用户id
*/
private Long sysUserId;
/**
* 通知类型 0 商品变动 1 耗材变动
*/
private Integer type;
/**
* 是否已读1已读
*/
private Integer isRead;
/**
* 店铺id
*/
private Long shopId;
/**
* 创建时间
*/
@Column(onInsertValue = "now()")
private LocalDateTime createTime;
private LocalDateTime readTime;
}

View File

@@ -0,0 +1,31 @@
package com.czg.account.service;
import com.czg.product.dto.SyncNoticeReadDTO;
import com.mybatisflex.core.paginate.Page;
import com.mybatisflex.core.service.IService;
import com.czg.account.entity.SyncNotice;
import java.util.List;
/**
* 服务层。
*
* @author zs
* @since 2025-04-07
*/
public interface SyncNoticeService extends IService<SyncNotice> {
/**
* 添加消息
* @param shopId 店铺id
* @param sysUserId 操作用户id
* @param name 商品/耗材名称
* @param id 商品/耗材id
* @param type 0-商品 1-耗材
*/
void addNotice(Long shopId, Long sysUserId, String name, Long id, Integer type);
Page<SyncNotice> pageInfo(Long shopId, String name, String startTime, String endTime, Integer type, Integer isRead);
Boolean read(Long shopId, SyncNoticeReadDTO syncNoticeReadDTO);
}

View File

@@ -0,0 +1,18 @@
package com.czg.product.dto;
import jakarta.validation.constraints.NotEmpty;
import lombok.Data;
import java.util.List;
/**
* @author Administrator
*/
@Data
public class SyncNoticeReadDTO {
/**
* 消息id
*/
@NotEmpty
private List<Long> noticeIdList;
}

View File

@@ -70,7 +70,7 @@ public interface ShopVendorService extends IService<ShopVendor> {
* @param shopId 店铺id
* @return 账单
*/
Page<ShopVendorBillVO> billList(Long shopId);
Page<ShopVendorBillVO> billList(Long shopId, String key);
/**
* 账单记录明细
@@ -79,7 +79,7 @@ public interface ShopVendorService extends IService<ShopVendor> {
* @param vendorId 供应商id
* @return 分页
*/
Page<ShopVendorBillRecordVO> billRecord(Long shopId, Integer vendorId);
Page<ShopVendorBillRecordVO> billRecord(Long shopId, Integer vendorId, String key);
/**
* 账单付款