(no commit message provided)

Co-authored-by: aider (openai/DeepSeek-V3.2-Thinking) <aider@aider.chat>
This commit is contained in:
dxc
2026-02-09 11:59:35 +08:00
parent 8138e8cf5f
commit 164988ab62

View File

@ -7,27 +7,20 @@ class TransBorrow(db.Model):
id = db.Column(db.Integer, primary_key=True) id = db.Column(db.Integer, primary_key=True)
borrow_no = db.Column(db.String(100)) borrow_no = db.Column(db.String(100))
sku = db.Column(db.String(100)) sku = db.Column(db.String(100))
source_table = db.Column(db.String(50)) source_table = db.Column(db.String(50))
stock_id = db.Column(db.Integer) stock_id = db.Column(db.Integer)
barcode = db.Column(db.String(100)) barcode = db.Column(db.String(100))
quantity = db.Column(db.Numeric(19, 4)) quantity = db.Column(db.Numeric(19, 4))
# 借出信息
borrower_name = db.Column(db.String(100)) borrower_name = db.Column(db.String(100))
borrow_time = db.Column(db.DateTime, default=datetime.now) borrow_time = db.Column(db.DateTime, default=datetime.now)
borrow_signature = db.Column(db.Text) # 借用人签字 borrow_signature = db.Column(db.Text)
expected_return_time = db.Column(db.DateTime) expected_return_time = db.Column(db.DateTime)
# 归还信息
is_returned = db.Column(db.Boolean, default=False) is_returned = db.Column(db.Boolean, default=False)
return_time = db.Column(db.DateTime) return_time = db.Column(db.DateTime)
return_operator = db.Column(db.String(100)) # 库管 return_operator = db.Column(db.String(100))
return_signature = db.Column(db.Text) # 库管签字 return_signature = db.Column(db.Text)
return_location = db.Column(db.String(100)) # 归还库位 return_location = db.Column(db.String(100))
status = db.Column(db.String(20), default='borrowed') status = db.Column(db.String(20), default='borrowed')
remark = db.Column(db.Text) remark = db.Column(db.Text)
@ -36,20 +29,21 @@ class TransBorrow(db.Model):
'id': self.id, 'id': self.id,
'borrow_no': self.borrow_no, 'borrow_no': self.borrow_no,
'sku': self.sku, 'sku': self.sku,
'source_table': self.source_table,
'stock_id': self.stock_id,
'barcode': self.barcode, 'barcode': self.barcode,
'quantity': float(self.quantity) if self.quantity else 0, 'quantity': float(self.quantity) if self.quantity is not None else None,
'borrower_name': self.borrower_name, 'borrower_name': self.borrower_name,
'borrow_time': self.borrow_time.strftime('%Y-%m-%d %H:%M') if self.borrow_time else '', 'borrow_time': self.borrow_time.strftime('%Y-%m-%d %H:%M') if self.borrow_time else None,
'borrow_signature': self.borrow_signature, 'borrow_signature': self.borrow_signature,
'expected_return_time': self.expected_return_time.strftime( 'expected_return_time': self.expected_return_time.strftime('%Y-%m-%d %H:%M') if self.expected_return_time else None,
'%Y-%m-%d %H:%M') if self.expected_return_time else '',
'is_returned': self.is_returned, 'is_returned': self.is_returned,
'return_time': self.return_time.strftime('%Y-%m-%d %H:%M') if self.return_time else '', 'return_time': self.return_time.strftime('%Y-%m-%d %H:%M') if self.return_time else None,
'return_operator': self.return_operator, 'return_operator': self.return_operator,
'return_signature': self.return_signature, 'return_signature': self.return_signature,
'return_location': self.return_location, 'return_location': self.return_location,
'status': self.status, 'status': self.status,
'remark': self.remark 'remark': self.remark,
} }
@ -60,19 +54,17 @@ class TransRepair(db.Model):
sku = db.Column(db.String(100)) sku = db.Column(db.String(100))
source_table = db.Column(db.String(50)) source_table = db.Column(db.String(50))
stock_id = db.Column(db.Integer) stock_id = db.Column(db.Integer)
arrival_date = db.Column(db.Date)
expected_repair_time = db.Column(db.String(100))
shipping_date = db.Column(db.Date)
is_self_made = db.Column(db.Boolean, default=False)
related_product_id = db.Column(db.Integer)
related_contract_id = db.Column(db.String(100))
repair_manager = db.Column(db.String(100))
fault_description = db.Column(db.Text) fault_description = db.Column(db.Text)
repair_result = db.Column(db.Text) repair_result = db.Column(db.Text)
repair_manager = db.Column(db.String(100)) cost_price = db.Column(db.Numeric(19, 4))
sale_price = db.Column(db.Numeric(19, 4))
cost_price = db.Column(db.Numeric(10, 2))
sale_price = db.Column(db.Numeric(10, 2))
arrival_date = db.Column(db.Date)
shipping_date = db.Column(db.Date)
created_at = db.Column(db.DateTime, default=datetime.now)
updated_at = db.Column(db.DateTime, default=datetime.now, onupdate=datetime.now)
def to_dict(self): def to_dict(self):
return { return {
@ -80,17 +72,20 @@ class TransRepair(db.Model):
'sku': self.sku, 'sku': self.sku,
'source_table': self.source_table, 'source_table': self.source_table,
'stock_id': self.stock_id, 'stock_id': self.stock_id,
'arrival_date': self.arrival_date.strftime('%Y-%m-%d') if self.arrival_date else None,
'expected_repair_time': self.expected_repair_time,
'shipping_date': self.shipping_date.strftime('%Y-%m-%d') if self.shipping_date else None,
'is_self_made': self.is_self_made,
'related_product_id': self.related_product_id,
'related_contract_id': self.related_contract_id,
'repair_manager': self.repair_manager,
'fault_description': self.fault_description, 'fault_description': self.fault_description,
'repair_result': self.repair_result, 'repair_result': self.repair_result,
'repair_manager': self.repair_manager,
'cost_price': float(self.cost_price) if self.cost_price is not None else None, 'cost_price': float(self.cost_price) if self.cost_price is not None else None,
'sale_price': float(self.sale_price) if self.sale_price is not None else None, 'sale_price': float(self.sale_price) if self.sale_price is not None else None,
'arrival_date': self.arrival_date.strftime('%Y-%m-%d') if self.arrival_date else None,
'shipping_date': self.shipping_date.strftime('%Y-%m-%d') if self.shipping_date else None,
'created_at': self.created_at.strftime('%Y-%m-%d %H:%M:%S') if self.created_at else None,
'updated_at': self.updated_at.strftime('%Y-%m-%d %H:%M:%S') if self.updated_at else None,
} }
class TransScrap(db.Model): class TransScrap(db.Model):
__tablename__ = 'trans_scrap' __tablename__ = 'trans_scrap'
@ -98,18 +93,14 @@ class TransScrap(db.Model):
sku = db.Column(db.String(100)) sku = db.Column(db.String(100))
source_table = db.Column(db.String(50)) source_table = db.Column(db.String(50))
stock_id = db.Column(db.Integer) stock_id = db.Column(db.Integer)
quantity = db.Column(db.Numeric(19, 4)) quantity = db.Column(db.Numeric(19, 4))
reason = db.Column(db.Text) reason = db.Column(db.Text)
operator_name = db.Column(db.String(100)) operator_name = db.Column(db.String(100))
operation_time = db.Column(db.DateTime, default=datetime.now)
approver_name = db.Column(db.String(100)) approver_name = db.Column(db.String(100))
approval_status = db.Column(db.String(20), default='pending') approval_status = db.Column(db.String(20), default='pending')
cost_at_scrap = db.Column(db.Numeric(10, 2)) cost_at_scrap = db.Column(db.Numeric(19, 4))
total_loss = db.Column(db.Numeric(10, 2)) total_loss = db.Column(db.Numeric(19, 4))
operation_time = db.Column(db.DateTime, default=datetime.now)
created_at = db.Column(db.DateTime, default=datetime.now)
updated_at = db.Column(db.DateTime, default=datetime.now, onupdate=datetime.now)
def to_dict(self): def to_dict(self):
return { return {
@ -120,11 +111,9 @@ class TransScrap(db.Model):
'quantity': float(self.quantity) if self.quantity is not None else None, 'quantity': float(self.quantity) if self.quantity is not None else None,
'reason': self.reason, 'reason': self.reason,
'operator_name': self.operator_name, 'operator_name': self.operator_name,
'operation_time': self.operation_time.strftime('%Y-%m-%d %H:%M:%S') if self.operation_time else None,
'approver_name': self.approver_name, 'approver_name': self.approver_name,
'approval_status': self.approval_status, 'approval_status': self.approval_status,
'cost_at_scrap': float(self.cost_at_scrap) if self.cost_at_scrap is not None else None, 'cost_at_scrap': float(self.cost_at_scrap) if self.cost_at_scrap is not None else None,
'total_loss': float(self.total_loss) if self.total_loss is not None else None, 'total_loss': float(self.total_loss) if self.total_loss is not None else None,
'operation_time': self.operation_time.strftime('%Y-%m-%d %H:%M:%S') if self.operation_time else None,
'created_at': self.created_at.strftime('%Y-%m-%d %H:%M:%S') if self.created_at else None,
'updated_at': self.updated_at.strftime('%Y-%m-%d %H:%M:%S') if self.updated_at else None,
} }