商品主图图片管理系统产品系统Vibe Coding

我要开发同款

技术信息

语言技术
JavaSpringMybatisVueMySQL
系统类型
Web
行业分类
电商企业服务

作品详情

行业场景

为什么需要这个图片管理系统?
因为现在手工的图片去重方式太麻烦,店铺每次上传都要进行图片去重,
我们有几十家店铺,每家店铺的图片都要单独存放,用于后面上新的时候来比对去重,非常麻烦
怎么解决这个问题,建立一个图片库,把图片统一分类管理,采集到的图片先放入图片库,放入图片库的时候跟图片库已有图片进行去重,把重复的图片显示出来,进行删除,然后在入库
图片库里面的图片按分类存放管理,需要上传店铺时可以进图片库系统选择图片,首先要用店铺名登录,选择上传模版,下载生成表格(生成表格这个和现在采集文件夹功能一样)
图片标记,如果一个店铺登录之后下载过这张图片,这种图片就变灰,不能再下载,只有管理员手动把这个标记去掉才可以下载
上传图片库的记录要有统计功能,要知道哪个账号哪天上了多少张图,账号要分极,上传账号上传的图片需要管理员审核之后才能进图片库
店铺下载账号和上传账号设置成两种不同的权限账号

功能介绍

这个系统本质上是一个面向多店铺运营场景的图片素材管理平台,核心目标是实现“图片只在库中保存一份原图,但可以被多个店铺复用,并且精确记录每个店铺的使用与下载状态”。系统围绕账号体系、店铺维度、图片去重与分发三条主线展开:账号体系中区分超级管理员、审核人员、上传账号和店铺下载账号,其中上传与下载账号严格分离,下载账号必须绑定具体店铺;店铺作为核心业务维度,用于承载图片使用关系、下载记录及统计分析,同时支持店铺新增、停用及历史数据导入。图片管理方面,系统通过“分类+标签”方式统一管理图片类型,并支持自动拼接生成标题(中英文分别维护规则字段),同时提供批量上传、文件夹导入及来源店铺标记能力。上传后图片会进入去重与审核流程,去重分为文件级MD5完全重复判断和感知哈希相似度判断,确保视觉相同图片只保留一份主图;若命中重复图,则不会新增图片记录,而是直接在原图片上增加“某店铺已使用/已下载”标记。审核通过后图片进入正式图片库,图片库支持按分类、店铺、标签及状态检索,并可查看该图片被哪些店铺使用过。店铺下载侧提供素材浏览与模板导出能力,下载行为会自动写入店铺-图片关系表,实现灰显控制:如果某店铺已使用或下载过某张图片,则该图在该店铺视角下不可重复下载,除非管理员手动解除标记。系统同时提供模板管理与Excel导出能力,用于商品发布数据生成,并配套完整的上传、审核、下载、分类、店铺、去重与操作日志体系,确保整个图片流转过程可追溯、可统计、可控制。总体实现思路是以“图片唯一化存储 + 店铺关系标记 + 去重驱动复用”为核心的数据模型设计。

项目实现

整个系统基于 SpringBoot + MyBatis + MySQL + Vue + OSS 构建,采用前后端分离架构实现,核心思路是“图片唯一存储 + 店铺维度关系控制 + 去重驱动复用 + 权限隔离管理”。
后端采用 SpringBoot 作为核心框架,负责提供统一 REST API 接口,结合 MyBatis 进行数据库持久化操作,所有业务数据(用户、角色、店铺、图片、关系、审核、日志等)存储在 MySQL 中。图片文件本身不存数据库,而是统一上传到 OSS 对象存储(如阿里云OSS或MinIO),数据库只保存图片URL、hash值、分类信息及关联关系,从而保证系统轻量与可扩展性。
权限体系基于 RBAC 实现,在 Spring Security(或自定义权限拦截器)基础上进行二次封装,实现用户-角色-权限三层控制,同时叠加“店铺维度权限”,确保店铺账号只能访问自己绑定的图片数据。上传账号与下载账号在权限层面强制隔离,避免数据混用。
图片上传流程由 Vue 前端触发,文件先上传至后端,再由后端转存 OSS,并生成图片记录。上传过程中,后端会先计算 MD5 进行完全重复判断,如果命中则直接复用已有图片记录;如果未命中,则继续计算 pHash/dHash 进行相似图匹配,进入去重结果处理流程。该流程支持人工确认,确认后决定是复用旧图还是创建新图记录。
图片审核模块作为中间状态流转层,上传数据进入“待审核状态”,由管理员在 Vue 管理端进行审核操作,审核通过后图片正式入库并进入图片库体系。审核过程中的所有变更都会通过 MyBatis 写入审核记录表,并同步写入操作日志表。
图片库模块通过 SpringBoot 提供统一查询接口,支持按分类、标签、店铺、状态等多维度筛选。查询时会联表 image_store_relations 表,根据当前登录店铺ID动态计算图

示例图片

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论