SDPM2.0横空出世

Wesley13
• 阅读 642

大概在一年前(准确说是2015-12-8)我发表了博客《SDPM1.0》,当然最后比较折腾:本来只是个练习项目开源了分享给关心的同学而已,只是因为功能上参考了某开源软件,但是被某开源大神说怎么怎么侵权了,懒得扯那咸淡,于是把SDPM1.0的开源关闭了。

你以为这就结束了?但是关注过那篇博客的同学,可能会对我当时的一句话有印象,那就是:如果你要把我当成一个对手,那我一定得当一个合格的对手。

现在,差不多刚好一年,传说中的SDPM2.0横空出世了!是的,SDPM2.0来了!

需求概述

  1. 支持小到几个人的组织,大到上万人的组织
  2. 支持各种常见通知方式
  3. 支持文档库/知识库/WIKI
  4. 支持良好的社区管理
  5. 支持博客
  6. 支持项目/任务管理
  7. 支持各种资源直接无缝链接
  8. 支持全文检索
  9. 支持站内信/及时聊天
  10. 切面功能
  11. #、@功能必须要支持
  12. 一些高级特性
  13. 自定义扩展字段
  14. APP扩展能力
  15. 一些其他截图

支持或大或小的组织规模

我们都知道有的组织很小只有几个人,有的组织很大,可能上万个人也未可知。怎么同时兼顾两种应用场景呢?我们的做法是APP提供组织及应用模式和圈子级应用模式。

这样小的组织只要使用组织级模式即可,而大的组织这可以创建圈子级模式,这样大的或者小的组织都可以有适合自己的模式。

支持各种常见通知方式

短信、邮件、站内信统统支持。

SDPM2.0横空出世

当然,由于有统一的扩展机制,微信、钉钉在未来也可以通过扩展支持。

SDPM2.0横空出世

SDPM2.0横空出世

SDPM2.0横空出世

发送过程支持对人、对组、对组织,总之在这里,所有的操作模式都是一致的。

当然,有可能有的人发送不正常,那也可以在发送详情里面看得清清楚楚:

SDPM2.0横空出世

文档库/知识库/WIKI

作为一个软件人,文档类的需求必须有。

SDPM2.0横空出世

SDPM2.0横空出世

想看看文档历史情况?

SDPM2.0横空出世

看看两个版本的差异?

SDPM2.0横空出世

想恢复某个版本?小伙伴们再也不怕保存错内容了。

SDPM2.0横空出世

想导出PDF?全部导出,自定义导出随便选择:

SDPM2.0横空出世

导出过程一目了然,Confluence导出需要N多分钟的,这里只要一点点的时间。

SDPM2.0横空出世

下面是实际导出TINY文档的时间是61.7秒

SDPM2.0横空出世

从网站下载都要40多秒

SDPM2.0横空出世

实际上导出的是1378页的大部头

SDPM2.0横空出世

排序不合理,要调整?只要拖动即可

SDPM2.0横空出世

想进行权限管理?

SDPM2.0横空出世

各种控制方式,总有一款适合你。

我才不会告诉你这里有许多扩展功能呢,而且保不齐哪天就有出来新的功能了。(这些扩展功能专项会介绍)

SDPM2.0横空出世

需要支持良好的社区管理

作为一个大的组织,怎么能没有自己的社区?

SDPM2.0横空出世

多层级的版面支持,可以一致建下去哦:

SDPM2.0横空出世

SDPM2.0横空出世

想快速进入某个版面?传送门可以送你直达

SDPM2.0横空出世

论坛文章也可有有历史?

SDPM2.0横空出世

版本比较:

SDPM2.0横空出世

小伙伴们再也不担心没有办法回退到修改之前的内容了。

支持博客

SDPM2.0横空出世

公共分类和私有分类支持

SDPM2.0横空出世

SDPM2.0横空出世

当然博客导出也是必须支持的。

SDPM2.0横空出世

105页的博客导出只要4.1秒。

SDPM2.0横空出世

当然,博客的页面历史也一样支持

SDPM2.0横空出世

需要支持项目/任务管理

做软件,怎么可以没有项目和任务管理?想建多少项目还不是你自己说了算?

