Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
center-shop
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
EzijingWeb
center-shop
Commits
0c9e13db
提交
0c9e13db
authored
6月 04, 2021
作者:
王鹏飞
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
修改新增订单页面
上级
83d1113e
隐藏空白字符变更
内嵌
并排
正在显示
6 个修改的文件
包含
167 行增加
和
12 行删除
+167
-12
tableList.vue
src/components/base/tableList.vue
+6
-1
header.vue
src/components/layout/header.vue
+1
-0
selectGoods.vue
src/components/order/selectGoods.vue
+151
-0
index.vue
src/pages/goods/group/index.vue
+2
-2
add.vue
src/pages/order/add.vue
+6
-8
detail.vue
src/pages/order/detail.vue
+1
-1
没有找到文件。
src/components/base/tableList.vue
浏览文件 @
0c9e13db
...
@@ -41,7 +41,7 @@
...
@@ -41,7 +41,7 @@
</div>
</div>
<slot></slot>
<slot></slot>
<div
class=
"table-list-bd"
>
<div
class=
"table-list-bd"
>
<el-table
:data=
"dataList"
v-loading=
"loading"
v-bind=
"$attrs"
v-on=
"$listeners"
style=
"height: 100%"
>
<el-table
:data=
"dataList"
v-loading=
"loading"
v-bind=
"$attrs"
v-on=
"$listeners"
style=
"height: 100%"
ref=
"table"
>
<
template
v-for=
"item in columns"
>
<
template
v-for=
"item in columns"
>
<el-table-column
v-bind=
"item"
:key=
"item.prop"
v-if=
"visible(item)"
>
<el-table-column
v-bind=
"item"
:key=
"item.prop"
v-if=
"visible(item)"
>
<template
v-slot:default=
"scope"
v-if=
"item.slots || item.computed"
>
<template
v-slot:default=
"scope"
v-if=
"item.slots || item.computed"
>
...
@@ -112,6 +112,11 @@ export default {
...
@@ -112,6 +112,11 @@ export default {
}
}
}
}
},
},
computed
:
{
table
()
{
return
this
.
$refs
.
table
}
},
methods
:
{
methods
:
{
fetchList
(
isReset
)
{
fetchList
(
isReset
)
{
/**
/**
...
...
src/components/layout/header.vue
浏览文件 @
0c9e13db
...
@@ -121,6 +121,7 @@ export default {
...
@@ -121,6 +121,7 @@ export default {
height
:
20px
;
height
:
20px
;
margin-right
:
8px
;
margin-right
:
8px
;
border-radius
:
2px
;
border-radius
:
2px
;
object-fit
:
cover
;
}
}
}
}
</
style
>
</
style
>
src/components/order/selectGoods.vue
0 → 100644
浏览文件 @
0c9e13db
<
template
>
<div
class=
"select-goods"
>
<div
style=
"text-align: right"
>
<el-button
type=
"text"
@
click=
"dialogVisible = true"
>
从商品库添加
</el-button>
</div>
<table-list
v-bind=
"selectedTableOptions"
border
>
<template
v-slot:table-goods=
"
{ row }">
<goods-item
:data=
"row"
></goods-item>
</
template
>
</table-list>
<el-dialog
:visible
.
sync=
"dialogVisible"
fullscreen
append-to-body
title=
"关联商品"
>
<table-list
v-bind=
"tableOptions"
ref=
"list"
@
select=
"select"
@
selection-change=
"handleSelectionChange"
class=
"select-goods-table"
>
<
template
v-slot:table-goods=
"{ row }"
>
<goods-item
:data=
"row"
></goods-item>
</
template
>
<
template
v-slot:table-view=
"{ row }"
>
<p>
访客数:
{{
row
.
usesr_view
}}
</p>
<p>
浏览量:
{{
row
.
page_view
}}
</p>
</
template
>
</table-list>
<div
class=
"dialog-footer"
>
<el-button
@
click=
"dialogVisible = false"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"handlePrimary"
>
确 定
</el-button>
</div>
</el-dialog>
</div>
</template>
<
script
>
import
TableList
from
'@/components/base/tableList'
import
{
getGoodsList
}
from
'@/api/goods'
import
GoodsItem
from
'@/components/goods/goodsItem'
export
default
{
props
:
{
multiple
:
{
type
:
Boolean
,
default
:
false
}
},
components
:
{
TableList
,
GoodsItem
},
data
()
{
return
{
dialogVisible
:
false
,
multipleSelection
:
[],
// 选择的数据
selected
:
[]
// 确定选中的
}
},
computed
:
{
shopId
()
{
return
this
.
$store
.
state
.
shopId
},
// 列表配置
tableOptions
()
{
return
{
remote
:
{
httpRequest
:
getGoodsList
,
params
:
{
shop_id
:
this
.
shopId
,
spu_name
:
''
}
},
filters
:
[
{
type
:
'input'
,
prop
:
'spu_name'
,
placeholder
:
'商品名称'
}
],
columns
:
[
{
type
:
'selection'
},
{
label
:
'商品名'
,
prop
:
'spu_name'
,
slots
:
'table-goods'
,
minWidth
:
140
},
{
label
:
'价格(元)'
,
prop
:
'price_zone'
,
align
:
'center'
},
{
label
:
'访问量'
,
prop
:
'page_view'
,
slots
:
'table-view'
,
minWidth
:
120
},
{
label
:
'库存'
,
prop
:
'stock'
,
align
:
'center'
},
{
label
:
'销量'
,
prop
:
'sales_volume'
,
align
:
'center'
},
{
label
:
'创建时间'
,
prop
:
'create_time'
,
width
:
110
},
{
label
:
'商品状态'
,
prop
:
'status'
,
align
:
'center'
,
computed
({
row
})
{
const
map
=
{
1
:
'仓库中'
,
2
:
'销售中'
,
3
:
'已售罄'
,
4
:
'下架'
,
5
:
'已删除'
}
return
map
[
row
.
status
]
}
}
]
}
},
selectedTableOptions
()
{
return
{
columns
:
[{
label
:
'商品名'
,
prop
:
'spu_name'
,
slots
:
'table-goods'
}],
data
:
this
.
selected
}
}
},
methods
:
{
// 选择
select
(
selection
,
row
)
{
if
(
!
this
.
multiple
&&
selection
.
length
>
1
)
{
const
selected
=
!!
selection
.
find
(
item
=>
item
.
spu_id
===
row
.
spu_id
)
this
.
$refs
.
list
.
table
.
clearSelection
()
this
.
$nextTick
(
function
()
{
this
.
$refs
.
list
.
table
.
toggleRowSelection
(
row
,
selected
)
})
}
},
// 选择
handleSelectionChange
(
value
)
{
this
.
multipleSelection
=
value
},
// 确定
handlePrimary
()
{
this
.
selected
=
[...
this
.
multipleSelection
]
const
[
first
]
=
this
.
selected
const
value
=
first
?
first
.
spu_id
:
''
this
.
$emit
(
'input'
,
value
)
this
.
dispatch
(
'ElFormItem'
,
'el.form.change'
,
value
)
this
.
dialogVisible
=
false
},
dispatch
(
componentName
,
eventName
,
params
)
{
var
parent
=
this
.
$parent
||
this
.
$root
var
name
=
parent
.
$options
.
componentName
while
(
parent
&&
(
!
name
||
name
!==
componentName
))
{
parent
=
parent
.
$parent
if
(
parent
)
{
name
=
parent
.
$options
.
componentName
}
}
if
(
parent
)
{
parent
.
$emit
.
apply
(
parent
,
[
eventName
].
concat
(
params
))
}
}
}
}
</
script
>
<
style
lang=
"scss"
scoped
>
.dialog-footer
{
position
:
sticky
;
bottom
:
0
;
text-align
:
center
;
z-index
:
118
;
padding
:
20px
0
;
border-top
:
0
.5px
solid
rgba
(
0
,
0
,
0
,
0
.05
);
background-color
:
rgba
(
255
,
255
,
255
,
0
.95
);
}
::v-deep
.select-goods-table
.el-table
th
:first-child
.cell
{
display
:
none
;
}
</
style
>
src/pages/goods/group/index.vue
浏览文件 @
0c9e13db
...
@@ -70,8 +70,8 @@ export default {
...
@@ -70,8 +70,8 @@ export default {
{
label
:
'商品数'
,
prop
:
'spu_sum'
,
width
:
100
},
{
label
:
'商品数'
,
prop
:
'spu_sum'
,
width
:
100
},
{
label
:
'创建时间'
,
prop
:
'create_time'
,
width
:
200
},
{
label
:
'创建时间'
,
prop
:
'create_time'
,
width
:
200
},
{
label
:
'操作'
,
slots
:
'table-x'
,
align
:
'right'
}
{
label
:
'操作'
,
slots
:
'table-x'
,
align
:
'right'
}
]
,
]
data
:
this
.
groupList
//
data: this.groupList
}
}
}
}
},
},
...
...
src/pages/order/add.vue
浏览文件 @
0c9e13db
...
@@ -8,9 +8,9 @@
...
@@ -8,9 +8,9 @@
</app-card>
</app-card>
<app-card
title=
"商品信息"
>
<app-card
title=
"商品信息"
>
<el-form-item
label=
"关联商品"
prop=
"spu_id"
>
<el-form-item
label=
"关联商品"
prop=
"spu_id"
>
<
el-input
v-model=
"ruleForm.spu_id"
/
>
<
select-goods
v-model=
"ruleForm.spu_id"
></select-goods
>
</el-form-item>
</el-form-item>
<el-form-item
label=
"商品规格"
prop=
"sku_id"
>
<el-form-item
label=
"商品规格"
prop=
"sku_id"
v-if=
"ruleForm.spu_id"
>
<el-radio-group
v-model=
"ruleForm.sku_id"
>
<el-radio-group
v-model=
"ruleForm.sku_id"
>
<el-radio
border
:label=
"item.sku_id"
:key=
"item.sku_id"
v-for=
"item in skuList"
>
<el-radio
border
:label=
"item.sku_id"
:key=
"item.sku_id"
v-for=
"item in skuList"
>
<span
class=
"sku-name"
>
{{
item
.
spec_values
}}
</span><span
class=
"sku-price"
>
¥
{{
item
.
price
}}
</span>
<span
class=
"sku-name"
>
{{
item
.
spec_values
}}
</span><span
class=
"sku-price"
>
¥
{{
item
.
price
}}
</span>
...
@@ -50,14 +50,15 @@
...
@@ -50,14 +50,15 @@
import
AppCard
from
'@/components/base/card'
import
AppCard
from
'@/components/base/card'
import
UserAutocomplete
from
'@/components/base/userAutocomplete'
import
UserAutocomplete
from
'@/components/base/userAutocomplete'
import
OrderAutocomplete
from
'@/components/order/orderAutocomplete'
import
OrderAutocomplete
from
'@/components/order/orderAutocomplete'
import
SelectGoods
from
'@/components/order/selectGoods'
import
{
addOrder
,
getSkuList
}
from
'@/api/order'
import
{
addOrder
,
getSkuList
}
from
'@/api/order'
export
default
{
export
default
{
components
:
{
AppCard
,
UserAutocomplete
,
OrderAutocomplete
},
components
:
{
AppCard
,
UserAutocomplete
,
OrderAutocomplete
,
SelectGoods
},
data
()
{
data
()
{
return
{
return
{
ruleForm
:
{
ruleForm
:
{
customer_id
:
''
,
customer_id
:
''
,
spu_id
:
'
6805043172159258624
'
,
spu_id
:
''
,
sku_id
:
''
,
sku_id
:
''
,
buy_count
:
1
,
buy_count
:
1
,
payment_method
:
'99'
,
payment_method
:
'99'
,
...
@@ -73,7 +74,7 @@ export default {
...
@@ -73,7 +74,7 @@ export default {
}
}
},
},
watch
:
{
watch
:
{
'ruleForm.spu_id'
:
skuId
=>
{
'ruleForm.spu_id'
(
skuId
)
{
this
.
getSkuList
(
skuId
)
this
.
getSkuList
(
skuId
)
}
}
},
},
...
@@ -119,9 +120,6 @@ export default {
...
@@ -119,9 +120,6 @@ export default {
addOrderId
()
{
addOrderId
()
{
this
.
ruleForm
.
paymentOrderIds
.
push
(
''
)
this
.
ruleForm
.
paymentOrderIds
.
push
(
''
)
}
}
},
beforeMount
()
{
this
.
getSkuList
(
this
.
ruleForm
.
spu_id
)
}
}
}
}
</
script
>
</
script
>
...
...
src/pages/order/detail.vue
浏览文件 @
0c9e13db
...
@@ -51,7 +51,7 @@
...
@@ -51,7 +51,7 @@
<h3
class=
"order-fields-title"
>
付款信息
</h3>
<h3
class=
"order-fields-title"
>
付款信息
</h3>
<div
class=
"order-field-item"
>
<div
class=
"order-field-item"
>
<div
class=
"order-field-item__label"
>
买家:
</div>
<div
class=
"order-field-item__label"
>
买家:
</div>
<div
class=
"order-field-item__content"
>
{{ data.shipping_user }}
</div>
<div
class=
"order-field-item__content"
>
{{ data.shipping_user
|| data.customer_id
}}
</div>
</div>
</div>
<div
class=
"order-field-item"
>
<div
class=
"order-field-item"
>
<div
class=
"order-field-item__label"
>
买家留言:
</div>
<div
class=
"order-field-item__label"
>
买家留言:
</div>
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论