涉及的表为`c_attachment` 表,这里的附件主要是提供给系统内部其他功能使用附件时调用的,一般不会在附件列表页面进行附件上传操作(这里做了一个上传按钮,只是为了给大家演示)。
上传附件接口`AttachmentController#upload` 需要几个参数:
1. MultipartFile file : 上传的附件
2. Boolean isSingle: 是否单个附件,true时,会先删除 bizId和bizType相关的所有附件,保证同一类型,同一业务id仅有一个附件。
3. Long id: 附件的id,id不为空时,会将附件上传后的信息对该附件进行修改,而不是新增。
4. String bizId:业务id 。bizId为空时,附件接口会自动生成一个业务ID,并返回给调用方,调用方新增数据时使用返回的业务ID即可。如用户头像功能需要记录用户ID、请假审批证明材料需要记录请假审批ID。
5. String bizType: 业务类型。 每种类型自定义一个全局唯一的标识,如用户头像、请假审批的证明材料等
用户头像上传以及用户新增流程1:
1. 选择附件后,立即上传,入参为:bizType=USER_AVATAR, isSingle=true, bizId=null。
2. 因为bizId传的是null,所以附件接口会生成一个bizId并返回, 所以只需要保证用户新增时,使用返回的这个bizId作为用户的主键ID 即可。
3. 调用用户新增接口时,将返回的bizId作为用户的id 传入。
用户头像上传以及用户新增流程2:
1. 弹出新增页面时,先异步调用后台接口`DashboardController#generate` ,获取唯一的分布式ID,假设为: 10000
2. 选择附件后,立即上传,入参为:bizType=USER_AVATAR, isSingle=true, bizId=10000。
3. 调用用户新增接口时,将10000作为用户的id 传入。
上面2种方案都行,自行决定使用哪种方案。 本系统中用户头像上传使用的是流程1.
- 简介
- 会员版
- 3.x和4.x的区别
- 新手必读
- 如何高效提问
- 项目地址
- 项目截图
- 架构介绍
- 开发规范
- 租户模式介绍
- lamp-web和lamp-web-plus的区别
- lamp-cloud和lamp-boot区别
- 免费视频&软件下载
- 文档反馈
- lamp-cloud
- 服务介绍
- 环境要求
- 工程导入
- nacos启动(单机版)
- nacos启动(集群版)
- 将配置文件导入Nacos
- seata启动(单机版)
- DATASOURCE模式启动(会员版)
- SCHEMA模式启动
- COLUMN模式
- NONE模式
- lamp-web启动
- lamp-web生产部署
- lamp-web-plus启动(会员版)
- lamp-web-plus生产部署
- lamp-boot
- 环境要求
- 工程导入
- DATASOURCE模式启动(会员版)
- SCHEMA模式启动
- COLUMN模式启动
- NONE模式启动
- lamp-web启动
- lamp-web生产部署
- lamp-web-plus启动(会员版)
- lamp-web-plus生产部署
- 功能介绍
- 租户设置
- 数据源配置(会员版)
- 租户管理
- 超级用户
- 工作台
- 通知公告
- 组织管理
- 机构管理
- 岗位管理
- 用户管理
- 资源中心
- 消息中心
- 短息模版
- 短信中心
- 附件管理
- 流程管理
- 流程部署
- 模型管理
- 系统设置
- 菜单管理
- 角色管理
- 字典管理
- 地区管理
- 参数管理
- 操作日志
- 登录日志
- 在线用户
- 应用管理
- 网关管理
- 限流规则
- 组织访问
- 开发者管理
- 定时任务
- 接口文档
- Nacos
- 服务监控
- 数据库监控
- 缓存监控
- zipkin监控
- SkyWalking监控
- 常用配置
- 如何保证我的代码能更新到最新代码
- 序列化和反序列化
- 修改日志级别
- 文件上传&下载&预览
- 修改租户模式
- 分页
- 导入导出
- 请求放行(忽略token&忽略URI权限&忽略租户编码)
- 异常处理
- 全局返回
- 参数校验(会员版)
- 系统日志
- 自研权限认证(URI、按钮、菜单)
- 数据权限(旧)
- 数据库配置
- Mybatis配置
- 更多数据库/数据源/Mybaits配置
- Redis(缓存)配置
- RabbitMq配置
- 灰度发布
- 上手开发
- 表结构整理
- 项目结构&依赖&调用流程介绍
- 生成一个新服务
- 生成后端代码
- 生成前端lamp-web代码
- 生成前端项目lamp-web-plus代码
- 跨域处理
- Swagger文档调试技巧
- FeignClient接口调用
- 多租户实现原理
- 分布式事务
- Zipkin配置(过时)
- SkyWalking配置
- 代码生成器和自动回显组件使用介绍
- lamp-util原理解析
- 全局注解(lamp-annotation)
- 核心包(lamp-core)
- 自动回显(lamp-echo-starter)
- 权限控制(lamp-security-starter)
- 当前登录用户信息(lamp-jwt-starter)
- 缓存(lamp-cache-starter)
- SpringBoot全局配置(lamp-boot-util)
- SpringCloud全局配置(lamp-cloud-starter)
- 数据源&持久层配置(lamp-databases)
- 对象属性复制(lamp-dozer-starter)
- 操作日志(lamp-log-starter)
- 消息队列(lamp-mq-starter)
- 在线文档(lamp-swagger2-starter)
- 前后端表单统一验证(lamp-validator-starter)
- 防止Xss攻击(lamp-xss-starter)
- 生产部署
- 部署前言
- jar部署