Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
self-support
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
李俊赕
self-support
Commits
780731be
Commit
780731be
authored
May 10, 2021
by
zhengzy
Browse files
Options
Browse Files
Download
Plain Diff
我的合同
parents
386939b0
902493b1
Changes
19
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
19 changed files
with
1476 additions
and
1205 deletions
+1476
-1205
order.js
src/common/api/order.js
+6
-0
http.interceptor.js
src/common/http.interceptor.js
+4
-4
XhFiles.vue
src/components/createCom/XhFiles.vue
+10
-4
preview.vue
src/components/photo/preview.vue
+2
-2
setting.vue
src/components/photo/setting.vue
+444
-454
standard.vue
src/components/photo/standard.vue
+2
-2
index.vue
src/components/take/index.vue
+581
-578
w-navbar.vue
src/components/w-navbar/w-navbar.vue
+75
-0
pages.json
src/pages.json
+21
-2
index.vue
src/pages/index/index.vue
+0
-1
mine.vue
src/pages/index/mine.vue
+213
-55
index.vue
src/pages/login/index.vue
+6
-14
index.vue
src/pages/mine/address/index.vue
+54
-35
complete.vue
src/pages/order/complete.vue
+22
-15
list.vue
src/pages/photo/list.vue
+25
-25
index.js
src/store/index.js
+3
-1
u-button.vue
src/uview-ui/components/u-button/u-button.vue
+4
-3
u-subsection.vue
src/uview-ui/components/u-subsection/u-subsection.vue
+2
-8
mpShare.js
src/uview-ui/libs/mixin/mpShare.js
+2
-2
No files found.
src/common/api/order.js
View file @
780731be
...
...
@@ -74,6 +74,11 @@ let orderApiFun = function(vm){
* 获取师傅水印 or 默认水印
*/
let
getWatermark
=
async
(
params
=
{})
=>
await
vm
.
$u
.
get
(
prefix
+
vm
.
vuex_token
+
'/photo/watermark'
,
params
);
/**
* 保存师傅水印
*/
let
saveWatermark
=
async
(
params
=
{})
=>
await
vm
.
$u
.
post
(
prefix
+
vm
.
vuex_token
+
'/photo/watermark'
,
params
);
/**
* 获取师傅开放可选时间段
...
...
@@ -144,6 +149,7 @@ let orderApiFun = function(vm){
orderStandard
,
saveImage
,
getWatermark
,
saveWatermark
,
openTimerange
,
contactTime
,
checkRejectable
,
...
...
src/common/http.interceptor.js
View file @
780731be
...
...
@@ -16,11 +16,11 @@ const install = (Vue, vm) => {
function
toLoginPage
(){
const
app
=
getApp
()
let
jumpLoginStatus
=
app
&&
app
.
globalData
&&
app
.
globalData
.
jumpLoginStatus
if
(
!
jumpLoginStatus
){
return
let
curpath
=
vm
.
$Route
.
path
if
(
curpath
==
'/pages/login/index'
)
{
// 如果已经在登录页,无需再次跳转
return
false
}
app
.
globalData
.
jumpLoginStatus
=
false
vm
.
$u
.
route
(
'/pages/login/index'
);
}
Vue
.
prototype
.
$u
.
http
.
setConfig
({
...
...
src/components/createCom/XhFiles.vue
View file @
780731be
...
...
@@ -72,7 +72,13 @@
}
},
methods
:
{
selectUpload
(){
selectUpload
(){
if
(
this
.
imgList
.
length
===
10
)
{
return
this
.
$refs
.
uToast
.
show
({
title
:
'图片已超出最大数量'
,
type
:
'error'
,
})
}
// 弹窗展示
this
.
maskShow
=
true
},
...
...
@@ -104,14 +110,14 @@
setValue
()
{
const
dataValue
=
[]
this
.
imgList
.
map
(
item
=>
{
dataValue
.
push
(
item
.
src
)
})
dataValue
.
push
(
item
.
path
)
})
this
.
valueChange
(
dataValue
)
},
closeTake
(
val
)
{
if
(
val
&&
val
.
length
>
0
){
val
.
forEach
((
item
,
index
,
array
)
=>
{
item
.
path
=
item
.
src
item
.
path
=
item
.
key
this
.
imgList
.
push
(
item
)
})
this
.
setValue
()
...
...
src/components/photo/preview.vue
View file @
780731be
...
...
@@ -125,7 +125,7 @@
photo
.
currentItemLength
=
10
this
.
continuePhoto
()
// 完成本项
this
.
$emit
(
'finish'
)
//
this.$emit('finish')
},
// 确认图片
continuePhoto
()
{
...
...
@@ -139,7 +139,7 @@
},
submitFile
()
{
const
photo
=
getApp
().
globalData
.
photo
photo
.
currentItemLength
=
photo
.
currentItemLength
+
1
if
(
photo
.
currentItemLength
<
10
)
photo
.
currentItemLength
=
photo
.
currentItemLength
+
1
uni
.
hideLoading
()
// 当前项的图片显示
// 拍照项张数目增加 等于10张
...
...
src/components/photo/setting.vue
View file @
780731be
This diff is collapsed.
Click to expand it.
src/components/photo/standard.vue
View file @
780731be
...
...
@@ -3,13 +3,13 @@
<view
class=
"wrap"
>
<swiper
class=
"swiper-box"
:current=
"swiperCurrent"
@
transition=
"transition"
@
animationfinish=
"animationfinish"
>
<swiper-item
class=
"swiper-item"
v-if=
"currentItem.main
_point && currentItem.main_p
oint.length > 0"
>
<swiper-item
class=
"swiper-item"
v-if=
"currentItem.main
Point && currentItem.mainP
oint.length > 0"
>
<view
class=
"inner txt-inner"
:style=
"
{'background-image':'url(/static/photo/shadow-bg.png)'}">
<view
class=
"title"
>
拍照要求
</view>
<view
class=
"txt-box"
>
<view
class=
"txt"
v-for=
"(txt,index) in currentItem.main
_p
oint"
:key=
"index"
>
<view
class=
"txt"
v-for=
"(txt,index) in currentItem.main
P
oint"
:key=
"index"
>
{{
index
+
1
}}
.
{{
txt
}}
</view>
<view
class=
"txt tips"
v-if=
"currentItem.note"
>
...
...
src/components/take/index.vue
View file @
780731be
This diff is collapsed.
Click to expand it.
src/components/w-navbar/w-navbar.vue
0 → 100644
View file @
780731be
<
template
>
<u-navbar
:height=
"40"
:background=
"background"
:back-icon-color=
"navbarColor"
:title=
"title"
:titleColor=
"navbarColor"
:is-back=
"isBack"
:is-fixed=
"isFixed"
:title-bold=
"true"
:border-bottom=
"false"
>
</u-navbar>
</
template
>
<
script
>
/**
* navbar 自定义导航栏
* @description 此组件一般用于在特殊情况下,需要自定义导航栏的时候用到,一般建议使用uniapp自带的导航栏。
* @tutorial https://www.uviewui.com/components/navbar.html
* @property {String Number} height 导航栏高度(不包括状态栏高度在内,内部自动加上),注意这里的单位是px(默认40)
* @property {String} navbar-Color 导航栏内容的颜色(默认#333333)
* @property {String} title 导航栏标题,如设置为空字符,将会隐藏标题占位区域
* @property {String Number} title-width 导航栏标题的最大宽度,内容超出会以省略号隐藏,单位rpx(默认250)
* @property {Boolean} is-back 是否显示导航栏左边返回图标和辅助文字(默认true)
* @property {Object} background 导航栏背景设置,见官网说明(默认{ background: '#ffffff' })
* @property {Boolean} is-fixed 导航栏是否固定在顶部(默认true)
* @example <w-navbar title="剑未配妥,出门已是江湖"></w-navbar>
*/
export
default
{
name
:
"w-navbar"
,
props
:
{
height
:
{
type
:
String
,
default
:
"40"
},
background
:
{
type
:
Object
,
default
(){
return
{
backgroundColor
:
'none'
}
}
},
navbarColor
:
{
type
:
String
,
default
:
"#333333"
},
title
:
{
type
:
String
,
default
:
""
},
titleBold
:
{
type
:
Boolean
,
default
:
true
},
isBack
:
{
type
:
Boolean
,
default
:
true
},
isFixed
:
{
type
:
Boolean
,
default
:
true
},
},
data
()
{
return
{
};
}
}
</
script
>
<
style
lang=
"scss"
>
</
style
>
src/pages.json
View file @
780731be
...
...
@@ -34,7 +34,8 @@
"path"
:
"pages/index/mine"
,
"style"
:
{
"navigationBarTitleText"
:
"我的"
,
"navigationStyle"
:
"custom"
"navigationStyle"
:
"custom"
,
"disableScroll"
:
true
}
},
{
...
...
@@ -145,6 +146,24 @@
"enablePullDownRefresh"
:
false
,
"navigationStyle"
:
"custom"
//隐藏系统导航栏
}
},
{
"path"
:
"address/index"
,
"style"
:
{
"navigationBarTitleText"
:
"收获地址"
,
"enablePullDownRefresh"
:
false
,
"navigationStyle"
:
"custom"
,
//
隐藏系统导航栏
"disableScroll"
:
true
}
},
{
"path"
:
"address/addSite"
,
"style"
:
{
"navigationBarTitleText"
:
"修改地址"
,
"enablePullDownRefresh"
:
false
,
"navigationStyle"
:
"custom"
,
//
隐藏系统导航栏
"disableScroll"
:
true
}
}
]
},
...
...
@@ -332,7 +351,7 @@
"preloadRule"
:
{
"pages/index/index"
:
{
"network"
:
"all"
,
"packages"
:
[
"pages/order"
,
"pages/learn"
]
"packages"
:
[
"pages/order"
,
"pages/learn"
,
"pages/mine"
]
}
},
"globalStyle"
:
{
...
...
src/pages/index/index.vue
View file @
780731be
...
...
@@ -108,7 +108,6 @@
watch
:
{
vuex_token
(
val
,
oldVal
)
{
// 监听token变化,如果更新则重新加载页面数据
console
.
log
(
''
,
val
,
oldVal
)
val
&&
this
.
initSettleInfo
()
}
},
...
...
src/pages/index/mine.vue
View file @
780731be
<
template
>
<view>
<u-navbar
v-if=
"!takeStatus"
:is-back=
"false"
:title-size=
"26"
title-color=
"#000"
title=
"我的"
></u-navbar>
<view
v-if=
"!takeStatus"
>
<view
class=
"u-flex user-box u-p-l-30 u-p-r-20 u-p-b-30"
>
<view
class=
"u-m-r-10"
>
<u-avatar
:src=
"pic"
size=
"140"
></u-avatar>
<view
class=
"mine-view"
>
<image
class=
"header-image"
mode=
"widthFix"
:src=
"wodebeijingImage"
></image>
<u-navbar
:is-back=
"false"
:background=
"
{ background: 'transparent' }" :border-bottom="false">
<text
class=
"title-view"
>
我的
</text>
</u-navbar>
<view
class=
"mine-content"
>
<view
class=
"header-view"
>
<view
class=
"head-image"
>
<u-avatar
:src=
"headImageUrl"
size=
"142"
mode=
"circle"
></u-avatar>
</view>
<view
class=
"u-flex-1"
>
<view
class=
"u-font-18 u-p-b-20"
>
uView ui
</view>
<view
class=
"u-font-14 u-tips-color"
>
微信号:helang_uView
</view>
<view
class=
"header-content"
>
<view
class=
"name-view"
@
click=
"handleClickName"
>
{{
name
}}
</view>
<view
:class=
"['tel-view',
{'active': info.tel}]" @click="handleClickTel">
<text>
{{
telTip
}}
</text>
<u-icon
class=
"tel-arrow-icon"
name=
"arrow-up-fill"
></u-icon>
</view>
</view>
</view>
<view
class=
"u-m-t-20"
>
<u-cell-group>
<u-cell-item
v-for=
"(item, index) in items"
:title=
"item.title"
:value=
"item.value"
:key=
"index"
>
<u-icon
slot=
"icon"
size=
"32"
name=
"search"
></u-icon>
</u-cell-item>
</u-cell-group>
</view>
<view
class=
"u-m-t-20"
>
<view
class=
"list-view"
>
<u-cell-group>
<u-cell-item
icon=
"setting"
title=
"设置"
></u-cell-item>
<view
v-for=
"(item, index) in items"
:key=
"index"
>
<u-cell-item
:value=
"item.value"
:border-bottom=
"false"
@
click=
"handleClick(index)"
>
<image
slot=
"icon"
:src=
"imageUrl + item.icon"
:style=
"item.imageStyle"
></image>
<view
slot=
"title"
class=
"item-title"
>
{{
item
.
title
}}
</view>
<view
slot=
"value"
class=
"item-value"
>
{{
value
}}
</view>
</u-cell-item>
<view
v-if=
"index == 3"
class=
"line-view"
></view>
</view>
</u-cell-group>
</view>
<view
class=
"u-m-t-20"
@
click=
"take"
>
<
!--
<
view
class=
"u-m-t-20"
@
click=
"take"
>
<u-cell-group>
<u-cell-item
icon=
"setting"
title=
"相机组件测试"
></u-cell-item>
</u-cell-group>
</view>
</view>
-->
</view>
<
take-photo
v-if=
"takeStatus"
:currentItem=
"testData"
@
close=
"closeTake"
></take-photo
>
<
!--
<take-photo
v-if=
"takeStatus"
:currentItem=
"testData"
@
close=
"closeTake"
></take-photo>
--
>
</view>
</
template
>
...
...
@@ -43,52 +48,205 @@
},
data
()
{
return
{
pic
:
'https://uviewui.com/common/logo.png'
,
show
:
true
,
takeStatus
:
false
,
testData
:
{
_id
:
'1'
,
// 规格ID
system_id
:
'2'
,
// 系统ID
brand_id
:
'3'
,
// 品牌ID
classify_id
:
'4'
,
// 分类ID
images
:
[
// 拍照要求示意图
'https://qn-static.banshouhui.com/live_mark.png'
,
'https://qn-static.banshouhui.com/live_mark.png'
,
'https://qn-static.banshouhui.com/live_mark.png'
],
main_point
:
[]
// 要点
}
serviceTel
:
'0755-81773817'
,
info
:
{},
// pic: 'https://uviewui.com/common/logo.png',
// show: true,
// takeStatus: false,
// testData: {
// _id: '1', // 规格ID
// system_id: '2', // 系统ID
// brand_id: '3', // 品牌ID
// classify_id: '4', // 分类ID
// images: [ // 拍照要求示意图
// 'https://qn-static.banshouhui.com/live_mark.png',
// 'https://qn-static.banshouhui.com/live_mark.png',
// 'https://qn-static.banshouhui.com/live_mark.png'
// ],
// main_point: [] // 要点
// }
}
},
computed
:
{
items
()
{
return
[
{
title
:
'我的钱包'
,
value
:
''
,
icon
:
''
},
{
title
:
'我的质保金'
,
value
:
''
,
icon
:
''
},
{
title
:
'我的合同'
,
value
:
''
,
icon
:
''
},
{
title
:
'我的证件'
,
value
:
''
,
icon
:
''
},
{
title
:
'我的收货地址'
,
value
:
''
,
icon
:
''
},
{
title
:
'我的仓库'
,
value
:
''
,
icon
:
''
},
{
title
:
'联系客服'
,
value
:
'6666666'
,
icon
:
''
}]
return
[{
title
:
'我的钱包'
,
value
:
''
,
icon
:
'qianbao.png'
,
imageStyle
:
'width:34rpx;height:32rpx'
},
{
title
:
'配件押金'
,
value
:
''
,
icon
:
'yajin.png'
,
imageStyle
:
'width:32rpx;height:32rpx'
},
{
title
:
'我的合同'
,
value
:
''
,
icon
:
'hetong.png'
,
imageStyle
:
'width:34rpx;height:32rpx'
},
{
title
:
'我的证件'
,
value
:
''
,
icon
:
'zhengjian.png'
,
imageStyle
:
'width:36rpx;height:28rpx'
},
{
title
:
'收货地址'
,
value
:
''
,
icon
:
'wddizhi.png'
,
imageStyle
:
'width:32rpx;height:32rpx'
},
{
title
:
'我的仓库'
,
value
:
''
,
icon
:
'cangku.png'
,
imageStyle
:
'width:36rpx;height:32rpx'
},
{
title
:
'联系客服'
,
value
:
this
.
serviceTel
,
icon
:
'lxkefu.png'
,
imageStyle
:
'width:32rpx;height:32rpx'
}
]
},
name
()
{
return
this
.
info
.
name
||
'点击登录'
},
telTip
()
{
return
this
.
info
.
tel
?
'已绑定手机号'
:
'绑定手机号'
},
imageUrl
()
{
return
process
.
uniEnv
.
qn_base_url
},
pages
()
{
return
[
''
,
''
,
''
,
''
,
'address'
,
''
,
''
]
},
headImageUrl
()
{
return
this
.
info
.
headImage
||
this
.
placeholderImage
},
wodebeijingImage
()
{
return
this
.
imageUrl
+
'wodebeijing.png'
},
placeholderImage
()
{
return
this
.
imageUrl
+
'touxiang.png'
}
},
onLoad
()
{
},
methods
:
{
take
()
{
uni
.
hideTabBar
()
this
.
takeStatus
=
true
handleClick
(
index
)
{
uni
.
navigateTo
({
url
:
'pages/mine/'
+
this
.
pages
[
index
]
})
},
closeTake
(
img
)
{
console
.
log
(
img
)
this
.
takeStatus
=
false
}
handleClickName
()
{
},
handleClickTel
()
{
},
// take() {
// uni.hideTabBar()
// this.takeStatus = true
// },
// closeTake(img) {
// console.log(img)
// this.takeStatus = false
// }
}
}
</
script
>
<
style
lang=
"scss"
scoped
>
.mine-view
{
position
:
relative
;
height
:
100vh
;
overflow
:
auto
;
background-color
:
#FFFFFF
;
.header-image
{
position
:
absolute
;
width
:
100%
;
}
.title-view
{
color
:
#FFFFFF
;
font-weight
:
bold
;
font-size
:
40rpx
;
padding-left
:
30rpx
;
}
.mine-content
{
</
style
>
.header-view
{
padding
:
30rpx
30rpx
80rpx
30rpx
;
display
:
flex
;
align-items
:
center
;
.head-image
{
width
:
142rpx
;
height
:
142rpx
;
}
.header-content
{
color
:
#FFFFFF
;
z-index
:
0
;
margin-left
:
24rpx
;
.name-view
{
font-size
:
44rpx
;
font-weight
:
bold
;
margin-bottom
:
14rpx
;
margin-top
:
6rpx
;
}
.tel-view
{
background-color
:
#FFFFFF
;
border-radius
:
26rpx
;
color
:
#2272FF
;
width
:
164rpx
;
height
:
52rpx
;
font-size
:
20rpx
;
display
:
flex
;
align-items
:
center
;
justify-content
:
center
;
&
.active
{
color
:
#FFFFFF
;
border
:
2rpx
solid
#FFFFFF
;
background-color
:
#2272FF
;
}
.tel-arrow-icon
{
transform
:rotate
(
90deg
)
;
margin-left
:
6rpx
;
}
}
}
}
.list-view
{
background-color
:
#FFFFFF
;
border-radius
:
16rpx
16rpx
0
0
;
overflow
:
hidden
;
.item-title
{
font-size
:
32rpx
;
color
:
#333333
;
margin-left
:
16rpx
;
line-height
:
32rpx
;
}
.item-value
{
font-size
:
26rpx
;
color
:
#999999
;
}
.line-view
{
height
:
2rpx
;
background-color
:
#F4F5F7
;
margin
:
30rpx
;
}
}
}
}
</
style
>
src/pages/login/index.vue
View file @
780731be
...
...
@@ -113,9 +113,6 @@ export default {
signupLogin
(
e
)
{
var
that
=
this
console
.
log
(
e
.
detail
.
errMsg
)
console
.
log
(
e
.
detail
.
iv
)
console
.
log
(
e
.
detail
.
encryptedData
)
if
(
!
e
||
!
e
.
detail
||
e
.
detail
.
errMsg
.
indexOf
(
'user deny'
)
>
-
1
)
{
wx
.
showModal
({
title
:
'提示'
,
...
...
@@ -157,22 +154,17 @@ export default {
goBackPage
()
{
let
pages
=
getCurrentPages
();
debugger
if
(
pages
.
length
)
{
let
index
=
pages
.
length
-
1
;
if
(
index
)
{
let
prevPage
=
pages
[
index
];
//上一个页面
if
(
prevPage
.
route
==
"pages/login/index"
)
{
uni
.
redirectTo
({
url
:
'pages/index/index'
})
}
else
{
if
(
prevPage
&&
prevPage
.
$vm
)
{
prevPage
.
$vm
.
isRefresh
=
true
;
}
uni
.
navigateBack
({
delta
:
1
})
if
(
prevPage
&&
prevPage
.
$vm
)
{
prevPage
.
$vm
.
isRefresh
=
true
;
}
uni
.
navigateBack
({
delta
:
1
})
}
else
{
uni
.
redirectTo
({
url
:
'pages/index/index'
...
...
src/pages/mine/address/index.vue
View file @
780731be
<
template
>
<view>
<view
class=
"item"
v-for=
"(res, index) in siteList"
:key=
"res.id"
>
<view
class=
"address-wrap"
>
<w-navbar
title=
"收货地址"
></w-navbar>
<view
class=
"item"
v-for=
"(res, sindex) in siteList"
:key=
"res.id"
>
<view
class=
"top"
>
<view
class=
"name"
>
{{
res
.
name
}}
</view>
<view
class=
"phone"
>
{{
res
.
phone
}}
</view>
<view
class=
"tag"
>
<text
v-for=
"(item, index) in res.tag"
:key=
"index"
:class=
"
{red:item.tagText=='默认'}">
{{
item
.
tagText
}}
</text>
</view>
</view>
<view
class=
"bottom"
>
广东省深圳市宝安区 自由路66号
<u-icon
name=
"edit-pen"
:size=
"40"
color=
"#999999"
></u-icon>
<view
class=
"address"
>
广东省深圳市宝安区宝城67区留芳路6号庭威产业园3栋10C
</view>
<u-icon
:name=
"editPen"
:size=
"32"
color=
"#999999"
></u-icon>
</view>
<view
class=
"default"
v-show=
"true"
>
<u-icon
name=
"checkmark-circle"
color=
"#2272FF"
size=
"32"
></u-icon>
<text
class=
"txt"
>
默认地址
</text>
</view>
</view>
<view
class=
"addSite"
@
tap=
"toAddSite"
>
...
...
@@ -25,12 +27,20 @@
export
default
{
data
()
{
return
{
background
:
{
backgroundColor
:
'none'
},
siteList
:
[]
};
},
onLoad
()
{
this
.
getData
();
},
computed
:
{
editPen
()
{
return
process
.
uniEnv
.
qn_base_url
+
'icon/edit-pen.png'
}
},
methods
:
{
getData
()
{
this
.
siteList
=
[
...
...
@@ -46,7 +56,7 @@ export default {
tagText
:
'家'
}
],
site
:
'广东省深圳市宝安区
自由路66号
'
site
:
'广东省深圳市宝安区
宝城67区留芳路6号庭威产业园3栋10C
'
},
{
id
:
2
,
...
...
@@ -70,7 +80,7 @@ export default {
},
toAddSite
(){
uni
.
navigateTo
({
url
:
'/pages/
templat
e/address/addSite'
url
:
'/pages/
min
e/address/addSite'
});
}
}
...
...
@@ -78,42 +88,51 @@ export default {
</
script
>
<
style
lang=
"scss"
scoped
>
.address-wrap
{
background-color
:
#F4F5F7
;
}
.item
{
padding
:
40rpx
20rpx
;
margin
:
30rpx
;
padding
:
50rpx
30rpx
48rpx
30rpx
;
background-color
:
#FFFFFF
;
border-radius
:
12px
;
.top
{
display
:
flex
;
font-size
:
32rpx
;
font-weight
:
bold
;
font-size
:
34rpx
;
color
:
#333333
;
line-height
:
32rpx
;
.phone
{
margin-left
:
60rpx
;
}
.tag
{
display
:
flex
;
font-weight
:
normal
;
align-items
:
center
;
text
{
display
:
block
;
width
:
60rpx
;
height
:
34rpx
;
line-height
:
34rpx
;
color
:
#ffffff
;
font-size
:
20rpx
;
border-radius
:
6rpx
;
text-align
:
center
;
margin-left
:
30rpx
;
background-color
:rgb
(
49
,
145
,
253
)
;
}
.red
{
background-color
:red
}
margin-left
:
20rpx
;
font-size
:
28rpx
;
font-weight
:
400
;
color
:
#666666
;
}
}
.bottom
{
display
:
flex
;
margin-top
:
20rpx
;
font-size
:
28rpx
;
margin-top
:
24rpx
;
justify-content
:
space-between
;
color
:
#999999
;
align-items
:
flex-start
;
font-size
:
28rpx
;
font-weight
:
400
;
color
:
#333333
;
.address
{
max-width
:
500rpx
;
line-height
:
40rpx
;
}
}
.default
{
border-top
:
2rpx
solid
#F4F5F7
;
margin-top
:
22rpx
;
padding-top
:
30rpx
;
.txt
{
margin-left
:
12rpx
;
font-size
:
28rpx
;
font-weight
:
400
;
color
:
#333333
;
line-height
:
28rpx
;
}
}
}
.addSite
{
...
...
src/pages/order/complete.vue
View file @
780731be
...
...
@@ -22,9 +22,9 @@
<view
class=
"class-item"
:key=
"groupIndex"
v-show=
"current == groupIndex"
>
<view
class=
"title"
v-if=
"groupItem.name !== '基本信息'"
>
{{
groupItem
.
name
}}
</view>
<view
class=
"class-bd"
>
<u-form-item
v-for=
"(item,itemIndex) in groupItem.items"
:key=
"itemIndex"
v-if=
"typeToComponentType(item.fieldsType)!=='location'"
label-position=
"top"
:prop=
"item.fieldsName"
:border-bottom=
"false"
v-show=
"item.fieldsId != 200 || show200"
>
<view
:class=
"[
{'label-bold': groupItem.name === '基本信息'}, 'label']">
<u-form-item
v-for=
"(item,itemIndex) in groupItem.items"
:key=
"itemIndex"
label-position=
"top"
:prop=
"item.fieldsName"
:border-bottom=
"false"
v-show=
"item.fieldsId != 200 || show200"
>
<view
:class=
"[
{'label-bold': groupItem.name === '基本信息'}, 'label']"
v-if="typeToComponentType(item.fieldsType)!=='location'"
>
<image
class=
"item-image"
:src=
"mixingImage"
v-if=
"item.required"
></image>
{{
item
.
fieldsTitle
}}
</view>
...
...
@@ -239,6 +239,9 @@
'font-size'
:
'32rpx'
,
}
},
show200
()
{
return
this
.
form
.
paymentMethodsType
!=
'03'
}
},
methods
:
{
getCompleteData
()
{
//获取工单配置的完工项目
...
...
@@ -256,7 +259,8 @@
},
saveComplete
(){
// 保存完工信息
let
self
=
this
let
param
=
{}
let
param
=
{}
self
.
list
.
forEach
((
panel
)
=>
{
param
[
panel
.
panelFieldsName
]
=
[]
panel
.
items
.
forEach
((
group
)
=>
{
...
...
@@ -272,15 +276,8 @@
})
})
})
if
(
!
param
.
base
[
0
].
fieldsValue
)
{
return
this
.
$refs
.
uToast
.
show
({
title
:
'请先选择产品规格'
,
type
:
'error'
,
})
}
self
.
$u
.
api
.
saveCompleteData
(
param
,
self
.
orderId
).
then
((
res
)
=>
{
self
.
$u
.
api
.
saveCompleteData
(
param
,
self
.
orderId
).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
this
.
$refs
.
uToast
.
show
({
title
:
'保存成功'
,
...
...
@@ -288,7 +285,7 @@
})
}
else
{
this
.
$refs
.
uToast
.
show
({
title
:
res
.
message
,
title
:
res
.
data
,
type
:
'error'
,
})
}
...
...
@@ -310,7 +307,8 @@
panelResult
.
submitted
++
}
else
if
(
value
&&
Array
.
isArray
(
value
)
&&
value
.
length
>
0
){
panelResult
.
submitted
++
}
else
if
(
first
){
// 记录第一个 为空 并且需要必填的项 用于定位
}
else
if
(
first
){
// 记录第一个 为空 并且需要必填的项 用于定位
console
.
log
(
ele
)
first
=
false
self
.
waitHandlerPanelIndex
=
panelIndex
self
.
waitHandlerGroupIndex
=
groupIndex
...
...
@@ -394,7 +392,16 @@
}
else
{
this
.
$set
(
this
.
form
,
innerItem
.
fieldsName
,
data
.
value
)
}
this
.
show200
=
innerItem
.
fieldsId
!=
199
||
data
.
value
!=
'03'
if
(
innerItem
.
fieldsId
==
199
)
{
// 选不需要收款的时候,收款金额修改为非必选
for
(
var
item
of
this
.
list
[
0
].
items
)
{
for
(
var
i
of
item
.
items
)
{
if
(
i
.
fieldsId
==
200
)
{
i
.
required
=
data
.
value
!=
'03'
}
}
}
}
console
.
log
(
this
.
form
)
},
nextStep
()
{
...
...
src/pages/photo/list.vue
View file @
780731be
...
...
@@ -5,12 +5,12 @@
<view
class=
"topView"
>
<view
:class=
"['topItemView',
{'active':activeTop===ikey}]" @click="handleTopItemChange(ikey,item)"
v-for="(item,ikey) in dataList" :key="ikey">
<text
:class=
"['ph-lst-top-index',
{'active':activeTop===ikey}]">
{{
ikey
+
1
}}
</text>
<text
class=
"topItemTitle"
>
{{
item
.
type
}}
</text>
</view>
</view>
<view
class=
"rightView"
>
<view
class=
"right-view-title"
>
拍照项有:
</view>
<scroll-view
scroll-y=
"true"
class=
"scroll-y"
>
...
...
@@ -33,7 +33,7 @@
<!-- <u-button v-if="activeTop + 1 === dataList.length" class="ph-list-button" type="error" shape="circle"
:disabled="buttonDisabled" :custom-style="buttonStyle" @click="isPopShow = true">一键清空展示图片</u-button> -->
</view>
<!-- <u-popup border-radius="10" v-model="isPopShow" safe-area-inset-bottom mode="center" width="690rpx"
height="600rpx">
<view class="ph-list-pop-title">
...
...
@@ -165,7 +165,7 @@
}
})
},
getListDataNew
()
{
getListDataNew
()
{
this
.
loading
=
true
let
self
=
this
var
data
=
{
...
...
@@ -177,7 +177,6 @@
self
.
$u
.
api
.
orderStandard
(
data
).
then
((
res
)
=>
{
this
.
loading
=
false
if
(
res
.
code
==
200
)
{
console
.
log
(
"==="
,
res
.
data
)
if
(
res
.
data
&&
res
.
data
.
length
>
0
){
let
dataList
=
[]
var
flag
=
false
;
...
...
@@ -196,7 +195,7 @@
}
else
{
flag
=
false
}
})
})
if
(
!
flag
){
var
dataItem
=
{
type
:
''
,
list
:[]}
dataItem
.
type
=
item
.
type
...
...
@@ -205,6 +204,7 @@
}
}
})
console
.
log
(
"==="
,
dataList
)
this
.
handleData
(
dataList
)
}
}
else
{
...
...
@@ -217,7 +217,6 @@
this
.
dataList
=
result
if
(
result
.
length
>
0
)
{
var
item
=
result
[
0
]
getApp
().
globalData
.
photo
.
waterSetting
=
this
.
userWatermark
this
.
rightList
=
item
.
list
}
},
...
...
@@ -253,33 +252,35 @@
})
},
// 清除图片
handleClickSure
:
function
()
{
this
.
$u
.
cloudApi
.
cleanImage
({
'token'
:
this
.
vuex_token
,
}).
then
(
res
=>
{
this
.
isPopShow
=
false
if
(
res
&&
res
.
result
)
{
this
.
getListData
()
}
handleClickSure
:
function
()
{
this
.
$u
.
cloudApi
.
cleanImage
({
'token'
:
this
.
vuex_token
,
}).
then
(
res
=>
{
this
.
isPopShow
=
false
if
(
res
&&
res
.
result
)
{
this
.
getListData
()
}
})
},
take
(
item
,
ikey
)
{
this
.
currentItemDate
=
item
const
photo
=
getApp
().
globalData
.
photo
photo
.
currentItem
=
item
photo
.
itemIndex
=
ikey
const
len
=
item
.
orderImages
?
item
.
orderImages
.
length
:
0
photo
.
currentItemLength
=
len
>
9
?
10
:
len
uni
.
hideTabBar
()
this
.
takeStatus
=
true
},
uni
.
hideTabBar
()
this
.
takeStatus
=
true
},
closeTake
(
img
)
{
console
.
log
(
img
)
if
(
img
!==
undefined
){
if
(
!
this
.
currentItemDate
.
orderImages
)
this
.
currentItemDate
.
orderImages
=
[]
// step1 添加图片
this
.
currentItemDate
.
orderImages
.
push
(
img
[
img
.
length
-
1
].
key
)
img
.
forEach
(
v
=>
{
this
.
currentItemDate
.
orderImages
.
push
(
v
.
key
)
})
// step2 保存图片
var
data
=
{
type
:
this
.
currentItemDate
.
type
,
...
...
@@ -446,7 +447,6 @@
background-color
:
#FAFAFA
;
width
:
100%
;
height
:
100
rpx
;
position
:
fixed
;
display
:
flex
;
flex-direction
:
row
;
z-index
:
1
;
...
...
@@ -499,6 +499,6 @@
}
.scroll-y
{
height
:
80
vh
;
height
:
73
vh
;
}
</
style
>
</
style
>
src/store/index.js
View file @
780731be
...
...
@@ -33,7 +33,9 @@ const store = new Vuex.Store({
vuex_user
:
lifeData
.
vuex_user
?
lifeData
.
vuex_user
:
{},
vuex_token
:
lifeData
.
vuex_token
?
lifeData
.
vuex_token
:
''
,
vuex_version
:
'1.0.1'
,
vuex_config
:
{},
vuex_config
:
{},
// 入驻信息
vuex_settled
:
{},
vuex_wx_uid
:
lifeData
.
vuex_wx_uid
||
0
,
},
mutations
:
{
...
...
src/uview-ui/components/u-button/u-button.vue
View file @
780731be
...
...
@@ -26,6 +26,7 @@
:send-message-img="sendMessageImg"
:show-message-card="showMessageCard"
@getphonenumber="getphonenumber"
@getuserinfo="getuserinfo"
@error="error"
@opensetting="opensetting"
@launchapp="launchapp"
...
...
@@ -324,9 +325,9 @@ export default {
getphonenumber
(
res
)
{
this
.
$emit
(
'getphonenumber'
,
res
);
},
//
getuserinfo(res) {
//
this.$emit('getuserinfo', res);
//
},
getuserinfo
(
res
)
{
this
.
$emit
(
'getuserinfo'
,
res
);
},
error
(
res
)
{
this
.
$emit
(
'error'
,
res
);
},
...
...
src/uview-ui/components/u-subsection/u-subsection.vue
View file @
780731be
...
...
@@ -24,7 +24,6 @@
* @property {Boolean} bold 激活选项的字体是否加粗(默认true)
* @property {String} bg-color 组件背景颜色,mode为button时有效(默认#eeeeef)
* @property {String} button-color 按钮背景颜色,mode为button时有效(默认#ffffff)
* @property {String Number} border-radius 圆角值,单位rpx(默认5)
* @event {Function} change 分段器选项发生改变时触发
* @example <u-subsection active-color="#ff9900"></u-subsection>
*/
...
...
@@ -92,12 +91,7 @@
vibrateShort
:
{
type
:
Boolean
,
default
:
false
},
// 圆角值
borderRadius
:
{
type
:
[
Number
,
String
],
default
:
5
},
}
},
data
()
{
return
{
...
...
@@ -111,7 +105,7 @@
},
currentIndex
:
this
.
current
,
buttonPadding
:
3
,
// mode = button 时,组件的内边距
//
borderRadius: 5, // 圆角值
borderRadius
:
5
,
// 圆角值
firstTimeVibrateShort
:
true
// 组件初始化时,会触发current变化,此时不应震动
};
},
...
...
src/uview-ui/libs/mixin/mpShare.js
View file @
780731be
...
...
@@ -2,8 +2,8 @@ module.exports = {
onLoad
()
{
// 设置默认的转发参数
this
.
$u
.
mpShare
=
{
title
:
'
充电桩安装火爆进行中...就等你
'
,
// 默认为小程序名称
path
:
'
/pages/index/index
'
,
// 默认为当前页面路径
title
:
''
,
// 默认为小程序名称
path
:
''
,
// 默认为当前页面路径
imageUrl
:
''
// 默认为当前页面的截图
}
},
...
...
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