SAP PS 外围创建WBS 实例

SPAN {
font-family: “隶书”;
font-size: 10pt;
color: #000000;
background: #FFFFFF;
}
.L0S31 {
font-style: italic;
color: #808080;
}
.L0S32 {
color: #3399FF;
}
.L0S33 {
color: #4DA619;
}
.L0S52 {
color: #0000FF;
}
.L0S55 {
color: #800080;
}
.L0S70 {
color: #808080;
}

"要删除的WBS信息

wa_e_project_wbs_del TYPE bapi_wbs_list,

lt_e_project_wbs_del TYPE STANDARD TABLE OF bapi_wbs_list.

"下达

DATA:lv_proj       TYPE bapipr-project_definition,

lv_ud_sys_sta TYPE bapi_system_status-system_status,

lv_ud_usr_sta TYPE bapi_user_status-user_status,

lv_sys_sta    TYPE bapi_system_status-system_status,

lv_usr_sta    TYPE bapi_user_status-user_status,

lt_result     TYPE STANDARD TABLE OF bapi_status_result,

ls_ret        TYPE bapi_status_result,

lt_return     TYPE STANDARD TABLE OF bapiret2,

ls_return     TYPE  bapiret2.

LOOP AT   input-mt_ps_wbs-msgbd  INTO DATA(ls_input).

"校验

IF ls_input-psphi IS INITIAL.

"错误反馈

ls_output_bd-msgid     = input-mt_ps_wbs-msghd-msgid.

ls_output_bd-itemid    = ls_input-itemid.

*        ls_output_bd-order1    = ls_body-anln1.

ls_output_bd-rettxt    =  ‘关键字段 项目号 不能为空’.

ls_output_bd-retid     = ‘0’.

APPEND ls_output_bd TO  lt_output_bd.

CONTINUE.

ENDIF.

IF  ls_input-posnr IS INITIAL .

"错误反馈

ls_output_bd-msgid     = input-mt_ps_wbs-msghd-msgid.

ls_output_bd-itemid    = ls_input-itemid.

*        ls_output_bd-order1    = ls_body-anln1.

ls_output_bd-rettxt    =  ‘关键字段 WBS要素 不能为空’.

ls_output_bd-retid     = ‘0’.

APPEND ls_output_bd TO  lt_output_bd.

CONTINUE.

ENDIF.

IF  ls_input-zflag   IS INITIAL.

"错误反馈

ls_output_bd-msgid     = input-mt_ps_wbs-msghd-msgid.

ls_output_bd-itemid    = ls_input-itemid.

*        ls_output_bd-order1    = ls_body-anln1.

ls_output_bd-rettxt    =  ‘关键字段 维护类型 不能为空’.

ls_output_bd-retid     = ‘0’.

APPEND ls_output_bd TO  lt_output_bd.

CONTINUE.

ENDIF.

"写入自建表

ls_zpswbs-itemid     = ls_input-itemid.

ls_zpswbs-zflag      = ls_input-zflag.

ls_zpswbs-posnr      = ls_input-posnr.

ls_zpswbs-psphi      = ls_input-psphi.

ls_zpswbs-post1      = ls_input-post1.

ls_zpswbs-up         = ls_input-up.

ls_zpswbs-zleft      = ls_input-left.

ls_zpswbs-zsapjsdat  = sy-datum .

ls_zpswbs-zsapjstim  = sy-uzeit.

MODIFY zpswbs FROM ls_zpswbs.

COMMIT WORK.

IF ls_input-zflag = ‘I’.

CLEAR:it_bapi_bus2054_new.

"项目定义

ld_project_definition = ls_input-psphi.

"WBS

wa_bapi_bus2054_new-wbs_element                    = ls_input-posnr.     "工作分解结构元素 (WBS 元素)

wa_bapi_bus2054_new-description                    = ls_input-post1.     "PS: 短描述 (第一行文本)

wa_bapi_bus2054_new-wbs_up                         = ls_input-up.

wa_bapi_bus2054_new-wbs_left                       = ls_input-left.

*          wa_bapi_bus2054_new-responsible_no                 = ‘’.         "负责人编号

*          wa_bapi_bus2054_new-statistical                    = ‘’.     "统计

