/submit_tools

看看谁还没提交!!!(根据人员名单和提交名单快速给出未提交的人,支持邮箱QQ等别名判断条件)

Primary LanguageGo

submit_tools

项目由来

最近在做一些群内的人员管理工作,经常要下发表格,筛选出没提交的人。
众所周知,懒是第一生产力,于是开发了一个可以根据人员信息表与实际提交信息,直接计算出未提交名单的工具。

名词介绍

  • 待提交清单,每行是一个人的各种信息,每一行的各个字段可唯一标识该成员,称为可标示此人的「别名」
  • 已提交清单,可以是一行行已提交的人的信息,也可以不分行。(这个地方还要再设计一下)

功能

  • 待提交清单读取
    • 途径多样:从多种途径中读取待提交清单,现已支持字符串、csv、io.Reader,预留了接口,可非常方便支持其他读取入口,如数据库
    • 支持自定义分隔符,如 txt 可能常用的是空格作为分隔,而 csv 用的是分号,都支持自定义
  • 自定义标示与处理:
    • 忽略特定行信息(例如忽略csv与excel标题)
    • 忽略特定列信息(例如csv与excel第一列这种的无意义的id字段,无法唯一标示某个提交人,应该去除)
    • 自定义输出列信息(最后输出统计结果时,可以指定输出哪些列,而不是输出该成员所有信息)

快速开始

参考示例

目前主要缺点(待完善)

  • 接口写得太乱了
  • 已提交清单的读取功能还不够强大
  • 网络相关的api未封装

项目结构

  • core: 核心
  • example: 示例
  • desktop: 旧版本,已废弃

注:敏感信息文件可存放在任意目录下的 secret 文件夹中。