sql解密

This commit is contained in:
钱涛 2022-11-08 11:10:56 +08:00
parent 729389dcef
commit 21ccf6cbcb
2 changed files with 29 additions and 4 deletions

View File

@ -1,12 +1,14 @@
package com.engine.salary.service.impl;
import com.engine.core.impl.Service;
import com.engine.salary.encrypt.AESEncryptUtil;
import com.engine.salary.entity.datacollection.DataCollectionEmployee;
import com.engine.salary.entity.salaryformula.ExpressFormula;
import com.engine.salary.entity.salaryformula.po.FormulaVar;
import com.engine.salary.enums.salaryformula.ReferenceTypeEnum;
import com.engine.salary.formlua.entity.parameter.DataType;
import com.engine.salary.service.FormulaRunService;
import com.engine.salary.sys.enums.OpenEnum;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
@ -56,6 +58,8 @@ public class FormulaRunServiceImpl extends Service implements FormulaRunService
String extendParam = expressFormula.getExtendParam();
String sqlReturnKey = "";
String datasourceId = "";
String openDecrypt = "";
String result = "";
try {
JsonNode jsonNode = objectMapper.readTree(extendParam);
//返回值配置
@ -71,6 +75,11 @@ public class FormulaRunServiceImpl extends Service implements FormulaRunService
datasourceId = datasourceIdNode.asText();
}
}
//是否需要解密
JsonNode decrypt = jsonNode.get("openDecrypt");
if (decrypt != null) {
openDecrypt = decrypt.asText().trim();
}
} catch (JsonProcessingException e) {
log.error("express execute fail, sql extendParam parse fail", e);
}
@ -89,18 +98,22 @@ public class FormulaRunServiceImpl extends Service implements FormulaRunService
RecordSetDataSource rs = new RecordSetDataSource(datasourceId);
if (rs.executeSql(sql)) {
if (rs.next()) {
return rs.getString(sqlReturnKey);
result = rs.getString(sqlReturnKey);
}
}
} else {
RecordSet rs = new RecordSet();
if (rs.execute(sql)) {
if (rs.next()) {
return rs.getString(sqlReturnKey);
result = rs.getString(sqlReturnKey);
}
}
}
return StringUtils.EMPTY;
if (OpenEnum.OPEN.getValue().equals(openDecrypt)) {
result = AESEncryptUtil.decrypt(openDecrypt);
}
return result;
}
private Object runFormula(ExpressFormula expressFormula, List<FormulaVar> formulaVars) throws Exception {

View File

@ -198,7 +198,19 @@ public class SalaryAcctCalculateServiceImpl extends Service implements SalaryAcc
if (salaryItemIdKeySalarySobItemPOMap.containsKey(salaryItemId)) {
// 转换成薪资核算结果po
SalaryAcctResultTempPO salaryAcctResultTempPO = new SalaryAcctResultTempPO()
.setSalaryAcctRecordId(salaryAcctEmployeePO.getSalaryAcctRecordId()).setSalaryAcctEmpId(salaryAcctEmployeePO.getId()).setEmployeeId(salaryAcctEmployeePO.getEmployeeId()).setTaxAgentId(salaryAcctEmployeePO.getTaxAgentId()).setSalarySobId(salaryAcctEmployeePO.getSalarySobId()).setSalaryItemId(salaryItemPO.getId()).setResultValue(resultValue).setCalculateKey(salaryAcctCalculateBO.getCalculateKey()).setCreator((long) user.getUID()).setCreateTime(now).setUpdateTime(now).setTenantKey(SalaryDefaultTenantConstant.DEFAULT_TENANT_KEY).setDeleteType(0);
.setSalaryAcctRecordId(salaryAcctEmployeePO.getSalaryAcctRecordId())
.setSalaryAcctEmpId(salaryAcctEmployeePO.getId())
.setEmployeeId(salaryAcctEmployeePO.getEmployeeId())
.setTaxAgentId(salaryAcctEmployeePO.getTaxAgentId())
.setSalarySobId(salaryAcctEmployeePO.getSalarySobId())
.setSalaryItemId(salaryItemPO.getId())
.setResultValue(resultValue)
.setCalculateKey(salaryAcctCalculateBO.getCalculateKey())
.setCreator((long) user.getUID())
.setCreateTime(now)
.setUpdateTime(now)
.setTenantKey(SalaryDefaultTenantConstant.DEFAULT_TENANT_KEY)
.setDeleteType(0);
salaryAcctResultTempPOS.add(salaryAcctResultTempPO);
}
}