You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

44 lines
1.5 KiB

# -*- coding: utf-8 -*-
# @Time : 2023/9/26 11:03
# @Author : tx
# @File : report_inventory.py
# @Description :
from helper.export.base import ReportExport
from helper.report import report_inventory_drug
class ReportInventory(ReportExport):
def __init__(self, request, keyword):
super().__init__()
self.title = "库存信息记录"
self.stateDict = {0: "待入库", 1: "在库", 2: "出库", 3: "空瓶", 4: "报废"}
self.request = request
self.keyword = keyword
async def parse_data(self, request, keyword):
keyword.page_no = 0
result = await report_inventory_drug(request, keyword)
self.drug_attribute_key_list = result.get("attribute_key")
return result.get("data")
def parse_key_finds_list(self):
"""
解析键列名
:return:
"""
key_list = ["rfid", "cas_code", "batch_no", "manufacturer", "net_weight", "remain_gross_weight", "position", "expired_at", "storage_at", "last_user"]
finds_list = ["RFID", "CAS码", "批号", "生产厂家", "净重", "余量", "位置", "有效日期", "入库时间", "最后使用人"]
self.key_list = self.drug_attribute_key_list + key_list
self.finds_list = self.drug_attribute_key_list + finds_list
async def main(self):
"""
主函数
:param kwargs:
:return:
"""
self.data_list = await self.parse_data(self.request, self.keyword)
self.parse_key_finds_list()