大项目主管工资计算规则梳理.md
8.65 KB
大项目主管工资计算规则梳理
📋 目录
📋 概述
大项目主管工资由以下几个部分组成:
- 底薪:固定3500元
- 业绩提成:根据管理的所有门店的总业绩分段提成
重要说明:
- 底薪固定为3500元,不设档位,不设条件
- 大项目主管从
BASE_USER表获取,岗位字段(F_GW)为"主管",组织ID为大项目一部或大项目二部 - 每个大项目主管管理的门店归属在
lq_md_target表中(通过F_MajorProjectDepartment字段) - 需要统计该大项目主管管理的所有门店的总业绩(开单-退卡)
- 只统计医美类型的业绩(从
lq_kd_jksyj表统计医美类型的健康师业绩,从lq_hytk_mx表统计医美类型的退卡金额) - 提成采用分段累进式计算
💰 计算规则
1. 底薪规则
固定底薪:3500元
- 无论业绩多少,底薪固定为3500元
- 不设档位,不设条件
- 不设考核扣款
2. 业绩提成规则
提成计算方式:根据管理的所有门店的总业绩分段累进式计算
| 业绩区间 | 提成比例 | 说明 |
|---|---|---|
| ≤ 50万 | 0% | 无提成资格 |
| > 50万 | 分段计算 | 有提成资格后,0-70万部分按1%,70万以上部分按1.5% |
计算说明:
- 采用分段累进式计算,不同区间按不同比例分别计算后累加
- 必须大于50万才有提成资格
- 如果有提成资格后:
- 0-70万部分:1%(整个0-70万部分都按1%计算)
- 70万以上部分:1.5%
计算公式(分段累进):
如果 总业绩 ≤ 50万:提成 = 0(无提成资格)
如果 50万 < 总业绩 ≤ 70万:提成 = 总业绩 × 1%
如果 总业绩 > 70万:提成 = 70万 × 1% + (总业绩 - 70万) × 1.5%
示例:
- 总业绩 = 40万 → 提成 = 0(无提成资格,未达到50万门槛)
- 总业绩 = 60万 → 提成 = 60万 × 1% = 6,000元
- 总业绩 = 80万 → 提成 = 70万 × 1% + (80万 - 70万) × 1.5% = 7,000 + 1,500 = 8,500元
📊 数据来源
大项目主管识别
数据来源:BASE_USER 表
识别条件:
F_GW(岗位字段)为"主管"F_OrganizeId(组织ID)在大项目一部或大项目二部的组织ID列表中F_DeleteMark == null(未删除)F_EnabledMark == 1(已启用)
获取步骤:
- 从
BASE_ORGANIZE表查找组织名称包含"大项目一部"或"大项目二部"的组织 - 获取这些组织的ID列表
- 从
BASE_USER表查询岗位为"主管"且组织ID在上述组织ID列表中的员工
说明:
- 目前有"大项目一部"和"大项目二部",未来可能还有更多大项目部
- 岗位字段值必须是"主管"(完全匹配)
管理的门店归属
数据来源:lq_md_target 表
关联关系:
- 通过
F_MajorProjectDepartment字段关联到BASE_ORGANIZE.F_Id(大项目一部或大项目二部的组织ID) - 通过
F_StoreId字段关联到lq_mdxx.F_Id - 通过
F_Month字段(YYYYMM格式)关联到统计月份
获取逻辑:
- 从
lq_md_target表查询指定月份(F_Month = @统计月份)的记录 - 筛选出
F_MajorProjectDepartment = @大项目一部组织ID或F_MajorProjectDepartment = @大项目二部组织ID的记录 - 获取这些记录的
F_StoreId列表,即为该大项目主管管理的门店
重要说明:
- 每个大项目主管可能管理多个门店
- 需要统计这些门店的总业绩(开单-退卡)总和
- 如果某个门店在
lq_md_target表中没有记录,则该门店的业绩不计入该大项目主管的统计
总业绩统计
定义:该大项目主管管理的所有门店中,医美类型的开单金额总和减去退卡金额总和
重要说明:只统计医美类型的业绩
数据来源表及字段:
| 业绩类型 | 数据表 | 字段 | 说明 |
|---|---|---|---|
| 开单金额 | lq_kd_jksyj |
Jksyj |
医美类型的健康师业绩(ItemCategory == "医美") |
| 退卡金额 | lq_hytk_mx |
Tkje |
医美类型的退卡金额(ItemCategory == "医美") |
统计逻辑:
统计开单金额(只统计医美类型):
- 从
lq_kd_jksyj表关联lq_kd_kdjlb表 - 条件:
ItemCategory == "医美",F_IsEffective = 1,djmd IN (@管理的门店ID列表),Kdrq在统计月份范围内 - 统计
Jksyj字段(健康师业绩)的总和
- 从
统计退卡金额(只统计医美类型):
- 从
lq_hytk_mx表关联lq_hytk_hytk表 - 条件:
ItemCategory == "医美",F_IsEffective = 1,md IN (@管理的门店ID列表),Tksj在统计月份范围内 - 统计
Tkje字段(退卡金额)的总和
- 从
计算净总业绩:
- 净总业绩 = 开单金额 - 退卡金额
🔗 归属规则
大项目主管与门店的归属关系
数据来源:lq_md_target 表
表结构说明:
F_Id:主键IDF_StoreId:门店ID(关联lq_mdxx.F_Id)F_Month:月份(YYYYMM格式)F_MajorProjectDepartment:归属大项目部(关联BASE_ORGANIZE.F_Id)
获取管理的门店:
从
lq_md_target表查询:SELECT DISTINCT F_StoreId FROM lq_md_target WHERE F_MajorProjectDepartment = @大项目一部或大项目二部组织ID AND F_Month = @统计月份如果该大项目主管在指定月份没有管理的门店,则总业绩为0,提成为0
重要说明:
- 每个大项目主管可能管理多个门店
- 需要统计这些门店的总业绩(开单-退卡)总和
- 如果某个门店在
lq_md_target表中没有记录,则该门店的业绩不计入该大项目主管的统计
🔄 计算流程
步骤1:识别大项目主管
从
BASE_ORGANIZE表中筛选:F_FullName LIKE '%大项目一部%'或F_FullName LIKE '%大项目二部%'F_DeleteMark == null(未删除)F_EnabledMark == 1(已启用)
获取这些组织的ID列表
从
BASE_USER表中筛选:F_GW == "主管"(岗位为"主管")F_OrganizeId在上述组织ID列表中F_DeleteMark == null(未删除)F_EnabledMark == 1(已启用)
步骤2:获取管理的门店
- 从
lq_md_target表查询指定月份(F_Month = @统计月份)的记录 - 筛选出
F_MajorProjectDepartment = @大项目一部组织ID或F_MajorProjectDepartment = @大项目二部组织ID的记录 - 获取这些记录的
F_StoreId列表,即为该大项目主管管理的门店
步骤3:统计总业绩
统计开单金额:
- 从
lq_kd_kdjlb表统计管理的门店在统计月份的开单金额(sfyj字段) - 过滤条件:
F_IsEffective = 1,djmd IN (@管理的门店ID列表),DATE_FORMAT(kdrq, '%Y%m') = @统计月份
- 从
统计退卡金额:
- 从
lq_hytk_hytk表统计管理的门店在统计月份的退卡金额(F_ActualRefundAmount或tkje字段) - 过滤条件:
F_IsEffective = 1,djmd IN (@管理的门店ID列表),DATE_FORMAT(tkrq, '%Y%m') = @统计月份
- 从
计算净总业绩:
- 净总业绩 = 开单金额 - 退卡金额
步骤4:计算提成
根据总业绩分段累进计算提成:
- 如果总业绩 ≤ 50万:提成 = 0(无提成资格)
- 如果 50万
- 如果总业绩 > 70万:提成 = 70万 × 1% + (总业绩 - 70万) × 1.5%
步骤5:计算应发工资
- 应发工资 = 底薪(3500元)+ 提成金额
步骤6:保存数据
将计算结果保存到 lq_major_project_director_salary_statistics 表中:
- 如果已存在当月数据,则更新;否则插入新数据
- 保存门店明细(JSON格式)
✅ 总结
大项目主管工资计算规则相对简单明确:
- 底薪固定:3500元,无任何条件
- 业绩提成:根据管理的所有门店的总业绩分段计算,最高1.5%,低于50万无提成
关键点:
- 必须从
BASE_USER表识别大项目主管(岗位为"主管",组织ID为大项目一部或大项目二部) - 必须从
lq_md_target表获取管理的门店(通过F_MajorProjectDepartment字段) - 必须正确统计总业绩(开单金额 - 退卡金额)
- 必须按管理的门店筛选,只统计该大项目主管管理的门店
- 采用分段累进式计算提成,不同区间按不同比例分别计算后累加