Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
M
mes-ui
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
mes
mes-ui
Commits
40aa3ca7
Commit
40aa3ca7
authored
Feb 19, 2024
by
hiyon
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
销售订单修改
parent
64aaf36f
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
115 additions
and
382 deletions
+115
-382
SapForm.vue
src/views/mes/md/sapField/components/SapForm.vue
+4
-2
SapFormContext.vue
src/views/mes/md/sapField/components/SapFormContext.vue
+9
-6
OrderSync.vue
src/views/mes/order/sales/OrderSync.vue
+11
-292
index.vue
src/views/mes/order/salesdetail/index.vue
+91
-82
No files found.
src/views/mes/md/sapField/components/SapForm.vue
View file @
40aa3ca7
<
template
>
<el-form
ref=
"form"
class=
"sap-form"
:label-width=
"labelWidth"
size=
"mini"
>
<SapFormContext
v-for=
"item in sapFieldList"
v-model=
"sapForm[item.sapField]"
:item=
"item"
:key=
"item.id"
:label-width=
"labelWidth"
/>
<template
v-for=
"item in sapFieldList"
>
<SapFormContext
v-show=
"item.show"
v-model=
"sapForm[item.sapField]"
:item=
"item"
:key=
"item.id"
:label-width=
"labelWidth"
/>
</
template
>
<div
class=
"form-footer"
>
<el-button
type=
"primary"
@
click=
"onConfirm"
>
确认
</el-button>
</div>
...
...
@@ -65,7 +67,7 @@ export default {
sapForm
[
item
.
sapField
][
j
]
=
this
.
initSapForm
(
item
.
children
,
subItemData
)
}
}
else
{
sapForm
[
item
.
sapField
]
=
itemData
sapForm
[
item
.
sapField
]
=
itemData
||
item
.
defaultValue
}
}
return
sapForm
...
...
src/views/mes/md/sapField/components/SapFormContext.vue
View file @
40aa3ca7
...
...
@@ -11,7 +11,7 @@
<!-- 对象 -->
<template
v-if=
"item.dataType === 9"
>
<template
v-for=
"child in item.children"
>
<sap-form-item
:item=
"child"
:label-width=
"labelWidth"
>
<sap-form-item
v-show=
"child.show"
:item=
"child"
:label-width=
"labelWidth"
>
<el-input-all
v-model=
"value[child.sapField]"
:item=
"child"
/>
</sap-form-item>
</
template
>
...
...
@@ -22,13 +22,15 @@
<div
style=
"width: 100%; overflow-x: auto"
>
<div>
<div
class=
"item-head clearfix"
style=
"width: max-content;"
>
<div
v-for=
"child in item.children"
:key=
"child.id + 'head'"
class=
"item-label"
>
{{
child
.
name
}}
</div>
<template
v-for=
"child in item.children"
>
<div
v-show=
"child.show"
:key=
"child.id + 'head'"
class=
"item-label"
>
{{
child
.
name
}}
</div>
</
template
>
</div>
<
template
v-for=
"(sub, i) in value"
>
<!-- ITEM -->
<div
class=
"item-content"
style=
"width: max-content;"
:key=
"'sub' + '' + i"
>
<template
v-for=
"(child, j) in item.children"
>
<div
v-if=
"[1,2,3,4,5,6,7,8].some(dataType => dataType == child.dataType)"
class=
"item-value"
:key=
"child.id + j"
>
<sap-form-item
:item=
"child"
:label-width=
"labelWidth
"
>
<div
v-
show=
"child.show"
v-
if=
"[1,2,3,4,5,6,7,8].some(dataType => dataType == child.dataType)"
class=
"item-value"
:key=
"child.id + j"
>
<sap-form-item
:item=
"child"
label-width=
"0px
"
>
<el-input-all
v-model=
"sub[child.sapField]"
:item=
"child"
/>
</sap-form-item>
</div>
...
...
@@ -43,7 +45,7 @@
<!-- SIZE -->
<div
v-for=
"leaf in sub[child.sapField]"
class=
"item-child-content clearfix"
style=
"width: max-content;"
>
<div
v-for=
"(son, j) in child.children"
class=
"item-value"
:key=
"son.id + '' + j"
>
<sap-form-item
:item=
"son"
:label-width=
"labelWidth
"
>
<sap-form-item
:item=
"son"
label-width=
"0px
"
>
<el-input-all
v-model=
"leaf[son.sapField]"
:item=
"son"
/>
</sap-form-item>
</div>
...
...
@@ -121,8 +123,9 @@ export default {
}
.item-label
,
.item-value
,
.item-sub-label
{
width
:
150px
;
height
:
50px
;
line-height
:
28px
;
float
:
left
;
line-height
:
50px
;
overflow
:
hidden
;
text-wrap
:
nowrap
;
margin-left
:
10px
;
...
...
src/views/mes/order/sales/OrderSync.vue
View file @
40aa3ca7
...
...
@@ -8,305 +8,19 @@
</div>
</div>
<div
class=
"page-body"
>
<el-form
:model=
"sapInfo"
ref=
"sapInfo"
label-width=
"120px"
size=
"mini"
>
<el-row
:gutter=
"10"
>
<el-col
:span=
"6"
>
<el-form-item
label=
"销售凭证"
prop=
"VBELN"
>
<el-input
v-model=
"sapInfo.VBELN"
placeholder=
""
clearable
/>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"销售凭证类型"
prop=
"AUART"
required
>
<el-select
v-model=
"sapInfo.AUART"
clearable
>
<el-option
label=
"ZDO-国内标准订单"
value=
"ZDO"
/>
<el-option
label=
"ZEO-出口标准订单"
value=
"ZEO"
/>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"销售组织"
prop=
"VKORG"
required
>
<el-select
v-model=
"sapInfo.VKORG"
clearable
>
<el-option
label=
"1000-广州宝绅科技销售组织"
value=
"1000"
/>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"分销渠道"
prop=
"VTWEG"
required
>
<el-select
v-model=
"sapInfo.VTWEG"
clearable
>
<el-option
label=
"10-内销"
value=
"10"
/>
<el-option
label=
"20-外销"
value=
"20"
/>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"产品组"
required
prop=
"SPART"
>
<el-select
v-model=
"sapInfo.SPART"
clearable
>
<el-option
label=
"00-通用产品组"
value=
"00"
/>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"订单原因"
prop=
"AUGRU"
>
<el-input
v-model=
"sapInfo.AUGRU"
placeholder=
""
clearable
/>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"销售办事处"
prop=
"VKBUR"
>
<el-select
v-model=
"sapInfo.VKBUR"
clearable
>
<el-option
label=
"A10-业务一课"
value=
"A10"
/>
<el-option
label=
"A20-业务二课"
value=
"A20"
/>
<el-option
label=
"A90-外贸课"
value=
"A90"
/>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"销售组"
prop=
"VKGRP"
>
<el-select
v-model=
"sapInfo.VKGRP"
clearable
>
<template
v-if=
"sapInfo.VKBUR == 'A10'"
>
<el-option
label=
"A11-业务一课A组"
value=
"A11"
/>
<el-option
label=
"A12-业务一课B组"
value=
"A12"
/>
</
template
>
<
template
v-if=
"sapInfo.VKBUR == 'A20'"
>
<el-option
label=
"A21-业务二课A组"
value=
"A21"
/>
<el-option
label=
"A22-业务二课B组"
value=
"A22"
/>
</
template
>
<
template
v-if=
"sapInfo.VKBUR == 'A90'"
>
<el-option
label=
"A91-外贸A组"
value=
"A91"
/>
<el-option
label=
"A92-外贸B组"
value=
"A92"
/>
</
template
>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"客户编号"
prop=
"KUNNR"
required
>
<el-input
v-model=
"sapInfo.KUNNR"
placeholder=
""
clearable
/>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"客户参考"
prop=
"BSTNK"
required
>
<el-input
v-model=
"sapInfo.BSTNK"
placeholder=
""
clearable
/>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"要求的交货日期"
prop=
"VDATU"
>
<el-input
v-model=
"sapInfo.VDATU"
clearable
/>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"客户参考日期"
prop=
"BSTDK"
>
<el-input
v-model=
"sapInfo.BSTDK"
clearable
/>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"国际贸易条款"
prop=
"INCO1"
>
<el-select
v-model=
"sapInfo.INCO1"
placeholder=
""
clearable
>
<el-option
label=
"FOB-离岸价"
value=
"FOB"
/>
<el-option
label=
"CIF-成本, 保险 & 运费"
value=
"CIF"
/>
<el-option
label=
"EXW-工厂交货"
value=
"EXW"
/>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"国际贸易位置"
prop=
"INCO2"
:required=
"!!sapInfo.INCO2"
>
<el-input
v-model=
"sapInfo.INCO2"
placeholder=
""
clearable
/>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"付款条件代码"
prop=
"ZTERM"
required
>
<el-select
v-model=
"sapInfo.ZTERM"
placeholder=
""
clearable
>
<el-option
value=
"Z009"
label=
"月结15天"
/>
<el-option
value=
"Z010"
label=
"月结30天"
/>
<el-option
value=
"Z011"
label=
"月结45天"
/>
<el-option
value=
"Z012"
label=
"月结60天"
/>
<el-option
value=
"Z013"
label=
"月结90天"
/>
<el-option
value=
"Z014"
label=
"月结20天"
/>
<el-option
value=
"Z015"
label=
"月结75天"
/>
<el-option
value=
"Z016"
label=
"月结50天"
/>
<el-option
value=
"Z018"
label=
"月结35天"
/>
<el-option
value=
"Z019"
label=
"月结55天"
/>
<el-option
value=
"Z020"
label=
"月结25天"
/>
<el-option
value=
"Z021"
label=
"月结68天"
/>
<el-option
value=
"Z022"
label=
"月结105天"
/>
<el-option
value=
"Z023"
label=
"月结120天"
/>
<el-option
value=
"Z024"
label=
"月结180天"
/>
<el-option
value=
"Z025"
label=
"次月20号前付款"
/>
<el-option
value=
"Z026"
label=
"当月底结账"
/>
<el-option
value=
"Z027"
label=
"款到发货"
/>
<el-option
value=
"Z028"
label=
"隔月付现"
/>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"记录创建日期"
prop=
"ERDAT"
>
<el-input
v-model=
"sapInfo.ERDAT"
placeholder=
""
clearable
/>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"备注"
prop=
"LTEXT"
>
<el-input
v-model=
"sapInfo.LTEXT"
placeholder=
""
clearable
/>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"跟单员"
prop=
"ZKUNR"
>
<el-input
v-model=
"sapInfo.ZKUNR"
placeholder=
""
clearable
/>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"生产发货方式"
prop=
"ZF14"
>
<el-select
v-model=
"sapInfo.ZF14"
placeholder=
""
clearable
>
<el-option
value=
"01"
label=
"01款到发货"
/>
<el-option
value=
"02"
label=
"02款到生产"
/>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"条码"
prop=
"ZBARDE"
>
<el-input
v-model=
"sapInfo.ZBARDE"
placeholder=
""
clearable
/>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"申购号"
prop=
"ZPONUM"
>
<el-input
v-model=
"sapInfo.ZPONUM"
placeholder=
""
clearable
/>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"款式"
prop=
"ZSTYLE"
>
<el-input
v-model=
"sapInfo.ZSTYLE"
placeholder=
""
clearable
/>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"OSP订单号"
prop=
"ZOSP"
>
<el-input
v-model=
"sapInfo.ZOSP"
placeholder=
""
clearable
/>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"交货冻结"
prop=
"LIFSK"
>
<el-input
v-model=
"sapInfo.LIFSK"
placeholder=
""
clearable
/>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"开票冻结"
prop=
"FAKSK"
>
<el-input
v-model=
"sapInfo.FAKSK"
placeholder=
""
clearable
/>
</el-form-item>
</el-col>
<el-col
:span=
"6"
v-show=
"false"
>
<el-form-item
label=
"更新标识"
prop=
"UPDKZ"
required
>
<el-select
v-model=
"sapInfo.UPDKZ"
placeholder=
""
clearable
>
<el-option
value=
"I"
label=
"新增"
/>
<el-option
value=
"U"
label=
"修改"
/>
</el-select>
</el-form-item>
</el-col>
</el-row>
</el-form>
<el-table
:data=
"sapInfo.ITEM"
max-height=
"800px"
size=
"mini"
>
<el-table-column
min-width=
"150"
label=
"销售凭证项目"
prop=
"POSNR"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.POSNR
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"* 物料编号"
prop=
"MATNR"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.MATNR
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"* 工厂"
prop=
"WERKS"
>
<
template
slot-scope=
"{row}"
>
<el-select
v-model=
"row.WERKS"
placeholder=
""
>
<el-option
label=
"1000-广州市宝绅科技印刷工厂"
value=
"1000"
/>
<el-option
label=
"1010-广州市宝绅科技RFID工厂"
value=
"1010"
/>
</el-select>
</
template
>
</el-table-column>
<el-table-column
min-width=
"150"
label=
"总数量"
title=
"以销售单位表示的累计订购数量"
prop=
"KWMENG"
><
template
slot-scope=
"{row}"
><el-input
type=
"number"
v-model=
row.KWMENG
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"客户物料编号"
prop=
"KDMAT"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.KDMAT
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"客户物料名称"
prop=
"ARKTX"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.ARKTX
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"折扣率(Z001的金额)"
prop=
"NETPR"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.NETPR
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"* 装运点/收货点"
prop=
"VSTEL"
><
template
slot-scope=
"{row}"
>
<el-select
v-model=
row.VSTEL
placeholder=
""
>
<el-option
label=
"1000-广州宝绅科技工厂装运点"
value=
"1000"
/>
</el-select>
</
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"存储地点"
prop=
"LGORT"
><
template
slot-scope=
"{row}"
>
<el-select
v-model=
row.LGORT
placeholder=
""
clearable
>
<el-option
label=
"8001-成品一库"
value=
"8001"
/>
</el-select>
</
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"批次编号"
prop=
"CHARG"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.CHARG
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"* 计划行日期"
prop=
"EDATU"
><
template
slot-scope=
"{row}"
>
<el-input
v-model=
row.EDATU
placeholder=
""
/>
</
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"拒绝原因"
prop=
"ABGRU"
><
template
slot-scope=
"{row}"
>
<el-select
v-model=
row.ABGRU
placeholder=
""
>
<el-option
value=
"Z1"
label=
"Z1-订单已生产完成,客户取消订单,转为库存,申请完结"
/>
<el-option
value=
"Z2"
label=
"Z2-订单已生产完成,客户取消订单,订单挪用完毕,申请完结"
/>
<el-option
value=
"Z3"
label=
"Z3-客户取消或更新订单,生产开立领料单实际未生产,申请完结"
/>
<el-option
value=
"Z4"
label=
"Z4-异常开错订单,申请完结"
/>
<el-option
value=
"Z5"
label=
"Z5-现场找不到货,重新生产出货,申请完结"
/>
</el-select>
</
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"工厂单价(PR01的金额)"
prop=
"NETWR"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.NETWR
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"订单行折前总金额(Z002的定价值)"
prop=
"KWERT"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.KWERT
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"定价单位"
prop=
"KPEIN"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.KPEIN
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"货币"
prop=
"KOEIN"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.KOEIN
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"尺码组"
prop=
"ZSIZEGROUP"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.ZSIZEGROUP
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"尺码单位(客户)"
prop=
"ZSIZEUNITC"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.ZSIZEUNITC
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"指令号"
prop=
"ZINSTNUM"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.ZINSTNUM
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"型体号"
prop=
"ZMOLD"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.ZMOLD
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"配色号"
prop=
"ZMAPCOLOR"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.ZMAPCOLOR
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"颜色"
prop=
"ZCLOLOR"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.ZCLOLOR
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"销线"
prop=
"ZSALEAREA"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.ZSALEAREA
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"段别"
prop=
"ZDUANBIE"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.ZDUANBIE
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"季度"
prop=
"ZSEASON"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.ZSEASON
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"整/半码"
prop=
"ZTOTALSIZE"
><
template
slot-scope=
"{row}"
>
<el-select
v-model=
row.ZTOTALSIZE
placeholder=
""
>
<el-option
value=
"01"
label=
"01-整码"
/>
<el-option
value=
"02"
label=
"02-整半码"
/>
</el-select>
</
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"特殊SIZE"
prop=
"ZSPECSIZE"
><
template
slot-scope=
"{row}"
>
<el-select
v-model=
row.ZSPECSIZE
placeholder=
""
>
<el-option
value=
"是"
label=
"是"
/>
<el-option
value=
"否"
label=
"否"
/>
</el-select>
</
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"PO#"
prop=
"ZCPONUM"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.ZCPONUM
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"WIP#"
prop=
"ZWIPNUM"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.ZWIPNUM
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"装箱数"
prop=
"ZBOXQUAN"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.ZBOXQUAN
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"产地"
prop=
"ZORIGIN"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.ZORIGIN
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"周期"
prop=
"ZCYCLE"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.ZCYCLE
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"SK编号"
prop=
"ZSKCODE"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.ZSKCODE
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"专利号"
prop=
"ZPATENTCODE"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.ZPATENTCODE
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"材质描述"
prop=
"ZMATERIALDES"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.ZMATERIALDES
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"签收人"
prop=
"ZSIGNPERSON"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.ZSIGNPERSON
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"SHIP TO ID"
prop=
"ZSHIPID"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.ZSHIPID
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"产品规格"
prop=
"ZPRODSPEC"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.ZPRODSPEC
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"产品用途"
prop=
"ZPRODUSAGE"
><
template
slot-scope=
"{row}"
>
<el-select
v-model=
row.ZPRODUSAGE
placeholder=
""
>
<el-option
value=
"01"
label=
"01-网布"
/>
<el-option
value=
"02"
label=
"02-普通"
/>
</el-select>
</
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"厚度(丝)"
prop=
"ZTHICK"
><
template
slot-scope=
"{row}"
>
<el-input
v-model
.
number=
row.ZTHICK
max=
"10"
min=
"1"
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"包装方式"
prop=
"ZPACKINGMOT"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.ZPACKINGMOT
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"印刷方向"
prop=
"ZPRINTDIRECT"
><
template
slot-scope=
"{row}"
>
<el-select
v-model=
row.ZPRINTDIRECT
placeholder=
""
>
<el-option
label=
"01-字体倒立"
value=
"01"
/>
</el-select>
</
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"工厂代号"
prop=
"ZPLANTCODE"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.ZPLANTCODE
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"* 指令数(客户)汇总"
prop=
"ZINCSUM"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.ZINCSUM
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"* LOSS数(客户)汇总"
prop=
"ZLOSSUM"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.ZLOSSUM
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"* SIZE 序号"
prop=
"SIZE.0.ZSIZE_NUM"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.SIZE[0].ZSIZE_NUM
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"* 尺码"
prop=
"SIZE.0.ZSIZE"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.SIZE[0].ZSIZE
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"* 指令数(客户)"
prop=
"SIZE.0.ZINSNUM"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.SIZE[0].ZINSNUM
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"LOSS数(客户)"
prop=
"SIZE.0.ZLOSSC"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.SIZE[0].ZLOSSC
placeholder=
""
/></
template
></el-table-column>
<el-table-column
min-width=
"150"
label=
"尺码备注"
prop=
"SIZE.0.ZSIZECOM"
><
template
slot-scope=
"{row}"
><el-input
v-model=
row.SIZE[0].ZSIZECOM
placeholder=
""
/></
template
>
</el-table-column>
</el-table>
<SapForm
ref=
"sapForm"
/>
</div>
</div>
</
template
>
<
script
>
import
{
getSapInfo
,
syncSapData
}
from
'@/api/mes/od/salesOrder'
import
{
get
Order
,
get
SapInfo
,
syncSapData
}
from
'@/api/mes/od/salesOrder'
import
SapForm
from
'@/views/mes/md/sapField/components/SapForm'
export
default
{
components
:
{
SapForm
},
data
()
{
return
{
loading
:
false
,
...
...
@@ -357,6 +71,11 @@ export default {
this
.
sapInfo
.
id
=
id
console
.
log
(
this
.
sapInfo
)
})
getOrder
(
id
).
then
(
res
=>
{
this
.
$nextTick
(()
=>
this
.
$refs
.
sapForm
.
init
(
3
,
id
,
res
.
data
))
this
.
sapInfo
=
res
.
data
})
}
},
},
...
...
src/views/mes/order/salesdetail/index.vue
View file @
40aa3ca7
...
...
@@ -165,7 +165,7 @@
<el-col
:span=
"6"
>
<el-form-item
label=
"订单状态"
prop=
"state"
>
<el-select
v-model=
"form.state"
class=
"form-item"
clearable
placeholder=
"请选择订单状态"
>
<el-option
v-for=
"item in dict.type
.sales_order_state
"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value"
/>
<el-option
v-for=
"item in dict.type
['sales_order_state']
"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value"
/>
</el-select>
</el-form-item>
</el-col>
...
...
@@ -180,7 +180,7 @@
<div
class=
"detail-body"
>
<el-tabs
v-model=
"activeName"
type=
"border-card"
@
tab-click=
"onTabClick"
>
<el-tabs
v-model=
"activeName"
type=
"border-card"
>
<el-tab-pane
label=
"详情"
name=
"detail"
>
<el-row
:gutter=
"10"
class=
"mb8"
>
<el-col
:span=
"1.5"
>
...
...
@@ -196,8 +196,7 @@
</el-col>
</el-row>
<div
class=
"page-item"
>
<el-table
:data=
"form.detailList"
@
selection-change=
"handleSelectionChange"
max-height=
"600"
>
<el-table-column
type=
"selection"
width=
"55"
/>
<el-table
:data=
"form.detailList"
max-height=
"600"
>
<el-table-column
label=
"产品编码"
prop=
"itemNo"
show-overflow-tooltip
/>
<el-table-column
label=
"产品名称"
prop=
"itemName"
show-overflow-tooltip
/>
<el-table-column
label=
"总数量"
prop=
"totalNum"
show-overflow-tooltip
/>
...
...
@@ -244,25 +243,13 @@
<el-table-column
label=
"备注"
prop=
"remark"
show-overflow-tooltip
/>
-->
<el-table-column
label=
"状态"
prop=
"state"
>
<template
slot-scope=
"
{row}">
{{
dict
.
type
.
sales_order_state
.
find
(
item
=>
item
.
value
==
row
.
state
).
label
}}
{{
dict
.
type
[
'sales_order_state'
]
.
find
(
item
=>
item
.
value
==
row
.
state
).
label
}}
</
template
>
</el-table-column>
<el-table-column
fixed=
"right"
label=
"操作"
width=
"
100
"
>
<el-table-column
fixed=
"right"
label=
"操作"
width=
"
85
"
>
<
template
slot-scope=
"{row, $index}"
>
<el-button
v-hasPermi=
"['od:salesOrder:edit']"
size=
"mini"
type=
"text"
@
click=
"onShowEditDetail(row, $index)"
>
查看
</el-button>
<el-button
v-hasPermi=
"['od:salesOrder:edit']"
size=
"mini"
type=
"text"
@
click=
"onShowSpecDetail(row, $index)"
>
特性
</el-button>
<el-button
v-hasPermi=
"['od:salesOrder:edit']"
size=
"mini"
type=
"text"
@
click=
"onShowEditDetail(row, $index)"
>
编辑
</el-button>
<el-button
v-hasPermi=
"['od:salesOrder:edit']"
size=
"mini"
type=
"text"
@
click=
"onShowItemDetail(row, $index)"
>
尺码
</el-button>
</
template
>
</el-table-column>
</el-table>
...
...
@@ -503,7 +490,7 @@
<el-col
:span=
"8"
>
<el-form-item
prop=
""
label=
"状态"
>
<el-select
v-model=
"itemForm.state"
class=
"form-item"
clearable
placeholder=
"请选择状态"
>
<el-option
v-for=
"item in dict.type
.sales_order_state
"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value"
/>
<el-option
v-for=
"item in dict.type
['sales_order_state']
"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value"
/>
</el-select>
</el-form-item>
</el-col>
...
...
@@ -515,19 +502,53 @@
</div>
</el-dialog>
<el-dialog
:visible
.
sync=
"showItemDetail"
title=
"产品尺码详情"
width=
"650px"
>
<el-table
:data=
"itemDetailForm.itemList"
max-height=
"600"
>
<el-table-column
label=
"尺码"
prop=
"size"
>
<
template
slot-scope=
"{row}"
>
<el-input
v-model=
"row.size"
clearable
/>
</
template
>
</el-table-column>
<el-table-column
label=
"数量"
prop=
"num"
>
<
template
slot-scope=
"{row}"
>
<el-input
v-model=
"row.num"
clearable
/>
</
template
>
</el-table-column>
<el-table-column
label=
"loss数"
prop=
"lossNum"
>
<
template
slot-scope=
"{row}"
>
<el-input
v-model=
"row.lossNum"
clearable
/>
</
template
>
</el-table-column>
<el-table-column
label=
"备注"
prop=
"remark"
>
<
template
slot-scope=
"{row}"
>
<el-input
v-model=
"row.remark"
clearable
/>
</
template
>
</el-table-column>
<el-table-column
label=
"操作"
prop=
"specJson"
width=
"60"
>
<
template
slot-scope=
"{row, $index}"
>
<el-button
v-hasPermi=
"['od:salesOrder:edit']"
size=
"mini"
type=
"text"
@
click=
"onShowSpecDetail(row, $index)"
>
特性
</el-button>
</
template
>
</el-table-column>
</el-table>
<div
slot=
"footer"
>
<el-button
@
click=
"showItemDetail = false"
>
取消
</el-button>
<el-button
type=
"primary"
@
click=
"onEditItem"
>
确认
</el-button>
</div>
</el-dialog>
<el-dialog
:visible
.
sync=
"showSpecDetail"
title=
"产品特性详情"
width=
"650px"
>
<el-form
:model=
"specForm"
label-width=
"100px"
>
<el-row>
<el-col
v-for=
"item in specForm.specList"
:key=
"item
.id
"
:span=
"12"
>
<el-form-item
:label=
"item
.specKey
"
>
<el-input
v-model=
"item
.specVal
"
/>
<el-col
v-for=
"item in specForm.specList"
:key=
"item
['specKey']
"
:span=
"12"
>
<el-form-item
:label=
"item
['specKey']
"
>
<el-input
v-model=
"item
['specVal']
"
/>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div
slot=
"footer"
>
<el-button
@
click=
"showSpecDetail = false"
>
取消
</el-button>
<el-button
@
click=
"onEditSpec"
>
确认
</el-button>
<el-button
type=
"primary"
@
click=
"onEditSpec"
>
确认
</el-button>
</div>
</el-dialog>
...
...
@@ -536,7 +557,7 @@
</template>
<
script
>
import
{
addOrder
,
getOrder
,
getSapInfo
,
syncSapData
,
updateOrder
}
from
'@/api/mes/od/salesOrder'
import
{
addOrder
,
getOrder
,
updateOrder
}
from
'@/api/mes/od/salesOrder'
import
{
getSalesOrder
}
from
'@/api/mes/od/purchaseOrder'
import
{
listUser
}
from
'@/api/system/user'
import
{
listClient
}
from
'@/api/mes/md/client'
...
...
@@ -551,14 +572,13 @@ export default {
computed
:
{
totalAmount
()
{
return
this
.
form
.
detailList
.
reduce
((
amount
=
0
,
item
)
=>
{
amount
+=
+
item
.
price
amount
+=
(
item
.
price
*
item
.
totalNum
)
return
amount
},
0
)
||
0
}
}
,
},
data
()
{
return
{
sapInfo
:
{},
form
:
{
id
:
null
,
purchaseNo
:
null
,
...
...
@@ -640,6 +660,9 @@ export default {
state
:
null
,
specList
:
[]
},
itemDetailForm
:
{
itemList
:
[]
},
specForm
:
{
specList
:
[]
},
...
...
@@ -658,14 +681,13 @@ export default {
amount
:
{
required
:
true
,
message
:
'请输入产品金额'
,
trigger
:
[
'blur'
]
},
state
:
{
required
:
true
,
message
:
'请选择产品状态'
,
trigger
:
[
'change'
]
}
},
ids
:
{},
clientList
:
[],
userList
:
[],
showSpecDetail
:
false
,
showItemDetail
:
false
,
showEditDetail
:
false
,
activeName
:
'detail'
,
loading
:
false
,
multiple
:
false
,
saleChannel
:
[],
saleGroup
:
[],
...
...
@@ -702,19 +724,42 @@ export default {
}
})
},
onItemSelect
(
row
)
{
if
(
row
!=
undefined
)
{
this
.
itemForm
.
itemId
=
row
.
itemId
;
this
.
itemForm
.
itemNo
=
row
.
itemCode
;
this
.
itemForm
.
itemName
=
row
.
itemName
;
checkedItem
()
{
let
{
detailList
}
=
this
.
form
for
(
let
i
=
0
;
i
<
detailList
.
length
;
i
++
)
{
let
detail
=
detailList
[
i
]
if
(
!
detail
.
itemId
)
return
'第'
+
i
+
'项缺少itemId'
// todo 检测未做
}
return
null
},
onEditSpec
()
{
this
.
showSpecDetail
=
false
this
.
form
.
detailList
.
splice
(
this
.
specForm
.
index
,
1
,
this
.
specForm
)
console
.
log
(
this
.
specForm
)
this
.
itemDetailForm
.
itemList
[
this
.
specForm
.
index
][
'specJson'
]
=
JSON
.
stringify
(
this
.
specForm
.
specList
)
},
onShowSpecDetail
(
row
,
index
)
{
this
.
specForm
.
specList
=
JSON
.
parse
(
row
[
'specJson'
])
||
[]
this
.
specForm
.
index
=
index
if
(
this
.
specForm
.
specList
.
length
)
{
this
.
showSpecDetail
=
true
}
else
{
this
.
$message
.
error
(
"暂无数据"
)
}
},
onEditItem
()
{
this
.
showItemDetail
=
false
this
.
form
.
detailList
[
this
.
itemDetailForm
.
index
].
itemList
=
this
.
itemDetailForm
.
itemList
},
onShowItemDetail
(
row
,
index
)
{
console
.
log
(
row
)
this
.
showItemDetail
=
true
this
.
itemDetailForm
.
itemList
=
row
.
itemList
this
.
itemDetailForm
.
index
=
index
},
onEditDetail
()
{
this
.
showEditDetail
=
false
this
.
$refs
.
itemForm
.
validate
(
valid
=>
{
...
...
@@ -724,23 +769,6 @@ export default {
}
})
},
checkedItem
()
{
let
{
detailList
}
=
this
.
form
for
(
let
i
=
0
;
i
<
detailList
.
length
;
i
++
)
{
let
detail
=
detailList
[
i
]
if
(
!
detail
.
itemId
)
return
'第'
+
i
+
'项缺少itemId'
// todo 检测未做
}
return
null
},
onShowSpecDetail
(
row
,
index
)
{
console
.
log
(
row
)
this
.
showSpecDetail
=
true
this
.
specForm
=
row
this
.
specForm
.
index
=
index
},
onShowEditDetail
(
item
,
$index
)
{
console
.
log
(
item
)
this
.
showEditDetail
=
true
...
...
@@ -749,28 +777,14 @@ export default {
this
.
itemForm
.
index
=
$index
},
onDeleteDetail
(
row
)
{
let
{
form
}
=
this
this
.
$modal
.
confirm
(
'是否确认删除?'
).
then
(()
=>
{
let
ids
=
row
.
itemId
||
this
.
ids
ids
=
(
ids
instanceof
Array
)
?
ids
:
[
ids
]
for
(
let
id
of
ids
)
{
let
index
=
form
.
detailList
.
findIndex
(
item
=>
item
.
itemId
==
id
)
if
(
index
!=
-
1
)
{
form
.
detailList
.
splice
(
index
,
1
)
}
onItemSelect
(
row
)
{
if
(
row
!=
undefined
)
{
this
.
itemForm
.
itemId
=
row
.
itemId
;
this
.
itemForm
.
itemNo
=
row
.
itemCode
;
this
.
itemForm
.
itemName
=
row
.
itemName
;
}
})
},
// 多选框选中数据
handleSelectionChange
(
selection
)
{
this
.
ids
=
selection
.
map
(
item
=>
item
.
id
)
this
.
single
=
selection
.
length
!==
1
this
.
multiple
=
!
selection
.
length
},
onSyncSapData
()
{
syncSapData
(
this
.
sapInfo
).
then
(
res
=>
res
)
},
onGenCode
()
{
genCode
(
'SALES_ORDER'
).
then
(
response
=>
{
this
.
form
.
orderNo
=
response
...
...
@@ -789,11 +803,6 @@ export default {
getUserList
(
key
)
{
listUser
({
nickName
:
key
,
pageNum
:
1
,
pageSize
:
100
}).
then
(
res
=>
this
.
userList
=
res
.
rows
)
},
onTabClick
()
{
if
(
this
.
activeName
==
'SapPropertyData'
)
getSapInfo
(
this
.
form
.
id
).
then
(
res
=>
{
this
.
sapInfo
=
JSON
.
parse
(
res
.
data
)
})
},
getDetail
()
{
let
{
id
:
orderId
,
purchaseId
}
=
this
.
$route
.
query
if
(
orderId
)
{
...
...
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