Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
W
wangxiaolu-sfa-ui
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
sfa
wangxiaolu-sfa-ui
Commits
097c47a6
提交
097c47a6
authored
9月 28, 2025
作者:
lidongxu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
refactor(display_schedule): 新增:链路中心_档期陈列填报模式端架数量填写
上级
374dda14
隐藏空白字符变更
内嵌
并排
正在显示
4 个修改的文件
包含
98 行增加
和
49 行删除
+98
-49
display_schedule.js
src/api/promotion/display_schedule.js
+39
-0
index.vue
src/views/promotion/components/CommonPlan/index.vue
+2
-2
schedule_dis.vue
src/views/promotion/display_schedule/tabs/schedule_dis.vue
+56
-46
snack.vue
src/views/promotion/display_schedule/tabs/snack.vue
+1
-1
没有找到文件。
src/api/promotion/display_schedule.js
浏览文件 @
097c47a6
...
...
@@ -59,6 +59,25 @@ export function getDisplayScheduleDetail(params) {
})
}
// 填报-档期陈列
export
function
submitDisplayScheduleDetail
(
data
)
{
Object
.
keys
(
data
).
forEach
(
key
=>
{
if
(
data
[
key
]
===
undefined
||
data
[
key
]
===
null
)
{
data
[
key
]
=
''
}
})
return
request
({
url
:
`/operation/sales/ap_display/core_pro/
${
data
.
id
}
`
,
method
:
'PUT'
,
data
:
{
display
:
{
...
data
,
id
:
undefined
// 不携带 id
}
}
});
}
// 获取-零食计划列表
export
function
getSnackPlanList
(
params
)
{
return
request
({
...
...
@@ -66,3 +85,22 @@ export function getSnackPlanList(params) {
params
})
}
// 填报-零食计划
export
function
submitSnackPlan
(
data
)
{
Object
.
keys
(
data
).
forEach
(
key
=>
{
if
(
data
[
key
]
===
undefined
||
data
[
key
]
===
null
)
{
data
[
key
]
=
''
}
})
return
request
({
url
:
`/operation/sales/ap_display/core_snack/
${
data
.
id
}
`
,
method
:
'PUT'
,
data
:
{
display
:
{
...
data
,
id
:
undefined
// 不携带 id
}
}
});
}
\ No newline at end of file
src/views/promotion/components/CommonPlan/index.vue
浏览文件 @
097c47a6
...
...
@@ -74,8 +74,8 @@
<
script
setup
>
import
{
h
}
from
'vue'
/*************** 操作类型 ***************/
const
operation
=
ref
(
'平铺模式'
);
//
const operation = ref('填报模式');
//
const operation = ref('平铺模式');
const
operation
=
ref
(
'填报模式'
);
const
tableRef
=
ref
(
null
)
const
props
=
defineProps
({
...
...
src/views/promotion/display_schedule/tabs/schedule_dis.vue
浏览文件 @
097c47a6
...
...
@@ -14,7 +14,7 @@
<
script
setup
lang=
"jsx"
>
import
CommonPlan
from
'@/views/promotion/components/CommonPlan'
import
{
getDisplayScheduleDetail
,
submitDisplay
Plan
}
from
'@/api'
import
{
getDisplayScheduleDetail
,
submitDisplay
ScheduleDetail
}
from
'@/api'
import
{
parseTime
}
from
'@/utils'
import
{
onMounted
}
from
'vue'
;
...
...
@@ -347,17 +347,64 @@
"label"
:
"实际端架 - 数量"
,
"prop"
:
"actualEndCapQty"
,
"visible"
:
true
,
"type"
:
"string"
,
"fill"
:
false
,
"width"
:
140
"type"
:
"select"
,
referenceKey
:
"plannedEndCapQty"
,
"options"
:
[
{
"label"
:
"0"
,
"value"
:
0
},
{
"label"
:
"0.5"
,
"value"
:
0.5
},
{
"label"
:
"1"
,
"value"
:
1
},
{
"label"
:
"2"
,
"value"
:
2
}
],
render
:
(
_
,
row
,
col
)
=>
{
return
(
<
div
>
<
span
>
{
row
[
col
.
referenceKey
]
||
'-'
}
<
/span
>
<
el
-
select
modelValue
=
{
row
[
col
.
prop
]}
onUpdate
:
modelValue
=
{(
value
)
=>
{
row
[
col
.
prop
]
=
value
;
submitChange
(
row
,
col
);
}}
disabled
=
{
!
row
[
col
.
referenceKey
]}
placeholder
=
""
>
{
col
.
options
.
map
(
item
=>
(
<
el
-
option
key
=
{
item
.
value
}
label
=
{
item
.
label
}
value
=
{
item
.
value
}
/
>
))}
<
/el-select
>
<
/div
>
)
},
"fill"
:
true
,
"width"
:
140
,
requestKey
:
[
"actualEndCapExecuted"
]
},
{
"label"
:
"实际端架 - 是否执行"
,
"prop"
:
"actualEndCapExecuted"
,
"visible"
:
true
,
"type"
:
"string"
,
"fill"
:
false
,
"width"
:
160
"type"
:
"formula"
,
"fill"
:
true
,
"width"
:
160
,
func
:
(
row
)
=>
{
row
.
actualEndCapExecuted
=
row
.
actualEndCapQty
>=
row
.
plannedEndCapQty
?
'是'
:
'否'
return
row
.
actualEndCapExecuted
},
formulaStr
:
"执行端架数量 >= 计划端架数量"
},
{
"label"
:
"计划地堆 - 平米数(㎡)"
,
...
...
@@ -535,48 +582,11 @@
}
}
await
submitDisplay
Plan
({
id
:
row
.
sadId
,
await
submitDisplay
ScheduleDetail
({
id
:
row
.
sa
p
dId
,
[
col
.
prop
]:
row
[
col
.
prop
],
// 当前修改列的值
...
col
.
requestKey
.
reduce
((
acc
,
key
)
=>
({
...
acc
,
[
key
]:
row
[
key
]
}),
{}),
// 额外携带影响的列字段值
})
// // 这些提交变化的,同时会影响公式计算的,需要把公式计算的字段列结果,一起发给后台
// // 注意:实际主货架形式改变并为空时,要置空实际主货架数量
// if (col.prop === 'actualMainShelfType' && !row.actualMainShelfType) {
// row.actualMainShelfQty = ''
// // 并提交保存一次
// await submitDisplayPlan({
// id: row.sadId,
// actualMainShelfQty: row.actualMainShelfQty,
// })
// }
// // 主货架
// if (['actualMainShelfType', 'actualMainShelfQty'].includes(col.prop)) {
// await submitDisplayPlan({
// id: row.sadId,
// actualMainShelfExecuted: row.actualMainShelfExecuted,
// })
// }
// // 端架
// if (['actualEndCapQty'].includes(col.prop)) {
// await submitDisplayPlan({
// id: row.sadId,
// actualEndCapExecuted: row.actualEndCapExecuted,
// })
// }
// // 地堆
// if (['actualFloorStackArea', 'actualFloorStackQty'].includes(col.prop)) {
// await submitDisplayPlan({
// id: row.sadId,
// actualFloorStackExecuted: row.actualFloorStackExecuted,
// })
// }
// // 常规陈列是否执行
// await submitDisplayPlan({
// id: row.sadId,
// regularDisplayExecuted: row.regularDisplayExecuted,
// })
}
// 表格数据
...
...
src/views/promotion/display_schedule/tabs/snack.vue
浏览文件 @
097c47a6
...
...
@@ -353,7 +353,7 @@
}
await
submitDisplayPlan
({
id
:
row
.
sadId
,
id
:
row
.
sa
s
dId
,
[
col
.
prop
]:
row
[
col
.
prop
],
// 当前修改列的值
...
col
.
requestKey
.
reduce
((
acc
,
key
)
=>
({
...
acc
,
[
key
]:
row
[
key
]
}),
{}),
// 额外携带影响的列字段值
})
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论