feat: POS GUI 적립자 정보 컬럼 분리

- '적립 사용자' 단일 컬럼을 '적립자명'과 '전화번호' 2개 컬럼으로 분리
- 각 컬럼에 녹색 볼드 텍스트 스타일 유지
- 테이블 컬럼 수: 6개 → 7개
- 윈도우 너비: 1100px → 1200px

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
시골약사 2026-01-23 16:46:07 +09:00
parent 8190601340
commit 30abf18e95

View File

@ -90,11 +90,13 @@ class SalesQueryThread(QThread):
""", (order_no,))
claimed_user = sqlite_cursor.fetchone()
# 적립 사용자 정보 포맷팅
# 적립 사용자 정보 분리
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:
claimed_info = ""
claimed_name = ""
claimed_phone = ""
sales_list.append({
'order_no': order_no,
@ -102,7 +104,8 @@ class SalesQueryThread(QThread):
'amount': float(sale_amount) if sale_amount else 0.0,
'customer': customer,
'item_count': item_count,
'claimed_user': claimed_info
'claimed_name': claimed_name,
'claimed_phone': claimed_phone
})
self.query_complete.emit(sales_list)
@ -373,7 +376,7 @@ class POSSalesGUI(QMainWindow):
def init_ui(self):
"""UI 초기화"""
self.setWindowTitle('POS 판매 조회')
self.setGeometry(100, 100, 1100, 600)
self.setGeometry(100, 100, 1200, 600)
# 중앙 위젯
central_widget = QWidget()
@ -427,16 +430,17 @@ class POSSalesGUI(QMainWindow):
sales_group.setLayout(sales_layout)
self.sales_table = QTableWidget()
self.sales_table.setColumnCount(6)
self.sales_table.setColumnCount(7)
self.sales_table.setHorizontalHeaderLabels([
'주문번호', '시간', '금액', '고객명', '품목수', '적립 사용'
'주문번호', '시간', '금액', '고객명', '품목수', '적립', '전화번호'
])
self.sales_table.setColumnWidth(0, 160)
self.sales_table.setColumnWidth(1, 70)
self.sales_table.setColumnWidth(2, 110)
self.sales_table.setColumnWidth(3, 100)
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.doubleClicked.connect(self.show_sale_detail)
@ -531,15 +535,24 @@ class POSSalesGUI(QMainWindow):
count_item.setTextAlignment(Qt.AlignCenter)
self.sales_table.setItem(row, 4, count_item)
# 적립 사용자 (SQLite)
claimed_item = QTableWidgetItem(sale['claimed_user'])
if sale['claimed_user']:
# 적립자명 (SQLite)
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.setBold(True)
claimed_item.setFont(font)
self.sales_table.setItem(row, 5, claimed_item)
claimed_name_item.setFont(font)
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):
"""DB 조회 에러 처리"""