Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
cloud-platform-ui
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
youjj
cloud-platform-ui
Commits
ce9f49f4
Commit
ce9f49f4
authored
Jul 20, 2019
by
hanfeng
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
增加app更新管理
parent
ea7e89a3
Changes
7
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
338 additions
and
361 deletions
+338
-361
index.js
src/api/admin/member/index.js
+2
-2
version.js
src/api/appManagement/version.js
+36
-3
index.js
src/router/index.js
+1
-1
index.vue
src/views/appManagement/appVersion/index.vue
+284
-87
versionPopup.vue
src/views/appManagement/appVersion/versionPopup.vue
+0
-259
index.vue
src/views/userManagement/memberManagement/index.vue
+5
-5
index.vue
src/views/userManagement/userList/index.vue
+10
-4
No files found.
src/api/admin/member/index.js
View file @
ce9f49f4
...
...
@@ -2,13 +2,13 @@ import fetch from 'utils/fetch';
export
function
getMembers
()
{
return
fetch
({
url
:
'api/admin/member/
M
anage/getMembers'
,
url
:
'api/admin/member/
m
anage/getMembers'
,
method
:
'get'
});
}
export
function
delMembershipGrade
(
id
)
{
return
fetch
({
url
:
'api/admin/member/
M
anage/delMembershipGrade/'
+
id
,
url
:
'api/admin/member/
m
anage/delMembershipGrade/'
+
id
,
method
:
'delete'
});
}
...
...
src/api/appManagement/version.js
View file @
ce9f49f4
import
fetch
from
'utils/fetch'
;
export
function
get
List
(
)
{
export
function
get
AppVersions
(
query
)
{
return
fetch
({
url
:
'/api/app/version'
,
method
:
'get'
url
:
'/api/app/version/background/getAppVersions'
,
method
:
'post'
,
data
:
query
});
}
export
function
insertAppVersion
(
obj
)
{
return
fetch
({
url
:
'/api/app/version/background/add'
,
method
:
'post'
,
data
:
obj
});
}
export
function
updateAppVersion
(
obj
)
{
return
fetch
({
url
:
'/api/app/version/background/update'
,
method
:
'put'
,
data
:
obj
});
}
export
function
removeAppVersion
(
id
)
{
return
fetch
({
url
:
'/api/app/version/background/remove/'
+
id
,
method
:
'post'
,
});
}
export
function
getAppVersion
(
id
)
{
return
fetch
({
url
:
'/api/app/version/background/getAppVersion/'
+
id
,
method
:
'get'
,
});
}
src/router/index.js
View file @
ce9f49f4
...
...
@@ -437,7 +437,7 @@ export const asyncRouterMap = [{
{
path
:
'/appManagement'
,
component
:
Layout
,
name
:
'app
版本
管理'
,
name
:
'app管理'
,
icon
:
'setting'
,
authority
:
'appManagement'
,
children
:
[
...
...
src/views/appManagement/appVersion/index.vue
View file @
ce9f49f4
This diff is collapsed.
Click to expand it.
src/views/appManagement/appVersion/versionPopup.vue
deleted
100644 → 0
View file @
ea7e89a3
<
template
>
<el-dialog
title=
"违章查询"
:visible
.
sync=
"isVisible"
>
<el-form>
<el-row>
<el-col
:span=
"24"
>
<el-form-item
label=
"订单号"
>
<span>
{{
row
.
no
}}
</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"12"
>
<el-form-item
label=
"订单金额"
>
<span>
{{
row
.
realAmount
}}
</span>
</el-form-item>
</el-col>
<el-col
:span=
"12"
>
<el-form-item
label=
"车牌号"
>
<span>
{{
row
.
vehicleNumberPlat
}}
</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"24"
>
<el-form-item
label=
"用户ID/实名"
>
<span>
{{
row
.
userId
}}
</span>
/
<span>
{{
row
.
username
}}
</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"8"
>
<el-form-item
label=
"取车"
>
<span>
{{
dateFormat
(
row
.
orderRentVehicleDetail
.
startTime
)
}}
</span>
</el-form-item>
</el-col>
<el-col
:span=
"16"
>
<el-form-item
label=
"交车公司"
>
<span>
{{
row
.
startCompanyName
}}
</span>
<span>
(
{{
row
.
orderRentVehicleDetail
.
startCityName
}}{{
row
.
orderRentVehicleDetail
.
startAddr
}}
)
</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"8"
>
<el-form-item
label=
"还车"
>
<span>
{{
dateFormat
(
row
.
orderRentVehicleDetail
.
endTime
)
}}
</span>
</el-form-item>
</el-col>
<el-col
:span=
"16"
>
<el-form-item
label=
"收车公司"
>
<span><span>
{{
row
.
endCompanyName
}}
</span>
<span>
(
{{
row
.
orderRentVehicleDetail
.
endCityName
}}{{
row
.
orderRentVehicleDetail
.
endAddr
}}
)
</span></span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col>
<el-form-item
label=
"违章截图"
:style=
"
{display:'block'}">
<!--
<el-upload-->
<!--action="https://xxtest.upyuns.com/api/universal/file/app/unauth/admin/upload"-->
<!--list-type="picture-card"-->
<!--:headers="getHeaderWithToken"-->
<!--:on-success="handleSuccess"-->
<!--:on-remove="handleRemove">-->
<!--
<i
class=
"el-icon-plus"
></i>
-->
<!--
</el-upload>
-->
<!--
<el-dialog
v-model=
"dialogVisible"
size=
"tiny"
>
-->
<!--
<img
width=
"100%"
:src=
"dialogImageUrl"
alt=
""
>
-->
<!--
</el-dialog>
-->
<el-upload
class=
"upload-demo"
:headers=
"getHeaderWithToken"
action=
"https://xxtest.upyuns.com/api/universal/file/app/unauth/admin/upload"
:on-remove=
"handleRemove"
:file-list=
"fileList2"
:on-success=
"handleSuccess"
list-type=
"picture-card"
>
<!--
<div
slot=
"tip"
class=
"el-upload__tip"
>
最多上传5张
</div>
-->
<i
class=
"el-icon-plus"
></i>
</el-upload>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-form-item
label=
"违章罚款"
style=
"display: inline-block;"
>
<el-input
v-model=
"price"
type=
"number"
placeholder=
"请输入违章罚款金额"
></el-input>
</el-form-item>
</el-row>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
@
click=
"cancel"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"okHandler('form')"
>
确 定
</el-button>
</div>
</el-dialog>
</
template
>
<
script
>
import
{
page
,
saveOrderViolation
}
from
'api/order/rentVehicle'
;
import
{
mapGetters
}
from
'vuex'
;
import
{
formatDate
}
from
'../../../utils/dateFormattor'
;
import
{
getToken
}
from
'../../../utils/auth'
;
import
{
getOneIllegalRow
}
from
'api/order/rentVehicle'
;
import
ElRow
from
"element-ui/packages/row/src/row"
;
import
ElInput
from
"../../../../node_modules/element-ui/packages/input/src/input.vue"
;
import
ElCol
from
"element-ui/packages/col/src/col"
;
import
ElFormItem
from
"../../../../node_modules/element-ui/packages/form/src/form-item.vue"
;
import
ElForm
from
"../../../../node_modules/element-ui/packages/form/src/form.vue"
;
export
default
{
props
:
[
"row"
],
name
:
'illegalDialog'
,
components
:
{
ElForm
,
ElFormItem
,
ElCol
,
ElInput
,
ElRow
},
data
()
{
return
{
price
:
undefined
,
//违章罚款金额
isVisible
:
false
,
fileList2
:[],
//违章截图
}
},
created
()
{
},
watch
:
{
isVisible
(
newValue
,
oldValue
){
if
(
!
newValue
){
this
.
$emit
(
'illegalEvent'
,
false
);
}
},
},
mounted
()
{
let
that
=
this
;
// if(that.row.refundStatus == 3) {
//refundStatus退款状态 0、未退款 1、已退还所有(取消订单时)2、 已退还部分(保留违章预备金)3、已退还所有押金(扣除该扣除的)
that
.
getOne
(
that
.
row
.
detailId
);
// }
this
.
isVisible
=
true
;
},
computed
:
{
...
mapGetters
([
'elements'
,
]),
getHeaderWithToken
()
{
return
{
Authorization
:
getToken
()};
}
},
methods
:
{
/**
* 根据id查询一条记录
* */
getOne
(
id
){
let
t
=
this
;
getOneIllegalRow
(
id
).
then
(
response
=>
{
if
(
response
.
status
==
200
){
let
arr
=
response
.
data
.
picture
.
split
(
","
);
let
fileList2
=
[];
let
p
=
{};
arr
.
map
(
function
(
item
){
p
=
{
url
:
item
};
fileList2
.
push
(
p
);
});
t
.
price
=
parseFloat
(
response
.
data
.
price
);
t
.
fileList2
=
fileList2
;
t
.
id
=
response
.
data
.
id
?
response
.
data
.
id
:
undefined
;
}
else
{
this
.
$notify
({
title
:
'失败'
,
message
:
response
.
menu
,
type
:
'error'
,
duration
:
2000
});
}
})
},
/**
* 上传成功
* */
handleSuccess
(
res
,
file
)
{
let
c
=
{
url
:
res
.
data
};
this
.
fileList2
.
push
(
c
);
this
.
showLoadingBody
=
false
;
},
/**
* 删除违章图片
* */
handleRemove
(
file
,
fileList
){
this
.
fileList2
=
fileList
;
},
/**
* 确定
* */
okHandler
()
{
let
arr
=
[];
this
.
fileList2
.
map
(
function
(
item
){
arr
.
push
(
item
.
url
);
});
let
params
=
{
picture
:
arr
.
join
(
","
),
price
:
this
.
price
,
detailId
:
this
.
row
.
detailId
,
id
:
this
.
id
};
saveOrderViolation
(
params
).
then
(
response
=>
{
if
(
response
.
status
===
200
)
{
this
.
$notify
({
title
:
'成功'
,
message
:
'创建成功'
,
type
:
'success'
,
duration
:
2000
});
this
.
$emit
(
'illegalEvent'
,
false
);
}
else
{
this
.
$notify
({
title
:
'创建失败'
,
message
:
'操作失败!'
,
type
:
'error'
,
duration
:
2000
});
}
});
},
/**
* 弹框-取消
* */
cancel
()
{
this
.
$emit
(
'illegalEvent'
,
false
);
},
/**
* 格式化时间
* @param timestamp
* @returns {*}
*/
dateFormat
(
timestamp
)
{
let
date
=
new
Date
(
timestamp
);
//时间戳为10位需*1000,时间戳为13位的话不需乘1000
return
formatDate
(
date
,
'yyyy-MM-dd hh:mm:ss'
);
},
}
}
</
script
>
<
style
>
.el-form-item__content
{
display
:
inline-block
;
}
</
style
>
src/views/userManagement/memberManagement/index.vue
View file @
ce9f49f4
...
...
@@ -115,12 +115,11 @@
<i
v-else
class=
"el-icon-plus avatar-uploader-icon"
style=
"lineHeight:100px;width:300px;height: 100px;border: 1px dashed #ccc;"
></i>
</el-upload>
<!-- https://xxtest.upyuns.com-->
</el-form-item>
</el-row>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"primary"
@
click=
"cancelSetMemberArea('membershipGrade')"
>
取消
</el-button>
<el-button
@
click=
"cancelSetMemberArea('membershipGrade')"
>
取消
</el-button>
<el-button
type=
"primary"
@
click=
"save('membershipGrade')"
>
确 定
</el-button>
</div>
</el-dialog>
...
...
@@ -219,6 +218,7 @@
},
methods
:
{
getList
()
{
this
.
listLoading
=
true
getMembers
().
then
(
res
=>
{
for
(
let
dataKey
of
res
.
data
)
{
...
...
@@ -260,9 +260,9 @@
* */
cancelSetMemberArea
(
refName
)
{
this
.
addMembershipGrade
=
false
if
(
this
.
$refs
[
refName
])
{
this
.
$refs
[
refName
].
resetFields
()
}
this
.
add
=
{}
console
.
log
(
JSON
.
stringify
(
this
.
add
))
},
/**
* 显示添加窗
...
...
src/views/userManagement/userList/index.vue
View file @
ce9f49f4
...
...
@@ -318,14 +318,14 @@
<el-radio-group
v-model=
"validityType"
>
<el-radio-button
style=
"margin-bottom: 10px;"
label=
"无"
></el-radio-button>
<el-radio-button
style=
"margin-bottom: 10px;"
label=
"永久"
></el-radio-button>
<el-radio-button
style=
"margin-bottom: 10px;"
label=
"自定义"
></el-radio-button>
<el-radio-button
style=
"margin-bottom: 10px;"
label=
"自定义"
></el-radio-button>
</el-radio-group>
<dir></dir>
<div
class=
"block"
v-if=
"validityType=='自定义'"
>
<el-date-picker
v-model=
"validTime"
type=
"datetime"
placeholder=
"请选择
注册时间范围
"
>
placeholder=
"请选择
会员有效期
"
>
</el-date-picker>
</div>
</el-form-item>
...
...
@@ -520,6 +520,7 @@
UploadMembershipList
,
saveNewMemberObject
}
from
'src/api/admin/UserMember/index'
;
import
{
formatDate
}
from
"../../../utils/dateFormattor"
;
export
default
{
name
:
'appUser'
,
...
...
@@ -797,7 +798,6 @@
this
.
listQuery
.
registrationTimeBegin
=
this
.
listQuery
.
registrationDate
?
(
new
Date
(
this
.
listQuery
.
registrationDate
[
0
]).
getTime
())
/
1000
:
null
this
.
listQuery
.
registrationTimeEnd
=
this
.
listQuery
.
registrationDate
?
(
new
Date
(
this
.
listQuery
.
registrationDate
[
1
]).
getTime
())
/
1000
:
null
alert
(
JSON
.
stringify
(
this
.
listQuery
))
this
.
getList
();
}
,
...
...
@@ -964,7 +964,6 @@
this
.
orderQuery
.
userId
=
this
.
saveUserId
let
query
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
orderQuery
))
query
.
status
=
query
.
status
?
query
.
status
-
1
:
null
// alert(JSON.stringify(query))
page
(
query
).
then
(
res
=>
{
...
...
@@ -1055,6 +1054,13 @@
if
(
bool
===
'1'
){
this
.
statusBoolean
=
true
}
},
setDate
(){
alert
(
this
.
validTime
)
if
(
!
this
.
validTime
){
let
date
=
new
Date
();
//时间戳为10位需*1000,时间戳为13位的话不需乘1000
this
.
validTime
=
formatDate
(
date
,
'yyyy-MM-dd hh:mm:ss'
);
}
}
}
...
...
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