自助打印系统那点事儿

几个月前购买了某公司的若干台自助打印机系统,拖了这么长时间一直没有上线运行,原因在于我的需求改变了这些自助打印系统传统的工作模式,中间尽管花了很多精力,但我认为这些改变是值得花精力去做的。

传统的自助打印机系统工作模式

公司一般都提供一整套的方案,包括自助打印机终端机+管理系统(云端或者服务器),管理系统负责存储打印数据、配置终端机(纸盒配置)、管理用户权限等。终端机上用户刷卡、输密码登录之后,从管理系统里拉取数据,本地生成报表,打印之后记录在管理系统里。这种模式存在几个问题:

  1. 报表是需要在系统实施阶段就确定好的
  2. 管理系统里的数据一般以视图或者数据同步备份的方式从其他业务系统里获取
  3. 用户打印权限需要在自助打印系统的管理系统里配置

解释一下这里的问题:我目前无法确定将来打印多少种报表,但肯定将来会越来越多种类,我不希望每多一种报表都要公司来给我画报表,费用不说,时间耽误不起;我不希望管理系统以上面这种方式获取数据,你要那么多数据没啥用;我的业务系统里已经有打印权限,重新在自助打印机系统里配置权限,对我是重复工作。

我曾经想要的自助打印系统

自助打印系统就是实现打印的功能,别弄那么复杂好不好,我希望……

  • 自助机终端认证了用户身份之后,通过我业务系统的API获取用户可打印的文档列表。比如把当前终端机的ticket和登录的学号给我,我返回的json的信息如下,用这些信息,终端机可以把界面显示出来,类似医院自助打印化验单,刷卡之后,有内容就显示,没内容就空白:
{
  "printerCode": "01",
  "printerName": "打印机1",
  "studentCode": "1234567890",
  "studentName": "姓名",
  "reports": [
    {
      "trayCode": "02",
      "trayName": "Tray02",
      "reportCode": "01",
      "reportName": "report2",
      "fee": null,
      "printLimit": 1,
      "printCount": 0,
      "reportFileUrl": "",
      "reportThumbnailUrl": ""
    },
    {
      "trayCode": "01",
      "trayName": "Tray01",
      "reportCode": "01",
      "reportName": "report1",
      "fee": null,
      "printLimit": 1,
      "printCount": 0,
      "reportFileUrl": "",
      "reportThumbnailUrl": ""
    }
  ]
}
  • 用户选择某个文档打印之后,再通过我业务系统API获取打印的PDF
  • 打印之后,再把打印成功与否的状态写回我的业务系统

不过这么干之后,它们的管理系统似乎可以废掉了,或者只保留打印存档的照片。

后来的解决方案:打印池

李凌做了一个打印池,实现的功能虽然不复杂,但是整套系统功能切分的非常清晰了。

  • 用户在我的系统里选择要打印的报表,预览确认之后,把生成的PDF上传到打印池里,包括份数,我的业务系统里记录该该用户这个报表可打印数量减少。
各种可打印文档列表
查看打印池内待打印文档
  • 用户在自助终端机刷卡或者输密登录,终端机通过它的管理系统从打印池里寻找当前用户可打印的PDF文件,再通过与当前机器纸盒类型做匹配,把能在当前机器上打印的文档显示在界面上,点击打印即可。打印多少份是之前上传文档时已经填写的,用户在终端机只相当于 领取。这跟现在校园卡微信充值有点类似。

优点与问题

这种方式对我来说,优点是显而易见的……

  1. 用户的打印权限是我的业务系统里维护的,不需要二次维护
  2. 打印机的管理系统里不需要存用户的数据
  3. 整个系统几个部分功能非常清晰,哪里出问题都很好查找解决
  4. 将来有多少种新报表,不管怎么修改,我在我的业务系统里做好就行了,不用再找公司做报表……也就是说其他部门想用我的自助打印系统也没有任何问题
  5. 再增加设备会非常方便接入

不过也得承认,这种方式对于用户来说,需要在业务系统里发送报表再去自助机领取,开始时候可能会觉得麻烦。但我们将来会争取把这些都做到微信企业号里,对于生活上深度依赖手机的学生们来说,类似“云打印”的多一步操作应该不是问题。

最后

前几天学校人事处的自助打印系统上线,已经证明这种方式的可行性,所以我在转发时候说“下一步就是学生事务中心的那些自助打印机上线了”,俗话说“好饭不怕晚”,我业务系统里把PDF发到打印池没问题了,但公司终端机从打印池获取数据还需要再调试调试。

将来,不需要各个有需要的部门都购买自助打印设备然后重新实施,现有模式下的机器资源共享完全没有问题。举例来说研究生院或者教务处觉得原来的自助打印机问题太多,不愿意用了,那么好…… 可以修改一下自己的管理系统,让学生把成绩单PDF发到打印池就行了,修改的代码量非常小,只要这些自助打印机里还有空闲的纸盒分配给你们用就可以。

虽然离实现还有一点时间,但我们已经做的这些改变对整个学校信息化建设和资源共享的意义还是值得写一下让大家了解的。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,290评论 6 491
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,107评论 2 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 156,872评论 0 347
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,415评论 1 283
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,453评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,784评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,927评论 3 406
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,691评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,137评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,472评论 2 326
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,622评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,289评论 4 329
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,887评论 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,741评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,977评论 1 265
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,316评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,490评论 2 348

推荐阅读更多精彩内容