Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
H
hs-app-project
Project
Project
Details
Activity
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
李星剑
hs-app-project
Commits
6515505d
Commit
6515505d
authored
Jan 11, 2022
by
阮藤
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'dev' of
http://47.110.145.204:8085/lixingjian/hs-app-project
into dev
parents
606a2d10
42505dbc
Hide whitespace changes
Inline
Side-by-side
Showing
22 changed files
with
442 additions
and
96 deletions
+442
-96
hs-empty.vue
src/components/hs-empty/hs-empty.vue
+77
-0
index.js
src/config/request/apiList/mdm/config/index.js
+3
-0
index.js
src/config/request/apiList/mdm/index.js
+5
-0
index.js
src/config/request/apiList/mdm/materialinfo/index.js
+16
-0
index.js
src/config/request/apiList/plm/config/index.js
+3
-0
index.js
src/config/request/apiList/plm/index.js
+7
-0
index.js
src/config/request/apiList/plm/modelingtask/index.js
+11
-0
index.js
src/config/request/apiList/plm/stylelibraryorder/index.js
+15
-0
plmCopy.js
src/config/request/apiList/plmCopy.js
+0
-0
apis.js
src/config/request/apis.js
+5
-2
manifest.json
src/manifest.json
+2
-2
pages.json
src/pages.json
+0
-14
modelingOrder.vue
src/pages/fabricModeling/modelingOrder.vue
+1
-1
createMaterial.vue
src/pages/material/createMaterial.vue
+27
-4
list.vue
src/pages/material/list.vue
+53
-34
selectType.vue
src/pages/material/selectType.vue
+216
-38
addItem.vue
src/pages/modeling/addItem.vue
+1
-1
checked.png
src/static/images/search/checked.png
+0
-0
checked@2x.png
src/static/images/search/checked@2x.png
+0
-0
filter.png
src/static/images/search/filter.png
+0
-0
filter@2x.png
src/static/images/search/filter@2x.png
+0
-0
filter@3x.png
src/static/images/search/filter@3x.png
+0
-0
No files found.
src/components/hs-empty/hs-empty.vue
0 → 100644
View file @
6515505d
<
template
>
<view
class=
"shopro-empty-wrap u-flex-col u-row-center u-col-center"
:style=
"
{ 'margin-top': marginTop }">
<!--
<image
class=
"empty-img"
:src=
"image"
mode=
"aspectFill"
></image>
-->
<view
class=
"empty-text u-tips-color u-font-26"
>
{{
tipText
}}
</view>
<view
class=
"btn-box u-m-t-100"
v-if=
"btnText"
>
<button
class=
"u-reset-button empty-btn"
:style=
"customStyle"
hover-class=
"none"
@
tap=
"onBtn"
>
{{
btnText
}}
</button>
</view>
</view>
</
template
>
<
script
>
/**
* Empty- 数据为空页
* @property {String} image - 空白图。
* @property {String} tipText - 提示语。
* @property {String} btnText - 按钮文字。
* @property {String} marginTop - 距离父级距离。
* @property {Object} customStyle - 自定义按钮样式。
* @event {Fuction} click - 点击按钮
*/
export
default
{
name
:
'shoproEmpty'
,
props
:
{
image
:
{
type
:
[
String
,
null
],
default
:
''
},
tipText
:
{
type
:
String
,
default
:
''
},
btnText
:
{
type
:
String
,
default
:
''
},
marginTop
:
{
type
:
String
,
default
:
'300rpx'
},
customStyle
:
{
type
:
Object
,
default
:
()
=>
{
return
{
width
:
'200rpx'
,
height
:
'70rpx'
,
background
:
'linear-gradient(90deg, rgba(233, 180, 97, 1), rgba(238, 204, 137, 1))'
,
borderRradius
:
'35rpx'
,
fontSize
:
'28rpx'
,
color
:
'#fff'
,
border
:
0
};
}
}
},
methods
:
{
onBtn
()
{
this
.
$emit
(
'click'
);
}
}
};
</
script
>
<
style
lang=
"scss"
scoped
>
.empty-img
{
width
:
540rpx
;
height
:
290rpx
;
}
.empty-btn
{
width
:
320rpx
;
height
:
70rpx
;
line-height
:
70rpx
;
background
:
linear-gradient
(
90deg
,
rgba
(
233
,
180
,
97
,
1
)
,
rgba
(
238
,
204
,
137
,
1
));
border-radius
:
35rpx
;
font-size
:
28rpx
;
color
:
rgba
(
#fff
,
0
.9
);
}
</
style
>
src/config/request/apiList/mdm/config/index.js
0 → 100644
View file @
6515505d
export
default
{
baseUrl
:
'/gdep-mdm'
}
src/config/request/apiList/mdm/index.js
0 → 100644
View file @
6515505d
import
materialinfo
from
'./materialinfo/index'
export
default
{
...
materialinfo
,
}
src/config/request/apiList/mdm/materialinfo/index.js
0 → 100644
View file @
6515505d
// 物料面料
import
config
from
"../config/index"
;
let
baseUrl
=
`
${
config
.
baseUrl
}
/materialinfo`
export
default
{
'materialinfo'
:{
'getMaterialList'
:
{
url
:
`
${
baseUrl
}
/getMaterialList`
,
method
:
'post'
},
'getMaterialById'
:{
url
:
`
${
baseUrl
}
/getMaterialById`
,
method
:
'get'
}
}
}
src/config/request/apiList/plm/config/index.js
0 → 100644
View file @
6515505d
export
default
{
baseUrl
:
'/gdep-plm'
}
src/config/request/apiList/plm/index.js
0 → 100644
View file @
6515505d
import
stylelibraryorder
from
'./stylelibraryorder/index'
import
modelingtask
from
'./modelingtask'
export
default
{
...
stylelibraryorder
,
...
modelingtask
}
src/config/request/apiList/plm/modelingtask/index.js
0 → 100644
View file @
6515505d
import
config
from
"../config/index"
;
let
className
=
'modelingtask'
let
baseUrl
=
`
${
config
.
baseUrl
}
/
${
className
}
`
export
default
{
[
className
]:{
'selectModelingTaskPage'
:
{
url
:
`
${
baseUrl
}
/selectModelingTaskPage`
,
method
:
"get"
,
}
}
}
src/config/request/apiList/plm/stylelibraryorder/index.js
0 → 100644
View file @
6515505d
import
config
from
"../config/index"
;
let
className
=
'stylelibraryorder'
let
baseUrl
=
`
${
config
.
baseUrl
}
/
${
className
}
`
export
default
{
[
className
]:{
'page'
:
{
url
:
`
${
baseUrl
}
/page`
,
method
:
'post'
},
'details'
:{
url
:
`
${
baseUrl
}
/details`
,
method
:
'get'
}
}
}
src/config/request/apiList/plm.js
→
src/config/request/apiList/plm
Copy
.js
View file @
6515505d
File moved
src/config/request/apis.js
View file @
6515505d
...
@@ -13,7 +13,9 @@ import modelingTaskCategory from './apiList/modelingTaskCategory.js'
...
@@ -13,7 +13,9 @@ import modelingTaskCategory from './apiList/modelingTaskCategory.js'
import
materialLabel
from
'./apiList/materialLabel.js'
import
materialLabel
from
'./apiList/materialLabel.js'
// 颜色库接口
// 颜色库接口
import
modelingTaskColorLibrary
from
'./apiList/modelingTaskColorLibrary'
import
modelingTaskColorLibrary
from
'./apiList/modelingTaskColorLibrary'
import
plm
from
'./apiList/plm.js'
import
plm
from
'./apiList/plm'
import
mdm
from
'./apiList/mdm'
export
default
{
export
default
{
...
user
,
...
user
,
...
@@ -24,5 +26,6 @@ export default {
...
@@ -24,5 +26,6 @@ export default {
...
plm
,
...
plm
,
...
modelingTaskCategory
,
...
modelingTaskCategory
,
...
materialLabel
,
...
materialLabel
,
...
modelingTaskColorLibrary
...
modelingTaskColorLibrary
,
...
mdm
};
};
src/manifest.json
View file @
6515505d
...
@@ -134,9 +134,9 @@
...
@@ -134,9 +134,9 @@
//
"target"
:
"http://47.96.138.212:8321"
,
//
"target"
:
"http://47.96.138.212:8321"
,
//
"target"
:
"http://10.10.10.242/"
,
//
"target"
:
"http://10.10.10.242/"
,
//
"target"
:
"http://10.10.10.31/"
,
//
"target"
:
"http://10.10.10.31/"
,
//
"target"
:
"http://10.10.10.2
18/"
,
"target"
:
"http://10.10.10.1
18/"
,
//
"target"
:
"http://10.10.10.132/"
,
//
"target"
:
"http://10.10.10.132/"
,
"target"
:
"http://octopus-dev.textile-saas.huansi.net/dev-api/"
,
//
"target"
:
"http://octopus-dev.textile-saas.huansi.net/dev-api/"
,
"changeOrigin"
:
true
,
"changeOrigin"
:
true
,
"pathRewrite"
:
{
"pathRewrite"
:
{
"^/dev"
:
""
"^/dev"
:
""
...
...
src/pages.json
View file @
6515505d
...
@@ -382,20 +382,6 @@
...
@@ -382,20 +382,6 @@
}
}
}
}
},
},
{
"path"
:
"pages/modeling/imgList"
,
"style"
:
{
"navigationBarTitleText"
:
"指定面料颜色模型"
,
"navigationBarTextStyle"
:
"white"
,
"enablePullDownRefresh"
:
false
,
"navigationStyle"
:
"custom"
,
"mp-alipay"
:
{
"transparentTitle"
:
"always"
,
"titlePenetrate"
:
"YES"
,
"allowsBounceVertical"
:
"NO"
}
}
},
{
{
"path"
:
"pages/modeling/tags"
,
"path"
:
"pages/modeling/tags"
,
"style"
:
{
"style"
:
{
...
...
src/pages/fabricModeling/modelingOrder.vue
View file @
6515505d
...
@@ -275,7 +275,7 @@ export default {
...
@@ -275,7 +275,7 @@ export default {
this
.
loadStatus
=
'loading'
;
this
.
loadStatus
=
'loading'
;
let
{
materialName
,
current
,
size
}
=
this
.
pages
;
let
{
materialName
,
current
,
size
}
=
this
.
pages
;
this
.
$http
(
this
.
$http
(
'
plm
.selectModelingTaskPage'
,
'
modelingtask
.selectModelingTaskPage'
,
{
{
materialName
:
materialName
?
materialName
:
null
,
materialName
:
materialName
?
materialName
:
null
,
status
:
this
.
status
,
status
:
this
.
status
,
...
...
src/pages/material/createMaterial.vue
View file @
6515505d
...
@@ -11,9 +11,12 @@
...
@@ -11,9 +11,12 @@
<view
class=
"body "
:style=
"
{ bottom: footerHeight + 'px', top: headerHeight+ 'px'}">
<view
class=
"body "
:style=
"
{ bottom: footerHeight + 'px', top: headerHeight+ 'px'}">
<view
class=
"u-relative"
>
<view
class=
"u-relative"
>
<u-image
height=
"750rpx"
></u-image>
<u-image
height=
"750rpx"
></u-image>
<view
class=
"u-absolute prev"
>
上一款
</view>
<view
v-if=
"!isEdit"
>
<view
class=
"u-absolute next"
>
下一款
</view>
<view
class=
"u-absolute prev"
>
上一款
</view>
<view
class=
"u-absolute step u-p-r-30 u-p-l-30"
>
<view
class=
"u-absolute next"
>
下一款
</view>
</view>
<view
v-if=
"isEdit"
class=
"u-absolute step u-p-r-30 u-p-l-30"
>
<view
class=
"step-main u-p-r-20 u-p-l-20 u-flex"
>
<view
class=
"step-main u-p-r-20 u-p-l-20 u-flex"
>
<text
class=
"width_100"
>
{{
angle
}}
°
</text>
<text
class=
"width_100"
>
{{
angle
}}
°
</text>
<view
class=
"u-relative u-flex-1"
>
<view
class=
"u-relative u-flex-1"
>
...
@@ -66,7 +69,7 @@
...
@@ -66,7 +69,7 @@
</view>
</view>
<view
class=
"u-p-t-30 u-p-b-20 text-right"
>
<view
class=
"u-p-t-30 u-p-b-20 text-right"
>
<view
class=
"button inline-block button-plain button-plain-default"
>
取消
</view>
<view
class=
"button inline-block button-plain button-plain-default"
>
取消
</view>
<view
class=
"button inline-block button-default"
>
主身
</view>
<view
class=
"button inline-block button-default"
>
确定
</view>
</view>
</view>
</view>
</view>
<view
class=
"bg-fff u-p-r-30 u-p-l-30"
>
<view
class=
"bg-fff u-p-r-30 u-p-l-30"
>
...
@@ -146,6 +149,8 @@ export default {
...
@@ -146,6 +149,8 @@ export default {
lineStepWidth
:
0
,
lineStepWidth
:
0
,
lineWidth
:
0
,
lineWidth
:
0
,
lineOffset
:
0
,
lineOffset
:
0
,
isEdit
:
false
,
}
}
},
},
computed
:{
computed
:{
...
@@ -168,7 +173,24 @@ export default {
...
@@ -168,7 +173,24 @@ export default {
this
.
lineStepWidth
=
res
.
width
;
this
.
lineStepWidth
=
res
.
width
;
})
})
},
},
created
()
{
let
{
id
,
materialId
}
=
this
.
$Route
.
query
;
this
.
getItem
(
id
);
this
.
getMaterialItem
(
materialId
);
},
methods
:{
methods
:{
getItem
(
id
){
this
.
$http
(
"stylelibraryorder.details"
,
id
)
.
then
(
res
=>
{
})
},
getMaterialItem
(
id
){
this
.
$http
(
"materialinfo.getMaterialById"
,
id
)
.
then
(
res
=>
{
})
},
touchMove
(
e
){
touchMove
(
e
){
let
left
=
e
.
changedTouches
[
0
].
pageX
;
let
left
=
e
.
changedTouches
[
0
].
pageX
;
...
@@ -234,6 +256,7 @@ export default {
...
@@ -234,6 +256,7 @@ export default {
top
:
50%
;
top
:
50%
;
margin-top
:
-20rpx
;
margin-top
:
-20rpx
;
background
:
#fff
;
background
:
#fff
;
margin-left
:
-20rpx
;
}
}
}
}
...
...
src/pages/material/list.vue
View file @
6515505d
...
@@ -13,14 +13,14 @@
...
@@ -13,14 +13,14 @@
<view
class=
"title u-p-30"
>
选择面料
</view>
<view
class=
"title u-p-30"
>
选择面料
</view>
<view
class=
"u-p-30 bg-fff"
>
<view
class=
"u-p-30 bg-fff"
>
<!--新增委托navbar-->
<!--新增委托navbar-->
<u-search
placeholder=
"请输入面料名称"
v-model=
"keyword"
<u-search
placeholder=
"请输入面料名称"
v-model=
"keyword"
@
search=
"search"
border-color=
"#e1e1e1"
height=
"76"
border-color=
"#e1e1e1"
height=
"76"
bg-color=
"#fff"
:show-action=
"false"
></u-search>
bg-color=
"#fff"
:show-action=
"false"
></u-search>
</view>
</view>
</view>
</view>
<!-- 列表 确定-->
<!-- 列表 确定-->
<view
class=
"u-p-30 body"
:style=
"{ bottom: footerHeight+ 'px', top: headerHeight + 'px' }"
>
<view
class=
"u-p-30 body"
:style=
"{ bottom: footerHeight+ 'px', top: headerHeight + 'px' }"
>
<view
v-for=
"(item, index) in
l
ist"
:key=
"item.id"
class=
"u-flex u-m-b-20"
>
<view
v-for=
"(item, index) in
computedL
ist"
:key=
"item.id"
class=
"u-flex u-m-b-20"
>
<view
class=
"u-m-r-30"
>
<view
class=
"u-m-r-30"
>
<u-icon
:name=
"index === selectedIndex ? 'checkmark-circle-fill': 'checkmark-circle'"
<u-icon
:name=
"index === selectedIndex ? 'checkmark-circle-fill': 'checkmark-circle'"
color=
"#000"
size=
"40"
color=
"#000"
size=
"40"
...
@@ -29,7 +29,13 @@
...
@@ -29,7 +29,13 @@
</view>
</view>
<hs-material-thumbnail
:item=
"item"
></hs-material-thumbnail>
<hs-material-thumbnail
:item=
"item"
></hs-material-thumbnail>
</view>
</view>
<!-- 加载更多 -->
<u-loadmore
v-if=
"!isEmpty"
height=
"80rpx"
:status=
"loadStatus"
icon-type=
"flower"
color=
"#ccc"
/>
<!-- 缺省页 -->
<hs-empty
v-if=
"isEmpty"
tipText=
"没有数据"
></hs-empty>
</view>
</view>
<!-- 底部按钮 确定-->
<!-- 底部按钮 确定-->
<view
class=
"footer"
id=
"footer"
>
<view
class=
"footer"
id=
"footer"
>
<view
class=
"footer-btn"
>
<view
class=
"footer-btn"
>
...
@@ -55,48 +61,61 @@ export default {
...
@@ -55,48 +61,61 @@ export default {
return
{
return
{
keyword
:
''
,
keyword
:
''
,
selectedIndex
:
-
1
,
selectedIndex
:
-
1
,
list
:
[
pageOptions
:
{
{
current
:
1
,
materialName
:
'加厚荷兰绒绒布布料'
,
size
:
10
,
},
id
:
2
loadStatus
:
'loadmore'
,
},
list
:
[]
{
}
materialName
:
'加厚荷兰绒绒布布料加厚荷兰绒绒布布料'
,
},
id
:
12
computed
:{
},
computedList
(){
{
return
this
.
list
.
map
((
item
)
=>
{
materialName
:
'加厚荷兰绒绒布布料'
,
return
{
id
:
221
...
item
,
},
materialCategory
:
item
.
category
,
{
materialDoorWidth
:
item
.
fabricWidth
,
materialName
:
'加厚荷兰绒绒布布料'
,
materialElement
:
item
.
saoriStandard
,
id
:
22
},
{
materialName
:
'加厚荷兰绒绒布布料'
,
id
:
224
},
{
materialName
:
'加厚荷兰绒绒布布料'
,
id
:
222
}
}
]
})
},
isEmpty
(){
return
this
.
list
.
length
===
0
}
}
},
},
onLoad
(){
onLoad
(){
this
.
getList
();
},
},
methods
:{
methods
:{
// 触底加载更多
onReachBottom
()
{
if
(
this
.
pageOptions
.
current
<
this
.
pageOptions
.
pages
)
{
this
.
pageOptions
.
current
+=
1
;
this
.
getData
();
}
},
search
(){
this
.
pageOptions
=
{
current
:
1
,
size
:
10
,
}
this
.
getList
();
},
getList
(){
getList
(){
this
.
$http
(
'orderTicket.materialList'
,
{
this
.
loadStatus
=
'loading'
;
size
:
4
,
this
.
$http
(
'materialinfo.getMaterialList'
,
{
materialCode
:
''
,
"codeAndName"
:
this
.
keyword
,
materialName
:
''
"isDisabled"
:
false
,
"materialCode"
:
""
,
"materialType"
:
"面料"
,
...
this
.
pageOptions
}).
then
(
res
=>
{
}).
then
(
res
=>
{
let
{
code
,
data
}
=
res
;
let
{
code
,
data
}
=
res
;
if
(
code
==
200
)
{
if
(
code
==
200
)
{
this
.
list
=
data
.
data
;
this
.
list
=
data
.
page
.
records
;
this
.
pageOptions
.
pages
=
data
.
page
.
total
;
this
.
loadStatus
=
this
.
list
.
length
<
data
.
page
.
total
?
'loadmore'
:
'nomore'
;
}
}
});
});
},
},
...
...
src/pages/material/selectType.vue
View file @
6515505d
...
@@ -11,22 +11,33 @@
...
@@ -11,22 +11,33 @@
<u-icon
size=
"24"
color=
"#000"
name=
"arrow-right"
class=
"u-m-r-10 u-m-l-10"
></u-icon>
<u-icon
size=
"24"
color=
"#000"
name=
"arrow-right"
class=
"u-m-r-10 u-m-l-10"
></u-icon>
<text>
选择款式
</text>
<text>
选择款式
</text>
</view>
</view>
<view
class=
"u-p-30 bg-fff"
>
<view
class=
"u-p-30 bg-fff
u-flex
"
>
<!--新增委托navbar-->
<!--新增委托navbar-->
<u-search
placeholder=
"请输入面料名称"
v-model=
"keyword"
<view
class=
"u-flex-1"
>
border-color=
"#e1e1e1"
height=
"76"
<u-search
placeholder=
"请输入面料名称"
v-model=
"keyword"
bg-color=
"#fff"
:show-action=
"false"
></u-search>
border-color=
"#e1e1e1"
height=
"76"
bg-color=
"#fff"
:show-action=
"false"
></u-search>
</view>
<image
src=
"@/static/images/search/filter.png"
class=
"filter"
@
click=
"popupShow = true"
mode=
"widthFix"
></image>
</view>
</view>
</view>
</view>
<!-- 列表 确定-->
<!-- 列表 确定-->
<view
class=
"body bg-fff u-p-r-30 u-p-b-30 u-p-l-30"
:style=
"
{ bottom: footerHeight+ 'px', top: headerHeight + 'px' }">
<view
class=
"body bg-fff u-p-r-30 u-p-b-30 u-p-l-30"
:style=
"
{ bottom: footerHeight+ 'px', top: headerHeight + 'px' }">
<view
v-for=
"(item, index) in list"
:key=
"item.id"
<view
v-for=
"(item, index) in list"
:key=
"item.id"
@
click=
""
@
click=
"$Router.push(
{
path: '/pages/material/createMaterial',
query:{
materialId: $Route.query.materialId,
id: item.id
}
})"
class="u-flex u-m-b-20">
class="u-flex u-m-b-20">
<view
class=
"item item--round u-flex "
>
<view
class=
"item item--round u-flex "
>
<view
class=
"item-img u-relative"
>
<view
class=
"item-img u-relative"
>
<image
src=
"
"
mode=
"fit"
style=
"width:100%; height: 100%"
></image>
<image
:src=
"`$
{$IMG_URL}${item.effectPictureCode}`
" mode="fit" style="width:100%; height: 100%">
</image>
<u-image
width=
"100rpx"
height=
"100rpx"
<u-image
width=
"100rpx"
height=
"100rpx"
v-if=
"item.putawayStatus === 1"
class=
"item--status"
class=
"item--status"
mode=
"widthFix"
mode=
"widthFix"
src=
"@/static/images/material/status.png"
>
src=
"@/static/images/material/status.png"
>
...
@@ -34,19 +45,63 @@
...
@@ -34,19 +45,63 @@
</view>
</view>
<view
class=
"u-flex-1 u-p-l-20 u-p-r-30 u-border-left"
>
<view
class=
"u-flex-1 u-p-l-20 u-p-r-30 u-border-left"
>
<view
class=
"item-title u-flex "
>
<view
class=
"item-title u-flex "
>
<view
class=
"u-flex-1 u-line-1 u-font-32 u-p-t-20 u-p-b-8"
>
男装
</view>
<view
class=
"u-flex-1 u-line-1 u-font-32 u-p-t-20 u-p-b-8"
>
{{
item
.
category
}}
</view>
<u-icon
size=
"24"
color=
"#000"
name=
"arrow-right"
></u-icon>
<u-icon
size=
"24"
color=
"#000"
name=
"arrow-right"
></u-icon>
</view>
</view>
<view
class=
"item-desc u-font-24"
>
ASD
</view>
<view
class=
"item-desc u-font-24"
>
{{
item
.
styleCode
}}
</view>
<view
class=
"item-tags u-p-b-24"
>
<view
class=
"item-tags u-p-b-24"
>
<view
class=
"item-tag u-font-20"
>
<view
class=
"item-tag u-font-20"
标签
:key=
"tag.id"
v-for=
"tag in item.styleLibraryTagVOList"
>
{{
tag
.
materialTagName
}}
</view>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
<!-- 加载更多 -->
<u-loadmore
v-if=
"!isEmpty"
height=
"80rpx"
:status=
"loadStatus"
icon-type=
"flower"
color=
"#ccc"
/>
<!-- 缺省页 -->
<hs-empty
v-if=
"isEmpty"
tipText=
"没有数据"
></hs-empty>
</view>
</view>
<u-popup
v-model=
"popupShow"
mode=
"bottom"
height=
"100%"
>
<view
class=
"u-relative"
>
<!--选款-->
<view
class=
"position-sticky"
>
<u-navbar
title=
"按照面料标签筛选"
:is-fixed=
"false"
:border-bottom=
"false"
:custom-back=
"() =>
{ popupShow = false;}"
:background="{backgroundColor: 'whitesmoke'}">
</u-navbar>
<view
class=
"bg-fff u-p-30"
>
<u-search
placeholder=
"请输入面料标签名称"
v-model=
"tagKeyword"
border-color=
"#e1e1e1"
height=
"76"
bg-color=
"#fff"
:show-action=
"false"
></u-search>
</view>
</view>
<view
class=
"tags u-p-l-30 u-p-r-30"
>
<view
class=
"tag u-line-1"
@
click=
"triggerClickTag(tag)"
v-for=
"(tag) in computedMaterialLabelList"
:class=
"[tagIds.indexOf(tag.materialLabelId) > -1 ? 'active': '']"
>
{{
tag
.
labelName
}}
</view>
</view>
<view
class=
"footer"
>
<view
class=
"footer-btn "
>
<view
class=
"u-flex"
>
<view
class=
"u-line-1 "
>
已选择:
<text
class=
"active-color"
>
{{
tagIds
.
length
}}
条数据
</text>
</view>
<view
class=
"u-flex-1 text-right"
>
<view
class=
"button inline-block"
@
click=
"tagIds = []"
>
重置
</view>
<view
class=
"button button-default inline-block u-m-l-20"
@
click=
"popupConfirm"
>
确定
</view>
</view>
</view>
</view>
</view>
</view>
</u-popup>
</view>
</view>
</
template
>
</
template
>
...
@@ -60,40 +115,103 @@ export default {
...
@@ -60,40 +115,103 @@ export default {
return
{
return
{
keyword
:
''
,
keyword
:
''
,
selectedIndex
:
-
1
,
selectedIndex
:
-
1
,
list
:
[
pageOptions
:
{
{
current
:
1
,
materialName
:
'加厚荷兰绒绒布布料'
,
size
:
10
,
},
list
:
[],
id
:
2
popupShow
:
false
,
},
tagKeyword
:
''
,
{
tagIds
:
[],
materialName
:
'加厚荷兰绒绒布布料加厚荷兰绒绒布布料'
,
id
:
12
materialLabelList
:
[],
},
{
materialName
:
'加厚荷兰绒绒布布料'
,
id
:
221
},
{
materialName
:
'加厚荷兰绒绒布布料'
,
id
:
22
},
{
materialName
:
'加厚荷兰绒绒布布料'
,
id
:
224
},
{
materialName
:
'加厚荷兰绒绒布布料'
,
id
:
222
}
]
}
}
},
},
onLoad
(){
onLoad
(){
this
.
labelListTo
();
this
.
getList
();
},
},
computed
:{
isEmpty
(){
return
this
.
list
.
length
===
0
},
computedMaterialLabelList
(){
return
this
.
materialLabelList
.
filter
((
item
)
=>
{
return
item
.
labelName
.
indexOf
(
this
.
tagKeyword
)
>
-
1
})
}
},
methods
:{
methods
:{
popupConfirm
(){
this
.
getList
(
this
.
tagIds
);
this
.
popupShow
=
false
;
},
triggerClickTag
({
materialLabelId
}){
let
index
=
this
.
tagIds
.
indexOf
(
materialLabelId
)
if
(
index
>
-
1
){
this
.
tagIds
.
splice
(
index
,
1
)
}
else
{
this
.
tagIds
.
push
(
materialLabelId
)
}
},
// 触底加载更多
onReachBottom
()
{
if
(
this
.
pageOptions
.
current
<
this
.
pageOptions
.
pages
)
{
this
.
pageOptions
.
current
+=
1
;
this
.
getData
();
}
},
search
(){
this
.
pageOptions
=
{
current
:
1
,
size
:
10
,
}
this
.
getList
();
},
getList
(
materialTagIdList
=
[]){
this
.
loadStatus
=
'loading'
;
this
.
$http
(
'stylelibraryorder.page'
,
{
styleTag
:
this
.
keyword
,
materialTagIdList
,
...
this
.
pageOptions
}).
then
(
res
=>
{
let
{
code
,
data
}
=
res
;
if
(
code
===
200
)
{
if
(
Object
.
keys
(
data
).
length
>
0
){
this
.
list
=
data
.
records
;
this
.
pageOptions
.
pages
=
data
.
total
;
this
.
loadStatus
=
this
.
list
.
length
<
data
.
total
?
'loadmore'
:
'nomore'
;
}
else
{
this
.
list
=
[]
this
.
loadStatus
=
'nomore'
;
}
}
});
},
// 获取标签
labelListTo
(){
this
.
$http
(
"materialLabel.list"
,{
isDeleted
:
0
}).
then
(
res
=>
{
let
{
code
,
data
}
=
res
;
if
(
code
===
200
){
this
.
materialLabelList
=
data
.
platformLabel
.
map
((
$item
)
=>
{
let
{
id
,
...
item
}
=
$item
;
return
{
...
item
,
materialLabelId
:
id
}
});
// console.log(this.materialLabelList)
}
})
},
}
}
}
}
</
script
>
</
script
>
...
@@ -102,6 +220,49 @@ export default {
...
@@ -102,6 +220,49 @@ export default {
$h-color
:
#AF8D66
;
$h-color
:
#AF8D66
;
$color
:
rgba
(
175
,
141
,
102
,
0
.10
);
$color
:
rgba
(
175
,
141
,
102
,
0
.10
);
$main-color
:
#fff
;
$main-color
:
#fff
;
.active-color
{
color
:
#d4aa79
;
}
.inline-block
{
display
:
inline-block
;
}
.position-sticky
{
position
:
sticky
;
top
:
0
;
z-index
:
9999
;
}
.tags
{
display
:
grid
;
grid-gap
:
20rpx
;
grid-template-columns
:
1fr
1fr
1fr
;
.tag
{
line-height
:
80rpx
;
text-align
:
center
;
border-radius
:
6rpx
;
position
:
relative
;
background
:
#f4f4f4
;
color
:
#666666
;
&
.active
{
color
:
#d4aa79
;
background
:
#f7ede4
;
&
:
:
after
{
content
:
' '
;
position
:
absolute
;
right
:
0
;
bottom
:
0
;
width
:
42rpx
;
height
:
32rpx
;
background
:
url("@/static/images/search/checked.png")
;
}
}
}
}
.filter
{
margin-left
:
36rpx
;
width
:
42rpx
;
height
:
48rpx
;
}
.body
{
.body
{
position
:
absolute
;
position
:
absolute
;
width
:
100%
;
width
:
100%
;
...
@@ -139,6 +300,23 @@ $main-color: #fff;
...
@@ -139,6 +300,23 @@ $main-color: #fff;
}
}
}
}
.button
{
border
:
1px
solid
#333
;
border-radius
:
44rpx
;
width
:
160rpx
;
height
:
64rpx
;
line-height
:
64rpx
;
text-align
:
center
;
&
-plain
{
&
--default
{
color
:
#333
;
}
}
&
-default
{
background
:
#333
;
color
:
#fff
;
}
}
.item
{
.item
{
width
:
100%
;
width
:
100%
;
...
...
src/pages/modeling/addItem.vue
View file @
6515505d
...
@@ -201,7 +201,7 @@
...
@@ -201,7 +201,7 @@
<
script
>
<
script
>
import
dom
from
"../../mixins/dom"
;
import
dom
from
"../../mixins/dom"
;
import
permission
from
"../../js_sdk/wa-permission/permission"
;
//
import permission from "../../js_sdk/wa-permission/permission";
export
default
{
export
default
{
name
:
"addItem"
,
name
:
"addItem"
,
mixins
:
[
dom
],
mixins
:
[
dom
],
...
...
src/static/images/search/checked.png
0 → 100644
View file @
6515505d
473 Bytes
src/static/images/search/checked@2x.png
0 → 100644
View file @
6515505d
810 Bytes
src/static/images/search/filter.png
0 → 100644
View file @
6515505d
524 Bytes
src/static/images/search/filter@2x.png
0 → 100644
View file @
6515505d
998 Bytes
src/static/images/search/filter@3x.png
0 → 100644
View file @
6515505d
1.42 KB
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