194 lines
7.0 KiB
YAML
194 lines
7.0 KiB
YAML
-
|
|
In order to test the wizards of auction module I create a new record.
|
|
-
|
|
I start the process by creating a new product Paintings.
|
|
-
|
|
!record {model: product.product, id: product_product_paintings0}:
|
|
categ_id: product.cat1
|
|
cost_method: standard
|
|
mes_type: fixed
|
|
name: Paintings
|
|
procure_method: make_to_stock
|
|
standard_price: 1.0
|
|
supply_method: buy
|
|
type: product
|
|
uom_id: product.product_uom_unit
|
|
uom_po_id: product.product_uom_unit
|
|
volume: 0.0
|
|
warranty: 0.0
|
|
weight: 0.0
|
|
weight_net: 0.0
|
|
-
|
|
I create a new artist-Picasso's record.
|
|
-
|
|
!record {model: auction.artists, id: auction_artists_picasso0}:
|
|
birth_death_dates: 1881-1973
|
|
name: Picasso
|
|
-
|
|
Now I want to associate an object with the auction so for that I create an auction "Picasso's painting exhibition"
|
|
-
|
|
!record {model: auction.dates, id: auction_dates_picassospaintingexhibition0}:
|
|
acc_expense: account.a_pay
|
|
acc_income: account.a_recv
|
|
account_analytic_id: account.analytic_root
|
|
auction1: !eval "'%s-05-24' %(datetime.now().year)"
|
|
auction2: !eval "'%s-05-25' %(datetime.now().year)"
|
|
expo1: !eval "'%s-05-21' %(datetime.now().year)"
|
|
expo2: !eval "'%s-05-22' %(datetime.now().year)"
|
|
journal_id: account.expenses_journal
|
|
journal_seller_id: account.sales_journal
|
|
name: Picasso's painting exhibition
|
|
-
|
|
An object is being deposited for an auction,I create a seller's deposit record.
|
|
-
|
|
!record {model: auction.deposit, id: auction_deposit_ad1}:
|
|
date_dep: !eval "'%s-05-18' %(datetime.now().year)"
|
|
method: keep
|
|
name: AD/007
|
|
partner_id: base.res_partner_9
|
|
-
|
|
I create a new object painting which is to be auctioned.
|
|
-
|
|
!record {model: auction.lots, id: auction_lots_painting0}:
|
|
ach_login: 'Mr.Chang'
|
|
artist_id: auction.auction_artists_picasso0
|
|
auction_id: auction_dates_picassospaintingexhibition0
|
|
bord_vnd_id: auction_deposit_ad1
|
|
lot_est1: 2000.0
|
|
lot_est2: 4000.0
|
|
lot_num: 2
|
|
name: painting
|
|
name2: picasso_painting
|
|
obj_num: 2
|
|
obj_price: 3500.0
|
|
obj_ret: 4000.0
|
|
product_id: auction.product_product_paintings0
|
|
state: draft
|
|
vnd_lim: 4000.0
|
|
-
|
|
I assign the buyer through "Map buyer user name to Partners" wizard.
|
|
-
|
|
!record {model: auction.lots.buyer_map, id: auction_lots_buyer_map_0}:
|
|
ach_login: 'Mr.Chang'
|
|
ach_uid: base.res_partner_3
|
|
-
|
|
I click on the "Update" button.
|
|
-
|
|
!python {model: auction.lots.buyer_map}: |
|
|
auc_obj=self.pool.get('auction.lots')
|
|
ids=self.browse(cr, uid, ref("auction_lots_painting0"))
|
|
self.buyer_map_set(cr, uid, [ref("auction_lots_buyer_map_0")], {"lang": "en_US",
|
|
"tz": False, "active_model": "auction.lots", "active_ids": [ref("auction_lots_painting0")],
|
|
"active_id": ref("auction_lots_painting0")})
|
|
-
|
|
I check that the buyer field gets bound with the value.
|
|
-
|
|
!python {model: auction.lots}: |
|
|
from tools.translate import _
|
|
auc_id=self.browse(cr, uid, ref("auction_lots_painting0"))
|
|
assert(auc_id.ach_uid), _('Buyer not assigned!')
|
|
|
|
-
|
|
I create statement lines for the payment of an object using the "Pay objects of the buyer" wizard
|
|
-
|
|
I create a bank statement.
|
|
-
|
|
!record {model: account.bank.statement, id: account_bank_statement_st0}:
|
|
balance_end_real: 0.0
|
|
date: !eval "'%s-05-19' %(datetime.now().year)"
|
|
journal_id: account.bank_journal
|
|
name: St. 05/19
|
|
period_id: account.period_5
|
|
state: draft
|
|
-
|
|
I create auction payment record.
|
|
-
|
|
!record {model: auction.pay.buy, id: auction_pay_buy_0}:
|
|
amount: 2000.0
|
|
amount2: 1000.0
|
|
amount3: 1000.0
|
|
buyer_id: base.res_partner_2
|
|
statement_id1: account_bank_statement_st0
|
|
statement_id2: account_bank_statement_st0
|
|
statement_id3: account_bank_statement_st0
|
|
total: 4000.0
|
|
-
|
|
I click "Pay" button.
|
|
-
|
|
!python {model: auction.pay.buy}: |
|
|
self.pay_and_reconcile(cr, uid, [ref("auction_pay_buy_0")], {"lang": "en_US", "tz":
|
|
False, "active_model": "auction.lots", "active_ids": [ref("auction_lots_painting0")],
|
|
"active_id": ref("auction_lots_painting0"),})
|
|
-
|
|
I check that a record gets created in the 'auction_statement_line_rel' table
|
|
-
|
|
!python {model: auction.lots}: |
|
|
from tools.translate import _
|
|
cr.execute("select statement from auction_statement_line_rel,auction_lots where auction_lots.id=auction_statement_line_rel.auction_id AND auction_lots.name='painting'")
|
|
ans=cr.fetchall()
|
|
assert ans, _('statement_id not found!')
|
|
-
|
|
I create the seller's invoice by using the "Invoice Seller objects" wizard.
|
|
-
|
|
!record {model: auction.lots.make.invoice, id: auction_lots_make_invoice_0}:
|
|
amount: 3500.0
|
|
number: !eval "'%s/002' %(datetime.now().year)"
|
|
objects: 1
|
|
-
|
|
I click on the "Create Invoices" button.
|
|
-
|
|
!python {model: auction.lots.make.invoice}: |
|
|
self.makeInvoices(cr, uid, [ref("auction_lots_make_invoice_0")], {"lang": "en_US",
|
|
"active_model": "auction.lots", "active_ids": [ref("auction_lots_painting0")],
|
|
"tz": False, "active_id": ref("auction_lots_painting0"),})
|
|
-
|
|
I check that a "Seller Invoice" field gets bound with the value.
|
|
-
|
|
!python {model: auction.lots}: |
|
|
from tools.translate import _
|
|
auc_id=self.browse(cr, uid, ref("auction_lots_painting0"))
|
|
assert(auc_id.sel_inv_id), _('Seller Invoice has not been created!')
|
|
-
|
|
I create a buyer's invoice by using the "Invoice Buyer objects" wizard.
|
|
-
|
|
!record {model: auction.lots.make.invoice.buyer, id: auction_lots_make_invoice_buyer_0}:
|
|
amount: 3500.0
|
|
buyer_id: base.res_partner_3
|
|
number: !eval "'%s/003' %(datetime.now().year)"
|
|
objects: 1
|
|
-
|
|
I click on the "Create Invoices" button.
|
|
-
|
|
!python {model: auction.lots.make.invoice.buyer}: |
|
|
self.makeInvoices(cr, uid, [ref("auction_lots_make_invoice_buyer_0")], {"lang":
|
|
"en_US", "active_model": "auction.lots", "active_ids": [ref("auction_lots_painting0")],
|
|
"tz": False, "active_id": ref("auction_lots_painting0"), })
|
|
-
|
|
I check that a "Buyer Invoice" field gets bound with the value.
|
|
-
|
|
!python {model: auction.lots}: |
|
|
from tools.translate import _
|
|
auc_id=self.browse(cr, uid, ref("auction_lots_painting0"))
|
|
assert(auc_id.ach_inv_id), _('Seller Invoice has not been created!')
|
|
-
|
|
In order to change the auction for an object I use the "Change auction date" wizard.
|
|
-
|
|
!record {model: auction.lots.auction.move, id: auction_lots_auction_move_0}:
|
|
auction_id: auction.auction_date_2
|
|
-
|
|
I click on the "Move to Auction date" button.
|
|
-
|
|
!python {model: auction.lots.auction.move}: |
|
|
self.auction_move_set(cr, uid, [ref("auction_lots_auction_move_0")], {"lang":
|
|
"en_US", "tz": False, "active_model": "auction.lots", "active_ids": [ref("auction_lots_painting0")],
|
|
"active_id": ref("auction_lots_painting0"), })
|
|
-
|
|
I check that a record gets created in the lot history.
|
|
-
|
|
!python {model: auction.lots}: |
|
|
from tools.translate import _
|
|
auc_id=self.browse(cr, uid, ref("auction_lots_painting0"))
|
|
auc_lot_his=self.pool.get('auction.lot.history')
|
|
ids=auc_lot_his.search(cr, uid, [('lot_id', '=', auc_id.id)])
|
|
assert ids, _('Auction history does not exists!')
|