-- ============================================ -- 创建大项目部老师工资统计表 -- 功能:存储大项目部老师每月的工资计算数据,包括底薪、业绩提成、扣款、补贴、奖金、支付等信息 -- 创建时间:2025年 -- ============================================ -- 删除表(如果存在) DROP TABLE IF EXISTS lq_major_project_teacher_salary_statistics; -- ============================================ -- 创建大项目部老师工资统计表 -- ============================================ CREATE TABLE lq_major_project_teacher_salary_statistics ( -- 主键 F_Id VARCHAR(50) NOT NULL COMMENT '主键ID', -- 一、基础信息字段 F_StatisticsMonth VARCHAR(6) NOT NULL COMMENT '统计月份(YYYYMM格式)', F_StoreId VARCHAR(50) NOT NULL COMMENT '门店ID', F_StoreName VARCHAR(200) NOT NULL COMMENT '门店名称', F_Position VARCHAR(50) NOT NULL DEFAULT '大项目部老师' COMMENT '核算岗位(固定为"大项目部老师")', F_EmployeeName VARCHAR(100) NOT NULL COMMENT '员工姓名', F_EmployeeId VARCHAR(50) NOT NULL COMMENT '员工ID', F_EmployeeAccount VARCHAR(100) NULL COMMENT '员工账号', F_StoreType INT NULL COMMENT '门店类型(200平/旗舰店)', F_StoreCategory INT NULL COMMENT '门店分类(1=A类,2=B类,3=C类)', F_IsNewStore VARCHAR(10) NULL COMMENT '是否新店(是/否)', F_NewStoreProtectionStage INT NOT NULL DEFAULT 0 COMMENT '新店保护阶段(0/1/2)', -- 二、业绩相关字段 F_OrderAchievement DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '开单业绩(从lq_kd_kjbsyj表统计,根据归属表关联)', F_ConsumeAchievement DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '消耗业绩(从lq_xh_kjbsyj表统计,根据归属表关联)', F_RefundAchievement DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '退卡业绩(从lq_hytk_kjbsyj表统计,根据归属表关联)', F_TotalPerformance DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '总业绩(开单业绩 + 消耗业绩 + 退卡业绩,用于业绩提成计算)', -- 三、底薪相关字段 F_BaseSalary DECIMAL(18,2) NOT NULL DEFAULT 3000.00 COMMENT '底薪金额(固定3000元)', -- 四、业绩提成相关字段 F_PerformanceCommissionRate DECIMAL(18,4) NOT NULL DEFAULT 0.0000 COMMENT '业绩提成比例(百分比,如2.00表示2%,0.00表示无提成)', F_PerformanceCommissionAmount DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '业绩提成金额(总业绩 × 业绩提成比例,阶梯式计算)', F_TotalCommission DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '提成合计(业绩提成金额)', -- 五、其他收入字段 F_HandworkFee DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '手工费', F_TransportationAllowance DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '车补', F_LessRest DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '少休费', F_FullAttendance DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '全勤奖', -- 六、考勤相关字段 F_WorkingDays DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '在店天数', F_LeaveDays DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '请假天数', -- 七、工资计算字段 F_CalculatedGrossSalary DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '核算应发工资(底薪 + 提成合计 + 其他收入)', F_GuaranteedSalary DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '保底工资', F_GuaranteedLeaveDeduction DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '保底请假扣款', F_GuaranteedBaseSalary DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '保底底薪', F_GuaranteedSupplement DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '保底补差', F_FinalGrossSalary DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '最终应发工资(取核算应发工资和保底工资的较大值)', -- 八、补贴相关字段 F_MonthlyTrainingSubsidy DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '当月培训补贴', F_MonthlyTransportSubsidy DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '当月交通补贴', F_LastMonthTrainingSubsidy DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '上月培训补贴', F_LastMonthTransportSubsidy DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '上月交通补贴', F_TotalSubsidy DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '补贴合计', -- 九、扣款相关字段 F_MissingCard DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '缺卡扣款', F_LateArrival DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '迟到扣款', F_LeaveDeduction DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '请假扣款', F_SocialInsuranceDeduction DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '扣社保', F_RewardDeduction DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '扣除奖励', F_AccommodationDeduction DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '扣住宿费', F_StudyPeriodDeduction DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '扣学习期费用', F_WorkClothesDeduction DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '扣工作服费用', F_TotalDeduction DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '扣款合计', -- 十、奖金相关字段 F_Bonus DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '发奖金', F_ReturnPhoneDeposit DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '退手机押金', F_ReturnAccommodationDeposit DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '退住宿押金', -- 十一、支付相关字段 F_ActualSalary DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '实发工资(最终应发工资 - 扣款合计 + 补贴合计 + 奖金)', F_MonthlyPaymentStatus VARCHAR(20) NOT NULL DEFAULT '未发放' COMMENT '当月是否发放(已发放/未发放/部分发放)', F_PaidAmount DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '支付金额', F_PendingAmount DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '待支付金额', F_LastMonthSupplement DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '补发上月', F_MonthlyTotalPayment DECIMAL(18,2) NOT NULL DEFAULT 0.00 COMMENT '当月支付总额', -- 十二、系统字段 F_IsLocked INT NOT NULL DEFAULT 0 COMMENT '是否锁定(0=未锁定,1=已锁定)', F_IsTerminated INT NOT NULL DEFAULT 0 COMMENT '是否离职(0=在职,1=离职)', F_CreateTime DATETIME NOT NULL COMMENT '创建时间', F_UpdateTime DATETIME NOT NULL COMMENT '更新时间', F_CreateUser VARCHAR(50) NULL COMMENT '创建人', F_UpdateUser VARCHAR(50) NULL COMMENT '更新人', -- 主键约束 PRIMARY KEY (F_Id), -- 唯一索引:确保同一员工同一月份只有一条记录 UNIQUE KEY `uk_employee_month` (F_EmployeeId, F_StatisticsMonth), -- 普通索引 KEY `idx_store_id` (F_StoreId), KEY `idx_statistics_month` (F_StatisticsMonth), KEY `idx_employee_id` (F_EmployeeId), KEY `idx_employee_account` (F_EmployeeAccount), KEY `idx_store_category` (F_StoreCategory), KEY `idx_is_terminated` (F_IsTerminated), KEY `idx_create_time` (F_CreateTime) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='大项目部老师工资统计表'; -- ============================================ -- 表结构说明 -- ============================================ /* 表名:lq_major_project_teacher_salary_statistics(大项目部老师工资统计表) 功能说明: 1. 存储大项目部老师每月的工资计算数据 2. 包括底薪、业绩提成、扣款、补贴、奖金、支付等信息 3. 支持按门店、员工、月份查询 主要字段说明: - F_BaseSalary:底薪(固定3000元) - F_TotalPerformance:总业绩(开单业绩 + 消耗业绩 + 退卡业绩),用于计算业绩提成 - F_PerformanceCommissionRate:业绩提成比例(阶梯式:≤20万无提成,>20万且≤100万为2%,>100万为2.5%) - F_PerformanceCommissionAmount:业绩提成金额(总业绩 × 业绩提成比例) - F_TotalCommission:提成合计(等于业绩提成金额) 数据来源: - 老师归属:lq_md_major_project_teacher_assignment 表(每个月归属不一样) - 开单业绩:lq_kd_kjbsyj 表(根据归属表关联) - 消耗业绩:lq_xh_kjbsyj 表(根据归属表关联) - 退卡业绩:lq_hytk_kjbsyj 表(根据归属表关联) 计算公式: - 总业绩 = 开单业绩 + 消耗业绩 + 退卡业绩 - 业绩提成计算(阶梯式): * 总业绩 ≤ 20万:无提成(0%) * 总业绩 > 20万 且 ≤ 100万:2% * 总业绩 > 100万:2.5% - 提成金额 = 总业绩 × 对应提成比例 - 核算应发工资 = 底薪(3000) + 提成合计 + 其他收入 - 最终应发工资 = MAX(核算应发工资, 保底工资) - 实发工资 = 最终应发工资 - 扣款合计 + 补贴合计 + 奖金 索引说明: - 主键索引:F_Id - 唯一索引:F_EmployeeId + F_StatisticsMonth(确保同一员工同一月份只有一条记录) - 普通索引: - F_StoreId:按门店查询 - F_StatisticsMonth:按月份查询 - F_EmployeeId:按员工查询 - F_StoreCategory:按门店分类查询 - F_CreateTime:按创建时间查询 数据校验要求: 1. 底薪固定为3000元 2. 业绩提成必须按照阶梯式计算 3. 总业绩必须从归属表关联的业绩数据中统计 */