财务季报评估报表数据提取+自动撰写2.0

from docx import Document
from docx.shared import Inches

document = Document()


from openpyxl import load_workbook

'''
@File    :
@Author  :  william
@Time    :  2020/09/29
@notice  :  null
@coding  : utf-8
'''
# import xlrd
# from xlutils.copy import copy
import openpyxl

# 下一步还得训练程序
# 使其满足对excel文件名和excel工作薄的识别
# 记得把表格再粘贴下,转成仅值




ws = 0
row_result = 0
column_result = 0
result = 0

#####################################################################锁定资产负债表和工作薄
# 如下代码用于多个相关表的打开操作
fn = '资产负债表.xlsx'
wb = openpyxl.load_workbook(fn)

ws = wb.get_sheet_by_name('资产负债表')


# print(ws)


def getdate(date_row, date_column):
    # print(date_row)
    # print(date_column)

    for row in ws.iter_rows():
        for cell in row:
            if str(str(cell.value).replace(' ', '')).find(date_row) != -1:
                row_result = cell.row
            # print(row_result)
            else:
                result = 0

                break
    for row in ws.iter_rows():
        for cell in row:
            if str(str(cell.value).replace(' ', '')).find(date_column) != -1:
                column_result = cell.column
                #  print(column_result)

                break
    # print(column_result)
    if row_result == 0 or column_result == 0:
        result = 0

    else:
        if ws.cell(row=row_result, column=column_result).value != None:
            # print(column_result)
            result = ws.cell(row=row_result, column=column_result).value
        # print(result)

    return result


def getdate_lastyear(date_row, date_column):
    # print(date_row)
    # print(date_column)

    for row in ws.iter_rows():
        for cell in row:
            if str(str(cell.value).replace(' ', '')).find(date_row) != -1:
                row_result = cell.row
            # print(row_result)
            else:
                result = 0

                break
    for row in ws.iter_rows():
        for cell in row:
            if str(str(cell.value).replace(' ', '')).find(date_column) != -1:
                column_result = cell.column + 1
                #  print(column_result)

                break
    # print(column_result)
    if row_result == 0 or column_result == 0:
        result = 0

    else:
        if ws.cell(row=row_result, column=column_result).value != None:
            # print(column_result)
            result = ws.cell(row=row_result, column=column_result).value
        # print(result)

    return result


def getspeed(date_row, date_column):
    # print(date_row)
    # print(date_column)

    for row in ws.iter_rows():
        for cell in row:
            if str(str(cell.value).replace(' ', '')).find(date_row) != -1:
                row_result = cell.row
            # print(row_result)
            else:
                result = 0

                break
    for row in ws.iter_rows():
        for cell in row:
            if str(str(cell.value).replace(' ', '')).find(date_column) != -1:
                column_result = cell.column + 2
                #  print(column_result)

                break
    # print(column_result)
    if row_result == 0 or column_result == 0:
        result = 0

    else:
        if ws.cell(row=row_result, column=column_result).value != None:
            # print(column_result)
            result = ws.cell(row=row_result, column=column_result).value
        # print(result)

    return result