*          wa_bapi_bus2054_new-wbs_cctr_posted_actual         = ‘’.     "CCtr 过账

APPEND wa_bapi_bus2054_new TO it_bapi_bus2054_new.

CLEAR:wa_bapi_bus2054_new.

"第三步:调用函数

CALL FUNCTION ‘BAPI_PS_INITIALIZATION’.

CALL FUNCTION ‘BAPI_BUS2054_CREATE_MULTI’

EXPORTING

i_project_definition = ld_project_definition

TABLES

it_wbs_element       = it_bapi_bus2054_new

et_return            = it_bapiretwbs.

"第四步:判断是否有错误消息

LOOP AT it_bapiretwbs INTO wa_bapiretwbs WHERE type CA ‘AE’.

MESSAGE ID wa_bapiretwbs-id TYPE wa_bapiretwbs-type NUMBER wa_bapiretwbs-number

INTO wa_bapiretwbs-message

WITH wa_bapiretwbs-message_v1 wa_bapiretwbs-message_v2.

ENDLOOP.

"第四步:如果有错误消息则退出

IF sy-subrc EQ 0.

CALL FUNCTION ‘PS_FLAG_INIT_GLOBAL_FLAGS’.

CALL FUNCTION ‘PS_FLAG_SET_GLOBAL_FLAGS’

EXPORTING

i_precommit_ok = ‘Y’.

"错误反馈

ls_output_bd-msgid     = input-mt_ps_wbs-msghd-msgid.

ls_output_bd-itemid    = ls_input-itemid.

*        ls_output_bd-order1    = ls_body-anln1.

ls_output_bd-rettxt    =  wa_bapiretwbs-message.

ls_output_bd-retid     = ‘0’.

APPEND ls_output_bd TO  lt_output_bd.

CLEAR :it_bapi_bus2054_new,it_bapiretwbs.

ENDIF.

CHECK sy-subrc NE 0.

"第四步:没有错误消息则执行预提交

CALL FUNCTION ‘BAPI_PS_PRECOMMIT’

TABLES

et_return = it_bapiretwbs.

LOOP AT it_bapiretwbs INTO wa_bapiretwbs WHERE type CA ‘AE’.

MESSAGE ID wa_bapiretwbs-id TYPE wa_bapiretwbs-type NUMBER wa_bapiretwbs-number

INTO wa_bapiretwbs-message

WITH wa_bapiretwbs-message_v1 wa_bapiretwbs-message_v2

wa_bapiretwbs-message_v3 wa_bapiretwbs-message_v4.

ENDLOOP.

"第五步:预提交有错误消息则执行回滚

IF sy-subrc EQ 0.

CALL FUNCTION ‘BAPI_TRANSACTION_ROLLBACK’.

*            IMPORTING

*              return = it_bapiretwbs.

CALL FUNCTION ‘PS_FLAG_INIT_GLOBAL_FLAGS’.

CALL FUNCTION ‘PS_FLAG_SET_GLOBAL_FLAGS’

EXPORTING

i_precommit_ok = ‘Y’.

"错误反馈

ls_output_bd-msgid     = input-mt_ps_wbs-msghd-msgid.

ls_output_bd-itemid    = ls_input-itemid.

*        ls_output_bd-order1    = ls_body-anln1.

ls_output_bd-rettxt    =  wa_bapiretwbs-message.

ls_output_bd-retid     = ‘0’.

APPEND ls_output_bd TO  lt_output_bd.

ELSE.

"第五步:预提交无错误消息则执行正式提交

CALL FUNCTION ‘BAPI_TRANSACTION_COMMIT’

EXPORTING

wait = ‘X’.

*              IMPORTING

*             return             = wa_bapiretwbs

ls_output_bd-msgid = input-mt_ps_wbs-msghd-msgid.

ls_output_bd-itemid    = ls_input-itemid.

*        ls_output_bd-order1    = ls_body-anln1.

ls_output_bd-rettxt    =  wa_bapiretwbs-message.

ls_output_bd-retid     = ‘1’.

APPEND ls_output_bd TO  lt_output_bd.

UPDATE zpswbs SET zfkzt = ‘1’  zfgtxt = wa_bapiretwbs-message WHERE itemid = ls_input-itemid  AND zflag = ls_input-zflag

