大佬,不过现有的无论是文件上传插件,还是其他的附件上传插件,都没有原生提供去自定义所上传附件名称的方法,只有自定义附件的存储路径;
接您的上一个帖子,借助附件上传单元格+服务端命令的方式修改附件是可行的,新的变化主要是提出的附件规则,特殊字符或者年月比较容易,序列号问题正常考虑使用自动编号字段来模拟,这里根据之前处理这类的经验,也可以自建外联表来维护
前缀+年月+next_val代表下一个上传附件的序号,新建存储过程(主要是为了防止并发问题,两个附件获取到同一个序号)来维护每次更新附件名称时获取的序号,之后拼接新的附件名称,执行SQL命令更新。
- -- 源代码
- CREATE PROCEDURE forguncy_shawn.get_next_check_no(
- IN p_prefix VARCHAR(20),
- IN p_date_part CHAR(6),
- OUT p_seq INT
- )
- BEGIN
- DECLARE v_next_val INT DEFAULT NULL;
-
- SELECT next_val INTO v_next_val
- FROM check_no_seq
- WHERE prefix = p_prefix AND date_part = p_date_part
- FOR UPDATE;
-
- IF v_next_val IS NULL THEN
- INSERT INTO check_no_seq(prefix, date_part, next_val)
- VALUES(p_prefix, p_date_part, 1);
- SET p_seq = 1;
- ELSE
- SET p_seq = v_next_val;
- UPDATE check_no_seq
- SET next_val = next_val + 1
- WHERE prefix = p_prefix AND date_part = p_date_part;
- end if;
- end
复制代码
|