feat: POS GUI 적립자 정보 컬럼 분리
- '적립 사용자' 단일 컬럼을 '적립자명'과 '전화번호' 2개 컬럼으로 분리 - 각 컬럼에 녹색 볼드 텍스트 스타일 유지 - 테이블 컬럼 수: 6개 → 7개 - 윈도우 너비: 1100px → 1200px Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
parent
8190601340
commit
30abf18e95
@ -90,11 +90,13 @@ class SalesQueryThread(QThread):
|
|||||||
""", (order_no,))
|
""", (order_no,))
|
||||||
claimed_user = sqlite_cursor.fetchone()
|
claimed_user = sqlite_cursor.fetchone()
|
||||||
|
|
||||||
# 적립 사용자 정보 포맷팅
|
# 적립 사용자 정보 분리
|
||||||
if claimed_user and claimed_user['nickname'] and claimed_user['phone']:
|
if claimed_user and claimed_user['nickname'] and claimed_user['phone']:
|
||||||
claimed_info = f"{claimed_user['nickname']} ({claimed_user['phone']})"
|
claimed_name = claimed_user['nickname']
|
||||||
|
claimed_phone = claimed_user['phone']
|
||||||
else:
|
else:
|
||||||
claimed_info = ""
|
claimed_name = ""
|
||||||
|
claimed_phone = ""
|
||||||
|
|
||||||
sales_list.append({
|
sales_list.append({
|
||||||
'order_no': order_no,
|
'order_no': order_no,
|
||||||
@ -102,7 +104,8 @@ class SalesQueryThread(QThread):
|
|||||||
'amount': float(sale_amount) if sale_amount else 0.0,
|
'amount': float(sale_amount) if sale_amount else 0.0,
|
||||||
'customer': customer,
|
'customer': customer,
|
||||||
'item_count': item_count,
|
'item_count': item_count,
|
||||||
'claimed_user': claimed_info
|
'claimed_name': claimed_name,
|
||||||
|
'claimed_phone': claimed_phone
|
||||||
})
|
})
|
||||||
|
|
||||||
self.query_complete.emit(sales_list)
|
self.query_complete.emit(sales_list)
|
||||||
@ -373,7 +376,7 @@ class POSSalesGUI(QMainWindow):
|
|||||||
def init_ui(self):
|
def init_ui(self):
|
||||||
"""UI 초기화"""
|
"""UI 초기화"""
|
||||||
self.setWindowTitle('POS 판매 조회')
|
self.setWindowTitle('POS 판매 조회')
|
||||||
self.setGeometry(100, 100, 1100, 600)
|
self.setGeometry(100, 100, 1200, 600)
|
||||||
|
|
||||||
# 중앙 위젯
|
# 중앙 위젯
|
||||||
central_widget = QWidget()
|
central_widget = QWidget()
|
||||||
@ -427,16 +430,17 @@ class POSSalesGUI(QMainWindow):
|
|||||||
sales_group.setLayout(sales_layout)
|
sales_group.setLayout(sales_layout)
|
||||||
|
|
||||||
self.sales_table = QTableWidget()
|
self.sales_table = QTableWidget()
|
||||||
self.sales_table.setColumnCount(6)
|
self.sales_table.setColumnCount(7)
|
||||||
self.sales_table.setHorizontalHeaderLabels([
|
self.sales_table.setHorizontalHeaderLabels([
|
||||||
'주문번호', '시간', '금액', '고객명', '품목수', '적립 사용자'
|
'주문번호', '시간', '금액', '고객명', '품목수', '적립자명', '전화번호'
|
||||||
])
|
])
|
||||||
self.sales_table.setColumnWidth(0, 160)
|
self.sales_table.setColumnWidth(0, 160)
|
||||||
self.sales_table.setColumnWidth(1, 70)
|
self.sales_table.setColumnWidth(1, 70)
|
||||||
self.sales_table.setColumnWidth(2, 110)
|
self.sales_table.setColumnWidth(2, 110)
|
||||||
self.sales_table.setColumnWidth(3, 100)
|
self.sales_table.setColumnWidth(3, 100)
|
||||||
self.sales_table.setColumnWidth(4, 70)
|
self.sales_table.setColumnWidth(4, 70)
|
||||||
self.sales_table.setColumnWidth(5, 180)
|
self.sales_table.setColumnWidth(5, 100)
|
||||||
|
self.sales_table.setColumnWidth(6, 120)
|
||||||
self.sales_table.setSelectionBehavior(QTableWidget.SelectRows)
|
self.sales_table.setSelectionBehavior(QTableWidget.SelectRows)
|
||||||
self.sales_table.doubleClicked.connect(self.show_sale_detail)
|
self.sales_table.doubleClicked.connect(self.show_sale_detail)
|
||||||
|
|
||||||
@ -531,15 +535,24 @@ class POSSalesGUI(QMainWindow):
|
|||||||
count_item.setTextAlignment(Qt.AlignCenter)
|
count_item.setTextAlignment(Qt.AlignCenter)
|
||||||
self.sales_table.setItem(row, 4, count_item)
|
self.sales_table.setItem(row, 4, count_item)
|
||||||
|
|
||||||
# 적립 사용자 (SQLite)
|
# 적립자명 (SQLite)
|
||||||
claimed_item = QTableWidgetItem(sale['claimed_user'])
|
|
||||||
if sale['claimed_user']:
|
|
||||||
from PyQt5.QtGui import QColor, QFont
|
from PyQt5.QtGui import QColor, QFont
|
||||||
claimed_item.setForeground(QColor('#4CAF50'))
|
claimed_name_item = QTableWidgetItem(sale['claimed_name'])
|
||||||
|
if sale['claimed_name']:
|
||||||
|
claimed_name_item.setForeground(QColor('#4CAF50'))
|
||||||
font = QFont()
|
font = QFont()
|
||||||
font.setBold(True)
|
font.setBold(True)
|
||||||
claimed_item.setFont(font)
|
claimed_name_item.setFont(font)
|
||||||
self.sales_table.setItem(row, 5, claimed_item)
|
self.sales_table.setItem(row, 5, claimed_name_item)
|
||||||
|
|
||||||
|
# 전화번호 (SQLite)
|
||||||
|
claimed_phone_item = QTableWidgetItem(sale['claimed_phone'])
|
||||||
|
if sale['claimed_phone']:
|
||||||
|
claimed_phone_item.setForeground(QColor('#4CAF50'))
|
||||||
|
font = QFont()
|
||||||
|
font.setBold(True)
|
||||||
|
claimed_phone_item.setFont(font)
|
||||||
|
self.sales_table.setItem(row, 6, claimed_phone_item)
|
||||||
|
|
||||||
def on_query_error(self, error_msg):
|
def on_query_error(self, error_msg):
|
||||||
"""DB 조회 에러 처리"""
|
"""DB 조회 에러 처리"""
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user