|
|
@@ -291,12 +291,34 @@ public class EsignServiceImpl implements EsignService {
|
|
|
// signPos1.setAddSignTime(true);// 是否显示本地签署时间,需要width设置92以上才可以看到时间
|
|
|
posBeansUser.add(signPos1);
|
|
|
platformSignParam.setPosBeans(posBeansUser);//签章位置信息
|
|
|
- signRst=signHelper.platformSign(platformSignParam);
|
|
|
- if (signRst.getErrCode() != 0) {
|
|
|
- String typeMsg="Esign平台自身";
|
|
|
- throw new SuperException(
|
|
|
- MessageFormat.format("{0}用户签章,签署失败: errCode = {1},msg = {2}",
|
|
|
- typeMsg, signRst.getErrCode(), signRst.getMsg()));
|
|
|
+ try {
|
|
|
+ signRst = signHelper.platformSign(platformSignParam);
|
|
|
+ if (signRst.getErrCode() != 0) {
|
|
|
+ String typeMsg = "Esign平台自身";
|
|
|
+ throw new SuperException(
|
|
|
+ MessageFormat.format("{0}用户签章,签署失败: errCode = {1},msg = {2}",
|
|
|
+ typeMsg, signRst.getErrCode(), signRst.getMsg()));
|
|
|
+ }
|
|
|
+ }catch (Exception ex1) {
|
|
|
+ log.error("通过E签宝签章失败:", ex1);
|
|
|
+ //如果e签宝次数用完了,则需要调用平台自签章,111111
|
|
|
+ try {
|
|
|
+ log.info("通过系统重新签章");
|
|
|
+ //将e签宝的参数进行调整以便适应本地生成用户签名
|
|
|
+ if (parm.getWidthUser() != null) {
|
|
|
+ parm.setWidthUser(parm.getWidthUser() - 20);
|
|
|
+ }
|
|
|
+ if (parm.getPosYUser() != null) {
|
|
|
+ parm.setPosYUser(parm.getPosYUser() - 49);
|
|
|
+ }
|
|
|
+ if (parm.getPosXUser() != null) {
|
|
|
+ parm.setPosXUser(parm.getPosXUser() - 50);
|
|
|
+ }
|
|
|
+ return hrSignByPdfStream(parm);
|
|
|
+
|
|
|
+ } catch (Exception e1) {
|
|
|
+ log.error("签章Pdf2,非E签宝,失败:", e1);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
|