商品模块代码提交

This commit is contained in:
Tankaikai
2025-02-20 11:26:48 +08:00
parent 2c324221a9
commit 1642726452
14 changed files with 568 additions and 1 deletions

View File

@@ -0,0 +1,65 @@
package com.czg.product.dto;
import com.alibaba.fastjson2.annotation.JSONField;
import com.czg.validator.group.DefaultGroup;
import com.czg.validator.group.InsertGroup;
import com.czg.validator.group.UpdateGroup;
import jakarta.validation.constraints.*;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;
/**
* 耗材分组
*
* @author Tankaikai tankaikai@aliyun.com
* @since 1.0 2025-02-20
*/
@Data
public class ConsGroupDTO implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* id
*/
@Null(message = "ID必须为空", groups = InsertGroup.class)
@NotNull(message = "ID不能为空", groups = UpdateGroup.class)
private Long id;
/**
* 店铺id
*/
private Long shopId;
/**
* 分组名称
*/
@NotBlank(message = "分组名称不能为空", groups = DefaultGroup.class)
private String name;
/**
* 状态 1 正常 0 禁用
*/
@NotNull(message = "状态不能为空", groups = DefaultGroup.class)
@Min(value = 0, message = "状态值必须是0或1", groups = DefaultGroup.class)
@Max(value = 1, message = "状态值必须是0或1", groups = DefaultGroup.class)
private Integer status;
/**
* 创建时间
*/
@JSONField(format = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime createTime;
/**
* 更新
*/
@JSONField(format = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime updateTime;
/**
* 耗材id集合
*/
private List<Long> consIds;
}

View File

@@ -0,0 +1,33 @@
package com.czg.product.dto;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
/**
* 耗材分组关联关系
*
* @author Tankaikai tankaikai@aliyun.com
* @since 1.0 2025-02-20
*/
@Data
public class ConsGroupRelationDTO implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 分组 id
*/
private Long groupId;
/**
* 耗材 Id
*/
private Long consId;
/**
* 排序
*/
private Integer sort;
}

View File

@@ -0,0 +1,53 @@
package com.czg.product.entity;
import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* 耗材分组
*
* @author Tankaikai tankaikai@aliyun.com
* @since 1.0 2025-02-20
*/
@Data
@Table("tb_cons_group")
public class ConsGroup implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* id
*/
@Id(keyType = KeyType.Auto)
private Long id;
/**
* 店铺id
*/
private Long shopId;
/**
* 分组名称
*/
private String name;
/**
* 状态 1 正常 0 禁用
*/
private Integer status;
/**
* 创建时间
*/
@Column(onInsertValue = "now()")
private LocalDateTime createTime;
/**
* 更新
*/
@Column(onInsertValue = "now()", onUpdateValue = "now()")
private LocalDateTime updateTime;
}

View File

@@ -0,0 +1,38 @@
package com.czg.product.entity;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
/**
* 耗材分组关联关系
*
* @author Tankaikai tankaikai@aliyun.com
* @since 1.0 2025-02-20
*/
@Data
@Table("tb_cons_group_relation")
public class ConsGroupRelation implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 分组 id
*/
@Id(keyType = KeyType.None)
private Long groupId;
/**
* 耗材 Id
*/
@Id(keyType = KeyType.None)
private Long consId;
/**
* 排序
*/
private Integer sort;
}

View File

@@ -0,0 +1,14 @@
package com.czg.product.service;
import com.czg.product.entity.ConsGroupRelation;
import com.mybatisflex.core.service.IService;
/**
* 耗材分组关联关系
*
* @author Tankaikai tankaikai@aliyun.com
* @since 1.0 2025-02-20
*/
public interface ConsGroupRelationService extends IService<ConsGroupRelation> {
}

View File

@@ -0,0 +1,33 @@
package com.czg.product.service;
import com.czg.product.dto.ConsGroupDTO;
import com.czg.product.entity.ConsGroup;
import com.mybatisflex.core.paginate.Page;
import com.mybatisflex.core.service.IService;
import java.util.List;
/**
* 耗材分组
*
* @author Tankaikai tankaikai@aliyun.com
* @since 1.0 2025-02-20
*/
public interface ConsGroupService extends IService<ConsGroup> {
Page<ConsGroupDTO> getConsGroupPage(ConsGroupDTO param);
List<ConsGroupDTO> getConsGroupList(ConsGroupDTO param);
ConsGroupDTO getConsGroupById(Long id);
boolean addConsGroup(ConsGroupDTO dto);
boolean updateConsGroup(ConsGroupDTO dto);
boolean deleteConsGroup(Long id);
boolean disableConsGroup(Long id);
boolean enableConsGroup(Long id);
}