AND posnr = ls_input-posnr AND psphi = ls_input-psphi.

COMMIT WORK.

*   WBS元素创建成功

ENDIF.

wbs结束*****

下达REL***

*        lv_proj = ls_input-psphi.

*        lv_sys_sta = ‘REL’.

*        CALL FUNCTION ‘BAPI_PS_INITIALIZATION’.

*        CALL FUNCTION ‘BAPI_BUS2001_SET_STATUS’

*          EXPORTING

*            project_definition = lv_proj

*            undo_system_status = lv_ud_sys_sta

**           undo_user_status   = lv_ud_usr_sta

**           set_system_status  = lv_sys_sta

**           set_user_status    = lv_usr_sta

*          TABLES

*            e_result           = lt_result.

*        LOOP AT lt_result INTO ls_ret WHERE message_type CA ‘AE’.

**        MESSAGE ID ls_ret-message_id TYPE ls_ret-status_type NUMBER ls_ret-message_number

**            INTO ls_ret-message_text.

***            WITH ls_ret-message_v1 ls_ret-message_v2

***                 ls_ret-message_v3 ls_ret-message_v4.

*        ENDLOOP.

*        IF ls_ret-message_text IS  INITIAL.

*          CALL FUNCTION ‘BAPI_PS_PRECOMMIT’.

*          CALL FUNCTION ‘BAPI_TRANSACTION_COMMIT’

*            EXPORTING

*              wait = ‘X’.

*        ELSE.

*          CALL FUNCTION ‘BAPI_TRANSACTION_ROLLBACK’.

*          "错误反馈

*          ls_output_bd-msgid     = input-mt_ps_wbs-msghd-msgid.

*          ls_output_bd-itemid    = ls_input-itemid.

**        ls_output_bd-order1    = ls_body-anln1.

*          ls_output_bd-rettxt    =  ls_ret-message_text.

*          ls_output_bd-retid     = ‘0’.

*          APPEND ls_output_bd TO  lt_output_bd.

*        ENDIF.

CLEAR :it_bapi_bus2054_new,it_bapiretwbs.

ENDIF.

IF ls_input-zflag = ‘U’.

CLEAR:wa_e_project_wbs_chg,lt_e_project_wbs_chg,wa_e_project_wbs_upd,lt_e_project_wbs_upd.

ld_i_project_definition = ls_input-psphi.

"MOVE-CORRESPONDING  wa_e_project_wbs to wa_e_project_wbs_chg."通过查询的WBS拷贝变量

wa_e_project_wbs_chg-wbs_element = ls_input-posnr.

wa_e_project_wbs_chg-description = ls_input-post1."更改描述

"设置更新标志

wa_e_project_wbs_upd-wbs_element = wa_e_project_wbs_chg-wbs_element.

wa_e_project_wbs_upd-description = ‘X’.

APPEND wa_e_project_wbs_chg TO lt_e_project_wbs_chg.

APPEND wa_e_project_wbs_upd TO lt_e_project_wbs_upd.

"第三步,调用

CALL FUNCTION ‘BAPI_PS_INITIALIZATION’.

CALL FUNCTION ‘BAPI_BUS2054_CHANGE_MULTI’

EXPORTING

i_project_definition  = ld_i_project_definition

TABLES

it_wbs_element        = lt_e_project_wbs_chg

it_update_wbs_element = lt_e_project_wbs_upd

et_return             = it_bapiretwbs

*           EXTENSIONIN           =

*           EXTENSIONOUT          =

.

"第四步:判断是否有错误消息

LOOP AT it_bapiretwbs INTO wa_bapiretwbs WHERE type CA ‘AE’.

MESSAGE ID wa_bapiretwbs-id TYPE wa_bapiretwbs-type NUMBER wa_bapiretwbs-number

INTO wa_bapiretwbs-message

WITH wa_bapiretwbs-message_v1 wa_bapiretwbs-message_v2

wa_bapiretwbs-message_v3 wa_bapiretwbs-message_v4.

*            WRITE:/ ‘修改时报错:’,wa_bapiret2-message.

ENDLOOP.

"第四步:如果有错误消息则退出

IF sy-subrc EQ 0.

