Make sure we refresh batch status when adding a new row
b/c whether or not it has a product will affect batch status. this also changes how we interpret UPC for unknown product, i.e. by default we now assume it does *not* have a check digit and that we should calculate that. probably just a matter of time before someone needs the opposite though..
This commit is contained in:
parent
e0f7ba827f
commit
a24076f0ce
|
@ -742,6 +742,7 @@ class ReceivingBatchView(PurchasingBatchView):
|
||||||
row.product = other_row.product
|
row.product = other_row.product
|
||||||
self.handler.add_row(batch, row)
|
self.handler.add_row(batch, row)
|
||||||
self.Session.flush()
|
self.Session.flush()
|
||||||
|
self.handler.refresh_batch_status(batch)
|
||||||
return row
|
return row
|
||||||
|
|
||||||
# try to locate product by uuid before other, more specific key
|
# try to locate product by uuid before other, more specific key
|
||||||
|
@ -751,6 +752,7 @@ class ReceivingBatchView(PurchasingBatchView):
|
||||||
row.product = product
|
row.product = product
|
||||||
self.handler.add_row(batch, row)
|
self.handler.add_row(batch, row)
|
||||||
self.Session.flush()
|
self.Session.flush()
|
||||||
|
self.handler.refresh_batch_status(batch)
|
||||||
return row
|
return row
|
||||||
|
|
||||||
key = self.rattail_config.product_key()
|
key = self.rattail_config.product_key()
|
||||||
|
@ -767,6 +769,7 @@ class ReceivingBatchView(PurchasingBatchView):
|
||||||
row.product = product
|
row.product = product
|
||||||
self.handler.add_row(batch, row)
|
self.handler.add_row(batch, row)
|
||||||
self.Session.flush()
|
self.Session.flush()
|
||||||
|
self.handler.refresh_batch_status(batch)
|
||||||
return row
|
return row
|
||||||
|
|
||||||
# check for "bad" upc
|
# check for "bad" upc
|
||||||
|
@ -775,11 +778,16 @@ class ReceivingBatchView(PurchasingBatchView):
|
||||||
|
|
||||||
# product not in system, but presumably sane upc, so add to batch anyway
|
# product not in system, but presumably sane upc, so add to batch anyway
|
||||||
row = model.PurchaseBatchRow()
|
row = model.PurchaseBatchRow()
|
||||||
row.upc = provided # TODO: why not checked? how to know?
|
add_check_digit = True # TODO: make this dynamic, of course
|
||||||
|
if add_check_digit:
|
||||||
|
row.upc = checked
|
||||||
|
else:
|
||||||
|
row.upc = provided
|
||||||
row.item_id = entry
|
row.item_id = entry
|
||||||
row.description = "(unknown product)"
|
row.description = "(unknown product)"
|
||||||
self.handler.add_row(batch, row)
|
self.handler.add_row(batch, row)
|
||||||
self.Session.flush()
|
self.Session.flush()
|
||||||
|
self.handler.refresh_batch_status(batch)
|
||||||
return row
|
return row
|
||||||
|
|
||||||
elif key == 'item_id':
|
elif key == 'item_id':
|
||||||
|
@ -791,6 +799,7 @@ class ReceivingBatchView(PurchasingBatchView):
|
||||||
row.product = product
|
row.product = product
|
||||||
self.handler.add_row(batch, row)
|
self.handler.add_row(batch, row)
|
||||||
self.Session.flush()
|
self.Session.flush()
|
||||||
|
self.handler.refresh_batch_status(batch)
|
||||||
return row
|
return row
|
||||||
|
|
||||||
# check for "too long" item_id
|
# check for "too long" item_id
|
||||||
|
@ -803,6 +812,7 @@ class ReceivingBatchView(PurchasingBatchView):
|
||||||
row.description = "(unknown product)"
|
row.description = "(unknown product)"
|
||||||
self.handler.add_row(batch, row)
|
self.handler.add_row(batch, row)
|
||||||
self.Session.flush()
|
self.Session.flush()
|
||||||
|
self.handler.refresh_batch_status(batch)
|
||||||
return row
|
return row
|
||||||
|
|
||||||
else:
|
else:
|
||||||
|
|
Loading…
Reference in a new issue