DeteMin
2020-03-31 77c62e023d2dc31200fc696158df84b3aee90ee7
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
67
68
69
70
71
72
73
74
package com.basic.security.manager.impl.cblite;
 
import com.basic.security.manager.impl.sqlite.SlTimeManager;
import com.basic.security.model.ModelAdapter;
import com.basic.security.utils.Constants;
import com.couchbase.lite.Expression;
 
import java.util.List;
 
/**
 * 时间规则的管理类
 */
public class TimeManager extends BaseManager {
 
    // 获取所有的时间规则
    public static List<ModelAdapter> getAllTimeRule() {
        if (Constants.useCouchbase) {
            Expression expression = Expression.property("table").equalTo(Expression.string("time"));
            return findList(expression);
        } else {
            return SlTimeManager.getAllTimeRule();
        }
 
    }
 
    // 获取所有启用的时间规则
    public static List<ModelAdapter> getAllUseTimeRule() {
        if (Constants.useCouchbase) {
            Expression expression = Expression.property("table").equalTo(Expression.string("time"))
                    .and(Expression.property("is_use").equalTo(Expression.string("1")));
            return findList(expression);
        } else {
            return SlTimeManager.getAllUseTimeRule();
        }
 
    }
 
    // 删除某个时间规则
    public static void deleteOneTimeRule(ModelAdapter timeRuleDocument) {
        if (Constants.useCouchbase) {
            try {
                delete(findById(timeRuleDocument.getId()));
            } catch (Exception e) {
                e.printStackTrace();
            }
        } else {
            SlTimeManager.deleteOneTimeRule(timeRuleDocument);
        }
 
    }
 
    // 获取时间规则的名称中是否已有此规则名称
    public static boolean isContain(String timeRuleName) {
        if (Constants.useCouchbase) {
            List<ModelAdapter> allTimeRule = getAllTimeRule();
            for (ModelAdapter timeRule : allTimeRule) {
                if (timeRuleName.equals(timeRule.getString("time_rule_name"))) {
                    return true;
                }
            }
            return false;
        } else {
            return SlTimeManager.isContain(timeRuleName);
        }
    }
 
    public static void saveTime(ModelAdapter timeDocument) {
        if (Constants.useCouchbase) {
            BaseManager.save(timeDocument);
        } else {
            SlTimeManager.saveTime(timeDocument);
        }
    }
}