SDPM2.0横空出世

任务看板是怎么样的?所有的泳道都可以自己管理。

SDPM2.0横空出世

任务详情页可以方便的进行各种任务相关操作。

SDPM2.0横空出世

当然切面上的功能依然存在

SDPM2.0横空出世

只想看部分人的任务?只要简单过滤即可

SDPM2.0横空出世

当然这块内容是刚刚出来,后面还会增加各种有用的图表。

各种资源直接无缝链接

看到上面截图的同学可能看多这么一个东东:

SDPM2.0横空出世

所有的资源,都可以通过相关性和标签进行关联。

SDPM2.0横空出世

SDPM2.0横空出世

一旦打上标签或建立连接:

就可以通过关系图来进行内容遍历:

SDPM2.0横空出世

当然也可以通过标签云进行内容遍历,可以看全部,也可看某个类型的内容

SDPM2.0横空出世

也可以根据已知的标签进行快速查找。

SDPM2.0横空出世

也可以快速把标签进行合并:

SDPM2.0横空出世

支持全文检索

还在用like,这也太OUT了吧?!必须全面支持全文检索。

只要知道一点信息,就可以快速定位你想要的信息。

页面头可以搜索定位所有内容:

SDPM2.0横空出世

进入全文检索,页面,也可以只搜索指定类型的内容:

SDPM2.0横空出世

SDPM2.0横空出世

在文档空间里面可以只搜索本空间的内容

SDPM2.0横空出世

在博客里面,可以只搜索博客的内容

SDPM2.0横空出世

在我的博客里可以只搜索我写的博客

SDPM2.0横空出世

总结一下就是:

提供了不同场景、不同类型、不同人物的搜索范围,使得搜索结果更精准、有效。

支持站内信/及时聊天

站内信现在还是非常通用的一个功能。

SDPM2.0横空出世

我们把站内信个及时聊天合并在了一起,如果只有一个人在线就是站内信,如果是两个人同时在线,就可以有来有往聊个热火朝天了。

切面功能

这里先解释一下什么是切面。

本系统中,把通用的、许多引用里面都应该有的功能叫做切面功能,而对应与要显示这些切面功能的地方,就叫切面。这里的切面和我们常说的AOP理念相识,但是实现层次是功能级别的。

这样,在实现层面可以一次开发到处使用,而且可以在未来透明的增加或者删减切面功能。

比如,我们认为许多资源都需要有浏览情况,关注情况,赞、踩情况、评论情况

SDPM2.0横空出世

OK,我们认为这些功能如果有,那么其操作方式一定是相关的,而且我在哪个业务里实现也是一样的。于是,我们就提取了这些功能为切面功能。这样在操作体验、易开发性、易维护性方面都会有非常多的好处。我只要开发或者在一个地方测试好,就不用担心其他地方不好。

#、@功能必须要支持

我们说信息的存在意义在于利用。这就需要如何快速的让人知道信息,以及快速到达信息。

我们只要在:输入框中输入@,就可以显示出相关的人、组织、角色,也可以输入部分内容进行过滤。

也可以输入#和相关内容的部分进行过滤,一快速连接相关的资源。

SDPM2.0横空出世

SDPM2.0横空出世

关键的关键是,所有的资源都可以到达哦,而不仅仅是某种类型

一些高级特性

  1. 支持SaaS化运维、支持独立域名
  2. 支持想公开就公开,想封闭就封闭的权限控制
  3. 支持在线文档预览,上传的文档想让下载就可以下载,不让下载就只能看看
  4. 完善的历史版本比较和恢复功能
  5. 文件上传一定要方便,可以直接上传;图片可以直接粘贴,甚至可以手机直接上传
  6. 可以支持电脑桌面、PAD、手机访问(我承认手机兼容性方面还没有完全搞定)

SaaS化支持

目前已经全面支持SaaS化服务,只要点点鼠标,填写一些信息就可以有自己的网站了,关键是所有的功能都可以使用。为了方便客户运维自己的品牌,我们支持CNAME转发,可以完全以自己的面貌示人,而不是用我们的网址,也可自己定义自己的LOGO及网站名称。

权限管理

