feat(shop): 新增申请领用商品功能模块
添加申请领用商品相关功能,包括: - 实体类ApprovalGoodsEntity及Mapper/Service实现 - 新增/修改命令对象AddApprovalGoodsCommand/UpdateApprovalGoodsCommand - 查询对象SearchApprovalGoodsQuery - 数据传输对象ApprovalGoodsDTO - 业务模型ApprovalGoodsModel及工厂类 - 应用服务ApprovalGoodsApplicationService - 控制器ApprovalGoodsController
This commit is contained in:
parent
043c0e8cb9
commit
163dfeb3e8
|
@ -0,0 +1,68 @@
|
|||
package com.agileboot.admin.controller.shop;
|
||||
|
||||
import com.agileboot.admin.customize.aop.accessLog.AccessLog;
|
||||
import com.agileboot.common.core.base.BaseController;
|
||||
import com.agileboot.common.core.dto.ResponseDTO;
|
||||
import com.agileboot.common.core.page.PageDTO;
|
||||
import com.agileboot.common.enums.common.BusinessTypeEnum;
|
||||
import com.agileboot.domain.common.command.BulkOperationCommand;
|
||||
import com.agileboot.domain.shop.approvalGoods.ApprovalGoodsApplicationService;
|
||||
import com.agileboot.domain.shop.approvalGoods.command.AddApprovalGoodsCommand;
|
||||
import com.agileboot.domain.shop.approvalGoods.command.UpdateApprovalGoodsCommand;
|
||||
import com.agileboot.domain.shop.approvalGoods.db.ApprovalGoodsEntity;
|
||||
import com.agileboot.domain.shop.approvalGoods.dto.ApprovalGoodsDTO;
|
||||
import com.agileboot.domain.shop.approvalGoods.query.SearchApprovalGoodsQuery;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import java.util.List;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.DeleteMapping;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.PutMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/shop/approvalGoods")
|
||||
@RequiredArgsConstructor
|
||||
@Validated
|
||||
public class ApprovalGoodsController extends BaseController {
|
||||
|
||||
private final ApprovalGoodsApplicationService approvalGoodsApplicationService;
|
||||
|
||||
@Operation(summary = "申请领用商品列表")
|
||||
@GetMapping
|
||||
public ResponseDTO<PageDTO<ApprovalGoodsDTO>> list(SearchApprovalGoodsQuery<ApprovalGoodsEntity> query) {
|
||||
PageDTO<ApprovalGoodsDTO> page = approvalGoodsApplicationService.getApprovalGoodsList(query);
|
||||
return ResponseDTO.ok(page);
|
||||
}
|
||||
|
||||
@Operation(summary = "新增申请领用商品")
|
||||
@AccessLog(title = "申请领用商品管理", businessType = BusinessTypeEnum.ADD)
|
||||
@PostMapping
|
||||
public ResponseDTO<Void> add(@Validated @RequestBody AddApprovalGoodsCommand command) {
|
||||
approvalGoodsApplicationService.addApprovalGoods(command);
|
||||
return ResponseDTO.ok();
|
||||
}
|
||||
|
||||
@Operation(summary = "修改申请领用商品")
|
||||
@AccessLog(title = "申请领用商品管理", businessType = BusinessTypeEnum.MODIFY)
|
||||
@PutMapping("/{id}")
|
||||
public ResponseDTO<Void> edit(@PathVariable Long id, @Validated @RequestBody UpdateApprovalGoodsCommand command) {
|
||||
command.setApprovalGoodsId(id);
|
||||
approvalGoodsApplicationService.updateApprovalGoods(command);
|
||||
return ResponseDTO.ok();
|
||||
}
|
||||
|
||||
@Operation(summary = "删除申请领用商品")
|
||||
@AccessLog(title = "申请领用商品管理", businessType = BusinessTypeEnum.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public ResponseDTO<Void> remove(@PathVariable @NotNull List<Long> ids) {
|
||||
approvalGoodsApplicationService.deleteApprovalGoods(new BulkOperationCommand<>(ids));
|
||||
return ResponseDTO.ok();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,74 @@
|
|||
package com.agileboot.domain.shop.approvalGoods;
|
||||
|
||||
import cn.hutool.json.JSONObject;
|
||||
import com.agileboot.common.core.page.PageDTO;
|
||||
import com.agileboot.domain.common.command.BulkOperationCommand;
|
||||
import com.agileboot.domain.shop.approvalGoods.command.AddApprovalGoodsCommand;
|
||||
import com.agileboot.domain.shop.approvalGoods.command.UpdateApprovalGoodsCommand;
|
||||
import com.agileboot.domain.shop.approvalGoods.db.ApprovalGoodsEntity;
|
||||
import com.agileboot.domain.shop.approvalGoods.db.ApprovalGoodsService;
|
||||
import com.agileboot.domain.shop.approvalGoods.dto.ApprovalGoodsDTO;
|
||||
import com.agileboot.domain.shop.approvalGoods.model.ApprovalGoodsModel;
|
||||
import com.agileboot.domain.shop.approvalGoods.model.ApprovalGoodsModelFactory;
|
||||
import com.agileboot.domain.shop.approvalGoods.query.SearchApprovalGoodsQuery;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.cache.annotation.Cacheable;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.web.client.RestTemplate;
|
||||
|
||||
import cn.hutool.http.HttpUtil;
|
||||
import cn.hutool.json.JSONUtil;
|
||||
|
||||
@Service
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
public class ApprovalGoodsApplicationService {
|
||||
private final ApprovalGoodsService approvalGoodsService;
|
||||
private final ApprovalGoodsModelFactory approvalGoodsModelFactory;
|
||||
|
||||
public PageDTO<ApprovalGoodsDTO> getApprovalGoodsList(SearchApprovalGoodsQuery<ApprovalGoodsEntity> query) {
|
||||
Page<ApprovalGoodsEntity> page = approvalGoodsService.getApprovalGoodsList(query);
|
||||
List<ApprovalGoodsDTO> dtoList = page.getRecords().stream()
|
||||
.map(ApprovalGoodsDTO::new)
|
||||
.collect(Collectors.toList());
|
||||
return new PageDTO<>(dtoList, page.getTotal());
|
||||
}
|
||||
|
||||
public void addApprovalGoods(AddApprovalGoodsCommand command) {
|
||||
ApprovalGoodsModel model = approvalGoodsModelFactory.create();
|
||||
model.loadAddCommand(command);
|
||||
model.insert();
|
||||
}
|
||||
|
||||
public void updateApprovalGoods(UpdateApprovalGoodsCommand command) {
|
||||
ApprovalGoodsModel model = approvalGoodsModelFactory.loadById(command.getApprovalGoodsId());
|
||||
model.loadUpdateCommand(command);
|
||||
model.updateById();
|
||||
}
|
||||
|
||||
public void deleteApprovalGoods(BulkOperationCommand<Long> command) {
|
||||
for (Long id : command.getIds()) {
|
||||
ApprovalGoodsModel model = approvalGoodsModelFactory.loadById(id);
|
||||
model.deleteById();
|
||||
}
|
||||
}
|
||||
|
||||
public ApprovalGoodsEntity getFirstEnabledApprovalGoods() {
|
||||
return approvalGoodsService.selectLatest();
|
||||
}
|
||||
|
||||
public ApprovalGoodsEntity getByApprovalId(Long approvalId) {
|
||||
return approvalGoodsService.selectByApprovalId(approvalId);
|
||||
}
|
||||
|
||||
public ApprovalGoodsEntity getByGoodsId(Long goodsId) {
|
||||
return approvalGoodsService.selectByGoodsId(goodsId);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,11 @@
|
|||
package com.agileboot.domain.shop.approvalGoods.command;
|
||||
|
||||
import com.agileboot.domain.shop.approvalGoods.db.ApprovalGoodsEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
public class AddApprovalGoodsCommand extends ApprovalGoodsEntity {
|
||||
|
||||
}
|
|
@ -0,0 +1,16 @@
|
|||
package com.agileboot.domain.shop.approvalGoods.command;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import javax.validation.constraints.PositiveOrZero;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
public class UpdateApprovalGoodsCommand extends AddApprovalGoodsCommand {
|
||||
|
||||
@NotNull
|
||||
@PositiveOrZero
|
||||
private Long approvalGoodsId;
|
||||
|
||||
}
|
|
@ -0,0 +1,77 @@
|
|||
package com.agileboot.domain.shop.approvalGoods.db;
|
||||
|
||||
import com.agileboot.common.core.base.BaseEntity;
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 申请领用商品信息表
|
||||
* </p>
|
||||
*
|
||||
* @author valarchie
|
||||
* @since 2025-06-07
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@TableName("approval_goods")
|
||||
@ApiModel(value = "ApprovalGoodsEntity对象", description = "申请领用商品信息表")
|
||||
public class ApprovalGoodsEntity extends BaseEntity<ApprovalGoodsEntity> {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("主键ID")
|
||||
@TableId(value = "approval_goods_id", type = IdType.AUTO)
|
||||
private Long approvalGoodsId;
|
||||
|
||||
@ApiModelProperty("审批ID")
|
||||
@TableField("approval_id")
|
||||
private Long approvalId;
|
||||
|
||||
@ApiModelProperty("商品名称")
|
||||
@TableField("goods_name")
|
||||
private String goodsName;
|
||||
|
||||
@ApiModelProperty("关联商品ID")
|
||||
@TableField("goods_id")
|
||||
private Long goodsId;
|
||||
|
||||
@ApiModelProperty("外部归属类型的商品ID")
|
||||
@TableField("external_goods_id")
|
||||
private Long externalGoodsId;
|
||||
|
||||
@ApiModelProperty("企业微信id")
|
||||
@TableField("corpid")
|
||||
private String corpid;
|
||||
|
||||
@ApiModelProperty("归属类型(0-借还柜 1-固资通)")
|
||||
@TableField("belong_type")
|
||||
private Integer belongType;
|
||||
|
||||
@ApiModelProperty("销售价格")
|
||||
@TableField("price")
|
||||
private BigDecimal price;
|
||||
|
||||
@ApiModelProperty("申请数量")
|
||||
@TableField("apply_quantity")
|
||||
private Integer applyQuantity;
|
||||
|
||||
@ApiModelProperty("封面图URL")
|
||||
@TableField("cover_img")
|
||||
private String coverImg;
|
||||
|
||||
|
||||
@Override
|
||||
public Serializable pkVal() {
|
||||
return this.approvalGoodsId;
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,44 @@
|
|||
package com.agileboot.domain.shop.approvalGoods.db;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.Wrapper;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import java.util.List;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 申请领用商品信息表 Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author valarchie
|
||||
* @since 2025-06-07
|
||||
*/
|
||||
public interface ApprovalGoodsMapper extends BaseMapper<ApprovalGoodsEntity> {
|
||||
@Select("SELECT * " +
|
||||
"FROM approval_goods " +
|
||||
"${ew.customSqlSegment}")
|
||||
Page<ApprovalGoodsEntity> getApprovalGoodsList(
|
||||
Page<ApprovalGoodsEntity> page,
|
||||
@Param(Constants.WRAPPER) Wrapper<ApprovalGoodsEntity> queryWrapper
|
||||
);
|
||||
|
||||
@Select("SELECT * " +
|
||||
"FROM approval_goods " +
|
||||
"ORDER BY approval_goods_id DESC " +
|
||||
"LIMIT 1")
|
||||
ApprovalGoodsEntity selectLatest();
|
||||
|
||||
@Select("SELECT * " +
|
||||
"FROM approval_goods " +
|
||||
"ORDER BY approval_goods_id DESC")
|
||||
List<ApprovalGoodsEntity> selectAll();
|
||||
|
||||
@Select("SELECT * FROM approval_goods WHERE approval_id = #{approvalId} LIMIT 1")
|
||||
ApprovalGoodsEntity selectByApprovalId(Long approvalId);
|
||||
|
||||
@Select("SELECT * FROM approval_goods WHERE goods_id = #{goodsId} LIMIT 1")
|
||||
ApprovalGoodsEntity selectByGoodsId(Long goodsId);
|
||||
}
|
|
@ -0,0 +1,27 @@
|
|||
package com.agileboot.domain.shop.approvalGoods.db;
|
||||
|
||||
import com.agileboot.common.core.page.AbstractPageQuery;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 申请领用商品信息表 服务类
|
||||
* </p>
|
||||
*
|
||||
* @author valarchie
|
||||
* @since 2025-06-07
|
||||
*/
|
||||
public interface ApprovalGoodsService extends IService<ApprovalGoodsEntity> {
|
||||
Page<ApprovalGoodsEntity> getApprovalGoodsList(AbstractPageQuery<ApprovalGoodsEntity> query);
|
||||
|
||||
List<ApprovalGoodsEntity> selectAll();
|
||||
|
||||
ApprovalGoodsEntity selectLatest();
|
||||
|
||||
ApprovalGoodsEntity selectByApprovalId(Long approvalId);
|
||||
|
||||
ApprovalGoodsEntity selectByGoodsId(Long goodsId);
|
||||
}
|
|
@ -0,0 +1,45 @@
|
|||
package com.agileboot.domain.shop.approvalGoods.db;
|
||||
|
||||
import com.agileboot.common.core.page.AbstractPageQuery;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 申请领用商品信息表 服务实现类
|
||||
* </p>
|
||||
*
|
||||
* @author valarchie
|
||||
* @since 2025-06-07
|
||||
*/
|
||||
@Service
|
||||
public class ApprovalGoodsServiceImpl extends ServiceImpl<ApprovalGoodsMapper, ApprovalGoodsEntity> implements ApprovalGoodsService {
|
||||
|
||||
@Override
|
||||
public Page<ApprovalGoodsEntity> getApprovalGoodsList(AbstractPageQuery<ApprovalGoodsEntity> query) {
|
||||
return this.page(query.toPage(), query.toQueryWrapper());
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ApprovalGoodsEntity> selectAll() {
|
||||
return baseMapper.selectAll();
|
||||
}
|
||||
|
||||
@Override
|
||||
public ApprovalGoodsEntity selectLatest() {
|
||||
return baseMapper.selectLatest();
|
||||
}
|
||||
|
||||
@Override
|
||||
public ApprovalGoodsEntity selectByApprovalId(Long approvalId) {
|
||||
return baseMapper.selectByApprovalId(approvalId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ApprovalGoodsEntity selectByGoodsId(Long goodsId) {
|
||||
return baseMapper.selectByGoodsId(goodsId);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,51 @@
|
|||
package com.agileboot.domain.shop.approvalGoods.dto;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import com.agileboot.common.annotation.ExcelColumn;
|
||||
import com.agileboot.common.annotation.ExcelSheet;
|
||||
import com.agileboot.domain.shop.approvalGoods.db.ApprovalGoodsEntity;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
import lombok.Data;
|
||||
|
||||
@ExcelSheet(name = "申请领用商品信息列表")
|
||||
@Data
|
||||
public class ApprovalGoodsDTO {
|
||||
|
||||
public ApprovalGoodsDTO(ApprovalGoodsEntity entity) {
|
||||
if (entity != null) {
|
||||
BeanUtil.copyProperties(entity, this);
|
||||
}
|
||||
}
|
||||
|
||||
@ExcelColumn(name = "主键ID")
|
||||
private Long approvalGoodsId;
|
||||
|
||||
@ExcelColumn(name = "审批ID")
|
||||
private Long approvalId;
|
||||
|
||||
@ExcelColumn(name = "商品名称")
|
||||
private String goodsName;
|
||||
|
||||
@ExcelColumn(name = "关联商品ID")
|
||||
private Long goodsId;
|
||||
|
||||
@ExcelColumn(name = "外部归属类型的商品ID")
|
||||
private Long externalGoodsId;
|
||||
|
||||
@ExcelColumn(name = "企业微信id")
|
||||
private String corpid;
|
||||
|
||||
@ExcelColumn(name = "归属类型(0-借还柜 1-固资通)")
|
||||
private Integer belongType;
|
||||
|
||||
@ExcelColumn(name = "销售价格")
|
||||
private BigDecimal price;
|
||||
|
||||
@ExcelColumn(name = "申请数量")
|
||||
private Integer applyQuantity;
|
||||
|
||||
@ExcelColumn(name = "封面图URL")
|
||||
private String coverImg;
|
||||
}
|
|
@ -0,0 +1,41 @@
|
|||
package com.agileboot.domain.shop.approvalGoods.model;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.agileboot.common.exception.ApiException;
|
||||
import com.agileboot.common.exception.error.ErrorCode;
|
||||
import com.agileboot.domain.shop.approvalGoods.command.AddApprovalGoodsCommand;
|
||||
import com.agileboot.domain.shop.approvalGoods.command.UpdateApprovalGoodsCommand;
|
||||
import com.agileboot.domain.shop.approvalGoods.db.ApprovalGoodsEntity;
|
||||
import com.agileboot.domain.shop.approvalGoods.db.ApprovalGoodsService;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
public class ApprovalGoodsModel extends ApprovalGoodsEntity {
|
||||
|
||||
private ApprovalGoodsService approvalGoodsService;
|
||||
|
||||
public ApprovalGoodsModel(ApprovalGoodsEntity entity, ApprovalGoodsService approvalGoodsService) {
|
||||
this(approvalGoodsService);
|
||||
if (entity != null) {
|
||||
BeanUtil.copyProperties(entity, this);
|
||||
}
|
||||
}
|
||||
|
||||
public ApprovalGoodsModel(ApprovalGoodsService approvalGoodsService) {
|
||||
this.approvalGoodsService = approvalGoodsService;
|
||||
}
|
||||
|
||||
public void loadAddCommand(AddApprovalGoodsCommand command) {
|
||||
if (command != null) {
|
||||
BeanUtil.copyProperties(command, this, "id");
|
||||
}
|
||||
}
|
||||
|
||||
public void loadUpdateCommand(UpdateApprovalGoodsCommand command) {
|
||||
if (command != null) {
|
||||
loadAddCommand(command);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,27 @@
|
|||
package com.agileboot.domain.shop.approvalGoods.model;
|
||||
|
||||
import com.agileboot.common.exception.ApiException;
|
||||
import com.agileboot.common.exception.error.ErrorCode;
|
||||
import com.agileboot.domain.shop.approvalGoods.db.ApprovalGoodsEntity;
|
||||
import com.agileboot.domain.shop.approvalGoods.db.ApprovalGoodsService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
@RequiredArgsConstructor
|
||||
public class ApprovalGoodsModelFactory {
|
||||
|
||||
private final ApprovalGoodsService approvalGoodsService;
|
||||
|
||||
public ApprovalGoodsModel loadById(Long approvalGoodsId) {
|
||||
ApprovalGoodsEntity entity = approvalGoodsService.getById(approvalGoodsId);
|
||||
if (entity == null) {
|
||||
throw new ApiException(ErrorCode.Business.COMMON_OBJECT_NOT_FOUND, approvalGoodsId, "申请领用商品");
|
||||
}
|
||||
return new ApprovalGoodsModel(entity, approvalGoodsService);
|
||||
}
|
||||
|
||||
public ApprovalGoodsModel create() {
|
||||
return new ApprovalGoodsModel(approvalGoodsService);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,50 @@
|
|||
package com.agileboot.domain.shop.approvalGoods.query;
|
||||
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.agileboot.common.core.page.AbstractPageQuery;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
public class SearchApprovalGoodsQuery<T> extends AbstractPageQuery<T> {
|
||||
|
||||
private Long approvalGoodsId;
|
||||
private Long approvalId;
|
||||
private String goodsName;
|
||||
private Long goodsId;
|
||||
private Long externalGoodsId;
|
||||
private String corpid;
|
||||
private Integer belongType;
|
||||
private BigDecimal price;
|
||||
private Integer applyQuantity;
|
||||
private String coverImg;
|
||||
private Date startTime;
|
||||
private Date endTime;
|
||||
|
||||
@Override
|
||||
public QueryWrapper<T> addQueryCondition() {
|
||||
QueryWrapper<T> queryWrapper = new QueryWrapper<>();
|
||||
|
||||
queryWrapper
|
||||
.eq(approvalGoodsId != null, "approval_goods_id", approvalGoodsId)
|
||||
.eq(approvalId != null, "approval_id", approvalId)
|
||||
.eq(StrUtil.isNotEmpty(goodsName), "goods_name", goodsName)
|
||||
.eq(goodsId != null, "goods_id", goodsId)
|
||||
.eq(externalGoodsId != null, "external_goods_id", externalGoodsId)
|
||||
.eq(StrUtil.isNotEmpty(corpid), "corpid", corpid)
|
||||
.eq(belongType != null, "belong_type", belongType)
|
||||
.eq(price != null, "price", price)
|
||||
.eq(applyQuantity != null, "apply_quantity", applyQuantity)
|
||||
.eq(StrUtil.isNotEmpty(coverImg), "cover_img", coverImg)
|
||||
.between(startTime != null && endTime != null, "create_time", startTime, endTime);
|
||||
|
||||
this.timeRangeColumn = "create_time";
|
||||
|
||||
return queryWrapper;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,5 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.agileboot.domain.shop.approvalGoods.db.ApprovalGoodsMapper">
|
||||
|
||||
</mapper>
|
|
@ -61,7 +61,7 @@ public class CodeGenerator {
|
|||
//生成的类 放在orm子模块下的/target/generated-code目录底下
|
||||
.module("/agileboot-orm/target/generated-code")
|
||||
.parentPackage("com.agileboot")
|
||||
.tableName("ab98_user_tag")
|
||||
.tableName("approval_goods")
|
||||
// 决定是否继承基类
|
||||
.isExtendsFromBaseEntity(true)
|
||||
.build();
|
||||
|
|
Loading…
Reference in New Issue