if __name__ == '__main__':
    print("企业数和企业亏损情况")
    print(round(getdate('总计', '企业数'), 1));

    print('资产情况')

    print(round(getdate('总计', '资产总计'), 1));
    print(round(getspeed('总计', '资产总计'), 1));

    print(round(getdate('一、批发业', '资产总计'), 1));
    print(round(getspeed('一、批发业', '资产总计'), 1));

    print(round(getdate('二、零售业', '资产总计'), 1));
    print(round(getspeed('二、零售业', '资产总计'), 1));

    print(round(getdate('三、住宿业', '资产总计'), 1));
    print(round(getspeed('三、住宿业', '资产总计'), 1));

    print(round(getdate('四、餐饮业', '资产总计'), 1));
    print(round(getspeed('四、餐饮业', '资产总计'), 1));

    print('负债情况')

    print(round(getdate('总计', '负债合计'), 1));
    print(round(getspeed('总计', '负债合计'), 1));

    print(round(getdate('一、批发业', '负债合计'), 1));
    print(round(getspeed('一、批发业', '负债合计'), 1));

    print(round(getdate('二、零售业', '负债合计'), 1));
    print(round(getspeed('二、零售业', '负债合计'), 1));

    print(round(getdate('三、住宿业', '负债合计'), 1));
    print(round(getspeed('三、住宿业', '负债合计'), 1));

    print(round(getdate('四、餐饮业', '负债合计'), 1));
    print(round(getspeed('四、餐饮业', '负债合计'), 1));

    print('营业收入')

    print(round(getdate('总计', '营业收入'), 1));
    print(round(getspeed('总计', '营业收入'), 1));

    print(round(getdate('一、批发业', '营业收入'), 1));
    print(round(getspeed('一、批发业', '营业收入'), 1));

    print(round(getdate('二、零售业', '营业收入'), 1));
    print(round(getspeed('二、零售业', '营业收入'), 1));

    print(round(getdate('三、住宿业', '营业收入'), 1));
    print(round(getspeed('三、住宿业', '营业收入'), 1));

    print(round(getdate('四、餐饮业', '营业收入'), 1));
    print(round(getspeed('四、餐饮业', '营业收入'), 1));

    print('营业成本')

    print(round(getdate('总计', '营业成本'), 1));
    print(round(getspeed('总计', '营业成本'), 1));

    print(round(getdate('一、批发业', '营业成本'), 1));
    print(round(getspeed('一、批发业', '营业成本'), 1));

    print(round(getdate('二、零售业', '营业成本'), 1));
    print(round(getspeed('二、零售业', '营业成本'), 1));

    print(round(getdate('三、住宿业', '营业成本'), 1));
    print(round(getspeed('三、住宿业', '营业成本'), 1));

    print(round(getdate('四、餐饮业', '营业成本'), 1));
    print(round(getspeed('四、餐饮业', '营业成本'), 1));

    print('营业税金')

    print(round(getdate('总计', '税金及附加'), 1));
    print(round(getspeed('总计', '税金及附加'), 1));

    print(round(getdate('一、批发业', '税金及附加'), 1));
    print(round(getspeed('一、批发业', '税金及附加'), 1));

    print(round(getdate('二、零售业', '税金及附加'), 1));
    print(round(getspeed('二、零售业', '税金及附加'), 1));

    print(round(getdate('三、住宿业', '税金及附加'), 1));
    print(round(getspeed('三、住宿业', '税金及附加'), 1));

    print(round(getdate('四、餐饮业', '税金及附加'), 1));
    print(round(getspeed('四、餐饮业', '税金及附加'), 1));

    print('四项费用')

    print(round(getdate('总计', '销售费用') + getdate('总计', '管理费用') + getdate('总计', '研发费用') + getdate('总计', '财务费用'), 1));

    print(
        round(((getdate('总计', '销售费用') + getdate('总计', '管理费用') + getdate('总计', '研发费用') + getdate('总计', '财务费用')) / (
                    getdate_lastyear('总计', '销售费用') + getdate_lastyear('总计', '管理费用') + getdate_lastyear('总计',
                                                                                                       '研发费用') + getdate_lastyear(
                '总计', '财务费用')) - 1) * 100, 1)
    )

    print(
        round(getdate('一、批发业', '销售费用') + getdate('一、批发业', '管理费用') + getdate('一、批发业', '研发费用') + getdate('一、批发业', '财务费用'),
              1));
    print(
        round(((getdate('一、批发业', '销售费用') + getdate('一、批发业', '管理费用') + getdate('一、批发业', '研发费用') + getdate('一、批发业',
                                                                                                         '财务费用')) / (
                           getdate_lastyear('一、批发业', '销售费用') + getdate_lastyear('一、批发业', '管理费用') + getdate_lastyear(
                       '一、批发业', '研发费用') + getdate_lastyear('一、批发业', '财务费用')) - 1) * 100, 1)
    )

    print(
        round(getdate('二、零售业', '销售费用') + getdate('二、零售业', '管理费用') + getdate('二、零售业', '研发费用') + getdate('二、零售业', '财务费用'),
              1));
    print(
        round(((getdate('二、零售业', '销售费用') + getdate('二、零售业', '管理费用') + getdate('二、零售业', '研发费用') + getdate('二、零售业',
                                                                                                         '财务费用')) / (
                           getdate_lastyear('二、零售业', '销售费用') + getdate_lastyear('二、零售业', '管理费用') + getdate_lastyear(
                       '二、零售业', '研发费用') + getdate_lastyear('二、零售业', '财务费用')) - 1) * 100, 1)
    )
    print(
        round(getdate('三、住宿业', '销售费用') + getdate('三、住宿业', '管理费用') + getdate('三、住宿业', '研发费用') + getdate('三、住宿业', '财务费用'),
              1));
    print(
        round(((getdate('三、住宿业', '销售费用') + getdate('三、住宿业', '管理费用') + getdate('三、住宿业', '研发费用') + getdate('三、住宿业',
                                                                                                         '财务费用')) / (
                           getdate_lastyear('三、住宿业', '销售费用') + getdate_lastyear('三、住宿业', '管理费用') + getdate_lastyear(
                       '三、住宿业', '研发费用') + getdate_lastyear('三、住宿业', '财务费用')) - 1) * 100, 1)
    )

    print(
        round(getdate('四、餐饮业', '销售费用') + getdate('四、餐饮业', '管理费用') + getdate('四、餐饮业', '研发费用') + getdate('四、餐饮业', '财务费用'),
              1));
    print(
        round(((getdate('四、餐饮业', '销售费用') + getdate('四、餐饮业', '管理费用') + getdate('四、餐饮业', '研发费用') + getdate('四、餐饮业',
                                                                                                         '财务费用')) / (
                           getdate_lastyear('四、餐饮业', '销售费用') + getdate_lastyear('四、餐饮业', '管理费用') + getdate_lastyear(
                       '四、餐饮业', '研发费用') + getdate_lastyear('四、餐饮业', '财务费用')) - 1) * 100, 1)
    )

    print('营业利润')

    print(round(getdate('总计', '营业利润'), 1));
    print(round(getspeed('总计', '营业利润'), 1));

    print(round(getdate('一、批发业', '营业利润'), 1));
    print(round(getspeed('一、批发业', '营业利润'), 1));

    print(round(getdate('二、零售业', '营业利润'), 1));
    print(round(getspeed('二、零售业', '营业利润'), 1));

    print(round(getdate('三、住宿业', '营业利润'), 1));
    print(round(getspeed('三、住宿业', '营业利润'), 1));

    print(round(getdate('四、餐饮业', '营业利润'), 1));
    print(round(getspeed('四、餐饮业', '营业利润'), 1));

    print('应交增值税')

    print(round(getdate('总计', '应交增值税'), 1));
    print(round(getspeed('总计', '应交增值税'), 1));

    print(round(getdate('一、批发业', '应交增值税'), 1));
    print(round(getspeed('一、批发业', '应交增值税'), 1));

    print(round(getdate('二、零售业', '应交增值税'), 1));
    print(round(getspeed('二、零售业', '应交增值税'), 1));

    print(round(getdate('三、住宿业', '应交增值税'), 1));
    print(round(getspeed('三、住宿业', '应交增值税'), 1));

    print(round(getdate('四、餐饮业', '应交增值税'), 1));
    print(round(getspeed('四、餐饮业', '应交增值税'), 1));

    print('资产负债率')
    if (getdate('总计', '负债合计') > 0 and getdate('总计', '资产总计') > 0):
        print(round(getdate('总计', '负债合计') / getdate('总计', '资产总计') * 100, 1));
    else:
        print("error")

    if (getdate('总计', '资产总计') > 0 and getdate_lastyear('总计', '资产总计') > 0 and getdate('总计',
                                                                                     '负债合计') > 0 and getdate_lastyear(
            '总计', '负债合计') > 0):
        print(round((getdate('总计', '负债合计') / getdate('总计', '资产总计') - getdate_lastyear('总计', '负债合计') / getdate_lastyear(
            '总计', '资产总计')) * 100, 1));
    else:
        print("error")

    if (getdate('一、批发业', '资产总计') > 0 and getdate('一、批发业', '负债合计') > 0):
        print(round(getdate('一、批发业', '负债合计') / getdate('一、批发业', '资产总计') * 100, 1));
    else:
        print("error")
    if (getdate('一、批发业', '资产总计') > 0 and getdate_lastyear('一、批发业', '资产总计') > 0 and getdate('一、批发业',
                                                                                           '负债合计') > 0 and getdate_lastyear(
            '一、批发业', '负债合计') > 0):
        print(round((getdate('一、批发业', '负债合计') / getdate('一、批发业', '资产总计') - getdate_lastyear('一、批发业',
                                                                                            '负债合计') / getdate_lastyear(
            '一、批发业', '资产总计')) * 100, 1));
    else:
        print("error")

    if (getdate('二、零售业', '资产总计') > 0 and getdate('二、零售业', '负债合计') > 0):
        print(round(getdate('二、零售业', '负债合计') / getdate('二、零售业', '资产总计') * 100, 1));
    else:
        print("error")

    if (getdate('二、零售业', '资产总计') > 0 and getdate_lastyear('二、零售业', '资产总计') > 0 and getdate('二、零售业',
                                                                                           '负债合计') > 0 and getdate_lastyear(
            '二、零售业', '负债合计') > 0):
        print(round((getdate('二、零售业', '负债合计') / getdate('二、零售业', '资产总计') - getdate_lastyear('二、零售业',
                                                                                            '负债合计') / getdate_lastyear(
            '二、零售业', '资产总计')) * 100, 1));
    else:
        print("error")

    if (getdate('三、住宿业', '资产总计') > 0 and getdate('三、住宿业', '负债合计') > 0):
        print(round(getdate('三、住宿业', '负债合计') / getdate('三、住宿业', '资产总计') * 100, 1));
    else:
        print("error")

    if (getdate('三、住宿业', '资产总计') > 0 and getdate_lastyear('三、住宿业', '资产总计') > 0 and getdate('三、住宿业',
                                                                                           '负债合计') > 0 and getdate_lastyear(
            '三、住宿业', '负债合计') > 0):
        print(round((getdate('三、住宿业', '负债合计') / getdate('三、住宿业', '资产总计') - getdate_lastyear('三、住宿业',
                                                                                            '负债合计') / getdate_lastyear(
            '三、住宿业', '资产总计')) * 100, 1));
    else:
        print("error")

    if (getdate('三、住宿业', '资产总计') > 0 and getdate('四、餐饮业', '负债合计') > 0):
        print(round(getdate('四、餐饮业', '负债合计') / getdate('三、住宿业', '资产总计') * 100, 1));
    else:
        print("error")

    if (getdate('四、餐饮业', '资产总计') > 0 and getdate_lastyear('四、餐饮业', '资产总计') > 0 and getdate('四、餐饮业',
                                                                                           '负债合计') > 0 and getdate_lastyear(
            '四、餐饮业', '负债合计') > 0):
        print(round((getdate('四、餐饮业', '负债合计') / getdate('四、餐饮业', '资产总计') - getdate_lastyear('四、餐饮业',
                                                                                            '负债合计') / getdate_lastyear(
            '四、餐饮业', '资产总计')) * 100, 1));
    else:
        print("error")
    print('毛利率')

    if (getdate('总计', '营业收入') > 0 and getdate('总计', '营业成本') > 0):
        print(round((1 - getdate('总计', '营业成本') / getdate('总计', '营业收入')) * 100, 1));
    else:
        print("error")

    if (getdate_lastyear('总计', '营业收入') > 0 and getdate('总计', '营业收入') > 0 and getdate_lastyear('总计',
                                                                                              '营业成本') > 0 and getdate(
            '总计', '营业成本') > 0):
        print(round((getdate_lastyear('总计', '营业成本') / getdate_lastyear('总计', '营业收入') - getdate('总计', '营业成本') / getdate(
            '总计', '营业收入')) * 100, 1));
    else:
        print("error")

    if (getdate('一、批发业', '营业收入') > 0 and getdate('一、批发业', '营业成本') > 0):
        print(round((1 - getdate('一、批发业', '营业成本') / getdate('一、批发业', '营业收入')) * 100, 1));
    else:
        print("error")

    if (getdate_lastyear('一、批发业', '营业收入') > 0 and getdate('一、批发业', '营业收入') > 0 and getdate_lastyear('一、批发业',
                                                                                                    '营业成本') > 0 and getdate(
            '一、批发业', '营业成本') > 0):
        print(round((getdate_lastyear('一、批发业', '营业成本') / getdate_lastyear('一、批发业', '营业收入') - getdate('一、批发业',
                                                                                                     '营业成本') / getdate(
            '一、批发业', '营业收入')) * 100, 1));
    else:
        print("error")

    if (getdate('二、零售业', '营业收入') > 0 and getdate('二、零售业', '营业成本') > 0):
        print(round((1 - getdate('二、零售业', '营业成本') / getdate('二、零售业', '营业收入')) * 100, 1));
    else:
        print("error")
    if (getdate_lastyear('二、零售业', '营业收入') > 0 and getdate('二、零售业', '营业收入') > 0 and getdate_lastyear('二、零售业',
                                                                                                    '营业成本') > 0 and getdate(
            '二、零售业', '营业成本') > 0):

        print(round((getdate_lastyear('二、零售业', '营业成本') / getdate_lastyear('二、零售业', '营业收入') - getdate('二、零售业',
                                                                                                     '营业成本') / getdate(
            '二、零售业', '营业收入')) * 100, 1));
    else:
        print("error")
    if (getdate('三、住宿业', '营业收入') > 0 and getdate('三、住宿业', '营业收入') > 0):
        print(round((1 - getdate('三、住宿业', '营业成本') / getdate('三、住宿业', '营业收入')) * 100, 1));
    else:
        print("error")
    if (getdate_lastyear('三、住宿业', '营业收入') > 0 and getdate('三、住宿业', '营业收入') > 0 and getdate_lastyear('三、住宿业',
                                                                                                    '营业成本') > 0 and getdate(
            '三、住宿业', '营业成本') > 0):
        print(round((getdate_lastyear('三、住宿业', '营业成本') / getdate_lastyear('三、住宿业', '营业收入') - getdate('三、住宿业',
                                                                                                     '营业成本') / getdate(
            '三、住宿业', '营业收入')) * 100, 1));
    else:
        print("error")
    if (getdate('四、餐饮业', '营业收入') > 0 and getdate('四、餐饮业', '营业成本') > 0):
        print(round((1 - getdate('四、餐饮业', '营业成本') / getdate('四、餐饮业', '营业收入')) * 100, 1));
    else:
        print("error")
    if (getdate_lastyear('四、餐饮业', '营业收入') > 0 and getdate('四、餐饮业', '营业收入') > 0 and getdate_lastyear('四、餐饮业',
                                                                                                    '营业成本') > 0 and getdate(
            '四、餐饮业', '营业成本') > 0):
        print(round((getdate_lastyear('四、餐饮业', '营业成本') / getdate_lastyear('四、餐饮业', '营业收入') - getdate('四、餐饮业',
                                                                                                     '营业成本') / getdate(
            '四、餐饮业', '营业收入')) * 100, 1));
    else:
        print("error")

    print('营业收入户均值')

    if (getdate('一、批发业', '企业数') > 0):
        print(round(getdate('一、批发业', '营业收入') / getdate('一、批发业', '企业数') * 10000, 1));
    else:
        print("error")
    if (getdate('二、零售业', '企业数') > 0):
        print(round(getdate('二、零售业', '营业收入') / getdate('二、零售业', '企业数') * 10000, 1));
    else:
        print("error")
    if (getdate('三、住宿业', '企业数') > 0):
        print(round(getdate('三、住宿业', '营业收入') / getdate('三、住宿业', '企业数') * 10000, 1));
    else:
        print("error")
    if (getdate('四、餐饮业', '企业数') > 0):
        print(round(getdate('四、餐饮业', '营业收入') / getdate('四、餐饮业', '企业数') * 10000, 1));
    else:
        print("error")

    print('营业收入人均值')

    if (getdate('一、批发业', '从业人员平均人数(人)') > 0):
        print(round(getdate('一、批发业', '营业收入') / getdate('一、批发业', '从业人员平均人数(人)') * 10000, 1));
    else:
        print("error")

    if (getdate('二、零售业', '从业人员平均人数(人)') > 0):
        print(round(getdate('二、零售业', '营业收入') / getdate('二、零售业', '从业人员平均人数(人)') * 10000, 1));
    else:
        print("error")

    if (getdate('三、住宿业', '从业人员平均人数(人)') > 0):
        print(round(getdate('三、住宿业', '营业收入') / getdate('三、住宿业', '从业人员平均人数(人)') * 10000, 1));
    else:
        print("error")

    if (getdate('四、餐饮业', '从业人员平均人数(人)') > 0):
        print(round(getdate('四、餐饮业', '营业收入') / getdate('四、餐饮业', '从业人员平均人数(人)') * 10000, 1));
    else:
        print("error")

    print('销售费用')

    print(round(getdate('总计', '销售费用'), 1));

    print(
        round(((getdate('总计', '销售费用')) / (getdate_lastyear('总计', '销售费用')) - 1) * 100, 1)
    )

    print(round(getdate('一、批发业', '销售费用'), 1));
    print(
        round(((getdate('一、批发业', '销售费用')) / (getdate_lastyear('一、批发业', '销售费用')) - 1) * 100, 1)
    )

    print(round(getdate('二、零售业', '销售费用'), 1));
    print(
        round(((getdate('二、零售业', '销售费用')) / (getdate_lastyear('二、零售业', '销售费用')) - 1) * 100, 1)
    )
    print(round(getdate('三、住宿业', '销售费用'), 1));
    print(
        round(((getdate('三、住宿业', '销售费用')) / (getdate_lastyear('三、住宿业', '销售费用')) - 1) * 100, 1)
    )

    print(round(getdate('四、餐饮业', '销售费用'), 1));
    print(
        round(((getdate('四、餐饮业', '销售费用')) / (getdate_lastyear('四、餐饮业', '销售费用')) - 1) * 100, 1)
    )

    print('管理费用')

    print(round(getdate('总计', '管理费用'), 1));

    print(
        round(((getdate('总计', '管理费用')) / (getdate_lastyear('总计', '管理费用')) - 1) * 100, 1)
    )

    print(round(getdate('一、批发业', '管理费用'), 1));
    print(
        round(((getdate('一、批发业', '管理费用')) / (getdate_lastyear('一、批发业', '管理费用')) - 1) * 100, 1)
    )

    print(round(getdate('二、零售业', '管理费用'), 1));
    print(
        round(((getdate('二、零售业', '管理费用')) / (getdate_lastyear('二、零售业', '管理费用')) - 1) * 100, 1)
    )
    print(round(getdate('三、住宿业', '管理费用'), 1));
    print(
        round(((getdate('三、住宿业', '管理费用')) / (getdate_lastyear('三、住宿业', '管理费用')) - 1) * 100, 1)
    )

    print(round(getdate('四、餐饮业', '管理费用'), 1));
    print(
        round(((getdate('四、餐饮业', '管理费用')) / (getdate_lastyear('四、餐饮业', '管理费用')) - 1) * 100, 1)
    )

    print('研发费用')

    print(round(getdate('总计', '研发费用'), 1));

    print(
        round(((getdate('总计', '研发费用')) / (getdate_lastyear('总计', '研发费用')) - 1) * 100, 1)
    )

    print(round(getdate('一、批发业', '研发费用'), 1));
    print(
        round(((getdate('一、批发业', '研发费用')) / (getdate_lastyear('一、批发业', '研发费用')) - 1) * 100, 1)
    )

    print(round(getdate('二、零售业', '研发费用'), 1));

    if (getdate_lastyear('二、零售业', '研发费用') > 0):
        print(round(((getdate('二、零售业', '研发费用')) / (getdate_lastyear('二、零售业', '研发费用')) - 1) * 100, 1));
    else:
        print("error")


    print(round(getdate('三、住宿业', '研发费用'), 1));

    if (getdate_lastyear('三、住宿业', '研发费用') != 0):

        print(round(((getdate('三、住宿业', '研发费用')) / (getdate_lastyear('三、住宿业', '研发费用')) - 1) * 100, 1))
    else:
        print("error")
    print(round(getdate('四、餐饮业', '研发费用'), 1));

    if (getdate_lastyear('四、餐饮业', '研发费用') != 0):
        print(
            round(((getdate('四、餐饮业', '研发费用')) / (getdate_lastyear('四、餐饮业', '研发费用')) - 1) * 100, 1)
        )
    else:
        print("error")

        print('财务费用')

    print(round(getdate('总计', '财务费用'), 1));

    print(
        round(((getdate('总计', '财务费用')) / (getdate_lastyear('总计', '财务费用')) - 1) * 100, 1)
    )

    print(round(getdate('一、批发业', '财务费用'), 1));
    print(
        round(((getdate('一、批发业', '财务费用')) / (getdate_lastyear('一、批发业', '财务费用')) - 1) * 100, 1)
    )

    print(round(getdate('二、零售业', '财务费用'), 1));
    print(
        round(((getdate('二、零售业', '财务费用')) / (getdate_lastyear('二、零售业', '财务费用')) - 1) * 100, 1)
    )
    print(round(getdate('三、住宿业', '财务费用'), 1));
    print(
        round(((getdate('三、住宿业', '财务费用')) / (getdate_lastyear('三、住宿业', '财务费用')) - 1) * 100, 1)
    )

    print(round(getdate('四、餐饮业', '财务费用'), 1));
    print(
        round(((getdate('四、餐饮业', '财务费用')) / (getdate_lastyear('四、餐饮业', '财务费用')) - 1) * 100, 1)
    )





