p2p状态码
因為需要的確定狀態(tài)太多,減少數(shù)據(jù)庫的壓力,采取二進制表示狀態(tài)碼
狀態(tài)碼工具類
package com.xmg.p2p.base.util;/*** 用戶狀態(tài)類,記錄用戶在平臺使用系統(tǒng)中所有的狀態(tài)。* * @author Administrator*/ public class BitStatesUtils {public final static Long OP_BIND_PHONE = 1L << 0; // 用戶綁定手機狀態(tài)碼public final static Long OP_BIND_EMAIL = 1L << 1; // 用戶綁定郵箱狀態(tài)碼public final static Long OP_BASIC_INFO = 1L << 2; // 用戶填寫基本資料public final static Long OP_REAL_AUTH = 1L << 3; // 用戶是否已經(jīng)實名認證public final static Long OP_VEDIO_AUTH = 1L << 4; // 用戶是否已經(jīng)視頻認證public final static Long OP_HAS_BIDREQUEST_PROCESS = 1L << 5; // 用戶是否已經(jīng)有一個借款申請在申請流程中public final static Long OP_HAS_BIND_BANK = 1L << 6; // 用戶是否已經(jīng)綁定了銀行卡public final static Long OP_HAS_WITHDRAW_PROCESS = 1L << 7; // 用戶是否有提現(xiàn)在審核流程中/*** @param states* 所有狀態(tài)值* @param value* 需要判斷狀態(tài)值* @return 是否存在*/public static boolean hasState(long states, long value) {return (states & value) != 0;}/*** @param states* 已有狀態(tài)值* @param value* 需要添加狀態(tài)值* @return 新的狀態(tài)值*/public static long addState(long states, long value) {if (hasState(states, value)) {return states;}return (states | value);}/*** @param states* 已有狀態(tài)值* @param value* 需要刪除狀態(tài)值* @return 新的狀態(tài)值*/public static long removeState(long states, long value) {if (!hasState(states, value)) {return states;}return states ^ value;} }?
轉載于:https://www.cnblogs.com/jokerq/p/8588732.html
總結
- 上一篇: 软件开发不是众人拾柴——《人月神话》读书
- 下一篇: Linux实用命令总结