所有的应用都可以进行细致的权限控制。

在线文档预览

经常我们有需要让人看到上传的附件,但是并不希望被人下载。支持word,excel,ppt,pdf等等。

完善的历史版本比较和恢复功能

这个前面有展示,所有的资源,需要的化都可以提供。

文件上传一定要方便,可以直接上传

文件把一个或多个文件直接拖动到上传按钮就可以完成上传,当然也可以点击按钮,再选择一到多个文件完成上传。

SDPM2.0横空出世

点击手机上传,会弹出一个二维码。

SDPM2.0横空出世

手机扫描一下就可以通过拍照或选择上传文件。

图片可以直接粘贴

图片可以通过剪切板直接Paste,也可以自己班图片文件拖入编辑框完成上传。

可以支持电脑桌面、PAD、手机访问

目前手机还有写兼容问题没有处理完毕。

自定义扩展字段

我们知道,无论想的多努力,都无法满足客户的所有应用场景,于是我们提供了自定义字段扩展功能(正在内测中),这样就可以根据需要扩充自己需要的字段了。

比如,同样是文档管理,你可以衍生出需求、设计、测试用例等等专业文档。

APP扩展能力

我们知道,目前完成的功能只是客户需要的一个子集,未来一定会有更多的APP才能满足客户需求,甚至需要为客户提供扩展机制,扩充自己的行业应用。

实际上,我们现在提供的文档、博客、社区、项目等等都是一个个独立的应用,但是因为遵守了引用开发规范,于是它就和现有的功能有机的形成一体了。

比如我们扩展了一个J2EE软件管理的小应用:

SDPM2.0横空出世 SDPM2.0横空出世

我们只是修改了pom依赖关系,就可以简单的把这个引用放入或者去除。

当然,如果您用的是我们的SaaS系统,则可以简单的通过应用列表进行选择:

SDPM2.0横空出世

如果想用自己的域名访问,而不是我们的二级域名,那也非常简单:

申请一个域名,绑定CNAME到二级域名,然后在系统配置中配置绑定的域名信息:

SDPM2.0横空出世

然后就可以使用自己的域名对外提供服务了。

一些其他截图

个人中心

SDPM2.0横空出世

日程中心

SDPM2.0横空出世

通知中心

SDPM2.0横空出世

配置管理台

SDPM2.0横空出世

发个动弹也不是不可以

SDPM2.0横空出世

大事记

总结

到此为止,简单的介绍了一下SDPM2.0的功能和特性,想体验的同学可以访问TINY官网,目前已经开通内测,想申请自己的网站参与内测的小伙伴请PM悠然即可。

当然,目前只是具有了完整的框架支持和初步的APP引用,但是我们已经加快了APP的开发速度,目前APP开发规范也在编制当中,期望更多的同学和我们一起打造SDPM2.0。

如果您对我的博客感兴趣,亲点击左上角的关注,以便收到我的最新动态。

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
待兔 待兔
5个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Jacquelyn38 Jacquelyn38
3年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
Stella981 Stella981
3年前
Android So动态加载 优雅实现与原理分析
背景:漫品Android客户端集成适配转换功能(基于目标识别(So库35M)和人脸识别库(5M)),导致apk体积50M左右,为优化客户端体验,决定实现So文件动态加载.!(https://oscimg.oschina.net/oscnet/00d1ff90e4b34869664fef59e3ec3fdd20b.png)点击上方“蓝字”关注我
Easter79 Easter79
3年前
Twitter的分布式自增ID算法snowflake (Java版)
概述分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。而twitter的snowflake解决了这种需求,最初Twitter把存储系统从MySQL迁移
Wesley13 Wesley13
3年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Wesley13 Wesley13
3年前
35岁是技术人的天花板吗?
35岁是技术人的天花板吗?我非常不认同“35岁现象”,人类没有那么脆弱,人类的智力不会说是35岁之后就停止发展,更不是说35岁之后就没有机会了。马云35岁还在教书,任正非35岁还在工厂上班。为什么技术人员到35岁就应该退役了呢?所以35岁根本就不是一个问题,我今年已经37岁了,我发现我才刚刚找到自己的节奏,刚刚上路。
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
11个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这