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
e1b9231b
Commit
e1b9231b
authored
Jan 17, 2022
by
Zheng Shang Jun
Browse files
Options
Browse Files
Download
Plain Diff
最新冲突解决
parents
8ffbf5b1
f70f1c6e
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
25 changed files
with
1924 additions
and
547 deletions
+1924
-547
index.js
src/config/request/apiList/mdm/colour/index.js
+12
-0
index.js
src/config/request/apiList/mdm/index.js
+2
-0
index.js
src/config/request/apiList/plm/index.js
+11
-1
index.js
src/config/request/apiList/plm/mobileBrand/index.js
+28
-0
index.js
src/config/request/apiList/plm/stylelibraryorder/index.js
+44
-0
pages.json
src/pages.json
+13
-9
brands.vue
src/pages/brands/brands.vue
+57
-10
hotStyle.vue
src/pages/brands/components/hotStyle.vue
+31
-8
hs-material-thumbnail.vue
src/pages/brands/components/hs-material-thumbnail.vue
+94
-83
detail.vue
src/pages/brands/detail.vue
+129
-59
everyDay.vue
src/pages/brands/everyDay.vue
+35
-6
index.vue
src/pages/home/index.vue
+124
-82
createMaterial.vue
src/pages/material/createMaterial.vue
+549
-108
entrustItem.vue
src/pages/material/entrustItem.vue
+55
-26
entrustList.vue
src/pages/material/entrustList.vue
+82
-28
entrustManagement.vue
src/pages/material/entrustManagement.vue
+252
-91
entrustManagementItem.vue
src/pages/material/entrustManagementItem.vue
+72
-28
material.js
src/pages/material/mixins/material.js
+46
-0
step.js
src/pages/material/mixins/step.js
+64
-0
selectType.vue
src/pages/material/selectType.vue
+1
-0
addItem.vue
src/pages/modeling/addItem.vue
+21
-7
item.vue
src/pages/order/item.vue
+198
-0
login.vue
src/pages/user/login/login.vue
+4
-1
empty.png
src/static/images/components/empty/empty.png
+0
-0
empty@2x.png
src/static/images/components/empty/empty@2x.png
+0
-0
No files found.
src/config/request/apiList/mdm/colour/index.js
0 → 100644
View file @
e1b9231b
import
config
from
"../config/index"
;
let
className
=
'colour'
;
let
baseUrl
=
`
${
config
.
baseUrl
}
/
${
className
}
`
export
default
{
[
className
]:{
'selectColour'
:{
url
:
`
${
baseUrl
}
/selectColour`
,
method
:
'get'
}
}
}
src/config/request/apiList/mdm/index.js
View file @
e1b9231b
import
materialinfo
from
'./materialinfo/index'
import
colour
from
'./colour/index'
export
default
{
...
materialinfo
,
...
colour
,
}
src/config/request/apiList/plm/index.js
View file @
e1b9231b
/*
* @Author: your name
* @Date: 2022-01-14 11:42:25
* @LastEditTime: 2022-01-14 13:56:35
* @LastEditors: your name
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /hs-app-project/src/config/request/apiList/plm/index.js
*/
import
stylelibraryorder
from
'./stylelibraryorder/index'
import
modelingtask
from
'./modelingtask'
import
mobileBrand
from
'./mobileBrand'
export
default
{
...
stylelibraryorder
,
...
modelingtask
...
modelingtask
,
...
mobileBrand
}
src/config/request/apiList/plm/mobileBrand/index.js
0 → 100644
View file @
e1b9231b
/*
* @Author: your name
* @Date: 2022-01-14 13:55:11
* @LastEditTime: 2022-01-14 16:50:17
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /hs-app-project/src/config/request/apiList/plm/mobileBrand/index.js
*/
import
config
from
"../config/index"
;
let
className
=
'mobileBrand'
let
baseUrl
=
`
${
config
.
baseUrl
}
/
${
className
}
`
export
default
{
[
className
]:{
'dailyNewStylePage'
:
{
url
:
`
${
baseUrl
}
/dailyNewStylePage`
,
method
:
"post"
,
},
'stylePage'
:
{
url
:
`
${
baseUrl
}
/stylePage`
,
method
:
"post"
,
},
'styleDetail'
:
{
url
:
`
${
baseUrl
}
/styleDetail`
,
method
:
"get"
,
},
}
}
\ No newline at end of file
src/config/request/apiList/plm/stylelibraryorder/index.js
View file @
e1b9231b
...
...
@@ -10,6 +10,50 @@ export default {
'details'
:{
url
:
`
${
baseUrl
}
/details`
,
method
:
'get'
},
// 潜在客户列表
'potentialCustomersPage'
:{
url
:
`
${
baseUrl
}
/potentialCustomersPage`
,
method
:
'post'
},
// 潜在客户详情 enterpriseId
'potentialCustomersDetails'
:{
url
:
`
${
baseUrl
}
/potentialCustomersDetails`
,
method
:
'get'
},
// 上架单列表
'listingList'
:{
url
:
`
${
baseUrl
}
/listingList`
,
method
:
'post'
},
// 上架单详情
'listingDetails'
:{
url
:
`
${
baseUrl
}
/listingList`
,
method
:
'get'
},
// 上架管理列表
'getToShelvesManagerList'
:{
url
:
`
${
baseUrl
}
/getToShelvesManagerList`
,
method
:
'get'
},
// 上架管理详情
'getStyleDetails'
:{
url
:
`
${
baseUrl
}
/getStyleDetails`
,
method
:
'get'
},
// 加入待上架
'addToShelves'
:{
url
:
`
${
baseUrl
}
/addToShelves`
,
method
:
'post'
},
// 一键上架
'oneClickListing'
:{
url
:
`
${
baseUrl
}
/oneClickListing`
,
method
:
'post'
},
'unlisted'
:{
url
:
`
${
baseUrl
}
/unlisted`
,
method
:
'post'
}
}
}
src/pages.json
View file @
e1b9231b
...
...
@@ -7,9 +7,9 @@
//pages数组中第一项表示应用启动页,参考:https
:
//uniapp.dcloud.io/collocation/pages
//品牌商首页
{
"path"
:
"pages/
brands/brands
"
,
"path"
:
"pages/
home/tenantSelection
"
,
"style"
:
{
"navigationBarTitleText"
:
"
品牌商首页
"
,
"navigationBarTitleText"
:
"
租户选择
"
,
"navigationBarTextStyle"
:
"white"
,
"enablePullDownRefresh"
:
false
,
"navigationStyle"
:
"custom"
,
...
...
@@ -21,9 +21,9 @@
}
},
{
"path"
:
"pages/
home/tenantSelection
"
,
"path"
:
"pages/
brands/brands
"
,
"style"
:
{
"navigationBarTitleText"
:
"
租户选择
"
,
"navigationBarTitleText"
:
"
品牌商首页
"
,
"navigationBarTextStyle"
:
"white"
,
"enablePullDownRefresh"
:
false
,
"navigationStyle"
:
"custom"
,
...
...
@@ -43,6 +43,15 @@
"navigationStyle"
:
"custom"
}
},
{
"path"
:
"pages/order/item"
,
"style"
:
{
"navigationBarTitleText"
:
"模拟登录"
,
"navigationBarTextStyle"
:
"white"
,
"enablePullDownRefresh"
:
false
,
"navigationStyle"
:
"custom"
}
},
{
"path"
:
"pages/user/center/index"
,
"style"
:
{
...
...
@@ -115,7 +124,6 @@
"navigationStyle"
:
"custom"
}
},
{
"path"
:
"pages/user/register/stepSelectType"
,
"style"
:
{
...
...
@@ -162,7 +170,6 @@
"enablePullDownRefresh"
:
false
}
},
{
"path"
:
"pages/designCommissioned/listSelectToAdd"
,
"style"
:
{
...
...
@@ -199,7 +206,6 @@
"navigationStyle"
:
"custom"
}
},
{
"path"
:
"pages/user/register/stepSelectType"
,
"style"
:
{
...
...
@@ -246,7 +252,6 @@
"enablePullDownRefresh"
:
false
}
},
{
"path"
:
"pages/designCommissioned/listSelectToAdd"
,
"style"
:
{
...
...
@@ -283,7 +288,6 @@
"navigationStyle"
:
"custom"
}
},
{
"path"
:
"pages/designCommissioned/splitItem"
,
"style"
:
{
...
...
src/pages/brands/brands.vue
View file @
e1b9231b
...
...
@@ -6,13 +6,13 @@
<u-navbar
title=
""
:border-bottom=
"false"
:background=
"background"
>
<template
slot=
"right"
>
<!-- 插槽搜索按钮 -->
<view
@
click=
"searchCli"
class=
"u-m-r-24 search"
>
<image
<view
@
click=
"searchCli"
class=
"u-m-r-24 search"
>
<image
class=
"hs-img"
src=
"../../static/images/home/search@2x.png"
mode=
""
></image
>
</view>
></image
>
</view>
</
template
>
</u-navbar>
</view>
...
...
@@ -24,13 +24,20 @@
</view>
<view
slot=
"body"
>
<view
class=
"imgList"
>
<image
v-for=
"(item, index) in dailyNewStyleList"
:key=
"index"
:src=
"`${imgUrl}${item.originalImageCode}`"
mode=
""
></image>
<!--
<image src="../../static/images/brank/mei1.jpg" mode=""></image>
<image src="../../static/images/brank/mei1.jpg" mode=""></image>
<image src="../../static/images/brank/mei1.jpg" mode=""></image>
<image src="../../static/images/brank/mei1.jpg" mode=""></image>
<image src="../../static/images/brank/mei1.jpg" mode=""></image>
<image src="../../static/images/brank/mei1.jpg" mode=""></image>
<image
src=
"../../static/images/brank/mei1.jpg"
mode=
""
></image>
<image src="../../static/images/brank/mei1.jpg" mode=""></image>
-->
</view>
</view>
</u-card>
...
...
@@ -43,10 +50,13 @@
</view>
<view
slot=
"body"
>
<view
class=
"hotFlex"
>
<hot-style
v-if=
"hotStylePage.records.length > 0"
:recordsList=
"hotStylePage.records"
></hot-style>
<!-- <hot-style></hot-style>
<hot-style></hot-style>
<hot-style></hot-style>
<hot-style></hot-style>
<hot-style></hot-style>
<hot-style></hot-style> -->
</view>
</view>
</u-card>
...
...
@@ -60,12 +70,25 @@
import
headTitle
from
"./components/header"
;
//每日更新头部的东西
import
hotStyle
from
"./components/hotStyle"
;
//热门款式
export
default
{
components
:
{
headTitle
,
hotStyle
},
components
:
{
headTitle
,
hotStyle
,
},
data
()
{
return
{
background
:
{
backgroundColor
:
"rgba(245,245,245,0)"
},
fabricObj
:
""
,
dailyNewStyleList
:
[],
hotStylePage
:
[],
imgUrl
:
this
.
$IMG_URL
,
// 上传地址
background
:
{
backgroundColor
:
"rgba(245,245,245,0)"
,
},
};
},
created
()
{
console
.
log
(
"ces"
);
this
.
getList
();
},
methods
:
{
// 搜索按钮
searchCli
()
{
...
...
@@ -73,6 +96,21 @@ export default {
},
headTab
()
{
this
.
$router
.
push
(
"pages/brands/everyDay"
);
// this.$router.push("pages/brands/detail");
},
getList
()
{
let
param
=
{
current
:
1
,
size
:
10
,
styleTag
:
""
,
};
this
.
$http
(
"mobileBrand.stylePage"
,
param
).
then
((
res
)
=>
{
let
{
code
,
data
}
=
res
;
if
(
code
===
200
)
{
this
.
dailyNewStyleList
=
data
.
dailyNewStyleList
;
this
.
hotStylePage
=
data
.
hotStylePage
;
}
});
},
},
};
...
...
@@ -95,12 +133,15 @@ export default {
width
:
60rpx
;
height
:
60rpx
;
}
//每日更新
.everyUpdate
{
width
:
100%
;
::v-deep
.u-card__body
{
padding
:
0rpx
0rpx
40rpx
36rpx
!
important
;
}
::v-deep
.u-card__head
{
padding-bottom
:
34rpx
!
important
;
}
...
...
@@ -108,6 +149,8 @@ export default {
.imgList
{
overflow-x
:
auto
;
white-space
:
nowrap
;
display
:
flex
;
image
{
width
:
240rpx
;
height
:
160rpx
;
...
...
@@ -116,15 +159,19 @@ export default {
}
}
}
//热门款式
.hotstyle
{
::v-deep
.u-card__body
{
padding-top
:
24rpx
!
important
;
}
::v-deep
.u-card__head
{
padding-bottom
:
0rpx
!
important
;
}
width
:
100%
;
.hotFlex
{
display
:
flex
;
flex-wrap
:
wrap
;
...
...
src/pages/brands/components/hotStyle.vue
View file @
e1b9231b
...
...
@@ -6,7 +6,7 @@
src=
"@/static/images/brank/mei1.jpg"
></image>
<view
class=
"hotborder"
>
<view
class=
"hotText1"
>
男装-上装-青年-时尚休闲
</view>
<view
class=
"hotText1"
>
{{
item
.
styleTag
}}
</view>
<view
class=
"hotText2"
>
<image
class=
"iconhot"
src=
"@/static/images/brank/mei1.jpg"
></image>
<text
class=
"wen"
>
我的文字是dsadasdasddsads
</text>
...
...
@@ -45,31 +45,48 @@ export default {
this
.
$u
.
toast
(
`已取消收藏`
);
}
},
methods
:
{
// 点击切换心心选项
tabImage
()
{
this
.
ImageBool
=
!
this
.
ImageBool
;
},
// 跳转到详情
tabdetail
()
{
this
.
$router
.
push
(
"pages/brands/detail?id=2"
);
tabdetail
(
item
)
{
// console.log("KKK");
this
.
$router
.
push
(
"/pages/brands/detail?id="
+
item
.
id
);
// this.$router.push("pages/brands/everyDay");
},
},
};
}
</
script
>
<
style
lang=
"scss"
scoped
>
.whole
{
display
:
flex
;
flex-wrap
:
wrap
;
}
.hots
{
height
:
578rpx
;
width
:
330rpx
;
margin-bottom
:
20rpx
;
margin-right
:
16rpx
;
// flex: 1;
.indexhot
{
display
:
block
;
height
:
434rpx
;
width
:
330rpx
;
border-radius
:
10rpx
10rpx
0
0
;
}
.hotborder
{
height
:
144rpx
;
// width: 193rpx;
border
:
2rpx
solid
#e3e1e0
;
// border-top: 0rpx !important;
border-radius
:
0
0
10rpx
10rpx
;
}
.hotText1
{
font-size
:
24rpx
;
font-family
:
PingFangSC
,
PingFangSC-Regular
;
...
...
@@ -77,27 +94,33 @@ export default {
color
:
rgba
(
0
,
0
,
0
,
0
.8
);
margin
:
24rpx
28rpx
0
20rpx
;
}
.hotText2
{
width
:
100%
;
// background-color: red;
margin-top
:
16rpx
;
display
:
flex
;
align-items
:
center
;
// margin: 24rpx 0rpx 0 20rpx;
.iconhot
{
width
:
40rpx
;
height
:
40rpx
;
margin-left
:
20rpx
;
}
.wen
{
width
:
192rpx
;
font-size
:
24rpx
;
margin-left
:
10rpx
;
overflow
:
hidden
;
/*超出部分隐藏*/
white-space
:
nowrap
;
/*禁止换行*/
overflow
:
hidden
;
/*超出部分隐藏*/
white-space
:
nowrap
;
/*禁止换行*/
text-overflow
:
ellipsis
;
}
.iconLove
{
width
:
36rpx
;
height
:
32rpx
;
...
...
src/pages/brands/components/hs-material-thumbnail.vue
View file @
e1b9231b
<
template
>
<view
class=
"home_con_content_order"
@
click=
"click"
>
<image
<
!--
<
image
class=
"width_100 hs-height-160"
src=
"@/static/images/home/1@2x.png"
mode=
""
></image>
></image>
-->
<!--
<image
class=
"width_100 hs-height-160"
:src=
"`$
{imgUrl}${fileCode}`"> -->
<template
v-for=
"item,index in colourApiList"
>
<image
:key=
"index"
v-if=
"item.isMain"
class=
"width_100 hs-height-160"
:src=
"`$
{imgUrl}${item.fileCode}`" />
</
template
>
<view
class=
"order_tit"
>
<view
class=
"u-flex justify-between u-font-32"
>
<span
class=
"color_DDA973 u-line-1"
>
{{
item
.
materialName
}}
加厚荷兰绒绒布布料
</span
>
<span
class=
"color_DDA973 u-line-1"
>
{{ item.materialName }}
<!-- 加厚荷兰绒绒布布料 -->
</span
>
</view>
<view
class=
"u-font-24 u-m-t-20 color_6F6F72"
>
<span
class=
"u-m-r-10"
>
{{
item
.
materialC
ategory
}}
</span>
<span
class=
"u-m-r-10"
>
{{ item.
c
ategory }}
</span>
|
<span
class=
"u-m-l-10 u-m-r-10"
>
{{
item
.
materialDoor
Width
}}
cm
</span>
<span
class=
"u-m-l-10 u-m-r-10"
>
{{ item.
cloth
Width }} cm
</span>
|
<span
class=
"u-m-l-10"
>
{{
item
.
materialElem
ent
}}
</span>
<span
class=
"u-m-l-10"
>
{{ item.
compon
ent }}
</span>
</view>
</view>
</view>
</template>
<
script
>
export
default
{
export
default
{
name
:
"hs-material-thumbnail"
,
props
:
{
item
:
{
type
:
Object
,
default
:
()
=>
{},
},
colourApiList
:
{
type
:
Array
,
default
:
[]
}
},
data
()
{
return
{};
...
...
@@ -39,11 +48,11 @@ export default {
this
.
$emit
(
"click"
);
},
},
};
};
</
script
>
<
style
scoped
lang=
"scss"
>
.home_con_content_order
{
.home_con_content_order
{
position
:
relative
;
display
:
flex
;
align-items
:
center
;
...
...
@@ -52,6 +61,7 @@ export default {
border-radius
:
8rpx
;
overflow
:
hidden
;
width
:
100%
;
.order_tit
{
position
:
absolute
;
width
:
75%
;
...
...
@@ -62,35 +72,36 @@ export default {
padding
:
20rpx
;
flex
:
1
;
height
:
100%
;
background
:
rgba
(
17
,
21
,
30
,
0
.5
);
//
background: rgba(17, 21, 30, 0.5);
}
}
.width_30
{
}
.width_30
{
width
:
30%
;
}
}
.color_DDA973
{
.color_DDA973
{
color
:
#dda973
;
}
}
.color_6F6F72
{
.color_6F6F72
{
color
:
#6f6f72
;
}
}
.bd_dashed
{
.bd_dashed
{
position
:
relative
;
}
}
.bd_dashed
:after
{
.bd_dashed
:after
{
border-width
:
1px
;
}
}
.bd_dashed-bottom
:after
,
.bd_dashed-left
:after
,
.bd_dashed-right
:after
,
.bd_dashed-top-bottom
:after
,
.bd_dashed-top
:after
,
.bd_dashed
:after
{
.bd_dashed-bottom
:after
,
.bd_dashed-left
:after
,
.bd_dashed-right
:after
,
.bd_dashed-top-bottom
:after
,
.bd_dashed-top
:after
,
.bd_dashed
:after
{
content
:
" "
;
position
:
absolute
;
left
:
0
;
...
...
@@ -103,11 +114,11 @@ export default {
transform
:
scale
(
0
.5
,
0
.5
);
border
:
1px
dashed
#e4e7ed
;
z-index
:
2
;
}
}
.ov_hiden
{
.ov_hiden
{
overflow
:
hidden
;
text-overflow
:
ellipsis
;
white-space
:
nowrap
;
}
}
</
style
>
\ No newline at end of file
src/pages/brands/detail.vue
View file @
e1b9231b
...
...
@@ -8,7 +8,7 @@
>
</u-navbar>
<view>
<u-image
height=
"750rpx"
src=
"@/static/images/brank/deImg.png
"
></u-image>
<u-image
height=
"750rpx"
:src=
"`$
{imgUrl}${tabledata.originalImageCode}`
">
</u-image>
</view>
<view
class=
"u-p-r-30 u-p-l-30"
>
<!--款式信息 -->
...
...
@@ -16,26 +16,26 @@
<view
class=
"u-border-bottom u-line-88"
>
款式信息
</view>
<view
class=
"fabric u-m-t-24"
>
<text
class=
"textStyle1"
>
产品款号
</text>
<text
class=
"textStyle2"
>
AS23124
</text>
<text
class=
"textStyle2"
>
{{
tabledata
.
styleCode
}}
</text>
</view>
<view
class=
"fabric u-m-t-8"
>
<text
class=
"textStyle1"
>
面料供应商
</text>
<text
class=
"textStyle2"
>
AS23124
</text>
<text
class=
"textStyle2"
>
{{
tabledata
.
supplierName
}}
</text>
</view>
</view>
<!-- 面料信息 -->
<view
class=
"bg-fff u-p-r-30 u-p-b-30 u-p-l-30 item"
>
<view
class=
"u-border-bottom u-line-88"
>
面料信息
</view>
<view
class=
"u-m-t-30 u-m-b-56"
>
<material
:item=
"item"
></material>
<material
:item=
"item"
:colourApiList=
"tabledata.colourApiList"
></material>
</view>
<!-- 其他颜色 -->
<view
class=
"u-flex"
>
<view
class=
"overflow u-flex-1"
>
<view>
其他颜色
</view>
<view>
<view
class=
"image u-m-r-10"
>
<image
src=
"
"
style=
"width: 100%; height: 100%"
></image>
<view
class=
"image u-m-r-10"
v-for=
"item,index in tabledata.colourApiList"
:key=
"index"
>
<image
v-if=
"item.isMain"
:src=
"`$
{imgUrl}${item.fileCode}`
" style="width: 100%; height: 100%">
</image>
<view
class=
"image-tip u-line-1"
>
颜色
</view>
</view>
<view
class=
"image u-m-r-10"
>
...
...
@@ -43,12 +43,14 @@
src=
"@/static/images/brank/mei1.jpg"
style=
"width: 100%; height: 100%"
></image>
<!--
<view
class=
"image u-m-r-10"
>
<image
src=
""
style=
"width: 100%; height: 100%"
></image>
<view
class=
"image-tip u-line-1"
>
颜色
</view>
</view>
<view
class=
"image u-m-r-10"
>
<image
src=
""
style=
"width: 100%; height: 100%"
></image>
<view
class=
"image-tip u-line-1"
>
颜色
</view>
</view>
</view>
-->
</view>
</view>
</view>
...
...
@@ -63,15 +65,53 @@
</
template
>
<
script
>
import
material
from
"./components/hs-material-thumbnail.vue"
;
export
default
{
components
:
{
material
},
import
material
from
"./components/hs-material-thumbnail.vue"
;
export
default
{
components
:
{
material
},
data
()
{
return
{
tabledata
:{},
item
:
{},
id
:
""
,
imgUrl
:
this
.
$IMG_URL
,
// 上传地址
};
},
};
watch
:
{
id
:
{
handler
()
{
console
.
log
(
"oid"
);
this
.
detail
()
}
}
},
created
()
{
this
.
detail
()
},
onLoad
(
options
)
{
this
.
id
=
options
.
id
;
},
methods
:
{
detail
()
{
let
param
=
{
id
:
this
.
id
}
this
.
$http
(
'mobileBrand.styleDetail'
,
param
).
then
(
res
=>
{
let
{
code
,
data
}
=
res
;
if
(
code
===
200
)
{
this
.
tabledata
=
data
this
.
item
=
data
.
materialInfo
}
});
}
},
};
</
script
>
<
style
scoped
lang=
"scss"
>
...
...
@@ -113,17 +153,44 @@ $main-color: #fff;
border-radius
:
44rpx
;
color
:
white
;
}
}
.u-line-88
{
.textStyle2
{
margin-left
:
40rpx
;
font-size
:
14px
;
font-family
:
PingFangSC
,
PingFangSC-Regular
;
font-weight
:
500
;
color
:
#333333
;
}
// 我要采购布样
.sampling
{
position
:
fixed
;
bottom
:
0
;
width
:
750rpx
;
height
:
100rpx
;
background
:
#ffffff
;
box-shadow
:
0px
-2px
3px
0px
rgba
(
178
,
182
,
214
,
0
.1
);
.u-btn
{
width
:
630rpx
;
height
:
88rpx
;
background
:
rgba
(
0
,
0
,
0
,
0
.8
);
border-radius
:
44rpx
;
color
:
white
;
}
}
.u-line-88
{
line-height
:
88rpx
;
}
.bg-fff
{
}
.bg-fff
{
position
:
relative
;
top
:
-10rpx
;
background
:
#fff
;
}
.item
{
}
.item
{
width
:
100%
;
margin-bottom
:
28rpx
;
...
...
@@ -131,6 +198,7 @@ $main-color: #fff;
border-radius
:
16rpx
;
border
:
1px
solid
rgba
(
0
,
0
,
0
,
0
.1
);
}
&
-tag
{
padding
:
6rpx
2px
;
background
:
$color
;
...
...
@@ -139,13 +207,14 @@ $main-color: #fff;
display
:
inline-block
;
margin-right
:
10rpx
;
}
}
}
.image
{
.image
{
position
:
relative
;
width
:
160rpx
;
height
:
160rpx
;
display
:
inline-block
;
&
-tip
{
text-align
:
center
;
width
:
100%
;
...
...
@@ -157,9 +226,10 @@ $main-color: #fff;
bottom
:
0
;
left
:
0
;
}
}
.overflow
{
}
.overflow
{
overflow-x
:
auto
;
white-space
:
nowrap
;
}
}
</
style
>
\ No newline at end of file
src/pages/brands/everyDay.vue
View file @
e1b9231b
<!--
* @Author: your name
* @Date: 2022-01-14 11:42:25
* @LastEditTime: 2022-01-14 15:24:14
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /hs-app-project/src/pages/brands/everyDay.vue
-->
<
template
>
<!-- 每日上新 -->
<u-card
full
:head-border-bottom=
"false"
>
<view
slot=
"body"
>
<view
class=
"hotFlex"
>
<hot-style></hot-style>
<hot-style></hot-style>
<hot-style></hot-style>
<hot-style></hot-style>
<hot-style
v-if=
"recordsList.length>0"
:recordsList=
"recordsList"
></hot-style>
</view>
</view>
</u-card>
...
...
@@ -19,9 +24,33 @@ export default {
hotStyle
,
},
data
()
{
return
{};
return
{
recordsList
:[]
};
},
created
(){
console
.
log
(
"ces"
);
this
.
materialDetail
()
},
methods
:
{
materialDetail
()
{
let
param
=
{
"current"
:
1
,
"size"
:
10
,
"styleTag"
:
""
}
this
.
$http
(
'mobileBrand.dailyNewStylePage'
,
param
).
then
(
res
=>
{
let
{
code
,
data
}
=
res
;
if
(
code
===
200
)
{
this
.
recordsList
=
data
.
records
;
console
.
log
(
this
.
recordsList
,
"this.recordsList"
);
}
});
}
},
methods
:
{},
};
</
script
>
...
...
src/pages/home/index.vue
View file @
e1b9231b
This diff is collapsed.
Click to expand it.
src/pages/material/createMaterial.vue
View file @
e1b9231b
This diff is collapsed.
Click to expand it.
src/pages/material/entrustItem.vue
View file @
e1b9231b
...
...
@@ -8,47 +8,50 @@
</u-navbar>
<view
class=
"body"
:style=
"
{ bottom: footerHeight + 'px', top: headerHeight+ 'px'}">
<view
class=
"tip u-m-b-20"
>
剩余59分1秒自动取消上架单
</view>
<view
class=
"tip u-m-b-20"
v-if=
"detail.status === 1"
>
剩余59分1秒自动取消上架单
</view>
<view
class=
"u-p-r-30 u-p-l-30"
>
<view
class=
"bg-fff u-p-r-30 u-p-b-30 u-p-l-30 u-m-b-20"
>
<view
class=
"u-border-bottom u-l-height-44 u-flex"
>
<text
class=
"u-flex-1"
>
款式明细
</text>
<text>
总共
50
款
</text>
<text>
总共
{{
detail
.
quantity
}}
款
</text>
</view>
<view
class=
"u-p-t-20 u-p-b-20"
>
加厚荷兰绒绒布布料(3)
<!--
<view
class=
"u-p-t-20 u-p-b-20"
>
-->
<!--
{{
detail
.
styleOrderCode
}}
-->
<!--
</view>
-->
<view
class=
"item u-flex"
v-for=
"(item) in list"
:key=
"item.id"
>
<view
class=
"item-img"
>
<image
:src=
"`$
{$IMG_URL}${item.originalImageCode}`" mode="widthFix">
</image>
</view>
<view
class=
"item u-flex"
>
<view
class=
"item-img"
></view>
<view
class=
"u-flex-1 u-p-l-20"
>
<view
class=
"item-title u-line-1 u-font-28"
>
男装-上装-青年-时尚休闲
</view>
<view
class=
"item-title u-line-1 u-font-28"
>
{{
item
.
styleTag
}}
</view>
<view
class=
"u-flex u-m-t-6 u-m-b-6"
>
<view
class=
"u-m-r-40 label u-font-24"
>
款号
</view>
<view
class=
"u-line-1 u-flex-1 content u-font-24"
>
11
{{
item
.
styleCode
}}
</view>
</view>
<view
class=
"u-flex u-m-t-6 u-m-b-6"
>
<view
class=
"u-m-r-40 label u-font-24"
>
所选面料
</view>
<view
class=
"u-line-1 u-flex-1 content u-font-24"
>
11
{{
item
.
materialName
}}
</view>
</view>
<view
class=
"item-tags"
>
<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
class=
"item-tag u-font-20"
>
标签
</view>
</view>
</view>
</view>
<view
class=
"u-p-b-20 u-border-bottom text-center"
@
click=
"toggle"
>
<text>
展开
<u-icon
name=
"arrow-down"
size=
"22"
color=
"#000"
></u-icon></text>
<view
class=
"u-p-b-20 u-border-bottom text-center"
v-if=
"detail.styleLibraryTaskItemVOList.length > 3"
@
click=
"toggle"
>
<text>
{{
end
?
'展开'
:
'收起'
}}
<u-icon
:name=
"end ? 'arrow-down': 'arrow-up'"
size=
"22"
color=
"#000"
></u-icon></text>
</view>
<view
class=
"price text-right u-m-t-30 u-p-r-30"
>
总金额
<text
class=
"price-num u-m-l-40"
>
2000
</text>
元
总金额
<text
class=
"price-num u-m-l-40"
>
{{
detail
.
price
}}
</text>
元
</view>
</view>
<!--订单信息-->
...
...
@@ -57,26 +60,26 @@
<view
class=
"u-flex u-m-t-18 u-m-b-8"
>
<view
class=
"u-m-r-40 label"
>
订单编号
</view>
<view
class=
"u-line-1 u-flex-1 content"
>
11
<!--
{{
item
.
createTime
}}
-->
</view>
</view>
<view
class=
"u-flex u-m-t-18 u-m-b-8"
>
<view
class=
"u-m-r-40 label"
>
创建时间
</view>
<view
class=
"u-line-1 u-flex-1 content"
>
111
</view>
付款时间
{{
detail
.
createTime
}}
</view>
</view>
<view
class=
"u-flex u-m-t-18 u-m-b-8"
>
<view
class=
"u-m-r-40 label"
>
付款时间
</view>
<view
class=
"u-line-1 u-flex-1 content"
>
11
{{
detail
.
createTime
}}
</view>
</view>
</view>
</view>
</view>
<view
class=
"footer"
id=
"footer"
>
<view
class=
"footer"
id=
"footer"
v-if=
"detail.status === 1"
>
<view
class=
"footer-btn"
>
<view
class=
"button button-default"
>
立刻付款
...
...
@@ -95,12 +98,38 @@ export default {
return
{
title
:
'待付款'
,
detail
:{
styleLibraryTaskItemVOList
:[]
},
end
:
true
}
},
computed
:{
list
(){
let
data
=
this
.
detail
.
styleLibraryTaskItemVOList
||
[];
return
this
.
end
===
true
&&
data
.
length
>
3
?
data
.
slice
(
0
,
3
)
:
data
;
}
},
created
()
{
let
{
id
}
=
this
.
$Route
.
query
;
this
.
getItem
(
id
)
},
methods
:{
toggle
(){}
toggle
(){
this
.
end
=
!
this
.
end
;
},
getItem
(
id
){
this
.
$http
(
"stylelibraryorder.listingDetails"
,
id
).
then
(
res
=>
{
let
{
code
,
data
}
=
res
;
if
(
code
===
200
){
if
(
Object
.
keys
(
data
).
length
>
0
){
this
.
detail
=
data
;
}
}
})
},
}
}
</
script
>
...
...
src/pages/material/entrustList.vue
View file @
e1b9231b
...
...
@@ -29,38 +29,43 @@
<view
class=
"item-header u-flex"
>
<view
class=
"u-flex-1 u-line-1 u-font-32 u-flex"
>
<view
class=
"item-header-tip u-m-r-10"
></view>
AS2312424234
{{item.styleOrderCode}}
</view>
<view
class=
"item-header-status u-flex-1 u-line-1 u-font-28"
>
待付款倒计时:59分21秒
<view
class=
"item-header-status u-flex-1 u-line-1 u-font-28 text-right"
>
<!-- 待付款倒计时:59分21秒-->
<!-- 1-待付款、2-已付款、3-已取消-->
{{
item.status === 1 ? '待付款' :
item.status === 2 ? '已付款' : '已取消'
}}
</view>
</view>
<view
class=
"item-body "
>
<view
class=
"item-desc u-m-t-28 u-m-b-22"
>
<text
class=
"u-m-r-20 item-desc-label"
>
上架款数
</text>
<text
class=
"item-desc-value"
>
50款
</text>
</view>
<view
class=
"item-images"
>
<image
src=
""
fit=
"fit"
class=
"item-image"
></image>
<image
src=
""
fit=
"fit"
class=
"item-image"
></image>
<image
src=
""
fit=
"fit"
class=
"item-image"
></image>
<image
src=
""
fit=
"fit"
class=
"item-image"
></image>
<image
src=
""
fit=
"fit"
class=
"item-image"
></image>
<image
src=
""
fit=
"fit"
class=
"item-image"
></image>
<text
class=
"item-desc-value"
>
{{item.quantity}}款
</text>
</view>
</view>
<view
class=
"item-hr"
></view>
<view
class=
"item-footer u-flex"
>
<view
class=
"item-desc u-flex-1 u-line-1"
>
<view
class=
"item-desc u-flex-1 u-line-1"
v-if=
"item.status === 1"
>
<text
class=
"u-m-r-20 item-desc-label"
>
待支付:
</text>
<text
class=
"item-desc-value item--status"
>
23211
元
</text>
<text
class=
"item-desc-value item--status"
>
{{ item.price }}
元
</text>
</view>
<view
class=
"item-buttons u-flex-1 u-flex"
>
<view
class=
"button button-plain button-plain--default u-m-r-20"
>
取消上架
</view>
<view
class=
"button button-default"
>
付款
</view>
<view
class=
"item-buttons u-flex-1 u-flex"
>
<!-- v-if="item.putawayStatus === 3"-->
<view
class=
"button button-plain button-plain--default u-m-r-20"
@
click
.
stop
.
self=
"cancel(item)"
>
取消上架
</view>
<view
class=
"button button-default"
v-if=
"item.status === 1"
>
付款
</view>
</view>
</view>
</view>
<!-- 加载更多 -->
<u-loadmore
v-if=
"!isEmpty"
height=
"80rpx"
:status=
"loadStatus"
icon-type=
"flower"
color=
"#ccc"
/>
<!-- 缺省页 -->
<hs-empty
v-if=
"isEmpty"
tipText=
"没有数据"
marginTop=
"100rpx"
:image=
"emptyImage"
></hs-empty>
<u-toast
ref=
"uToast"
/>
</view>
</view>
</template>
...
...
@@ -73,25 +78,72 @@ export default {
mixins
:[
dom
],
data
(){
return
{
emptyImage
:
require
(
"@/static/images/components/empty/empty.png"
),
activeStatus
:
0
,
statusList
:
[
{
label
:
'全部'
,
value
:
'1'
},
{
label
:
'待付款'
,
value
:
'2'
},
{
label
:
'已付款'
,
value
:
'3'
},
{
label
:
'已取消'
,
value
:
'4'
},
{
label
:
'全部'
,
value
:
0
},
{
label
:
'待付款'
,
value
:
1
},
{
label
:
'已付款'
,
value
:
2
},
{
label
:
'已取消'
,
value
:
3
},
],
list
:
[
{}
]
loadStatus
:
'loadmore'
,
pageOptions
:
{
current
:
1
,
size
:
10
,
pages
:
10
,
},
list
:
[]
}
},
created
()
{
this
.
getList
()
},
computed
:{
isEmpty
(){
return
this
.
list
.
length
===
0
}
},
methods
:{
setStatus
(
index
){
this
.
activeStatus
=
index
;
this
.
getList
();
this
.
getList
(
true
);
},
getList
(){
// this.
getList
(
isReload
){
this
.
loadStatus
=
'loading'
;
this
.
$http
(
"stylelibraryorder.listingList"
,{
...
this
.
pageOptions
,
"status"
:
this
.
statusList
[
this
.
activeStatus
].
value
,
}).
then
(
res
=>
{
let
{
code
,
data
}
=
res
;
if
(
code
===
200
){
if
(
Object
.
keys
(
data
).
length
>
0
){
this
.
list
=
isReload
?
data
.
records
:
this
.
list
.
concat
(
data
.
records
);
this
.
pageOptions
.
pages
=
data
.
total
;
this
.
loadStatus
=
this
.
list
.
length
<
data
.
total
?
'loadmore'
:
'nomore'
;
}
else
{
this
.
list
=
[]
this
.
loadStatus
=
'nomore'
;
}
}
})
},
cancel
(
item
){
this
.
$http
(
"stylelibraryorder.unlisted"
,
{
id
:
item
.
id
})
.
then
(
res
=>
{
let
{
code
,
msg
}
=
res
;
if
(
code
===
200
){
this
.
getList
(
true
);
}
else
{
this
.
$refs
.
uToast
.
show
({
title
:
msg
})
}
})
},
goEntrustItemPage
({
id
}){
this
.
$Router
.
push
({
...
...
@@ -109,7 +161,9 @@ export default {
$activeColor
:
#DDA973
;
$mainColor
:
#000
;
$subColor
:
rgba
(
0
,
0
,
0
,
0
.40
);
.flex-row-reverse
{
flex-direction
:
row-reverse
;
}
.bg-fff
{
background
:
#fff
;
}
...
...
src/pages/material/entrustManagement.vue
View file @
e1b9231b
This diff is collapsed.
Click to expand it.
src/pages/material/entrustManagementItem.vue
View file @
e1b9231b
<
template
>
<view>
<view>
<u-image
height=
"750rpx"
></u-image>
<u-image
height=
"750rpx"
:src=
"`$
{$IMG_URL}${item.originalImageCode}`"
>
</u-image>
</view>
<view
class=
"u-p-t-20 u-p-r-30 u-p-l-30 "
>
<view
class=
"bg-fff u-p-t-20 u-p-r-30 u-p-b-30 u-p-l-30 item"
>
<view
class=
"u-flex"
>
<text
class=
"u-flex-1"
>
男装-上装-青年-时尚
</text>
<text
class=
"active"
>
待上架
</text>
<text
class=
"u-flex-1"
>
{{
item
.
styleTag
}}
</text>
<text
class=
"active"
>
{{
item
.
status
|
filterStatus
}}
</text>
</view>
<view
class=
"u-flex"
>
<text
class=
"u-flex-1 u-font-28"
>
AS23124
</text>
<text
class=
"u-flex-1 u-font-28"
>
{{
item
.
styleCode
}}
</text>
<text
class=
"u-font-24"
>
加入日期:
2021-12-11
加入日期:
{{
item
.
createTime
.
split
(
' '
)[
0
]
}}
</text>
</view>
<view
class=
"item-tags"
>
<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
class=
"item-tag u-font-20"
>
标签
</view>
</view>
</view>
<view
class=
"bg-fff u-p-r-30 u-p-b-30 u-p-l-30 item"
>
<view
class=
"bg-fff u-p-r-30 u-p-b-30 u-p-l-30 item "
>
<view
class=
"u-border-bottom u-line-88"
>
所选面料
</view>
<view
class=
"u-m-t-30 u-m-b-56"
>
<hs-material-thumbnail
:item=
"
item
"
></hs-material-thumbnail>
<hs-material-thumbnail
:item=
"
materialInfo
"
></hs-material-thumbnail>
</view>
<view
class=
"u-flex"
>
<view
class=
"u-flex
base-line
"
>
<view
class=
""
>
<view>
主图颜色
</view>
<view
class=
"image"
>
<image
src=
"
"
style=
"width: 100%;height: 100%"
></image>
<view
class=
"image-tip u-line-1"
>
颜色
</view>
<image
:src=
"`$
{$IMG_URL}${mainPic.fileCode}`
" style="width: 100%;height: 100%">
</image>
<view
class=
"image-tip u-line-1"
>
{{
mainPic
.
describes
}}
</view>
</view>
</view>
<view
class=
"overflow u-flex-1"
>
<view>
其他颜色
</view>
<view>
<view
class=
"image u-m-r-10"
>
<image
src=
""
style=
"width: 100%;height: 100%"
></image>
<view
class=
"image-tip u-line-1"
>
颜色
</view>
</view>
<view
class=
"image u-m-r-10"
>
<image
src=
""
style=
"width: 100%;height: 100%"
></image>
<view
class=
"image-tip u-line-1"
>
颜色
</view>
</view>
<view
class=
"image u-m-r-10"
>
<image
src=
""
style=
"width: 100%;height: 100%"
></image>
<view
class=
"image-tip u-line-1"
>
颜色
</view>
<view
class=
"image u-m-r-10"
v-for=
"pic in subPic"
:key=
"pic.id"
>
<image
:src=
"`$
{$IMG_URL}${item.fileCode}`" style="width: 100%;height: 100%">
</image>
<view
class=
"image-tip u-line-1"
>
{{
pic
.
describes
}}
</view>
</view>
</view>
</view>
...
...
@@ -67,7 +58,60 @@ export default {
components
:
{
HsMaterialThumbnail
},
data
(){
return
{
item
:{}
item
:{
createTime
:
''
,
colourApiList
:
[]
}
}
},
computed
:{
mainPic
(){
return
this
.
item
.
colourApiList
.
filter
((
item
)
=>
item
.
isMain
)[
0
]
},
subPic
(){
return
this
.
item
.
colourApiList
.
filter
((
item
)
=>
!
item
.
isMain
)
},
materialInfo
(){
let
item
=
this
.
item
.
materialInfo
||
{};
return
Object
.
assign
({},
item
,{
materialCategory
:
item
.
category
,
materialDoorWidth
:
item
.
fabricWidth
,
materialElement
:
item
.
saoriStandard
,
})
}
},
filters
:{
filterStatus
(
v
){
// 1-待领取、2-待处理、3-待审核、4-已启动、5-已停用
switch
(
v
)
{
case
1
:
return
'待领取'
case
2
:
return
'待处理'
case
3
:
return
'待审核'
case
4
:
return
'已启动'
case
5
:
return
'已停用'
}
}
},
created
()
{
let
{
id
}
=
this
.
$Route
.
query
;
this
.
getItem
(
id
);
},
methods
:{
getItem
(
id
){
this
.
$http
(
"stylelibraryorder.getStyleDetails"
,
id
)
.
then
(
res
=>
{
let
{
code
,
data
}
=
res
;
if
(
code
===
200
){
this
.
item
=
data
;
}
})
}
}
}
...
...
@@ -78,7 +122,7 @@ $h-color: #AF8D66;
$activeColor
:
#DDA973
;
$color
:
rgba
(
175
,
141
,
102
,
0
.10
);
$main-color
:
#fff
;
.base-line
{
align-items
:
baseline
;}
.u-line-88
{
line-height
:
88rpx
;
}
...
...
src/pages/material/mixins/material.js
0 → 100644
View file @
e1b9231b
export
default
{
data
(){
return
{
MaterialList
:
[],
materialDetail
:
{}
}
},
computed
:{
title
(){
return
this
.
materialDetail
.
materialName
;
},
},
methods
:{
getMaterialList
(){
this
.
$http
(
"materialinfo.getMaterialList"
,{
isDisabled
:
false
,
materialType
:
"面料"
,
current
:
1
,
size
:
10
,
}).
then
(
res
=>
{
let
{
code
,
data
}
=
res
;
if
(
code
===
200
){
this
.
MaterialList
=
data
.
page
.
records
;
}
})
},
// 获取面料详情
getMaterialItem
(
id
,
callback
){
this
.
$http
(
"materialinfo.getMaterialById"
,
id
)
.
then
(
res
=>
{
let
{
code
,
data
}
=
res
;
if
(
code
===
200
){
if
(
callback
){
callback
(
data
)
}
else
{
this
.
materialDetail
=
data
;
}
}
})
},
}
}
src/pages/material/mixins/step.js
0 → 100644
View file @
e1b9231b
export
default
{
data
(){
return
{
offset
:{
x
:
0
},
startTime
:
0
,
lineStepWidth
:
0
,
lineWidth
:
0
,
lineOffset
:
0
,
}
},
computed
:{
// 角度
angle
(){
let
{
lineOffset
,
offset
,
lineWidth
}
=
this
;
let
left
=
(
offset
.
x
-
lineOffset
.
left
)
/
lineWidth
*
100
;
return
Math
.
ceil
((
left
-
50
)
/
50
*
180
);
},
},
methods
:{
// 重置调整的进度条
initStep
(){
this
.
uGetRect
(
"#line"
).
then
(
res
=>
{
this
.
lineWidth
=
res
.
width
;
this
.
lineOffset
=
{
left
:
res
.
left
,
right
:
res
.
right
,
};
this
.
offset
.
x
=
res
.
width
/
2
+
res
.
left
;
})
this
.
uGetRect
(
"#line-step"
).
then
(
res
=>
{
this
.
lineStepWidth
=
res
.
width
;
})
},
resetStep
(){
this
.
offset
.
x
=
this
.
lineWidth
/
2
+
this
.
lineOffset
.
left
;
},
touchMove
(
e
){
let
left
=
e
.
changedTouches
[
0
].
pageX
;
this
.
offset
.
x
=
this
.
filterStartEnd
(
left
)
},
touchEnd
(
e
){
let
left
=
e
.
changedTouches
[
0
].
pageX
;
this
.
offset
.
x
=
this
.
filterStartEnd
(
left
)
},
touchStart
(
e
){
this
.
offset
.
x
=
e
.
changedTouches
[
0
].
pageX
;
},
filterStartEnd
(
num
){
let
{
left
,
right
}
=
this
.
lineOffset
;
if
(
num
<
left
){
return
left
}
else
if
(
num
>
right
){
return
right
}
else
{
return
num
}
}
},
mounted
()
{
this
.
initStep
()
},
}
src/pages/material/selectType.vue
View file @
e1b9231b
...
...
@@ -174,6 +174,7 @@ export default {
this
.
loadStatus
=
'loading'
;
this
.
$http
(
'stylelibraryorder.page'
,
{
styleTag
:
this
.
keyword
,
status
:
0
,
materialTagIdList
,
...
this
.
pageOptions
}).
then
(
res
=>
{
...
...
src/pages/modeling/addItem.vue
View file @
e1b9231b
...
...
@@ -25,7 +25,7 @@
</view>
</view>
<u-form-item
label=
"面料门幅"
prop=
"clothWidth"
>
<u-number-box
v-model=
"detail.clothWidth"
:step=
"0.1"
></u-number-box>
cm
<u-number-box
v-model=
"detail.clothWidth"
:step=
"0.1"
:positive-integer=
"false"
></u-number-box>
cm
</u-form-item>
<u-form-item
label=
"面料成分"
prop=
"component"
required
>
<u-input
v-model=
"detail.component"
placeholder=
"请输入面料成分"
/>
...
...
@@ -183,7 +183,7 @@
<view
class=
"footer"
>
<view
class=
"u-p-t-18 u-p-r-30 u-p-b-18 u-p-l-30"
>
<view
class=
"u-flex"
>
<view
class=
"u-flex-1"
>
共填写{{detail.clothRowColourQuantity}}种颜色名称,请不要重名
</view>
<view
class=
"u-flex-1"
>
请选择{{designAgencyColourQuantity}}种颜色名称
</view>
<view
class=
"custom-style-round-circle custom-style-btn custom-style dialog-btn"
>
<view
class=
"custom-style-right"
@
click=
"submitColor"
>
确定
</view>
</view>
...
...
@@ -300,7 +300,18 @@ export default {
expirationDate
:{
required
:
true
,
message
:
'请选择完成期限'
,
}
},
clothWidth
:{
max
:
20
,
validate
(
rule
,
value
,
callback
)
{
let
reg
=
new
RegExp
(
/^
(\\
d+
)(
.
\\
d
{0,2})?
$/
);
return
reg
.
test
(
value
);
},
message
:
'门幅应保留小数点后两位'
,
// 可以单个或者同时写两个触发验证方式
trigger
:
[
'change'
,
'blur'
],
},
},
// 暂存用的颜色组
modelingTaskColourDTOList
:
[],
...
...
@@ -405,11 +416,13 @@ export default {
removeColor
(){
let
list
=
this
.
detail
.
modelingTaskMaterialColourList
;
let
checked
=
this
.
checkedList
;
for
(
let
i
=
0
;
i
<
list
.
length
;
i
++
)
{
if
(
checked
.
indexOf
(
list
[
i
].
id
)
>
-
1
){
this
.
$set
(
list
[
i
],
'isDeleted'
,
true
)
for
(
const
item
of
list
)
{
let
index
=
checked
.
indexOf
(
item
.
id
);
if
(
index
>
-
1
){
this
.
$set
(
item
,
'isDeleted'
,
true
)
}
else
{
list
.
splice
(
i
,
1
)
list
.
splice
(
i
ndex
,
1
)
}
}
},
...
...
@@ -514,6 +527,7 @@ export default {
validate
(
callback
){
this
.
$refs
[
'uForm'
].
validate
((
res
)
=>
{
if
(
res
)
{
return
;
this
.
validateList
(
callback
)
}
})
...
...
src/pages/order/item.vue
0 → 100644
View file @
e1b9231b
<
template
>
<view
class=
"body"
>
<!--选款-->
<u-navbar
title=
"客户详情"
:border-bottom=
"false"
:background=
"
{backgroundColor: 'transparent'}">
</u-navbar>
<view
class=
"u-p-30"
>
<view
class=
"border-radius-8 bg-fff u-p-r-30 u-p-l-30 u-m-b-20"
>
<view
class=
"u-p-t-24 u-p-b-24 u-border-bottom"
>
客户信息
</view>
<view
class=
"u-p-t-24 u-p-b-24 u-flex"
>
<view
class=
"label"
>
客户名称
</view>
<view
class=
"context"
>
{{
detail
.
fullName
}}
</view>
</view>
<view>
<view
class=
" u-p-b-24 u-flex"
>
<view
class=
"label"
>
联系人
</view>
<view
class=
"context"
>
{{
detail
.
contacts
[
0
].
name
}}
</view>
</view>
<view
class=
" u-p-b-24 u-flex"
>
<view
class=
"label"
>
联系方式
</view>
<view
class=
"context"
@
click=
"uni.makePhoneCall(detail.contacts[0].phone)"
>
{{
detail
.
contacts
[
0
].
phone
}}
</view>
</view>
</view>
</view>
<view
class=
"border-radius-8 bg-fff u-p-r-30 u-p-l-30 u-m-b-20"
>
<view
class=
"tabBar u-flex u-border-bottom"
>
<view
class=
"tabBar-item u-flex"
v-for=
"(item,index) in tarBars"
@
click=
"activeIndex = index"
:class=
"[activeIndex === index ? 'active': '']"
>
<text>
{{
item
.
label
}}
</text>
<text
class=
"tabBar-split u-m-r-30 u-m-l-30"
v-if=
"index
<
tarBars
.
length
-1
"
></text>
</view>
</view>
<view
class=
"u-p-b-28"
>
<view
class=
"item "
v-for=
"group in groupByTime"
>
<view
class=
"item-title u-m-t-28 u-m-b-28"
>
{{
group
.
label
}}
</view>
<view>
<view
v-for=
"(item) in group.children"
class=
"u-flex"
>
<view
class=
"item-img u-relative"
>
<image
:src=
"`$
{$IMG_URL}${item.styleLibraryTaskItemVO.originalImageCode}`" mode="fit" style="width:100%; height: 100%">
</image>
</view>
<view
class=
"u-flex-1 u-p-l-20 u-p-r-30 u-border-left"
>
<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"
>
{{
item
.
styleLibraryTaskItemVO
.
styleTag
}}
</view>
</view>
<view
class=
"item-desc u-font-24"
>
{{
item
.
styleLibraryTaskItemVO
.
materialName
}}
</view>
<view
class=
"item-desc u-font-24"
>
{{
item
.
styleLibraryTaskItemVO
.
styleCode
}}
</view>
<view
class=
"item-tags u-p-b-24"
>
<view
class=
"item-tag u-font-20"
:key=
"tag.id"
v-for=
"tag in item.styleLibraryTaskItemVO.styleLibraryTagVOList"
>
{{
tag
.
materialTagName
}}
</view>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
</
template
>
<
script
>
export
default
{
name
:
"item"
,
data
(){
return
{
activeIndex
:
0
,
tarBars
:
[
{
label
:
'采购意向记录'
},
{
label
:
'浏览款式记录'
},
],
item
:
{
styleLibraryMaterialProspectiveCustomerVOList
:
[]
}
}
},
computed
:{
detail
(){
return
this
.
item
.
basics
||
{
contacts
:
[{
name
:
''
,
phone
:
''
}]}
},
groupByTime
(){
let
map
=
Array
.
from
(
new
Set
(
this
.
tarBarContent
.
map
((
item
)
=>
item
.
createTime
))),
newList
=
[];
for
(
const
item
of
this
.
tarBarContent
)
{
let
name
=
item
[
'createTime'
],
index
=
map
.
indexOf
(
name
);
if
(
newList
[
index
]){
newList
[
index
][
'children'
].
push
(
item
)
}
else
{
newList
.
push
({
label
:
name
,
children
:
[
item
]
})
}
}
console
.
log
(
newList
)
return
newList
},
tarBarContent
(){
return
(
this
.
item
.
styleLibraryMaterialProspectiveCustomerVOList
||
[]
)
// 1-采购意向记录、2-浏览款式记录
.
filter
((
item
)
=>
item
.
type
===
this
.
activeIndex
+
1
)
}
},
created
()
{
let
{
id
}
=
this
.
$Route
.
query
;
this
.
getItem
(
id
)
},
methods
:{
getItem
(
id
){
this
.
$http
(
"stylelibraryorder.potentialCustomersDetails"
,
id
)
.
then
(
res
=>
{
let
{
code
,
data
}
=
res
;
if
(
code
===
200
){
this
.
item
=
data
;
}
})
}
}
}
</
script
>
<
style
scoped
lang=
"scss"
>
$h-color
:
#AF8D66
;
$color
:
rgba
(
175
,
141
,
102
,
0
.10
);
$main-color
:
#fff
;
.item
{
width
:
100%
;
margin-bottom
:
40rpx
;
&
--round
{
border-radius
:
16rpx
;
border
:
1px
solid
rgba
(
0
,
0
,
0
,
0
.10
);
}
&
--status
{
left
:
0
;
top
:
0
;
position
:
absolute
;
}
&
-img
{
width
:
160rpx
;
height
:
160rpx
;
//height: 100%
}
&
-title
{}
&
-desc
{}
&
-tags
{
}
&
-tag
{
padding
:
6rpx
2px
;
background
:
$color
;
text-align
:
center
;
color
:
$h-color
;
display
:
inline-block
;
margin-right
:
10rpx
;
}
}
.tabBar
{
height
:
88rpx
;
&
-item
{
font-size
:
24rpx
;
&
.active
{
font-size
:
28rpx
;
}
}
&
-split
{
height
:
28rpx
;
width
:
2rpx
;
background
:
rgba
(
0
,
0
,
0
,
0
.20
);
display
:
inline-block
;
}
}
.border-radius-8
{
border-radius
:
8rpx
;
}
.bg-fff
{
background
:
#fff
;
}
.label
{
color
:
rgba
(
0
,
0
,
0
,
0
.40
);
font-size
:
28rpx
;
min-width
:
140rpx
;
}
.context
{
color
:
#000
;
font-size
:
28rpx
;
}
</
style
>
src/pages/user/login/login.vue
View file @
e1b9231b
...
...
@@ -19,7 +19,10 @@ export default {
account
:
'18297959298'
,
password
:
'e10adc3949ba59abbe56e057f20f883e'
});
// await this.$store.dispatch('login', {
// account: '13588828505',
// password: '10470c3b4b1fed12c3baac014be15fac67c6e815',
// });
// await this.$store.dispatch("getDictionary")
// await this.$store.dispatch("getSizeList")
// await this.$store.dispatch("getCategoryList")
...
...
src/static/images/components/empty/empty.png
0 → 100644
View file @
e1b9231b
src/static/images/components/empty/empty@2x.png
0 → 100644
View file @
e1b9231b
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