3.13查询用户可操作的角色接口getUserPrisRoleList
**请求地址:** - `/ivci/api/role/getUserPrisRoleList` **请求方式:** - POST,GET **参数说明** |参数名称|类型|说明|备注| |:---- |:---|:----- |----- | |content |String |请求的加密数据 |必填 | |merchantId |String |请求用户所属商户 | 必填 | **备注** content经过RSA解密后的json格式 ``` { "userName":"testuser", "antiFake":"4bbab6ff0d8042548cc6f2df9f3655fa", "timestamp":"20160518165030", "serverIP":"127.0.0.1" } ``` **content参数说明** |名称|类型|说明|备注| |:---- |:---|:----- |----- | |userName | String | 用户名 |必须| |antiFake | String | 防伪随机串 | 必须| |timestamp | String| 请求时间戳,精确到秒 |必须| |serverIP | String| 服务器IP | 必须| |queryRole | Json | 查询的角色信息 |非必须| |queryRole.deptId | Int| 角色所属部门id(如果传了此Id,则根据部门ID查询角色信息,不传则默认查询请求用户当前部门的) | 非必须| **使用示例:** 1. 后台 ```java //读取privateKeyStr String privateKey=........... //获取数据签名 SimpleDateFormat formatter = new SimpleDateFormat ("yyyyMMddHHmmss"); String timestamp=formatter.format(new Date()); String signStr=RSAUtils.sign(timestamp.getBytes(), privateKey); String ip=request.getRemoteAddr(); //用私钥加密 String ext=""; String dataStr="{\"userName\":\"testuser\",\"antiFake\":\""+signStr+"\",\"timestamp\":\""+timestamp+"\",\"serverIP\":\""+ip+"\" "+ext+" }"; String content=RSAUtils.encryptByPrivateKey(dataStr, privateKey); ``` 2. 前端 后台返回给前端加密后的content,然后发送请求调用 http://xxxxx/ivci/api/role/getUserPrisRoleList?merchantId=100000&content=content **返回数据** 返回数据统一都是json格式 ```json {"code":0,"msg":"操作失败","data":{}} ``` **返回参数** |名称|类型|说明|备注| |:---- |:---|:----- |----- | |code | String |操作结果码(成功=0,失败=1),见附录1 | 返回| |msg| String | 操作返回信息(一般操作成功,返回null,失败的操作,才返回提示信息) | | |data | json | 操作返回数据结果(操作成功,返回结果,比如查询成功返回查询的数据,如果是批量查询则是返回数据,单个查询则是json object。如果是删除更新等操作,则返回null,即不返回信息)| | 返回的data 需要解密,解密过程如下: ```java String key="......"; String mi="56D56B912C68308AA6D863DE087DBFD82D65C37836FC15E0B92"; String ming=RSAUtils.decryptByPrivateKey(mi, key); ```