document.add_heading("财务季报评估报告")
paragraph100 = document.add_paragraph('一、四行业总体情况')



'''
paragraph101 = document.add_paragraph('1-3季度,济南市财务季报上报单位3083个,其中亏损单位1330个,占全市限上企业的43.1%,主要受新冠肺炎疫情影响,亏损企业较去年增多,占比提高。其中批发业亏损企业618个,占批发业企业的33.9%;零售业亏损企业409个,占零售业企业的49.3%;住宿业亏损企业113个,占住宿业企业的72.4%;餐饮业亏损企业190个,占餐饮企业的69.3%。')
'''



paragraph101.add_run("。其中批发业企业")
paragraph101.add_run("个,占比")
paragraph101.add_run("%;零售业企业")
paragraph101.add_run("个,占比")
paragraph101.add_run("%;住宿业企业")
paragraph101.add_run("个,占比")
paragraph101.add_run("%;餐饮业企业")
paragraph101.add_run("个,占比")
paragraph101.add_run("%。")







paragraph200 = document.add_paragraph('二、财务数据分析')


'''
paragraph201 = document.add_paragraph('1、资产情况。1-2季度,全市限额以上企业资产总计3683.4亿元,同比下降0.6%。其中,批发业企业资产总计2768.8亿元,同比下降2.2%;零售业企业资产总计797.5亿元,同比增长7.2%;住宿业企业资产总计65.1亿元,同比下降16.0%;餐饮业企业资产总计51.9亿元,同比下降0.3%。')‘’

'''




