文章

为了一盘醋,包了一顿饺子(记账之路)

目前我已经记了11个月的帐了,市面上的记账软件也了解了不少,期间用过钱迹,还用过一木记账。因为我没有开会员,所以只能用一个账套,也不能上传照片,一木记账连备份都不行。我是有过冲动要开钱迹的会员的,但是又忍住了,谁知道哪天我又要换别的软件呢。我又开始找自建方案,搭过ezBookkeeping和cashbook,但都是体验了一两天被我放弃了,都不是我想要的。我忽然想到了公司在用的简道云,这是个低代码平台,可以自定义想要的功能。
确实简道云几乎完美解决了一切问题,包括数据的导入与导出,输入字段的自定义,仪表盘的自定义显示。

下面是我在简道云平台做的一个内容

194.1.png

194.2.png

但是也有问题,免费版有一些限制,我也不可能去付费。下面是我多次导入数据超了。。超了后就不能再添加数据,必须等到下个月重置数据。

194.3.png

后面我就打算直接用mysql来存数据,用granafa来显示图表。 这里需要数据的导入,于是我用了phpmyadmin来做数据的导入。

安装phpmyadmin

docker-compose安装

version: '3'
services:
  phpmyadmin:
    image: phpmyadmin/phpmyadmin
    ports:
      - "80:80"
    environment:
      - PMA_ARBITRARY=1
    network_mode: bridge

连接数据库后,新建表,这里有个小问题,优惠的数据类型我用了text,本应该用float,因为优惠会出现空值,我已经用了null,但是后面导入数据还是会报错

194.4.png

数据用csv进行导入
这里有个地方要注意下,excel打开的csv文件保存后默认是ANSI编码,需要用记事本打开该文件再另存为,修改编码为UFT-8

194.5.png

执行导入

194.6.png

安装granafa

docker-compose安装

services:
 grafana:
   image: grafana/grafana-enterprise
   container_name: grafana
   restart: unless-stopped
   user: '0'
   ports:
    - '3000:3000'
   volumes:
    - '$PWD/data:/var/lib/grafana'

制作图表遇到的坑
1.grfana用transform,选择add filed from calulation,两者相减没有数据
这里我新建了两个query,一个支出,一个收入。然后尝试用转换,将收入减支出,但是没有数据,于是我用下面的方式来做结余数据。

194.7.png

194.8.png

2.仪表盘的时间范围筛选不管用 我想调时间范围,发现没有用,解决办法添加一条where $__timeFilter(start_time)

194.9.png

3.查询的数据条数限制在50条 默认每次的查询都是50条,而且改不了,勾选order,修改limit

194.10.png

194.11.png

4.增加筛选功能,这里需要添加变量

进入仪表盘,点击设置

194.12.png

选择变量,添加变量

194.13.png

名字不能是中文

194.14.png

点击运行查询,可以看到预览值,可以勾选多值,和包含全部,这里我不选了,因为选了后续会报错

194.15.png

如果选了多选或全部后,会报错,不勾选多选和全选是正常的,我一开始以为是中文的问题,但是我尝试改成英文还是报错用不了,不知道什么鬼。

194.16.png

194.17.png

设置好效果如下

194.18.gif

5.当数据为空时不显示内容

194.19.png

比方这个情况下,没有数据的时候,不显示内容,正常应该将空值显示为0
sql写法如下:

194.20.png

虽然数据库有了,图表也有了,但是怎么方便地写入数据呢?手机端难道做一个app?还是小程序?还是网页?就算做出来了,还要加一个登陆验证,还要考虑安全性,防止sql注入等攻击行为。俺不会啊。。先暂时折腾到这一步吧。
蒜鸟蒜鸟,接着用简道云。一个月1千条数据其实够用了。。。

License:  CC BY 4.0