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
93c59b3c
Commit
93c59b3c
authored
Jun 25, 2021
by
Facius
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'dev' of
https://git.banshouhui.com/lijundan/self-support
into dev
parents
99a8a6a8
bffc60d8
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
227 additions
and
10 deletions
+227
-10
parts.js
src/common/api/parts.js
+8
-3
pages.json
src/pages.json
+11
-2
spare.vue
src/pages/mine/warehouse/spare.vue
+11
-3
nodes.vue
src/pages/parts/nodes.vue
+25
-2
returnParts.vue
src/pages/parts/returnParts.vue
+172
-0
No files found.
src/common/api/parts.js
View file @
93c59b3c
...
...
@@ -5,7 +5,7 @@ let partsApiFun = function (vm) {
const
parts
=
'/wxh-worker-rest/rest/parts/'
const
base
=
'/wxh-worker-rest/rest/base/'
const
formType
=
{
'content-type'
:
'application/x-www-form-urlencoded'
}
const
formData
=
{
'content-type'
:
'multipart/form-data'
}
const
dataType
=
{
'content-type'
:
'multipart/form-data'
}
/**
* 配件申请单-查询网点地址信息
...
...
@@ -30,7 +30,7 @@ let partsApiFun = function (vm) {
/**
* 配件申请单-创建申请单/使用备件
*/
let
applyParts
=
async
(
params
=
{})
=>
await
vm
.
$u
.
post
(
parts
+
vm
.
vuex_token
+
'/orders'
,
params
,
formData
)
let
applyParts
=
async
(
params
=
{})
=>
await
vm
.
$u
.
post
(
parts
+
vm
.
vuex_token
+
'/orders'
,
params
,
dataType
)
/**
* 查询自己的备件仓
...
...
@@ -40,6 +40,10 @@ let partsApiFun = function (vm) {
* 查询工单的配件明细
*/
let
getWorkOrderParts
=
async
(
params
=
{})
=>
await
vm
.
$u
.
get
(
parts
+
vm
.
vuex_token
+
'/items/workOrder/'
,
params
);
/**
* 返件-备件/新件
*/
let
returnParts
=
async
(
params
=
{})
=>
await
vm
.
$u
.
post
(
parts
+
vm
.
vuex_token
+
'/return/new'
,
params
,
formType
);
const
partsApi
=
{
getSiteAddress
,
...
...
@@ -49,7 +53,8 @@ let partsApiFun = function (vm) {
getPartsList
,
applyParts
,
getMyReserve
,
getWorkOrderParts
getWorkOrderParts
,
returnParts
}
return
partsApi
}
...
...
src/pages.json
View file @
93c59b3c
...
...
@@ -551,8 +551,17 @@
"path"
:
"nodes"
,
"style"
:
{
"navigationBarTitleText"
:
""
,
"navigationBarBackgroundColor"
:
"#FFFFFF"
,
"navigationBarTitleText"
:
"配件申请、返件成功"
,
"navigationStyle"
:
"custom"
,
"enablePullDownRefresh"
:
false
}
}
,{
"path"
:
"returnParts"
,
"style"
:
{
"navigationBarTitleText"
:
"退返件"
,
"navigationStyle"
:
"custom"
,
"enablePullDownRefresh"
:
false
}
}
...
...
src/pages/mine/warehouse/spare.vue
View file @
93c59b3c
...
...
@@ -39,7 +39,7 @@
<view
class=
"bar"
v-if=
"showBounce"
>
<SubmitBar
:partNum=
"subBarInfo.partNum"
:num=
"subBarInfo.num"
:btnStatus=
"subBarInfo.btnStatus"
submitTxt=
"退件"
:allChecked=
"subBarInfo.allChecked"
:customStyle=
"customStyle"
@
select=
"allSelect"
@
submit=
"
handleSubmit
"
/>
@
submit=
"
$u.throttle(handleSubmit, 500)
"
/>
</view>
</template>
</view>
...
...
@@ -64,7 +64,8 @@
loaded
:
false
,
showBounce
:
false
,
keyword
:
''
,
searchedKeyword
:
''
searchedKeyword
:
''
,
selectedParts
:
[]
};
},
computed
:
{
...
...
@@ -207,7 +208,14 @@
this
.
partsList
[
index
].
selected
=
!
this
.
partsList
[
index
].
selected
},
handleSubmit
()
{
const
getSelected
=
(
element
)
=>
{
return
(
element
.
selected
);
}
let
parts
=
this
.
partsList
.
filter
(
getSelected
);
this
.
selectedParts
=
parts
this
.
$u
.
route
({
url
:
'pages/parts/returnParts'
,
})
},
}
};
...
...
src/pages/parts/nodes.vue
View file @
93c59b3c
<
template
>
<view
class=
"u-flex-col u-col-center node-wrap"
>
<w-navbar></w-navbar>
<u-gap
height=
"200"
></u-gap>
<u-image
width=
"224rpx"
height=
"224rpx"
:src=
"qnFile(nodeInfo.icon)"
></u-image>
<view
class=
"title"
>
{{
nodeInfo
.
title
}}
</view>
...
...
@@ -24,7 +25,7 @@
data
()
{
return
{
curType
:
0
,
returnNo
:
'
RT20210610000001
'
,
returnNo
:
''
,
nodes
:
[
{
type
:
'parts'
,
...
...
@@ -43,6 +44,16 @@
]
}
},
onLoad
(
e
)
{
if
(
e
)
{
if
(
!
this
.
$u
.
test
.
isEmpty
(
e
.
type
))
{
this
.
curType
=
Number
(
e
.
type
)
}
if
(
!
this
.
$u
.
test
.
isEmpty
(
e
.
returnNo
))
{
this
.
returnNo
=
e
.
returnNo
}
}
},
computed
:
{
nodeInfo
()
{
return
this
.
nodes
[
this
.
curType
]
...
...
@@ -59,7 +70,19 @@
return
process
.
uniEnv
.
qn_base_url
+
src
},
goBack
()
{
this
.
$u
.
route
({
type
:
'back'
})
if
(
this
.
isParts
){
this
.
$u
.
route
({
type
:
'back'
})
}
if
(
this
.
isReturn
){
var
pages
=
getCurrentPages
();
if
(
pages
.
length
>=
3
)
{
var
prevPage
=
pages
[
pages
.
length
-
3
];
prevPage
.
$vm
.
getReserveList
()
this
.
$u
.
route
({
type
:
'back'
,
delta
:
2
})
}
else
{
this
.
$u
.
route
({
type
:
'back'
})
}
}
},
copyText
(
e
)
{
console
.
log
(
e
)
...
...
src/pages/parts/returnParts.vue
0 → 100644
View file @
93c59b3c
<
template
>
<view
class=
"parts-wrap"
>
<w-navbar
title=
"退返件"
></w-navbar>
<view
class=
"form"
>
<view
class=
"row"
>
<view
class=
"label"
>
返件方式
</view>
<view
class=
"u-flex u-row-between control"
>
<view
v-for=
"(item, index) in ways"
:key=
"index"
>
<view
:class=
"['radio',
{'active': index==curWay}]" @click="changeWay(index)">
{{
item
}}
</view>
</view>
</view>
</view>
<view
class=
"row"
v-show=
"isExpress"
>
<view
class=
"label"
>
物流公司
</view>
<u-input
v-model=
"expressCom"
:custom-style=
"inputStyle"
height=
"76"
placeholder=
"请填写物流公司"
/>
</view>
<view
class=
"row"
v-show=
"isExpress"
>
<view
class=
"label"
>
物流单号
</view>
<u-input
v-model=
"expressNumber"
:custom-style=
"inputStyle"
height=
"76"
placeholder=
"请填写物流单号"
/>
</view>
</view>
<view
class=
"bottom"
>
<button
class=
"submit-btn"
@
click=
"submitForm"
>
提交
</button>
</view>
</view>
</
template
>
<
script
>
export
default
{
data
()
{
return
{
parts
:
[],
ways
:
[
'快递'
,
'其他'
],
curWay
:
0
,
expressCom
:
''
,
expressNumber
:
''
,
inputStyle
:
{
'background-color'
:
'#F4F5F7'
,
'padding'
:
'0 20rpx'
,
'border-radius'
:
'12rpx'
,
}
}
},
onLoad
()
{
this
.
receiveData
()
},
computed
:
{
isExpress
()
{
return
this
.
curWay
==
0
},
},
methods
:
{
receiveData
()
{
var
pages
=
getCurrentPages
();
if
(
pages
.
length
>=
2
)
{
var
prevPage
=
pages
[
pages
.
length
-
2
];
//上一个页面
const
parts
=
prevPage
.
$vm
.
_data
.
selectedParts
if
(
this
.
$u
.
test
.
isEmpty
(
parts
))
{
this
.
$u
.
route
({
type
:
'back'
})
}
this
.
parts
=
parts
}
},
changeWay
(
index
)
{
this
.
curWay
=
index
},
validateForm
()
{
if
(
this
.
$u
.
test
.
isEmpty
(
this
.
parts
))
{
this
.
$u
.
toast
(
'物流公司不能为空'
)
return
false
}
if
(
this
.
curWay
==
0
)
{
if
(
this
.
$u
.
test
.
isEmpty
(
this
.
expressCom
))
{
this
.
$u
.
toast
(
'物流公司不能为空'
)
return
false
}
if
(
this
.
$u
.
test
.
isEmpty
(
this
.
expressNumber
))
{
this
.
$u
.
toast
(
'物流单号不能为空'
)
return
false
}
}
return
true
},
submitForm
()
{
if
(
!
this
.
validateForm
())
{
return
false
}
if
(
this
.
curWay
==
0
)
{
const
params
=
{
parts
:
this
.
parts
,
expressCom
:
this
.
expressCom
,
expressNumber
:
this
.
expressNumber
}
this
.
$u
.
api
.
returnParts
(
params
).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
this
.
$u
.
route
({
url
:
'pages/parts/nodes'
,
params
:
{
type
:
1
,
returnNo
:
res
.
batchNumber
}
})
}
})
}
else
{
// TODO
this
.
$u
.
route
({
url
:
'pages/parts/nodes'
,
params
:
{
type
:
1
,
returnNo
:
'RT20210610000001'
}
})
}
}
}
}
</
script
>
<
style
lang=
"scss"
scoped
>
.parts-wrap
{
width
:
750rpx
;
height
:
100vh
;
overflow
:
auto
;
background-color
:
#FFFFFF
;
.form
{
padding
:
46rpx
30rpx
;
.row
{
width
:
454rpx
;
margin-bottom
:
50rpx
;
.label
{
font-size
:
26rpx
;
font-weight
:
400
;
color
:
#333333
;
margin-bottom
:
30rpx
;
}
.control
{
.radio
{
text-align
:
center
;
width
:
216rpx
;
height
:
76rpx
;
background
:
#F4F5F7
;
border-radius
:
12rpx
;
font-size
:
26rpx
;
font-weight
:
400
;
color
:
#333333
;
line-height
:
76rpx
;
}
.active
{
background
:
#2272FF
;
color
:
#FFFFFF
;
}
}
}
}
.bottom
{
position
:
absolute
;
left
:
76rpx
;
right
:
76rpx
;
bottom
:
68rpx
;
.submit-btn
{
height
:
104rpx
;
border-radius
:
52rpx
;
background-color
:
#2272FF
;
color
:
#FFFFFF
;
font-size
:
32rpx
;
font-weight
:
600
;
line-height
:
104rpx
;
}
}
}
</
style
>
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