feat(商品): 添加商品免审批功能以支持自动审批
在商品相关实体、DTO、查询条件及SQL表中添加`auto_approval`字段,用于标识商品是否免审批。在审批流程中,若商品标记为免审批,则自动完成审批流程,减少人工干预。
This commit is contained in:
parent
029975787f
commit
afbd0935e7
|
@ -158,7 +158,9 @@ public class ReturnApprovalApplicationService {
|
||||||
}
|
}
|
||||||
|
|
||||||
// 审批人信息
|
// 审批人信息
|
||||||
if (StringUtils.isNotBlank(command.getUserid())) {
|
if (StringUtils.isNotBlank(command.getAuditName())) {
|
||||||
|
model.setAuditName(command.getAuditName());
|
||||||
|
} else if (StringUtils.isNotBlank(command.getUserid())) {
|
||||||
QyUserEntity qyUserEntity = qyUserService.getUserByUserId(command.getUserid(), WeixinConstants.corpid);
|
QyUserEntity qyUserEntity = qyUserService.getUserByUserId(command.getUserid(), WeixinConstants.corpid);
|
||||||
if (null != qyUserEntity) {
|
if (null != qyUserEntity) {
|
||||||
model.setAuditName(qyUserEntity.getName());
|
model.setAuditName(qyUserEntity.getName());
|
||||||
|
@ -216,6 +218,17 @@ public class ReturnApprovalApplicationService {
|
||||||
orderGoodsModel.setStatus(5);
|
orderGoodsModel.setStatus(5);
|
||||||
orderGoodsModel.updateById();
|
orderGoodsModel.updateById();
|
||||||
|
|
||||||
|
GoodsModel goodsModel = goodsModelFactory.loadById(orderGoods.getGoodsId());
|
||||||
|
// 如果商品免审批,则自动审批
|
||||||
|
if (goodsModel.getAutoApproval().equals(1)) {
|
||||||
|
UpdateReturnApprovalCommand approveCommand = new UpdateReturnApprovalCommand();
|
||||||
|
approveCommand.setApprovalId(returnApprovalModel.getApprovalId());
|
||||||
|
approveCommand.setReturnAmount(orderGoods.getTotalAmount());
|
||||||
|
approveCommand.setAuditName("自动审批");
|
||||||
|
approveCommand.setAuditRemark("自动审批");
|
||||||
|
approveApproval(approveCommand);
|
||||||
|
}
|
||||||
|
|
||||||
// 发送审核消息
|
// 发送审核消息
|
||||||
try {
|
try {
|
||||||
String appid = "QWTONG_YS_WXSHOP";
|
String appid = "QWTONG_YS_WXSHOP";
|
||||||
|
|
|
@ -52,6 +52,10 @@ public class ShopGoodsEntity extends BaseEntity<ShopGoodsEntity> {
|
||||||
@TableField("`status`")
|
@TableField("`status`")
|
||||||
private Integer status;
|
private Integer status;
|
||||||
|
|
||||||
|
@ApiModelProperty("免审批(0否 1是)")
|
||||||
|
@TableField("`auto_approval`")
|
||||||
|
private Integer autoApproval;
|
||||||
|
|
||||||
@ApiModelProperty("封面图URL")
|
@ApiModelProperty("封面图URL")
|
||||||
@TableField("cover_img")
|
@TableField("cover_img")
|
||||||
private String coverImg;
|
private String coverImg;
|
||||||
|
|
|
@ -36,7 +36,7 @@ public interface ShopGoodsMapper extends BaseMapper<ShopGoodsEntity> {
|
||||||
@Param(Constants.WRAPPER) Wrapper<SearchGoodsDO> queryWrapper
|
@Param(Constants.WRAPPER) Wrapper<SearchGoodsDO> queryWrapper
|
||||||
); */
|
); */
|
||||||
@Select("SELECT g.goods_id, g.goods_name, g.category_id, g.price, " +
|
@Select("SELECT g.goods_id, g.goods_name, g.category_id, g.price, " +
|
||||||
"g.stock, g.status, g.cover_img, SUM(cc.stock) AS total_stock, " +
|
"g.stock, g.status, g.auto_approval, g.cover_img, SUM(cc.stock) AS total_stock, " +
|
||||||
"GROUP_CONCAT(DISTINCT cc.cell_no) AS cell_no_str, " +
|
"GROUP_CONCAT(DISTINCT cc.cell_no) AS cell_no_str, " +
|
||||||
"GROUP_CONCAT(DISTINCT sc.cabinet_name) AS cabinet_name " +
|
"GROUP_CONCAT(DISTINCT sc.cabinet_name) AS cabinet_name " +
|
||||||
"FROM shop_goods g " +
|
"FROM shop_goods g " +
|
||||||
|
|
|
@ -60,6 +60,9 @@ public class ShopGoodsDTO {
|
||||||
@ExcelColumn(name = "商品状态")
|
@ExcelColumn(name = "商品状态")
|
||||||
private Integer status;
|
private Integer status;
|
||||||
|
|
||||||
|
@ExcelColumn(name = "免审批")
|
||||||
|
private Integer autoApproval;
|
||||||
|
|
||||||
@ExcelColumn(name = "封面图")
|
@ExcelColumn(name = "封面图")
|
||||||
private String coverImg;
|
private String coverImg;
|
||||||
|
|
||||||
|
|
|
@ -14,6 +14,7 @@ public class SearchShopGoodsQuery<T> extends AbstractPageQuery<T> {
|
||||||
protected String goodsName;
|
protected String goodsName;
|
||||||
protected Long categoryId;
|
protected Long categoryId;
|
||||||
protected Integer status;
|
protected Integer status;
|
||||||
|
protected Integer autoApproval;
|
||||||
protected BigDecimal minPrice;
|
protected BigDecimal minPrice;
|
||||||
protected BigDecimal maxPrice;
|
protected BigDecimal maxPrice;
|
||||||
|
|
||||||
|
@ -25,6 +26,7 @@ public class SearchShopGoodsQuery<T> extends AbstractPageQuery<T> {
|
||||||
.like(StrUtil.isNotEmpty(goodsName), "g.goods_name", goodsName)
|
.like(StrUtil.isNotEmpty(goodsName), "g.goods_name", goodsName)
|
||||||
.eq(categoryId != null, "cc.cabinet_id", categoryId)
|
.eq(categoryId != null, "cc.cabinet_id", categoryId)
|
||||||
.eq(status != null, "g.status", status)
|
.eq(status != null, "g.status", status)
|
||||||
|
.eq(autoApproval != null, "g.auto_approval", autoApproval)
|
||||||
.ge(minPrice != null, "g.price", minPrice)
|
.ge(minPrice != null, "g.price", minPrice)
|
||||||
.le(maxPrice != null, "g.price", maxPrice)
|
.le(maxPrice != null, "g.price", maxPrice)
|
||||||
.eq("g.deleted", 0)
|
.eq("g.deleted", 0)
|
||||||
|
|
|
@ -0,0 +1,27 @@
|
||||||
|
DROP TABLE IF EXISTS `cabinet_cell_operation`;
|
||||||
|
|
||||||
|
CREATE TABLE `cabinet_cell_operation` (
|
||||||
|
`operation_id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '操作流水号',
|
||||||
|
`cell_id` BIGINT NOT NULL COMMENT '关联格口ID',
|
||||||
|
`goods_id` BIGINT NOT NULL COMMENT '关联商品ID',
|
||||||
|
`goods_name` VARCHAR(255) NOT NULL COMMENT '商品名称',
|
||||||
|
`userid` varchar(100) NOT NULL COMMENT '企业微信用户ID',
|
||||||
|
`is_internal` TINYINT(1) DEFAULT 0 COMMENT '是否内部用户(0否 1是)',
|
||||||
|
`name` varchar(30) DEFAULT NULL COMMENT '成员名称',
|
||||||
|
`mobile` varchar(30) DEFAULT NULL COMMENT '手机号码',
|
||||||
|
`operation_type` TINYINT NOT NULL COMMENT '操作类型(1用户 2管理员)',
|
||||||
|
`status` TINYINT NOT NULL DEFAULT 1 COMMENT '操作状态(1正常 2操作失败)',
|
||||||
|
`creator_id` BIGINT NOT NULL DEFAULT 0 COMMENT '创建者ID',
|
||||||
|
`create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||||
|
`updater_id` BIGINT NOT NULL DEFAULT 0 COMMENT '更新者ID',
|
||||||
|
`update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||||
|
`deleted` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '删除标志(0存在 1删除)',
|
||||||
|
PRIMARY KEY (`operation_id`),
|
||||||
|
KEY `idx_cell` (`cell_id`),
|
||||||
|
KEY `idx_user` (`userid`),
|
||||||
|
KEY `idx_operation_time` (`create_time`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='柜机格口操作记录表';
|
||||||
|
|
||||||
|
|
||||||
|
ALTER TABLE `shop_goods`
|
||||||
|
ADD COLUMN `auto_approval` TINYINT NOT NULL DEFAULT 0 COMMENT '免审批(0否 1是)' AFTER `status`;
|
Loading…
Reference in New Issue