Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
B
best-code
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
等吃饭
best-code
Commits
06e15acd
Commit
06e15acd
authored
Nov 01, 2022
by
Friends233
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
预扣积分
parent
dd3006f7
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
94 additions
and
0 deletions
+94
-0
README.md
README.md
+2
-0
points.js
mock/project/points.js
+21
-0
apicfg.js
src/api/apicfg.js
+12
-0
integral.js
src/utils/integral.js
+59
-0
No files found.
README.md
View file @
06e15acd
...
...
@@ -10,6 +10,8 @@
**活动规则:[activityRules](http://gitlab2.dui88.com/wangqiang1/best-code/blob/master/src/components/activityRules/activityRules.jsx)**
**[预扣积分](http://gitlab2.dui88.com/wangqiang1/best-code/blob/master/src/utils/integral.js)**
#### 常用组件
**圆形转盘:[CircleTurntableDemo](http://gitlab2.dui88.com/wangqiang1/best-code/blob/master/src/pages/CircleTurntableDemo/CircleTurntableDemo.jsx)**
...
...
mock/project/points.js
0 → 100644
View file @
06e15acd
module
.
exports
=
{
// [扣积分]查询扣积分状态
"/credits/queryStatus.do"
:
{
"data"
:
2
,
"success"
:
true
},
// [扣积分]预扣积分
"/credits/creditsCost.do"
:
{
"data"
:
87128
,
"success"
:
true
},
// [扣积分]查询可复用扣积分票号
"/credits/queryUnused.query"
:{
"success"
:
"occaecat"
,
"message"
:
"pariatur Duis dolor consectetur dolore"
,
"data"
:
{
"ticketList"
:
[]
},
"ticketList"
:
"sed culpa do in"
}
}
\ No newline at end of file
src/api/apicfg.js
View file @
06e15acd
...
...
@@ -21,6 +21,18 @@ const apiCfg = {
},
/** 抽奖组件-查询首页接口 */
drawPrizeHome
:
'drawPrize/query.do'
,
/** 预扣积分 */
preDeductPoints
:
{
uri
:
`credits/creditsCost.do`
,
method
:
"post"
,
// withToken: true
},
/** 查询积分扣除状态 */
queryDeductSatus
:
`credits/queryStatus.do`
,
/** [扣积分]查询可复用扣积分票号 */
queryUnused
:
'credits/queryUnused.query'
}
export
default
apiCfg
;
src/utils/integral.js
0 → 100644
View file @
06e15acd
import
API
from
"@src/api"
;
/**
* 预扣积分
* @param {String} toPlaywayId 门票核销的目标玩法id
* @param {String} toActionId 门票核销的目标actionId
* @param {Number} credits 自定义扣积分值
* @returns 是否扣除成功
*/
export
const
preDeductPointsfunc
=
async
(
toPlaywayId
,
toActionId
,
credits
)
=>
{
// [扣积分]查询可复用扣积分票号,核销视情况调用
// const res = await API.queryUnused({ toPlaywayId: 'gambler', toActionId: 'betting' })
// if (res?.success && res?.data?.ticketList) {
// const ticketList = res?.data?.ticketList
// if (Array.isArray(ticketList)) {
// if (ticketList.length > 0) {
// return ticketList[0]
// }
// } else {
// return ticketList
// }
// }
const
paramDeduct
=
{
toPlaywayId
,
toActionId
,
credits
,
desc
:
"creditsCostDesc"
}
// 预扣积分
const
{
success
,
data
:
ticketTmp
}
=
await
API
.
preDeductPoints
(
paramDeduct
);
if
(
!
success
)
return
let
pollingNums
=
1
const
queryParams
=
{
ticketNum
:
ticketTmp
}
const
pollingApi
=
async
()
=>
{
if
(
pollingNums
>
10
)
return
false
const
{
data
=
0
}
=
await
API
.
queryDeductSatus
(
queryParams
);
if
(
data
==
1
)
{
// data == 1 扣除成功
return
queryParams
.
ticketNum
}
else
if
(
data
==
2
)
{
// data == 2 扣除失败
return
false
}
else
{
// data == 0 预扣中
if
(
pollingNums
<=
9
)
{
pollingNums
++
return
new
Promise
(
resolve
=>
{
setTimeout
(()
=>
{
resolve
(
pollingApi
())
},
1000
)
})
}
else
{
return
false
}
}
}
return
pollingApi
()
}
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment