This commit is contained in:
lvleigang 2025-05-21 17:31:01 +08:00
commit ba5b344b9e
2 changed files with 52 additions and 12 deletions

View File

@ -77,7 +77,7 @@ public class IncomeInvoiceDaoImpl extends MybatisGenericDao<IncomeInvoiceEntity,
List<JSONObject> o = (List<JSONObject>) super.selectList(getSqlIdPrifx() + "queryByAloneId", entity); List<JSONObject> o = (List<JSONObject>) super.selectList(getSqlIdPrifx() + "queryByAloneId", entity);
return o; return o;
} }
@DS("htBip")
@Override @Override
public List<JSONObject> queryAccount(IncomeInvoiceEntity jnentity) { public List<JSONObject> queryAccount(IncomeInvoiceEntity jnentity) {
List<JSONObject> o = (List<JSONObject>) super.selectList(getSqlIdPrifx() + "queryAccountByZq", jnentity); List<JSONObject> o = (List<JSONObject>) super.selectList(getSqlIdPrifx() + "queryAccountByZq", jnentity);

View File

@ -890,11 +890,12 @@ public class IncomeInvoiceServiceImpl extends BaseService<IncomeInvoiceEntity, S
} }
private JsonResultEntity sendAccountCodeReport(String ztbm, String cjzq, String rwbm) { private JsonResultEntity sendAccountCodeReport(String ztbm, String cjzq, String rwbm) {
String access_token = getToken(); logger.info("科目余额开始采集数据"+ztbm);
if (access_token == null) { // String access_token = getToken();
return BaseResult.getFailureMessageEntity("token获取失败"); // if (access_token == null) {
} // return BaseResult.getFailureMessageEntity("token获取失败");
String url = uploadBalanceTableUrl+access_token; // }
String url = uploadBalanceTableUrl;
//通过公司编码账期查询该单位的科目余额信息下发有度 //通过公司编码账期查询该单位的科目余额信息下发有度
//查询当月帐套组织 //查询当月帐套组织
IncomeInvoiceEntity jnentity = new IncomeInvoiceEntity(); IncomeInvoiceEntity jnentity = new IncomeInvoiceEntity();
@ -902,20 +903,59 @@ public class IncomeInvoiceServiceImpl extends BaseService<IncomeInvoiceEntity, S
jnentity.setSysData(cjzq); jnentity.setSysData(cjzq);
jnentity.setOrgCode(ztbm); jnentity.setOrgCode(ztbm);
//查询该账期下的科目余额 //查询该账期下的科目余额
// logger.info("111111111111111111");
List<JSONObject> jnlist = incomeInvoiceDao.queryAccount(jnentity); List<JSONObject> jnlist = incomeInvoiceDao.queryAccount(jnentity);
JSONArray balanceTableList = new JSONArray();
for(JSONObject jsonObject :jnlist){
JSONObject balanceTable = new JSONObject();
balanceTable.put("subjectCode", jsonObject.getString("SUBJECTCODE"));
balanceTable.put("subjectName", jsonObject.getString("SUBJECTNAME"));
//格式化
String subjectFullName = jsonObject.getString("SUBJECTFULLNAME");
// 1. 查找第一个反斜杠的位置
int firstIndex = subjectFullName.indexOf("\\");
// 2. 截取第一个反斜杠之后的部分如果存在
String substring = firstIndex != -1
? subjectFullName.substring(firstIndex + 1)
: subjectFullName;
// 3. 将所有剩余的反斜杠替换为下划线
String result = substring.replace("\\", "_");
balanceTable.put("subjectFullName",result );
balanceTable.put("superCode", jsonObject.getString("SUPERCODE"));
balanceTable.put("subjectDir", jsonObject.getString("SUBJECTDIR"));
balanceTable.put("subjectType", jsonObject.getString("SUBJECTTYPE"));
balanceTable.put("subjectLevel", jsonObject.getString("SUBJECTLEVEL"));
balanceTable.put("endLevel", jsonObject.getString("ENDLEVEL"));
balanceTable.put("debitValue", jsonObject.getString("DEBITVALUE"));
balanceTable.put("creditValue", jsonObject.getString("CREDITVALUE"));
balanceTable.put("initialSubjectDir", jsonObject.getString("INITIALSUBJECTDIR"));
balanceTable.put("initialDebitBalanceValue", jsonObject.getString("INITIALDEBITBALANCEVALUE"));
balanceTable.put("initialCreditBalanceValue", jsonObject.getString("INITIALCREDITBALANCEVALUE"));
balanceTable.put("balanceSubjectDir", jsonObject.getString("BALANCESUBJECTDIR"));
balanceTable.put("balanceDeditValue", jsonObject.getString("BALANCEDEDITVALUE"));
balanceTable.put("balanceCreditValue", jsonObject.getString("BALANCECREDITVALUE"));
balanceTable.put("totalDebitValue", jsonObject.getString("TOTALDEBITVALUE"));
balanceTable.put("totalCreditValue", jsonObject.getString("TOTALCREDITVALUE"));
balanceTableList.add(balanceTable);
}
// logger.info("222222222222222222");
//正常来说数组不存在空的情况 如果为空就直接下发空数组给他们 //正常来说数组不存在空的情况 如果为空就直接下发空数组给他们
JSONObject sendData = new JSONObject(); JSONObject sendData = new JSONObject();
sendData.put("accessKey",accessKey); // sendData.put("accessKey",accessKey);
long timestamp = System.currentTimeMillis(); // long timestamp = System.currentTimeMillis();
sendData.put("timestamp",timestamp); // sendData.put("timestamp",timestamp);
sendData.put("taskNo",rwbm); sendData.put("taskNo",rwbm);
sendData.put("period",cjzq); sendData.put("period",cjzq);
String a = YzfSignUtil.signRequest(sendData,accessSecret); // String a = YzfSignUtil.signRequest(sendData,accessSecret);
sendData.put("sign",a); // sendData.put("sign",a);
sendData.put("balanceTableList",jnlist); sendData.put("balanceTableList",balanceTableList);
Map<String, String> headers = new HashMap<>(); Map<String, String> headers = new HashMap<>();
headers.put("Content-Type", "application/json; charset=utf-8"); headers.put("Content-Type", "application/json; charset=utf-8");
logger.info("科目余额开始发送数据"+sendData.toJSONString());
String returndata = sendPost(url, headers, sendData.toJSONString()); String returndata = sendPost(url, headers, sendData.toJSONString());
logger.info("科目余额返回数据"+returndata);
if (returndata != null && JSONObject.isValidObject(returndata)) { if (returndata != null && JSONObject.isValidObject(returndata)) {
JSONObject dataJson = JSONObject.parseObject(returndata); JSONObject dataJson = JSONObject.parseObject(returndata);
if(dataJson != null && dataJson.getString("code") != null && "0".equals( dataJson.getString("code"))){ if(dataJson != null && dataJson.getString("code") != null && "0".equals( dataJson.getString("code"))){