CALL FUNCTION ‘PS_FLAG_INIT_GLOBAL_FLAGS’.

CALL FUNCTION ‘PS_FLAG_SET_GLOBAL_FLAGS’

EXPORTING

i_precommit_ok = ‘Y’.

ls_output_bd-msgid     = input-mt_ps_wbs-msghd-msgid.

ls_output_bd-itemid    = ls_input-itemid.

*        ls_output_bd-order1    = ls_body-anln1.

ls_output_bd-rettxt    =  wa_bapiretwbs-message.

ls_output_bd-retid     = ‘0’.

APPEND ls_output_bd TO  lt_output_bd.

ENDIF.

CHECK sy-subrc NE 0.

"第四步:没有错误消息则执行预提交

CALL FUNCTION ‘BAPI_PS_PRECOMMIT’

TABLES

et_return = it_bapiretwbs.

LOOP AT it_bapiretwbs INTO wa_bapiretwbs WHERE type CA ‘AE’.

MESSAGE ID wa_bapiretwbs-id TYPE wa_bapiretwbs-type NUMBER wa_bapiretwbs-number

INTO wa_bapiretwbs-message

WITH wa_bapiretwbs-message_v1 wa_bapiretwbs-message_v2

wa_bapiretwbs-message_v3 wa_bapiretwbs-message_v4.

*            WRITE:/ ‘预提交时报错:’,wa_bapiret3-message.

ENDLOOP.

"第五步:预提交有错误消息则执行回滚

IF sy-subrc EQ 0.

CALL FUNCTION ‘BAPI_TRANSACTION_ROLLBACK’.

*            IMPORTING

*              return = it_bapiretwbs.

CALL FUNCTION ‘PS_FLAG_INIT_GLOBAL_FLAGS’.

CALL FUNCTION ‘PS_FLAG_SET_GLOBAL_FLAGS’

EXPORTING

i_precommit_ok = ‘Y’.

ls_output_bd-msgid     = input-mt_ps_wbs-msghd-msgid.

ls_output_bd-itemid    = ls_input-itemid.

*        ls_output_bd-order1    = ls_body-anln1.

ls_output_bd-rettxt    =  wa_bapiretwbs-message.

ls_output_bd-retid     = ‘0’.

APPEND ls_output_bd TO  lt_output_bd.

ELSE.

"第五步:预提交无错误消息则执行正式提交

CALL FUNCTION ‘BAPI_TRANSACTION_COMMIT’

EXPORTING

wait   = ‘X’

IMPORTING

return = wa_bapiretwbs.

*            WRITE:/ ‘WBS修改成功:’,wa_bapiret3-message.

ENDIF.

修改wbs结束*********8

ls_output_bd-msgid     = input-mt_ps_wbs-msghd-msgid.

ls_output_bd-itemid    = ls_input-itemid.

*        ls_output_bd-order1    = ls_body-anln1.

ls_output_bd-rettxt    =  wa_bapiretwbs-message.

ls_output_bd-retid     = ‘1’.

APPEND ls_output_bd TO  lt_output_bd.

UPDATE zpswbs SET zfkzt = ‘1’  zfgtxt = wa_bapiretwbs-message WHERE itemid = ls_input-itemid  AND zflag = ls_input-zflag

AND posnr = ls_input-posnr AND psphi = ls_input-psphi.

COMMIT WORK.

ENDIF.

IF ls_input-zflag = ‘D’.

"第二步,赋值

CLEAR:wa_e_project_wbs_del,lt_e_project_wbs_del.

ld_i_project_definition = ls_input-psphi.

"MOVE-CORRESPONDING  wa_e_project_wbs to wa_e_project_wbs_chg."通过查询的WBS拷贝变量

wa_e_project_wbs_del-wbs_element = ls_input-posnr.

APPEND wa_e_project_wbs_del TO lt_e_project_wbs_del.

"第三步,调用

CALL FUNCTION ‘BAPI_PS_INITIALIZATION’.

CALL FUNCTION ‘BAPI_BUS2054_DELETE_MULTI’

EXPORTING

i_project_definition  = ld_i_project_definition

TABLES

it_delete_wbs_element = lt_e_project_wbs_del

et_return             = it_bapiretwbs

*           EXTENSIONIN           =

*           EXTENSIONOUT          =

