科目余额表推送有度
This commit is contained in:
parent
cb82bed10c
commit
9df31890d4
|
@ -32,5 +32,7 @@ public interface IIncomeInvoiceDao extends IBaseDao<IncomeInvoiceEntity, String>
|
||||||
List<IncomeInvoiceEntity> queryZtzz(IncomeInvoiceEntity entity);
|
List<IncomeInvoiceEntity> queryZtzz(IncomeInvoiceEntity entity);
|
||||||
|
|
||||||
List<JSONObject> queryByAloneId(IncomeInvoiceEntity jnquerydata);
|
List<JSONObject> queryByAloneId(IncomeInvoiceEntity jnquerydata);
|
||||||
|
|
||||||
|
List<JSONObject> queryAccount(IncomeInvoiceEntity jnentity);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -66,5 +66,11 @@ 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;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<JSONObject> queryAccount(IncomeInvoiceEntity jnentity) {
|
||||||
|
List<JSONObject> o = (List<JSONObject>) super.selectList(getSqlIdPrifx() + "queryAccountByZq", jnentity);
|
||||||
|
return o;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -534,5 +534,183 @@
|
||||||
<if test="aloneId != null and aloneId != ''"> and a.ALONE_ID = #{aloneId} </if>
|
<if test="aloneId != null and aloneId != ''"> and a.ALONE_ID = #{aloneId} </if>
|
||||||
</trim>
|
</trim>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<select id="queryAccountByZq" resultType="com.alibaba.fastjson.JSONObject" parameterType="com.hzya.frame.plugin.incomeInvoiceData.entity.IncomeInvoiceEntity">
|
||||||
|
-- CREATE or replace VIEW V_LPHB_KMFZYE1 AS
|
||||||
|
select * from (
|
||||||
|
SELECT
|
||||||
|
year,
|
||||||
|
adjustperiod as period,
|
||||||
|
year || '-' || adjustperiod as yearperiod,
|
||||||
|
nt.code AS subjectCode,
|
||||||
|
oa.name AS subjectName,
|
||||||
|
oa.dispname as subjectFullName,
|
||||||
|
( SELECT code FROM bd_account WHERE pk_account = nt.pid ) as superCode,
|
||||||
|
case
|
||||||
|
when balanorient = '1' then '-1'
|
||||||
|
when balanorient = '0' then '1'
|
||||||
|
end as subjectDir,
|
||||||
|
case
|
||||||
|
when pk_acctype = '0001Z01000000000019S' then 1
|
||||||
|
when pk_acctype = '0001Z01000000000019T' then 2
|
||||||
|
when pk_acctype = '0001Z01000000000019V' then 3
|
||||||
|
when pk_acctype = '0001Z01000000000019U' then 4
|
||||||
|
when pk_acctype = '0001Z01000000000019W' then 5
|
||||||
|
when pk_acctype = '0001Z01000000000019X' then 6
|
||||||
|
end as subjectType,
|
||||||
|
nt.sumprint_level as subjectLevel,
|
||||||
|
case
|
||||||
|
when nt.sumprint_level = '0' then 1
|
||||||
|
when nt.sumprint_level != '0' then 0
|
||||||
|
end as endLevel,
|
||||||
|
sum( debitamount ) AS debitValue,-- 本期借方發生額
|
||||||
|
sum( localcreditamount ) AS creditValue,-- 本期貸方發生額
|
||||||
|
CASE
|
||||||
|
WHEN sum( qmlocalamount ) - ( sum( localdebitamount ) - sum( localcreditamount ) ) > 0 THEN'1'
|
||||||
|
WHEN sum( qmlocalamount ) - ( sum( localdebitamount ) - sum( localcreditamount ) ) = 0 THEN'0' ELSE '-1' END AS initialSubjectDir,
|
||||||
|
case
|
||||||
|
when sum( qmlocalamount ) - ( sum( localdebitamount ) - sum( localcreditamount ) )>0 then sum( qmlocalamount ) - ( sum( localdebitamount ) - sum( localcreditamount ) )
|
||||||
|
else 0 end AS initialDebitBalanceValue, -- 期初余额借方金额
|
||||||
|
case when sum( qmlocalamount ) - ( sum( localdebitamount ) - sum( localcreditamount ) ) < 0 then sum( qmlocalamount ) - ( sum( localdebitamount ) - sum( localcreditamount ) )
|
||||||
|
else 0 end AS initialCreditBalanceValue, -- 期初余额贷方金额
|
||||||
|
|
||||||
|
CASE
|
||||||
|
WHEN sum( qmamount ) > 0 THEN'1'
|
||||||
|
WHEN sum( qmamount ) = 0 THEN'0' ELSE '-1' END AS balanceSubjectDir,
|
||||||
|
case when sum( qmlocalamount )>0 then sum( qmlocalamount )
|
||||||
|
else 0 end as balanceDeditValue, -- 期末余额借方金额
|
||||||
|
|
||||||
|
case when sum( qmlocalamount )>0 then sum( qmlocalamount )
|
||||||
|
else 0 end as balanceCreditValue, -- 期末余额贷方金额
|
||||||
|
sum( ljlocaldebitamount ) AS totalDebitValue,
|
||||||
|
sum( ljlocalcreditamount ) AS totalCreditValue,
|
||||||
|
org.code GSBM,
|
||||||
|
org.name GSMC
|
||||||
|
FROM
|
||||||
|
(
|
||||||
|
SELECT DISTINCT
|
||||||
|
accperiodmonth.periodyear YEAR,
|
||||||
|
accperiodmonth.PERIOD ADJUSTPERIOD,
|
||||||
|
dezz.pk_org,
|
||||||
|
dezz.pk_accasoa,
|
||||||
|
dezz.pk_currtype,
|
||||||
|
dezz.assid assid,
|
||||||
|
0 AS localdebitamount,
|
||||||
|
0 AS localcreditamount,
|
||||||
|
0 AS debitamount,
|
||||||
|
0 AS creditamount,
|
||||||
|
sum( localdebitamount ) AS ljlocaldebitamount,
|
||||||
|
sum( localcreditamount ) AS ljlocalcreditamount,
|
||||||
|
sum( debitamount ) AS ljdebitamount,
|
||||||
|
sum( creditamount ) AS ljcreditamount,
|
||||||
|
0 AS qmlocalamount,
|
||||||
|
0 AS qmamount
|
||||||
|
FROM
|
||||||
|
( SELECT substr( yearmth, 0, 4 ) periodyear, substr( yearmth, 6, 7 ) period FROM bd_accperiodmonth WHERE yearmth < TO_CHAR( SYSDATE, 'YYYY-MM' ) ) accperiodmonth
|
||||||
|
LEFT JOIN gl_balance dezz ON dezz.YEAR = accperiodmonth.periodyear
|
||||||
|
AND dezz.adjustperiod < = accperiodmonth.period
|
||||||
|
WHERE
|
||||||
|
voucherkind != 5
|
||||||
|
AND voucherkind != 4
|
||||||
|
AND dezz.adjustperiod > '00'
|
||||||
|
GROUP BY
|
||||||
|
accperiodmonth.periodyear,
|
||||||
|
accperiodmonth.PERIOD,
|
||||||
|
dezz.pk_org,
|
||||||
|
dezz.pk_accasoa,
|
||||||
|
dezz.pk_currtype,
|
||||||
|
dezz.assid UNION ALL
|
||||||
|
SELECT DISTINCT
|
||||||
|
dezz.YEAR,
|
||||||
|
dezz.ADJUSTPERIOD,
|
||||||
|
dezz.pk_org,
|
||||||
|
dezz.pk_accasoa,
|
||||||
|
dezz.pk_currtype,
|
||||||
|
dezz.assid,
|
||||||
|
sum( localdebitamount ) AS localdebitamount,
|
||||||
|
sum( localcreditamount ) AS localcreditamount,
|
||||||
|
sum( debitamount ) AS debitamount,
|
||||||
|
sum( creditamount ) AS creditamount,
|
||||||
|
0 AS ljlocaldebitamount,
|
||||||
|
0 AS ljlocalcreditamount,
|
||||||
|
0 AS ljdebitamount,
|
||||||
|
0 AS ljcreditamount,
|
||||||
|
0 AS qmlocalamount,
|
||||||
|
0 AS qmamount
|
||||||
|
FROM
|
||||||
|
gl_balance dezz
|
||||||
|
WHERE
|
||||||
|
voucherkind != 5
|
||||||
|
AND voucherkind != 4
|
||||||
|
GROUP BY
|
||||||
|
dezz.YEAR,
|
||||||
|
dezz.ADJUSTPERIOD,
|
||||||
|
dezz.pk_org,
|
||||||
|
dezz.pk_accasoa,
|
||||||
|
dezz.pk_currtype,
|
||||||
|
dezz.assid UNION ALL
|
||||||
|
SELECT DISTINCT
|
||||||
|
accperiodmonth.periodyear YEAR,
|
||||||
|
accperiodmonth.PERIOD ADJUSTPERIOD,
|
||||||
|
dezz.pk_org,
|
||||||
|
dezz.pk_accasoa,
|
||||||
|
dezz.pk_currtype,
|
||||||
|
dezz.assid assid,
|
||||||
|
0 AS localdebitamount,
|
||||||
|
0 AS localcreditamount,
|
||||||
|
0 AS debitamount,
|
||||||
|
0 AS creditamount,
|
||||||
|
0 AS ljlocaldebitamount,
|
||||||
|
0 AS ljlocalcreditamount,
|
||||||
|
0 AS ljdebitamount,
|
||||||
|
0 AS ljcreditamount,
|
||||||
|
sum( localdebitamount ) - sum( localcreditamount ) AS qmlocalamount,
|
||||||
|
sum( debitamount ) - sum( creditamount ) AS qmamount
|
||||||
|
FROM
|
||||||
|
( SELECT substr( yearmth, 0, 4 ) periodyear, substr( yearmth, 6, 7 ) period FROM bd_accperiodmonth WHERE yearmth < TO_CHAR( SYSDATE, 'YYYY-MM' ) ) accperiodmonth
|
||||||
|
LEFT JOIN gl_balance dezz ON dezz.YEAR = accperiodmonth.periodyear
|
||||||
|
AND dezz.adjustperiod < = accperiodmonth.period
|
||||||
|
WHERE
|
||||||
|
voucherkind != 5
|
||||||
|
AND voucherkind != 4
|
||||||
|
AND dezz.adjustperiod >= '00'
|
||||||
|
AND dezz.adjustperiod != '12A'
|
||||||
|
GROUP BY
|
||||||
|
accperiodmonth.periodyear,
|
||||||
|
accperiodmonth.PERIOD,
|
||||||
|
dezz.pk_org,
|
||||||
|
dezz.pk_accasoa,
|
||||||
|
dezz.pk_currtype,
|
||||||
|
dezz.assid
|
||||||
|
) a
|
||||||
|
LEFT JOIN org_orgs org ON org.pk_org = a.pk_org
|
||||||
|
LEFT JOIN bd_accasoa oa ON oa.pk_accasoa = a.pk_accasoa
|
||||||
|
LEFT JOIN bd_account nt ON nt.pk_account = oa.pk_account
|
||||||
|
LEFT JOIN bd_currtype currtype ON a.pk_currtype = currtype.pk_currtype
|
||||||
|
LEFT JOIN gl_docfree1 fr1 ON fr1.assid = a.assid
|
||||||
|
where adjustperiod != '12A'
|
||||||
|
and adjustperiod >= '00'
|
||||||
|
and adjustperiod != '00'
|
||||||
|
GROUP BY
|
||||||
|
year,
|
||||||
|
adjustperiod,
|
||||||
|
nt.code ,
|
||||||
|
oa.name ,
|
||||||
|
oa.dispname,
|
||||||
|
nt.pid,
|
||||||
|
balanorient,
|
||||||
|
pk_acctype,
|
||||||
|
org.code,
|
||||||
|
org.name,
|
||||||
|
nt.sumprint_level
|
||||||
|
)m1
|
||||||
|
<trim prefix="where" prefixOverrides="and">
|
||||||
|
<if test="orgCode != null and orgCode !='' "> and gsbm = #{orgCode} </if>
|
||||||
|
<if test="sysData != null and sysData !='' "> and yearperiod = {sysData} </if>
|
||||||
|
</trim>
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
||||||
|
|
|
@ -65,6 +65,7 @@ public class IncomeInvoiceServiceImpl extends BaseService<IncomeInvoiceEntity, S
|
||||||
}
|
}
|
||||||
String cbUrl = "http://oapi.nanofintax.com/api/collect/uploadFinancialReport?accessToken=";
|
String cbUrl = "http://oapi.nanofintax.com/api/collect/uploadFinancialReport?accessToken=";
|
||||||
String dataUrl = "http://oapi.nanofintax.com/api/invoice_receive/fp/v1/query?accessToken=";
|
String dataUrl = "http://oapi.nanofintax.com/api/invoice_receive/fp/v1/query?accessToken=";
|
||||||
|
String uploadBalanceTableUrl = "http://oapi.nanofintax.com/api/collect/uploadBalanceTable?accessToken";
|
||||||
String tokenUrl = "http://oapi.nanofintax.com/api/getToken";
|
String tokenUrl = "http://oapi.nanofintax.com/api/getToken";
|
||||||
String accessKey = "6X3B526P5HqE6ums";
|
String accessKey = "6X3B526P5HqE6ums";
|
||||||
String accessSecret = "34e5fc32ac894a2ba2ade8c3852c7a0a";
|
String accessSecret = "34e5fc32ac894a2ba2ade8c3852c7a0a";
|
||||||
|
@ -697,18 +698,20 @@ public class IncomeInvoiceServiceImpl extends BaseService<IncomeInvoiceEntity, S
|
||||||
JSONObject jsonStr = requestJson.getJSONObject("jsonStr");
|
JSONObject jsonStr = requestJson.getJSONObject("jsonStr");
|
||||||
JSONObject businessDataStr = jsonStr.getJSONObject("businessDataStr");
|
JSONObject businessDataStr = jsonStr.getJSONObject("businessDataStr");
|
||||||
String eventType = jsonStr.getString("eventType");
|
String eventType = jsonStr.getString("eventType");
|
||||||
|
String ztbm = businessDataStr.getString("ztCode");//账套编码
|
||||||
|
String cjzq = businessDataStr.getString("period");//采集账期
|
||||||
|
String rwbm = businessDataStr.getString("taskNo");//任务编码
|
||||||
switch (eventType) {
|
switch (eventType) {
|
||||||
case "onProcessFinished"://流程结束事件,同步物料到U8C
|
case "onProcessFinished"://流程结束事件,同步物料到U8C
|
||||||
if(businessDataStr.getString("dataType") == null){//数据类型
|
if(businessDataStr.getString("dataType") == null){//数据类型
|
||||||
return BaseResult.getFailureMessageEntity("数据类型为空");
|
return BaseResult.getFailureMessageEntity("数据类型为空");
|
||||||
}
|
}
|
||||||
if(businessDataStr.getString("dataType").equals("1")){//科目余额
|
if(businessDataStr.getString("dataType").equals("1")){//科目余额
|
||||||
|
taskExecutor.execute(() -> sendAccountCodeReport(ztbm,cjzq,rwbm));//科目余额
|
||||||
|
return BaseResult.getSuccessMessageEntity("数据获取成功");
|
||||||
}
|
}
|
||||||
if(businessDataStr.getString("dataType").equals("2")){//财报
|
if(businessDataStr.getString("dataType").equals("2")){//财报
|
||||||
String ztbm = businessDataStr.getString("ztCode");//账套编码
|
|
||||||
String cjzq = businessDataStr.getString("period");//采集账期
|
|
||||||
String rwbm = businessDataStr.getString("taskNo");//任务编码
|
|
||||||
if(ztbm == null || "".equals(ztbm)){
|
if(ztbm == null || "".equals(ztbm)){
|
||||||
return BaseResult.getFailureMessageEntity("账套编码为空");
|
return BaseResult.getFailureMessageEntity("账套编码为空");
|
||||||
}
|
}
|
||||||
|
@ -736,6 +739,54 @@ public class IncomeInvoiceServiceImpl extends BaseService<IncomeInvoiceEntity, S
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private JsonResultEntity sendAccountCodeReport(String ztbm, String cjzq, String rwbm) {
|
||||||
|
String access_token = getToken();
|
||||||
|
if (access_token == null) {
|
||||||
|
return BaseResult.getFailureMessageEntity("token获取失败");
|
||||||
|
}
|
||||||
|
String url = uploadBalanceTableUrl+access_token;
|
||||||
|
//通过公司编码、账期查询该单位的科目余额信息下发有度
|
||||||
|
//查询当月帐套组织
|
||||||
|
IncomeInvoiceEntity jnentity = new IncomeInvoiceEntity();
|
||||||
|
jnentity.setDataSourceCode("htBip");
|
||||||
|
jnentity.setSysData(cjzq);
|
||||||
|
jnentity.setOrgCode(ztbm);
|
||||||
|
//查询该账期下的科目余额
|
||||||
|
List<JSONObject> jnlist = incomeInvoiceDao.queryAccount(jnentity);
|
||||||
|
//正常来说数组不存在空的情况 如果为空就直接下发空数组给他们
|
||||||
|
JSONObject sendData = new JSONObject();
|
||||||
|
sendData.put("accessKey",accessKey);
|
||||||
|
long timestamp = System.currentTimeMillis();
|
||||||
|
sendData.put("timestamp",timestamp);
|
||||||
|
sendData.put("taskNo",rwbm);
|
||||||
|
sendData.put("period",cjzq);
|
||||||
|
String a = YzfSignUtil.signRequest(sendData,accessSecret);
|
||||||
|
sendData.put("sign",a);
|
||||||
|
sendData.put("balanceTableList",jnlist);
|
||||||
|
Map<String, String> headers = new HashMap<>();
|
||||||
|
headers.put("Content-Type", "application/json; charset=utf-8");
|
||||||
|
String returndata = sendPost(url, headers, sendData.toJSONString());
|
||||||
|
if (returndata != null && JSONObject.isValidObject(returndata)) {
|
||||||
|
JSONObject dataJson = JSONObject.parseObject(returndata);
|
||||||
|
if(dataJson != null && dataJson.getString("code") != null && "0".equals( dataJson.getString("code"))){
|
||||||
|
JSONObject data = dataJson.getJSONObject("result");
|
||||||
|
if(data != null ){
|
||||||
|
if(data != null && data.getString("resultCode") != null && "0".equals( data.getString("resultCode"))){
|
||||||
|
return BaseResult.getSuccessMessageEntity("执行成功");
|
||||||
|
}else {
|
||||||
|
return BaseResult.getFailureMessageEntity("发送失败:"+data.getString("message"));
|
||||||
|
}
|
||||||
|
}else {
|
||||||
|
return BaseResult.getFailureMessageEntity("发送失败:"+returndata);
|
||||||
|
}
|
||||||
|
}else {
|
||||||
|
return BaseResult.getFailureMessageEntity("发送失败:"+returndata);
|
||||||
|
}
|
||||||
|
}else {
|
||||||
|
return BaseResult.getFailureMessageEntity("发送失败:"+returndata);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Author lvleigang
|
* @Author lvleigang
|
||||||
|
|
Loading…
Reference in New Issue