Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
D
db-game-template
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
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
崔立强
db-game-template
Commits
8a2babab
Commit
8a2babab
authored
Sep 12, 2019
by
XieChuanJin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
完结
parent
0eb658b8
Changes
32
Hide whitespace changes
Inline
Side-by-side
Showing
32 changed files
with
451 additions
and
136 deletions
+451
-136
index.html
egret/index.html
+3
-1
ABNetManager.ts
egret/libs/tc/manager/ABNetManager.ts
+12
-7
ListPage.tmproject
egret/resource/TextureMerger/ListPage.tmproject
+1
-0
back.png
egret/resource/assets/common/back.png
+0
-0
default.res.json
egret/resource/default.res.json
+9
-0
ListPageItem.exml
egret/resource/item/ListPageItem.exml
+5
-5
RewardItem.exml
egret/resource/item/RewardItem.exml
+4
-4
CostTipPanelSkin.exml
egret/resource/skins/CostTipPanelSkin.exml
+1
-1
ListPage.exml
egret/resource/skins/ListPage.exml
+6
-7
MainSceneSkin.exml
egret/resource/skins/MainSceneSkin.exml
+7
-15
RulePanel.exml
egret/resource/skins/RulePanel.exml
+14
-7
Decorator.ts
egret/src/Decorator/Decorator.ts
+11
-10
RewardItem.ts
egret/src/Item/RewardItem.ts
+1
-1
MConst.ts
egret/src/MConst.ts
+4
-3
MUtils.ts
egret/src/MUtils.ts
+54
-12
Main.ts
egret/src/Main.ts
+1
-0
CommonPanel.ts
egret/src/Panel/CommonPanel.ts
+4
-3
CostTipPanel.ts
egret/src/Panel/CostTipPanel.ts
+34
-4
RulePanel.ts
egret/src/Panel/RulePanel.ts
+17
-2
WinningPanel.ts
egret/src/Panel/WinningPanel.ts
+18
-15
MainScene.ts
egret/src/Scene/MainScene.ts
+77
-20
ComponentBase.ts
egret/src/components/ComponentBase.ts
+1
-1
ListPage.ts
egret/src/components/ListPage.ts
+15
-5
panelCtrl.ts
egret/src/ctrls/panelCtrl.ts
+1
-1
layers.ts
egret/src/views/layers.ts
+5
-3
config.js
mock/config.js
+6
-3
Lottery.json
mock/json/Lottery.json
+4
-4
QueryCreditsCost.json
mock/json/QueryCreditsCost.json
+6
-0
QueryPrize.json
mock/json/QueryPrize.json
+1
-1
getLotteryTime.json
mock/json/getLotteryTime.json
+1
-1
t.html
t.html
+111
-0
t.js
t.js
+17
-0
No files found.
egret/index.html
View file @
8a2babab
...
@@ -39,7 +39,6 @@
...
@@ -39,7 +39,6 @@
<script
src=
"libs/modules/tween/tween.js"
></script>
<script
src=
"libs/modules/tween/tween.js"
></script>
<script
src=
"libs/modules/game/game.min.js"
></script>
<script
src=
"libs/modules/game/game.min.js"
></script>
<script
src=
"libs/modules/promise/promise.js"
></script>
<script
src=
"libs/modules/promise/promise.js"
></script>
<script
src=
"libs/modules/egret/svga.egret.min.js"
></script>
<script
src=
"libs/zepto.min.js"
></script>
<script
src=
"libs/zepto.min.js"
></script>
<script
src=
"libs/security.js"
></script>
<script
src=
"libs/security.js"
></script>
<script
src=
"libs/physics.min.js"
></script>
<script
src=
"libs/physics.min.js"
></script>
...
@@ -54,6 +53,9 @@
...
@@ -54,6 +53,9 @@
window
[
'guidePrizePlugId'
]
=
1309
;
window
[
'guidePrizePlugId'
]
=
1309
;
var
projectId
=
"3"
;
var
projectId
=
"3"
;
var
strategyId
=
"strategyId"
;
var
toPlaywayId
=
"w624c4da9"
;
var
toActionId
=
"doJoin"
;
var
development
=
true
;
var
development
=
true
;
var
gameId
=
1
;
var
gameId
=
1
;
...
...
egret/libs/tc/manager/ABNetManager.ts
View file @
8a2babab
...
@@ -4,6 +4,8 @@ import { GConsole } from "../util/GConsole";
...
@@ -4,6 +4,8 @@ import { GConsole } from "../util/GConsole";
import
{
IData
}
from
'../interface/IData'
;
import
{
IData
}
from
'../interface/IData'
;
import
{
Data
}
from
'../../tw/data/Data'
;
import
{
Data
}
from
'../../tw/data/Data'
;
import
{
DataManager
}
from
'../../tw/manager/DataManager'
;
import
{
DataManager
}
from
'../../tw/manager/DataManager'
;
import
PanelCtrl
from
'../../../src/ctrls/PanelCtrl'
;
export
abstract
class
ABNetManager
{
export
abstract
class
ABNetManager
{
/**
/**
* 接口底层错误
* 接口底层错误
...
@@ -51,14 +53,15 @@ export abstract class ABNetManager {
...
@@ -51,14 +53,15 @@ export abstract class ABNetManager {
});
});
}
}
public
sendGet
(
uri
:
string
,
param
:
any
,
callback
:
(
res
:
any
)
=>
void
)
{
public
sendGet
(
uri
:
string
,
param
:
any
,
callback
:
(
res
:
any
)
=>
void
,
pollingCheck
?:
(
res
:
any
)
=>
boolean
,
pollingCount
?:
number
)
{
this
.
mSend
(
"get"
,
uri
,
param
,
callback
);
this
.
mSend
(
"get"
,
uri
,
param
,
callback
,
pollingCheck
,
pollingCount
);
}
}
public
sendPost
(
uri
:
string
,
param
:
any
,
callback
:
(
res
:
any
)
=>
void
)
{
public
sendPost
(
uri
:
string
,
param
:
any
,
callback
:
(
res
:
any
)
=>
void
,
pollingCheck
?:
(
res
:
any
)
=>
boolean
,
pollingCount
?:
number
)
{
this
.
mSend
(
"post"
,
uri
,
param
,
callback
);
this
.
mSend
(
"post"
,
uri
,
param
,
callback
,
pollingCheck
,
pollingCount
);
}
}
private
mSend
(
type
:
string
,
uri
:
string
,
param
:
any
,
callback
:
(
res
:
any
)
=>
void
)
{
private
mSend
(
type
:
string
,
uri
:
string
,
param
:
any
,
callback
:
(
res
:
any
)
=>
void
,
pollingCheck
?:
(
res
:
any
)
=>
boolean
,
pollingCount
?:
number
)
{
uri
=
uri
.
replace
(
"{projectId}"
,
window
[
"projectId"
].
toString
())
uri
=
uri
.
replace
(
"{projectId}"
,
window
[
"projectId"
].
toString
());
uri
=
uri
.
replace
(
"{strategyId}"
,
window
[
"strategyId"
].
toString
());
this
.
send
({
this
.
send
({
name
:
uri
,
name
:
uri
,
uri
:
uri
,
uri
:
uri
,
...
@@ -73,7 +76,9 @@ export abstract class ABNetManager {
...
@@ -73,7 +76,9 @@ export abstract class ABNetManager {
console
.
warn
(
"response"
,
uri
,
res
);
console
.
warn
(
"response"
,
uri
,
res
);
}
}
callback
(
res
);
callback
(
res
);
}
},
pollingCheck
:
pollingCheck
,
pollingCount
:
pollingCount
});
});
console
.
log
(
"requset"
,
uri
,
param
);
console
.
log
(
"requset"
,
uri
,
param
);
}
}
...
...
egret/resource/TextureMerger/ListPage.tmproject
0 → 100644
View file @
8a2babab
{"options":{"layoutMath":"2","sizeMode":"2n","useExtension":1,"layoutGap":1,"extend":0},"projectName":"ListPage","version":5,"files":["..\\assets\\common\\back.png"]}
\ No newline at end of file
egret/resource/assets/common/back.png
0 → 100644
View file @
8a2babab
165 Bytes
egret/resource/default.res.json
View file @
8a2babab
...
@@ -27,6 +27,10 @@
...
@@ -27,6 +27,10 @@
{
{
"keys"
:
"not_winning_bg_png,not_winning_examplet_png"
,
"keys"
:
"not_winning_bg_png,not_winning_examplet_png"
,
"name"
:
"not_winning_panel"
"name"
:
"not_winning_panel"
},
{
"keys"
:
"back_png"
,
"name"
:
"ListPage"
}
}
],
],
"resources"
:[
"resources"
:[
...
@@ -169,6 +173,11 @@
...
@@ -169,6 +173,11 @@
"name"
:
"not_winning_examplet_png"
,
"name"
:
"not_winning_examplet_png"
,
"type"
:
"image"
,
"type"
:
"image"
,
"url"
:
"assets/not_winning_panel/not_winning_examplet.png"
"url"
:
"assets/not_winning_panel/not_winning_examplet.png"
},
{
"name"
:
"back_png"
,
"type"
:
"image"
,
"url"
:
"assets/common/back.png"
}
}
]
]
}
}
\ No newline at end of file
egret/resource/item/ListPageItem.exml
View file @
8a2babab
...
@@ -2,15 +2,15 @@
...
@@ -2,15 +2,15 @@
<e:Skin
class=
"ListPageItem"
xmlns:e=
"http://ns.egret.com/eui"
xmlns:w=
"http://ns.egret.com/wing"
>
<e:Skin
class=
"ListPageItem"
xmlns:e=
"http://ns.egret.com/eui"
xmlns:w=
"http://ns.egret.com/wing"
>
<e:Group
left=
"0"
right=
"0"
height=
"150"
>
<e:Group
left=
"0"
right=
"0"
height=
"150"
>
<e:Group
left=
"0"
top=
"0"
width=
"150"
bottom=
"0"
>
<e:Group
left=
"0"
top=
"0"
width=
"150"
bottom=
"0"
>
<e:Image
id=
"img"
source=
"main_reward0_png"
width=
"100"
height=
"100"
scaleX=
"1"
scaleY=
"1"
horizontalCenter=
"0"
verticalCenter=
"0"
/>
<e:Image
id=
"img"
source=
"main_reward0_png"
width=
"100"
height=
"100"
scaleX=
"1"
scaleY=
"1"
horizontalCenter=
"0"
verticalCenter=
"0"
/>
</e:Group>
</e:Group>
<e:Group
top=
"0"
bottom=
"0"
left=
"150"
right=
"100"
>
<e:Group
top=
"0"
bottom=
"0"
left=
"150"
right=
"100"
>
<e:Label
id=
"text1"
text=
"华为手机"
verticalCenter=
"0"
left=
"40"
textColor=
"0x6B6B6B"
/>
<e:Label
id=
"text1"
text=
"华为手机"
verticalCenter=
"0"
left=
"40"
textColor=
"0x6B6B6B"
/>
</e:Group>
</e:Group>
<e:Group
width=
"100"
right=
"0"
top=
"0"
bottom=
"0"
>
<e:Group
width=
"100"
right=
"0"
top=
"0"
bottom=
"0"
>
<e:Label
text=
"〉"
size=
"50"
scaleX=
"1"
scaleY=
"1"
horizontalCenter=
"20"
verticalCenter=
"0"
textColor=
"0x282828
"
/>
<e:Image
source=
"back_png"
verticalCenter=
"0"
horizontalCenter=
"0
"
/>
</e:Group>
</e:Group>
<e:Rect
left=
"26"
right=
"26"
bottom=
"0"
height=
"1"
fillColor=
"0xe0e0e0"
/>
<e:Rect
left=
"26"
right=
"26"
bottom=
"0"
height=
"1"
fillColor=
"0xe0e0e0"
/>
</e:Group>
</e:Group>
</e:Skin>
</e:Skin>
\ No newline at end of file
egret/resource/item/RewardItem.exml
View file @
8a2babab
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<e:Skin
class=
"RewardItem"
xmlns:e=
"http://ns.egret.com/eui"
xmlns:w=
"http://ns.egret.com/wing"
>
<e:Skin
class=
"RewardItem"
xmlns:e=
"http://ns.egret.com/eui"
xmlns:w=
"http://ns.egret.com/wing"
>
<e:Group
width=
"100"
height=
"1
1
0"
>
<e:Group
width=
"100"
height=
"1
0
0"
>
<e:Image
source=
"main_reward_item_bg_png"
horizontalCenter=
"0"
verticalCenter=
"0
"
/>
<e:Image
horizontalCenter=
"0"
verticalCenter=
"0"
source=
"main_reward_item_bg_png
"
/>
<e:Image
id=
"imgPic"
horizontalCenter=
"0"
verticalCenter=
"0"
width=
"100"
height=
"100"
<e:Image
id=
"imgPic"
horizontalCenter=
"0"
verticalCenter=
"0"
width=
"100"
height=
"100"
source=
"main_reward_item_bg_png"
/>
source=
"main_reward_item_bg_png"
/>
<e:Label
id=
"labelName"
text=
"华为手机"
textColor=
"0x777777"
size=
"24"
bottom=
"-32"
textAlign=
"center"
<e:Label
id=
"labelName"
text=
"华为手机
1234566
"
textColor=
"0x777777"
size=
"24"
bottom=
"-32"
textAlign=
"center"
horizontalCenter=
"0"
/>
horizontalCenter=
"0"
/>
</e:Group>
</e:Group>
</e:Skin>
</e:Skin>
\ No newline at end of file
egret/resource/skins/CostTipPanelSkin.exml
View file @
8a2babab
...
@@ -11,7 +11,7 @@
...
@@ -11,7 +11,7 @@
</e:Skin>
</e:Skin>
</e:skinName>
</e:skinName>
</e:Button>
</e:Button>
<e:Label
text=
"活动需要消耗9积分参与哦~"
x=
"204"
y=
"376.5"
textColor=
"0x437779"
size=
"30"
scaleX=
"1"
scaleY=
"1"
/>
<e:Label
id=
"text"
text=
"活动需要消耗9积分参与哦~"
x=
"204"
y=
"376.5"
textColor=
"0x437779"
size=
"30"
scaleX=
"1"
scaleY=
"1"
/>
<e:Button
id=
"closeBtn"
horizontalCenter=
"272"
verticalCenter=
"-275.5"
x=
"623"
y=
"581"
scaleX=
"1"
scaleY=
"1"
>
<e:Button
id=
"closeBtn"
horizontalCenter=
"272"
verticalCenter=
"-275.5"
x=
"623"
y=
"581"
scaleX=
"1"
scaleY=
"1"
>
<e:skinName>
<e:skinName>
<e:Skin
states=
"up,down,disabled"
>
<e:Skin
states=
"up,down,disabled"
>
...
...
egret/resource/skins/ListPage.exml
View file @
8a2babab
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<e:Skin
class=
"ListPage"
width=
"750"
height=
"1624"
xmlns:e=
"http://ns.egret.com/eui"
xmlns:w=
"http://ns.egret.com/wing"
>
<e:Skin
class=
"ListPage"
xmlns:e=
"http://ns.egret.com/eui"
xmlns:w=
"http://ns.egret.com/wing"
>
<e:Rect
width=
"750"
height=
"1624"
fillColor=
"0xffffff
"
/>
<e:Rect
fillColor=
"0xffffff"
left=
"0"
right=
"0"
top=
"0"
bottom=
"0
"
/>
<e:Group
height=
"1
0
0"
top=
"0"
right=
"0"
left=
"0"
>
<e:Group
height=
"1
2
0"
top=
"0"
right=
"0"
left=
"0"
>
<e:Rect
height=
"2"
left=
"0"
right=
"0"
bottom=
"0"
fillColor=
"0xdddddd"
/>
<e:Rect
height=
"2"
left=
"0"
right=
"0"
bottom=
"0"
fillColor=
"0xdddddd"
/>
<e:Label
id=
"title"
text=
"我的奖品"
horizontalCenter=
"0"
verticalCenter=
"0"
size=
"36"
fontFamily=
"Microsoft YaHei"
<e:Label
id=
"title"
text=
"我的奖品"
horizontalCenter=
"0"
verticalCenter=
"0"
size=
"36"
fontFamily=
"Microsoft YaHei"
textColor=
"0x282828"
/>
textColor=
"0x282828"
/>
<e:Button
id=
"btnBack"
left=
"
20"
width=
"50"
verticalCenter
=
"0"
>
<e:Button
id=
"btnBack"
left=
"
0"
width=
"100"
top=
"0"
bottom
=
"0"
>
<e:skinName>
<e:skinName>
<e:Skin>
<e:Skin>
<e:
Label
text=
"〈"
size=
"50"
horizontalCenter=
"-14"
textColor=
"0x282828
"
/>
<e:
Image
source=
"back_png"
scaleX=
"-1"
verticalCenter=
"0"
horizontalCenter=
"0
"
/>
</e:Skin>
</e:Skin>
</e:skinName>
</e:skinName>
</e:Button>
</e:Button>
</e:Group>
</e:Group>
<e:Scroller
id=
"scroller"
top=
"120"
left=
"0"
bottom=
"0"
right=
"0"
>
<e:Scroller
id=
"scroller"
top=
"120"
left=
"0"
bottom=
"0"
right=
"0"
>
<e:List
id=
"list"
itemRendererSkinName=
"ListPageItem"
>
<e:List
id=
"list"
itemRendererSkinName=
"ListPageItem"
></e:List>
</e:List>
</e:Scroller>
</e:Scroller>
</e:Skin>
</e:Skin>
\ No newline at end of file
egret/resource/skins/MainSceneSkin.exml
View file @
8a2babab
...
@@ -14,28 +14,20 @@
...
@@ -14,28 +14,20 @@
</e:Skin>
</e:Skin>
</e:skinName>
</e:skinName>
</e:Button>
</e:Button>
<e:Label
id=
"
labelLotteryTime"
text=
"9积分/1次
"
y=
"296"
size=
"26"
horizontalCenter=
"0"
textAlign=
"center"
/>
<e:Label
id=
"
costTip"
text=
"
"
y=
"296"
size=
"26"
horizontalCenter=
"0"
textAlign=
"center"
/>
</e:Group>
</e:Group>
<e:Group
width=
"670"
height=
"232"
x=
"39.69"
y=
"858.33"
>
<e:Group
width=
"670"
height=
"232"
x=
"39.69"
y=
"858.33"
>
<e:Image
source=
"main_reward_area_bg_png"
/>
<e:Image
source=
"main_reward_area_bg_png"
/>
<e:Scroller
width=
"574.34"
height=
"150.99"
x=
"49"
y=
"65"
anchorOffsetX=
"0"
anchorOffsetY=
"0"
>
<e:Scroller
width=
"663"
height=
"150.99"
x=
"2"
y=
"65"
anchorOffsetX=
"0"
anchorOffsetY=
"0"
>
<e:DataGroup
id=
"rewardArea"
itemRendererSkinName=
"RewardItem"
anchorOffsetX=
"0"
anchorOffsetY=
"0"
>
<e:DataGroup
id=
"rewardArea"
itemRendererSkinName=
"RewardItem"
anchorOffsetX=
"0"
anchorOffsetY=
"0"
width=
"621.34"
x=
"-47"
y=
"0"
>
<e:layout>
<e:layout>
<e:HorizontalLayout
gap=
"
57"
paddingTop=
"0"
/>
<e:HorizontalLayout
gap=
"
60"
paddingLeft=
"47"
/>
</e:layout>
</e:layout>
<e:ArrayCollection>
<e:Array>
<e:Object
test=
"null"
/>
<e:Object
test=
"null"
/>
<e:Object
test=
"null"
/>
<e:Object
test=
"null"
/>
<e:Object
test=
"null"
/>
</e:Array>
</e:ArrayCollection>
</e:DataGroup>
</e:DataGroup>
</e:Scroller>
</e:Scroller>
</e:Group>
</e:Group>
<e:Image
source=
"main_foreground_png"
touchEnabled=
"false"
visible=
"false"
/>
<e:Image
source=
"main_foreground_png"
touchEnabled=
"false"
/>
<e:Button
id=
"btnRule"
label=
""
width=
"125"
top=
"30"
right=
"0"
>
<e:Button
id=
"btnRule"
label=
""
width=
"125"
top=
"30"
right=
"0"
>
<e:skinName>
<e:skinName>
<e:Skin
states=
"up,down,disabled"
>
<e:Skin
states=
"up,down,disabled"
>
...
@@ -52,5 +44,5 @@
...
@@ -52,5 +44,5 @@
</e:Skin>
</e:Skin>
</e:skinName>
</e:skinName>
</e:Button>
</e:Button>
<e:Image
source=
"main_example_png"
horizontalCenter=
"0"
verticalCenter=
"0"
alpha=
"0.5"
locked=
"true"
visible=
"false"
/>
<e:Image
source=
"main_example_png"
horizontalCenter=
"0"
verticalCenter=
"0"
alpha=
"0.5"
locked=
"true"
visible=
"false"
/>
</e:Skin>
</e:Skin>
\ No newline at end of file
egret/resource/skins/RulePanel.exml
View file @
8a2babab
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<e:Skin
class=
"RulePanel"
width=
"750"
height=
"1624"
xmlns:e=
"http://ns.egret.com/eui"
xmlns:w=
"http://ns.egret.com/wing"
>
<e:Skin
class=
"RulePanel"
xmlns:e=
"http://ns.egret.com/eui"
xmlns:w=
"http://ns.egret.com/wing"
>
<w:Config
id=
"16d19576d08"
/>
<w:Config
id=
"16d19576d08"
/>
<e:Group
width=
"560"
height=
"600"
horizontalCenter=
"0"
verticalCenter=
"0"
>
<e:Rect
left=
"0"
right=
"0"
top=
"0"
bottom=
"0"
fillAlpha=
"0.8"
/>
<e:Rect
left=
"0"
right=
"0"
top=
"0"
bottom=
"0"
fillAlpha=
"0.9"
/>
<e:Group
height=
"638"
width=
"560"
verticalCenter=
"-50"
horizontalCenter=
"0"
alpha=
"0.9"
>
<e:Button
id=
"closeBtn"
scaleX=
"1"
scaleY=
"1"
height=
"50"
horizontalCenter=
"253"
verticalCenter=
"-271"
width=
"50"
>
<e:Scroller
left=
"50"
right=
"50"
top=
"100"
height=
"450"
bounces=
"false"
>
<e:Group>
<e:Label
id=
"text"
text=
"我是,活动规则是活,动规则我是活动规则我是活动规则我是活动规则,我是活动规则。我是,活动规则是活,动规则我是活动规则我是活动规则我是活动规则,我是活动规则。我是,活动规则是活,动规则我是活动规则我是活动规则我是活动规则,我是活动规则。我是,活动规则是活,动规则我是活动规则我是活动规则我是活动规则,我是活动规则。我是,活动规则是活,动规则我是活动规则我是活动规则我是活动规则,我是活动规则。我是,活动规则是活,动规则我是活动规则我是活动规则我是活动规则,我是活动规则。我是,活动规则是活,动规则我是活动规则我是活动规则我是活动规则,我是活动规则。我是,活动规则是活,动规则我是活动规则我是活动规则我是活动规则,我是活动规则。我是,活动规则是活,动规则我是活动规则我是活动规则我是活动规则,我是活动规则。"
textColor=
"0xcccccc"
left=
"0"
right=
"0"
size=
"30"
lineSpacing=
"20"
top=
"10"
width=
"460"
/>
</e:Group>
</e:Scroller>
<e:Label
id=
"title"
text=
"活动规则"
horizontalCenter=
"0"
top=
"40"
size=
"40"
textAlign=
"center"
textColor=
"0xcccccc"
/>
<e:Button
id=
"closeBtn"
horizontalCenter=
"0"
verticalCenter=
"295"
>
<e:skinName>
<e:skinName>
<e:Skin
states=
"up,down,disabled"
>
<e:Skin
states=
"up,down,disabled"
>
<e:Label
horizontalCenter=
"0"
verticalCenter=
"0"
text=
"×"
size=
"50"
textColor=
"0xcccccc"
scaleX.down=
"0.9"
scaleY.down=
"0.9"
/>
<e:Image
width=
"100%"
height=
"100%"
source=
"closeBtn_png"
/>
<e:Label
id=
"labelDisplay"
horizontalCenter=
"0"
verticalCenter=
"0"
/>
</e:Skin>
</e:Skin>
</e:skinName>
</e:skinName>
</e:Button>
</e:Button>
<e:Label
id=
"text"
text=
"我是,活动规则是活,动规则我是活动规则我是活动规则我是活动规则,我是活动规则。"
left=
"50"
right=
"50"
top=
"120"
bottom=
"50"
textColor=
"0xcccccc"
/>
<e:Label
id=
"title"
text=
"活动规则"
horizontalCenter=
"0"
top=
"40"
size=
"40"
textAlign=
"center"
textColor=
"0xcccccc"
/>
</e:Group>
</e:Group>
</e:Skin>
</e:Skin>
\ No newline at end of file
egret/src/Decorator/Decorator.ts
View file @
8a2babab
...
@@ -40,16 +40,17 @@ export namespace Decorator {
...
@@ -40,16 +40,17 @@ export namespace Decorator {
}
}
}
}
}
}
export
function
ClassNameSkin
(
name
:
string
)
{
export
function
ClassNameSkin
<
T
extends
{
new
(...
arg
:
any
[]):
{}
}
>
(
target
:
T
)
{
return
function
<
T
extends
{
new
(...
arg
:
any
[]):
{}
}
>
(
target
:
T
)
{
return
class
extends
target
{
return
class
extends
target
{
constructor
(...
arg
:
any
[])
{
constructor
(...
arg
:
any
[])
{
super
();
super
();
this
[
"skinName"
]
=
`resource/skins/
${
super
[
"constructor"
][
"name"
]}
.exml`
;
this
[
"skinName"
]
=
`resource/skins/
${
name
}
.exml`
;
if
(
this
[
"skin"
])
{
if
(
this
[
"skin"
])
{
this
[
"onLoad"
]
&&
this
[
"onLoad"
]();
this
[
"onLoad"
]
&&
this
[
"onLoad"
]();
}
else
{
}
else
{
this
[
"addEventListener"
](
eui
.
UIEvent
.
COMPLETE
,
this
[
"onLoad"
]
||
(()
=>
{
}),
this
);
this
[
"addEventListener"
](
eui
.
UIEvent
.
COMPLETE
,
this
[
"onLoad"
]
||
(()
=>
{
}),
this
);
}
}
}
}
}
}
}
...
...
egret/src/Item/RewardItem.ts
View file @
8a2babab
...
@@ -7,6 +7,6 @@ export default class RewardItem extends MItem {
...
@@ -7,6 +7,6 @@ export default class RewardItem extends MItem {
async
dataChanged
()
{
async
dataChanged
()
{
this
.
labelName
.
text
=
this
.
data
[
"name"
];
this
.
labelName
.
text
=
this
.
data
[
"name"
];
this
.
imgPic
.
textur
e
=
await
MUtils
.
loadImage
(
this
.
data
[
"icon"
]);
this
.
imgPic
.
sourc
e
=
await
MUtils
.
loadImage
(
this
.
data
[
"icon"
]);
}
}
}
}
\ No newline at end of file
egret/src/MConst.ts
View file @
8a2babab
export
const
MUrl
=
{
export
const
MUrl
=
{
GetPrizeList
:
"/projectx/{projectId}/
strategyId12138
.query"
,
GetPrizeList
:
"/projectx/{projectId}/
{strategyId}
.query"
,
Lottery
:
"/projectx/{projectId}/w624c4da9/doJoin.do"
,
Lottery
:
"/projectx/{projectId}/w624c4da9/doJoin.do"
,
GetLotteryTime
:
"/projectx/{projectId}/w624c4da9/a47972bc4.do"
,
GetLotteryTime
:
"/projectx/{projectId}/w624c4da9/a47972bc4.do"
,
CreditsCost
:
"/projectx/{projectId}/credits/creditsCost.do"
,
CreditsCost
:
"/projectx/{projectId}/credits/creditsCost.do"
,
GetMyPrize
:
"/projectx/{projectId}/records.query"
,
GetMyPrize
:
"/projectx/{projectId}/records.query"
,
QueryPrize
:
"/projectx/{projectId}/prize.query"
,
QueryPrize
:
"/projectx/{projectId}/prize.query"
,
GetPrizeNotCoupons
:
"/aaw/projectx/takePrize"
,
GetDomain
:
"/projectx/getDomain.query"
,
QueryCreditsCost
:
"/projectx/{projectId}/credits/queryStatus.do"
,
GetPrizeCoupons
:
"/aaw/projectx/getCouponInfo"
,
GetPrizeCoupons
:
"/aaw/projectx/getCouponInfo"
,
Get
Domain
:
"/projectx/getDomain.query
"
Get
ProjectUserInfo
:
"/ctool/getProjectUserInfo
"
}
}
\ No newline at end of file
egret/src/MUtils.ts
View file @
8a2babab
...
@@ -13,28 +13,54 @@ export namespace MUtils {
...
@@ -13,28 +13,54 @@ export namespace MUtils {
}
}
const
imageCache
:
{
[
key
:
string
]:
egret
.
Texture
}
=
{}
const
imageCache
:
{
[
key
:
string
]:
egret
.
Texture
}
=
{}
const
loadImageCache
:
{
[
key
:
string
]:
egret
.
ImageLoader
}
=
{}
export
function
loadImage
(
url
:
string
)
{
export
function
loadImage
(
url
:
string
)
{
if
(
!
url
)
return
;
if
(
!
url
)
{
console
.
error
(
"empty url"
);
return
;
}
return
new
Promise
<
egret
.
Texture
>
((
resolve
)
=>
{
return
new
Promise
<
egret
.
Texture
>
((
resolve
)
=>
{
if
(
imageCache
[
url
])
{
if
(
imageCache
[
url
])
{
resolve
(
imageCache
[
url
]);
resolve
(
imageCache
[
url
]);
return
;
return
;
}
}
let
imgLoader
:
egret
.
ImageLoader
=
new
egret
.
ImageLoader
();
if
(
loadImageCache
[
url
])
{
imgLoader
.
once
(
egret
.
Event
.
COMPLETE
,
(
event
:
egret
.
Event
)
=>
{
loadImageCache
[
url
].
once
(
egret
.
Event
.
COMPLETE
,
(
event
:
egret
.
Event
)
=>
{
let
loader
:
egret
.
ImageLoader
=
event
.
currentTarget
;
if
(
imageCache
[
url
])
{
let
texture
=
new
egret
.
Texture
();
resolve
(
imageCache
[
url
]);
texture
.
bitmapData
=
loader
.
data
;
}
else
{
imageCache
[
url
]
=
texture
;
console
.
error
(
"get image cache fail"
);
resolve
(
texture
);
}
},
this
);
},
this
);
imgLoader
.
load
(
url
);
}
else
{
console
.
warn
(
url
);
let
imgLoader
:
egret
.
ImageLoader
=
new
egret
.
ImageLoader
();
imgLoader
.
once
(
egret
.
Event
.
COMPLETE
,
(
event
:
egret
.
Event
)
=>
{
let
loader
:
egret
.
ImageLoader
=
event
.
currentTarget
;
let
texture
=
new
egret
.
Texture
();
texture
.
bitmapData
=
loader
.
data
;
imageCache
[
url
]
=
texture
;
resolve
(
texture
);
},
this
);
imgLoader
.
load
(
url
);
loadImageCache
[
url
]
=
imgLoader
;
}
});
});
}
}
let
domain
:
string
=
null
;
/* function loadRemoteImage(url: string, callback: (tex: egret.Texture) => void) {
let imgLoader: egret.ImageLoader = new egret.ImageLoader();
imgLoader.once(egret.Event.COMPLETE, (event: egret.Event) => {
let loader: egret.ImageLoader = event.currentTarget;
let texture = new egret.Texture();
texture.bitmapData = loader.data;
callback(texture);
}, this);
imgLoader.load(url);
} */
export
function
getDomain
()
{
export
function
getDomain
()
{
return
new
Promise
<
string
>
((
resolve
)
=>
{
return
new
Promise
<
string
>
((
resolve
)
=>
{
if
(
!
this
.
domain
)
{
if
(
!
this
.
domain
)
{
...
@@ -46,4 +72,20 @@ export namespace MUtils {
...
@@ -46,4 +72,20 @@ export namespace MUtils {
resolve
(
this
.
domain
);
resolve
(
this
.
domain
);
});
});
}
}
/* export function setItemImage(image: eui.Image, url: string) {
if (imageCache[url]) {
image.texture = imageCache[url];
} else {
loadRemoteImage(url, (tex) => {
imageCache[url] = tex;
image.texture = tex;
});
}
} */
export
function
jumpLink
(
url
:
string
)
{
window
.
location
.
href
=
url
;
localStorage
.
setItem
(
"jumpLink"
,
"true"
);
}
}
}
\ No newline at end of file
egret/src/Main.ts
View file @
8a2babab
...
@@ -42,6 +42,7 @@ class Main extends eui.UILayer {
...
@@ -42,6 +42,7 @@ class Main extends eui.UILayer {
private
async
loadResource
()
{
private
async
loadResource
()
{
try
{
try
{
await
RES
.
loadConfig
(
"default.res.json"
,
getResPath
()
+
"resource/"
);
await
RES
.
loadConfig
(
"default.res.json"
,
getResPath
()
+
"resource/"
);
await
RES
.
loadGroup
(
"ListPage"
);
await
this
.
loadTheme
();
await
this
.
loadTheme
();
}
}
catch
(
e
)
{
catch
(
e
)
{
...
...
egret/src/Panel/CommonPanel.ts
View file @
8a2babab
import
Panel
from
"../views/Panel"
;
import
Panel
from
"../views/Panel"
;
import
{
Decorator
}
from
"../Decorator/Decorator"
;
abstract
class
CommonPanel
extends
Panel
{
abstract
class
CommonPanel
extends
Panel
{
public
btnOk
:
eui
.
Button
;
public
btnOk
:
eui
.
Button
;
...
@@ -11,6 +12,6 @@ abstract class CommonPanel extends Panel {
...
@@ -11,6 +12,6 @@ abstract class CommonPanel extends Panel {
}
}
}
}
export
class
LackPointPanel
extends
CommonPanel
{
}
export
class
LackPointPanel
extends
CommonPanel
{
public
get
skinKey
()
{
return
'LackPointPanel'
}
}
export
class
TimeRunOutPanel
extends
CommonPanel
{
}
export
class
TimeRunOutPanel
extends
CommonPanel
{
public
get
skinKey
()
{
return
'TimeRunOutPanel'
}}
export
class
NotWinningPanel
extends
CommonPanel
{
}
export
class
NotWinningPanel
extends
CommonPanel
{
public
get
skinKey
()
{
return
'NotWinningPanel'
}}
\ No newline at end of file
\ No newline at end of file
egret/src/Panel/CostTipPanel.ts
View file @
8a2babab
...
@@ -2,18 +2,48 @@ import Panel from "../views/Panel";
...
@@ -2,18 +2,48 @@ import Panel from "../views/Panel";
import
{
NetManager
}
from
"../../libs/tw/manager/NetManager"
;
import
{
NetManager
}
from
"../../libs/tw/manager/NetManager"
;
import
MainScene
from
"../Scene/MainScene"
;
import
MainScene
from
"../Scene/MainScene"
;
import
{
MUrl
}
from
"../MConst"
;
import
{
MUrl
}
from
"../MConst"
;
import
PanelCtrl
from
"../ctrls/PanelCtrl"
;
import
ToastPanel
from
"../components/ToastPanel"
;
import
Loading
from
"../loading/Loading"
;
export
default
class
CostTipPanel
extends
Panel
{
export
default
class
CostTipPanel
extends
Panel
{
public
get
skinKey
()
{
return
'CostTipPanel'
}
public
text
:
eui
.
Label
;
public
btnOk
:
eui
.
Button
;
public
btnOk
:
eui
.
Button
;
onSkinComplete
()
{
private
mainScene
:
MainScene
=
null
;
async
onSkinComplete
()
{
super
.
onSkinComplete
();
super
.
onSkinComplete
();
this
.
mainScene
=
this
.
data
[
"mainScene"
]
as
MainScene
;
this
.
text
.
text
=
`活动需要消耗
${
await
this
.
mainScene
.
getLotteryCost
()}
参与哦~`
;
this
.
btnOk
.
onTap
(
this
,
()
=>
{
this
.
btnOk
.
onTap
(
this
,
()
=>
{
NetManager
.
ins
.
sendPost
(
MUrl
.
CreditsCost
,
{
NetManager
.
ins
.
sendPost
(
MUrl
.
CreditsCost
,
{
toPlaywayId
:
"w624c4da9"
,
toPlaywayId
:
window
[
"toPlaywayId"
]
,
toActionId
:
"doJoin"
toActionId
:
window
[
"toActionId"
]
},
(
response
)
=>
{
},
(
response
)
=>
{
this
.
hidePanel
();
this
.
hidePanel
();
(
this
.
data
[
"mainScene"
]
as
MainScene
).
lottery
({
ticketNum
:
response
[
"data"
][
"ticketNum"
]
});
let
ticketNum
=
response
[
"data"
];
Loading
.
instace
.
show
();
NetManager
.
ins
.
sendPost
(
MUrl
.
QueryCreditsCost
,
{
ticketNum
:
ticketNum
},
(
res
)
=>
{
Loading
.
instace
.
show
();
if
(
res
[
"data"
]
==
1
)
{
this
.
mainScene
.
lottery
({
ticketNum
:
ticketNum
});
}
else
{
PanelCtrl
.
instance
.
show
(
ToastPanel
,
{
msg
:
"积分不足"
});
}
},
(
res
):
boolean
=>
{
switch
(
res
[
"data"
])
{
case
0
:
return
true
;
case
1
:
case
2
:
return
false
;
default
:
console
.
error
(
"invalid state code"
);
break
;
}
},
10
);
});
});
});
});
}
}
...
...
egret/src/Panel/RulePanel.ts
View file @
8a2babab
import
{
Decorator
}
from
"../Decorator/Decorator"
;
import
{
Decorator
}
from
"../Decorator/Decorator"
;
@
Decorator
.
ClassNameSkin
@
Decorator
.
ClassNameSkin
(
"RulePanel"
)
export
default
class
RulePanel
extends
eui
.
Component
{
export
default
class
RulePanel
extends
eui
.
Component
{
public
closeBtn
:
eui
.
Button
;
public
closeBtn
:
eui
.
Button
;
constructor
()
{
super
();
// this.horizontalCenter = 0;
// this.verticalCenter = 0;
this
.
top
=
0
this
.
left
=
0
this
.
right
=
0
this
.
bottom
=
0
;
}
onLoad
()
{
onLoad
()
{
this
.
closeBtn
.
onTap
(
this
,
this
.
destroy
);
this
.
closeBtn
.
onTap
(
this
,
this
.
destroy
);
}
destroy
()
{
this
.
parent
.
visible
=
false
;
super
.
destroy
();
}
}
}
}
\ No newline at end of file
egret/src/Panel/WinningPanel.ts
View file @
8a2babab
...
@@ -3,6 +3,7 @@ import { MUtils } from "../MUtils";
...
@@ -3,6 +3,7 @@ import { MUtils } from "../MUtils";
import
{
Decorator
}
from
"../Decorator/Decorator"
;
import
{
Decorator
}
from
"../Decorator/Decorator"
;
import
{
NetManager
}
from
"../../libs/tw/manager/NetManager"
;
import
{
NetManager
}
from
"../../libs/tw/manager/NetManager"
;
import
{
MUrl
}
from
"../MConst"
;
import
{
MUrl
}
from
"../MConst"
;
import
Loading
from
"../loading/Loading"
;
export
default
class
WinningPanel
extends
Panel
{
export
default
class
WinningPanel
extends
Panel
{
public
get
skinKey
()
{
return
"WinningPanel"
}
public
get
skinKey
()
{
return
"WinningPanel"
}
...
@@ -12,27 +13,29 @@ export default class WinningPanel extends Panel {
...
@@ -12,27 +13,29 @@ export default class WinningPanel extends Panel {
public
btnReceive
:
eui
.
Button
;
public
btnReceive
:
eui
.
Button
;
public
imgPrize
:
eui
.
Image
;
public
imgPrize
:
eui
.
Image
;
private
prizeData
=
null
;
async
onSkinComplete
()
{
async
onSkinComplete
()
{
super
.
onSkinComplete
();
super
.
onSkinComplete
();
this
.
prizeData
=
this
.
data
[
"prizeData"
];
this
.
btnReceive
.
onTap
(
this
,
()
=>
{
let
queryPrizeData
=
this
.
data
[
"queryPrizeData"
];
console
.
error
(
this
.
data
);
this
.
labelCommodity
.
text
=
queryPrizeData
[
"name"
];
if
(
this
.
data
[
"prizeType"
]
==
"coupon"
)
{
this
.
imgPrize
.
texture
=
await
MUtils
.
loadImage
(
queryPrizeData
[
"icon"
]);
NetManager
.
ins
.
sendGet
(
MUrl
.
GetPrizeCoupons
,
{
projectOrderNo
:
this
.
prizeData
[
"userRecordId"
]
},
(
res
)
=>
{
window
.
location
.
href
=
res
[
"data"
][
"openUrl"
];
this
.
btnReceive
.
onTap
(
this
,
async
()
=>
{
this
.
hidePanel
();
let
domain
=
await
MUtils
.
getDomain
();
});
if
(
queryPrizeData
[
"refType"
]
!=
"coupon"
)
{
localStorage
.
setItem
(
"jumpLink"
,
"true"
);
MUtils
.
jumpLink
(
domain
+
"/aaw/projectx/takePrize?projectOrderNo="
+
this
.
data
[
"userRecordId"
]);
}
else
{
}
else
{
NetManager
.
ins
.
sendGet
(
MUrl
.
GetPrizeNotCoupons
,
{
projectOrderNo
:
this
.
prizeData
[
"userRecordId"
]
},
(
res
)
=>
{
Loading
.
instace
.
show
();
window
.
location
.
href
=
res
[
"data"
];
NetManager
.
ins
.
sendGet
(
MUrl
.
GetPrizeCoupons
,
{
projectOrderNo
:
this
.
data
[
"userRecordId"
]
},
(
res
)
=>
{
this
.
hidePanel
();
localStorage
.
setItem
(
"jumpLink"
,
"true"
);
});
MUtils
.
jumpLink
(
res
[
"data"
][
"link"
]);
Loading
.
instace
.
hide
();
},
(
res
)
=>
{
return
!
(
res
[
"code"
]
==
"0000000000"
);
},
10
);
}
}
});
});
this
.
labelCommodity
.
text
=
this
.
prizeData
[
"name"
];
this
.
imgPrize
.
texture
=
await
MUtils
.
loadImage
(
this
.
prizeData
[
"icon"
]);
}
}
}
}
\ No newline at end of file
egret/src/Scene/MainScene.ts
View file @
8a2babab
...
@@ -11,6 +11,10 @@ import { UIManager } from "../Mgr/UIManager";
...
@@ -11,6 +11,10 @@ import { UIManager } from "../Mgr/UIManager";
import
RulePanel
from
"../Panel/RulePanel"
;
import
RulePanel
from
"../Panel/RulePanel"
;
import
{
MUtils
}
from
"../MUtils"
;
import
{
MUtils
}
from
"../MUtils"
;
import
ToastPanel
from
"../components/ToastPanel"
;
import
ToastPanel
from
"../components/ToastPanel"
;
import
{
DataManager
}
from
"../../libs/tw/manager/DataManager"
;
import
Loading
from
"../loading/Loading"
;
import
layers
from
"../views/layers"
;
import
{
Data
}
from
"../../libs/tw/data/Data"
;
const
prizeIdKey
=
"prizeId"
;
const
prizeIdKey
=
"prizeId"
;
...
@@ -19,18 +23,50 @@ export default class MainScene extends Scene {
...
@@ -19,18 +23,50 @@ export default class MainScene extends Scene {
public
rewardArea
:
eui
.
DataGroup
;
public
rewardArea
:
eui
.
DataGroup
;
public
btnRule
:
eui
.
Button
;
public
btnRule
:
eui
.
Button
;
public
btnMyReward
:
eui
.
Button
;
public
btnMyReward
:
eui
.
Button
;
public
labelLotteryTime
:
eui
.
Label
;
public
costTip
:
eui
.
Label
;
public
get
skinKey
()
{
return
"MainScene"
;
}
private
myUILayer
:
eui
.
UILayer
=
null
;
private
readonly
projectxString
:
string
=
"projectx/"
;
private
getProjectId
()
{
let
windowUrl
=
window
.
location
.
href
;
let
splitArr
=
windowUrl
.
split
(
this
.
projectxString
);
if
(
splitArr
.
length
!=
2
)
{
console
.
error
(
"get "
+
this
.
projectxString
+
" fail"
);
return
;
}
let
start
=
windowUrl
.
indexOf
(
this
.
projectxString
)
+
this
.
projectxString
.
length
;
let
end
=
splitArr
[
1
].
indexOf
(
"/"
);
window
[
"projectId"
]
=
windowUrl
.
substr
(
start
,
end
);
}
onSkinComplete
()
{
onSkinComplete
()
{
super
.
onSkinComplete
();
super
.
onSkinComplete
();
this
.
getProjectId
();
this
.
myUILayer
=
layers
.
myLayer
;
this
.
myUILayer
.
visible
=
false
;
this
.
btnLottery
.
onTap
(
this
,
this
.
onClickBtnLottery
);
this
.
btnLottery
.
onTap
(
this
,
this
.
onClickBtnLottery
);
this
.
btnMyReward
.
onTap
(
this
,
this
.
openMyReward
);
this
.
btnMyReward
.
onTap
(
this
,
this
.
openMyReward
);
this
.
btnRule
.
onTap
(
this
,
()
=>
{
this
.
btnRule
.
onTap
(
this
,
()
=>
{
UIManager
.
stage
.
addChild
(
new
RulePanel
());
this
.
myUILayer
.
addChild
(
new
RulePanel
());
this
.
myUILayer
.
visible
=
true
;
});
});
this
.
rewardShow
();
this
.
rewardShow
();
this
.
updateLotteryTime
();
this
.
updateLotteryTime
();
if
(
localStorage
.
getItem
(
"jumpLink"
)
!=
"true"
)
{
this
.
getLotteryTime
((
time
)
=>
{
if
(
time
>
0
)
{
PanelCtrl
.
instance
.
show
(
ToastPanel
,
{
msg
:
`恭喜你,获得
${
time
}
次免费抽奖机会`
});
}
});
}
else
{
localStorage
.
removeItem
(
"jumpLink"
);
}
}
}
/**
/**
...
@@ -38,6 +74,7 @@ export default class MainScene extends Scene {
...
@@ -38,6 +74,7 @@ export default class MainScene extends Scene {
*/
*/
private
rewardShow
()
{
private
rewardShow
()
{
this
.
rewardArea
.
itemRenderer
=
RewardItem
;
this
.
rewardArea
.
itemRenderer
=
RewardItem
;
NetManager
.
ins
.
sendGet
(
MUrl
.
GetPrizeList
,
undefined
,
(
res
)
=>
{
NetManager
.
ins
.
sendGet
(
MUrl
.
GetPrizeList
,
undefined
,
(
res
)
=>
{
let
list
=
res
[
"data"
]
as
Array
<
object
>
;
let
list
=
res
[
"data"
]
as
Array
<
object
>
;
//创建奖品展示item
//创建奖品展示item
...
@@ -57,7 +94,8 @@ export default class MainScene extends Scene {
...
@@ -57,7 +94,8 @@ export default class MainScene extends Scene {
*/
*/
private
openMyReward
()
{
private
openMyReward
()
{
//创建ListPage并添加到舞台
//创建ListPage并添加到舞台
UIManager
.
stage
.
addChild
(
new
class
extends
ListPage
{
this
.
myUILayer
.
visible
=
true
;
this
.
myUILayer
.
addChild
(
new
class
extends
ListPage
{
//重写方法以加载数据
//重写方法以加载数据
loadMore
(
array
:
any
[])
{
loadMore
(
array
:
any
[])
{
//请求获取我的奖品
//请求获取我的奖品
...
@@ -70,7 +108,17 @@ export default class MainScene extends Scene {
...
@@ -70,7 +108,17 @@ export default class MainScene extends Scene {
onTap
:
async
()
=>
{
//点击item后响应的操作
onTap
:
async
()
=>
{
//点击item后响应的操作
//获取域名
//获取域名
let
domain
=
await
MUtils
.
getDomain
();
let
domain
=
await
MUtils
.
getDomain
();
window
.
location
.
href
=
domain
+
"/aaw/projectx/takePrize?projectOrderNo="
+
i
[
"id"
];
if
(
i
[
"extra"
][
"refType"
]
!=
"coupon"
)
{
MUtils
.
jumpLink
(
domain
+
"/aaw/projectx/takePrize?projectOrderNo="
+
i
[
"id"
])
}
else
{
Loading
.
instace
.
show
();
NetManager
.
ins
.
sendGet
(
MUrl
.
GetPrizeCoupons
,
{
projectOrderNo
:
i
[
"id"
]
},
(
res
)
=>
{
MUtils
.
jumpLink
(
res
[
"data"
][
"link"
]);
Loading
.
instace
.
hide
();
},
(
res
)
=>
{
return
!
(
res
[
"code"
]
==
"0000000000"
);
},
10
);
}
}
}
});
});
}
}
...
@@ -87,11 +135,11 @@ export default class MainScene extends Scene {
...
@@ -87,11 +135,11 @@ export default class MainScene extends Scene {
* 更新剩余免费抽奖次数
* 更新剩余免费抽奖次数
*/
*/
private
updateLotteryTime
()
{
private
updateLotteryTime
()
{
this
.
getLotteryTime
((
lotteryTime
)
=>
{
this
.
getLotteryTime
(
async
(
lotteryTime
)
=>
{
if
(
lotteryTime
>
0
)
{
if
(
lotteryTime
>
0
)
{
this
.
labelLotteryTime
.
text
=
`恭喜你,获得
${
lotteryTime
}
次免费抽奖机会
`
;
this
.
costTip
.
text
=
`今日免费抽奖:
${
lotteryTime
}
次
`
;
}
else
{
}
else
{
this
.
labelLotteryTime
.
text
=
"9积分/1
次"
;
this
.
costTip
.
text
=
await
this
.
getLotteryCost
()
+
"/
次"
;
}
}
});
});
}
}
...
@@ -103,20 +151,19 @@ export default class MainScene extends Scene {
...
@@ -103,20 +151,19 @@ export default class MainScene extends Scene {
public
lottery
(
param
:
object
=
{})
{
public
lottery
(
param
:
object
=
{})
{
NetManager
.
ins
.
sendGet
(
MUrl
.
Lottery
,
param
,
(
res
)
=>
{
NetManager
.
ins
.
sendGet
(
MUrl
.
Lottery
,
param
,
(
res
)
=>
{
if
(
!
res
[
"success"
]
||
res
[
"success"
]
==
"false"
)
{
if
(
!
res
[
"success"
]
||
res
[
"success"
]
==
"false"
)
{
PanelCtrl
.
instance
.
show
(
ToastPanel
,
{
msg
:
res
[
"
cod
e"
]
});
PanelCtrl
.
instance
.
show
(
ToastPanel
,
{
msg
:
res
[
"
messag
e"
]
});
return
;
return
;
}
}
let
prizeType
=
res
[
"data"
][
"prizeType"
];
let
lotteryPrizeId
=
res
[
"data"
][
"prizeId"
];
NetManager
.
ins
.
sendGet
(
MUrl
.
QueryPrize
,
{
ids
:
res
[
"data"
][
prizeIdKey
]
},
(
res
)
=>
{
let
userRecordId
=
res
[
"data"
][
"userRecordId"
];
let
prize
=
res
[
"data"
][
0
];
if
(
lotteryPrizeId
==
"thanks"
)
{
if
(
prizeType
==
"thanks"
)
{
PanelCtrl
.
instance
.
show
(
NotWinningPanel
);
PanelCtrl
.
instance
.
show
(
NotWinningPanel
);
}
else
{
}
else
{
NetManager
.
ins
.
sendGet
(
MUrl
.
QueryPrize
,
{
ids
:
lotteryPrizeId
},
async
(
res
)
=>
{
PanelCtrl
.
instance
.
show
(
WinningPanel
,
{
prizeData
:
prize
,
prizeType
:
prizeType
});
PanelCtrl
.
instance
.
show
(
WinningPanel
,
{
queryPrizeData
:
res
[
"data"
][
0
],
userRecordId
:
userRecordId
});
}
});
});
}
this
.
updateLotteryTime
();
this
.
updateLotteryTime
();
});
});
}
}
...
@@ -131,12 +178,22 @@ export default class MainScene extends Scene {
...
@@ -131,12 +178,22 @@ export default class MainScene extends Scene {
});
});
}
}
public
getLotteryCost
()
{
return
new
Promise
<
string
>
((
resolve
)
=>
{
NetManager
.
ins
.
sendGet
(
MUrl
.
GetProjectUserInfo
,
undefined
,
(
res
)
=>
{
this
.
getLotteryTime
((
p1
,
credits
)
=>
{
resolve
(
`
${
credits
}${
res
[
"data"
][
"unitName"
]}
`
);
});
});
})
}
/**
/**
* 获取免费抽奖次数
* 获取免费抽奖次数
*/
*/
private
getLotteryTime
(
callback
:
(
lotteryTime
:
number
)
=>
void
)
{
private
getLotteryTime
(
callback
:
(
lotteryTime
:
number
,
credits
:
number
)
=>
void
)
{
NetManager
.
ins
.
sendGet
(
MUrl
.
GetLotteryTime
,
undefined
,
(
response
)
=>
{
NetManager
.
ins
.
sendGet
(
MUrl
.
GetLotteryTime
,
undefined
,
(
response
)
=>
{
callback
(
response
[
"data"
]);
callback
(
response
[
"data"
]
[
"remainTime"
],
response
[
"data"
][
"credits"
]
);
});
});
}
}
}
}
egret/src/components/ComponentBase.ts
View file @
8a2babab
...
@@ -47,7 +47,7 @@ export default class ComponentBase extends eui.Component {
...
@@ -47,7 +47,7 @@ export default class ComponentBase extends eui.Component {
this
.
skinName
=
getSkinPath
(
this
.
skinKey
);
this
.
skinName
=
getSkinPath
(
this
.
skinKey
);
}
}
public
get
skinKey
()
{
return
this
[
"constructor"
][
"name"
]
;
}
public
get
skinKey
()
{
return
null
;
}
//获取资源组名字
//获取资源组名字
public
get
groupName
()
{
return
null
}
public
get
groupName
()
{
return
null
}
...
...
egret/src/components/ListPage.ts
View file @
8a2babab
import
{
Decorator
}
from
"../Decorator/Decorator"
;
import
{
Decorator
}
from
"../Decorator/Decorator"
;
import
{
MUtils
}
from
"../MUtils"
;
import
{
MUtils
}
from
"../MUtils"
;
@
Decorator
.
ClassNameSkin
@
Decorator
.
ClassNameSkin
(
"ListPage"
)
export
default
class
ListPage
extends
eui
.
Component
{
export
default
class
ListPage
extends
eui
.
Component
{
public
title
:
eui
.
Label
;
public
title
:
eui
.
Label
;
public
btnBack
:
eui
.
Button
;
public
btnBack
:
eui
.
Button
;
...
@@ -9,6 +9,15 @@ export default class ListPage extends eui.Component {
...
@@ -9,6 +9,15 @@ export default class ListPage extends eui.Component {
public
scroller
:
eui
.
Scroller
;
public
scroller
:
eui
.
Scroller
;
public
readonly
scrollDistanceToLoadMore
=
200
;
public
readonly
scrollDistanceToLoadMore
=
200
;
private
loadFinish
=
true
;
constructor
()
{
super
();
this
.
top
=
0
;
this
.
left
=
0
;
this
.
right
=
0
;
this
.
bottom
=
0
;
}
public
loadMore
(
dataArray
:
any
[])
{
}
public
loadMore
(
dataArray
:
any
[])
{
}
...
@@ -24,13 +33,15 @@ export default class ListPage extends eui.Component {
...
@@ -24,13 +33,15 @@ export default class ListPage extends eui.Component {
private
isLoadingMore
=
false
;
private
isLoadingMore
=
false
;
onLoad
()
{
onLoad
()
{
this
.
title
.
text
=
"你的奖品"
;
//
this.title.text = "你的奖品";
this
.
btnBack
.
onTap
(
this
,
()
=>
{
this
.
btnBack
.
onTap
(
this
,
()
=>
{
//TODO
this
.
parent
.
visible
=
false
;
this
.
destroy
();
this
.
destroy
();
});
});
this
.
scroller
.
addEventListener
(
egret
.
Event
.
CHANGE
,
()
=>
{
this
.
scroller
.
addEventListener
(
egret
.
Event
.
CHANGE
,
()
=>
{
if
(
!
this
.
isLoadingMore
&&
(
this
.
scroller
.
viewport
.
scrollV
+
this
.
scroller
.
height
)
>=
(
this
.
scroller
.
viewport
.
contentHeight
-
this
.
scrollDistanceToLoadMore
))
{
if
(
!
this
.
loadFinish
&&
!
this
.
isLoadingMore
&&
(
this
.
scroller
.
viewport
.
scrollV
+
this
.
scroller
.
height
)
>=
(
this
.
scroller
.
viewport
.
contentHeight
-
this
.
scrollDistanceToLoadMore
))
{
this
.
isLoadingMore
=
true
;
this
.
isLoadingMore
=
true
;
this
.
onLoadMore
();
this
.
onLoadMore
();
}
}
...
@@ -49,8 +60,7 @@ export default class ListPage extends eui.Component {
...
@@ -49,8 +60,7 @@ export default class ListPage extends eui.Component {
async
dataChanged
()
{
async
dataChanged
()
{
this
.
onTap
(
this
,
this
.
data
.
onTap
);
this
.
onTap
(
this
,
this
.
data
.
onTap
);
this
.
text1
.
text
=
this
.
data
.
text1
;
this
.
text1
.
text
=
this
.
data
.
text1
;
this
.
img
.
texture
=
await
MUtils
.
loadImage
(
this
.
data
.
imageUrl
);
this
.
img
.
source
=
await
MUtils
.
loadImage
(
this
.
data
.
imageUrl
);
this
.
validateNow
();
}
}
}
}
...
...
egret/src/ctrls/panelCtrl.ts
View file @
8a2babab
...
@@ -13,7 +13,7 @@ export default class PanelCtrl {
...
@@ -13,7 +13,7 @@ export default class PanelCtrl {
this
.
_parent
=
parent
;
this
.
_parent
=
parent
;
}
}
show
(
type
:
any
,
data
?:
any
,
hasMask
:
boolean
=
true
,
time
:
number
=
2500
)
{
show
(
type
:
any
,
data
?:
any
,
hasMask
:
boolean
=
true
,
time
:
number
=
2500
)
{
const
cls
=
type
;
const
cls
=
type
;
Loading
.
instace
.
show
();
Loading
.
instace
.
show
();
const
panel
:
Panel
=
new
cls
(
data
,
hasMask
,
time
);
const
panel
:
Panel
=
new
cls
(
data
,
hasMask
,
time
);
...
...
egret/src/views/layers.ts
View file @
8a2babab
class
Layers
extends
eui
.
UILayer
{
class
Layers
extends
eui
.
UILayer
{
private
_topLayer
:
eui
.
UILayer
;
private
_topLayer
:
eui
.
UILayer
;
private
_popupLayer
:
eui
.
UILayer
;
private
_popupLayer
:
eui
.
UILayer
;
private
_sceneLayer
:
eui
.
UILayer
;
private
_sceneLayer
:
eui
.
UILayer
;
public
myLayer
:
eui
.
UILayer
;
init
(
root
:
eui
.
UILayer
)
{
init
(
root
:
eui
.
UILayer
)
{
root
.
addChild
(
this
);
root
.
addChild
(
this
);
this
.
_topLayer
=
new
eui
.
UILayer
();
this
.
_topLayer
=
new
eui
.
UILayer
();
this
.
_popupLayer
=
new
eui
.
UILayer
();
this
.
_popupLayer
=
new
eui
.
UILayer
();
this
.
_sceneLayer
=
new
eui
.
UILayer
();
this
.
_sceneLayer
=
new
eui
.
UILayer
();
this
.
myLayer
=
new
eui
.
UILayer
();
this
.
addChild
(
this
.
_sceneLayer
);
this
.
addChild
(
this
.
_sceneLayer
);
this
.
addChild
(
this
.
_popupLayer
);
this
.
addChild
(
this
.
_popupLayer
);
this
.
addChild
(
this
.
myLayer
);
this
.
addChild
(
this
.
_topLayer
);
this
.
addChild
(
this
.
_topLayer
);
this
.
_popupLayer
.
visible
=
false
;
this
.
_popupLayer
.
visible
=
false
;
this
.
_topLayer
.
visible
=
false
;
this
.
_topLayer
.
visible
=
false
;
// this._sceneLayer.percentHeight = 100;
// this._sceneLayer.percentHeight = 100;
}
}
...
...
mock/config.js
View file @
8a2babab
...
@@ -9,7 +9,7 @@ const config = {
...
@@ -9,7 +9,7 @@ const config = {
"/projectx/{projectId}/credits/creditsCost.do"
:
{
"/projectx/{projectId}/credits/creditsCost.do"
:
{
data
:
"CreditsCost"
data
:
"CreditsCost"
},
},
"/projectx/{projectId}/strategyId
12138
.query"
:
{
"/projectx/{projectId}/strategyId.query"
:
{
data
:
"GetPrizeList"
data
:
"GetPrizeList"
},
},
"/projectx/{projectId}/records.query"
:
{
"/projectx/{projectId}/records.query"
:
{
...
@@ -26,15 +26,18 @@ const config = {
...
@@ -26,15 +26,18 @@ const config = {
},
},
"/projectx/getDomain.query"
:
{
"/projectx/getDomain.query"
:
{
data
:
"GetDomain"
data
:
"GetDomain"
},
"/projectx/{projectId}/credits/queryStatus.query"
:
{
data
:
"QueryCreditsCost"
}
}
}
}
let
p
eojex
tId
=
"3"
;
let
p
rojec
tId
=
"3"
;
for
(
let
item
in
config
)
{
for
(
let
item
in
config
)
{
if
(
config
.
hasOwnProperty
(
item
))
{
if
(
config
.
hasOwnProperty
(
item
))
{
if
(
item
.
indexOf
(
"{projectId}"
)
!=
-
1
)
{
if
(
item
.
indexOf
(
"{projectId}"
)
!=
-
1
)
{
let
newKey
=
item
.
replace
(
"{projectId}"
,
p
eojex
tId
);
let
newKey
=
item
.
replace
(
"{projectId}"
,
p
rojec
tId
);
config
[
newKey
]
=
config
[
item
];
config
[
newKey
]
=
config
[
item
];
delete
config
[
item
];
delete
config
[
item
];
item
=
newKey
;
item
=
newKey
;
...
...
mock/json/Lottery.json
View file @
8a2babab
{
{
"success"
:
fals
e
,
"success"
:
tru
e
,
"message"
:
""
,
"message"
:
""
,
"code"
:
"
无免费次数
"
,
"code"
:
""
,
"data"
:
{
"data"
:
{
"optionId"
:
"r2324"
,
"optionId"
:
"r2324"
,
"prizeId"
:
"
ga58ef339
"
,
"prizeId"
:
"
1111111
"
,
"prizeType"
:
"
thanks
"
,
"prizeType"
:
""
,
"userRecordId"
:
343
,
"userRecordId"
:
343
,
"url"
:
""
"url"
:
""
}
}
...
...
mock/json/QueryCreditsCost.json
0 → 100644
View file @
8a2babab
{
"success"
:
true
,
"data"
:
{
"state"
:
1
}
}
\ No newline at end of file
mock/json/QueryPrize.json
View file @
8a2babab
...
@@ -5,7 +5,7 @@
...
@@ -5,7 +5,7 @@
"id"
:
"g42b074e4"
,
"id"
:
"g42b074e4"
,
"name"
:
"实物111"
,
"name"
:
"实物111"
,
"refId"
:
"49356"
,
"refId"
:
"49356"
,
"refType"
:
"
object
"
,
"refType"
:
"
coupon
"
,
"stock"
:
100
,
"stock"
:
100
,
"type"
:
2
"type"
:
2
}
}
...
...
mock/json/getLotteryTime.json
View file @
8a2babab
...
@@ -2,5 +2,5 @@
...
@@ -2,5 +2,5 @@
"success"
:
"true"
,
"success"
:
"true"
,
"message"
:
""
,
"message"
:
""
,
"code"
:
""
,
"code"
:
""
,
"data"
:
5
"data"
:
0
}
}
\ No newline at end of file
t.html
0 → 100644
View file @
8a2babab
<html>
<head>
<meta
charset=
"utf-8"
>
<title>
永辉种红包分享页
</title>
<meta
name=
"viewport"
content=
"width=device-width,initial-scale=1, minimum-scale=1, maximum-scale=1, user-scalable=no"
>
<meta
name=
"apple-mobile-web-app-capable"
content=
"yes"
>
<meta
name=
"full-screen"
content=
"true"
>
<meta
name=
"screen-orientation"
content=
"portrait"
>
<meta
name=
"x5-fullscreen"
content=
"true"
>
<meta
name=
"360-fullscreen"
content=
"true"
>
<script>
var
__startTime__
=
Date
.
now
()
</script>
</head>
<body>
<div
style=
"margin: auto; width: 100%; height: 100%; overflow: hidden; position: absolute;"
class=
"egret-player"
data-entry-class=
"Main"
data-orientation=
"auto"
data-scale-mode=
"showAll"
data-frame-rate=
"60"
data-content-width=
"750"
data-content-height=
"1624"
data-multi-fingered=
"2"
data-show-fps=
"false"
data-show-log=
"false"
data-show-fps-style=
"x:0,y:0,size:12,textColor:0xffffff,bgAlpha:0.9"
>
<canvas
width=
"376"
height=
"668"
style=
"cursor: inherit; position: absolute; top: -0.5px; bottom: 0px; left: -0.5px; right: 0px; transform-origin: 0% 0% 0px; transform: matrix(1, 0, 0, 1, 0, 0);"
></canvas>
<div
id=
"StageDelegateDiv"
style=
"position: absolute; left: -0.5px; top: -0.5px; border: none; padding: 0px; transform: matrix(1, 0, 0, 1, 0, 0); transform-origin: 0% 0% 0px;"
>
<div
style=
"position: absolute; left: 0px; top: -100px; border: none; padding: 0px; width: 0px; height: 0px; transform-origin: 0% 0% 0px;"
>
<textarea
id=
"egretTextarea"
tabindex=
"-1"
style=
"resize: none; width: 1px; height: 12px; position: absolute; left: 0px; top: 0px; border: none; padding: 0px; outline: thin; background: none; overflow: hidden; word-break: break-all; opacity: 0;"
></textarea><input
id=
"egretInput"
type=
"text"
tabindex=
"-1"
style=
"width: 1px; height: 12px; position: absolute; left: 0px; top: 0px; border: none; padding: 0px; outline: thin; background: none; overflow: hidden; word-break: break-all; opacity: 0;"
>
</div>
</div>
</div>
<style>
html
,
body
{
-ms-touch-action
:
none
;
background-repeat
:
no-repeat
;
background-color
:
#ffffff
;
background-size
:
100%
;
background-position
:
center
;
padding
:
0
;
border
:
0
;
margin
:
0
;
height
:
100%
;
}
*
:focus
{
outline
:
none
}
*
{
margin
:
0
;
padding
:
0
;
}
</style>
<script>
//资源路径
var
projectId
=
"3"
;
var
strategyId
=
"strategyId"
;
var
toPlaywayId
=
"w624c4da9"
;
var
toActionId
=
"doJoin"
;
var
resPath
=
"https://yun.duiba.com.cn/db_games/activity/yangggou_yunji/1568102134/"
;
//record
var
recordUrl
=
"/crecord/record"
;
function
resolve
(
a
)
{
var
b
=
eval
(
a
);
return
b
;
}
</script>
<script
crossorigin=
"anonymous"
src=
"//yun.duiba.com.cn/db_games/lib2_game.min.js"
></script>
<script
crossorigin=
"anonymous"
src=
"//yun.duiba.com.cn/db_games/howler.min.js"
></script>
<script
crossorigin=
"anonymous"
src=
"//yun.duiba.com.cn/db_games/activity/yangggou_yunji/1568102134/resource/default.thm.js"
></script>
<script
crossorigin=
"anonymous"
src=
"//yun.duiba.com.cn/db_games/activity/yangggou_yunji/1568103385/output.js"
></script>
<script>
egret
.
ImageLoader
.
crossOrigin
=
"anonymous"
;
/**
* {
* "renderMode":, //Engine rendering mode, "canvas" or "webgl"
* "audioType": 0 //Use the audio type, 0: default, 2: web audio, 3: audio
* "antialias": //Whether the anti-aliasing is enabled in WebGL mode, true: on, false: off, defaults to false
* "calculateCanvasScaleFactor": //a function return canvas scale factor
* }
**/
egret
.
runEgret
({
renderMode
:
"webgl"
,
audioType
:
0
,
calculateCanvasScaleFactor
:
function
(
context
)
{
var
backingStore
=
context
.
backingStorePixelRatio
||
context
.
webkitBackingStorePixelRatio
||
context
.
mozBackingStorePixelRatio
||
context
.
msBackingStorePixelRatio
||
context
.
oBackingStorePixelRatio
||
context
.
backingStorePixelRatio
||
1
;
return
(
window
.
devicePixelRatio
||
1
)
/
backingStore
;
}
});
</script>
<script
type=
"text/javascript"
src=
"https://res.wx.qq.com/open/js/jweixin-1.2.0.js"
></script>
<script>
</script>
</body>
</html>
\ No newline at end of file
t.js
0 → 100644
View file @
8a2babab
angular
.
module
(
'finance2'
,
[])
.
factory
(
'currencyConverter'
,
function
()
{
var
currencies
=
[
'USD'
,
'EUR'
,
'CNY'
],
usdToForeignRates
=
{
USD
:
1
,
EUR
:
0.74
,
CNY
:
6.09
};
return
{
currencies
:
currencies
,
convert
:
convert
};
function
convert
(
amount
,
inCurr
,
outCurr
)
{
return
amount
*
usdToForeignRates
[
outCurr
]
*
1
/
usdToForeignRates
[
inCurr
];
}
});
\ 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