package com.fzzy.push.gd2022;
|
|
import com.alibaba.fastjson.JSON;
|
import com.fzzy.api.Constant;
|
import com.fzzy.api.data.ApiParam;
|
import com.fzzy.api.data.PushProtocol;
|
import com.fzzy.api.dto.ResponseDto;
|
import com.fzzy.api.entity.*;
|
import com.fzzy.api.service.ApiCommonService;
|
import com.fzzy.api.service.ApiRemoteService;
|
import com.fzzy.api.utils.*;
|
import com.fzzy.api.view.repository.ApiLogRep;
|
import com.fzzy.push.gd2022.dto.*;
|
import com.fzzy.push.gd2022.dto.Api1101;
|
import com.fzzy.push.gd2022.dto.Api1109;
|
import com.fzzy.push.gd2022.dto.Api1208;
|
import com.fzzy.push.gd2022.dto.Api1307;
|
import com.fzzy.push.gd2022.dto.Api1308;
|
import lombok.Data;
|
import lombok.extern.slf4j.Slf4j;
|
import org.apache.commons.lang.StringUtils;
|
import org.apache.commons.lang.time.DateFormatUtils;
|
import org.apache.commons.lang.time.DateUtils;
|
import org.springframework.beans.BeanUtils;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
|
import java.util.*;
|
|
/**
|
* @author vince.xu
|
* @Title: ApiService
|
* @ProjectName igds-api
|
* @Description: 上传数据服务类
|
* @date 2022-9-216:27
|
*/
|
@Slf4j
|
@Data
|
@Service
|
public class GD2022ApiRemoteService2022 implements ApiRemoteService {
|
|
|
@Autowired
|
private RedisUtil redisUtil;
|
|
@Autowired
|
private ApiCommonService apiCommonService;
|
|
@Autowired
|
private ApiLogRep apiLogRep;
|
|
@Override
|
public String getProtocol() {
|
return PushProtocol.SB_GD_2022.getCode();
|
}
|
|
@Override
|
public ResponseDto pushData(ApiParam param, ApiConfs conf, Object data) {
|
String inteId = param.getInteId();
|
String kqdm = param.getKqdm();
|
String bizId = param.getBizId();
|
|
try {
|
|
if (null == conf) {
|
conf = apiCommonService.getConf(kqdm);
|
}
|
//获取TOKEN
|
GD2022AuthToken token = getGD2022AuthToken(conf);
|
|
//添加LOGO
|
ApiLog apiLog = new ApiLog();
|
apiLog.setId(ContextUtil.getUUID());
|
apiLog.setInteId(inteId);
|
String jsonData = getJsonData(inteId, data, conf.getApiUrl(), token);
|
log.info("报文信息=" + jsonData);
|
inteId = getInteId(inteId);
|
if(StringUtils.isEmpty(inteId)){
|
ResponseDto responseDto = new ResponseDto(99, "没有获取到接口", bizId);
|
apiLog.setStatus(99);
|
apiLog.setResult("没有获取到接口");
|
apiLogRep.save(apiLog);
|
return responseDto;
|
}
|
apiLog.setData(jsonData);
|
apiLog.setKqdm(kqdm);
|
apiLog.setUploadTime(new Date());
|
|
if (conf == null) {
|
ResponseDto responseDto = new ResponseDto(99, "没有获取到上传配置", bizId);
|
apiLog.setStatus(99);
|
apiLog.setResult("没有获取到上传配置");
|
apiLogRep.save(apiLog);
|
return responseDto;
|
}
|
if (null == token) {
|
ResponseDto responseDto = new ResponseDto(99, "没有获取到TOKEN信息", bizId);
|
apiLog.setStatus(99);
|
apiLog.setResult("没有获取到TOKEN信息");
|
apiLogRep.save(apiLog);
|
return responseDto;
|
}
|
|
Map<String, Object> map = new HashMap<>();
|
GD2022ResponseDto responseDto = GD2022HttpClientUtil.postPushData(conf.getApiUrl() + inteId,jsonData,conf, token);
|
responseDto.setBizId(bizId);
|
apiLog.setStatus(responseDto.getCode() == 200 ? 0 : responseDto.getCode());
|
apiLog.setResult(responseDto.getMsg());
|
apiLogRep.save(apiLog);
|
ResponseDto resd= new ResponseDto();
|
resd.setSuccess(responseDto.getCode() == 200 ? 0 : responseDto.getCode());
|
resd.setMsg(responseDto.getMsg());
|
//updateGD2022AuthToken(responseDto,conf, token);
|
return resd;
|
} catch (Exception e) {
|
log.error(e.getMessage(), e);
|
return new ResponseDto(99, e.getMessage());
|
}
|
}
|
|
@Override
|
public ResponseDto pushData(ApiParam param, Object data) {
|
return pushData(param, null, data);
|
}
|
|
|
// /**
|
// * @Desc: 国标自定义方法
|
// * @author: Andy
|
// * @update-time: 2022/10/10
|
// */
|
// public GD2022ResponseDto pushData(String inteId, String kqdm, String bizId, Object data) {
|
// ApiConfs conf = apiCommonService.getConf(kqdm);
|
//
|
// ApiParam param = new ApiParam(conf);
|
//
|
// param.setInteId(inteId);
|
// param.setInteCategory(inteId.substring(0, 2));
|
// param.setBizId(bizId);
|
//
|
// return pushData(param, conf, data);
|
// }
|
|
|
// /**
|
// * 单条上传数据
|
// *
|
// * @param inteId
|
// * @param data
|
// * @return
|
// */
|
// public ResponseDto pushData(String inteId, ApiParent data) {
|
// try {
|
// //获取配置
|
// ApiConfs conf = apiCommonService.getConf(data.getKqdm());
|
// //获取TOKEN
|
// GD2022AuthToken token = getGD2022AuthToken(conf);
|
//
|
// //添加LOGO
|
// ApiLog apiLog = new ApiLog();
|
// apiLog.setId(ContextUtil.getUUID());
|
// if (!Constant.API_CODE_1109.equals(inteId)) {
|
// apiLog.setData(JSON.toJSONString(data));
|
// }
|
// apiLog.setInteId(inteId);
|
// apiLog.setKqdm(data.getKqdm());
|
// apiLog.setUploadTime(new Date());
|
//
|
// if (conf == null) {
|
// GD2022ResponseDto responseDto = new GD2022ResponseDto(99, "没有获取到上传配置", data.getBizId());
|
// apiLog.setStatus(99);
|
// apiLog.setResult("没有获取到上传配置");
|
// apiLogRep.save(apiLog);
|
// return responseDto;
|
// }
|
// if (null == token) {
|
// GD2022ResponseDto responseDto = new GD2022ResponseDto(99, "没有获取到TOKEN信息", data.getBizId());
|
// apiLog.setStatus(99);
|
// apiLog.setResult("没有获取到TOKEN信息");
|
// apiLogRep.save(apiLog);
|
// return responseDto;
|
// }
|
//
|
// Map<String, Object> map = new HashMap<>();
|
// GD2022ResponseDto responseDto = GD2022HttpClientUtil.postPushData(conf.getApiUrl() + inteId,JSON.toJSONString(data),conf, token);
|
// responseDto.setBizId(data.getBizId());
|
// apiLog.setStatus(responseDto.getSuccess());
|
// apiLog.setResult(responseDto.getMsg());
|
//
|
// apiLogRep.save(apiLog);
|
//
|
// updateGD2022AuthToken(responseDto, token);
|
//
|
// return responseDto;
|
// } catch (Exception e) {
|
// log.error(e.getMessage(), e);
|
// return new ResponseDto(99, e.getMessage());
|
// }
|
// }
|
|
/**
|
* 代码调整
|
*
|
* @param conf
|
* @return
|
*/
|
public GD2022AuthToken getGD2022AuthToken(ApiConfs conf) {
|
try {
|
String key = RedisConst.buildKey(RedisConst.KYE_TOKEN, conf.getKqdm());
|
|
GD2022AuthToken token = (GD2022AuthToken) redisUtil.get(key);
|
if (null != token) return token;
|
|
//从新获取TOKEN
|
Map<String, Object> map = new HashMap<>();
|
map.put("appid", conf.getUserName());
|
// map.put("appkey", EncryptUtil.encryptHex(conf.getPassword(),conf.getPublicKey()));
|
map.put("appkey", AESUtils.encrypt(conf.getPassword(),conf.getPublicKey()));
|
GD2022ResponseDto<GD2022AuthToken> responseDto = GD2022HttpClientUtil.postGetToken(conf.getApiUrl() + "sfrz",map);
|
token = new GD2022AuthToken();
|
|
updateGD2022AuthToken(responseDto, conf,token);
|
|
return token;
|
} catch (Exception e) {
|
log.error(e.getMessage(), e);
|
return null;
|
}
|
}
|
|
private void updateGD2022AuthToken(GD2022ResponseDto<GD2022AuthToken> dto, ApiConfs conf, GD2022AuthToken token) {
|
String key = RedisConst.buildKey(RedisConst.KYE_TOKEN, conf.getKqdm());
|
|
if (null == dto) {
|
// redisUtil.set(key, token, 170);
|
return;
|
}
|
|
if (dto.getCode() != 200) {
|
return;
|
} else {
|
GD2022AuthToken token1 = dto.getData();
|
token.setAccess_token(token1.getAccess_token());
|
token.setAppid(token1.getAppid());
|
redisUtil.set(key, token, 60 * 119);
|
}
|
}
|
|
private String getJsonData(String inteId , Object data, String url, GD2022AuthToken authToken) throws Exception {
|
if(Constant.API_CODE_1101.equals(inteId)){
|
Api1101 api1101 = new Api1101();
|
BeanUtils.copyProperties(data,api1101);
|
return JSON.toJSONString(api1101);
|
}else if(Constant.API_CODE_1109.equals(inteId)){
|
//封装数据
|
Api1109 api1109 = new Api1109();
|
BeanUtils.copyProperties(data,api1109);
|
|
if (null == authToken) {
|
return JSON.toJSONString(api1109);
|
}
|
//先上传文件,获取文件id
|
GD2022ResponseDto responseDto = GD2022HttpClientUtil.postUploadData(url, authToken, api1109.getWjdz());
|
//设置上传文件id
|
api1109.setFileStorageId((String) responseDto.getData());
|
return JSON.toJSONString(api1109);
|
}else if(Constant.API_CODE_1208.equals(inteId)){
|
Api1208 api1208 = new Api1208();
|
BeanUtils.copyProperties(data,api1208);
|
return JSON.toJSONString(api1208);
|
}else if(Constant.API_CODE_1307.equals(inteId)){
|
//封装数据
|
Api1307 api1307 = new Api1307();
|
BeanUtils.copyProperties(data,api1307);
|
|
if (null == authToken) {
|
return JSON.toJSONString(api1307);
|
}
|
//先上传文件,获取文件id
|
GD2022ResponseDto responseDto = GD2022HttpClientUtil.postUploadData(url, authToken, api1307.getWjdz());
|
//设置上传文件id
|
api1307.setFileStorageId((String) responseDto.getData());
|
return JSON.toJSONString(api1307);
|
}else if(Constant.API_CODE_1308.equals(inteId)){
|
//封装数据
|
Api1308 api1308 = new Api1308();
|
BeanUtils.copyProperties(data,api1308);
|
|
if (null == authToken) {
|
return JSON.toJSONString(api1308);
|
}
|
//先上传文件,获取文件id
|
GD2022ResponseDto responseDto = GD2022HttpClientUtil.postUploadData(url, authToken, api1308.getWjdz());
|
//设置上传文件id
|
api1308.setFileStorageId((String) responseDto.getData());
|
return JSON.toJSONString(api1308);
|
}else if(Constant.API_CODE_1501.equals(inteId)){
|
//封装数据
|
// List<GDFinanceDto> list = copyApi1501((Api1501) data);
|
// return JSON.toJSONString(list);
|
Api1501 api1501 = (Api1501) data;
|
GDFinanceDto gdFinanceDto = new GDFinanceDto();
|
gdFinanceDto.setDwdm(api1501.getDwdm());
|
gdFinanceDto.setBbsj(DateFormatUtils.format(api1501.getBbsj(), "yyyyMMdd"));
|
gdFinanceDto.setBbm("01");
|
gdFinanceDto.setCzbz(api1501.getCzbz());
|
gdFinanceDto.setZhgxsj(DateFormatUtils.format(api1501.getZhgxsj(), "yyyy-MM-dd HH:mm:ss"));
|
gdFinanceDto.setZbxh(1);
|
gdFinanceDto.setZbmc("资产//t");
|
gdFinanceDto.setZbz1("期末余额//t");
|
gdFinanceDto.setZbz2("年初余额//t");
|
return JSON.toJSONString(gdFinanceDto);
|
}else if(Constant.API_CODE_1502.equals(inteId)){
|
//封装数据
|
List<GDFinanceDto> list = copyApi1502((Api1502) data);
|
return JSON.toJSONString(list);
|
}else if(Constant.API_CODE_1503.equals(inteId)){
|
//封装数据
|
List<GDFinanceDto> list = copyApi1503((Api1503) data);
|
return JSON.toJSONString(list);
|
}else{
|
return JSON.toJSONString(data);
|
}
|
}
|
|
private List<GDFinanceDto> copyApi1503(Api1503 data) {
|
Api1503 api1503 = data;
|
List<GDFinanceDto> list = new ArrayList<>();
|
GDFinanceDto gdFinanceDto = new GDFinanceDto();
|
gdFinanceDto.setDwdm(api1503.getDwdm());
|
gdFinanceDto.setBbsj(DateFormatUtils.format(api1503.getBbsj(), "yyyyMMdd"));
|
gdFinanceDto.setBbm("01");
|
gdFinanceDto.setCzbz(api1503.getCzbz());
|
gdFinanceDto.setZhgxsj(DateFormatUtils.format(api1503.getZhgxsj(), "yyyyMMdd"));
|
|
paddingData(gdFinanceDto, list, "0", "项目//t","本期金额//t", "本年累计//t");
|
paddingData(gdFinanceDto, list, "1", "一、营业收入",api1503.getYyzsrbqye() + "", api1503.getYyzsrbnlj() + "");
|
paddingData(gdFinanceDto, list, "2", "减:营业成本",api1503.getYycbbqye() + "", api1503.getYycbbnlj() + "");
|
paddingData(gdFinanceDto, list, "3", "税金及附加",api1503.getSjjfjbqye() + "", api1503.getSjjfjbnlj() + "");
|
paddingData(gdFinanceDto, list, "4", "销售费用",api1503.getXsfybqye() + "", api1503.getXsfybnlj() + "");
|
paddingData(gdFinanceDto, list, "5", "管理费用",api1503.getGlfybqye() + "", api1503.getGlfybnlj() + "");
|
paddingData(gdFinanceDto, list, "6", "研发费用",api1503.getYffybqye() + "", api1503.getYffybnlj() + "");
|
paddingData(gdFinanceDto, list, "7", "财务费用",api1503.getCwfybqye() + "", api1503.getCwfybnlj() + "");
|
paddingData(gdFinanceDto, list, "8", "其中:利息费用",api1503.getLxfybqye() + "", api1503.getLxfybnlj() + "");
|
paddingData(gdFinanceDto, list, "9", "利息收入",api1503.getLxsrbqye() + "", api1503.getLxsrbnlj() + "");
|
paddingData(gdFinanceDto, list, "10", "加:其他收益",api1503.getQtsybqye() + "", api1503.getQtsybnlj() + "");
|
paddingData(gdFinanceDto, list, "11", "投资收益(损失以“-”号填列)",api1503.getTzsybqye() + "", api1503.getTzsybnlj() + "");
|
paddingData(gdFinanceDto, list, "12", "其中:对联营企业和合营企业的投资收益",api1503.getLyqytzsybqye() + "", api1503.getLyqytzsybnlj() + "");
|
paddingData(gdFinanceDto, list, "13", "公允价值变动收益(损失以“-”号填列)",api1503.getGyjzbdsybqye() + "", api1503.getGyjzbdsybnlj() + "");
|
paddingData(gdFinanceDto, list, "14", "资产减值损失(损失以“-”号填列)",api1503.getZcjzssbqye() + "", api1503.getZcjzssbnlj() + "");
|
paddingData(gdFinanceDto, list, "15", "资产处置收益(损失以“-”号填列)",api1503.getZcczsybqye() + "", api1503.getZcczsybnlj() + "");
|
paddingData(gdFinanceDto, list, "16", "二、营业利润(亏损以“-”号填列)",api1503.getYylrbqye() + "", api1503.getYylrbnlj() + "");
|
paddingData(gdFinanceDto, list, "17", "加:营业外收入",api1503.getYywsrbqye() + "", api1503.getYywsrbnlj() + "");
|
paddingData(gdFinanceDto, list, "18", "减:营业外支出",api1503.getYywzcbqye() + "", api1503.getYywzcbnlj() + "");
|
paddingData(gdFinanceDto, list, "19", "三、利润总额(亏损总额以“-”号填列)",api1503.getLrzebqye() + "", api1503.getLrzebnlj() + "");
|
paddingData(gdFinanceDto, list, "20", "减:所得税费用",api1503.getSdsfybqye() + "", api1503.getSdsfybnlj() + "");
|
paddingData(gdFinanceDto, list, "21", "四、净利润(净亏损以“-”号填列)",api1503.getJlrbqye() + "", api1503.getJlrbnlj() + "");
|
paddingData(gdFinanceDto, list, "22", "(一)持续经营净利润(净亏损以“-”号填列)",api1503.getCxjyjlrbqye() + "", api1503.getCxjyjlrbnlj() + "");
|
paddingData(gdFinanceDto, list, "23", "(二)终止经营净利润(净亏损以“-”号填列)",api1503.getZzjyjlrbqye() + "", api1503.getZzjyjlrbnlj() + "");
|
paddingData(gdFinanceDto, list, "24", "五、其他综合收益的税后净额",api1503.getQtzhsyjebqye() + "", api1503.getQtzhsyjebnlj() + "");
|
paddingData(gdFinanceDto, list, "25", "(一)不能重分类进损益的其他综合收益",api1503.getBnflzhsybqye() + "", api1503.getBnflzhsybnlj() + "");
|
paddingData(gdFinanceDto, list, "26", "1.重新计量设定受益计划变动额",api1503.getCxjlbdebqye() + "", api1503.getCxjlbdebnlj() + "");
|
paddingData(gdFinanceDto, list, "27", "2.权益法下不能转损益的其他综合收益",api1503.getQyfbnzsybqye() + "", api1503.getQyfbnzsybnlj() + "");
|
paddingData(gdFinanceDto, list, "28", "3.其他权益工具投资公允价值变动",api1503.getQtqygjjzbdbqye() + "", api1503.getQtqygjjzbdbnlj() + "");
|
paddingData(gdFinanceDto, list, "29", "4.企业自身信用风险公允价值变动",api1503.getQyxyfxbdbqye() + "", api1503.getQyxyfxbdbnlj() + "");
|
paddingData(gdFinanceDto, list, "30", "5.其他",api1503.getBnflzhsyqtbqye() + "", api1503.getBnflzhsyqtbnlj() + "");
|
paddingData(gdFinanceDto, list, "31", "(二)将重分类进损益的其他综合收益","0", "0");
|
paddingData(gdFinanceDto, list, "32", "1.权益法下可转损益的其他综合收益",api1503.getQyfkzsybqye() + "", api1503.getQyfkzsybnlj() + "");
|
paddingData(gdFinanceDto, list, "33", "2.其他债权投资公允价值变动",api1503.getQtzqtzjzbqye() + "", api1503.getQtzqtzjzbnlj() + "");
|
paddingData(gdFinanceDto, list, "34", "3.可供出售金融资产公允价值变动损益",api1503.getKgcszcbdsybqye() + "", api1503.getKgcszcbdsybnlj() + "");
|
paddingData(gdFinanceDto, list, "35", "4.金融资产重分类计入其他综合收益的金额",api1503.getJrzcflsyjebqye() + "", api1503.getJrzcflsyjebnlj() + "");
|
paddingData(gdFinanceDto, list, "36", "5.持有至到期投资重分类为可供出售金融资产损益",api1503.getCydqtzzcsybqye() + "", api1503.getKgcszcbdsybnlj() + "");
|
paddingData(gdFinanceDto, list, "37", "6.其他债权投资信用减值准备",api1503.getQtzqtzjzbqye() + "", api1503.getQtzqtzjzbnlj() + "");
|
paddingData(gdFinanceDto, list, "38", "7.现金流量套期损益的有效部分",api1503.getZjllsybqye() + "", api1503.getZjllsybnlj() + "");
|
paddingData(gdFinanceDto, list, "39", "8.外币财务报表折算差额",api1503.getWbcwbbcebqye() + "", api1503.getWbcwbbcebnlj() + "");
|
paddingData(gdFinanceDto, list, "40", "9.其他",api1503.getCflsybqye() + "", api1503.getCflsybnlj() + "");
|
paddingData(gdFinanceDto, list, "41", "六、综合收益总额",api1503.getZhsyzebqye() + "", api1503.getZhsyzebnlj() + "");
|
paddingData(gdFinanceDto, list, "42", "七、每股收益:",api1503.getMgsybqye() + "", api1503.getMgsybnlj() + "");
|
paddingData(gdFinanceDto, list, "43", "(一)基本每股收益",api1503.getJbmgsybqye() + "", api1503.getJbmgsybnlj() + "");
|
paddingData(gdFinanceDto, list, "44", "(二)稀释每股收益",api1503.getXsmgsybqye() + "", api1503.getXsmgsybnlj() + "");
|
|
return list;
|
}
|
|
private List<GDFinanceDto> copyApi1502(Api1502 data) {
|
Api1502 api1502 = data;
|
List<GDFinanceDto> list = new ArrayList<>();
|
GDFinanceDto gdFinanceDto = new GDFinanceDto();
|
gdFinanceDto.setDwdm(api1502.getDwdm());
|
gdFinanceDto.setBbsj(DateFormatUtils.format(api1502.getBbsj(), "yyyyMMdd"));
|
gdFinanceDto.setBbm("01");
|
gdFinanceDto.setCzbz(api1502.getCzbz());
|
gdFinanceDto.setZhgxsj(DateFormatUtils.format(api1502.getZhgxsj(), "yyyyMMdd"));
|
|
paddingData(gdFinanceDto, list, "0", "项目//t","本月数//t", "本年累计数//t");
|
paddingData(gdFinanceDto, list, "1", "一、经营活动产生的现金流量",api1502.getJyhdxjllbys() + "", api1502.getJyhdxjllbnljs() + "");
|
paddingData(gdFinanceDto, list, "2", "销售商品、提供劳务收到的现金",api1502.getXssplwxjbys() + "", api1502.getXssplwxjbnljs() + "");
|
paddingData(gdFinanceDto, list, "3", "收到的税费返还",api1502.getSffhbys() + "", api1502.getSffhbnljs() + "");
|
paddingData(gdFinanceDto, list, "4", "收到其他与经营活动有关的现金",api1502.getQtjyhdxjbys() + "", api1502.getQtjyhdxjbnljs() + "");
|
paddingData(gdFinanceDto, list, "5", "经营活动现金流入小计",api1502.getJyhdxjlrbys() + "", api1502.getJyhdxjlrbnljs() + "");
|
paddingData(gdFinanceDto, list, "6", "购买商品、接受劳务支付的现金",api1502.getGmsplwzfbys() + "", api1502.getGmsplwzfbnljs() + "");
|
paddingData(gdFinanceDto, list, "7", "支付给职工以及为职工支付的现金",api1502.getZfzgxjbys() + "", api1502.getZfzgxjbnljs() + "");
|
paddingData(gdFinanceDto, list, "8", "支付的各项税费",api1502.getZfxxsfbys() + "", api1502.getZfxxsfbnljs() + "");
|
paddingData(gdFinanceDto, list, "9", "支付其他与经营活动有关的现金",api1502.getZfqtjyhdxjbys() + "", api1502.getZfqtjyhdxjbnljs() + "");
|
paddingData(gdFinanceDto, list, "10", "经营活动现金流出小计",api1502.getJyhdxjlcbys() + "", api1502.getJyhdxjlcbnljs() + "");
|
paddingData(gdFinanceDto, list, "11", "经营活动产生的现金流量净额",api1502.getJyhdxjlljebys() + "", api1502.getJyhdxjlljebnljs() + "");
|
paddingData(gdFinanceDto, list, "12", "二、投资活动产生的现金流量",api1502.getTzhdxjllbys() + "", api1502.getTzhdxjllbnljs() + "");
|
paddingData(gdFinanceDto, list, "13", "收回投资收到的现金",api1502.getShtzxjbys() + "", api1502.getShtzxjbnljs() + "");
|
paddingData(gdFinanceDto, list, "14", "取得投资收益收到的现金",api1502.getQdtzsyxjbys() + "", api1502.getQdtzsyxjbnljs() + "");
|
paddingData(gdFinanceDto, list, "15", "处置固定资产、无形资产和其他长期资产收回的现金净额",api1502.getCzgdzcdxjjebys() + "", api1502.getCzgdzcdxjjebnljs() + "");
|
paddingData(gdFinanceDto, list, "16", "处置子公司及其他营业单位收到的现金净额",api1502.getCzqtdwxjjebys() + "", api1502.getCzqtdwxjjebnljs() + "");
|
paddingData(gdFinanceDto, list, "17", "收到其他与投资活动有关的现金",api1502.getSdqttzxjbys() + "", api1502.getSdqttzxjbnljs() + "");
|
paddingData(gdFinanceDto, list, "18", "投资活动现金流入小计",api1502.getTzhdxjlrbys() + "", api1502.getTzhdxjlrbnljs() + "");
|
paddingData(gdFinanceDto, list, "19", "购建固定资产、无形资产和其他长期资产支付的现金",api1502.getGjgdzcdxjbys() + "", api1502.getGjgdzcdxjbnljs() + "");
|
paddingData(gdFinanceDto, list, "20", "投资支付的现金",api1502.getTzzfxjbys() + "", api1502.getTzzfxjbnljs() + "");
|
paddingData(gdFinanceDto, list, "21", "取得子公司及其他营业单位支付的现金净额",api1502.getQdzgsdzfxjjebys() + "", api1502.getQdzgsdzfxjjebnljs() + "");
|
paddingData(gdFinanceDto, list, "22", "支付其他与投资活动有关的现金",api1502.getZfqttzxjbys() + "", api1502.getZfqttzxjbnljs() + "");
|
paddingData(gdFinanceDto, list, "23", "投资活动现金流出小计",api1502.getTzhdxjlcbys() + "", api1502.getTzhdxjlcbnljs() + "");
|
paddingData(gdFinanceDto, list, "24", "投资活动产生的现金流量净额",api1502.getTzhdcsxjlljebys() + "", api1502.getTzhdcsxjlljebnljs() + "");
|
paddingData(gdFinanceDto, list, "25", "三、筹资活动产生的现金流量",api1502.getCchdxjllbys() + "", api1502.getCchdxjllbnljs() + "");
|
paddingData(gdFinanceDto, list, "26", "吸收投资收到的现金",api1502.getXstzxjbys() + "", api1502.getXstzxjbnljs() + "");
|
paddingData(gdFinanceDto, list, "27", "取得借款收到的现金",api1502.getQdjkxjbys() + "", api1502.getQdjkxjbnljs() + "");
|
paddingData(gdFinanceDto, list, "28", "收到其他与筹资活动有关的现金",api1502.getSdqtczxjbys() + "", api1502.getSdqttzxjbnljs() + "");
|
paddingData(gdFinanceDto, list, "29", "筹资活动现金流入小计",api1502.getCzhdxjlrbys() + "", api1502.getCzhdxjlrbnljs() + "");
|
paddingData(gdFinanceDto, list, "30", "偿还债务支付的现金",api1502.getChzwzfxjbys() + "", api1502.getChzwzfxjbnljs() + "");
|
paddingData(gdFinanceDto, list, "31", "分配股利、利润或偿付利息支付的现金",api1502.getFpgldxjbys() + "", api1502.getFpgldxjbnljs() + "");
|
paddingData(gdFinanceDto, list, "32", "支付其他与筹资活动有关的现金",api1502.getZfqtdxjbys() + "", api1502.getZfqtdxjbnljs() + "");
|
paddingData(gdFinanceDto, list, "33", "筹资活动现金流出小计",api1502.getCzhdxjlcbys() + "", api1502.getCzhdxjlcbnljs() + "");
|
paddingData(gdFinanceDto, list, "34", "筹资活动产生的现金流量净额",api1502.getCchdxjlljebys() + "", api1502.getCchdxjlljebnljs() + "");
|
paddingData(gdFinanceDto, list, "35", "四、汇率变动对现金及现金等价物的影响",api1502.getHlbdxjyxbys() + "", api1502.getHlbdxjyxbnljs() + "");
|
paddingData(gdFinanceDto, list, "36", "五、现金及现金等价物净增加额",api1502.getXjdjwjzebys() + "", api1502.getXjdjwjzebnljs() + "");
|
paddingData(gdFinanceDto, list, "37", "加:期初现金及现金等价物余额",api1502.getQcxjdjwyebys() + "", api1502.getQcxjdjwyebnljs() + "");
|
paddingData(gdFinanceDto, list, "38", "六、期末现金及现金等价物余额",api1502.getQmxjdjwyebys() + "", api1502.getQmxjdjwyebnljs() + "");
|
|
return list;
|
}
|
|
private List<GDFinanceDto> copyApi1501(Api1501 api1501) {
|
List<GDFinanceDto> list = new ArrayList<>();
|
GDFinanceDto gdFinanceDto = new GDFinanceDto();
|
gdFinanceDto.setDwdm(api1501.getDwdm());
|
gdFinanceDto.setBbsj(DateFormatUtils.format(api1501.getBbsj(), "yyyyMMdd"));
|
gdFinanceDto.setBbm("01");
|
gdFinanceDto.setCzbz(api1501.getCzbz());
|
gdFinanceDto.setZhgxsj(DateFormatUtils.format(api1501.getZhgxsj(), "yyyy-MM-dd HH:mm:ss"));
|
|
paddingData(gdFinanceDto, list, "1", "资产//t","期末余额//t", "年初余额//t");
|
paddingData(gdFinanceDto, list, "2", "流动资产",api1501.getLdzchjqmye() + "", api1501.getLdzchjncye() + "");
|
paddingData(gdFinanceDto, list, "3", "货币资金",api1501.getHbjjqmye() + "", api1501.getHbjjncye() + "");
|
paddingData(gdFinanceDto, list, "4", "交易性金融资产",api1501.getJyxjrzcqmye() + "", api1501.getJyxjrzcncye() + "");
|
paddingData(gdFinanceDto, list, "5", "衍生金融资产",api1501.getYsjrzcqmye() + "", api1501.getYsjrzcncye() + "");
|
paddingData(gdFinanceDto, list, "6", "应收票据",api1501.getYspjqmye() + "", api1501.getYspjncye() + "");
|
paddingData(gdFinanceDto, list, "7", "应收账款",api1501.getYszkqmye() + "", api1501.getYszkncye() + "");
|
paddingData(gdFinanceDto, list, "8", "预付款项",api1501.getYuskxqmye() + "", api1501.getYuskxncye() + "");
|
paddingData(gdFinanceDto, list, "9", "其他应收款",api1501.getQtyszkqmye() + "", api1501.getQtyszkncye() + "");
|
paddingData(gdFinanceDto, list, "10", "存货",api1501.getChqmye() + "", api1501.getChncye() + "");
|
paddingData(gdFinanceDto, list, "11", "合同资产",api1501.getHtzcqmye() + "", api1501.getHtzcncye() + "");
|
paddingData(gdFinanceDto, list, "12", "持有待售资产",api1501.getCydszcqmye() + "", api1501.getCydszcncye() + "");
|
paddingData(gdFinanceDto, list, "13", "一年内到期的非流动资产",api1501.getYnndqfldzcqmye() + "", api1501.getYnndqfldzcncye() + "");
|
paddingData(gdFinanceDto, list, "14", "其他流动资产",api1501.getQtldzcqmye() + "", api1501.getQtldzcncye() + "");
|
paddingData(gdFinanceDto, list, "15", "流动资产合计",api1501.getLdzchjqmye() + "", api1501.getLdzchjncye() + "");
|
paddingData(gdFinanceDto, list, "16", "非流动资产",api1501.getFldzcqmye() + "", api1501.getFldzcncye() + "");
|
paddingData(gdFinanceDto, list, "17", "债券投资",api1501.getZjtzqmye() + "", api1501.getZjtzncye() + "");
|
paddingData(gdFinanceDto, list, "18", "其他债券投资",api1501.getQtzqtzqmye() + "", api1501.getQtzqtzncye() + "");
|
paddingData(gdFinanceDto, list, "19", "长期应收款",api1501.getCqyskqmye() + "", api1501.getCqyskncye() + "");
|
paddingData(gdFinanceDto, list, "20", "长期股权投资",api1501.getCqgqtzqmye() + "", api1501.getCqgqtzncye() + "");
|
paddingData(gdFinanceDto, list, "21", "其他权益工具投资",api1501.getQtqygjtzqmye() + "", api1501.getQtqygjtzncye() + "");
|
paddingData(gdFinanceDto, list, "22", "其他非流动金融资产",api1501.getQtfldjrzcqmye() + "", api1501.getQtfldjrzcncye() + "");
|
paddingData(gdFinanceDto, list, "23", "投资性房地产",api1501.getTzxfdcqmye() + "", api1501.getTzxfdcncye() + "");
|
paddingData(gdFinanceDto, list, "24", "固定资产",api1501.getGdzcqmye() + "", api1501.getGdzcncye() + "");
|
paddingData(gdFinanceDto, list, "25", "在建工程",api1501.getZjgcqmye() + "", api1501.getZjgcncye() + "");
|
paddingData(gdFinanceDto, list, "26", "生产性生物资产",api1501.getScxswzcqmye() + "", api1501.getScxswzcncye() + "");
|
paddingData(gdFinanceDto, list, "27", "油气资产",api1501.getYqzcqmye() + "", api1501.getYqzcncye() + "");
|
paddingData(gdFinanceDto, list, "28", "无形资产",api1501.getWxzcqmye() + "", api1501.getWxzcncye() + "");
|
paddingData(gdFinanceDto, list, "29", "开发支出",api1501.getKfzcqmye() + "", api1501.getKfzcncye() + "");
|
paddingData(gdFinanceDto, list, "30", "商誉",api1501.getSyqmye() + "", api1501.getSyncye() + "");
|
paddingData(gdFinanceDto, list, "31", "长期待摊费用",api1501.getCqdtfyqmye() + "", api1501.getCqdtfyncye() + "");
|
paddingData(gdFinanceDto, list, "32", "递延所得税资产",api1501.getDysdszcqmye() + "", api1501.getDysdszcncye() + "");
|
paddingData(gdFinanceDto, list, "33", "其他非流动资产",api1501.getQtfldzcqmye() + "", api1501.getQtfldzcncye() + "");
|
paddingData(gdFinanceDto, list, "34", "非流动资产合计",api1501.getFldzcqmye() + "", api1501.getFldzcncye() + "");
|
paddingData(gdFinanceDto, list, "35", "资产总计",api1501.getZczjqmye() + "", api1501.getZczjncye() + "");
|
paddingData(gdFinanceDto, list, "36", "负债和所有者权益(或股东权益)//t","期末余额//t", "年初余额//t");
|
paddingData(gdFinanceDto, list, "37", "流动负债",api1501.getLdfzhjqmye() + "", api1501.getLdfzhjncye() + "");
|
paddingData(gdFinanceDto, list, "38", "短期借款",api1501.getDqjkqmye() + "", api1501.getLdzchjncye() + "");
|
paddingData(gdFinanceDto, list, "39", "交易性金融负债",api1501.getJyxjrfzqmye() + "", api1501.getJyxjrfzncye() + "");
|
paddingData(gdFinanceDto, list, "40", "衍生金融负债",api1501.getYsjrfzqmye() + "", api1501.getYsjrfzncye() + "");
|
paddingData(gdFinanceDto, list, "41", "应付票据",api1501.getLdfzyspjqmye() + "", api1501.getLdfzyspjncye() + "");
|
paddingData(gdFinanceDto, list, "42", "应付账款",api1501.getLdfzyszkqmye() + "", api1501.getLdfzyszkncye() + "");
|
paddingData(gdFinanceDto, list, "43", "预收款项",api1501.getLdfzyuskxqmye() + "", api1501.getLdfzyszkncye() + "");
|
paddingData(gdFinanceDto, list, "44", "合同负债",api1501.getHtfzqmye() + "", api1501.getHtfzncye() + "");
|
paddingData(gdFinanceDto, list, "45", "应付职工薪酬",api1501.getYfzgxcqmye() + "", api1501.getYfzgxcncye() + "");
|
paddingData(gdFinanceDto, list, "46", "应交税费",api1501.getYjsfqmye() + "", api1501.getYjsfncye() + "");
|
paddingData(gdFinanceDto, list, "47", "其他应付款",api1501.getQtyfkqmye() + "", api1501.getQtyfkncye() + "");
|
paddingData(gdFinanceDto, list, "48", "持有待售负债",api1501.getCydsfzqmye() + "", api1501.getCydsfzncye() + "");
|
paddingData(gdFinanceDto, list, "49", "一年内到期的非流动负债",api1501.getYnddqfldfzqmye() + "", api1501.getYnddqfldfzncye() + "");
|
paddingData(gdFinanceDto, list, "50", "其他流动负债",api1501.getQtldfzqmye() + "", api1501.getQtldfzncye() + "");
|
paddingData(gdFinanceDto, list, "51", "流动负债合计",api1501.getLdfzhjqmye() + "", api1501.getLdfzhjncye() + "");
|
paddingData(gdFinanceDto, list, "52", "非流动负债",api1501.getFldfzhjqmye() + "", api1501.getFldfzhjncye() + "");
|
paddingData(gdFinanceDto, list, "53", "长期借款",api1501.getCqjkqmye() + "", api1501.getCqjkncye() + "");
|
paddingData(gdFinanceDto, list, "54", "应付债券",api1501.getYfzqqmye() + "", api1501.getYfzqncye() + "");
|
paddingData(gdFinanceDto, list, "55", "其中:优先股",api1501.getYfzqyxgqmye() + "", api1501.getYfzqyxgncye() + "");
|
paddingData(gdFinanceDto, list, "56", " 永续债",api1501.getYfzqyxzqmye() + "", api1501.getYfzqyxzncye() + "");
|
paddingData(gdFinanceDto, list, "57", "长期应付款",api1501.getCqyfkqmye() + "", api1501.getCqyfkncye() + "");
|
paddingData(gdFinanceDto, list, "58", "预计负债",api1501.getYjsfqmye() + "", api1501.getYjsfncye() + "");
|
paddingData(gdFinanceDto, list, "59", "递延收益",api1501.getDysyqmye() + "", api1501.getDysyncye() + "");
|
paddingData(gdFinanceDto, list, "60", "递延所得税负债",api1501.getDysdsfzqmye() + "", api1501.getDysdsfzncye() + "");
|
paddingData(gdFinanceDto, list, "61", "其他非流动负债",api1501.getQtfldfzqmye() + "", api1501.getQtfldfzncye() + "");
|
paddingData(gdFinanceDto, list, "62", "非流动负债合计",api1501.getFldfzhjqmye() + "", api1501.getFldfzhjncye() + "");
|
paddingData(gdFinanceDto, list, "63", "负债合计",api1501.getFzhjqmye() + "", api1501.getFzhjncye() + "");
|
paddingData(gdFinanceDto, list, "64", "所有者权益(或股东权益)",api1501.getSyzqyqmye() + "", api1501.getSyzqyncye() + "");
|
paddingData(gdFinanceDto, list, "65", "实收资本(或股本)",api1501.getSszbqmye() + "", api1501.getSszbncye() + "");
|
paddingData(gdFinanceDto, list, "66", "其他权益工具",api1501.getQtqygjqmye() + "", api1501.getQtqygjncye() + "");
|
paddingData(gdFinanceDto, list, "67", "其中:优先股",api1501.getQtqygjyxgqmye() + "", api1501.getQtqygjyxgncye() + "");
|
paddingData(gdFinanceDto, list, "68", "永续债",api1501.getQtqygjyxzqmye() + "", api1501.getQtqygjyxzncye() + "");
|
paddingData(gdFinanceDto, list, "69", "资本公积",api1501.getZbgjqmye() + "", api1501.getZbgjncye() + "");
|
paddingData(gdFinanceDto, list, "70", "减:库存股",api1501.getJkcgqmye() + "", api1501.getJkcgncye() + "");
|
paddingData(gdFinanceDto, list, "71", "其他综合收益",api1501.getQtzhsyqmye() + "", api1501.getQtzhsyncye() + "");
|
paddingData(gdFinanceDto, list, "72", "专项储备",api1501.getZxcbqmye() + "", api1501.getZxcbncye() + "");
|
paddingData(gdFinanceDto, list, "73", "盈余公积",api1501.getYygjqmye() + "", api1501.getYygjncye() + "");
|
paddingData(gdFinanceDto, list, "74", "未分配利润",api1501.getWfplrqmye() + "", api1501.getWfplrncye() + "");
|
paddingData(gdFinanceDto, list, "75", "所有者权益(或股东权益) 合计",api1501.getSyzqyqmye() + "", api1501.getSyzqyncye() + "");
|
paddingData(gdFinanceDto, list, "76", "负债和所有者权益(或股东权益)总计",api1501.getFzhsyzqyqmye() + "", api1501.getFzhsyzqyncye() + "");
|
return list;
|
}
|
|
private void paddingData(GDFinanceDto common,
|
List<GDFinanceDto> list,
|
String zbxh,
|
String zbmc,
|
String zbz1,
|
String zbz2)
|
{
|
GDFinanceDto gdFinanceDto = new GDFinanceDto();
|
BeanUtils.copyProperties(common,gdFinanceDto);
|
gdFinanceDto.setZbxh(Integer.valueOf(zbxh));
|
gdFinanceDto.setZbmc(zbmc);
|
gdFinanceDto.setZbz1(zbz1);
|
gdFinanceDto.setZbz2(zbz2);
|
list.add(gdFinanceDto);
|
}
|
|
|
private String getInteId(String inteId){
|
switch (inteId){
|
case "1101":
|
return ApiCodeConstant.API_CODE_DWXX;
|
case "1102":
|
return ApiCodeConstant.API_CODE_KQXX;
|
case "1103":
|
return ApiCodeConstant.API_CODE_CFXX;
|
case "1104":
|
return ApiCodeConstant.API_CODE_AJXX;
|
case "1105":
|
return ApiCodeConstant.API_CODE_HWXX;
|
case "1106":
|
return ApiCodeConstant.API_CODE_YGXX;
|
case "1107":
|
return ApiCodeConstant.API_CODE_SBXX;
|
case "1108":
|
return ApiCodeConstant.API_CODE_YJXX;
|
case "1109":
|
return ApiCodeConstant.API_CODE_WJXX;
|
case "1110":
|
return ApiCodeConstant.API_CODE_KQTCFDWBZ;
|
case "1111":
|
return ApiCodeConstant.API_CODE_KQTSPJKSBDWBZ;
|
case "1112":
|
return ApiCodeConstant.API_CODE_RYXX;
|
case "1113":
|
return "";
|
case "1201":
|
return ApiCodeConstant.API_CODE_HTXX;
|
case "1202":
|
return ApiCodeConstant.API_CODE_LSRKXX;
|
case "1203":
|
return ApiCodeConstant.API_CODE_RKJYXX;
|
case "1204":
|
return ApiCodeConstant.API_CODE_RKJSXX;
|
case "1205":
|
return ApiCodeConstant.API_CODE_LSCKXX;
|
case "1206":
|
return ApiCodeConstant.API_CODE_LSCKJS;
|
case "1207":
|
return ApiCodeConstant.API_CODE_DCXX;
|
case "1208":
|
return ApiCodeConstant.API_CODE_LSKC;
|
case "1209":
|
return ApiCodeConstant.API_CODE_SYD;
|
case "1210":
|
return ApiCodeConstant.API_CODE_XZZBD;
|
case "1211":
|
return ApiCodeConstant.API_CODE_ZMKCXX;
|
case "1212":
|
return ApiCodeConstant.API_CODE_KHXX;
|
case "1301":
|
return ApiCodeConstant.API_CODE_AQGL;
|
case "1302":
|
return ApiCodeConstant.API_CODE_WSDJC;
|
case "1303":
|
return ApiCodeConstant.API_CODE_HCJC;
|
case "1304":
|
return ApiCodeConstant.API_CODE_QTJC;
|
case "1305":
|
return ApiCodeConstant.API_CODE_TFZY;
|
case "1306":
|
return ApiCodeConstant.API_CODE_XZZY;
|
case "1307":
|
return ApiCodeConstant.API_CODE_CNSPTX;
|
case "1308":
|
return ApiCodeConstant.API_CODE_SPJKYCSJGJJBXX;
|
case "1309":
|
return ApiCodeConstant.API_CODE_WGYJXX;
|
case "1310":
|
return ApiCodeConstant.API_CODE_ZZSJ;
|
case "1401":
|
return ApiCodeConstant.API_CODE_CBGM;
|
case "1402":
|
return ApiCodeConstant.API_CODE_CBJHXX;
|
case "1403":
|
return ApiCodeConstant.API_CODE_LHJHXX;
|
case "1404":
|
return ApiCodeConstant.API_CODE_LHJHMXXX;
|
case "1405":
|
return "";
|
case "1501":
|
return ApiCodeConstant.API_CODE_CWBBXX;
|
case "1502":
|
return ApiCodeConstant.API_CODE_CWBBXX;
|
case "1503":
|
return ApiCodeConstant.API_CODE_CWBBXX;
|
default:
|
return inteId;
|
}
|
}
|
}
|