53 lines
2.0 KiB
Python
53 lines
2.0 KiB
Python
from app.extensions import db
|
|
from datetime import datetime
|
|
|
|
|
|
class TransBorrow(db.Model):
|
|
__tablename__ = 'trans_borrow'
|
|
|
|
id = db.Column(db.Integer, primary_key=True)
|
|
borrow_no = db.Column(db.String(100))
|
|
|
|
sku = db.Column(db.String(100))
|
|
source_table = db.Column(db.String(50))
|
|
stock_id = db.Column(db.Integer)
|
|
barcode = db.Column(db.String(100))
|
|
|
|
quantity = db.Column(db.Numeric(19, 4))
|
|
|
|
# 借出信息
|
|
borrower_name = db.Column(db.String(100))
|
|
borrow_time = db.Column(db.DateTime, default=datetime.now)
|
|
borrow_signature = db.Column(db.Text) # 借用人签字
|
|
expected_return_time = db.Column(db.DateTime)
|
|
|
|
# 归还信息
|
|
is_returned = db.Column(db.Boolean, default=False)
|
|
return_time = db.Column(db.DateTime)
|
|
return_operator = db.Column(db.String(100)) # 库管
|
|
return_signature = db.Column(db.Text) # 库管签字
|
|
return_location = db.Column(db.String(100)) # 归还库位
|
|
|
|
status = db.Column(db.String(20), default='borrowed')
|
|
remark = db.Column(db.Text)
|
|
|
|
def to_dict(self):
|
|
return {
|
|
'id': self.id,
|
|
'borrow_no': self.borrow_no,
|
|
'sku': self.sku,
|
|
'barcode': self.barcode,
|
|
'quantity': float(self.quantity) if self.quantity else 0,
|
|
'borrower_name': self.borrower_name,
|
|
'borrow_time': self.borrow_time.strftime('%Y-%m-%d %H:%M') if self.borrow_time else '',
|
|
'borrow_signature': self.borrow_signature,
|
|
'expected_return_time': self.expected_return_time.strftime(
|
|
'%Y-%m-%d %H:%M') if self.expected_return_time else '',
|
|
'is_returned': self.is_returned,
|
|
'return_time': self.return_time.strftime('%Y-%m-%d %H:%M') if self.return_time else '',
|
|
'return_operator': self.return_operator,
|
|
'return_signature': self.return_signature,
|
|
'return_location': self.return_location,
|
|
'status': self.status,
|
|
'remark': self.remark
|
|
} |