.

"第四步:判断是否有错误消息

LOOP AT it_bapiretwbs INTO wa_bapiretwbs WHERE type CA ‘AE’.

MESSAGE ID wa_bapiretwbs-id TYPE wa_bapiretwbs-type NUMBER wa_bapiretwbs-number

INTO wa_bapiretwbs-message

WITH wa_bapiretwbs-message_v1 wa_bapiretwbs-message_v2

wa_bapiretwbs-message_v3 wa_bapiretwbs-message_v4.

*            WRITE:/ ‘修改时报错:’,wa_bapiret2-message.

ENDLOOP.

"第四步:如果有错误消息则退出

IF sy-subrc EQ 0.

CALL FUNCTION ‘PS_FLAG_INIT_GLOBAL_FLAGS’.

CALL FUNCTION ‘PS_FLAG_SET_GLOBAL_FLAGS’

EXPORTING

i_precommit_ok = ‘Y’.

ls_output_bd-msgid     = input-mt_ps_wbs-msghd-msgid.

ls_output_bd-itemid    = ls_input-itemid.

*        ls_output_bd-order1    = ls_body-anln1.

ls_output_bd-rettxt    =  wa_bapiretwbs-message.

ls_output_bd-retid     = ‘0’.

APPEND ls_output_bd TO  lt_output_bd.

ENDIF.

CHECK sy-subrc NE 0.

"第四步:没有错误消息则执行预提交

CALL FUNCTION ‘BAPI_PS_PRECOMMIT’

TABLES

et_return = it_bapiretwbs.

LOOP AT it_bapiretwbs INTO wa_bapiretwbs WHERE type CA ‘AE’.

MESSAGE ID wa_bapiretwbs-id TYPE wa_bapiretwbs-type NUMBER wa_bapiretwbs-number

INTO wa_bapiretwbs-message

WITH wa_bapiretwbs-message_v1 wa_bapiretwbs-message_v2

wa_bapiretwbs-message_v3 wa_bapiretwbs-message_v4.

*            WRITE:/ ‘预提交时报错:’,wa_bapiret3-message.

ENDLOOP.

"第五步:预提交有错误消息则执行回滚

IF sy-subrc EQ 0.

CALL FUNCTION ‘BAPI_TRANSACTION_ROLLBACK’.

*            IMPORTING

*              return = it_bapiretwbs.

CALL FUNCTION ‘PS_FLAG_INIT_GLOBAL_FLAGS’.

CALL FUNCTION ‘PS_FLAG_SET_GLOBAL_FLAGS’

EXPORTING

i_precommit_ok = ‘Y’.

ELSE.

"第五步:预提交无错误消息则执行正式提交

CALL FUNCTION ‘BAPI_TRANSACTION_COMMIT’

EXPORTING

wait   = ‘X’

IMPORTING

return = wa_bapiretwbs.

*            WRITE:/ ‘WBS修改成功:’,wa_bapiret3-message.

ENDIF.

修改wbs结束*********8

ls_output_bd-msgid     = input-mt_ps_wbs-msghd-msgid.

ls_output_bd-itemid    = ls_input-itemid.

*        ls_output_bd-order1    = ls_body-anln1.

ls_output_bd-rettxt    =  wa_bapiretwbs-message.

ls_output_bd-retid     = ‘1’.

APPEND ls_output_bd TO  lt_output_bd.

UPDATE zpswbs SET zfkzt = ‘1’  zfgtxt = wa_bapiretwbs-message WHERE itemid = ls_input-itemid  AND zflag = ls_input-zflag

AND posnr = ls_input-posnr AND psphi = ls_input-psphi.

COMMIT WORK.

ENDIF.

CLEAR: ls_output_bd ,wa_bapiretwbs,ld_i_project_definition.

ENDLOOP.

"下达?什么时候下达? ??

IF ls_input-zflag = ‘I’ AND ls_output_bd IS INITIAL .

lv_proj = ls_input-psphi.

lv_sys_sta = ‘REL’.

CALL FUNCTION ‘BAPI_PS_INITIALIZATION’.

CALL FUNCTION ‘BAPI_BUS2001_SET_STATUS’

EXPORTING

project_definition = lv_proj

