cshenfu
2024-05-21 09d8c671d5e6e6045677bfb5218a5fb78c26aa0f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
'use strict';
module.exports = {
    /**
     * 此函数名称
     * @url user/pub/test1 前端调用的url参数地址
     * data 请求参数
     * @param {String} params1  参数1
     */
    main: async (event) => {
        let { data = {}, userInfo, util, filterResponse, originalParam } = event;
        let { customUtil, config, pubFun, vk, db, _ } = util;
        let { uid } = data;
        let res = {
            code: 0,
            msg: "",
            data: {
                todaySum: 0,
                totalSum: 0,
                totalDay: 0,
            }
        };
        // 业务逻辑开始-----------------------------------------------------------
        // 统计用户所有的
        let { todayStart } = vk.pubfn.getCommonTime(new Date());
 
        //今天做题量
        res.data.todaySum = await vk.baseDao.sum({
            dbName: "q_answercard_his", // 表名
            fieldName: "num", // 需要求和的字段名
            whereJson: {
                uid,
                _add_time: _.gte(todayStart)
            }
        });
 
        //总做题量
        res.data.totalSum = await vk.baseDao.sum({
            dbName: "q_answercard_his", // 表名
            fieldName: "num", // 需要求和的字段名
            whereJson: {
                uid
            }
        });
 
        //做题天数
 
        //下面为什么会报错 jql中也没问题呀?
        // res.data.totalDay = db.collection('q_answercard_his')
        //     .where({
        //         uid: uid
        //     })
        //     .field('_add_date_str')
        //     .distinct()
        //     .get()
 
        res.data.totalDay = await vk.baseDao.count({
            dbName: "q_answercard_his", // 表名
            whereJson: {
                uid
            }
        });
 
        // 业务逻辑结束-----------------------------------------------------------
        return res;
    }
}