Commit dcb150e5 by guanzhenshan

1、更新现金流量表的服务没有重跑的问题;

2、资产负债表环比报表和导出增加生产库存
parent c564f3c9
......@@ -43,7 +43,7 @@ namespace Bailun.DC.DailyPayAndIncoming
Console.WriteLine("任务运行完成 " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
}
else if (now.Hour / 8 == 0 && now.Minute == 1)
else if (now.Hour % 8 == 0 && now.Minute == 1)
{
var start = DateTime.Parse(now.AddMonths(-1).ToShortDateString());
while (start.AddDays(1) < DateTime.Now)
......
......@@ -2855,10 +2855,10 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
var obj = new Services.FinanceReportServices().ListBalanceSheet(start, end);
var s = new List<string>() { "货币资金", "1.平台提现在途", "2.第三方平台余额", "3.银行帐号余额", "交易性金融资金", "应收票据", "应收账款", "1.借支金额", "预付款项", "1.预付成品供应商", "2.预付半成品供应商", "3.预付物流供应商", "应收利息", "应收股利", "其他应收款", "存货", "1.存货FBA仓在库", "2.存货非FBA仓在库", "3.存货FBA仓在途(非调拨计划)", "4.存货FBA仓在途(调拨计划)",
"5.存货非FBA仓在途(非调拨计划)","6.存货非FBA在途(调拨计划)","7.存货半成品在库","7.1百伦半成品在库","7.2哈倪曼半成品在库","8.存货半成品在途","8.1百伦半成品在途","8.2哈倪曼半成品在途","一年内到期的非流动资产","其他流动资产","流动资产合计","可供出售金融资产","持有至到期投资","长期应收款","长期股权投资","投资性房地产","固定资产","在建工程","工程物资","固定资产清理",
"生产性生物资产","油气资产","无形资产","开发支出","商誉","长期待摊费用","递延所得税资产","其他非流动资产","非流动资产合计","资产合计","短期借款","交易性金融负债","应付票据","应付账款","1.成品供应商","2.应付半成品供应商","3.应付物流供应商","预收款项","应付职工薪酬","应交税费",
"应付利息","应付股利","其他应付款","一年内到期的非流动负债","其他流动负债","流动负债合计","长期借款","应付债券","长期应付款","专项应付款","预计负债","递延所得税负债","其他非流动负债","非流动负债合计","负债合计","实收资本(股本)","资本公积","减:库存股","盈余公积","未分配利润",
"所有者权益(或股东权益)","负债和所有者权益(或股东权益)合计"
"5.存货非FBA仓在途(非调拨计划)","6.存货非FBA在途(调拨计划)","7.存货半成品在库","7.1百伦半成品在库","7.2哈倪曼半成品在库","7.3生产库存","8.存货半成品在途","8.1百伦半成品在途","8.2哈倪曼半成品在途","一年内到期的非流动资产","其他流动资产","流动资产合计","可供出售金融资产","持有至到期投资","长期应收款","长期股权投资","投资性房地产","固定资产","在建工程","工程物资",
"固定资产清理","生产性生物资产","油气资产","无形资产","开发支出","商誉","长期待摊费用","递延所得税资产","其他非流动资产","非流动资产合计","资产合计","短期借款","交易性金融负债","应付票据","应付账款","1.成品供应商","2.应付半成品供应商","3.应付物流供应商","预收款项","应付职工薪酬",
"应交税费","应付利息","应付股利","其他应付款","一年内到期的非流动负债","其他流动负债","流动负债合计","长期借款","应付债券","长期应付款","专项应付款","预计负债","递延所得税负债","其他非流动负债","非流动负债合计","负债合计","实收资本(股本)","资本公积","减:库存股","盈余公积",
"未分配利润","所有者权益(或股东权益)","负债和所有者权益(或股东权益)合计"
};
var val = new List<string>();
......@@ -2892,7 +2892,7 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
m.nca_development_expenditure = m.nca_development_expenditure ?? 0;
m.nca_disposal_of_fixed_assets = m.nca_disposal_of_fixed_assets ?? 0;
m.nca_engineering_material = m.nca_engineering_material ?? 0;
m.semi_prod_inventory_amount = m.semi_prod_inventory_amount ?? 0;
m.nca_goodwill = m.nca_goodwill ?? 0;
m.nca_heldon_investment = m.nca_heldon_investment ?? 0;
......@@ -3012,68 +3012,71 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[22], start = obj[0].semi_inventory_amount.Value, end = obj[1].semi_inventory_amount.Value, diff = (obj[0].semi_inventory_amount.Value == 0 ? 0 : (obj[1].semi_inventory_amount.Value - obj[0].semi_inventory_amount.Value) / obj[0].semi_inventory_amount.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[23], start = obj[0].semi_bailun_inventory_amount.Value, end = obj[1].semi_bailun_inventory_amount.Value, diff = (obj[0].semi_bailun_inventory_amount.Value == 0 ? 0 : (obj[1].semi_bailun_inventory_amount.Value - obj[0].semi_bailun_inventory_amount.Value) / obj[0].semi_bailun_inventory_amount.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[24], start = obj[0].semi_hani_inventory_amount.Value, end = obj[1].semi_hani_inventory_amount.Value, diff = (obj[0].semi_hani_inventory_amount.Value == 0 ? 0 : (obj[1].semi_hani_inventory_amount.Value - obj[0].semi_hani_inventory_amount.Value) / obj[0].semi_hani_inventory_amount.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[25], start = obj[0].semi_transfer_amount.Value, end = obj[1].semi_transfer_amount.Value, diff = (obj[0].semi_transfer_amount.Value == 0 ? 0 : (obj[1].semi_transfer_amount.Value - obj[0].semi_transfer_amount.Value) / obj[0].semi_transfer_amount.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[26], start = obj[0].semi_bailun_transfer_amount.Value, end = obj[1].semi_bailun_transfer_amount.Value, diff = (obj[0].semi_bailun_transfer_amount.Value == 0 ? 0 : (obj[1].semi_bailun_transfer_amount.Value - obj[0].semi_bailun_transfer_amount.Value) / obj[0].semi_bailun_transfer_amount.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[27], start = obj[0].semi_hani_transfer_amount.Value, end = obj[1].semi_hani_transfer_amount.Value, diff = (obj[0].semi_hani_transfer_amount.Value == 0 ? 0 : (obj[1].semi_hani_transfer_amount.Value - obj[0].semi_hani_transfer_amount.Value) / obj[0].semi_hani_transfer_amount.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[28], start = obj[0].fa_oneyear_noncurrent_assets.Value, end = obj[1].fa_oneyear_noncurrent_assets.Value, diff = (obj[0].fa_oneyear_noncurrent_assets.Value == 0 ? 0 : (obj[1].fa_oneyear_noncurrent_assets.Value - obj[0].fa_oneyear_noncurrent_assets.Value) / obj[0].fa_oneyear_noncurrent_assets.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[29], start = obj[0].fa_other_assets.Value, end = obj[1].fa_other_assets.Value, diff = (obj[0].fa_other_assets.Value == 0 ? 0 : (obj[1].fa_other_assets.Value - obj[0].fa_other_assets.Value) / obj[0].fa_other_assets.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[30], start = obj[0].fa_count.Value, end = obj[1].fa_count.Value, diff = (obj[0].fa_count.Value == 0 ? 0 : (obj[1].fa_count.Value - obj[0].fa_count.Value) / obj[0].fa_count.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[31], start = obj[0].nca_avai_for_sale_fassets.Value, end = obj[1].nca_avai_for_sale_fassets.Value, diff = (obj[0].nca_avai_for_sale_fassets.Value == 0 ? 0 : (obj[1].nca_avai_for_sale_fassets.Value - obj[0].nca_avai_for_sale_fassets.Value) / obj[0].nca_avai_for_sale_fassets.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[32], start = obj[0].nca_heldon_investment.Value, end = obj[1].nca_heldon_investment.Value, diff = (obj[0].nca_heldon_investment.Value == 0 ? 0 : (obj[1].nca_heldon_investment.Value - obj[0].nca_heldon_investment.Value) / obj[0].nca_heldon_investment.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[33], start = obj[0].nca_longterm_receivable.Value, end = obj[1].nca_longterm_receivable.Value, diff = (obj[0].nca_longterm_receivable.Value == 0 ? 0 : (obj[1].nca_longterm_receivable.Value - obj[0].nca_longterm_receivable.Value) / obj[0].nca_longterm_receivable.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[34], start = obj[0].nca_longterm_equity_investment.Value, end = obj[1].nca_longterm_equity_investment.Value, diff = (obj[0].nca_longterm_equity_investment.Value == 0 ? 0 : (obj[1].nca_longterm_equity_investment.Value - obj[0].nca_longterm_equity_investment.Value) / obj[0].nca_longterm_equity_investment.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[35], start = obj[0].nca_investment_property.Value, end = obj[1].nca_investment_property.Value, diff = (obj[0].nca_investment_property.Value == 0 ? 0 : (obj[1].nca_investment_property.Value - obj[0].nca_investment_property.Value) / obj[0].nca_investment_property.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[36], start = obj[0].fixed_assets, end = obj[1].fixed_assets, diff = (obj[0].fixed_assets == 0 ? 0 : (obj[1].fixed_assets - obj[0].fixed_assets) / obj[0].fixed_assets * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[37], start = obj[0].nca_construction_in_process.Value, end = obj[1].nca_construction_in_process.Value, diff = (obj[0].nca_construction_in_process.Value == 0 ? 0 : (obj[1].nca_construction_in_process.Value - obj[0].nca_construction_in_process.Value) / obj[0].nca_construction_in_process.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[38], start = obj[0].nca_engineering_material.Value, end = obj[1].nca_engineering_material.Value, diff = (obj[0].nca_engineering_material.Value == 0 ? 0 : (obj[1].nca_engineering_material.Value - obj[0].nca_engineering_material.Value) / obj[0].nca_engineering_material.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[39], start = obj[0].nca_disposal_of_fixed_assets.Value, end = obj[1].nca_disposal_of_fixed_assets.Value, diff = (obj[0].nca_disposal_of_fixed_assets.Value == 0 ? 0 : (obj[1].nca_disposal_of_fixed_assets.Value - obj[0].nca_disposal_of_fixed_assets.Value) / obj[0].nca_disposal_of_fixed_assets.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[40], start = obj[0].nca_productive_biological_asset.Value, end = obj[1].nca_productive_biological_asset.Value, diff = (obj[0].nca_productive_biological_asset.Value == 0 ? 0 : (obj[1].nca_productive_biological_asset.Value - obj[0].nca_productive_biological_asset.Value) / obj[0].monetary_fund * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[41], start = obj[0].nca_oil_and_gas_assets.Value, end = obj[1].nca_oil_and_gas_assets.Value, diff = (obj[0].nca_oil_and_gas_assets.Value == 0 ? 0 : (obj[1].nca_oil_and_gas_assets.Value - obj[0].nca_oil_and_gas_assets.Value) / obj[0].nca_oil_and_gas_assets.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[42], start = obj[0].nca_intangible_assets.Value, end = obj[1].nca_intangible_assets.Value, diff = (obj[0].nca_intangible_assets.Value == 0 ? 0 : (obj[1].nca_intangible_assets.Value - obj[0].nca_intangible_assets.Value) / obj[0].nca_intangible_assets.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[43], start = obj[0].nca_development_expenditure.Value, end = obj[1].nca_development_expenditure.Value, diff = (obj[0].nca_development_expenditure.Value == 0 ? 0 : (obj[1].nca_development_expenditure.Value - obj[0].nca_development_expenditure.Value) / obj[0].nca_development_expenditure.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[44], start = obj[0].nca_goodwill.Value, end = obj[1].nca_goodwill.Value, diff = (obj[0].nca_goodwill.Value == 0 ? 0 : (obj[1].nca_goodwill.Value - obj[0].nca_goodwill.Value) / obj[0].nca_goodwill.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[45], start = obj[0].nca_longterm_unamortized_expenses.Value, end = obj[1].nca_longterm_unamortized_expenses.Value, diff = (obj[0].nca_longterm_unamortized_expenses.Value == 0 ? 0 : (obj[1].nca_longterm_unamortized_expenses.Value - obj[0].nca_longterm_unamortized_expenses.Value) / obj[0].nca_longterm_unamortized_expenses.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[46], start = obj[0].nca_deferred_tax_assets.Value, end = obj[1].nca_deferred_tax_assets.Value, diff = (obj[0].nca_deferred_tax_assets.Value == 0 ? 0 : (obj[1].nca_deferred_tax_assets.Value - obj[0].nca_deferred_tax_assets.Value) / obj[0].nca_deferred_tax_assets.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[47], start = obj[0].nca_other_assets.Value, end = obj[1].nca_other_assets.Value, diff = (obj[0].nca_other_assets.Value == 0 ? 0 : (obj[1].nca_other_assets.Value - obj[0].nca_other_assets.Value) / obj[0].nca_other_assets.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[48], start = obj[0].nca_count.Value, end = obj[1].nca_count.Value, diff = (obj[0].nca_count.Value == 0 ? 0 : (obj[1].nca_count.Value - obj[0].nca_count.Value) / obj[0].nca_count.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[49], start = obj[0].count_assets.Value, end = obj[1].count_assets.Value, diff = (obj[0].count_assets.Value == 0 ? 0 : (obj[1].count_assets.Value - obj[0].count_assets.Value) / obj[0].count_assets.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[50], start = obj[0].short_term_borrow, end = obj[1].short_term_borrow, diff = (obj[0].short_term_borrow == 0 ? 0 : (obj[1].short_term_borrow - obj[0].short_term_borrow) / obj[0].short_term_borrow * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[51], start = obj[0].cl_trading_financ_liabilities.Value, end = obj[1].cl_trading_financ_liabilities.Value, diff = (obj[0].cl_trading_financ_liabilities.Value == 0 ? 0 : (obj[1].cl_trading_financ_liabilities.Value - obj[0].cl_trading_financ_liabilities.Value) / obj[0].cl_trading_financ_liabilities.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[52], start = obj[0].cl_notes_payable.Value, end = obj[1].cl_notes_payable.Value, diff = (obj[0].cl_notes_payable.Value == 0 ? 0 : (obj[1].cl_notes_payable.Value - obj[0].cl_notes_payable.Value) / obj[0].cl_notes_payable.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[53], start = obj[0].accounts_payable, end = obj[1].accounts_payable, diff = (obj[0].accounts_payable == 0 ? 0 : (obj[1].accounts_payable - obj[0].accounts_payable) / obj[0].accounts_payable * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[54], start = obj[0].finished_accounts_payable.Value, end = obj[1].finished_accounts_payable.Value, diff = (obj[0].finished_accounts_payable.Value == 0 ? 0 : (obj[1].finished_accounts_payable.Value - obj[0].finished_accounts_payable.Value) / obj[0].finished_accounts_payable.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[55], start = obj[0].semi_accounts_payable.Value, end = obj[1].semi_accounts_payable.Value, diff = (obj[0].semi_accounts_payable.Value == 0 ? 0 : (obj[1].semi_accounts_payable.Value - obj[0].semi_accounts_payable.Value) / obj[0].semi_accounts_payable.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[56], start = obj[0].logistics_accounts_payable.Value, end = obj[1].logistics_accounts_payable.Value, diff = (obj[0].logistics_accounts_payable.Value == 0 ? 0 : (obj[1].logistics_accounts_payable.Value - obj[0].logistics_accounts_payable.Value) / obj[0].logistics_accounts_payable.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[57], start = obj[0].advance_received, end = obj[1].advance_received, diff = (obj[0].advance_received == 0 ? 0 : (obj[1].advance_received - obj[0].advance_received) / obj[0].advance_received * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[58], start = obj[0].payable_remuneration, end = obj[1].payable_remuneration, diff = (obj[0].payable_remuneration == 0 ? 0 : (obj[1].payable_remuneration - obj[0].payable_remuneration) / obj[0].payable_remuneration * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[59], start = obj[0].taxes_payable, end = obj[1].taxes_payable, diff = (obj[0].taxes_payable == 0 ? 0 : (obj[1].taxes_payable - obj[0].taxes_payable) / obj[0].taxes_payable * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[60], start = obj[0].cl_payable_interest.Value, end = obj[1].cl_payable_interest.Value, diff = (obj[0].cl_payable_interest.Value == 0 ? 0 : (obj[1].cl_payable_interest.Value - obj[0].cl_payable_interest.Value) / obj[0].cl_payable_interest.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[61], start = obj[0].cl_dividends_payable.Value, end = obj[1].cl_dividends_payable.Value, diff = (obj[0].cl_dividends_payable.Value == 0 ? 0 : (obj[1].cl_dividends_payable.Value - obj[0].cl_dividends_payable.Value) / obj[0].cl_dividends_payable.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[62], start = obj[0].other_accounts_payable, end = obj[1].other_accounts_payable, diff = (obj[0].other_accounts_payable == 0 ? 0 : (obj[1].other_accounts_payable - obj[0].other_accounts_payable) / obj[0].other_accounts_payable * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[63], start = obj[0].cl_oneyear_noncurrent_liabilities.Value, end = obj[1].cl_oneyear_noncurrent_liabilities.Value, diff = (obj[0].cl_oneyear_noncurrent_liabilities.Value == 0 ? 0 : (obj[1].cl_oneyear_noncurrent_liabilities.Value - obj[0].cl_oneyear_noncurrent_liabilities.Value) / obj[0].cl_oneyear_noncurrent_liabilities.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[64], start = obj[0].cl_other_liabilities.Value, end = obj[1].cl_other_liabilities.Value, diff = (obj[0].cl_other_liabilities.Value == 0 ? 0 : (obj[1].cl_other_liabilities.Value - obj[0].cl_other_liabilities.Value) / obj[0].cl_other_liabilities.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[65], start = obj[0].cl_count.Value, end = obj[1].cl_count.Value, diff = (obj[0].cl_count.Value == 0 ? 0 : (obj[1].cl_count.Value - obj[0].cl_count.Value) / obj[0].cl_count.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[66], start = obj[0].ncl_longterm_loan.Value, end = obj[1].ncl_longterm_loan.Value, diff = (obj[0].ncl_longterm_loan.Value == 0 ? 0 : (obj[1].ncl_longterm_loan.Value - obj[0].ncl_longterm_loan.Value) / obj[0].ncl_longterm_loan.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[67], start = obj[0].ncl_bonds_payable.Value, end = obj[1].ncl_bonds_payable.Value, diff = (obj[0].ncl_bonds_payable.Value == 0 ? 0 : (obj[1].ncl_bonds_payable.Value - obj[0].ncl_bonds_payable.Value) / obj[0].ncl_bonds_payable.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[68], start = obj[0].long_term_accounts_payable, end = obj[1].long_term_accounts_payable, diff = (obj[0].long_term_accounts_payable == 0 ? 0 : (obj[1].long_term_accounts_payable - obj[0].long_term_accounts_payable) / obj[0].long_term_accounts_payable * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[69], start = obj[0].ncl_special_payable.Value, end = obj[1].ncl_special_payable.Value, diff = (obj[0].ncl_special_payable.Value == 0 ? 0 : (obj[1].ncl_special_payable.Value - obj[0].ncl_special_payable.Value) / obj[0].ncl_special_payable.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[70], start = obj[0].ncl_anticipation_liabilities.Value, end = obj[1].ncl_anticipation_liabilities.Value, diff = (obj[0].ncl_anticipation_liabilities.Value == 0 ? 0 : (obj[1].ncl_anticipation_liabilities.Value - obj[0].ncl_anticipation_liabilities.Value) / obj[0].ncl_anticipation_liabilities.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[71], start = obj[0].ncl_deferred_income_tax_liabilities.Value, end = obj[1].ncl_deferred_income_tax_liabilities.Value, diff = (obj[0].ncl_deferred_income_tax_liabilities.Value == 0 ? 0 : (obj[1].ncl_deferred_income_tax_liabilities.Value - obj[0].ncl_deferred_income_tax_liabilities.Value) / obj[0].ncl_deferred_income_tax_liabilities.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[72], start = obj[0].ncl_other_liabilities.Value, end = obj[1].ncl_other_liabilities.Value, diff = (obj[0].ncl_other_liabilities.Value == 0 ? 0 : (obj[1].ncl_other_liabilities.Value - obj[0].ncl_other_liabilities.Value) / obj[0].ncl_other_liabilities.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[73], start = obj[0].ncl_count.Value, end = obj[1].ncl_count.Value, diff = (obj[0].ncl_count.Value == 0 ? 0 : (obj[1].ncl_count.Value - obj[0].ncl_count.Value) / obj[0].ncl_count.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[74], start = obj[0].count_liabilities.Value, end = obj[1].count_liabilities.Value, diff = (obj[0].count_liabilities.Value == 0 ? 0 : (obj[1].count_liabilities.Value - obj[0].count_liabilities.Value) / obj[0].count_liabilities.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[75], start = obj[0].oe_paicl_up_capital.Value, end = obj[1].oe_paicl_up_capital.Value, diff = (obj[0].oe_paicl_up_capital.Value == 0 ? 0 : (obj[1].oe_paicl_up_capital.Value - obj[0].oe_paicl_up_capital.Value) / obj[0].oe_paicl_up_capital.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[76], start = obj[0].oe_capital_reserve.Value, end = obj[1].oe_capital_reserve.Value, diff = (obj[0].oe_capital_reserve.Value == 0 ? 0 : (obj[1].oe_capital_reserve.Value - obj[0].oe_capital_reserve.Value) / obj[0].oe_capital_reserve.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[77], start = obj[0].oe_inventory_amount.Value, end = obj[1].oe_inventory_amount.Value, diff = (obj[0].oe_inventory_amount.Value == 0 ? 0 : (obj[1].oe_inventory_amount.Value - obj[0].oe_inventory_amount.Value) / obj[0].oe_inventory_amount.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[78], start = obj[0].oe_surplus_public_accumulation.Value, end = obj[1].oe_surplus_public_accumulation.Value, diff = (obj[0].oe_surplus_public_accumulation.Value == 0 ? 0 : (obj[1].oe_surplus_public_accumulation.Value - obj[0].oe_surplus_public_accumulation.Value) / obj[0].oe_surplus_public_accumulation.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[79], start = obj[0].oe_undistributed_profit.Value, end = obj[1].oe_undistributed_profit.Value, diff = (obj[0].oe_undistributed_profit.Value == 0 ? 0 : (obj[1].oe_undistributed_profit.Value - obj[0].oe_undistributed_profit.Value) / obj[0].oe_undistributed_profit.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[80], start = obj[0].oe_count.Value, end = obj[1].oe_count.Value, diff = (obj[0].oe_count.Value == 0 ? 0 : (obj[1].oe_count.Value - obj[0].oe_count.Value) / obj[0].oe_count.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[81], start = obj[0].count_liabilities_and_oe.Value, end = obj[1].count_liabilities_and_oe.Value, diff = (obj[0].count_liabilities_and_oe.Value == 0 ? 0 : (obj[1].count_liabilities_and_oe.Value - obj[0].count_liabilities_and_oe.Value) / obj[0].count_liabilities_and_oe.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[25], start = obj[0].semi_prod_inventory_amount.Value, end = obj[1].semi_prod_inventory_amount.Value, diff = (obj[0].semi_prod_inventory_amount.Value == 0 ? 0 : (obj[1].semi_prod_inventory_amount.Value - obj[0].semi_prod_inventory_amount.Value) / obj[0].semi_prod_inventory_amount.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[26], start = obj[0].semi_transfer_amount.Value, end = obj[1].semi_transfer_amount.Value, diff = (obj[0].semi_transfer_amount.Value == 0 ? 0 : (obj[1].semi_transfer_amount.Value - obj[0].semi_transfer_amount.Value) / obj[0].semi_transfer_amount.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[27], start = obj[0].semi_bailun_transfer_amount.Value, end = obj[1].semi_bailun_transfer_amount.Value, diff = (obj[0].semi_bailun_transfer_amount.Value == 0 ? 0 : (obj[1].semi_bailun_transfer_amount.Value - obj[0].semi_bailun_transfer_amount.Value) / obj[0].semi_bailun_transfer_amount.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[28], start = obj[0].semi_hani_transfer_amount.Value, end = obj[1].semi_hani_transfer_amount.Value, diff = (obj[0].semi_hani_transfer_amount.Value == 0 ? 0 : (obj[1].semi_hani_transfer_amount.Value - obj[0].semi_hani_transfer_amount.Value) / obj[0].semi_hani_transfer_amount.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[29], start = obj[0].fa_oneyear_noncurrent_assets.Value, end = obj[1].fa_oneyear_noncurrent_assets.Value, diff = (obj[0].fa_oneyear_noncurrent_assets.Value == 0 ? 0 : (obj[1].fa_oneyear_noncurrent_assets.Value - obj[0].fa_oneyear_noncurrent_assets.Value) / obj[0].fa_oneyear_noncurrent_assets.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[30], start = obj[0].fa_other_assets.Value, end = obj[1].fa_other_assets.Value, diff = (obj[0].fa_other_assets.Value == 0 ? 0 : (obj[1].fa_other_assets.Value - obj[0].fa_other_assets.Value) / obj[0].fa_other_assets.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[31], start = obj[0].fa_count.Value, end = obj[1].fa_count.Value, diff = (obj[0].fa_count.Value == 0 ? 0 : (obj[1].fa_count.Value - obj[0].fa_count.Value) / obj[0].fa_count.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[32], start = obj[0].nca_avai_for_sale_fassets.Value, end = obj[1].nca_avai_for_sale_fassets.Value, diff = (obj[0].nca_avai_for_sale_fassets.Value == 0 ? 0 : (obj[1].nca_avai_for_sale_fassets.Value - obj[0].nca_avai_for_sale_fassets.Value) / obj[0].nca_avai_for_sale_fassets.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[33], start = obj[0].nca_heldon_investment.Value, end = obj[1].nca_heldon_investment.Value, diff = (obj[0].nca_heldon_investment.Value == 0 ? 0 : (obj[1].nca_heldon_investment.Value - obj[0].nca_heldon_investment.Value) / obj[0].nca_heldon_investment.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[34], start = obj[0].nca_longterm_receivable.Value, end = obj[1].nca_longterm_receivable.Value, diff = (obj[0].nca_longterm_receivable.Value == 0 ? 0 : (obj[1].nca_longterm_receivable.Value - obj[0].nca_longterm_receivable.Value) / obj[0].nca_longterm_receivable.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[35], start = obj[0].nca_longterm_equity_investment.Value, end = obj[1].nca_longterm_equity_investment.Value, diff = (obj[0].nca_longterm_equity_investment.Value == 0 ? 0 : (obj[1].nca_longterm_equity_investment.Value - obj[0].nca_longterm_equity_investment.Value) / obj[0].nca_longterm_equity_investment.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[36], start = obj[0].nca_investment_property.Value, end = obj[1].nca_investment_property.Value, diff = (obj[0].nca_investment_property.Value == 0 ? 0 : (obj[1].nca_investment_property.Value - obj[0].nca_investment_property.Value) / obj[0].nca_investment_property.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[37], start = obj[0].fixed_assets, end = obj[1].fixed_assets, diff = (obj[0].fixed_assets == 0 ? 0 : (obj[1].fixed_assets - obj[0].fixed_assets) / obj[0].fixed_assets * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[38], start = obj[0].nca_construction_in_process.Value, end = obj[1].nca_construction_in_process.Value, diff = (obj[0].nca_construction_in_process.Value == 0 ? 0 : (obj[1].nca_construction_in_process.Value - obj[0].nca_construction_in_process.Value) / obj[0].nca_construction_in_process.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[39], start = obj[0].nca_engineering_material.Value, end = obj[1].nca_engineering_material.Value, diff = (obj[0].nca_engineering_material.Value == 0 ? 0 : (obj[1].nca_engineering_material.Value - obj[0].nca_engineering_material.Value) / obj[0].nca_engineering_material.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[40], start = obj[0].nca_disposal_of_fixed_assets.Value, end = obj[1].nca_disposal_of_fixed_assets.Value, diff = (obj[0].nca_disposal_of_fixed_assets.Value == 0 ? 0 : (obj[1].nca_disposal_of_fixed_assets.Value - obj[0].nca_disposal_of_fixed_assets.Value) / obj[0].nca_disposal_of_fixed_assets.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[41], start = obj[0].nca_productive_biological_asset.Value, end = obj[1].nca_productive_biological_asset.Value, diff = (obj[0].nca_productive_biological_asset.Value == 0 ? 0 : (obj[1].nca_productive_biological_asset.Value - obj[0].nca_productive_biological_asset.Value) / obj[0].monetary_fund * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[42], start = obj[0].nca_oil_and_gas_assets.Value, end = obj[1].nca_oil_and_gas_assets.Value, diff = (obj[0].nca_oil_and_gas_assets.Value == 0 ? 0 : (obj[1].nca_oil_and_gas_assets.Value - obj[0].nca_oil_and_gas_assets.Value) / obj[0].nca_oil_and_gas_assets.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[43], start = obj[0].nca_intangible_assets.Value, end = obj[1].nca_intangible_assets.Value, diff = (obj[0].nca_intangible_assets.Value == 0 ? 0 : (obj[1].nca_intangible_assets.Value - obj[0].nca_intangible_assets.Value) / obj[0].nca_intangible_assets.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[44], start = obj[0].nca_development_expenditure.Value, end = obj[1].nca_development_expenditure.Value, diff = (obj[0].nca_development_expenditure.Value == 0 ? 0 : (obj[1].nca_development_expenditure.Value - obj[0].nca_development_expenditure.Value) / obj[0].nca_development_expenditure.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[45], start = obj[0].nca_goodwill.Value, end = obj[1].nca_goodwill.Value, diff = (obj[0].nca_goodwill.Value == 0 ? 0 : (obj[1].nca_goodwill.Value - obj[0].nca_goodwill.Value) / obj[0].nca_goodwill.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[46], start = obj[0].nca_longterm_unamortized_expenses.Value, end = obj[1].nca_longterm_unamortized_expenses.Value, diff = (obj[0].nca_longterm_unamortized_expenses.Value == 0 ? 0 : (obj[1].nca_longterm_unamortized_expenses.Value - obj[0].nca_longterm_unamortized_expenses.Value) / obj[0].nca_longterm_unamortized_expenses.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[47], start = obj[0].nca_deferred_tax_assets.Value, end = obj[1].nca_deferred_tax_assets.Value, diff = (obj[0].nca_deferred_tax_assets.Value == 0 ? 0 : (obj[1].nca_deferred_tax_assets.Value - obj[0].nca_deferred_tax_assets.Value) / obj[0].nca_deferred_tax_assets.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[48], start = obj[0].nca_other_assets.Value, end = obj[1].nca_other_assets.Value, diff = (obj[0].nca_other_assets.Value == 0 ? 0 : (obj[1].nca_other_assets.Value - obj[0].nca_other_assets.Value) / obj[0].nca_other_assets.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[49], start = obj[0].nca_count.Value, end = obj[1].nca_count.Value, diff = (obj[0].nca_count.Value == 0 ? 0 : (obj[1].nca_count.Value - obj[0].nca_count.Value) / obj[0].nca_count.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[50], start = obj[0].count_assets.Value, end = obj[1].count_assets.Value, diff = (obj[0].count_assets.Value == 0 ? 0 : (obj[1].count_assets.Value - obj[0].count_assets.Value) / obj[0].count_assets.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[51], start = obj[0].short_term_borrow, end = obj[1].short_term_borrow, diff = (obj[0].short_term_borrow == 0 ? 0 : (obj[1].short_term_borrow - obj[0].short_term_borrow) / obj[0].short_term_borrow * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[52], start = obj[0].cl_trading_financ_liabilities.Value, end = obj[1].cl_trading_financ_liabilities.Value, diff = (obj[0].cl_trading_financ_liabilities.Value == 0 ? 0 : (obj[1].cl_trading_financ_liabilities.Value - obj[0].cl_trading_financ_liabilities.Value) / obj[0].cl_trading_financ_liabilities.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[53], start = obj[0].cl_notes_payable.Value, end = obj[1].cl_notes_payable.Value, diff = (obj[0].cl_notes_payable.Value == 0 ? 0 : (obj[1].cl_notes_payable.Value - obj[0].cl_notes_payable.Value) / obj[0].cl_notes_payable.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[54], start = obj[0].accounts_payable, end = obj[1].accounts_payable, diff = (obj[0].accounts_payable == 0 ? 0 : (obj[1].accounts_payable - obj[0].accounts_payable) / obj[0].accounts_payable * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[55], start = obj[0].finished_accounts_payable.Value, end = obj[1].finished_accounts_payable.Value, diff = (obj[0].finished_accounts_payable.Value == 0 ? 0 : (obj[1].finished_accounts_payable.Value - obj[0].finished_accounts_payable.Value) / obj[0].finished_accounts_payable.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[56], start = obj[0].semi_accounts_payable.Value, end = obj[1].semi_accounts_payable.Value, diff = (obj[0].semi_accounts_payable.Value == 0 ? 0 : (obj[1].semi_accounts_payable.Value - obj[0].semi_accounts_payable.Value) / obj[0].semi_accounts_payable.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[57], start = obj[0].logistics_accounts_payable.Value, end = obj[1].logistics_accounts_payable.Value, diff = (obj[0].logistics_accounts_payable.Value == 0 ? 0 : (obj[1].logistics_accounts_payable.Value - obj[0].logistics_accounts_payable.Value) / obj[0].logistics_accounts_payable.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[58], start = obj[0].advance_received, end = obj[1].advance_received, diff = (obj[0].advance_received == 0 ? 0 : (obj[1].advance_received - obj[0].advance_received) / obj[0].advance_received * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[59], start = obj[0].payable_remuneration, end = obj[1].payable_remuneration, diff = (obj[0].payable_remuneration == 0 ? 0 : (obj[1].payable_remuneration - obj[0].payable_remuneration) / obj[0].payable_remuneration * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[60], start = obj[0].taxes_payable, end = obj[1].taxes_payable, diff = (obj[0].taxes_payable == 0 ? 0 : (obj[1].taxes_payable - obj[0].taxes_payable) / obj[0].taxes_payable * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[61], start = obj[0].cl_payable_interest.Value, end = obj[1].cl_payable_interest.Value, diff = (obj[0].cl_payable_interest.Value == 0 ? 0 : (obj[1].cl_payable_interest.Value - obj[0].cl_payable_interest.Value) / obj[0].cl_payable_interest.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[62], start = obj[0].cl_dividends_payable.Value, end = obj[1].cl_dividends_payable.Value, diff = (obj[0].cl_dividends_payable.Value == 0 ? 0 : (obj[1].cl_dividends_payable.Value - obj[0].cl_dividends_payable.Value) / obj[0].cl_dividends_payable.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[63], start = obj[0].other_accounts_payable, end = obj[1].other_accounts_payable, diff = (obj[0].other_accounts_payable == 0 ? 0 : (obj[1].other_accounts_payable - obj[0].other_accounts_payable) / obj[0].other_accounts_payable * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[64], start = obj[0].cl_oneyear_noncurrent_liabilities.Value, end = obj[1].cl_oneyear_noncurrent_liabilities.Value, diff = (obj[0].cl_oneyear_noncurrent_liabilities.Value == 0 ? 0 : (obj[1].cl_oneyear_noncurrent_liabilities.Value - obj[0].cl_oneyear_noncurrent_liabilities.Value) / obj[0].cl_oneyear_noncurrent_liabilities.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[65], start = obj[0].cl_other_liabilities.Value, end = obj[1].cl_other_liabilities.Value, diff = (obj[0].cl_other_liabilities.Value == 0 ? 0 : (obj[1].cl_other_liabilities.Value - obj[0].cl_other_liabilities.Value) / obj[0].cl_other_liabilities.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[66], start = obj[0].cl_count.Value, end = obj[1].cl_count.Value, diff = (obj[0].cl_count.Value == 0 ? 0 : (obj[1].cl_count.Value - obj[0].cl_count.Value) / obj[0].cl_count.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[67], start = obj[0].ncl_longterm_loan.Value, end = obj[1].ncl_longterm_loan.Value, diff = (obj[0].ncl_longterm_loan.Value == 0 ? 0 : (obj[1].ncl_longterm_loan.Value - obj[0].ncl_longterm_loan.Value) / obj[0].ncl_longterm_loan.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[68], start = obj[0].ncl_bonds_payable.Value, end = obj[1].ncl_bonds_payable.Value, diff = (obj[0].ncl_bonds_payable.Value == 0 ? 0 : (obj[1].ncl_bonds_payable.Value - obj[0].ncl_bonds_payable.Value) / obj[0].ncl_bonds_payable.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[69], start = obj[0].long_term_accounts_payable, end = obj[1].long_term_accounts_payable, diff = (obj[0].long_term_accounts_payable == 0 ? 0 : (obj[1].long_term_accounts_payable - obj[0].long_term_accounts_payable) / obj[0].long_term_accounts_payable * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[70], start = obj[0].ncl_special_payable.Value, end = obj[1].ncl_special_payable.Value, diff = (obj[0].ncl_special_payable.Value == 0 ? 0 : (obj[1].ncl_special_payable.Value - obj[0].ncl_special_payable.Value) / obj[0].ncl_special_payable.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[71], start = obj[0].ncl_anticipation_liabilities.Value, end = obj[1].ncl_anticipation_liabilities.Value, diff = (obj[0].ncl_anticipation_liabilities.Value == 0 ? 0 : (obj[1].ncl_anticipation_liabilities.Value - obj[0].ncl_anticipation_liabilities.Value) / obj[0].ncl_anticipation_liabilities.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[72], start = obj[0].ncl_deferred_income_tax_liabilities.Value, end = obj[1].ncl_deferred_income_tax_liabilities.Value, diff = (obj[0].ncl_deferred_income_tax_liabilities.Value == 0 ? 0 : (obj[1].ncl_deferred_income_tax_liabilities.Value - obj[0].ncl_deferred_income_tax_liabilities.Value) / obj[0].ncl_deferred_income_tax_liabilities.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[73], start = obj[0].ncl_other_liabilities.Value, end = obj[1].ncl_other_liabilities.Value, diff = (obj[0].ncl_other_liabilities.Value == 0 ? 0 : (obj[1].ncl_other_liabilities.Value - obj[0].ncl_other_liabilities.Value) / obj[0].ncl_other_liabilities.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[74], start = obj[0].ncl_count.Value, end = obj[1].ncl_count.Value, diff = (obj[0].ncl_count.Value == 0 ? 0 : (obj[1].ncl_count.Value - obj[0].ncl_count.Value) / obj[0].ncl_count.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[75], start = obj[0].count_liabilities.Value, end = obj[1].count_liabilities.Value, diff = (obj[0].count_liabilities.Value == 0 ? 0 : (obj[1].count_liabilities.Value - obj[0].count_liabilities.Value) / obj[0].count_liabilities.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[76], start = obj[0].oe_paicl_up_capital.Value, end = obj[1].oe_paicl_up_capital.Value, diff = (obj[0].oe_paicl_up_capital.Value == 0 ? 0 : (obj[1].oe_paicl_up_capital.Value - obj[0].oe_paicl_up_capital.Value) / obj[0].oe_paicl_up_capital.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[77], start = obj[0].oe_capital_reserve.Value, end = obj[1].oe_capital_reserve.Value, diff = (obj[0].oe_capital_reserve.Value == 0 ? 0 : (obj[1].oe_capital_reserve.Value - obj[0].oe_capital_reserve.Value) / obj[0].oe_capital_reserve.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[78], start = obj[0].oe_inventory_amount.Value, end = obj[1].oe_inventory_amount.Value, diff = (obj[0].oe_inventory_amount.Value == 0 ? 0 : (obj[1].oe_inventory_amount.Value - obj[0].oe_inventory_amount.Value) / obj[0].oe_inventory_amount.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[79], start = obj[0].oe_surplus_public_accumulation.Value, end = obj[1].oe_surplus_public_accumulation.Value, diff = (obj[0].oe_surplus_public_accumulation.Value == 0 ? 0 : (obj[1].oe_surplus_public_accumulation.Value - obj[0].oe_surplus_public_accumulation.Value) / obj[0].oe_surplus_public_accumulation.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[80], start = obj[0].oe_undistributed_profit.Value, end = obj[1].oe_undistributed_profit.Value, diff = (obj[0].oe_undistributed_profit.Value == 0 ? 0 : (obj[1].oe_undistributed_profit.Value - obj[0].oe_undistributed_profit.Value) / obj[0].oe_undistributed_profit.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[81], start = obj[0].oe_count.Value, end = obj[1].oe_count.Value, diff = (obj[0].oe_count.Value == 0 ? 0 : (obj[1].oe_count.Value - obj[0].oe_count.Value) / obj[0].oe_count.Value * 100).ToString("N2") });
listval.Add(new mFinanceDebtChain { onelevelname = "", sencondlevelname = s[82], start = obj[0].count_liabilities_and_oe.Value, end = obj[1].count_liabilities_and_oe.Value, diff = (obj[0].count_liabilities_and_oe.Value == 0 ? 0 : (obj[1].count_liabilities_and_oe.Value - obj[0].count_liabilities_and_oe.Value) / obj[0].count_liabilities_and_oe.Value * 100).ToString("N2") });
var listPro = new List<string>();
......@@ -3081,35 +3084,35 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
{
listval[i].diffval = listval[i].end - listval[i].start;
if (i >= 0 && i < 31)
if (i >= 0 && i < 32)
{
listval[i].onelevelname=("流动资产");
}
else if (i >= 31 && i < 49)
else if (i >= 32 && i < 50)
{
listval[i].onelevelname=("非流动资产");
}
else if (i >= 49 && i < 50)
else if (i >= 50 && i < 51)
{
listval[i].onelevelname=("资产合计");
}
else if (i >= 50 && i < 66)
else if (i >= 51 && i < 67)
{
listval[i].onelevelname=("流动负债");
}
else if (i >= 66 && i < 74)
else if (i >= 67 && i < 75)
{
listval[i].onelevelname=("非流动负债");
}
else if (i >= 74 && i < 75)
else if (i >= 75 && i < 76)
{
listval[i].onelevelname=("负债合计");
}
else if (i >= 75 && i < 81)
else if (i >= 76 && i < 82)
{
listval[i].onelevelname=("所有者权益(或股东权益)");
}
else if (i >= 81 && i < 82)
else if (i >= 82 && i < 83)
{
listval[i].onelevelname=("所有者权益(或股东权益)合计");
}
......@@ -3151,11 +3154,11 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
var obj = new Services.FinanceReportServices().ListBalanceSheet(start, end);
var s = new List<string>() { "货币资金", "1.平台提现在途", "2.第三方平台余额", "3.银行帐号余额", "交易性金融资金", "应收票据", "应收账款", "1.借支金额", "预付款项", "1.预付成品供应商", "2.预付半成品供应商", "3.预付物流供应商", "应收利息", "应收股利", "其他应收款", "存货", "1.存货FBA仓在库", "2.存货非FBA仓在库", "3.存货FBA仓在途(非调拨计划)", "4.存货FBA仓在途(调拨计划)",
"5.存货非FBA仓在途(非调拨计划)","6.存货非FBA在途(调拨计划)","7.存货半成品在库","7.1百伦半成品在库","7.2哈倪曼半成品在库","8.存货半成品在途","8.1百伦半成品在途","8.2哈倪曼半成品在途","一年内到期的非流动资产","其他流动资产","流动资产合计","可供出售金融资产","持有至到期投资","长期应收款","长期股权投资","投资性房地产","固定资产","在建工程","工程物资","固定资产清理",
"生产性生物资产","油气资产","无形资产","开发支出","商誉","长期待摊费用","递延所得税资产","其他非流动资产","非流动资产合计","资产合计","短期借款","交易性金融负债","应付票据","应付账款","1.成品供应商","2.应付半成品供应商","3.应付物流供应商","预收款项","应付职工薪酬","应交税费",
"应付利息","应付股利","其他应付款","一年内到期的非流动负债","其他流动负债","流动负债合计","长期借款","应付债券","长期应付款","专项应付款","预计负债","递延所得税负债","其他非流动负债","非流动负债合计","负债合计","实收资本(股本)","资本公积","减:库存股","盈余公积","未分配利润",
"所有者权益(或股东权益)","负债和所有者权益(或股东权益)合计"
};
"5.存货非FBA仓在途(非调拨计划)","6.存货非FBA在途(调拨计划)","7.存货半成品在库","7.1百伦半成品在库","7.2哈倪曼半成品在库","7.3生产库存","8.存货半成品在途","8.1百伦半成品在途","8.2哈倪曼半成品在途","一年内到期的非流动资产","其他流动资产","流动资产合计","可供出售金融资产","持有至到期投资","长期应收款","长期股权投资","投资性房地产","固定资产","在建工程","工程物资",
"固定资产清理","生产性生物资产","油气资产","无形资产","开发支出","商誉","长期待摊费用","递延所得税资产","其他非流动资产","非流动资产合计","资产合计","短期借款","交易性金融负债","应付票据","应付账款","1.成品供应商","2.应付半成品供应商","3.应付物流供应商","预收款项","应付职工薪酬",
"应交税费","应付利息","应付股利","其他应付款","一年内到期的非流动负债","其他流动负债","流动负债合计","长期借款","应付债券","长期应付款","专项应付款","预计负债","递延所得税负债","其他非流动负债","非流动负债合计","负债合计","实收资本(股本)","资本公积","减:库存股","盈余公积",
"未分配利润","所有者权益(或股东权益)","负债和所有者权益(或股东权益)合计"
};
var val = new List<string>();
......@@ -3204,7 +3207,7 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
m.ncl_deferred_income_tax_liabilities = m.ncl_deferred_income_tax_liabilities ?? 0;
m.ncl_longterm_loan = m.ncl_longterm_loan ?? 0;
m.ncl_other_liabilities = m.ncl_other_liabilities ?? 0;
m.semi_prod_inventory_amount = m.semi_prod_inventory_amount ?? 0;
m.ncl_special_payable = m.ncl_special_payable ?? 0;
m.oe_capital_reserve = m.oe_capital_reserve ?? 0;
......@@ -3312,72 +3315,73 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
list.Add(s[22]+"|"+obj[0].semi_inventory_amount.Value.ToString("N2")+"|"+obj[1].semi_inventory_amount.Value.ToString("N2") + "|"+(obj[0].semi_inventory_amount.Value == 0 ? 0 : (obj[1].semi_inventory_amount.Value - obj[0].semi_inventory_amount.Value) / obj[0].semi_inventory_amount.Value * 100).ToString("N2"));
list.Add(s[23]+"|"+obj[0].semi_bailun_inventory_amount.Value.ToString("N2")+"|"+obj[1].semi_bailun_inventory_amount.Value.ToString("N2") + "|"+(obj[0].semi_bailun_inventory_amount.Value == 0 ? 0 : (obj[1].semi_bailun_inventory_amount.Value - obj[0].semi_bailun_inventory_amount.Value) / obj[0].semi_bailun_inventory_amount.Value * 100).ToString("N2"));
list.Add(s[24]+"|"+obj[0].semi_hani_inventory_amount.Value.ToString("N2")+"|"+obj[1].semi_hani_inventory_amount.Value.ToString("N2") + "|"+(obj[0].semi_hani_inventory_amount.Value == 0 ? 0 : (obj[1].semi_hani_inventory_amount.Value - obj[0].semi_hani_inventory_amount.Value) / obj[0].semi_hani_inventory_amount.Value * 100).ToString("N2"));
list.Add(s[25]+"|"+obj[0].semi_transfer_amount.Value.ToString("N2")+"|"+obj[1].semi_transfer_amount.Value.ToString("N2") + "|"+(obj[0].semi_transfer_amount.Value == 0 ? 0 : (obj[1].semi_transfer_amount.Value - obj[0].semi_transfer_amount.Value) / obj[0].semi_transfer_amount.Value * 100).ToString("N2"));
list.Add(s[26]+"|"+obj[0].semi_bailun_transfer_amount.Value.ToString("N2")+"|"+obj[1].semi_bailun_transfer_amount.Value.ToString("N2") + "|"+(obj[0].semi_bailun_transfer_amount.Value == 0 ? 0 : (obj[1].semi_bailun_transfer_amount.Value - obj[0].semi_bailun_transfer_amount.Value) / obj[0].semi_bailun_transfer_amount.Value * 100).ToString("N2"));
list.Add(s[27]+"|"+obj[0].semi_hani_transfer_amount.Value.ToString("N2")+"|"+obj[1].semi_hani_transfer_amount.Value.ToString("N2") + "|"+(obj[0].semi_hani_transfer_amount.Value == 0 ? 0 : (obj[1].semi_hani_transfer_amount.Value - obj[0].semi_hani_transfer_amount.Value) / obj[0].semi_hani_transfer_amount.Value * 100).ToString("N2"));
list.Add(s[28]+"|"+obj[0].fa_oneyear_noncurrent_assets.Value.ToString("N2")+"|"+obj[1].fa_oneyear_noncurrent_assets.Value.ToString("N2") + "|"+(obj[0].fa_oneyear_noncurrent_assets.Value == 0 ? 0 : (obj[1].fa_oneyear_noncurrent_assets.Value - obj[0].fa_oneyear_noncurrent_assets.Value) / obj[0].fa_oneyear_noncurrent_assets.Value * 100).ToString("N2"));
list.Add(s[29]+"|"+obj[0].fa_other_assets.Value.ToString("N2")+"|"+obj[1].fa_other_assets.Value.ToString("N2") + "|"+(obj[0].fa_other_assets.Value == 0 ? 0 : (obj[1].fa_other_assets.Value - obj[0].fa_other_assets.Value) / obj[0].fa_other_assets.Value * 100).ToString("N2"));
list.Add(s[30]+"|"+obj[0].fa_count.Value.ToString("N2")+"|"+obj[1].fa_count.Value.ToString("N2") + "|"+(obj[0].fa_count.Value == 0 ? 0 : (obj[1].fa_count.Value - obj[0].fa_count.Value) / obj[0].fa_count.Value * 100).ToString("N2"));
list.Add(s[31]+"|"+obj[0].nca_avai_for_sale_fassets.Value.ToString("N2")+"|"+obj[1].nca_avai_for_sale_fassets.Value.ToString("N2") + "|"+(obj[0].nca_avai_for_sale_fassets.Value == 0 ? 0 : (obj[1].nca_avai_for_sale_fassets.Value - obj[0].nca_avai_for_sale_fassets.Value) / obj[0].nca_avai_for_sale_fassets.Value * 100).ToString("N2"));
list.Add(s[32]+"|"+obj[0].nca_heldon_investment.Value.ToString("N2")+"|"+obj[1].nca_heldon_investment.Value.ToString("N2") + "|"+(obj[0].nca_heldon_investment.Value == 0 ? 0 : (obj[1].nca_heldon_investment.Value - obj[0].nca_heldon_investment.Value) / obj[0].nca_heldon_investment.Value * 100).ToString("N2"));
list.Add(s[33]+"|"+obj[0].nca_longterm_receivable.Value.ToString("N2")+"|"+obj[1].nca_longterm_receivable.Value.ToString("N2") + "|"+(obj[0].nca_longterm_receivable.Value == 0 ? 0 : (obj[1].nca_longterm_receivable.Value - obj[0].nca_longterm_receivable.Value) / obj[0].nca_longterm_receivable.Value * 100).ToString("N2"));
list.Add(s[34]+"|"+obj[0].nca_longterm_equity_investment.Value.ToString("N2")+"|"+obj[1].nca_longterm_equity_investment.Value.ToString("N2") + "|"+(obj[0].nca_longterm_equity_investment.Value == 0 ? 0 : (obj[1].nca_longterm_equity_investment.Value - obj[0].nca_longterm_equity_investment.Value) / obj[0].nca_longterm_equity_investment.Value * 100).ToString("N2"));
list.Add(s[35]+"|"+obj[0].nca_investment_property.Value.ToString("N2")+"|"+obj[1].nca_investment_property.Value.ToString("N2") + "|"+(obj[0].nca_investment_property.Value == 0 ? 0 : (obj[1].nca_investment_property.Value - obj[0].nca_investment_property.Value) / obj[0].nca_investment_property.Value * 100).ToString("N2"));
list.Add(s[36]+"|"+obj[0].fixed_assets.ToString("N2")+"|"+obj[1].fixed_assets.ToString("N2") + "|"+(obj[0].fixed_assets == 0 ? 0 : (obj[1].fixed_assets - obj[0].fixed_assets) / obj[0].fixed_assets * 100).ToString("N2"));
list.Add(s[37]+"|"+obj[0].nca_construction_in_process.Value.ToString("N2")+"|"+obj[1].nca_construction_in_process.Value.ToString("N2") + "|"+(obj[0].nca_construction_in_process.Value == 0 ? 0 : (obj[1].nca_construction_in_process.Value - obj[0].nca_construction_in_process.Value) / obj[0].nca_construction_in_process.Value * 100).ToString("N2"));
list.Add(s[38]+"|"+obj[0].nca_engineering_material.Value.ToString("N2")+"|"+obj[1].nca_engineering_material.Value.ToString("N2") + "|"+(obj[0].nca_engineering_material.Value == 0 ? 0 : (obj[1].nca_engineering_material.Value - obj[0].nca_engineering_material.Value) / obj[0].nca_engineering_material.Value * 100).ToString("N2"));
list.Add(s[39]+"|"+obj[0].nca_disposal_of_fixed_assets.Value.ToString("N2")+"|"+obj[1].nca_disposal_of_fixed_assets.Value.ToString("N2") + "|"+(obj[0].nca_disposal_of_fixed_assets.Value == 0 ? 0 : (obj[1].nca_disposal_of_fixed_assets.Value - obj[0].nca_disposal_of_fixed_assets.Value) / obj[0].nca_disposal_of_fixed_assets.Value * 100).ToString("N2"));
list.Add(s[40]+"|"+obj[0].nca_productive_biological_asset.Value.ToString("N2")+"|"+obj[1].nca_productive_biological_asset.Value.ToString("N2") + "|"+(obj[0].nca_productive_biological_asset.Value == 0 ? 0 : (obj[1].nca_productive_biological_asset.Value - obj[0].nca_productive_biological_asset.Value) / obj[0].nca_productive_biological_asset.Value * 100).ToString("N2"));
list.Add(s[41]+"|"+obj[0].nca_oil_and_gas_assets.Value.ToString("N2")+"|"+obj[1].nca_oil_and_gas_assets.Value.ToString("N2") + "|"+(obj[0].nca_oil_and_gas_assets.Value == 0 ? 0 : (obj[1].nca_oil_and_gas_assets.Value - obj[0].nca_oil_and_gas_assets.Value) / obj[0].nca_oil_and_gas_assets.Value * 100).ToString("N2"));
list.Add(s[42]+"|"+obj[0].nca_intangible_assets.Value.ToString("N2")+"|"+obj[1].nca_intangible_assets.Value.ToString("N2") + "|"+(obj[0].nca_intangible_assets.Value == 0 ? 0 : (obj[1].nca_intangible_assets.Value - obj[0].nca_intangible_assets.Value) / obj[0].nca_intangible_assets.Value * 100).ToString("N2"));
list.Add(s[43]+"|"+obj[0].nca_development_expenditure.Value.ToString("N2")+"|"+obj[1].nca_development_expenditure.Value.ToString("N2") + "|"+(obj[0].nca_development_expenditure.Value == 0 ? 0 : (obj[1].nca_development_expenditure.Value - obj[0].nca_development_expenditure.Value) / obj[0].nca_development_expenditure.Value * 100).ToString("N2"));
list.Add(s[44]+"|"+obj[0].nca_goodwill.Value.ToString("N2")+"|"+obj[1].nca_goodwill.Value.ToString("N2") + "|"+(obj[0].nca_goodwill.Value == 0 ? 0 : (obj[1].nca_goodwill.Value - obj[0].nca_goodwill.Value) / obj[0].nca_goodwill.Value * 100).ToString("N2"));
list.Add(s[45]+"|"+obj[0].nca_longterm_unamortized_expenses.Value.ToString("N2")+"|"+obj[1].nca_longterm_unamortized_expenses.Value.ToString("N2") + "|"+(obj[0].nca_longterm_unamortized_expenses.Value == 0 ? 0 : (obj[1].nca_longterm_unamortized_expenses.Value - obj[0].nca_longterm_unamortized_expenses.Value) / obj[0].nca_longterm_unamortized_expenses.Value * 100).ToString("N2"));
list.Add(s[46]+"|"+obj[0].nca_deferred_tax_assets.Value.ToString("N2")+"|"+obj[1].nca_deferred_tax_assets.Value.ToString("N2") + "|"+(obj[0].nca_deferred_tax_assets.Value == 0 ? 0 : (obj[1].nca_deferred_tax_assets.Value - obj[0].nca_deferred_tax_assets.Value) / obj[0].nca_deferred_tax_assets.Value * 100).ToString("N2"));
list.Add(s[47]+"|"+obj[0].nca_other_assets.Value.ToString("N2")+"|"+obj[1].nca_other_assets.Value.ToString("N2") + "|"+(obj[0].nca_other_assets.Value == 0 ? 0 : (obj[1].nca_other_assets.Value - obj[0].nca_other_assets.Value) / obj[0].nca_other_assets.Value * 100).ToString("N2"));
list.Add(s[48]+"|"+obj[0].nca_count.Value.ToString("N2")+"|"+obj[1].nca_count.Value.ToString("N2") + "|"+(obj[0].nca_count.Value == 0 ? 0 : (obj[1].nca_count.Value - obj[0].nca_count.Value) / obj[0].nca_count.Value * 100).ToString("N2"));
list.Add(s[49]+"|"+obj[0].count_assets.Value.ToString("N2")+"|"+obj[1].count_assets.Value.ToString("N2") + "|"+(obj[0].count_assets.Value == 0 ? 0 : (obj[1].count_assets.Value - obj[0].count_assets.Value) / obj[0].count_assets.Value * 100).ToString("N2"));
list.Add(s[50]+"|"+obj[0].short_term_borrow.ToString("N2")+"|"+obj[1].short_term_borrow.ToString("N2") + "|"+(obj[0].short_term_borrow == 0 ? 0 : (obj[1].short_term_borrow - obj[0].short_term_borrow) / obj[0].short_term_borrow * 100).ToString("N2"));
list.Add(s[51]+"|"+obj[0].cl_trading_financ_liabilities.Value.ToString("N2")+"|"+obj[1].cl_trading_financ_liabilities.Value.ToString("N2") + "|"+(obj[0].cl_trading_financ_liabilities.Value == 0 ? 0 : (obj[1].cl_trading_financ_liabilities.Value - obj[0].cl_trading_financ_liabilities.Value) / obj[0].cl_trading_financ_liabilities.Value * 100).ToString("N2"));
list.Add(s[52]+"|"+obj[0].cl_notes_payable.Value.ToString("N2")+"|"+obj[1].cl_notes_payable.Value.ToString("N2") + "|"+(obj[0].cl_notes_payable.Value == 0 ? 0 : (obj[1].cl_notes_payable.Value - obj[0].cl_notes_payable.Value) / obj[0].cl_notes_payable.Value * 100).ToString("N2"));
list.Add(s[53]+"|"+obj[0].accounts_payable.ToString("N2")+"|"+obj[1].accounts_payable.ToString("N2") + "|"+(obj[0].accounts_payable == 0 ? 0 : (obj[1].accounts_payable - obj[0].accounts_payable) / obj[0].accounts_payable * 100).ToString("N2"));
list.Add(s[54]+"|"+obj[0].finished_accounts_payable.Value.ToString("N2")+"|"+obj[1].finished_accounts_payable.Value.ToString("N2") + "|"+(obj[0].finished_accounts_payable.Value == 0 ? 0 : (obj[1].finished_accounts_payable.Value - obj[0].finished_accounts_payable.Value) / obj[0].finished_accounts_payable.Value * 100).ToString("N2"));
list.Add(s[55]+"|"+obj[0].semi_accounts_payable.Value.ToString("N2")+"|"+obj[1].semi_accounts_payable.Value.ToString("N2") + "|"+(obj[0].semi_accounts_payable.Value == 0 ? 0 : (obj[1].semi_accounts_payable.Value - obj[0].semi_accounts_payable.Value) / obj[0].semi_accounts_payable.Value * 100).ToString("N2"));
list.Add(s[56]+"|"+obj[0].logistics_accounts_payable.Value.ToString("N2")+"|"+obj[1].logistics_accounts_payable.Value.ToString("N2") + "|"+(obj[0].logistics_accounts_payable.Value == 0 ? 0 : (obj[1].logistics_accounts_payable.Value - obj[0].logistics_accounts_payable.Value) / obj[0].logistics_accounts_payable.Value * 100).ToString("N2"));
list.Add(s[57]+"|"+obj[0].advance_received.ToString("N2")+"|"+obj[1].advance_received.ToString("N2") + "|"+(obj[0].advance_received == 0 ? 0 : (obj[1].advance_received - obj[0].advance_received) / obj[0].advance_received * 100).ToString("N2"));
list.Add(s[58]+"|"+obj[0].payable_remuneration.ToString("N2")+"|"+obj[1].payable_remuneration.ToString("N2") + "|"+(obj[0].payable_remuneration == 0 ? 0 : (obj[1].payable_remuneration - obj[0].payable_remuneration) / obj[0].payable_remuneration * 100).ToString("N2"));
list.Add(s[59]+"|"+obj[0].taxes_payable.ToString("N2")+"|"+obj[1].taxes_payable.ToString("N2") + "|"+(obj[0].taxes_payable == 0 ? 0 : (obj[1].taxes_payable - obj[0].taxes_payable) / obj[0].taxes_payable * 100).ToString("N2"));
list.Add(s[60]+"|"+obj[0].cl_payable_interest.Value.ToString("N2")+"|"+obj[1].cl_payable_interest.Value.ToString("N2") + "|"+(obj[0].cl_payable_interest.Value == 0 ? 0 : (obj[1].cl_payable_interest.Value - obj[0].cl_payable_interest.Value) / obj[0].cl_payable_interest.Value * 100).ToString("N2"));
list.Add(s[61]+"|"+obj[0].cl_dividends_payable.Value.ToString("N2")+"|"+obj[1].cl_dividends_payable.Value.ToString("N2") + "|"+(obj[0].cl_dividends_payable.Value == 0 ? 0 : (obj[1].cl_dividends_payable.Value - obj[0].cl_dividends_payable.Value) / obj[0].cl_dividends_payable.Value * 100).ToString("N2"));
list.Add(s[62]+"|"+obj[0].other_accounts_payable.ToString("N2")+"|"+obj[1].other_accounts_payable.ToString("N2") + "|"+(obj[0].other_accounts_payable == 0 ? 0 : (obj[1].other_accounts_payable - obj[0].other_accounts_payable) / obj[0].other_accounts_payable * 100).ToString("N2"));
list.Add(s[63]+"|"+obj[0].cl_oneyear_noncurrent_liabilities.Value.ToString("N2")+"|"+obj[1].cl_oneyear_noncurrent_liabilities.Value.ToString("N2") + "|"+(obj[0].cl_oneyear_noncurrent_liabilities.Value == 0 ? 0 : (obj[1].cl_oneyear_noncurrent_liabilities.Value - obj[0].cl_oneyear_noncurrent_liabilities.Value) / obj[0].cl_oneyear_noncurrent_liabilities.Value * 100).ToString("N2"));
list.Add(s[64]+"|"+obj[0].cl_other_liabilities.Value.ToString("N2")+"|"+obj[1].cl_other_liabilities.Value.ToString("N2") + "|"+(obj[0].cl_other_liabilities.Value == 0 ? 0 : (obj[1].cl_other_liabilities.Value - obj[0].cl_other_liabilities.Value) / obj[0].cl_other_liabilities.Value * 100).ToString("N2"));
list.Add(s[65]+"|"+obj[0].cl_count.Value.ToString("N2")+"|"+obj[1].cl_count.Value.ToString("N2") + "|"+(obj[0].cl_count.Value == 0 ? 0 : (obj[1].cl_count.Value - obj[0].cl_count.Value) / obj[0].cl_count.Value * 100).ToString("N2"));
list.Add(s[66]+"|"+obj[0].ncl_longterm_loan.Value.ToString("N2")+"|"+obj[1].ncl_longterm_loan.Value.ToString("N2") + "|"+(obj[0].ncl_longterm_loan.Value == 0 ? 0 : (obj[1].ncl_longterm_loan.Value - obj[0].ncl_longterm_loan.Value) / obj[0].ncl_longterm_loan.Value * 100).ToString("N2"));
list.Add(s[67]+"|"+obj[0].ncl_bonds_payable.Value.ToString("N2")+"|"+obj[1].ncl_bonds_payable.Value.ToString("N2") + "|"+(obj[0].ncl_bonds_payable.Value == 0 ? 0 : (obj[1].ncl_bonds_payable.Value - obj[0].ncl_bonds_payable.Value) / obj[0].ncl_bonds_payable.Value * 100).ToString("N2"));
list.Add(s[68]+"|"+obj[0].long_term_accounts_payable.ToString("N2")+"|"+obj[1].long_term_accounts_payable.ToString("N2") + "|"+(obj[0].long_term_accounts_payable == 0 ? 0 : (obj[1].long_term_accounts_payable - obj[0].long_term_accounts_payable) / obj[0].long_term_accounts_payable * 100).ToString("N2"));
list.Add(s[69]+"|"+obj[0].ncl_special_payable.Value.ToString("N2")+"|"+obj[1].ncl_special_payable.Value.ToString("N2") + "|"+(obj[0].ncl_special_payable.Value == 0 ? 0 : (obj[1].ncl_special_payable.Value - obj[0].ncl_special_payable.Value) / obj[0].ncl_special_payable.Value * 100).ToString("N2"));
list.Add(s[70]+"|"+obj[0].ncl_anticipation_liabilities.Value.ToString("N2")+"|"+obj[1].ncl_anticipation_liabilities.Value.ToString("N2") + "|"+(obj[0].ncl_anticipation_liabilities.Value == 0 ? 0 : (obj[1].ncl_anticipation_liabilities.Value - obj[0].ncl_anticipation_liabilities.Value) / obj[0].ncl_anticipation_liabilities.Value * 100).ToString("N2"));
list.Add(s[71]+"|"+obj[0].ncl_deferred_income_tax_liabilities.Value.ToString("N2")+"|"+obj[1].ncl_deferred_income_tax_liabilities.Value.ToString("N2") + "|"+(obj[0].ncl_deferred_income_tax_liabilities.Value == 0 ? 0 : (obj[1].ncl_deferred_income_tax_liabilities.Value - obj[0].ncl_deferred_income_tax_liabilities.Value) / obj[0].ncl_deferred_income_tax_liabilities.Value * 100).ToString("N2"));
list.Add(s[72]+"|"+obj[0].ncl_other_liabilities.Value.ToString("N2")+"|"+obj[1].ncl_other_liabilities.Value.ToString("N2") + "|"+(obj[0].ncl_other_liabilities.Value == 0 ? 0 : (obj[1].ncl_other_liabilities.Value - obj[0].ncl_other_liabilities.Value) / obj[0].ncl_other_liabilities.Value * 100).ToString("N2"));
list.Add(s[73]+"|"+obj[0].ncl_count.Value.ToString("N2")+"|"+obj[1].ncl_count.Value.ToString("N2") + "|"+(obj[0].ncl_count.Value == 0 ? 0 : (obj[1].ncl_count.Value - obj[0].ncl_count.Value) / obj[0].ncl_count.Value * 100).ToString("N2"));
list.Add(s[74]+"|"+obj[0].count_liabilities.Value.ToString("N2")+"|"+obj[1].count_liabilities.Value.ToString("N2") + "|"+(obj[0].count_liabilities.Value == 0 ? 0 : (obj[1].count_liabilities.Value - obj[0].count_liabilities.Value) / obj[0].count_liabilities.Value * 100).ToString("N2"));
list.Add(s[75]+"|"+obj[0].oe_paicl_up_capital.Value.ToString("N2")+"|"+obj[1].oe_paicl_up_capital.Value.ToString("N2") + "|"+(obj[0].oe_paicl_up_capital.Value == 0 ? 0 : (obj[1].oe_paicl_up_capital.Value - obj[0].oe_paicl_up_capital.Value) / obj[0].oe_paicl_up_capital.Value * 100).ToString("N2"));
list.Add(s[76]+"|"+obj[0].oe_capital_reserve.Value.ToString("N2")+"|"+obj[1].oe_capital_reserve.Value.ToString("N2") + "|"+(obj[0].oe_capital_reserve.Value == 0 ? 0 : (obj[1].oe_capital_reserve.Value - obj[0].oe_capital_reserve.Value) / obj[0].oe_capital_reserve.Value * 100).ToString("N2"));
list.Add(s[77]+"|"+obj[0].oe_inventory_amount.Value.ToString("N2")+"|"+obj[1].oe_inventory_amount.Value.ToString("N2") + "|"+(obj[0].oe_inventory_amount.Value == 0 ? 0 : (obj[1].oe_inventory_amount.Value - obj[0].oe_inventory_amount.Value) / obj[0].oe_inventory_amount.Value * 100).ToString("N2"));
list.Add(s[78]+"|"+obj[0].oe_surplus_public_accumulation.Value.ToString("N2")+"|"+obj[1].oe_surplus_public_accumulation.Value.ToString("N2") + "|"+(obj[0].oe_surplus_public_accumulation.Value == 0 ? 0 : (obj[1].oe_surplus_public_accumulation.Value - obj[0].oe_surplus_public_accumulation.Value) / obj[0].oe_surplus_public_accumulation.Value * 100).ToString("N2"));
list.Add(s[79]+"|"+obj[0].oe_undistributed_profit.Value.ToString("N2")+"|"+obj[1].oe_undistributed_profit.Value.ToString("N2") + "|"+(obj[0].oe_undistributed_profit.Value == 0 ? 0 : (obj[1].oe_undistributed_profit.Value - obj[0].oe_undistributed_profit.Value) / obj[0].oe_undistributed_profit.Value * 100).ToString("N2"));
list.Add(s[80]+"|"+obj[0].oe_count.Value.ToString("N2")+"|"+obj[1].oe_count.Value.ToString("N2") + "|"+(obj[0].oe_count.Value == 0 ? 0 : (obj[1].oe_count.Value - obj[0].oe_count.Value) / obj[0].oe_count.Value * 100).ToString("N2"));
list.Add(s[81]+"|"+obj[0].count_liabilities_and_oe.Value.ToString("N2")+"|"+obj[1].count_liabilities_and_oe.Value.ToString("N2") + "|"+(obj[0].count_liabilities_and_oe.Value == 0 ? 0 : (obj[1].count_liabilities_and_oe.Value - obj[0].count_liabilities_and_oe.Value) / obj[0].count_liabilities_and_oe.Value * 100).ToString("N2"));
list.Add(s[25] + "|" + obj[0].semi_prod_inventory_amount.Value.ToString("N2") + "|" + obj[1].semi_prod_inventory_amount.Value.ToString("N2") + "|" + (obj[0].semi_prod_inventory_amount.Value == 0 ? 0 : (obj[1].semi_prod_inventory_amount.Value - obj[0].semi_prod_inventory_amount.Value) / obj[0].semi_prod_inventory_amount.Value * 100).ToString("N2"));
list.Add(s[26]+"|"+obj[0].semi_transfer_amount.Value.ToString("N2")+"|"+obj[1].semi_transfer_amount.Value.ToString("N2") + "|"+(obj[0].semi_transfer_amount.Value == 0 ? 0 : (obj[1].semi_transfer_amount.Value - obj[0].semi_transfer_amount.Value) / obj[0].semi_transfer_amount.Value * 100).ToString("N2"));
list.Add(s[27]+"|"+obj[0].semi_bailun_transfer_amount.Value.ToString("N2")+"|"+obj[1].semi_bailun_transfer_amount.Value.ToString("N2") + "|"+(obj[0].semi_bailun_transfer_amount.Value == 0 ? 0 : (obj[1].semi_bailun_transfer_amount.Value - obj[0].semi_bailun_transfer_amount.Value) / obj[0].semi_bailun_transfer_amount.Value * 100).ToString("N2"));
list.Add(s[28]+"|"+obj[0].semi_hani_transfer_amount.Value.ToString("N2")+"|"+obj[1].semi_hani_transfer_amount.Value.ToString("N2") + "|"+(obj[0].semi_hani_transfer_amount.Value == 0 ? 0 : (obj[1].semi_hani_transfer_amount.Value - obj[0].semi_hani_transfer_amount.Value) / obj[0].semi_hani_transfer_amount.Value * 100).ToString("N2"));
list.Add(s[29]+"|"+obj[0].fa_oneyear_noncurrent_assets.Value.ToString("N2")+"|"+obj[1].fa_oneyear_noncurrent_assets.Value.ToString("N2") + "|"+(obj[0].fa_oneyear_noncurrent_assets.Value == 0 ? 0 : (obj[1].fa_oneyear_noncurrent_assets.Value - obj[0].fa_oneyear_noncurrent_assets.Value) / obj[0].fa_oneyear_noncurrent_assets.Value * 100).ToString("N2"));
list.Add(s[30]+"|"+obj[0].fa_other_assets.Value.ToString("N2")+"|"+obj[1].fa_other_assets.Value.ToString("N2") + "|"+(obj[0].fa_other_assets.Value == 0 ? 0 : (obj[1].fa_other_assets.Value - obj[0].fa_other_assets.Value) / obj[0].fa_other_assets.Value * 100).ToString("N2"));
list.Add(s[31]+"|"+obj[0].fa_count.Value.ToString("N2")+"|"+obj[1].fa_count.Value.ToString("N2") + "|"+(obj[0].fa_count.Value == 0 ? 0 : (obj[1].fa_count.Value - obj[0].fa_count.Value) / obj[0].fa_count.Value * 100).ToString("N2"));
list.Add(s[32]+"|"+obj[0].nca_avai_for_sale_fassets.Value.ToString("N2")+"|"+obj[1].nca_avai_for_sale_fassets.Value.ToString("N2") + "|"+(obj[0].nca_avai_for_sale_fassets.Value == 0 ? 0 : (obj[1].nca_avai_for_sale_fassets.Value - obj[0].nca_avai_for_sale_fassets.Value) / obj[0].nca_avai_for_sale_fassets.Value * 100).ToString("N2"));
list.Add(s[33]+"|"+obj[0].nca_heldon_investment.Value.ToString("N2")+"|"+obj[1].nca_heldon_investment.Value.ToString("N2") + "|"+(obj[0].nca_heldon_investment.Value == 0 ? 0 : (obj[1].nca_heldon_investment.Value - obj[0].nca_heldon_investment.Value) / obj[0].nca_heldon_investment.Value * 100).ToString("N2"));
list.Add(s[34]+"|"+obj[0].nca_longterm_receivable.Value.ToString("N2")+"|"+obj[1].nca_longterm_receivable.Value.ToString("N2") + "|"+(obj[0].nca_longterm_receivable.Value == 0 ? 0 : (obj[1].nca_longterm_receivable.Value - obj[0].nca_longterm_receivable.Value) / obj[0].nca_longterm_receivable.Value * 100).ToString("N2"));
list.Add(s[35]+"|"+obj[0].nca_longterm_equity_investment.Value.ToString("N2")+"|"+obj[1].nca_longterm_equity_investment.Value.ToString("N2") + "|"+(obj[0].nca_longterm_equity_investment.Value == 0 ? 0 : (obj[1].nca_longterm_equity_investment.Value - obj[0].nca_longterm_equity_investment.Value) / obj[0].nca_longterm_equity_investment.Value * 100).ToString("N2"));
list.Add(s[36]+"|"+obj[0].nca_investment_property.Value.ToString("N2")+"|"+obj[1].nca_investment_property.Value.ToString("N2") + "|"+(obj[0].nca_investment_property.Value == 0 ? 0 : (obj[1].nca_investment_property.Value - obj[0].nca_investment_property.Value) / obj[0].nca_investment_property.Value * 100).ToString("N2"));
list.Add(s[37]+"|"+obj[0].fixed_assets.ToString("N2")+"|"+obj[1].fixed_assets.ToString("N2") + "|"+(obj[0].fixed_assets == 0 ? 0 : (obj[1].fixed_assets - obj[0].fixed_assets) / obj[0].fixed_assets * 100).ToString("N2"));
list.Add(s[38]+"|"+obj[0].nca_construction_in_process.Value.ToString("N2")+"|"+obj[1].nca_construction_in_process.Value.ToString("N2") + "|"+(obj[0].nca_construction_in_process.Value == 0 ? 0 : (obj[1].nca_construction_in_process.Value - obj[0].nca_construction_in_process.Value) / obj[0].nca_construction_in_process.Value * 100).ToString("N2"));
list.Add(s[39]+"|"+obj[0].nca_engineering_material.Value.ToString("N2")+"|"+obj[1].nca_engineering_material.Value.ToString("N2") + "|"+(obj[0].nca_engineering_material.Value == 0 ? 0 : (obj[1].nca_engineering_material.Value - obj[0].nca_engineering_material.Value) / obj[0].nca_engineering_material.Value * 100).ToString("N2"));
list.Add(s[40]+"|"+obj[0].nca_disposal_of_fixed_assets.Value.ToString("N2")+"|"+obj[1].nca_disposal_of_fixed_assets.Value.ToString("N2") + "|"+(obj[0].nca_disposal_of_fixed_assets.Value == 0 ? 0 : (obj[1].nca_disposal_of_fixed_assets.Value - obj[0].nca_disposal_of_fixed_assets.Value) / obj[0].nca_disposal_of_fixed_assets.Value * 100).ToString("N2"));
list.Add(s[41]+"|"+obj[0].nca_productive_biological_asset.Value.ToString("N2")+"|"+obj[1].nca_productive_biological_asset.Value.ToString("N2") + "|"+(obj[0].nca_productive_biological_asset.Value == 0 ? 0 : (obj[1].nca_productive_biological_asset.Value - obj[0].nca_productive_biological_asset.Value) / obj[0].nca_productive_biological_asset.Value * 100).ToString("N2"));
list.Add(s[42]+"|"+obj[0].nca_oil_and_gas_assets.Value.ToString("N2")+"|"+obj[1].nca_oil_and_gas_assets.Value.ToString("N2") + "|"+(obj[0].nca_oil_and_gas_assets.Value == 0 ? 0 : (obj[1].nca_oil_and_gas_assets.Value - obj[0].nca_oil_and_gas_assets.Value) / obj[0].nca_oil_and_gas_assets.Value * 100).ToString("N2"));
list.Add(s[43]+"|"+obj[0].nca_intangible_assets.Value.ToString("N2")+"|"+obj[1].nca_intangible_assets.Value.ToString("N2") + "|"+(obj[0].nca_intangible_assets.Value == 0 ? 0 : (obj[1].nca_intangible_assets.Value - obj[0].nca_intangible_assets.Value) / obj[0].nca_intangible_assets.Value * 100).ToString("N2"));
list.Add(s[44]+"|"+obj[0].nca_development_expenditure.Value.ToString("N2")+"|"+obj[1].nca_development_expenditure.Value.ToString("N2") + "|"+(obj[0].nca_development_expenditure.Value == 0 ? 0 : (obj[1].nca_development_expenditure.Value - obj[0].nca_development_expenditure.Value) / obj[0].nca_development_expenditure.Value * 100).ToString("N2"));
list.Add(s[45]+"|"+obj[0].nca_goodwill.Value.ToString("N2")+"|"+obj[1].nca_goodwill.Value.ToString("N2") + "|"+(obj[0].nca_goodwill.Value == 0 ? 0 : (obj[1].nca_goodwill.Value - obj[0].nca_goodwill.Value) / obj[0].nca_goodwill.Value * 100).ToString("N2"));
list.Add(s[46]+"|"+obj[0].nca_longterm_unamortized_expenses.Value.ToString("N2")+"|"+obj[1].nca_longterm_unamortized_expenses.Value.ToString("N2") + "|"+(obj[0].nca_longterm_unamortized_expenses.Value == 0 ? 0 : (obj[1].nca_longterm_unamortized_expenses.Value - obj[0].nca_longterm_unamortized_expenses.Value) / obj[0].nca_longterm_unamortized_expenses.Value * 100).ToString("N2"));
list.Add(s[47]+"|"+obj[0].nca_deferred_tax_assets.Value.ToString("N2")+"|"+obj[1].nca_deferred_tax_assets.Value.ToString("N2") + "|"+(obj[0].nca_deferred_tax_assets.Value == 0 ? 0 : (obj[1].nca_deferred_tax_assets.Value - obj[0].nca_deferred_tax_assets.Value) / obj[0].nca_deferred_tax_assets.Value * 100).ToString("N2"));
list.Add(s[48]+"|"+obj[0].nca_other_assets.Value.ToString("N2")+"|"+obj[1].nca_other_assets.Value.ToString("N2") + "|"+(obj[0].nca_other_assets.Value == 0 ? 0 : (obj[1].nca_other_assets.Value - obj[0].nca_other_assets.Value) / obj[0].nca_other_assets.Value * 100).ToString("N2"));
list.Add(s[49]+"|"+obj[0].nca_count.Value.ToString("N2")+"|"+obj[1].nca_count.Value.ToString("N2") + "|"+(obj[0].nca_count.Value == 0 ? 0 : (obj[1].nca_count.Value - obj[0].nca_count.Value) / obj[0].nca_count.Value * 100).ToString("N2"));
list.Add(s[50]+"|"+obj[0].count_assets.Value.ToString("N2")+"|"+obj[1].count_assets.Value.ToString("N2") + "|"+(obj[0].count_assets.Value == 0 ? 0 : (obj[1].count_assets.Value - obj[0].count_assets.Value) / obj[0].count_assets.Value * 100).ToString("N2"));
list.Add(s[51]+"|"+obj[0].short_term_borrow.ToString("N2")+"|"+obj[1].short_term_borrow.ToString("N2") + "|"+(obj[0].short_term_borrow == 0 ? 0 : (obj[1].short_term_borrow - obj[0].short_term_borrow) / obj[0].short_term_borrow * 100).ToString("N2"));
list.Add(s[52]+"|"+obj[0].cl_trading_financ_liabilities.Value.ToString("N2")+"|"+obj[1].cl_trading_financ_liabilities.Value.ToString("N2") + "|"+(obj[0].cl_trading_financ_liabilities.Value == 0 ? 0 : (obj[1].cl_trading_financ_liabilities.Value - obj[0].cl_trading_financ_liabilities.Value) / obj[0].cl_trading_financ_liabilities.Value * 100).ToString("N2"));
list.Add(s[53]+"|"+obj[0].cl_notes_payable.Value.ToString("N2")+"|"+obj[1].cl_notes_payable.Value.ToString("N2") + "|"+(obj[0].cl_notes_payable.Value == 0 ? 0 : (obj[1].cl_notes_payable.Value - obj[0].cl_notes_payable.Value) / obj[0].cl_notes_payable.Value * 100).ToString("N2"));
list.Add(s[54]+"|"+obj[0].accounts_payable.ToString("N2")+"|"+obj[1].accounts_payable.ToString("N2") + "|"+(obj[0].accounts_payable == 0 ? 0 : (obj[1].accounts_payable - obj[0].accounts_payable) / obj[0].accounts_payable * 100).ToString("N2"));
list.Add(s[55]+"|"+obj[0].finished_accounts_payable.Value.ToString("N2")+"|"+obj[1].finished_accounts_payable.Value.ToString("N2") + "|"+(obj[0].finished_accounts_payable.Value == 0 ? 0 : (obj[1].finished_accounts_payable.Value - obj[0].finished_accounts_payable.Value) / obj[0].finished_accounts_payable.Value * 100).ToString("N2"));
list.Add(s[56]+"|"+obj[0].semi_accounts_payable.Value.ToString("N2")+"|"+obj[1].semi_accounts_payable.Value.ToString("N2") + "|"+(obj[0].semi_accounts_payable.Value == 0 ? 0 : (obj[1].semi_accounts_payable.Value - obj[0].semi_accounts_payable.Value) / obj[0].semi_accounts_payable.Value * 100).ToString("N2"));
list.Add(s[57]+"|"+obj[0].logistics_accounts_payable.Value.ToString("N2")+"|"+obj[1].logistics_accounts_payable.Value.ToString("N2") + "|"+(obj[0].logistics_accounts_payable.Value == 0 ? 0 : (obj[1].logistics_accounts_payable.Value - obj[0].logistics_accounts_payable.Value) / obj[0].logistics_accounts_payable.Value * 100).ToString("N2"));
list.Add(s[58]+"|"+obj[0].advance_received.ToString("N2")+"|"+obj[1].advance_received.ToString("N2") + "|"+(obj[0].advance_received == 0 ? 0 : (obj[1].advance_received - obj[0].advance_received) / obj[0].advance_received * 100).ToString("N2"));
list.Add(s[59]+"|"+obj[0].payable_remuneration.ToString("N2")+"|"+obj[1].payable_remuneration.ToString("N2") + "|"+(obj[0].payable_remuneration == 0 ? 0 : (obj[1].payable_remuneration - obj[0].payable_remuneration) / obj[0].payable_remuneration * 100).ToString("N2"));
list.Add(s[60]+"|"+obj[0].taxes_payable.ToString("N2")+"|"+obj[1].taxes_payable.ToString("N2") + "|"+(obj[0].taxes_payable == 0 ? 0 : (obj[1].taxes_payable - obj[0].taxes_payable) / obj[0].taxes_payable * 100).ToString("N2"));
list.Add(s[61]+"|"+obj[0].cl_payable_interest.Value.ToString("N2")+"|"+obj[1].cl_payable_interest.Value.ToString("N2") + "|"+(obj[0].cl_payable_interest.Value == 0 ? 0 : (obj[1].cl_payable_interest.Value - obj[0].cl_payable_interest.Value) / obj[0].cl_payable_interest.Value * 100).ToString("N2"));
list.Add(s[62]+"|"+obj[0].cl_dividends_payable.Value.ToString("N2")+"|"+obj[1].cl_dividends_payable.Value.ToString("N2") + "|"+(obj[0].cl_dividends_payable.Value == 0 ? 0 : (obj[1].cl_dividends_payable.Value - obj[0].cl_dividends_payable.Value) / obj[0].cl_dividends_payable.Value * 100).ToString("N2"));
list.Add(s[63]+"|"+obj[0].other_accounts_payable.ToString("N2")+"|"+obj[1].other_accounts_payable.ToString("N2") + "|"+(obj[0].other_accounts_payable == 0 ? 0 : (obj[1].other_accounts_payable - obj[0].other_accounts_payable) / obj[0].other_accounts_payable * 100).ToString("N2"));
list.Add(s[64]+"|"+obj[0].cl_oneyear_noncurrent_liabilities.Value.ToString("N2")+"|"+obj[1].cl_oneyear_noncurrent_liabilities.Value.ToString("N2") + "|"+(obj[0].cl_oneyear_noncurrent_liabilities.Value == 0 ? 0 : (obj[1].cl_oneyear_noncurrent_liabilities.Value - obj[0].cl_oneyear_noncurrent_liabilities.Value) / obj[0].cl_oneyear_noncurrent_liabilities.Value * 100).ToString("N2"));
list.Add(s[65]+"|"+obj[0].cl_other_liabilities.Value.ToString("N2")+"|"+obj[1].cl_other_liabilities.Value.ToString("N2") + "|"+(obj[0].cl_other_liabilities.Value == 0 ? 0 : (obj[1].cl_other_liabilities.Value - obj[0].cl_other_liabilities.Value) / obj[0].cl_other_liabilities.Value * 100).ToString("N2"));
list.Add(s[66]+"|"+obj[0].cl_count.Value.ToString("N2")+"|"+obj[1].cl_count.Value.ToString("N2") + "|"+(obj[0].cl_count.Value == 0 ? 0 : (obj[1].cl_count.Value - obj[0].cl_count.Value) / obj[0].cl_count.Value * 100).ToString("N2"));
list.Add(s[67]+"|"+obj[0].ncl_longterm_loan.Value.ToString("N2")+"|"+obj[1].ncl_longterm_loan.Value.ToString("N2") + "|"+(obj[0].ncl_longterm_loan.Value == 0 ? 0 : (obj[1].ncl_longterm_loan.Value - obj[0].ncl_longterm_loan.Value) / obj[0].ncl_longterm_loan.Value * 100).ToString("N2"));
list.Add(s[68]+"|"+obj[0].ncl_bonds_payable.Value.ToString("N2")+"|"+obj[1].ncl_bonds_payable.Value.ToString("N2") + "|"+(obj[0].ncl_bonds_payable.Value == 0 ? 0 : (obj[1].ncl_bonds_payable.Value - obj[0].ncl_bonds_payable.Value) / obj[0].ncl_bonds_payable.Value * 100).ToString("N2"));
list.Add(s[69]+"|"+obj[0].long_term_accounts_payable.ToString("N2")+"|"+obj[1].long_term_accounts_payable.ToString("N2") + "|"+(obj[0].long_term_accounts_payable == 0 ? 0 : (obj[1].long_term_accounts_payable - obj[0].long_term_accounts_payable) / obj[0].long_term_accounts_payable * 100).ToString("N2"));
list.Add(s[70]+"|"+obj[0].ncl_special_payable.Value.ToString("N2")+"|"+obj[1].ncl_special_payable.Value.ToString("N2") + "|"+(obj[0].ncl_special_payable.Value == 0 ? 0 : (obj[1].ncl_special_payable.Value - obj[0].ncl_special_payable.Value) / obj[0].ncl_special_payable.Value * 100).ToString("N2"));
list.Add(s[71]+"|"+obj[0].ncl_anticipation_liabilities.Value.ToString("N2")+"|"+obj[1].ncl_anticipation_liabilities.Value.ToString("N2") + "|"+(obj[0].ncl_anticipation_liabilities.Value == 0 ? 0 : (obj[1].ncl_anticipation_liabilities.Value - obj[0].ncl_anticipation_liabilities.Value) / obj[0].ncl_anticipation_liabilities.Value * 100).ToString("N2"));
list.Add(s[72]+"|"+obj[0].ncl_deferred_income_tax_liabilities.Value.ToString("N2")+"|"+obj[1].ncl_deferred_income_tax_liabilities.Value.ToString("N2") + "|"+(obj[0].ncl_deferred_income_tax_liabilities.Value == 0 ? 0 : (obj[1].ncl_deferred_income_tax_liabilities.Value - obj[0].ncl_deferred_income_tax_liabilities.Value) / obj[0].ncl_deferred_income_tax_liabilities.Value * 100).ToString("N2"));
list.Add(s[73]+"|"+obj[0].ncl_other_liabilities.Value.ToString("N2")+"|"+obj[1].ncl_other_liabilities.Value.ToString("N2") + "|"+(obj[0].ncl_other_liabilities.Value == 0 ? 0 : (obj[1].ncl_other_liabilities.Value - obj[0].ncl_other_liabilities.Value) / obj[0].ncl_other_liabilities.Value * 100).ToString("N2"));
list.Add(s[74]+"|"+obj[0].ncl_count.Value.ToString("N2")+"|"+obj[1].ncl_count.Value.ToString("N2") + "|"+(obj[0].ncl_count.Value == 0 ? 0 : (obj[1].ncl_count.Value - obj[0].ncl_count.Value) / obj[0].ncl_count.Value * 100).ToString("N2"));
list.Add(s[75]+"|"+obj[0].count_liabilities.Value.ToString("N2")+"|"+obj[1].count_liabilities.Value.ToString("N2") + "|"+(obj[0].count_liabilities.Value == 0 ? 0 : (obj[1].count_liabilities.Value - obj[0].count_liabilities.Value) / obj[0].count_liabilities.Value * 100).ToString("N2"));
list.Add(s[76]+"|"+obj[0].oe_paicl_up_capital.Value.ToString("N2")+"|"+obj[1].oe_paicl_up_capital.Value.ToString("N2") + "|"+(obj[0].oe_paicl_up_capital.Value == 0 ? 0 : (obj[1].oe_paicl_up_capital.Value - obj[0].oe_paicl_up_capital.Value) / obj[0].oe_paicl_up_capital.Value * 100).ToString("N2"));
list.Add(s[77]+"|"+obj[0].oe_capital_reserve.Value.ToString("N2")+"|"+obj[1].oe_capital_reserve.Value.ToString("N2") + "|"+(obj[0].oe_capital_reserve.Value == 0 ? 0 : (obj[1].oe_capital_reserve.Value - obj[0].oe_capital_reserve.Value) / obj[0].oe_capital_reserve.Value * 100).ToString("N2"));
list.Add(s[78]+"|"+obj[0].oe_inventory_amount.Value.ToString("N2")+"|"+obj[1].oe_inventory_amount.Value.ToString("N2") + "|"+(obj[0].oe_inventory_amount.Value == 0 ? 0 : (obj[1].oe_inventory_amount.Value - obj[0].oe_inventory_amount.Value) / obj[0].oe_inventory_amount.Value * 100).ToString("N2"));
list.Add(s[79]+"|"+obj[0].oe_surplus_public_accumulation.Value.ToString("N2")+"|"+obj[1].oe_surplus_public_accumulation.Value.ToString("N2") + "|"+(obj[0].oe_surplus_public_accumulation.Value == 0 ? 0 : (obj[1].oe_surplus_public_accumulation.Value - obj[0].oe_surplus_public_accumulation.Value) / obj[0].oe_surplus_public_accumulation.Value * 100).ToString("N2"));
list.Add(s[80]+"|"+obj[0].oe_undistributed_profit.Value.ToString("N2")+"|"+obj[1].oe_undistributed_profit.Value.ToString("N2") + "|"+(obj[0].oe_undistributed_profit.Value == 0 ? 0 : (obj[1].oe_undistributed_profit.Value - obj[0].oe_undistributed_profit.Value) / obj[0].oe_undistributed_profit.Value * 100).ToString("N2"));
list.Add(s[81]+"|"+obj[0].oe_count.Value.ToString("N2")+"|"+obj[1].oe_count.Value.ToString("N2") + "|"+(obj[0].oe_count.Value == 0 ? 0 : (obj[1].oe_count.Value - obj[0].oe_count.Value) / obj[0].oe_count.Value * 100).ToString("N2"));
list.Add(s[82]+"|"+obj[0].count_liabilities_and_oe.Value.ToString("N2")+"|"+obj[1].count_liabilities_and_oe.Value.ToString("N2") + "|"+(obj[0].count_liabilities_and_oe.Value == 0 ? 0 : (obj[1].count_liabilities_and_oe.Value - obj[0].count_liabilities_and_oe.Value) / obj[0].count_liabilities_and_oe.Value * 100).ToString("N2"));
for (var i = 0; i < list.Count; i++)
{
......@@ -3386,35 +3390,35 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
list[i] = arr[0] + "|" + arr[1] +"|"+arr[2]+"|"+arr[3]+"|"+(decimal.Parse(arr[2])-decimal.Parse(arr[1]));
if (i >= 0 && i < 31)
if (i >= 0 && i < 32)
{
list[i] = ("流动资产")+"|"+list[i];
}
else if (i >= 31 && i < 49)
else if (i >= 32 && i < 50)
{
list[i] = ("非流动资产") + "|" + list[i];
}
else if (i >= 49 && i < 50)
else if (i >= 50 && i < 51)
{
list[i] = ("资产合计") + "|" + list[i];
}
else if (i >= 50 && i < 66)
else if (i >= 51 && i < 67)
{
list[i] = ("流动负债") + "|" + list[i];
}
else if (i >= 66 && i < 74)
else if (i >= 67 && i < 75)
{
list[i] = ("非流动负债") + "|" + list[i];
}
else if (i >= 74 && i < 75)
else if (i >= 75 && i < 76)
{
list[i] = ("负债合计") + "|" + list[i];
}
else if (i >= 75 && i < 81)
else if (i >= 76 && i < 82)
{
list[i] = ("所有者权益(或股东权益)") + "|" + list[i];
}
else if (i >= 81 && i < 82)
else if (i >= 82 && i < 83)
{
list[i] = ("所有者权益(或股东权益)合计") + "|" + list[i];
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment