86 lines
3.1 KiB
Python
86 lines
3.1 KiB
Python
from calculators.asphalt_domestic import AsphaltDomesticCalculator
|
||
from calculators.asphalt_imported import AsphaltImportedCalculator
|
||
from calculators.cement_325 import Cement325Calculator
|
||
from calculators.cement_425 import Cement425Calculator
|
||
from calculators.modifier import ModifierCalculator
|
||
from calculators.oil_0 import Oil0Calculator
|
||
from calculators.oil_89 import Oil89Calculator
|
||
from calculators.oil_92 import Oil92Calculator
|
||
from calculators.steel_plate import SteelPlateCalculator
|
||
from calculators.steel_rebar_300 import Reber300Calculator
|
||
from calculators.steel_rebar_400 import Reber400Calculator
|
||
from calculators.steel_section import SteelSectionCalculator
|
||
from calculators.steel_strand import SteelStrandCalculator
|
||
from calculators.asphalt_domestic_modifier import AsphaltDomesticModifierCalculator
|
||
from calculators.asphalt_imported_modifier import AsphaltImportedModifierCalculator
|
||
|
||
|
||
def calculate(year=2023, month=8):
|
||
"""
|
||
计算生成趋势表
|
||
"""
|
||
from calculators import Calculator
|
||
|
||
for material_id, name, spec, unit in [
|
||
['2001001', 'HPB300钢筋', '', 't'],
|
||
['2001002', 'HRB400钢筋', '', 't'],
|
||
['2001008', '钢绞线', '普通,无松弛,Φ15.24', 't'],
|
||
['2003004', '型钢', '工字钢, 角钢 Ⅰ20', 't'],
|
||
['2003005', '钢板', 'A3, δ=5~40mm', 't'],
|
||
['2003005001', '钢板', 'Q355', 't'],
|
||
['5509001', '32.5级水泥', '旋窑', 't'],
|
||
['5509002', '42.5级水泥', '旋窑', 't'],
|
||
['5509003', '52.5级水泥', '', 't'],
|
||
['3001001002', '石油沥青', '国产', 't'],
|
||
['3001001001', '石油沥青', '进口', 't'],
|
||
['3001002002', '改性石油沥青', '进口', 't'],
|
||
['3001002001', '改性石油沥青', '国产', 't'],
|
||
['3003002001', '汽油', '89#', 'kg'],
|
||
['3003002002', '汽油', '92#', 'kg'],
|
||
['3003003', '柴油', '0#', 'kg'],
|
||
]:
|
||
calculator = Calculator(year=year, month=month)
|
||
calculator.name = name
|
||
calculator.material_id = material_id
|
||
calculator.unit = unit
|
||
calculator.spec = spec
|
||
_result = calculator.run()
|
||
calculator.save()
|
||
print(_result)
|
||
|
||
|
||
# # todo-1 价格计算触发器
|
||
# for Calculator in [
|
||
# AsphaltDomesticCalculator,
|
||
# AsphaltImportedCalculator,
|
||
# Cement325Calculator,
|
||
# Cement425Calculator,
|
||
# Oil0Calculator,
|
||
# Oil89Calculator,
|
||
# Oil92Calculator,
|
||
# SteelPlateCalculator,
|
||
# Reber300Calculator,
|
||
# Reber400Calculator,
|
||
# SteelSectionCalculator,
|
||
# SteelStrandCalculator,
|
||
# # ModifierCalculator,
|
||
# AsphaltDomesticModifierCalculator,
|
||
# AsphaltImportedModifierCalculator,
|
||
# ]:
|
||
# calculator = Calculator(year=year, month=month)
|
||
# _result = calculator.run()
|
||
# calculator.save()
|
||
# print(_result)
|
||
|
||
|
||
if __name__ == '__main__':
|
||
from core.factory import ClientApp
|
||
|
||
with ClientApp().app_context():
|
||
# for i in range(2, 12):
|
||
# calculate(2022, i+1)
|
||
# for i in range(0, 12):
|
||
# calculate(2023, i+1)
|
||
for i in range(6, 9):
|
||
calculate(2024, i+1)
|