热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

现象与本质——附件与影像概念之争

参加一个产品讨论,其中有在业务处理过程中,需要上传附件和影像。提到有无必要区分这两个概念。在我们所做的系统中,上传走有两个入口(按钮),分别是影像和附件。所谓影像,只能上传图片

参加一个产品讨论,其中有在业务处理过程中,需要上传"附件"和"影像"。提到有无必要区分这两个概念。在我们所做的系统中,上传走有两个入口(按钮),分别是影像和附件。所谓影像,只能上传图片,附件上传除图像之外的其他格式的文件。我们的内部系统就是这样的处理方式。

从实本质上讲,无论"附件"和"影像",都是广义的附件,直白讲就是某事项"相关/附带的文件"。为何做这两种区分?有几个观点。

会上的一个观点是在实际业务中"影像"是需要存档的,其他不需要存档。用这种简单通俗的方式,避免用户原选择困难(我那些需要存档?)

还有一个观点是,影像可以线上预览,其他不可以。这个观点是我之前咨询的内控开发人员时对方说的原因。我当时就跟很奇怪,为何要做这个区分。

其实这是一种很不合理划分。

1,按照字面含义,"附件"的范围要大于"影像",所以从语义上讲,这种区分是站不住脚的,是不合理的。也会给使用者着带来困惑,无所适从,"这份文件到底要往哪里传?"

2,至于说的影像需要存档这个观点,也比较牵强。"只有影像才需要存档,用户比较容易区别(否则不知道哪些要存档,哪些不需要存档)"。一是需要存档的资料不一定原生就是图片格式,如果用这个标准来作为是否存档的判定标准,还需要全部转换成图片格式。再一个就是,是否需要存档,并不取决于资料的文件格式,而是取决于内容。比如财务上要求发票作为很重要的财务凭证,必须要存档。发票在系统中的形式有两种,纸质发票的扫描件(图片格式),电子发票(PDF格式),无论那种格式都需要"存档"。还有合同系统的合同文本是最重要的电子材料,大多以office,PDF等形式存在,而极少是图片格式。如果按照图片存档,其他不存档的说法,决定文档是否存档这个问题就转化为决定哪些文档需要转成图片,问题同样存在。

我猜想这种观点的出处在于传统共享系统中,大部分需要审核的业务财务资料都是纸面的(比如纸质发票收据),为了方便在系统中提前预审,需要转换成电子形式的文件上传到系统中。而转换当方式通常是扫描仪扫描成图片文件。以讹传讹,习惯使然,就有了"只有图片格式的才需要存档"这个说法。

3,第二个说法,只有图片文件才能在线预览,更站不住脚。确实图片预显示是浏览器天然支持的(目前软件系统客户端都是浏览器版本的),但是现在不同了,浏览器支持更多的格式的文档在线浏览,比如PDF,还有很多的提供文档在线阅读甚至编辑的插件、服务,支持几乎所有文档合适。因此不同合格式的文档在线浏览根本就不是问题。

 

往大里说,从档案管理的角度讲,这些附件还是影像,都是"档案",无论是什么格式,无论有没有签名(现在推行的电子发票都是有签名的)。如果要分类,分成附件和影像,绝对不是好的分类标方法。从档案管理的角度讲,从业务需求分类,根据档案内容分类更合理,比如分为发票,合同,订单。

综上,把附件分为影像和档案两个分类或上传入口不妥,根据内容分更好。所以说,解决问题,要透过现象看本质,而不要把手段当目的。

 



推荐阅读
  • HTML:  将文件拖拽到此区域 ... [详细]
  • 探索百度WebFE团队打造的强大HTML5上传插件Web Uploader
    本文将详细介绍由百度WebFE团队开发的Web Uploader,这是一款集成了HTML5与Flash技术的上传组件,以其卓越的用户体验和强大的功能著称。 ... [详细]
  • 高效的JavaScript异步资源加载解决方案
    本文探讨了如何通过异步加载技术处理网页中大型第三方插件的加载问题,避免将大文件打包进主JS文件中导致的加载时间过长,介绍了实现异步加载的具体方法及其优化。 ... [详细]
  • JavaScript 实现图片文件转Base64编码的方法
    本文详细介绍了如何使用JavaScript将用户通过文件输入控件选择的图片文件转换为Base64编码字符串,适用于Web前端开发中图片上传前的预处理。 ... [详细]
  • 本文详细探讨了在Java中如何将图像对象转换为文件和字节数组(Byte[])的技术。虽然网络上存在大量相关资料,但实际操作时仍需注意细节。本文通过使用JMSL 4.0库中的图表对象作为示例,提供了一种实用的方法。 ... [详细]
  • H5技术实现经典游戏《贪吃蛇》
    本文将分享一个使用HTML5技术实现的经典小游戏——《贪吃蛇》。通过H5技术,我们将探讨如何构建这款游戏的两种主要玩法:积分闯关和无尽模式。 ... [详细]
  • Docker安全策略与管理
    本文探讨了Docker的安全挑战、核心安全特性及其管理策略,旨在帮助读者深入理解Docker安全机制,并提供实用的安全管理建议。 ... [详细]
  • 3D打印与延时摄影的创意融合
    本文探讨了如何将3D打印技术与延时摄影技术相结合,创造出令人惊叹的视觉效果。通过详细介绍实现这一创意的过程,包括环境搭建、设备安装及软件设置等关键步骤。 ... [详细]
  • 对于初学者而言,搭建一个高效稳定的 Python 开发环境是入门的关键一步。本文将详细介绍如何利用 Anaconda 和 Jupyter Notebook 来构建一个既易于管理又功能强大的开发环境。 ... [详细]
  • CSS Border 属性:solid 边框的使用详解
    本文详细介绍了如何在CSS中使用solid边框属性,包括其基本语法、应用场景及高级技巧,适合初学者和进阶用户参考。 ... [详细]
  • 2023年,Android开发前景如何?25岁还能转行吗?
    近期,关于Android开发行业的讨论在多个平台上热度不减,许多人担忧其未来发展。本文将探讨当前Android开发市场的现状、薪资水平及职业选择建议。 ... [详细]
  • 使用CSS实现鼠标悬停时图片或按钮的平滑放大效果
    通过CSS技术,当鼠标悬停在图片或按钮上时,可以实现元素平滑放大的视觉效果,并可自由调整动画的持续时间。本文将详细介绍如何利用CSS实现这一功能。 ... [详细]
  • 本周三大青年学术分享会即将开启
    由雷锋网旗下的AI研习社主办,旨在促进AI领域的知识共享和技术交流。通过邀请来自学术界和工业界的专家进行在线分享,活动致力于搭建一个连接理论与实践的平台。 ... [详细]
  • 二维码的实现与应用
    本文介绍了二维码的基本概念、分类及其优缺点,并详细描述了如何使用Java编程语言结合第三方库(如ZXing和qrcode.jar)来实现二维码的生成与解析。 ... [详细]
  • Requests库的基本使用方法
    本文介绍了Python中Requests库的基础用法,包括如何安装、GET和POST请求的实现、如何处理Cookies和Headers,以及如何解析JSON响应。相比urllib库,Requests库提供了更为简洁高效的接口来处理HTTP请求。 ... [详细]
author-avatar
上海蓝色的梦在哪
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有