本文整理汇总了Python中stoqlib.domain.product.ProductHistory.delete方法的典型用法代码示例。如果您正苦于以下问题:Python ProductHistory.delete方法的具体用法?Python ProductHistory.delete怎么用?Python ProductHistory.delete使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类stoqlib.domain.product.ProductHistory
的用法示例。
在下文中一共展示了ProductHistory.delete方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: apply_patch
# 需要导入模块: from stoqlib.domain.product import ProductHistory [as 别名]
# 或者: from stoqlib.domain.product.ProductHistory import delete [as 别名]
def apply_patch(store):
# Creation of new column in stock_decrease table.
# And added new Cfop to cfop_data table.
store.execute("""ALTER TABLE stock_decrease
ADD COLUMN cfop_id bigint REFERENCES cfop_data(id);""")
# Default Cfop should be use in manual stock decrease.
cfop_data = store.find(CfopData, code=u'5.949').one()
if not cfop_data:
cfop_data = CfopData(store=store,
code=u"5.949",
description=u"Outra saída de mercadoria ou "
u"prestação de serviço não "
u"especificado")
# Adjusting existing manuals outputs
for stock_decrease in store.find(StockDecrease):
stock_decrease.cfop = cfop_data
retentions = store.execute("""
SELECT id, quantity, reason, retention_date, product_id, cfop_id
FROM product_retention_history ORDER BY id;""").get_all()
# Without retentions, there is no need to create user and employee
# variables.
if len(retentions):
# Default user for migration
user = get_admin_user(store)
if user is None:
users = Person.iselectBy(IUser, is_active=True,
store=store).order_by(Person.id)
user = users[0]
# Default employee for migration
employee = IEmployee(user.person, None)
if employee is None:
employees = Person.iselectBy(IEmployee, is_active=True,
store=store).order_by(Person.id)
employee = employees[0]
default_branch = sysparam(store).MAIN_COMPANY
notes = _(u"Stock decrease imported from old retention.")
history = store.execute("""
SELECT id, quantity_retained, sellable_id, branch_id
FROM product_history
WHERE quantity_retained is not null
ORDER BY id;""").get_all()
for i in range(len(retentions)):
ret = retentions[i]
hist = history[i]
product = Product.get(ret[4], store=store)
branch_id = hist[3]
if ret[1] != hist[1] or product.sellable.id != hist[2]:
branch_id = default_branch.id
decrease = StockDecrease(store=store,
confirm_date=ret[3],
status=StockDecrease.STATUS_CONFIRMED,
reason=ret[2],
notes=notes,
responsible=user,
removed_by=employee,
branch_id=branch_id,
cfop_id=ret[5])
decrease_item = StockDecreaseItem(store=store,
quantity=ret[1],
sellable=product.sellable)
decrease.add_item(decrease_item)
ProductHistory.delete(hist[0], store)
ProductHistory(branch_id=branch_id, sellable=product.sellable,
quantity_decreased=decrease_item.quantity,
decreased_date=decrease.confirm_date,
store=store)
store.execute("""ALTER TABLE product_history
DROP COLUMN quantity_retained;""")
store.execute("DROP TABLE product_retention_history;")