Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
E
ElectricitySheep
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
黄媛媛
ElectricitySheep
Commits
b1e2fd66
Commit
b1e2fd66
authored
Apr 23, 2020
by
黄媛媛
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/huangyuanyuan/electricitysheep
parents
c61a8f5b
052ad79b
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
260 additions
and
113 deletions
+260
-113
App.vue
src/App.vue
+1
-0
zkcss.css
src/assets/css/zkcss.css
+6
-0
Index.vue
src/components/Index.vue
+10
-4
basicSetUp.vue
src/components/setup/basicSetUp.vue
+3
-3
zanIndex.vue
src/components/zanIndex.vue
+131
-3
index.js
src/plug/index.js
+109
-103
No files found.
src/App.vue
View file @
b1e2fd66
...
...
@@ -13,6 +13,7 @@ export default {
<
style
>
@import
"//at.alicdn.com/t/font_1769104_qg9btfnng5.css"
;
@import
"./assets/css/common.css"
;
@import
"./assets/css/zkcss.css"
;
html
,
body
{
margin
:
0
;
...
...
src/assets/css/zkcss.css
0 → 100644
View file @
b1e2fd66
.w120
{
width
:
120px
;
}
.w160
{
width
:
160px
;
}
\ No newline at end of file
src/components/Index.vue
View file @
b1e2fd66
...
...
@@ -88,7 +88,7 @@
</el-table-column>
<el-table-column
prop=
"name"
label=
"商城名称"
width=
"155"
>
<template
slot-scope=
"scope"
>
<p
style=
"color:#409EFF"
>
{{
scope
.
row
.
MallName
}}
</p>
<p
style=
"color:#409EFF
;cursor:pointer;"
@
click=
"setMallBaseId(scope.row.MallBaseId),CommonJump('mall',
{})
">
{{
scope
.
row
.
MallName
}}
</p>
<p>
账号:
{{
scope
.
row
.
Account
}}
</p>
<p>
手机:
<span
style=
"color:rgb(144, 147, 153)"
>
{{
scope
.
row
.
MobilePhone
}}
</span>
...
...
@@ -120,10 +120,10 @@
</p>
<div
style=
"margin-bottom:20px;padding: 15px 20px;"
>
<div
class=
"searchInput"
style=
"width:250px;"
>
<el-input
style=
"display:inline-block;width:225px;"
placeholder=
"请输入商城名称或用户名搜索"
v-model=
"val"
<el-input
style=
"display:inline-block;width:225px;"
@
keyup
.
enter
.
native=
"qMsg.pageIndex=1,getMiniPrograme()"
placeholder=
"请输入商城名称或用户名搜索"
v-model=
"val"
size=
"small"
clearable
>
</el-input>
<span
class=
"el-icon-search"
style=
"color:#979dad;font-size:14px;position:relative;top:1px"
></span>
<span
class=
"el-icon-search"
style=
"color:#979dad;font-size:14px;position:relative;top:1px"
></span>
</div>
</div>
...
...
@@ -133,7 +133,7 @@
</el-table-column>
<el-table-column
prop=
"name"
label=
"商城名称"
width=
"155"
>
<
template
slot-scope=
"scope"
>
<p
style=
"color:#409EFF"
>
{{
scope
.
row
.
MallName
}}
</p>
<p
style=
"color:#409EFF
;
"
>
{{
scope
.
row
.
MallName
}}
</p>
<p>
账号:
{{
scope
.
row
.
Account
}}
</p>
<p>
手机:
<span
style=
"color:rgb(144, 147, 153)"
>
{{
scope
.
row
.
MobilePhone
}}
</span>
...
...
@@ -474,6 +474,12 @@
this
.
Info
(
res
.
data
.
message
);
}
})
},
//点击商品名称设置setMallBaseId
setMallBaseId
(
Id
){
let
userInfo
=
this
.
getLocalStorage
();
userInfo
.
MallBaseId
=
Id
;
localStorage
.
mall_userInfo
=
JSON
.
stringify
(
userInfo
);
}
},
mounted
()
{
...
...
src/components/setup/basicSetUp.vue
View file @
b1e2fd66
...
...
@@ -274,10 +274,10 @@
<div
style=
"width: 50%; padding-left: 100px; zoom: 0.5;"
>
<div
style=
"width: 750px; border: 1px solid rgb(238, 238, 238);position: relative"
>
<img
src=
"../../assets/img/heads.png"
alt=
""
style=
"width: 750px;
"
>
<img
src=
"../../assets/img/heads.png"
alt=
""
:style=
"{width: '750px',background:msg.MinIcoColor==1? '#FFFFFF':'#000000'}
"
>
<div
class=
"Mintips"
:style=
"{opacity: msg.MinBackClarity/100,borderRadius:msg.MinBackCircularBead+'px'}"
>
<img
src=
"../../assets/img/fork_white.png"
alt=
""
style=
"width: 72px;height: 72px"
>
<span
style=
"padding: 0 10px
"
>
{{msg.MinTips}}
</span>
<span
:style=
"{padding: '0 10px',color:msg.MinTipsColor}
"
>
{{msg.MinTips}}
</span>
</div>
<div
class=
"triangle-up"
>
...
...
@@ -326,7 +326,7 @@
</div>
</el-tab-pane>
<el-tab-pane
label=
"显示设置"
name=
"second"
>
显示设置
</el-tab-pane>
<el-tab-pane
label=
"显示设置"
name=
"second"
>
9999
</el-tab-pane>
<el-tab-pane
label=
"悬浮按钮设置"
name=
"third"
>
悬浮按钮设置
</el-tab-pane>
</el-tabs>
<el-button
type=
"primary"
style=
"margin: 12px 0 "
>
保存
</el-button>
...
...
src/components/zanIndex.vue
View file @
b1e2fd66
...
...
@@ -11,14 +11,142 @@
margin
:
10px
0
;
border
:
1px
solid
#EBEEF5
;
}
.searchDiv
{
display
:
flex
;
flex-direction
:
row
;
padding
:
15px
;
}
.zanIndex
.el-input__inner
{
height
:
32px
;
line-height
:
32px
;
padding
:
0
10px
;
}
.zanIndex
.el-input__icon
{
line-height
:
32px
;
}
.searchDiv
>
div
{
margin-right
:
5px
;
}
.zanIndex
.el-tabs__nav-scroll
{
width
:
120px
;
margin-left
:
30px
;
}
.zanIndex
.el-tabs__nav-wrap
::after
{
content
:
""
;
position
:
absolute
;
left
:
0
;
bottom
:
0
;
width
:
100%
;
height
:
2px
;
background-color
:
#E4E7ED
;
z-index
:
1
;
height
:
1px
;
}
.zanIndex
.el-tabs__item
{
height
:
32px
;
line-height
:
32px
;
}
.zanIndex
.clean
{
color
:
#92959B
;
margin-left
:
30px
;
cursor
:
pointer
;
font-size
:
15px
;
}
.searchDiv
>
div
:last-child
{
height
:
32px
;
line-height
:
32px
;
}
.number_info
{
display
:
flex
;
width
:
100%
;
height
:
60px
;
font-size
:
28px
;
color
:
#303133
;
}
.num-info
.num-info-item
:first-of-type
{
border-left
:
0
;
}
.num-info
.num-info-item
:first-of-type
{
border-left
:
0
;
}
.info-item-name
{
font-size
:
16px
;
color
:
#92959B
;
}
</
style
>
<
template
>
<div
class=
"zanIndex"
>
<div
class=
"zanTotalTop"
>
数据概况
</div>
<div
class=
"zanIndex_Second"
>
<div
class=
"selectDiv"
>
<div
class=
"searchDiv"
>
<div>
<el-select
v-model=
"searchMsg.plat"
class=
"w120"
>
<el-option
label=
"全部平台"
:value=
'0'
></el-option>
<el-option
label=
"微信"
:value=
'1'
></el-option>
<el-option
label=
"支付宝"
:value=
'2'
></el-option>
<el-option
label=
"抖音/头条"
:value=
'3'
></el-option>
<el-option
label=
"百度"
:value=
'4'
></el-option>
</el-select>
</div>
<div>
<el-select
v-model=
"searchMsg.plat2"
filterable
class=
"w160"
>
<el-option
label=
"全部"
:value=
'0'
></el-option>
</el-select>
</div>
<div
style=
"margin-right:50px;"
>
<el-date-picker
class=
"indataPicker"
v-model=
"dateArr"
type=
"daterange"
range-separator=
"至"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
>
</el-date-picker>
</div>
<div>
<el-tabs
v-model=
"activeName"
@
tab-click=
"handleClick"
>
<el-tab-pane
label=
"7日"
name=
"first"
></el-tab-pane>
<el-tab-pane
label=
"30日"
name=
"second"
></el-tab-pane>
</el-tabs>
</div>
<div>
<span
class=
"clean"
>
清空筛选
</span>
</div>
</div>
<div
class=
"num-info"
>
<div
class=
"num-info-item"
>
<div>
1094
</div>
<div
class=
"info-item-name"
>
<span>
用户数
</span>
</div>
</div>
</div>
</div>
</div>
</
template
>
\ No newline at end of file
</
template
>
<
script
>
export
default
{
data
()
{
return
{
activeName
:
'first'
,
searchMsg
:
{
plat
:
0
,
plat2
:
0
,
dateArr
:
''
},
};
},
created
()
{
},
methods
:
{
handleClick
(){
}
},
mounted
()
{
}
};
</
script
>
\ No newline at end of file
src/plug/index.js
View file @
b1e2fd66
...
...
@@ -137,11 +137,11 @@ export default {
var
index
=
filename
.
lastIndexOf
(
"."
);
var
suffix
=
filename
.
substr
(
index
);
var
timestamp1
=
Date
.
parse
(
new
Date
());
let
str
=
''
;
if
(
this
.
isOnline
())
{
str
=
"/Test"
let
str
=
''
;
if
(
this
.
isOnline
())
{
str
=
"/Test"
}
var
newFileName
=
str
+
'/Upload/'
+
path
+
"/"
+
timestamp1
+
""
+
suffix
;
var
newFileName
=
str
+
'/Upload/'
+
path
+
"/"
+
timestamp1
+
""
+
suffix
;
var
uploadMsg
=
{
Bucket
:
"viitto-1301420277"
,
Region
:
"ap-chengdu"
,
...
...
@@ -164,9 +164,9 @@ export default {
},
function
(
err
,
data
)
{
if
(
data
&&
data
.
statusCode
==
200
)
{
var
uploadResult
=
{
resultCode
:
1
,
resultCode
:
1
,
FileName
:
fileObj
.
name
,
FileUrl
:
"http://"
+
data
.
Location
FileUrl
:
"http://"
+
data
.
Location
}
if
(
callback
)
{
callback
(
uploadResult
);
...
...
@@ -178,115 +178,121 @@ export default {
});
},
//公用跳转
Vue
.
prototype
.
CommonJump
=
function
(
path
,
obj
)
{
Vue
.
prototype
.
CommonJump
=
function
(
path
,
obj
)
{
this
.
$router
.
push
({
name
:
path
,
query
:
obj
});
}
//HTTP提交数据
Vue
.
prototype
.
apipost
=
function
(
cmd
,
msg
,
successCall
,
faildCall
,
isOnline
)
{
if
(
msg
==
null
||
msg
==
""
)
{
msg
=
{}
}
var
apiurl
=
this
.
domainManager
().
DomainUrl
+
cmd
;
var
timestamp
=
(
new
Date
()).
valueOf
();
this
.
apiurl
=
apiurl
;
if
(
!
localStorage
.
mall_userInfo
&&
localStorage
.
mall_userInfo
!=
""
&&
this
.
$route
.
path
.
toLowerCase
()
!=
"/login"
)
{
this
.
$router
.
push
({
path
:
'/login'
})
}
var
token
=
""
;
var
key
=
""
;
if
(
this
.
getLocalStorage
()
!=
null
)
{
token
=
this
.
getLocalStorage
().
Token
;
key
=
this
.
getLocalStorage
().
SecretKey
;
}
var
encodeMsg
=
encodeURIComponent
(
JSON
.
stringify
(
msg
)).
toLowerCase
();
var
md5Str
=
md5
(
`cmd=
${
cmd
}
&msg=
${
encodeMsg
}
×tamp=
${
timestamp
}
&token=
${
token
}
&key=
${
key
}
`
);
let
tempLanguage
=
0
;
if
(
localStorage
.
language
&&
localStorage
.
language
!=
''
)
{
if
(
localStorage
.
language
==
"zh-TW"
)
{
tempLanguage
=
1
;
}
else
if
(
localStorage
.
language
==
"Japanese"
)
{
tempLanguage
=
2
;
}
}
var
postData
=
{
"msg"
:
msg
,
"timestamp"
:
timestamp
,
"token"
:
token
,
"sign"
:
md5Str
,
"languageId"
:
tempLanguage
,
"cmd"
:
cmd
,
}
this
.
$http
.
post
(
apiurl
,
postData
,
{
headers
:
{
'Content-Type'
:
'application/json'
,
'Referer-Viitto'
:
this
.
$route
.
path
}
})
.
then
(
res
=>
{
if
(
res
.
data
.
resultCode
==
10000
||
res
.
data
.
resultCode
==
10001
)
{
this
.
$router
.
push
({
path
:
'/login'
});
}
else
if
(
res
.
resultCode
==
10005
)
{
this
.
$router
.
go
(
-
1
);
}
else
{
successCall
(
res
);
}
},
faildCall
)
//HTTP提交数据
Vue
.
prototype
.
apipost
=
function
(
cmd
,
msg
,
successCall
,
faildCall
,
isOnline
)
{
if
(
msg
==
null
||
msg
==
""
)
{
msg
=
{}
}
Vue
.
prototype
.
JavaGetLocalFile
=
function
(
cmd
,
msg
,
fileName
,
successCall
)
{
var
apiurl
=
this
.
domainManager
().
JavaLocalFileStreamDownLoadUrl
+
cmd
;
var
timestamp
=
(
new
Date
()).
valueOf
()
;
if
(
!
localStorage
.
mall_userInfo
&&
localStorage
.
mall_userInfo
!=
""
&&
this
.
$route
.
path
.
toLowerCase
()
!=
"/login"
)
{
this
.
$router
.
push
({
var
apiurl
=
this
.
domainManager
().
DomainUrl
+
cmd
;
var
timestamp
=
(
new
Date
()).
valueOf
()
;
this
.
apiurl
=
apiurl
;
if
(
!
localStorage
.
mall_userInfo
&&
localStorage
.
mall_userInfo
!=
""
&&
this
.
$route
.
path
.
toLowerCase
()
!=
"/login"
)
{
this
.
$router
.
push
({
path
:
'/login'
})
}
var
token
=
""
;
var
key
=
""
;
if
(
this
.
getLocalStorage
()
!=
null
)
{
token
=
this
.
getLocalStorage
().
Token
;
key
=
this
.
getLocalStorage
().
SecretKey
;
}
let
mall_userInfo
=
localStorage
.
mall_userInfo
?
JSON
.
parse
(
localStorage
.
mall_userInfo
)
:
''
;
var
encodeMsg
=
encodeURIComponent
(
JSON
.
stringify
(
msg
)).
toLowerCase
();
var
md5Str
=
md5
(
`cmd=
${
cmd
}
&msg=
${
encodeMsg
}
×tamp=
${
timestamp
}
&token=
${
token
}
&key=
${
key
}
`
);
let
tempLanguage
=
0
;
if
(
localStorage
.
language
&&
localStorage
.
language
!=
''
)
{
if
(
localStorage
.
language
==
"zh-TW"
)
{
})
}
var
token
=
""
;
var
key
=
""
;
var
MallBaseId
=
"0"
;
//小程序ID
var
TenantId
=
"0"
;
//商户Id
if
(
this
.
getLocalStorage
()
!=
null
)
{
token
=
this
.
getLocalStorage
().
Token
;
key
=
this
.
getLocalStorage
().
SecretKey
;
MallBaseId
=
this
.
getLocalStorage
().
MallBaseId
;
TenantId
=
this
.
getLocalStorage
().
TenantId
;
}
var
encodeMsg
=
encodeURIComponent
(
JSON
.
stringify
(
msg
)).
toLowerCase
();
var
md5Str
=
md5
(
`cmd=
${
cmd
}
&msg=
${
encodeMsg
}
×tamp=
${
timestamp
}
&token=
${
token
}
&key=
${
key
}
`
);
let
tempLanguage
=
0
;
if
(
localStorage
.
language
&&
localStorage
.
language
!=
''
)
{
if
(
localStorage
.
language
==
"zh-TW"
)
{
tempLanguage
=
1
;
}
else
if
(
localStorage
.
language
==
"Japanese"
)
{
}
else
if
(
localStorage
.
language
==
"Japanese"
)
{
tempLanguage
=
2
;
}
}
var
postData
=
{
"msg"
:
msg
,
"timestamp"
:
timestamp
,
"token"
:
token
,
"sign"
:
md5Str
,
"languageId"
:
tempLanguage
,
"cmd"
:
cmd
,
"MallBaseId"
:
MallBaseId
,
"TenantId"
:
TenantId
}
this
.
$http
.
post
(
apiurl
,
postData
,
{
headers
:
{
'Content-Type'
:
'application/json'
,
'Referer-Viitto'
:
this
.
$route
.
path
}
})
.
then
(
res
=>
{
if
(
res
.
data
.
resultCode
==
10000
||
res
.
data
.
resultCode
==
10001
)
{
this
.
$router
.
push
({
path
:
'/login'
});
}
else
if
(
res
.
resultCode
==
10005
)
{
this
.
$router
.
go
(
-
1
);
}
else
{
successCall
(
res
);
}
var
postData
=
{
"msg"
:
msg
,
"timestamp"
:
timestamp
,
"token"
:
token
,
"sign"
:
md5Str
,
"languageId"
:
tempLanguage
,
"cmd"
:
cmd
,
}
this
.
$http
.
post
(
apiurl
,
postData
,
{
responseType
:
'arraybuffer'
}).
then
((
res
)
=>
{
let
blob
=
new
Blob
([
res
.
data
],
{
type
:
"application/vnd.ms-excel"
})
let
url
=
URL
.
createObjectURL
(
blob
);
let
link
=
document
.
createElement
(
'a'
);
link
.
href
=
url
;
link
.
setAttribute
(
"download"
,
fileName
);
document
.
body
.
appendChild
(
link
);
link
.
click
();
successCall
(
res
);
}).
catch
(
function
(
res
)
{});
},
faildCall
)
}
Vue
.
prototype
.
JavaGetLocalFile
=
function
(
cmd
,
msg
,
fileName
,
successCall
)
{
var
apiurl
=
this
.
domainManager
().
JavaLocalFileStreamDownLoadUrl
+
cmd
;
var
timestamp
=
(
new
Date
()).
valueOf
();
if
(
!
localStorage
.
mall_userInfo
&&
localStorage
.
mall_userInfo
!=
""
&&
this
.
$route
.
path
.
toLowerCase
()
!=
"/login"
)
{
this
.
$router
.
push
({
path
:
'/login'
})
}
var
token
=
""
;
var
key
=
""
;
if
(
this
.
getLocalStorage
()
!=
null
)
{
token
=
this
.
getLocalStorage
().
Token
;
key
=
this
.
getLocalStorage
().
SecretKey
;
}
let
mall_userInfo
=
localStorage
.
mall_userInfo
?
JSON
.
parse
(
localStorage
.
mall_userInfo
)
:
''
;
var
encodeMsg
=
encodeURIComponent
(
JSON
.
stringify
(
msg
)).
toLowerCase
();
var
md5Str
=
md5
(
`cmd=
${
cmd
}
&msg=
${
encodeMsg
}
×tamp=
${
timestamp
}
&token=
${
token
}
&key=
${
key
}
`
);
let
tempLanguage
=
0
;
if
(
localStorage
.
language
&&
localStorage
.
language
!=
''
)
{
if
(
localStorage
.
language
==
"zh-TW"
)
{
tempLanguage
=
1
;
}
else
if
(
localStorage
.
language
==
"Japanese"
)
{
tempLanguage
=
2
;
}
}
var
postData
=
{
"msg"
:
msg
,
"timestamp"
:
timestamp
,
"token"
:
token
,
"sign"
:
md5Str
,
"languageId"
:
tempLanguage
,
"cmd"
:
cmd
,
}
this
.
$http
.
post
(
apiurl
,
postData
,
{
responseType
:
'arraybuffer'
}).
then
((
res
)
=>
{
let
blob
=
new
Blob
([
res
.
data
],
{
type
:
"application/vnd.ms-excel"
})
let
url
=
URL
.
createObjectURL
(
blob
);
let
link
=
document
.
createElement
(
'a'
);
link
.
href
=
url
;
link
.
setAttribute
(
"download"
,
fileName
);
document
.
body
.
appendChild
(
link
);
link
.
click
();
successCall
(
res
);
}).
catch
(
function
(
res
)
{});
}
}
}
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