3.22新增驾驶员接口addDriver
**请求地址:** - `/ivci/api/driver/addDriver` **请求方式:** - POST,GET **参数说明** |参数名称|类型|说明|备注| |:---- |:---|:----- |----- | |content |String |请求的加密数据 |必填 | |merchantId |String |请求用户所属商户 | 必填 | **备注** content经过RSA解密后的json格式 ``` { "userName":"testuser", "antiFake":"4bbab6ff0d8042548cc6f2df9f3655fa", "timestamp":"20160518165030", "serverIP":"127.0.0.1", "addDriver":{ "driverName":"jasion", "birthday":"1986-10-29", "sex":1, "province":"广东", "city":"深圳", "entryTime":"2016-05-05", "deptId":153, "phoneNo":"18888888888", "email":"jasion@gmail.com", "vehicleId":12345, "licenseNo":"YB123456789", "licenseGrade":"A1", "drivingAge":3.5, "driverLabel":"成为" } } ``` **content参数说明** |名称|类型|说明|备注| |:---- |:---|:----- |----- | |userName | String | 用户名| 必须| |antiFake | String | 防伪随机串| 必须| |timestamp | String | 请求时间戳,精确到秒| 必须| |serverIP | String | 服务器IP| 必须| |addDriver | json | 新增驾驶员信息| 必须| |addDriver.driverName | String| 新增驾驶员名称 |必须| |addDriver.birthday | Date| 新增驾驶员生日| | |addDriver.sex | Int| 新增驾驶员性别,男=1,女=2| | |addDriver.province | String| 驾驶员省份| | |addDriver.city | String| 驾驶员城市| | |addDriver.entryTime |Date| 驾驶员入职时间| | |addDriver.deptId | int| 部门id | 必须| |addDriver.phoneNo | String| 驾驶员电话 | 必须| |addDriver.email |String| 驾驶员email| | |addDriver.vehicleId |Int| 车辆Id,需要先用getUserVehicles接口获取| | |addDriver.licenseNo |String| 驾驶证件号| | |addDriver.licenseGrade | String| 驾驶证级别| | |addDriver.drivingAge | Double| 驾龄| | |addDriver.driverLabel | String| 驾驶员标签| | |addDriver.passWord | String| 驾驶员密码,如果没有传,则是系统默认的密码| | **使用示例:** 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=",\"addDriver\":{.............}";//组装车辆信息 String dataStr="{\"userName\":\"testuser\",\"antiFake\":\""+signStr+"\",\"timestamp\":\""+timestamp+"\",\"serverIP\":\""+ip+"\" "+ext+" }"; String content=RSAUtils.encryptByPrivateKey(dataStr, privateKey); ``` 2. 前端 后台返回给前端加密后的content,然后发送请求调用 http://xxxxx/ivci/api/driver/addDriver?merchantId=100000&content=content **返回数据** 返回数据统一都是json格式 ```json {"code":1,"msg":"操作失败","data":{}} ``` **返回参数** |名称|类型|说明|备注| |:---- |:---|:----- |----- | |code | String | 操作结果码(成功=0,失败=1),见附录1 | 返回| |msg |String | 操作返回信息(一般操作成功,返回null,失败的操作,才返回提示信息) | | |data | json | {driverId:123} | 返回| 返回的data 需要解密,解密过程如下: ```java String key="......"; String mi="56D56B912C68308AA6D863DE087DBFD82D65C37836FC15E0B92"; String ming=RSAUtils.decryptByPrivateKey(mi, key); ```