paragraph201 = document.add_paragraph('1、资产情况。1-2季度,全市限额以上企业资产总计')
round(getdate('总计', '资产总计'), 1)
paragraph201 = document.add_paragraph('亿元,同比下降')
round(getspeed('总计', '资产总计'), 1)
paragraph201 = document.add_paragraph('%。其中,批发业企业资产总计')
round(getdate('一、批发业', '资产总计'), 1)
paragraph201 = document.add_paragraph('亿元,同比下降')

paragraph201 = document.add_paragraph('%;零售业企业资产总计')
paragraph201 = document.add_paragraph('亿元,同比增长')
paragraph201 = document.add_paragraph('%;住宿业企业资产总计')
paragraph201 = document.add_paragraph('亿元,同比下降')
paragraph201 = document.add_paragraph('%;餐饮业企业资产总计')
paragraph201 = document.add_paragraph('亿元,同比下降')
paragraph201 = document.add_paragraph('%。')


paragraph202 = document.add_paragraph('2、负债情况。1-2季度,全市限额以上企业负债合计3298.7亿元,同比增长16.9%。其中,批发业企业负债合计2572.2亿元,同比增长7.4%;零售业企业负债合计625.4亿元,同比增长5.5%;住宿业企业负债合计47.5亿元,同比下降19.7%;餐饮业企业负债合计53.7亿元,同比增长5.0%。')
paragraph203 = document.add_paragraph('3、营业收入。1-2季度,全市限额以上企业实现营业收入2772.7亿元,同比下降1.9%。其中,批发业企业实现营业收入2278.2亿元,同比增长0.3%;零售业企业营业收入472.6亿元,同比下降9.2%;住宿业企业营业收入8.9亿元,同比下降42.0%;餐饮业企业营业收入12.9亿元,同比下降34.4%。')
paragraph204 = document.add_paragraph('4、营业成本。1-2季度,全市限额以上企业营业成本合计2576.7亿元,同比下降0.8%。其中,批发业企业营业成本2154.9亿元,同比增长0.8%;零售业企业营业成本411.6亿元,同比下降7.6%;住宿业企业营业成本3.6亿元,同比下降22.8%;餐饮业企业营业成本合计6.6亿元,同比下降26.6%。')
paragraph205 = document.add_paragraph('5、营业税金。1-2季度,全市限额以上企业税金及附加合计9.8亿元,同比下降19.4%。其中,批发业企业税金及附加合计8.1亿元,同比下降1.1%,零售业企业税金及附加合计1.6亿元,同比下降56.8%;住宿业企业税金及附加合计0.05亿元,同比下降64.3%;餐饮业企业税金及附加合计0.04亿元,同比下降69.2%。')
paragraph206 = document.add_paragraph('6、四项费用。1-2季度,全市限额以上企业销售费用、管理费用、研发费用及财务费用合计173.3亿元,同比下降5.8%。其中批发业企业四项费用合计95.4亿元,同比下降3.4%;零售业企业四项费用合计60.6亿元,同比下降3.0%;住宿业企业四项费用合计8.7亿元,同比下降25.0%;餐饮业企业四项费用合计8.6亿元,同比下降22.8%。')
paragraph207 = document.add_paragraph('7、营业利润。1-2季度,全市限额以上企业营业利润合计22.3亿元,同比下降30.5%。批发业企业营业利润合计27.4亿元,同比增长8.0%;零售业企业营业利润合计0.05亿元,同比下降99.4%;住宿业企业营业利润合计-3.0亿元,而去年同期为-0.8亿元;餐饮业企业营业利润合计-2.2亿,而去年同期为-0.5亿元。')
paragraph208 = document.add_paragraph('8、应交增值税。1-2季度,全市限额以上企业应交增值税合计11.0亿元,而去年同期为-23.9亿元。其中批发业企业应交增值税合计6.5亿元,而去年同期为-30.7亿元;零售业企业应交增值税合计4.4亿元,同比下降28.3%;住宿业企业应交增值税合计-0.04亿元,而去年同期为0.3亿元;餐饮业企业应交增值税0.06亿元,同比下降80%。')
paragraph209 = document.add_paragraph('9、资产负债率。1-2季度,全市限额以上企业资产负债率89.6%,比去年同期提高13.4个百分点。其中批发业企业资产负债率92.9%,比去年同期提高17.7个百分点;零售业企业资产负债率78.4%,比去年同期提高0.2个百分点;住宿业企业资产负债率72.9%,比去年同期下降3.4个百分点;餐饮业企业资产负债率103.4%,比去年同期提高5.3个百分点。')
paragraph210 = document.add_paragraph('10、毛利率。1-2季度,全市限额以上企业毛利率7.1%,比去年同期减少1.1个百分点。其中批发业企业毛利率5.4%,比去年同期减少0.4个百分点;零售业企业毛利率12.9%,比上年同期减少1.5个百分点;住宿业企业毛利率59.7%,比上年同期减少10个百分点;餐饮业企业毛利率49.1%,比上年同期减少5.4个百分点。')
paragraph211 = document.add_paragraph('11、营业收入户均值。1-2季度,全市限额以上企业中批发业营业收入户均值1.3亿元;零售业企业营业收入户均值0.6亿元;住宿业企业营业收入户均值570万元;餐饮业企业营业收入户均值470万元。')
paragraph212 = document.add_paragraph('12、营业收入人均值。1-2季度,全市限额以上企业中批发业企业营业收入人均值348.1万元;零售业企业营业收入人均值72.9万元;住宿业企业营业收入人均值6.3万元;餐饮业营业收入人均值7.0万元。')












document.save('财务季报评估报告.docx')
上一篇:AMD X590芯片组曝光:定位高于X570主板


下一篇:[LeetCode] 319. Bulb Switcher