Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
jinli gu
JSH ERP
Commits
951793d3
Commit
951793d3
authored
May 18, 2022
by
季圣华
Browse files
增加销售订单与采购订单的关联,优化分批入出库的交互
parent
3438524a
Changes
8
Hide whitespace changes
Inline
Side-by-side
jshERP-web/src/views/bill/SaleOrderList.vue
View file @
951793d3
...
@@ -127,6 +127,11 @@
...
@@ -127,6 +127,11 @@
<a-tag
v-if=
"status == '2'"
color=
"cyan"
>
完成销售
</a-tag>
<a-tag
v-if=
"status == '2'"
color=
"cyan"
>
完成销售
</a-tag>
<a-tag
v-if=
"status == '3'"
color=
"blue"
>
部分销售
</a-tag>
<a-tag
v-if=
"status == '3'"
color=
"blue"
>
部分销售
</a-tag>
</
template
>
</
template
>
<
template
slot=
"customRenderPurchaseStatus"
slot-scope=
"purchaseStatus"
>
<a-tag
v-if=
"purchaseStatus == '0'"
color=
"red"
>
未采购
</a-tag>
<a-tag
v-if=
"purchaseStatus == '2'"
color=
"cyan"
>
完成采购
</a-tag>
<a-tag
v-if=
"purchaseStatus == '3'"
color=
"blue"
>
部分采购
</a-tag>
</
template
>
</a-table>
</a-table>
</div>
</div>
<!-- table区域-end -->
<!-- table区域-end -->
...
@@ -208,6 +213,9 @@
...
@@ -208,6 +213,9 @@
{
title
:
'
状态
'
,
dataIndex
:
'
status
'
,
width
:
70
,
align
:
"
center
"
,
{
title
:
'
状态
'
,
dataIndex
:
'
status
'
,
width
:
70
,
align
:
"
center
"
,
scopedSlots
:
{
customRender
:
'
customRenderStatus
'
}
scopedSlots
:
{
customRender
:
'
customRenderStatus
'
}
},
},
{
title
:
'
采购状态
'
,
dataIndex
:
'
purchaseStatus
'
,
width
:
70
,
align
:
"
center
"
,
scopedSlots
:
{
customRender
:
'
customRenderPurchaseStatus
'
}
},
{
{
title
:
'
操作
'
,
title
:
'
操作
'
,
dataIndex
:
'
action
'
,
dataIndex
:
'
action
'
,
...
...
jshERP-web/src/views/bill/dialog/BillDetail.vue
View file @
951793d3
...
@@ -197,7 +197,11 @@
...
@@ -197,7 +197,11 @@
{{
model
.
number
}}
{{
model
.
number
}}
</a-form-item>
</a-form-item>
</a-col>
</a-col>
<a-col
:span=
"6"
></a-col>
<a-col
:span=
"6"
>
<a-form-item
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
label=
"关联订单"
>
<a
@
click=
"myHandleDetail(model.linkNumber)"
>
{{
model
.
linkNumber
}}
</a>
</a-form-item>
</a-col>
</a-row>
</a-row>
<div
:style=
"tableWidth"
>
<div
:style=
"tableWidth"
>
<a-table
<a-table
...
...
jshERP-web/src/views/bill/dialog/LinkBillList.vue
View file @
951793d3
...
@@ -8,8 +8,44 @@
...
@@ -8,8 +8,44 @@
cancelText=
"关闭"
cancelText=
"关闭"
wrapClassName=
"ant-modal-cust-warp"
wrapClassName=
"ant-modal-cust-warp"
style=
"top:5%;height: 100%;overflow-y: hidden"
>
style=
"top:5%;height: 100%;overflow-y: hidden"
>
<!-- 查询区域 -->
<div
class=
"table-page-search-wrapper"
v-if=
"selectType === 'list'"
>
<!-- 搜索区域 -->
<a-form
layout=
"inline"
@
keyup.enter.native=
"searchQuery"
>
<a-row
:gutter=
"24"
>
<a-col
:md=
"6"
:sm=
"8"
>
<a-form-item
label=
"单据编号"
:labelCol=
"
{span: 5}" :wrapperCol="{span: 18, offset: 1}">
<a-input
placeholder=
"请输入单据编号查询"
v-model=
"queryParam.number"
></a-input>
</a-form-item>
</a-col>
<a-col
:md=
"6"
:sm=
"8"
>
<a-form-item
label=
"商品信息"
:labelCol=
"
{span: 5}" :wrapperCol="{span: 18, offset: 1}">
<a-input
placeholder=
"条码|名称|规格|型号"
v-model=
"queryParam.materialParam"
></a-input>
</a-form-item>
</a-col>
<a-col
:md=
"7"
:sm=
"10"
>
<a-form-item
label=
"单据日期"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
>
<a-range-picker
style=
"width: 210px"
v-model=
"queryParam.createTimeRange"
format=
"YYYY-MM-DD"
:placeholder=
"['开始时间', '结束时间']"
@
change=
"onDateChange"
@
ok=
"onDateOk"
/>
</a-form-item>
</a-col>
<span
style=
"float: left;overflow: hidden;"
class=
"table-page-search-submitButtons"
>
<a-col
:md=
"6"
:sm=
"24"
>
<a-button
type=
"primary"
@
click=
"searchQuery"
>
查询
</a-button>
<a-button
style=
"margin-left: 8px"
@
click=
"searchReset"
>
重置
</a-button>
</a-col>
</span>
</a-row>
</a-form>
</div>
<!-- table区域-begin -->
<!-- table区域-begin -->
<a-table
<a-table
v-if=
"selectType === 'list'"
bordered
bordered
ref=
"table"
ref=
"table"
size=
"middle"
size=
"middle"
...
@@ -21,52 +57,78 @@
...
@@ -21,52 +57,78 @@
:rowSelection=
"
{selectedRowKeys: selectedRowKeys, onChange: onSelectChange, type: getType}"
:rowSelection=
"
{selectedRowKeys: selectedRowKeys, onChange: onSelectChange, type: getType}"
:customRow="rowAction"
:customRow="rowAction"
@change="handleTableChange">
@change="handleTableChange">
<template
slot=
"customRenderStatus"
slot-scope=
"status"
>
<template
slot=
"customRenderStatus"
slot-scope=
"text, record"
>
<a-tag
v-if=
"status === '0'"
color=
"red"
>
未审核
</a-tag>
<template
v-if=
"!queryParam.purchaseStatus"
>
<a-tag
v-if=
"status === '1'"
color=
"green"
>
已审核
</a-tag>
<a-tag
v-if=
"record.status === '0'"
color=
"red"
>
未审核
</a-tag>
<a-tag
v-if=
"status === '2' && queryParam.subType === '采购订单'"
color=
"cyan"
>
完成采购
</a-tag>
<a-tag
v-if=
"record.status === '1'"
color=
"green"
>
已审核
</a-tag>
<a-tag
v-if=
"status === '2' && queryParam.subType === '销售订单'"
color=
"cyan"
>
完成销售
</a-tag>
<a-tag
v-if=
"record.status === '2' && queryParam.subType === '采购订单'"
color=
"cyan"
>
完成采购
</a-tag>
<a-tag
v-if=
"status === '3' && queryParam.subType === '采购订单'"
color=
"blue"
>
部分采购
</a-tag>
<a-tag
v-if=
"record.status === '2' && queryParam.subType === '销售订单'"
color=
"cyan"
>
完成销售
</a-tag>
<a-tag
v-if=
"status === '3' && queryParam.subType === '销售订单'"
color=
"blue"
>
部分销售
</a-tag>
<a-tag
v-if=
"record.status === '3' && queryParam.subType === '采购订单'"
color=
"blue"
>
部分采购
</a-tag>
<a-tag
v-if=
"record.status === '3' && queryParam.subType === '销售订单'"
color=
"blue"
>
部分销售
</a-tag>
</
template
>
<
template
v-if=
"queryParam.purchaseStatus"
>
<a-tag
v-if=
"record.purchaseStatus === '0'"
color=
"red"
>
未采购
</a-tag>
<a-tag
v-if=
"record.purchaseStatus === '2' && queryParam.subType === '销售订单'"
color=
"cyan"
>
完成采购
</a-tag>
<a-tag
v-if=
"record.purchaseStatus === '3' && queryParam.subType === '销售订单'"
color=
"blue"
>
部分采购
</a-tag>
</
template
>
</template>
</template>
</a-table>
</a-table>
<a-table
v-if=
"selectType === 'detail'"
bordered
ref=
"table"
size=
"middle"
rowKey=
"id"
:columns=
"columnsDetail"
:dataSource=
"dataSourceDetail"
:loading=
"loading"
:rowSelection=
"{selectedRowKeys: selectedDetailRowKeys, onChange: onSelectDetailChange, type: 'checkbox'}"
@
change=
"handleTableChange"
>
</a-table>
<!-- table区域-end -->
<!-- table区域-end -->
</a-modal>
</a-modal>
</template>
</template>
<
script
>
<
script
>
import
{
JeecgListMixin
}
from
'
@/mixins/JeecgListMixin
'
import
{
JeecgListMixin
}
from
'
@/mixins/JeecgListMixin
'
import
{
getAction
}
from
'
@/api/manage
'
import
Vue
from
'
vue
'
export
default
{
export
default
{
name
:
'
LinkBillList
'
,
name
:
'
LinkBillList
'
,
mixins
:[
JeecgListMixin
],
mixins
:[
JeecgListMixin
],
components
:
{
},
data
()
{
data
()
{
return
{
return
{
title
:
"
操作
"
,
title
:
"
操作
"
,
visible
:
false
,
visible
:
false
,
disableMixinCreated
:
true
,
disableMixinCreated
:
true
,
selectedRowKeys
:
[],
selectedRowKeys
:
[],
select
ionRow
s
:
[],
select
edDetailRowKey
s
:
[],
selectBillRows
:
[],
selectBillRows
:
[],
selectBillIds
:
''
,
selectBillDetailRows
:
[],
showType
:
'
list
'
,
selectType
:
'
list
'
,
linkNumber
:
''
,
organId
:
''
,
discount
:
''
,
remark
:
''
,
queryParam
:
{
queryParam
:
{
number
:
""
,
number
:
""
,
searchM
aterial
:
""
,
m
aterial
Param
:
""
,
type
:
""
,
type
:
""
,
subType
:
""
,
subType
:
""
,
status
:
""
status
:
""
},
},
labelCol
:
{
xs
:
{
span
:
24
},
sm
:
{
span
:
8
},
},
wrapperCol
:
{
xs
:
{
span
:
24
},
sm
:
{
span
:
16
},
},
// 表头
// 表头
columns
:
[
columns
:
[
{
title
:
'
#
'
,
dataIndex
:
''
,
key
:
'
rowIndex
'
,
width
:
40
,
align
:
"
center
"
,
customRender
:
function
(
t
,
r
,
index
)
{
return
parseInt
(
index
)
+
1
;
}
},
{
title
:
''
,
dataIndex
:
'
organName
'
,
width
:
120
,
ellipsis
:
true
},
{
title
:
''
,
dataIndex
:
'
organName
'
,
width
:
120
,
ellipsis
:
true
},
{
title
:
'
单据编号
'
,
dataIndex
:
'
number
'
,
width
:
150
},
{
title
:
'
单据编号
'
,
dataIndex
:
'
number
'
,
width
:
150
},
{
title
:
'
商品信息
'
,
dataIndex
:
'
materialsList
'
,
width
:
280
,
ellipsis
:
true
,
{
title
:
'
商品信息
'
,
dataIndex
:
'
materialsList
'
,
width
:
280
,
ellipsis
:
true
,
...
@@ -76,18 +138,38 @@
...
@@ -76,18 +138,38 @@
}
}
}
}
},
},
{
title
:
'
单据日期
'
,
dataIndex
:
'
operTimeStr
'
,
width
:
1
3
5
},
{
title
:
'
单据日期
'
,
dataIndex
:
'
operTimeStr
'
,
width
:
1
4
5
},
{
title
:
'
操作员
'
,
dataIndex
:
'
userName
'
,
width
:
70
},
{
title
:
'
操作员
'
,
dataIndex
:
'
userName
'
,
width
:
70
},
{
title
:
'
金额合计
'
,
dataIndex
:
'
totalPrice
'
,
width
:
70
},
{
title
:
'
金额合计
'
,
dataIndex
:
'
totalPrice
'
,
width
:
70
},
{
title
:
'
含税合计
'
,
dataIndex
:
'
totalTaxLastMoney
'
,
width
:
8
0
,
{
title
:
'
含税合计
'
,
dataIndex
:
'
totalTaxLastMoney
'
,
width
:
7
0
,
customRender
:
function
(
text
,
record
,
index
)
{
customRender
:
function
(
text
,
record
,
index
)
{
return
(
record
.
discountMoney
+
record
.
discountLastMoney
).
toFixed
(
2
);
if
(
record
.
discountLastMoney
)
{
return
(
record
.
discountMoney
+
record
.
discountLastMoney
).
toFixed
(
2
);
}
else
{
return
record
.
totalPrice
;
}
}
}
},
},
{
title
:
'
状态
'
,
dataIndex
:
'
status
'
,
width
:
70
,
align
:
"
center
"
,
{
title
:
'
状态
'
,
dataIndex
:
'
status
'
,
width
:
70
,
align
:
"
center
"
,
scopedSlots
:
{
customRender
:
'
customRenderStatus
'
}
scopedSlots
:
{
customRender
:
'
customRenderStatus
'
}
}
}
],
],
columnsDetail
:
[
{
title
:
'
条码
'
,
dataIndex
:
'
barCode
'
,
width
:
120
},
{
title
:
'
名称
'
,
dataIndex
:
'
name
'
,
width
:
100
,
ellipsis
:
true
},
{
title
:
'
规格
'
,
dataIndex
:
'
standard
'
,
width
:
100
,
ellipsis
:
true
},
{
title
:
'
型号
'
,
dataIndex
:
'
model
'
,
width
:
150
,
ellipsis
:
true
},
{
title
:
'
单位
'
,
dataIndex
:
'
unit
'
,
width
:
50
},
{
title
:
'
数量
'
,
dataIndex
:
'
operNumber
'
,
width
:
80
},
{
title
:
'
单价
'
,
dataIndex
:
'
unitPrice
'
,
width
:
80
},
{
title
:
'
金额
'
,
dataIndex
:
'
allPrice
'
,
width
:
80
},
{
title
:
'
税率(%)
'
,
dataIndex
:
'
taxRate
'
,
width
:
80
},
{
title
:
'
税额
'
,
dataIndex
:
'
taxMoney
'
,
width
:
80
},
{
title
:
'
价税合计
'
,
dataIndex
:
'
taxLastMoney
'
,
width
:
80
},
{
title
:
'
备注
'
,
dataIndex
:
'
remark
'
,
width
:
100
,
ellipsis
:
true
},
],
dataSource
:[],
dataSourceDetail
:
[],
url
:
{
url
:
{
list
:
"
/depotHead/list
"
list
:
"
/depotHead/list
"
}
}
...
@@ -102,10 +184,26 @@
...
@@ -102,10 +184,26 @@
},
},
methods
:
{
methods
:
{
show
(
type
,
subType
,
organType
,
status
)
{
show
(
type
,
subType
,
organType
,
status
)
{
this
.
selectType
=
'
list
'
this
.
showType
=
'
basic
'
this
.
queryParam
.
type
=
type
this
.
queryParam
.
type
=
type
this
.
queryParam
.
subType
=
subType
this
.
queryParam
.
subType
=
subType
this
.
queryParam
.
roleType
=
Vue
.
ls
.
get
(
'
roleType
'
)
this
.
queryParam
.
status
=
status
this
.
queryParam
.
status
=
status
this
.
columns
[
1
].
title
=
organType
this
.
columns
[
0
].
title
=
organType
this
.
model
=
Object
.
assign
({},
{});
this
.
visible
=
true
;
this
.
loadData
(
1
)
},
purchaseShow
(
type
,
subType
,
organType
,
status
,
purchaseStatus
)
{
this
.
selectType
=
'
list
'
this
.
showType
=
'
purchase
'
this
.
queryParam
.
type
=
type
this
.
queryParam
.
subType
=
subType
this
.
queryParam
.
roleType
=
'
全部数据
'
this
.
queryParam
.
status
=
status
this
.
queryParam
.
purchaseStatus
=
purchaseStatus
this
.
columns
[
0
].
title
=
organType
this
.
model
=
Object
.
assign
({},
{});
this
.
model
=
Object
.
assign
({},
{});
this
.
visible
=
true
;
this
.
visible
=
true
;
this
.
loadData
(
1
)
this
.
loadData
(
1
)
...
@@ -117,26 +215,97 @@
...
@@ -117,26 +215,97 @@
handleCancel
()
{
handleCancel
()
{
this
.
close
()
this
.
close
()
},
},
onSelectChange
(
selectedRowKeys
,
selectionRows
)
{
onSelectChange
(
selectedRowKeys
)
{
this
.
selectedRowKeys
=
selectedRowKeys
;
this
.
selectedRowKeys
=
selectedRowKeys
;
this
.
selectionRows
=
selectionRows
;
},
onSelectDetailChange
(
selectedRowKeys
)
{
this
.
selectedDetailRowKeys
=
selectedRowKeys
;
},
},
handleOk
()
{
handleOk
()
{
this
.
getSelectBillRows
();
if
(
this
.
selectType
===
'
list
'
)
{
this
.
$emit
(
'
ok
'
,
this
.
selectBillRows
);
this
.
getSelectBillRows
();
this
.
close
();
this
.
selectType
=
'
detail
'
this
.
title
=
"
选择单据明细
"
if
(
this
.
selectBillRows
&&
this
.
selectBillRows
.
length
>
0
)
{
let
record
=
this
.
selectBillRows
[
0
]
this
.
linkNumber
=
record
.
number
this
.
organId
=
record
.
organId
this
.
discount
=
record
.
discount
this
.
remark
=
record
.
remark
this
.
loadDetailData
(
1
)
}
}
else
{
this
.
getSelectBillDetailRows
();
this
.
$emit
(
'
ok
'
,
this
.
selectBillDetailRows
,
this
.
linkNumber
,
this
.
organId
,
this
.
discount
,
this
.
remark
)
this
.
close
();
}
},
//查询明细列表
loadDetailData
(
arg
)
{
//加载数据 若传入参数1则加载第一页的内容
if
(
arg
===
1
)
{
this
.
ipagination
.
current
=
1
;
}
if
(
this
.
selectBillRows
&&
this
.
selectBillRows
.
length
>
0
)
{
let
record
=
this
.
selectBillRows
[
0
]
let
param
=
{
headerId
:
record
.
id
,
mpList
:
''
}
this
.
loading
=
true
;
getAction
(
'
/depotItem/getDetailList
'
,
param
).
then
((
res
)
=>
{
if
(
res
.
code
===
200
)
{
let
list
=
res
.
data
.
rows
;
let
listEx
=
[]
for
(
let
j
=
0
;
j
<
list
.
length
;
j
++
){
let
info
=
list
[
j
];
//去掉已经全部转换的明细
if
(
info
.
preNumber
!==
info
.
finishNumber
)
{
listEx
.
push
(
info
)
}
}
this
.
dataSourceDetail
=
listEx
this
.
ipagination
.
total
=
res
.
data
.
total
;
}
if
(
res
.
code
===
510
){
this
.
$message
.
warning
(
res
.
data
)
}
this
.
loading
=
false
;
})
}
},
onDateChange
:
function
(
value
,
dateString
)
{
this
.
queryParam
.
beginTime
=
dateString
[
0
];
this
.
queryParam
.
endTime
=
dateString
[
1
];
},
onDateOk
(
value
)
{
console
.
log
(
value
);
},
searchReset
()
{
this
.
queryParam
=
{
type
:
this
.
queryParam
.
type
,
subType
:
this
.
queryParam
.
subType
,
status
:
"
1,3
"
}
this
.
loadData
(
1
);
},
},
getSelectBillRows
()
{
getSelectBillRows
()
{
let
dataSource
=
this
.
dataSource
;
let
dataSource
=
this
.
dataSource
;
let
billIds
=
""
;
this
.
selectBillRows
=
[];
this
.
selectBillRows
=
[];
for
(
let
i
=
0
,
len
=
dataSource
.
length
;
i
<
len
;
i
++
)
{
for
(
let
i
=
0
,
len
=
dataSource
.
length
;
i
<
len
;
i
++
)
{
if
(
this
.
selectedRowKeys
.
includes
(
dataSource
[
i
].
id
))
{
if
(
this
.
selectedRowKeys
.
includes
(
dataSource
[
i
].
id
))
{
this
.
selectBillRows
.
push
(
dataSource
[
i
]);
this
.
selectBillRows
.
push
(
dataSource
[
i
]);
billIds
=
billIds
+
"
,
"
+
dataSource
[
i
].
id
}
}
}
}
this
.
selectBillIds
=
billIds
.
substring
(
1
);
},
getSelectBillDetailRows
()
{
let
dataSource
=
this
.
dataSourceDetail
;
this
.
selectBillDetailRows
=
[];
for
(
let
i
=
0
,
len
=
dataSource
.
length
;
i
<
len
;
i
++
)
{
if
(
this
.
selectedDetailRowKeys
.
includes
(
dataSource
[
i
].
id
))
{
this
.
selectBillDetailRows
.
push
(
dataSource
[
i
]);
}
}
},
},
rowAction
(
record
,
index
)
{
rowAction
(
record
,
index
)
{
return
{
return
{
...
...
jshERP-web/src/views/bill/modules/PurchaseInModal.vue
View file @
951793d3
...
@@ -21,7 +21,7 @@
...
@@ -21,7 +21,7 @@
<a-col
:lg=
"6"
:md=
"12"
:sm=
"24"
>
<a-col
:lg=
"6"
:md=
"12"
:sm=
"24"
>
<a-form-item
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
label=
"供应商"
data-step=
"1"
data-title=
"供应商"
<a-form-item
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
label=
"供应商"
data-step=
"1"
data-title=
"供应商"
data-intro=
"供应商必须选择,如果发现需要选择的供应商尚未录入,可以在下拉框中点击新增供应商进行录入"
>
data-intro=
"供应商必须选择,如果发现需要选择的供应商尚未录入,可以在下拉框中点击新增供应商进行录入"
>
<a-select
placeholder=
"选择供应商"
v-decorator=
"[ 'organId', validatorRules.organId ]"
<a-select
placeholder=
"选择供应商"
v-decorator=
"[ 'organId', validatorRules.organId ]"
:disabled=
"!rowCanEdit"
:dropdownMatchSelectWidth=
"false"
showSearch
optionFilterProp=
"children"
>
:dropdownMatchSelectWidth=
"false"
showSearch
optionFilterProp=
"children"
>
<div
slot=
"dropdownRender"
slot-scope=
"menu"
>
<div
slot=
"dropdownRender"
slot-scope=
"menu"
>
<v-nodes
:vnodes=
"menu"
/>
<v-nodes
:vnodes=
"menu"
/>
...
@@ -61,14 +61,14 @@
...
@@ -61,14 +61,14 @@
:dataSource=
"materialTable.dataSource"
:dataSource=
"materialTable.dataSource"
:maxHeight=
"300"
:maxHeight=
"300"
:rowNumber=
"false"
:rowNumber=
"false"
:rowSelection=
"
true
"
:rowSelection=
"
rowCanEdit
"
:actionButton=
"
true
"
:actionButton=
"
rowCanEdit
"
:dragSort=
"
true
"
:dragSort=
"
rowCanEdit
"
@
valueChange=
"onValueChange"
@
valueChange=
"onValueChange"
@
added=
"onAdded"
@
added=
"onAdded"
@
deleted=
"onDeleted"
>
@
deleted=
"onDeleted"
>
<template
#buttonAfter
>
<template
#buttonAfter
>
<a-row
:gutter=
"24"
style=
"float:left;"
data-step=
"4"
data-title=
"扫码录入"
data-intro=
"此功能支持扫码枪扫描商品条码进行录入"
>
<a-row
v-if=
"rowCanEdit"
:gutter=
"24"
style=
"float:left;
padding-bottom: 5px;
"
data-step=
"4"
data-title=
"扫码录入"
data-intro=
"此功能支持扫码枪扫描商品条码进行录入"
>
<a-col
v-if=
"scanStatus"
:md=
"6"
:sm=
"24"
>
<a-col
v-if=
"scanStatus"
:md=
"6"
:sm=
"24"
>
<a-button
@
click=
"scanEnter"
>
扫码录入
</a-button>
<a-button
@
click=
"scanEnter"
>
扫码录入
</a-button>
</a-col>
</a-col>
...
@@ -79,7 +79,7 @@
...
@@ -79,7 +79,7 @@
<a-button
@
click=
"stopScan"
>
收起扫码
</a-button>
<a-button
@
click=
"stopScan"
>
收起扫码
</a-button>
</a-col>
</a-col>
</a-row>
</a-row>
<a-row
:gutter=
"24"
style=
"float:left;"
>
<a-row
:gutter=
"24"
style=
"float:left;
padding-bottom: 5px;
"
>
<a-col
:md=
"24"
:sm=
"24"
>
<a-col
:md=
"24"
:sm=
"24"
>
<a-dropdown>
<a-dropdown>
<a-menu
slot=
"overlay"
>
<a-menu
slot=
"overlay"
>
...
@@ -223,6 +223,7 @@
...
@@ -223,6 +223,7 @@
operTimeStr
:
''
,
operTimeStr
:
''
,
prefixNo
:
'
CGRK
'
,
prefixNo
:
'
CGRK
'
,
fileList
:[],
fileList
:[],
rowCanEdit
:
true
,
model
:
{},
model
:
{},
labelCol
:
{
labelCol
:
{
xs
:
{
span
:
24
},
xs
:
{
span
:
24
},
...
@@ -300,6 +301,8 @@
...
@@ -300,6 +301,8 @@
methods
:
{
methods
:
{
//调用完edit()方法之后会自动调用此方法
//调用完edit()方法之后会自动调用此方法
editAfter
()
{
editAfter
()
{
this
.
rowCanEdit
=
true
this
.
materialTable
.
columns
[
1
].
type
=
FormTypes
.
popupJsh
this
.
changeColumnHide
()
this
.
changeColumnHide
()
this
.
changeFormTypes
(
this
.
materialTable
.
columns
,
'
snList
'
,
0
)
this
.
changeFormTypes
(
this
.
materialTable
.
columns
,
'
snList
'
,
0
)
this
.
changeFormTypes
(
this
.
materialTable
.
columns
,
'
batchNumber
'
,
0
)
this
.
changeFormTypes
(
this
.
materialTable
.
columns
,
'
batchNumber
'
,
0
)
...
@@ -382,68 +385,46 @@
...
@@ -382,68 +385,46 @@
this
.
$refs
.
linkBillList
.
show
(
'
其它
'
,
'
采购订单
'
,
'
供应商
'
,
"
1,3
"
)
this
.
$refs
.
linkBillList
.
show
(
'
其它
'
,
'
采购订单
'
,
'
供应商
'
,
"
1,3
"
)
this
.
$refs
.
linkBillList
.
title
=
"
选择采购订单
"
this
.
$refs
.
linkBillList
.
title
=
"
选择采购订单
"
},
},
linkBillListOk
(
selectBillRows
)
{
linkBillListOk
(
selectBillDetailRows
,
linkNumber
,
organId
,
discount
,
remark
)
{
this
.
rowCanEdit
=
false
this
.
materialTable
.
columns
[
1
].
type
=
FormTypes
.
normal
this
.
changeFormTypes
(
this
.
materialTable
.
columns
,
'
preNumber
'
,
1
)
this
.
changeFormTypes
(
this
.
materialTable
.
columns
,
'
preNumber
'
,
1
)
this
.
changeFormTypes
(
this
.
materialTable
.
columns
,
'
finishNumber
'
,
1
)
this
.
changeFormTypes
(
this
.
materialTable
.
columns
,
'
finishNumber
'
,
1
)
if
(
selectBillRows
&&
selectBillRows
.
length
>
0
)
{
if
(
selectBillDetailRows
&&
selectBillDetailRows
.
length
>
0
)
{
let
record
=
selectBillRows
[
0
]
let
listEx
=
[]
this
.
$nextTick
(()
=>
{
let
allTaxLastMoney
=
0
this
.
form
.
setFieldsValue
({
for
(
let
j
=
0
;
j
<
selectBillDetailRows
.
length
;
j
++
)
{
'
organId
'
:
record
.
organId
,
let
info
=
selectBillDetailRows
[
j
];
'
linkNumber
'
:
record
.
number
,
if
(
info
.
finishNumber
>
0
)
{
'
remark
'
:
record
.
remark
,
info
.
operNumber
=
info
.
preNumber
-
info
.
finishNumber
'
discount
'
:
record
.
discount
info
.
allPrice
=
info
.
operNumber
*
info
.
unitPrice
-
0
let
taxRate
=
info
.
taxRate
-
0
info
.
taxMoney
=
(
info
.
allPrice
*
taxRate
/
100
).
toFixed
(
2
)
-
0
info
.
taxLastMoney
=
(
info
.
allPrice
+
info
.
taxMoney
).
toFixed
(
2
)
-
0
}
allTaxLastMoney
+=
info
.
taxLastMoney
listEx
.
push
(
info
)
this
.
changeColumnShow
(
info
)
}
this
.
materialTable
.
dataSource
=
listEx
///给优惠后金额重新赋值
if
(
allTaxLastMoney
)
{
let
discountMoney
=
(
discount
*
allTaxLastMoney
/
100
).
toFixed
(
2
)
-
0
let
discountLastMoney
=
(
allTaxLastMoney
-
discountMoney
).
toFixed
(
2
)
-
0
this
.
$nextTick
(()
=>
{
this
.
form
.
setFieldsValue
({
'
organId
'
:
organId
,
'
linkNumber
'
:
linkNumber
,
'
discount
'
:
discount
,
'
discountMoney
'
:
discountMoney
,
'
discountLastMoney
'
:
discountLastMoney
,
'
changeAmount
'
:
discountLastMoney
,
'
remark
'
:
remark
})
})
})
});
// 加载子表数据
let
params
=
{
headerId
:
record
.
id
,
mpList
:
getMpListShort
(
Vue
.
ls
.
get
(
'
materialPropertyList
'
))
//扩展属性
}
}
this
.
requestSubTableDataEx
(
this
.
url
.
detailList
,
params
,
this
.
materialTable
);
}
}
},
},
/** 查询某个tab的数据,给明细里面的价税合计赋值 */
requestSubTableDataEx
(
url
,
params
,
tab
,
success
)
{
tab
.
loading
=
true
getAction
(
url
,
params
).
then
(
res
=>
{
if
(
res
&&
res
.
code
===
200
){
let
list
=
res
.
data
.
rows
let
listEx
=
[]
let
allTaxLastMoney
=
0
for
(
let
j
=
0
;
j
<
list
.
length
;
j
++
){
let
info
=
list
[
j
]
if
(
info
.
finishNumber
>
0
)
{
info
.
operNumber
=
info
.
preNumber
-
info
.
finishNumber
info
.
allPrice
=
info
.
operNumber
*
info
.
unitPrice
-
0
let
taxRate
=
info
.
taxRate
-
0
info
.
taxMoney
=
(
info
.
allPrice
*
taxRate
/
100
).
toFixed
(
2
)
-
0
info
.
taxLastMoney
=
info
.
allPrice
+
info
.
taxMoney
}
allTaxLastMoney
+=
info
.
taxLastMoney
listEx
.
push
(
info
)
this
.
changeColumnShow
(
info
)
}
tab
.
dataSource
=
listEx
//给优惠后金额重新赋值
if
(
allTaxLastMoney
)
{
let
discount
=
this
.
form
.
getFieldValue
(
'
discount
'
)
-
0
let
discountMoney
=
(
discount
*
allTaxLastMoney
/
100
).
toFixed
(
2
)
-
0
let
discountLastMoney
=
allTaxLastMoney
-
discountMoney
this
.
$nextTick
(()
=>
{
this
.
form
.
setFieldsValue
({
'
discountMoney
'
:
discountMoney
,
'
discountLastMoney
'
:
discountLastMoney
,
'
changeAmount
'
:
discountLastMoney
})
});
}
typeof
success
===
'
function
'
?
success
(
res
)
:
''
}
}).
finally
(()
=>
{
tab
.
loading
=
false
})
}
}
}
}
}
</
script
>
</
script
>
...
...
jshERP-web/src/views/bill/modules/PurchaseOrderModal.vue
View file @
951793d3
...
@@ -46,7 +46,13 @@
...
@@ -46,7 +46,13 @@
<a-input
placeholder=
"请输入单据编号"
v-decorator.trim=
"[ 'number' ]"
:readOnly=
"true"
/>
<a-input
placeholder=
"请输入单据编号"
v-decorator.trim=
"[ 'number' ]"
:readOnly=
"true"
/>
</a-form-item>
</a-form-item>
</a-col>
</a-col>
<a-col
:lg=
"6"
:md=
"12"
:sm=
"24"
></a-col>
<a-col
:lg=
"6"
:md=
"12"
:sm=
"24"
>
<a-form-item
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
label=
"关联订单"
data-step=
"3"
data-title=
"关联订单"
data-intro=
"采购订单单据可以通过关联订单来选择已录入的销售订单,选择之后会自动加载订单的内容,
提交之后原来的销售订单会对应的改变单据状态。另外本系统支持分批多次关联"
>
<a-input-search
placeholder=
"请选择关联订单"
v-decorator=
"[ 'linkNumber' ]"
@
search=
"onSearchLinkNumber"
:readOnly=
"true"
/>
</a-form-item>
</a-col>
</a-row>
</a-row>
<j-editable-table
id=
"billModal"
<j-editable-table
id=
"billModal"
:ref=
"refKeys[0]"
:ref=
"refKeys[0]"
...
@@ -55,13 +61,13 @@
...
@@ -55,13 +61,13 @@
:dataSource=
"materialTable.dataSource"
:dataSource=
"materialTable.dataSource"
:maxHeight=
"300"
:maxHeight=
"300"
:rowNumber=
"false"
:rowNumber=
"false"
:rowSelection=
"
true
"
:rowSelection=
"
rowCanEdit
"
:actionButton=
"
true
"
:actionButton=
"
rowCanEdit
"
:dragSort=
"
true
"
:dragSort=
"
rowCanEdit
"
@
valueChange=
"onValueChange"
@
valueChange=
"onValueChange"
@
deleted=
"onDeleted"
>
@
deleted=
"onDeleted"
>
<template
#buttonAfter
>
<template
#buttonAfter
>
<a-row
:gutter=
"24"
style=
"float:left;"
data-step=
"
3
"
data-title=
"扫码录入"
data-intro=
"此功能支持扫码枪扫描商品条码进行录入"
>
<a-row
v-if=
"rowCanEdit"
:gutter=
"24"
style=
"float:left;
padding-bottom: 5px;
"
data-step=
"
4
"
data-title=
"扫码录入"
data-intro=
"此功能支持扫码枪扫描商品条码进行录入"
>
<a-col
v-if=
"scanStatus"
:md=
"6"
:sm=
"24"
>
<a-col
v-if=
"scanStatus"
:md=
"6"
:sm=
"24"
>
<a-button
@
click=
"scanEnter"
>
扫码录入
</a-button>
<a-button
@
click=
"scanEnter"
>
扫码录入
</a-button>
</a-col>
</a-col>
...
@@ -105,7 +111,7 @@
...
@@ -105,7 +111,7 @@
</a-row>
</a-row>
<a-row
class=
"form-row"
:gutter=
"24"
>
<a-row
class=
"form-row"
:gutter=
"24"
>
<a-col
:lg=
"6"
:md=
"12"
:sm=
"24"
>
<a-col
:lg=
"6"
:md=
"12"
:sm=
"24"
>
<a-form-item
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
label=
"附件"
data-step=
"
4
"
data-title=
"附件"
data-intro=
"可以上传与单据相关的图片、文档,支持多个文件"
>
<a-form-item
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
label=
"附件"
data-step=
"
8
"
data-title=
"附件"
data-intro=
"可以上传与单据相关的图片、文档,支持多个文件"
>
<j-upload
v-model=
"fileList"
bizPath=
"bill"
></j-upload>
<j-upload
v-model=
"fileList"
bizPath=
"bill"
></j-upload>
</a-form-item>
</a-form-item>
</a-col>
</a-col>
...
@@ -113,10 +119,12 @@
...
@@ -113,10 +119,12 @@
</a-form>
</a-form>
</a-spin>
</a-spin>
<vendor-modal
ref=
"vendorModalForm"
@
ok=
"vendorModalFormOk"
></vendor-modal>
<vendor-modal
ref=
"vendorModalForm"
@
ok=
"vendorModalFormOk"
></vendor-modal>
<link-bill-list
ref=
"linkBillList"
@
ok=
"linkBillListOk"
></link-bill-list>
</j-modal>
</j-modal>
</template>
</template>
<
script
>
<
script
>
import
pick
from
'
lodash.pick
'
import
pick
from
'
lodash.pick
'
import
LinkBillList
from
'
../dialog/LinkBillList
'
import
VendorModal
from
'
../../system/modules/VendorModal
'
import
VendorModal
from
'
../../system/modules/VendorModal
'
import
{
FormTypes
}
from
'
@/utils/JEditableTableUtil
'
import
{
FormTypes
}
from
'
@/utils/JEditableTableUtil
'
import
{
JEditableTableMixin
}
from
'
@/mixins/JEditableTableMixin
'
import
{
JEditableTableMixin
}
from
'
@/mixins/JEditableTableMixin
'
...
@@ -129,6 +137,7 @@
...
@@ -129,6 +137,7 @@
name
:
"
PurchaseOrderModal
"
,
name
:
"
PurchaseOrderModal
"
,
mixins
:
[
JEditableTableMixin
,
BillModalMixin
],
mixins
:
[
JEditableTableMixin
,
BillModalMixin
],
components
:
{
components
:
{
LinkBillList
,
VendorModal
,
VendorModal
,
JUpload
,
JUpload
,
JDate
,
JDate
,
...
@@ -150,6 +159,7 @@
...
@@ -150,6 +159,7 @@
operTimeStr
:
''
,
operTimeStr
:
''
,
prefixNo
:
'
CGDD
'
,
prefixNo
:
'
CGDD
'
,
fileList
:[],
fileList
:[],
rowCanEdit
:
true
,
model
:
{},
model
:
{},
labelCol
:
{
labelCol
:
{
xs
:
{
span
:
24
},
xs
:
{
span
:
24
},
...
@@ -214,6 +224,8 @@
...
@@ -214,6 +224,8 @@
methods
:
{
methods
:
{
//调用完edit()方法之后会自动调用此方法
//调用完edit()方法之后会自动调用此方法
editAfter
()
{
editAfter
()
{
this
.
rowCanEdit
=
true
this
.
materialTable
.
columns
[
1
].
type
=
FormTypes
.
popupJsh
this
.
changeColumnHide
()
this
.
changeColumnHide
()
if
(
this
.
action
===
'
add
'
)
{
if
(
this
.
action
===
'
add
'
)
{
this
.
addInit
(
this
.
prefixNo
)
this
.
addInit
(
this
.
prefixNo
)
...
@@ -269,7 +281,46 @@
...
@@ -269,7 +281,46 @@
info
:
JSON
.
stringify
(
billMain
),
info
:
JSON
.
stringify
(
billMain
),
rows
:
JSON
.
stringify
(
detailArr
),
rows
:
JSON
.
stringify
(
detailArr
),
}
}
}
},
onSearchLinkNumber
()
{
this
.
$refs
.
linkBillList
.
purchaseShow
(
'
其它
'
,
'
销售订单
'
,
'
客户
'
,
"
1,3
"
,
"
0,3
"
)
this
.
$refs
.
linkBillList
.
title
=
"
选择销售订单
"
},
linkBillListOk
(
selectBillDetailRows
,
linkNumber
,
organId
)
{
this
.
rowCanEdit
=
false
this
.
materialTable
.
columns
[
1
].
type
=
FormTypes
.
normal
this
.
changeFormTypes
(
this
.
materialTable
.
columns
,
'
preNumber
'
,
1
)
this
.
changeFormTypes
(
this
.
materialTable
.
columns
,
'
finishNumber
'
,
1
)
if
(
selectBillDetailRows
&&
selectBillDetailRows
.
length
>
0
)
{
let
discountLastMoney
=
0
for
(
let
j
=
0
;
j
<
selectBillDetailRows
.
length
;
j
++
)
{
let
info
=
selectBillDetailRows
[
j
];
if
(
info
.
preNumber
)
{
info
.
operNumber
=
info
.
preNumber
-
info
.
finishNumber
info
.
allPrice
=
(
info
.
operNumber
*
info
.
unitPrice
).
toFixed
(
2
)
-
0
;
info
.
taxRate
=
0
info
.
taxMoney
=
0
info
.
taxLastMoney
=
info
.
allPrice
discountLastMoney
+=
info
.
allPrice
}
}
this
.
$nextTick
(()
=>
{
this
.
form
.
setFieldsValue
({
'
linkNumber
'
:
linkNumber
})
})
//给优惠后金额重新赋值
if
(
discountLastMoney
)
{
this
.
$nextTick
(()
=>
{
this
.
form
.
setFieldsValue
({
'
discountLastMoney
'
:
discountLastMoney
.
toFixed
(
2
),
'
changeAmount
'
:
discountLastMoney
})
});
}
this
.
materialTable
.
dataSource
=
selectBillDetailRows
}
},
}
}
}
}
</
script
>
</
script
>
...
...
jshERP-web/src/views/bill/modules/SaleOrderModal.vue
View file @
951793d3
...
@@ -111,7 +111,7 @@
...
@@ -111,7 +111,7 @@
</a-row>
</a-row>
<a-row
class=
"form-row"
:gutter=
"24"
>
<a-row
class=
"form-row"
:gutter=
"24"
>
<a-col
:lg=
"6"
:md=
"12"
:sm=
"24"
>
<a-col
:lg=
"6"
:md=
"12"
:sm=
"24"
>
<a-form-item
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
label=
"附件"
data-step=
"
5
"
data-title=
"附件"
data-intro=
"可以上传与单据相关的图片、文档,支持多个文件"
>
<a-form-item
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
label=
"附件"
data-step=
"
8
"
data-title=
"附件"
data-intro=
"可以上传与单据相关的图片、文档,支持多个文件"
>
<j-upload
v-model=
"fileList"
bizPath=
"bill"
></j-upload>
<j-upload
v-model=
"fileList"
bizPath=
"bill"
></j-upload>
</a-form-item>
</a-form-item>
</a-col>
</a-col>
...
...
jshERP-web/src/views/bill/modules/SaleOutModal.vue
View file @
951793d3
...
@@ -22,7 +22,7 @@
...
@@ -22,7 +22,7 @@
<a-form-item
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
label=
"客户"
data-step=
"1"
data-title=
"客户"
<a-form-item
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
label=
"客户"
data-step=
"1"
data-title=
"客户"
data-intro=
"客户必须选择,如果发现需要选择的客户尚未录入,可以在下拉框中点击新增客户进行录入。
data-intro=
"客户必须选择,如果发现需要选择的客户尚未录入,可以在下拉框中点击新增客户进行录入。
特别注意,客户如果录入之后在下拉框中不显示,请检查是否给当前用户分配对应的客户权限"
>
特别注意,客户如果录入之后在下拉框中不显示,请检查是否给当前用户分配对应的客户权限"
>
<a-select
placeholder=
"选择客户"
v-decorator=
"[ 'organId', validatorRules.organId ]"
<a-select
placeholder=
"选择客户"
v-decorator=
"[ 'organId', validatorRules.organId ]"
:disabled=
"!rowCanEdit"
:dropdownMatchSelectWidth=
"false"
showSearch
optionFilterProp=
"children"
>
:dropdownMatchSelectWidth=
"false"
showSearch
optionFilterProp=
"children"
>
<div
slot=
"dropdownRender"
slot-scope=
"menu"
>
<div
slot=
"dropdownRender"
slot-scope=
"menu"
>
<v-nodes
:vnodes=
"menu"
/>
<v-nodes
:vnodes=
"menu"
/>
...
@@ -62,14 +62,14 @@
...
@@ -62,14 +62,14 @@
:dataSource=
"materialTable.dataSource"
:dataSource=
"materialTable.dataSource"
:maxHeight=
"300"
:maxHeight=
"300"
:rowNumber=
"false"
:rowNumber=
"false"
:rowSelection=
"
true
"
:rowSelection=
"
rowCanEdit
"
:actionButton=
"
true
"
:actionButton=
"
rowCanEdit
"
:dragSort=
"
true
"
:dragSort=
"
rowCanEdit
"
@
valueChange=
"onValueChange"
@
valueChange=
"onValueChange"
@
added=
"onAdded"
@
added=
"onAdded"
@
deleted=
"onDeleted"
>
@
deleted=
"onDeleted"
>
<template
#buttonAfter
>
<template
#buttonAfter
>
<a-row
:gutter=
"24"
style=
"float:left;"
data-step=
"4"
data-title=
"扫码录入"
data-intro=
"此功能支持扫码枪扫描商品条码进行录入"
>
<a-row
v-if=
"rowCanEdit"
:gutter=
"24"
style=
"float:left;
padding-bottom: 5px;
"
data-step=
"4"
data-title=
"扫码录入"
data-intro=
"此功能支持扫码枪扫描商品条码进行录入"
>
<a-col
v-if=
"scanStatus"
:md=
"6"
:sm=
"24"
>
<a-col
v-if=
"scanStatus"
:md=
"6"
:sm=
"24"
>
<a-button
@
click=
"scanEnter"
>
扫码录入
</a-button>
<a-button
@
click=
"scanEnter"
>
扫码录入
</a-button>
</a-col>
</a-col>
...
@@ -80,7 +80,7 @@
...
@@ -80,7 +80,7 @@
<a-button
@
click=
"stopScan"
>
收起扫码
</a-button>
<a-button
@
click=
"stopScan"
>
收起扫码
</a-button>
</a-col>
</a-col>
</a-row>
</a-row>
<a-row
:gutter=
"24"
style=
"float:left;"
>
<a-row
:gutter=
"24"
style=
"float:left;
padding-bottom: 5px;
"
>
<a-col
:md=
"24"
:sm=
"24"
>
<a-col
:md=
"24"
:sm=
"24"
>
<a-dropdown>
<a-dropdown>
<a-menu
slot=
"overlay"
>
<a-menu
slot=
"overlay"
>
...
@@ -229,6 +229,7 @@
...
@@ -229,6 +229,7 @@
operTimeStr
:
''
,
operTimeStr
:
''
,
prefixNo
:
'
XSCK
'
,
prefixNo
:
'
XSCK
'
,
fileList
:[],
fileList
:[],
rowCanEdit
:
true
,
model
:
{},
model
:
{},
labelCol
:
{
labelCol
:
{
xs
:
{
span
:
24
},
xs
:
{
span
:
24
},
...
@@ -304,6 +305,8 @@
...
@@ -304,6 +305,8 @@
methods
:
{
methods
:
{
//调用完edit()方法之后会自动调用此方法
//调用完edit()方法之后会自动调用此方法
editAfter
()
{
editAfter
()
{
this
.
rowCanEdit
=
true
this
.
materialTable
.
columns
[
1
].
type
=
FormTypes
.
popupJsh
this
.
changeColumnHide
()
this
.
changeColumnHide
()
this
.
changeFormTypes
(
this
.
materialTable
.
columns
,
'
snList
'
,
0
)
this
.
changeFormTypes
(
this
.
materialTable
.
columns
,
'
snList
'
,
0
)
this
.
changeFormTypes
(
this
.
materialTable
.
columns
,
'
batchNumber
'
,
0
)
this
.
changeFormTypes
(
this
.
materialTable
.
columns
,
'
batchNumber
'
,
0
)
...
@@ -388,68 +391,46 @@
...
@@ -388,68 +391,46 @@
this
.
$refs
.
linkBillList
.
show
(
'
其它
'
,
'
销售订单
'
,
'
客户
'
,
"
1,3
"
)
this
.
$refs
.
linkBillList
.
show
(
'
其它
'
,
'
销售订单
'
,
'
客户
'
,
"
1,3
"
)
this
.
$refs
.
linkBillList
.
title
=
"
选择销售订单
"
this
.
$refs
.
linkBillList
.
title
=
"
选择销售订单
"
},
},
linkBillListOk
(
selectBillRows
)
{
linkBillListOk
(
selectBillDetailRows
,
linkNumber
,
organId
,
discount
,
remark
)
{
this
.
rowCanEdit
=
false
this
.
materialTable
.
columns
[
1
].
type
=
FormTypes
.
normal
this
.
changeFormTypes
(
this
.
materialTable
.
columns
,
'
preNumber
'
,
1
)
this
.
changeFormTypes
(
this
.
materialTable
.
columns
,
'
preNumber
'
,
1
)
this
.
changeFormTypes
(
this
.
materialTable
.
columns
,
'
finishNumber
'
,
1
)
this
.
changeFormTypes
(
this
.
materialTable
.
columns
,
'
finishNumber
'
,
1
)
if
(
selectBillRows
&&
selectBillRows
.
length
>
0
)
{
if
(
selectBillDetailRows
&&
selectBillDetailRows
.
length
>
0
)
{
let
record
=
selectBillRows
[
0
]
let
listEx
=
[]
this
.
$nextTick
(()
=>
{
let
allTaxLastMoney
=
0
this
.
form
.
setFieldsValue
({
for
(
let
j
=
0
;
j
<
selectBillDetailRows
.
length
;
j
++
)
{
'
organId
'
:
record
.
organId
,
let
info
=
selectBillDetailRows
[
j
];
'
linkNumber
'
:
record
.
number
,
if
(
info
.
finishNumber
>
0
)
{
'
remark
'
:
record
.
remark
,
info
.
operNumber
=
info
.
preNumber
-
info
.
finishNumber
'
discount
'
:
record
.
discount
info
.
allPrice
=
info
.
operNumber
*
info
.
unitPrice
-
0
let
taxRate
=
info
.
taxRate
-
0
info
.
taxMoney
=
(
info
.
allPrice
*
taxRate
/
100
).
toFixed
(
2
)
-
0
info
.
taxLastMoney
=
(
info
.
allPrice
+
info
.
taxMoney
).
toFixed
(
2
)
-
0
}
allTaxLastMoney
+=
info
.
taxLastMoney
listEx
.
push
(
info
)
this
.
changeColumnShow
(
info
)
}
this
.
materialTable
.
dataSource
=
listEx
///给优惠后金额重新赋值
if
(
allTaxLastMoney
)
{
let
discountMoney
=
(
discount
*
allTaxLastMoney
/
100
).
toFixed
(
2
)
-
0
let
discountLastMoney
=
(
allTaxLastMoney
-
discountMoney
).
toFixed
(
2
)
-
0
this
.
$nextTick
(()
=>
{
this
.
form
.
setFieldsValue
({
'
organId
'
:
organId
,
'
linkNumber
'
:
linkNumber
,
'
discount
'
:
discount
,
'
discountMoney
'
:
discountMoney
,
'
discountLastMoney
'
:
discountLastMoney
,
'
changeAmount
'
:
discountLastMoney
,
'
remark
'
:
remark
})
})
})
});
// 加载子表数据
let
params
=
{
headerId
:
record
.
id
,
mpList
:
getMpListShort
(
Vue
.
ls
.
get
(
'
materialPropertyList
'
))
//扩展属性
}
}
this
.
requestSubTableDataEx
(
this
.
url
.
detailList
,
params
,
this
.
materialTable
);
}
}
},
},
/** 查询某个tab的数据,给明细里面的价税合计赋值 */
requestSubTableDataEx
(
url
,
params
,
tab
,
success
)
{
tab
.
loading
=
true
getAction
(
url
,
params
).
then
(
res
=>
{
if
(
res
&&
res
.
code
===
200
){
let
list
=
res
.
data
.
rows
let
listEx
=
[]
let
allTaxLastMoney
=
0
for
(
let
j
=
0
;
j
<
list
.
length
;
j
++
){
let
info
=
list
[
j
]
if
(
info
.
finishNumber
>
0
)
{
info
.
operNumber
=
info
.
preNumber
-
info
.
finishNumber
info
.
allPrice
=
info
.
operNumber
*
info
.
unitPrice
-
0
let
taxRate
=
info
.
taxRate
-
0
info
.
taxMoney
=
(
info
.
allPrice
*
taxRate
/
100
).
toFixed
(
2
)
-
0
info
.
taxLastMoney
=
info
.
allPrice
+
info
.
taxMoney
}
allTaxLastMoney
+=
info
.
taxLastMoney
listEx
.
push
(
info
)
this
.
changeColumnShow
(
info
)
}
tab
.
dataSource
=
listEx
//给优惠后金额重新赋值
if
(
allTaxLastMoney
)
{
let
discount
=
this
.
form
.
getFieldValue
(
'
discount
'
)
-
0
let
discountMoney
=
(
discount
*
allTaxLastMoney
/
100
).
toFixed
(
2
)
-
0
let
discountLastMoney
=
allTaxLastMoney
-
discountMoney
this
.
$nextTick
(()
=>
{
this
.
form
.
setFieldsValue
({
'
discountMoney
'
:
discountMoney
,
'
discountLastMoney
'
:
discountLastMoney
,
'
changeAmount
'
:
discountLastMoney
})
});
}
typeof
success
===
'
function
'
?
success
(
res
)
:
''
}
}).
finally
(()
=>
{
tab
.
loading
=
false
})
}
}
}
}
}
</
script
>
</
script
>
...
...
jshERP-web/src/views/system/SystemConfigList.vue
View file @
951793d3
...
@@ -37,6 +37,10 @@
...
@@ -37,6 +37,10 @@
<a-switch
checked-children=
"启用"
un-checked-children=
"关闭"
v-model=
"minusStockFlagSwitch"
@
change=
"onMinusStockChange"
></a-switch>
<a-switch
checked-children=
"启用"
un-checked-children=
"关闭"
v-model=
"minusStockFlagSwitch"
@
change=
"onMinusStockChange"
></a-switch>
(如果启用则单据支持负库存,批次商品除外)
(如果启用则单据支持负库存,批次商品除外)
</a-form-item>
</a-form-item>
<a-form-item
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
label=
"以销定购"
>
<a-switch
checked-children=
"启用"
un-checked-children=
"关闭"
v-model=
"purchaseBySaleFlagSwitch"
@
change=
"onPurchaseBySaleChange"
></a-switch>
(如果启用则根据销售订单来定制采购订单,进货后再发给客户)
</a-form-item>
</a-form>
</a-form>
</a-spin>
</a-spin>
</a-col>
</a-col>
...
@@ -68,6 +72,7 @@
...
@@ -68,6 +72,7 @@
depotFlagSwitch
:
false
,
//仓库权限状态
depotFlagSwitch
:
false
,
//仓库权限状态
customerFlagSwitch
:
false
,
//客户权限状态
customerFlagSwitch
:
false
,
//客户权限状态
minusStockFlagSwitch
:
false
,
//负库存状态
minusStockFlagSwitch
:
false
,
//负库存状态
purchaseBySaleFlagSwitch
:
false
,
//以销定购状态
isReadOnly
:
false
,
isReadOnly
:
false
,
labelCol
:
{
labelCol
:
{
xs
:
{
span
:
24
},
xs
:
{
span
:
24
},
...
@@ -110,6 +115,9 @@
...
@@ -110,6 +115,9 @@
onMinusStockChange
(
checked
)
{
onMinusStockChange
(
checked
)
{
this
.
model
.
minusStockFlag
=
checked
?
'
1
'
:
'
0
'
this
.
model
.
minusStockFlag
=
checked
?
'
1
'
:
'
0
'
},
},
onPurchaseBySaleChange
(
checked
)
{
this
.
model
.
purchaseBySaleFlag
=
checked
?
'
1
'
:
'
0
'
},
init
()
{
init
()
{
let
param
=
{
let
param
=
{
search
:
{
"
companyName
"
:
""
},
search
:
{
"
companyName
"
:
""
},
...
@@ -124,7 +132,8 @@
...
@@ -124,7 +132,8 @@
this
.
visible
=
true
;
this
.
visible
=
true
;
this
.
$nextTick
(()
=>
{
this
.
$nextTick
(()
=>
{
this
.
form
.
setFieldsValue
(
pick
(
this
.
model
,
'
companyName
'
,
'
companyContacts
'
,
'
companyAddress
'
,
this
.
form
.
setFieldsValue
(
pick
(
this
.
model
,
'
companyName
'
,
'
companyContacts
'
,
'
companyAddress
'
,
'
companyTel
'
,
'
companyFax
'
,
'
companyPostCode
'
,
'
saleAgreement
'
,
'
depotFlag
'
,
'
customerFlag
'
,
'
minusStockFlag
'
))
'
companyTel
'
,
'
companyFax
'
,
'
companyPostCode
'
,
'
saleAgreement
'
,
'
depotFlag
'
,
'
customerFlag
'
,
'
minusStockFlag
'
,
'
purchaseBySaleFlag
'
))
autoJumpNextInput
(
'
systemConfigModal
'
)
autoJumpNextInput
(
'
systemConfigModal
'
)
});
});
if
(
record
.
id
)
{
if
(
record
.
id
)
{
...
@@ -137,6 +146,9 @@
...
@@ -137,6 +146,9 @@
if
(
record
.
minusStockFlag
!=
null
)
{
if
(
record
.
minusStockFlag
!=
null
)
{
this
.
minusStockFlagSwitch
=
record
.
minusStockFlag
==
'
1
'
?
true
:
false
;
this
.
minusStockFlagSwitch
=
record
.
minusStockFlag
==
'
1
'
?
true
:
false
;
}
}
if
(
record
.
purchaseBySaleFlag
!=
null
)
{
this
.
purchaseBySaleFlagSwitch
=
record
.
purchaseBySaleFlag
==
'
1
'
?
true
:
false
;
}
}
}
}
else
{
}
else
{
this
.
$message
.
info
(
res
.
data
);
this
.
$message
.
info
(
res
.
data
);
...
@@ -174,6 +186,7 @@
...
@@ -174,6 +186,7 @@
this
.
depotFlagSwitch
=
false
this
.
depotFlagSwitch
=
false
this
.
customerFlagSwitch
=
false
this
.
customerFlagSwitch
=
false
this
.
minusStockFlagSwitch
=
false
this
.
minusStockFlagSwitch
=
false
this
.
purchaseBySaleFlagSwitch
=
false
}
}
}
}
}
}
...
...
Write
Preview
Supports
Markdown
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