接口返回的消息格式JSON

用Map来层层传递,最后返回给前端JSON格式数据。

 
package cn.duchaoqun;  
 
/**  
 * 服务返回结果  
 */  
class RetService extends HashMap {  
    private static final String STATE_CODE = "code"  
    private static final String STATE_CODE_SUCCESS = "00"  
    private static final String STATE_CODE_FAIL = "01"  
    private static final String STATE_CODE_UNKNOWN = "99"  
  
    private static final String MESSAGE = "status"  
    private static final String MESSAGE_SUCCESS = "处理成功"  
    private static final String MESSAGE_FAIL = "处理失败"  
    private static final String MESSAGE_UNKNOWN = "系统异常"  
  
    private static final String DATA = "data"  
  
    RetService() {}  
  
    static RetService success(Map data) {  
        def ret = new RetService()  
        ret.put(STATE_CODE, STATE_CODE_SUCCESS)  
        ret.put(MESSAGE, MESSAGE_SUCCESS)  
        ret.put(DATA, data)  
        return ret  
    }  
  
    static RetService fail(Map data) {  
        def ret = new RetService()  
        ret.put(STATE_CODE, STATE_CODE_FAIL)  
        ret.put(MESSAGE, MESSAGE_FAIL)  
        ret.put(DATA, data)  
        return ret  
    }  
  
    static RetService unknown(Map data) {  
        def ret = new RetService()  
        ret.put(STATE_CODE, STATE_CODE_UNKNOWN)  
        ret.put(MESSAGE, MESSAGE_UNKNOWN)  
        ret.put(DATA, data)  
        return ret  
    }  
  
    boolean isOk() {  
        if (STATE_CODE_SUCCESS == get(STATE_CODE)) {  
            return true  
        }  
        return false  
    }  
  
    boolean isFail() {  
        if (STATE_CODE_FAIL == get(STATE_CODE)) {  
            return true  
        }  
        return false  
    }  
  
    boolean isUnknown() {  
        if (STATE_CODE_UNKNOWN == get(STATE_CODE)) {  
            return true  
        }  
        return false  
    }  
}