*         undo_system_status = lv_ud_sys_sta

*         undo_user_status   = lv_ud_usr_sta

set_system_status  = lv_sys_sta

*         set_user_status    = lv_usr_sta

TABLES

e_result           = lt_result.

LOOP AT lt_result INTO ls_ret WHERE message_type CA ‘AE’.

*        MESSAGE ID ls_ret-message_id TYPE ls_ret-status_type NUMBER ls_ret-message_number

*            INTO ls_ret-message_text.

**            WITH ls_ret-message_v1 ls_ret-message_v2

**                 ls_ret-message_v3 ls_ret-message_v4.

ENDLOOP.

"第四步:如果有错误消息则退出

IF sy-subrc EQ 0.

CALL FUNCTION ‘PS_FLAG_INIT_GLOBAL_FLAGS’.

CALL FUNCTION ‘PS_FLAG_SET_GLOBAL_FLAGS’

EXPORTING

i_precommit_ok = ‘Y’.

"错误反馈

ls_output_bd-msgid     = input-mt_ps_wbs-msghd-msgid.

ls_output_bd-itemid    = ls_input-itemid.

*        ls_output_bd-order1    = ls_body-anln1.

ls_output_bd-rettxt    =  ls_ret-message_text.

ls_output_bd-retid     = ‘0’.

APPEND ls_output_bd TO lt_output_bd.

ENDIF.

CHECK sy-subrc NE 0.

"第四步:没有错误消息则执行预提交

CALL FUNCTION ‘BAPI_PS_PRECOMMIT’

TABLES

et_return = it_bapiretwbs.

LOOP AT it_bapiretwbs INTO wa_bapiretwbs WHERE type CA ‘AE’.

MESSAGE ID wa_bapiretwbs-id TYPE wa_bapiretwbs-type NUMBER wa_bapiretwbs-number

INTO wa_bapiretwbs-message

WITH wa_bapiretwbs-message_v1 wa_bapiretwbs-message_v2

wa_bapiretwbs-message_v3 wa_bapiretwbs-message_v4.

*            WRITE:/ ‘预提交时报错:’,wa_bapiret3-message.

ENDLOOP.

IF sy-subrc EQ 0.

CALL FUNCTION ‘BAPI_TRANSACTION_ROLLBACK’.

*            IMPORTING

*              return = it_bapiretwbs.

CALL FUNCTION ‘PS_FLAG_INIT_GLOBAL_FLAGS’.

CALL FUNCTION ‘PS_FLAG_SET_GLOBAL_FLAGS’

EXPORTING

i_precommit_ok = ‘Y’.

"错误反馈

ls_output_bd-msgid     = input-mt_ps_wbs-msghd-msgid.

ls_output_bd-itemid    = ls_input-itemid.

*        ls_output_bd-order1    = ls_body-anln1.

ls_output_bd-rettxt    =  ls_ret-message_text.

ls_output_bd-retid     = ‘0’.

APPEND ls_output_bd TO lt_output_bd.

ELSE.

CALL FUNCTION ‘BAPI_TRANSACTION_COMMIT’

EXPORTING

wait = ‘X’.

ENDIF.

ENDIF.

"反馈头信息

ls_output_hd-msgid     = input-mt_ps_wbs-msghd-msgid.

ls_output_hd-tlgid     = input-mt_ps_wbs-msghd-tlgid.

ls_output_hd-tlgname   = input-mt_ps_wbs-msghd-tlgname.

ls_output_hd-dtsend    = sy-datum && sy-uzeit.

ls_output_hd-sender    = ‘ERP’.

ls_output_hd-receiver  = input-mt_ps_wbs-msghd-sender.

ls_output-mt_un_resp-msghd = ls_output_hd.

ls_output-mt_un_resp-msgbd = lt_output_bd.

"调用返回接口,同时获取发送数据的xml消息id.

TRY .

CREATE OBJECT lo_output.

CALL METHOD lo_output->si_un_resp_out

EXPORTING

output = ls_output.

*        COMMIT WORK AND WAIT.

CALL FUNCTION ‘ZFUN_PO_LOG’

EXPORTING

output1 = ls_output

*           output2 = out.

.

CATCH cx_ai_system_fault.

ENDTRY.

ENDMETHOD.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值