@RequestMapping({"/signature"})
public MessageBean signature(HttpServletRequest request) {
try {
User loginedUser = SuperKit.getLoginedUser(request);
HttpClient httpClient = new HttpClient(Optional.empty());
String timestamp = Value.getString(System.currentTimeMillis());
String signature = CryptoUtil.md5(appToken + appSecret + timestamp);
HttpHeader httpHeader = new HttpHeader();
httpHeader.addProperty("x-qys-timestamp", timestamp);
httpHeader.addProperty("x-qys-signature", signature);
httpHeader.addProperty("x-qys-accesstoken", appToken);
HttpParamers paramers = new HttpParamers(HttpMethod.GET);
paramers.addParam("name", loginedUser.getUserName());
paramers.addParam("cardno", loginedUser.getIdNumber());
paramers.addParam("contact", loginedUser.getMobile());
String callbackUrl = SuperKit.getStringFromDBConfig("SYS-SYS-0009")+ "/ctrl/personSign/saveSignature";
paramers.addParam("callback", callbackUrl);
//获取签名版地址的方法
String data = httpClient.doPost("https://open-shusp.qiyuesuo.cn/zwdt/signature/url", paramers, httpHeader);
JSONObject json = JSONObject.parseObject(data);
String message = json.getString("message");
if ("SUCCESS".equalsIgnoreCase(message)) {
return SuperKit.success(json);
} else {
return SuperKit.error(message);
}
} catch (Exception e) {
return SuperKit.error(e.getMessage());
}
}
@RequestMapping(value = "/saveSignature")
public MessageBean saveSignature(HttpServletRequest request) {
User loginedUser = SuperKit.getLoginedUser(request);
HttpClient httpClient = new HttpClient(Optional.empty());
String timestamp = Value.getString(System.currentTimeMillis());
String signature = CryptoUtil.md5(appToken + appSecret + timestamp);
HttpHeader httpHeader = new HttpHeader();
httpHeader.addProperty("x-qys-timestamp", timestamp);
httpHeader.addProperty("x-qys-signature", signature);
httpHeader.addProperty("x-qys-accesstoken", appToken);
HttpParamers paramers = new HttpParamers(HttpMethod.GET);
String data = null;
try {
List<UserinfoEntity> userinfoEntities=new ArrayList<>();
//查询用户表中没有设置个性签名的所有用户
DataTable dt = DBManager.getDataTable("SELECT ID,ID_NUMBER,SIGNPHOTO FROM G_USERINFO WHERE SIGNPHOTO IS NULL");
if(dt!=null && dt.getRowCount()>0){
for(DataRow dr:dt.getRows()){
UserinfoEntity userinfoEntity = new UserinfoEntity();
String id = dr.getString("ID");
String idNumber = dr.getString("ID_NUMBER");
if ("".equals(idNumber)) continue;
//远程接口参数
paramers.addParam("id",idNumber);
data = httpClient.doGet("https://open-shusp.qiyuesuo.cn/zwdt/personal/signature", paramers, httpHeader);
JSONObject json = JSONObject.parseObject(data);
String signPhoto = json.getString("sealImg");
if ("".equals(signPhoto)) continue;
userinfoEntity.setId(id);
userinfoEntity.setSignphoto(signPhoto);
userinfoEntities.add(userinfoEntity);
}
}
entityDao.batchUpdateNotNull(userinfoEntities);
return SuperKit.success();
} catch (Exception e) {
e.printStackTrace();
return SuperKit.error();
}
}
接口调试之获取个人签名的方法
最新推荐文章于 2024-05-13 21:57:37 发布