feat: 更新数据库表名,统一使用前缀 'wsbz_' 以提高可读性和一致性
This commit is contained in:
parent
0e73fc96ae
commit
bacd7e84ab
@ -29,7 +29,7 @@ class InspectionDAO:
|
|||||||
sql = """
|
sql = """
|
||||||
SELECT id, position, name, display_name, enabled, required,
|
SELECT id, position, name, display_name, enabled, required,
|
||||||
data_type, min_value, max_value, enum_values, unit, sort_order
|
data_type, min_value, max_value, enum_values, unit, sort_order
|
||||||
FROM inspection_config
|
FROM wsbz_inspection_config
|
||||||
WHERE is_deleted = FALSE
|
WHERE is_deleted = FALSE
|
||||||
ORDER BY sort_order, position
|
ORDER BY sort_order, position
|
||||||
"""
|
"""
|
||||||
@ -38,7 +38,7 @@ class InspectionDAO:
|
|||||||
sql = """
|
sql = """
|
||||||
SELECT id, position, name, display_name, enabled, required,
|
SELECT id, position, name, display_name, enabled, required,
|
||||||
data_type, min_value, max_value, enum_values, unit, sort_order
|
data_type, min_value, max_value, enum_values, unit, sort_order
|
||||||
FROM inspection_config
|
FROM wsbz_inspection_config
|
||||||
WHERE is_deleted = FALSE AND enabled = TRUE
|
WHERE is_deleted = FALSE AND enabled = TRUE
|
||||||
ORDER BY sort_order, position
|
ORDER BY sort_order, position
|
||||||
"""
|
"""
|
||||||
@ -91,7 +91,7 @@ class InspectionDAO:
|
|||||||
sql = """
|
sql = """
|
||||||
SELECT id, position, name, display_name, enabled, required,
|
SELECT id, position, name, display_name, enabled, required,
|
||||||
data_type, min_value, max_value, enum_values, unit, sort_order
|
data_type, min_value, max_value, enum_values, unit, sort_order
|
||||||
FROM inspection_config
|
FROM wsbz_inspection_config
|
||||||
WHERE position = ? AND is_deleted = FALSE
|
WHERE position = ? AND is_deleted = FALSE
|
||||||
"""
|
"""
|
||||||
params = (position,)
|
params = (position,)
|
||||||
@ -203,7 +203,7 @@ class InspectionDAO:
|
|||||||
current_time = datetime.now().strftime('%Y-%m-%d %H:%M:%S')
|
current_time = datetime.now().strftime('%Y-%m-%d %H:%M:%S')
|
||||||
|
|
||||||
sql = """
|
sql = """
|
||||||
UPDATE inspection_config
|
UPDATE wsbz_inspection_config
|
||||||
SET enabled = ?, update_time = ?, update_by = ?
|
SET enabled = ?, update_time = ?, update_by = ?
|
||||||
WHERE position = ? AND is_deleted = FALSE
|
WHERE position = ? AND is_deleted = FALSE
|
||||||
"""
|
"""
|
||||||
@ -240,7 +240,7 @@ class InspectionDAO:
|
|||||||
tray_id = item.get('tray_id', '')
|
tray_id = item.get('tray_id', '')
|
||||||
# 检查是否已存在该工程号和位置的记录
|
# 检查是否已存在该工程号和位置的记录
|
||||||
check_sql = """
|
check_sql = """
|
||||||
SELECT id FROM inspection_data
|
SELECT id FROM wsbz_inspection_data
|
||||||
WHERE order_id = ? AND position = ? AND is_deleted = FALSE
|
WHERE order_id = ? AND position = ? AND is_deleted = FALSE
|
||||||
"""
|
"""
|
||||||
check_params = (order_id, position)
|
check_params = (order_id, position)
|
||||||
@ -251,7 +251,7 @@ class InspectionDAO:
|
|||||||
if existing:
|
if existing:
|
||||||
# 更新已有记录
|
# 更新已有记录
|
||||||
update_sql = """
|
update_sql = """
|
||||||
UPDATE inspection_data
|
UPDATE wsbz_inspection_data
|
||||||
SET config_id = ?, value = ?, status = ?, remark = ?,
|
SET config_id = ?, value = ?, status = ?, remark = ?,
|
||||||
update_time = ?, update_by = ?, tray_id = ?
|
update_time = ?, update_by = ?, tray_id = ?
|
||||||
WHERE id = ?
|
WHERE id = ?
|
||||||
@ -264,7 +264,7 @@ class InspectionDAO:
|
|||||||
else:
|
else:
|
||||||
# 插入新记录
|
# 插入新记录
|
||||||
insert_sql = """
|
insert_sql = """
|
||||||
INSERT INTO inspection_data (
|
INSERT INTO wsbz_inspection_data (
|
||||||
order_id, position, config_id, value, status, remark,
|
order_id, position, config_id, value, status, remark,
|
||||||
create_time, create_by, is_deleted, tray_id
|
create_time, create_by, is_deleted, tray_id
|
||||||
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, FALSE, ?)
|
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, FALSE, ?)
|
||||||
@ -291,7 +291,7 @@ class InspectionDAO:
|
|||||||
# 先获取所有没有贴标的工程号
|
# 先获取所有没有贴标的工程号
|
||||||
sql_orders = """
|
sql_orders = """
|
||||||
SELECT DISTINCT d.order_id
|
SELECT DISTINCT d.order_id
|
||||||
FROM inspection_data d
|
FROM wsbz_inspection_data d
|
||||||
WHERE d.is_deleted = FALSE AND d.tray_id = ?
|
WHERE d.is_deleted = FALSE AND d.tray_id = ?
|
||||||
AND d.position = 11 AND COALESCE(d.value,'') = ''
|
AND d.position = 11 AND COALESCE(d.value,'') = ''
|
||||||
"""
|
"""
|
||||||
@ -310,8 +310,8 @@ class InspectionDAO:
|
|||||||
sql = f"""
|
sql = f"""
|
||||||
SELECT d.id, d.order_id, d.position, d.config_id, d.value, d.status, d.remark,
|
SELECT d.id, d.order_id, d.position, d.config_id, d.value, d.status, d.remark,
|
||||||
c.name, c.display_name, c.data_type, c.unit
|
c.name, c.display_name, c.data_type, c.unit
|
||||||
FROM inspection_data d
|
FROM wsbz_inspection_data d
|
||||||
LEFT JOIN inspection_config c ON d.config_id = c.id
|
LEFT JOIN wsbz_inspection_config c ON d.config_id = c.id
|
||||||
WHERE d.is_deleted = FALSE AND d.tray_id = ?
|
WHERE d.is_deleted = FALSE AND d.tray_id = ?
|
||||||
AND d.order_id IN ({placeholders})
|
AND d.order_id IN ({placeholders})
|
||||||
ORDER BY d.create_time, d.order_id, d.position
|
ORDER BY d.create_time, d.order_id, d.position
|
||||||
@ -355,8 +355,8 @@ class InspectionDAO:
|
|||||||
sql = """
|
sql = """
|
||||||
SELECT d.id, d.position, d.config_id, d.value, d.status, d.remark,
|
SELECT d.id, d.position, d.config_id, d.value, d.status, d.remark,
|
||||||
c.name, c.display_name, c.data_type, c.unit
|
c.name, c.display_name, c.data_type, c.unit
|
||||||
FROM inspection_data d
|
FROM wsbz_inspection_data d
|
||||||
LEFT JOIN inspection_config c ON d.config_id = c.id
|
LEFT JOIN wsbz_inspection_config c ON d.config_id = c.id
|
||||||
WHERE d.order_id = ? AND d.is_deleted = FALSE AND d.tray_id = ?
|
WHERE d.order_id = ? AND d.is_deleted = FALSE AND d.tray_id = ?
|
||||||
ORDER BY d.create_time, d.order_id, d.position
|
ORDER BY d.create_time, d.order_id, d.position
|
||||||
"""
|
"""
|
||||||
@ -405,7 +405,7 @@ class InspectionDAO:
|
|||||||
COALESCE(weight, 0) as weight,
|
COALESCE(weight, 0) as weight,
|
||||||
COALESCE(net_weight, 0) as net_weight,
|
COALESCE(net_weight, 0) as net_weight,
|
||||||
STRFTIME('%Y-%m-%d %H:%M:%S', pack_time) as pack_time
|
STRFTIME('%Y-%m-%d %H:%M:%S', pack_time) as pack_time
|
||||||
FROM inspection_pack_data
|
FROM wsbz_inspection_pack_data
|
||||||
WHERE tray_id = ?
|
WHERE tray_id = ?
|
||||||
AND is_deleted = FALSE
|
AND is_deleted = FALSE
|
||||||
ORDER BY pack_time DESC
|
ORDER BY pack_time DESC
|
||||||
@ -449,7 +449,7 @@ class InspectionDAO:
|
|||||||
"""
|
"""
|
||||||
try:
|
try:
|
||||||
sql = """
|
sql = """
|
||||||
UPDATE inspection_data
|
UPDATE wsbz_inspection_data
|
||||||
SET is_deleted = TRUE
|
SET is_deleted = TRUE
|
||||||
WHERE order_id = ? AND tray_id = ?
|
WHERE order_id = ? AND tray_id = ?
|
||||||
"""
|
"""
|
||||||
|
|||||||
139
dao/login_dao.py
139
dao/login_dao.py
@ -1,52 +1,99 @@
|
|||||||
from db.pgsql import PostgreSQL
|
from db.pgsql import PostgreSQL
|
||||||
from db.system_config_dao import SystemConfigDAO
|
from db.system_config_dao import SystemConfigDAO
|
||||||
|
import logging
|
||||||
|
|
||||||
|
class LoginDAO:
|
||||||
|
"""用户登录数据访问对象"""
|
||||||
|
|
||||||
|
def __init__(self):
|
||||||
|
"""初始化数据访问对象"""
|
||||||
|
self.db = PostgreSQL()
|
||||||
|
|
||||||
|
def __del__(self):
|
||||||
|
"""析构函数,确保数据库连接关闭"""
|
||||||
|
if hasattr(self, 'db'):
|
||||||
|
# 如果连接还打开着,确保关闭
|
||||||
|
try:
|
||||||
|
self.db.disconnect()
|
||||||
|
except:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def check_user_login(self, user_id: str, password: str) -> bool:
|
||||||
|
"""检查用户登录凭证
|
||||||
|
|
||||||
|
Args:
|
||||||
|
user_id: 用户ID
|
||||||
|
password: 用户密码
|
||||||
|
|
||||||
|
Returns:
|
||||||
|
bool: 登录是否成功
|
||||||
|
"""
|
||||||
|
try:
|
||||||
|
self.db.connect()
|
||||||
|
sql = "SELECT 1 FROM sys_user WHERE user_id=%s AND password=md5(%s)"
|
||||||
|
result = self.db.execute_query(sql, (user_id, password))
|
||||||
|
return bool(len(result) > 0)
|
||||||
|
except Exception as e:
|
||||||
|
logging.error(f"检查用户登录失败: {str(e)}")
|
||||||
|
return False
|
||||||
|
finally:
|
||||||
|
self.db.disconnect()
|
||||||
|
|
||||||
|
def get_user_info(self, user_id: str):
|
||||||
|
"""获取用户信息
|
||||||
|
|
||||||
|
Args:
|
||||||
|
user_id: 用户ID
|
||||||
|
|
||||||
|
Returns:
|
||||||
|
tuple: (用户名, 公司名, 公司ID, 职位ID) 或 (None, None, None, None)
|
||||||
|
"""
|
||||||
|
try:
|
||||||
|
self.db.connect()
|
||||||
|
sql = """
|
||||||
|
SELECT user_id, nick_name AS user_name, position_id,
|
||||||
|
f_getname('GETCORPEXP', '', '', org_id) AS corp_name,
|
||||||
|
org_id AS corp_id, default_org_id
|
||||||
|
FROM sys_user
|
||||||
|
WHERE user_id = %s
|
||||||
|
"""
|
||||||
|
result = self.db.execute_query(sql, (user_id,))
|
||||||
|
if result:
|
||||||
|
user_name = result[0]['user_name']
|
||||||
|
corp_name = result[0]['corp_name']
|
||||||
|
corp_id = result[0]['corp_id']
|
||||||
|
position_id = result[0]['position_id']
|
||||||
|
default_org_id = result[0]['default_org_id']
|
||||||
|
|
||||||
|
# 如果有默认账套ID,使用默认账套ID替代登录账套ID
|
||||||
|
if default_org_id:
|
||||||
|
corp_id = default_org_id
|
||||||
|
# 查询默认账套的名称
|
||||||
|
corp_name_sql = """
|
||||||
|
SELECT corp_exp
|
||||||
|
FROM sys_org
|
||||||
|
WHERE org_id = %s
|
||||||
|
"""
|
||||||
|
corp_result = self.db.execute_query(corp_name_sql, (corp_id,))
|
||||||
|
if corp_result:
|
||||||
|
corp_name = corp_result[0]['corp_exp']
|
||||||
|
|
||||||
|
# 将用户的当前账套ID保存到内存中
|
||||||
|
SystemConfigDAO.save_user_selected_corp(user_id, corp_id)
|
||||||
|
|
||||||
|
return user_name, corp_name, corp_id, position_id
|
||||||
|
return None, None, None, None
|
||||||
|
except Exception as e:
|
||||||
|
logging.error(f"获取用户信息失败: {str(e)}")
|
||||||
|
return None, None, None, None
|
||||||
|
finally:
|
||||||
|
self.db.disconnect()
|
||||||
|
|
||||||
|
# 为保持向后兼容,添加全局函数
|
||||||
def check_user_login(user_id: str, password: str) -> bool:
|
def check_user_login(user_id: str, password: str) -> bool:
|
||||||
db = PostgreSQL()
|
dao = LoginDAO()
|
||||||
try:
|
return dao.check_user_login(user_id, password)
|
||||||
db.connect()
|
|
||||||
sql = "SELECT 1 FROM sys_user WHERE user_id=%s AND password=md5(%s)"
|
|
||||||
result = db.execute_query(sql, (user_id, password))
|
|
||||||
return bool(len(result) > 0)
|
|
||||||
finally:
|
|
||||||
db.disconnect()
|
|
||||||
|
|
||||||
def get_user_info(user_id: str):
|
def get_user_info(user_id: str):
|
||||||
db = PostgreSQL()
|
dao = LoginDAO()
|
||||||
try:
|
return dao.get_user_info(user_id)
|
||||||
db.connect()
|
|
||||||
sql = """
|
|
||||||
SELECT user_id, nick_name AS user_name, position_id,
|
|
||||||
f_getname('GETCORPEXP', '', '', org_id) AS corp_name,
|
|
||||||
org_id AS corp_id, default_org_id
|
|
||||||
FROM sys_user
|
|
||||||
WHERE user_id = %s
|
|
||||||
"""
|
|
||||||
result = db.execute_query(sql, (user_id,))
|
|
||||||
if result:
|
|
||||||
user_name = result[0]['user_name']
|
|
||||||
corp_name = result[0]['corp_name']
|
|
||||||
corp_id = result[0]['corp_id']
|
|
||||||
position_id = result[0]['position_id']
|
|
||||||
default_org_id = result[0]['default_org_id']
|
|
||||||
|
|
||||||
# 如果有默认账套ID,使用默认账套ID替代登录账套ID
|
|
||||||
if default_org_id:
|
|
||||||
corp_id = default_org_id
|
|
||||||
# 查询默认账套的名称
|
|
||||||
corp_name_sql = """
|
|
||||||
SELECT corp_exp
|
|
||||||
FROM sys_org
|
|
||||||
WHERE org_id = %s
|
|
||||||
"""
|
|
||||||
corp_result = db.execute_query(corp_name_sql, (corp_id,))
|
|
||||||
if corp_result:
|
|
||||||
corp_name = corp_result[0]['corp_exp']
|
|
||||||
|
|
||||||
# 将用户的当前账套ID保存到内存中
|
|
||||||
SystemConfigDAO.save_user_selected_corp(user_id, corp_id)
|
|
||||||
|
|
||||||
return user_name, corp_name, corp_id, position_id
|
|
||||||
return None, None, None, None
|
|
||||||
finally:
|
|
||||||
db.disconnect()
|
|
||||||
@ -27,7 +27,7 @@ class PalletTypeDAO:
|
|||||||
if include_disabled:
|
if include_disabled:
|
||||||
sql = """
|
sql = """
|
||||||
SELECT id, type_name, operation_type, description, enabled, sort_order
|
SELECT id, type_name, operation_type, description, enabled, sort_order
|
||||||
FROM pallet_types
|
FROM wsbz_pallet_types
|
||||||
WHERE is_deleted = FALSE
|
WHERE is_deleted = FALSE
|
||||||
ORDER BY sort_order
|
ORDER BY sort_order
|
||||||
"""
|
"""
|
||||||
@ -35,7 +35,7 @@ class PalletTypeDAO:
|
|||||||
else:
|
else:
|
||||||
sql = """
|
sql = """
|
||||||
SELECT id, type_name, operation_type, description, enabled, sort_order
|
SELECT id, type_name, operation_type, description, enabled, sort_order
|
||||||
FROM pallet_types
|
FROM wsbz_pallet_types
|
||||||
WHERE is_deleted = FALSE AND enabled = TRUE
|
WHERE is_deleted = FALSE AND enabled = TRUE
|
||||||
ORDER BY sort_order
|
ORDER BY sort_order
|
||||||
"""
|
"""
|
||||||
@ -73,8 +73,8 @@ class PalletTypeDAO:
|
|||||||
try:
|
try:
|
||||||
sql = """
|
sql = """
|
||||||
SELECT DISTINCT sort_order
|
SELECT DISTINCT sort_order
|
||||||
FROM pallet_archives t1
|
FROM wsbz_pallet_archives t1
|
||||||
LEFT JOIN pallet_types t2 ON t1.type_id = t2.id
|
LEFT JOIN wsbz_pallet_types t2 ON t1.type_id = t2.id
|
||||||
WHERE pallet_id = ? AND t1.is_deleted = FALSE
|
WHERE pallet_id = ? AND t1.is_deleted = FALSE
|
||||||
"""
|
"""
|
||||||
params = (pallet_id,)
|
params = (pallet_id,)
|
||||||
@ -100,7 +100,7 @@ class PalletTypeDAO:
|
|||||||
if include_disabled:
|
if include_disabled:
|
||||||
sql = """
|
sql = """
|
||||||
SELECT id, type_name, operation_type, description, enabled, sort_order
|
SELECT id, type_name, operation_type, description, enabled, sort_order
|
||||||
FROM pallet_types
|
FROM wsbz_pallet_types
|
||||||
WHERE operation_type = ? AND is_deleted = FALSE
|
WHERE operation_type = ? AND is_deleted = FALSE
|
||||||
ORDER BY sort_order
|
ORDER BY sort_order
|
||||||
"""
|
"""
|
||||||
@ -108,7 +108,7 @@ class PalletTypeDAO:
|
|||||||
else:
|
else:
|
||||||
sql = """
|
sql = """
|
||||||
SELECT id, type_name, operation_type, description, enabled, sort_order
|
SELECT id, type_name, operation_type, description, enabled, sort_order
|
||||||
FROM pallet_types
|
FROM wsbz_pallet_types
|
||||||
WHERE operation_type = ? AND is_deleted = FALSE AND enabled = TRUE
|
WHERE operation_type = ? AND is_deleted = FALSE AND enabled = TRUE
|
||||||
ORDER BY sort_order
|
ORDER BY sort_order
|
||||||
"""
|
"""
|
||||||
@ -145,7 +145,7 @@ class PalletTypeDAO:
|
|||||||
try:
|
try:
|
||||||
sql = """
|
sql = """
|
||||||
SELECT id, type_name, operation_type, description, enabled, sort_order
|
SELECT id, type_name, operation_type, description, enabled, sort_order
|
||||||
FROM pallet_types
|
FROM wsbz_pallet_types
|
||||||
WHERE id = ? AND is_deleted = FALSE
|
WHERE id = ? AND is_deleted = FALSE
|
||||||
"""
|
"""
|
||||||
params = (pallet_type_id,)
|
params = (pallet_type_id,)
|
||||||
@ -178,7 +178,7 @@ class PalletTypeDAO:
|
|||||||
try:
|
try:
|
||||||
sql = """
|
sql = """
|
||||||
SELECT id, type_name, operation_type, description, enabled, sort_order
|
SELECT id, type_name, operation_type, description, enabled, sort_order
|
||||||
FROM pallet_types
|
FROM wsbz_pallet_types
|
||||||
WHERE type_name = ? AND is_deleted = FALSE
|
WHERE type_name = ? AND is_deleted = FALSE
|
||||||
"""
|
"""
|
||||||
params = (pallet_type, )
|
params = (pallet_type, )
|
||||||
@ -203,7 +203,7 @@ class PalletTypeDAO:
|
|||||||
current_time = datetime.now().strftime('%Y-%m-%d %H:%M:%S')
|
current_time = datetime.now().strftime('%Y-%m-%d %H:%M:%S')
|
||||||
|
|
||||||
sql = """
|
sql = """
|
||||||
INSERT INTO pallet_types (
|
INSERT INTO wsbz_pallet_types (
|
||||||
type_name, operation_type, description, enabled, sort_order,
|
type_name, operation_type, description, enabled, sort_order,
|
||||||
create_time, create_by, update_time, update_by, is_deleted
|
create_time, create_by, update_time, update_by, is_deleted
|
||||||
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
||||||
@ -272,7 +272,7 @@ class PalletTypeDAO:
|
|||||||
|
|
||||||
# 构建SQL
|
# 构建SQL
|
||||||
sql = f"""
|
sql = f"""
|
||||||
UPDATE pallet_types
|
UPDATE wsbz_pallet_types
|
||||||
SET {', '.join(update_fields)}
|
SET {', '.join(update_fields)}
|
||||||
WHERE id = ?
|
WHERE id = ?
|
||||||
"""
|
"""
|
||||||
@ -297,7 +297,7 @@ class PalletTypeDAO:
|
|||||||
current_time = datetime.now().strftime('%Y-%m-%d %H:%M:%S')
|
current_time = datetime.now().strftime('%Y-%m-%d %H:%M:%S')
|
||||||
|
|
||||||
sql = """
|
sql = """
|
||||||
UPDATE pallet_types
|
UPDATE wsbz_pallet_types
|
||||||
SET is_deleted = TRUE, update_time = ?, update_by = ?
|
SET is_deleted = TRUE, update_time = ?, update_by = ?
|
||||||
WHERE id = ?
|
WHERE id = ?
|
||||||
"""
|
"""
|
||||||
@ -324,7 +324,7 @@ class PalletTypeDAO:
|
|||||||
current_time = datetime.now().strftime('%Y-%m-%d %H:%M:%S')
|
current_time = datetime.now().strftime('%Y-%m-%d %H:%M:%S')
|
||||||
|
|
||||||
sql = """
|
sql = """
|
||||||
UPDATE pallet_types
|
UPDATE wsbz_pallet_types
|
||||||
SET enabled = ?, update_time = ?, update_by = ?
|
SET enabled = ?, update_time = ?, update_by = ?
|
||||||
WHERE id = ? AND is_deleted = FALSE
|
WHERE id = ? AND is_deleted = FALSE
|
||||||
"""
|
"""
|
||||||
|
|||||||
BIN
db/jtDB.db
BIN
db/jtDB.db
Binary file not shown.
@ -12,7 +12,7 @@ def check_user_login(user_id, password):
|
|||||||
try:
|
try:
|
||||||
# 始终使用SQLite数据源验证登录
|
# 始终使用SQLite数据源验证登录
|
||||||
db = SQLUtils(source_name='sqlite')
|
db = SQLUtils(source_name='sqlite')
|
||||||
db.execute_query("SELECT id FROM user WHERE username = ? AND password = ? AND is_deleted = 0", (user_id, password))
|
db.execute_query("SELECT id FROM wsbz_user WHERE username = ? AND password = ? AND is_deleted = 0", (user_id, password))
|
||||||
result = db.fetchone()
|
result = db.fetchone()
|
||||||
db.close()
|
db.close()
|
||||||
return result is not None
|
return result is not None
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user