| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110 |
- DROP PROCEDURE IF EXISTS `CALCINIT`;
- delimiter ;;
- CREATE PROCEDURE `CALCINIT`(IN `PCPID` INT, IN `PCALCMONTH` TINYINT, IN `PCALCYEAR` INT)
- BEGIN
- DECLARE
- AC_USER_NO INT; -- 邀请会员达标数
- DECLARE
- MLIMITPV, -- 邀请会员不及格达标PV
- AC_PERF_PV DECIMAL ( 10, 2 ); -- 邀请会员及格达标PV
- -- 查询第一个级别的邀请会员数、达标PV值以及等奖比例
- SELECT
- T.ACHIEVE_PV,
- T.ACHIEVE_PERF_PV,
- T.ACHIEVE_MEMBER_NUM
- INTO MLIMITPV, AC_PERF_PV, AC_USER_NO
- FROM
- AR_EMPLOY_LEVEL T
- WHERE
- T.ID = 'E121497617216708615';
- INSERT INTO AR_BS_BONUS_103_CALC (
- LAST_DEC_LV,
- LAST_EMP_LV,
- LAST_STATUS,
- USER_ID,
- INTRODUCER_ID,
- LAYER,
- PV,
- GPV10,
- GPV,
- GPV_4_CALC,
- USER_TYPE10,
- USER_TYPE,
- BONUS10,
- BONUS20,
- BONUS30,
- BONUS40,
- BONUS50,
- BONUS60,
- BONUS70,
- BONUS80,
- BONUS90,
- BONUS100,
- BONUS110,
- BONUS,
- PRODUCT_POINT,
- CALC_PERIOD_ID,
- ACHIEVE_MEMBER_NUM,
- ACHIEVE_PERF_PV
- ) SELECT
- AU.LAST_DEC_LV,
- AU.EMP_LV,
- AU.STATUS,
- AU.ID,
- IFNULL( AURN.PARENT_UID, 0 ),
- AURN.TOP_DEEP,
- IFNULL( AO.PV, 0 ),
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- PCPID,
- IFNULL(DO.ACHIEVE_MEMBER_NUM, 0),
- IF(DO.ACHIEVE_MEMBER_NUM >= AC_USER_NO, AC_PERF_PV, MLIMITPV)
- FROM
- AR_USER AU
- INNER JOIN AR_USER_RELATION_NEW AURN ON AU.ID = AURN.USER_ID
- LEFT JOIN (
- SELECT
- USER_ID,
- SUM( PV ) PV
- FROM
- AR_PERF_ORDER
- WHERE
- PERIOD_NUM IN ( SELECT PERIOD_NUM FROM AR_PERIOD WHERE CALC_YEAR = PCALCYEAR AND CALC_MONTH = PCALCMONTH )
- GROUP BY
- USER_ID
- ) AO ON AO.USER_ID = AU.ID
- LEFT JOIN (
- SELECT
- R.PARENT_UID,
- COUNT(R.USER_ID) AS ACHIEVE_MEMBER_NUM
- FROM
- AR_PERF_ORDER O
- INNER JOIN AR_USER_RELATION_NEW R ON O.USER_ID = R.USER_ID
- WHERE
- O.DEC_TYPE = 'ZC' AND O.PERIOD_NUM IN ( SELECT PERIOD_NUM FROM AR_PERIOD WHERE CALC_YEAR = PCALCYEAR AND CALC_MONTH = PCALCMONTH )
- GROUP BY R.PARENT_UID
- ) DO ON DO.PARENT_UID = AU.ID
- WHERE
- AU.DELETED = 0;
- END
- ;;
|