Files
material-api/web/tasks/once/calculate.py

86 lines
3.1 KiB
Python
Raw Normal View History

2024-05-29 10:21:31 +08:00
from calculators.asphalt_domestic import AsphaltDomesticCalculator
from calculators.asphalt_imported import AsphaltImportedCalculator
from calculators.cement_325 import Cement325Calculator
from calculators.cement_425 import Cement425Calculator
2024-07-11 18:14:17 +08:00
from calculators.modifier import ModifierCalculator
2024-05-29 10:21:31 +08:00
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):
2024-07-09 18:11:22 +08:00
"""
计算生成趋势表
"""
2024-12-09 17:26:32 +08:00
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, δ=540mm', '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'],
2024-05-29 10:21:31 +08:00
]:
calculator = Calculator(year=year, month=month)
2024-12-09 17:26:32 +08:00
calculator.name = name
calculator.material_id = material_id
calculator.unit = unit
calculator.spec = spec
2024-05-29 10:21:31 +08:00
_result = calculator.run()
calculator.save()
print(_result)
2024-12-09 17:26:32 +08:00
# # 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)
2024-05-29 10:21:31 +08:00
if __name__ == '__main__':
from core.factory import ClientApp
2024-06-05 09:21:00 +08:00
with ClientApp().app_context():
2024-12-09 17:26:32 +08:00
# 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):
2024-07-11 16:01:15 +08:00
calculate(2024, i+1)