Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
F
factory_front
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
qinjianhui
factory_front
Commits
a925ab80
Commit
a925ab80
authored
Jul 05, 2024
by
zhuzhequan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ts 报错修改
parent
90b17694
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
162 additions
and
87 deletions
+162
-87
src/api/order.ts
+8
-6
src/components/splitDiv/splitDiv.vue
+2
-2
src/types/api/deliveryNote.ts
+7
-0
src/types/api/index.ts
+16
-0
src/types/api/order.ts
+32
-0
src/utils/hooks/usePageList.ts
+11
-10
src/views/AccountStatementNote.vue
+67
-58
src/views/order/index.vue
+19
-11
No files found.
src/api/order.ts
View file @
a925ab80
import
{
BasePaginationData
,
BaseRespData
}
from
'@/types/api'
import
{
BasePaginationData
,
BaseRespData
,
StatisticsData
}
from
'@/types/api'
import
axios
from
'./axios'
import
axios
from
'./axios'
import
{
import
{
LogListData
,
LogListData
,
...
@@ -9,9 +9,11 @@ import {
...
@@ -9,9 +9,11 @@ import {
ShipmentForm
,
ShipmentForm
,
ShipmentOrderRes
,
ShipmentOrderRes
,
Tab
,
Tab
,
InspectionData
,
InspectionData
,
CountStatus
,
}
from
'@/types/api/order'
}
from
'@/types/api/order'
import
{
import
{
AccountStatementNote
,
AccountStatementNoteSearchForm
,
DeliveryNoteData
,
DeliveryNoteData
,
DeliveryNoteSearchForm
,
DeliveryNoteSearchForm
,
ProductionOrder
,
ProductionOrder
,
...
@@ -187,11 +189,11 @@ export function getDeliveryNoteList(
...
@@ -187,11 +189,11 @@ export function getDeliveryNoteList(
)
)
}
}
export
function
customJomallReconciliation
(
export
function
customJomallReconciliation
(
data
:
any
,
data
:
AccountStatementNoteSearchForm
,
currentPage
:
number
,
currentPage
:
number
,
pageSize
:
number
,
pageSize
:
number
,
)
{
)
{
return
axios
.
post
<
never
,
BasePaginationData
<
DeliveryNoteData
>>
(
return
axios
.
post
<
never
,
StatisticsData
<
AccountStatementNote
>>
(
'factory/customJomallReconciliation/list_page'
,
'factory/customJomallReconciliation/list_page'
,
{
{
...
data
,
...
data
,
...
@@ -238,7 +240,7 @@ export function getOrderByIdApi(id?: number) {
...
@@ -238,7 +240,7 @@ export function getOrderByIdApi(id?: number) {
)
)
}
}
export
function
getReconciliationAmount
(
id
?:
number
)
{
export
function
getReconciliationAmount
(
id
?:
number
)
{
return
axios
.
get
<
never
,
BaseRespData
<
OrderData
>>
(
return
axios
.
get
<
never
,
BaseRespData
<
CountStatus
[]
>>
(
'factory/customJomallReconciliation/getReconciliationAmount'
,
'factory/customJomallReconciliation/getReconciliationAmount'
,
{
{
params
:
{
params
:
{
...
@@ -276,7 +278,7 @@ export function updateReconciliation(
...
@@ -276,7 +278,7 @@ export function updateReconciliation(
data
,
data
,
)
)
}
}
export
function
getShipmentDetailsById
(
shipmentId
?:
number
)
{
export
function
getShipmentDetailsById
(
shipmentId
?:
string
)
{
return
axios
.
get
<
never
,
BaseRespData
<
any
>>
(
return
axios
.
get
<
never
,
BaseRespData
<
any
>>
(
'factory/customJomallReconciliation/getShipmentDetailsById'
,
'factory/customJomallReconciliation/getShipmentDetailsById'
,
{
{
...
...
src/components/splitDiv/splitDiv.vue
View file @
a925ab80
...
@@ -5,8 +5,8 @@ import 'splitpanes/dist/splitpanes.css'
...
@@ -5,8 +5,8 @@ import 'splitpanes/dist/splitpanes.css'
defineProps
({
defineProps
({
size
:
{
size
:
{
default
:
15
,
default
:
'15'
,
type
:
Number
type
:
String
}
}
})
})
</
script
>
</
script
>
...
...
src/types/api/deliveryNote.ts
View file @
a925ab80
...
@@ -10,6 +10,12 @@ export interface DeliveryNoteSearchForm {
...
@@ -10,6 +10,12 @@ export interface DeliveryNoteSearchForm {
namespace
?:
string
namespace
?:
string
shippingWay
?:
number
shippingWay
?:
number
}
}
export
interface
AccountStatementNoteSearchForm
{
status
?:
string
|
null
|
number
startTime
?:
string
endTime
?:
string
}
export
interface
DeliveryNoteData
{
export
interface
DeliveryNoteData
{
id
:
number
id
:
number
...
@@ -97,6 +103,7 @@ export interface ProductionOrder {
...
@@ -97,6 +103,7 @@ export interface ProductionOrder {
}
}
export
interface
AccountStatementNote
{
export
interface
AccountStatementNote
{
billNumber
?:
string
billNumber
?:
string
shipmentId
?:
string
shipmentNum
?:
string
shipmentNum
?:
string
dataVersion
?:
string
dataVersion
?:
string
carriageName
?:
string
carriageName
?:
string
...
...
src/types/api/index.ts
View file @
a925ab80
export
interface
BaseRespData
<
D
>
{
export
interface
BaseRespData
<
D
>
{
code
:
number
code
:
number
message
?:
string
message
?:
string
...
@@ -5,10 +6,25 @@ export interface BaseRespData<D> {
...
@@ -5,10 +6,25 @@ export interface BaseRespData<D> {
}
}
export
interface
PaginationData
<
D
>
{
export
interface
PaginationData
<
D
>
{
page
?:
PaginationData
<
D
>
total
:
number
total
:
number
size
:
number
size
:
number
current
:
number
current
:
number
records
:
D
[]
records
:
D
[]
}
}
export
interface
Statistics
<
D
>
{
sumNotPassNum
:
number
sumPassNum
:
number
sumShipmentNum
:
number
sumTotalPrice
:
number
page
:
{
total
:
number
size
:
number
current
:
number
records
:
D
[]
}
}
export
type
BasePaginationData
<
D
>
=
BaseRespData
<
PaginationData
<
D
>>
export
type
BasePaginationData
<
D
>
=
BaseRespData
<
PaginationData
<
D
>>
export
type
StatisticsData
<
D
>
=
BaseRespData
<
Statistics
<
D
>>
src/types/api/order.ts
View file @
a925ab80
...
@@ -12,6 +12,7 @@ export interface SearchForm {
...
@@ -12,6 +12,7 @@ export interface SearchForm {
status
?:
number
status
?:
number
subOrderNumber
:
string
subOrderNumber
:
string
}
}
export
interface
Tab
{
export
interface
Tab
{
status
:
string
status
:
string
statusCode
:
number
statusCode
:
number
...
@@ -19,6 +20,12 @@ export interface Tab {
...
@@ -19,6 +20,12 @@ export interface Tab {
quantity
:
number
quantity
:
number
}
}
export
interface
CountStatus
{
count
?:
number
status
?:
number
totalSum
?:
number
}
export
interface
OrderData
{
export
interface
OrderData
{
id
:
number
id
:
number
namespace
?:
string
namespace
?:
string
...
@@ -64,6 +71,7 @@ export interface OrderData {
...
@@ -64,6 +71,7 @@ export interface OrderData {
moreable
?:
boolean
moreable
?:
boolean
manuscriptStatus
?:
number
manuscriptStatus
?:
number
}
}
export
interface
ProductList
{
export
interface
ProductList
{
id
:
number
id
:
number
customOrderId
?:
number
customOrderId
?:
number
...
@@ -101,6 +109,7 @@ export interface MemoList {
...
@@ -101,6 +109,7 @@ export interface MemoList {
remark
?:
string
remark
?:
string
operatorTime
?:
string
operatorTime
?:
string
}
}
export
interface
SpanMethodProps
{
export
interface
SpanMethodProps
{
row
:
OrderData
row
:
OrderData
column
:
TableColumnCtx
<
OrderData
>
column
:
TableColumnCtx
<
OrderData
>
...
@@ -216,3 +225,26 @@ export interface InspectionData {
...
@@ -216,3 +225,26 @@ export interface InspectionData {
version
:
number
|
string
version
:
number
|
string
passCount
:
number
|
string
passCount
:
number
|
string
}
}
export
interface
Reconciliation
{
status
:
string
|
number
|
null
startTime
:
string
endTime
:
string
,
billNumber
?:
string
shipmentId
?:
string
shipmentNum
?:
string
dataVersion
?:
string
carriageName
?:
string
lanshouAddress
?:
string
totalPrice
?:
string
passNum
?:
string
lanshouPost
?:
string
notPassNum
?:
string
lanshouRegion
?:
string
orderNumber
?:
string
lanshouName
?:
string
lanshouPhone
?:
string
logisticsTracking
?:
string
totalAmount
?:
string
id
?:
number
}
src/utils/hooks/usePageList.ts
View file @
a925ab80
import
{
Ref
,
onMounted
,
ref
,
reactive
}
from
'vue'
import
{
Ref
,
onMounted
,
ref
}
from
'vue'
import
{
showError
}
from
'../ui'
import
{
showError
}
from
'../ui'
import
type
{
PaginationData
}
from
'@/types/api'
import
type
{
PaginationData
}
from
'@/types/api'
...
@@ -21,7 +21,7 @@ export default function usePageList<T>(options: UsePageListOptions<T>) {
...
@@ -21,7 +21,7 @@ export default function usePageList<T>(options: UsePageListOptions<T>) {
const
total
=
ref
(
0
)
const
total
=
ref
(
0
)
const
data
=
ref
<
T
[]
>
([])
as
Ref
<
T
[]
>
const
data
=
ref
<
T
[]
>
([])
as
Ref
<
T
[]
>
const
statistics
=
ref
(
options
.
statistics
||
false
)
const
statistics
=
ref
(
options
.
statistics
||
false
)
const
totalData
=
re
active
({
const
totalData
=
re
f
({
sumShipmentNum
:
0
,
sumShipmentNum
:
0
,
sumPassNum
:
0
,
sumPassNum
:
0
,
sumTotalPrice
:
0
,
sumTotalPrice
:
0
,
...
@@ -32,19 +32,20 @@ export default function usePageList<T>(options: UsePageListOptions<T>) {
...
@@ -32,19 +32,20 @@ export default function usePageList<T>(options: UsePageListOptions<T>) {
try
{
try
{
loading
.
value
=
true
loading
.
value
=
true
// Promise 链式调用
// Promise 链式调用
let
res
:
any
=
await
query
(
currentPage
.
value
,
pageSize
.
value
)
const
res
=
await
query
(
currentPage
.
value
,
pageSize
.
value
)
if
(
statistics
.
value
)
{
if
(
statistics
.
value
)
{
totalData
.
sumNotPassNum
=
res
.
sumNotPassNum
totalData
.
value
=
res
as
never
totalData
.
sumPassNum
=
res
.
sumPassNum
total
.
value
=
res
.
page
!
.
total
totalData
.
sumShipmentNum
=
res
.
sumShipmentNum
currentPage
.
value
=
res
.
page
!
.
current
totalData
.
sumTotalPrice
=
res
.
sumTotalPrice
pageSize
.
value
=
res
.
page
!
.
size
res
=
res
.
page
data
.
value
=
res
.
page
!
.
records
}
else
{
}
total
.
value
=
res
.
total
total
.
value
=
res
.
total
currentPage
.
value
=
res
.
current
currentPage
.
value
=
res
.
current
pageSize
.
value
=
res
.
size
pageSize
.
value
=
res
.
size
data
.
value
=
res
.
records
data
.
value
=
res
.
records
}
}
catch
(
error
)
{
}
catch
(
error
)
{
showError
(
error
)
showError
(
error
)
}
finally
{
}
finally
{
...
...
src/views/AccountStatementNote.vue
View file @
a925ab80
<
template
>
<
template
>
<div
class=
"page"
>
<div
class=
"page"
>
<div
class=
"left"
>
<div
class=
"left"
>
<ElTree
ref=
"treeRef"
default-expand-all
:expand-on-click-node=
"false"
:default-expanded-keys=
"[]"
<ElTree
ref=
"treeRef"
default-expand-all
:expand-on-click-node=
"false"
:default-expanded-keys=
"[]"
:highlight-current=
"true"
node-key=
"id"
:data=
"treeData"
@
node-click=
"nodeClick"
>
:highlight-current=
"true"
node-key=
"id"
:data=
"treeData"
@
node-click=
"nodeClick"
>
</ElTree>
</ElTree>
</div>
</div>
<div
class=
"right"
>
<div
class=
"right"
>
<div
class=
"delivery-note-page flex-column card h-100 overflow-hidden"
>
<div
class=
"delivery-note-page flex-column card h-100 overflow-hidden"
>
<splitDiv
:
size=
"70"
>
<splitDiv
size=
"70"
>
<template
#
top
>
<template
#
top
>
<div
class=
"header-filter-form"
>
<div
class=
"header-filter-form"
>
<ElForm
:model=
"searchForm"
inline
>
<ElForm
:model=
"searchForm"
inline
>
...
@@ -83,17 +84,17 @@
...
@@ -83,17 +84,17 @@
<div
class=
"delivery-note-content flex-1 flex-column overflow-hidden"
>
<div
class=
"delivery-note-content flex-1 flex-column overflow-hidden"
>
<div
class=
"delivery-note-list flex-1 overflow-hidden"
>
<div
class=
"delivery-note-list flex-1 overflow-hidden"
>
<ElTable
<ElTable
@
current-change=
"rowClick
"
ref=
"singleTableRef
"
highlight-current-row
highlight-current-row
:data=
"tableData"
:data=
"tableData"
@
selection-change=
"handleSelectionChange"
ref=
"singleTableRef"
show-summary
show-summary
:summary-method=
"getSummaries"
:summary-method=
"getSummaries"
default-expand-all
default-expand-all
size=
"small"
size=
"small"
style=
"width: 100%; height: 100%"
style=
"width: 100%; height: 100%"
border
border
@
current-change=
"rowClick"
@
selection-change=
"handleSelectionChange"
>
>
<ElTableColumn
<ElTableColumn
...
@@ -271,13 +272,14 @@
...
@@ -271,13 +272,14 @@
</div>
</div>
</template>
</template>
<
template
#
bottom
>
<
template
#
bottom
>
<el-tabs
@
tab-change=
"tabsClick"
v-model=
"tabsValue
"
>
<el-tabs
v-model=
"tabsValue"
@
tab-change=
"tabsClick
"
>
<el-tab-pane
name=
"0"
label=
"发货单详情"
>
<el-tab-pane
name=
"0"
label=
"发货单详情"
>
<ElTable
:data=
"detailList"
height=
"100%"
border
>
<ElTable
:data=
"detailList"
height=
"100%"
border
>
<ElTableColumn
show-overflow-tooltip
width=
"60"
align=
"center"
label=
"序号"
type=
"index"
/>
<ElTableColumn
show-overflow-tooltip
width=
"60"
align=
"center"
label=
"序号"
type=
"index"
/>
<ElTableColumn
show-overflow-tooltip
align=
"center"
label=
"图片"
>
<ElTableColumn
show-overflow-tooltip
align=
"center"
label=
"图片"
>
<template
#
default=
"
{row}">
<template
#
default=
"
{row}">
<el-image
preview-teleported
style=
"height: 40px;width: 40px;"
:src=
"row.variantImage"
<el-image
preview-teleported
style=
"height: 40px;width: 40px;"
:src=
"row.variantImage"
:preview-src-list=
"[row.variantImage]"
></el-image>
:preview-src-list=
"[row.variantImage]"
></el-image>
</
template
>
</
template
>
</ElTableColumn>
</ElTableColumn>
...
@@ -300,46 +302,44 @@
...
@@ -300,46 +302,44 @@
{{ item.createTime }}
{{ item.createTime }}
</span>
</span>
<span
<span
v-html=
"item.description
"
style=
"display: inline-block; width: 80%
"
style=
"display: inline-block; width: 80%
"
></span>
v-html=
"item.description
"
></span>
</li>
</li>
</ul>
</ul>
</el-tab-pane>
</el-tab-pane>
</el-tabs>
</el-tabs>
</template>
</template>
</splitDiv>
</splitDiv>
</div>
</div>
</div>
</div>
</div>
</div>
<ElDialog
width=
"1100px"
v-model=
"dialogVisible
"
draggable
title=
"编辑"
>
<ElDialog
v-model=
"dialogVisible"
width=
"1100px
"
draggable
title=
"编辑"
>
<el-form
style=
"width: 100%;"
inline
label-width=
"120px"
v-model=
"editForm
"
>
<el-form
v-model=
"editForm"
style=
"width: 100%;"
inline
label-width=
"120px
"
>
<el-form-item
prop=
"billNumber"
label=
"发货单号"
>
<el-form-item
prop=
"billNumber"
label=
"发货单号"
>
<el-input
disabled
v-model=
"editForm.billNumber"
></el-input>
<el-input
v-model=
"editForm.billNumber"
disabled
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
prop=
"orderNumber"
label=
"订单号"
>
<el-form-item
prop=
"orderNumber"
label=
"订单号"
>
<el-input
disabled
v-model=
"editForm.orderNumber"
></el-input>
<el-input
v-model=
"editForm.orderNumber"
disabled
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
prop=
"notPassNum"
label=
"质检未通过数量"
>
<el-form-item
prop=
"notPassNum"
label=
"质检未通过数量"
>
<el-input
disabled
v-model=
"editForm.notPassNum"
></el-input>
<el-input
v-model=
"editForm.notPassNum"
disabled
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
prop=
"lanshouName"
label=
"收货人"
>
<el-form-item
prop=
"lanshouName"
label=
"收货人"
>
<el-input
disabled
v-model=
"editForm.lanshouName"
></el-input>
<el-input
v-model=
"editForm.lanshouName"
disabled
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
prop=
"lanshouPhone"
label=
"收货人电话"
>
<el-form-item
prop=
"lanshouPhone"
label=
"收货人电话"
>
<el-input
disabled
v-model=
"editForm.lanshouPhone"
></el-input>
<el-input
v-model=
"editForm.lanshouPhone"
disabled
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
prop=
"lanshouRegion"
label=
"揽收区域"
>
<el-form-item
prop=
"lanshouRegion"
label=
"揽收区域"
>
<el-input
disabled
v-model=
"editForm.lanshouRegion"
></el-input>
<el-input
v-model=
"editForm.lanshouRegion"
disabled
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
prop=
"lanshouAddress"
label=
"揽收地址"
>
<el-form-item
prop=
"lanshouAddress"
label=
"揽收地址"
>
<el-input
disabled
v-model=
"editForm.lanshouAddress"
></el-input>
<el-input
v-model=
"editForm.lanshouAddress"
disabled
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
prop=
"lanshouPost"
label=
"揽收邮编"
>
<el-form-item
prop=
"lanshouPost"
label=
"揽收邮编"
>
<el-input
disabled
v-model=
"editForm.lanshouPost"
></el-input>
<el-input
v-model=
"editForm.lanshouPost"
disabled
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
prop=
"passNum"
label=
"质检通过数量"
>
<el-form-item
prop=
"passNum"
label=
"质检通过数量"
>
<el-input
v-model=
"editForm.passNum"
></el-input>
<el-input
v-model=
"editForm.passNum"
></el-input>
...
@@ -353,27 +353,32 @@
...
@@ -353,27 +353,32 @@
</el-form>
</el-form>
<
template
#
footer
>
<
template
#
footer
>
<el-button
@
click=
"dialogVisible=false"
>
取消
</el-button>
<el-button
@
click=
"dialogVisible=false"
>
取消
</el-button>
<el-button
@
click=
"submitData"
type=
"primary
"
>
确认
</el-button>
<el-button
type=
"primary"
@
click=
"submitData
"
>
确认
</el-button>
</
template
>
</
template
>
</ElDialog>
</ElDialog>
</template>
</template>
<
script
setup
lang=
"ts"
>
<
script
setup
lang=
"ts"
>
import
{
ElMessage
,
ElTree
}
from
'element-plus'
import
{
ElMessage
,
ElTree
,
TableColumnCtx
}
from
'element-plus'
import
splitDiv
from
'@/components/splitDiv/splitDiv.vue'
import
splitDiv
from
'@/components/splitDiv/splitDiv.vue'
interface
Tree
{
interface
Tree
{
label
:
string
label
:
string
count
?:
number
count
?:
number
children
:
any
[],
children
?:
Tree
[],
id
:
number
|
string
id
:
number
|
string
}
}
interface
Log
{
createTime
:
string
description
:
string
}
import
{
import
{
AccountStatementNote
,
AccountStatementNote
,
}
from
'@/types/api/deliveryNote'
}
from
'@/types/api/deliveryNote'
import
{
ElTable
}
from
'element-plus'
import
usePageList
from
'@/utils/hooks/usePageList'
import
usePageList
from
'@/utils/hooks/usePageList'
import
{
useValue
}
from
'@/utils/hooks/useValue'
import
{
useValue
}
from
'@/utils/hooks/useValue'
import
{
import
{
...
@@ -385,6 +390,12 @@ import { ref, onMounted, watch, nextTick } from 'vue'
...
@@ -385,6 +390,12 @@ import { ref, onMounted, watch, nextTick } from 'vue'
import
{
showError
}
from
'@/utils/ui'
import
{
showError
}
from
'@/utils/ui'
import
'element-plus/dist/index.css'
import
'element-plus/dist/index.css'
import
{
CountStatus
}
from
'@/types/api/order.ts'
interface
SummaryMethodProps
<
T
=
AccountStatementNote
>
{
columns
:
TableColumnCtx
<
T
>
[]
data
:
T
[]
}
const
treeData
=
ref
<
Tree
[]
>
([
const
treeData
=
ref
<
Tree
[]
>
([
{
{
...
@@ -394,25 +405,25 @@ const treeData = ref<Tree[]>([
...
@@ -394,25 +405,25 @@ const treeData = ref<Tree[]>([
{
{
label
:
'草稿箱'
,
label
:
'草稿箱'
,
id
:
0
,
id
:
0
,
children
:
[]
children
:
[],
},
},
{
{
label
:
'待确认'
,
label
:
'待确认'
,
id
:
1
,
id
:
1
,
children
:
[]
children
:
[],
},
},
{
{
label
:
'待付款'
,
label
:
'待付款'
,
id
:
2
,
id
:
2
,
children
:
[]
children
:
[],
},
{
},
{
label
:
'已付款'
,
label
:
'已付款'
,
id
:
3
,
id
:
3
,
children
:
[]
children
:
[],
},
{
},
{
label
:
'归档'
,
label
:
'归档'
,
id
:
4
,
id
:
4
,
children
:
[]
children
:
[],
},
},
],
],
},
},
...
@@ -424,9 +435,9 @@ const dateRange = ref<string[]>([])
...
@@ -424,9 +435,9 @@ const dateRange = ref<string[]>([])
const
selections
=
ref
<
AccountStatementNote
[]
>
([])
const
selections
=
ref
<
AccountStatementNote
[]
>
([])
const
detailList
=
ref
<
AccountStatementNote
[]
>
([])
const
detailList
=
ref
<
AccountStatementNote
[]
>
([])
const
tabsValue
=
ref
<
string
>
(
'0'
)
const
tabsValue
=
ref
<
string
>
(
'0'
)
const
singleTableRef
=
ref
<
any
>
(
null
)
const
singleTableRef
=
ref
<
InstanceType
<
typeof
ElTable
>>
(
)
const
currentRow
=
ref
<
AccountStatementNote
|
null
>
(
null
)
const
currentRow
=
ref
<
AccountStatementNote
|
null
>
(
null
)
const
logList
=
ref
<
any
[]
>
([])
const
logList
=
ref
<
Log
[]
>
([])
const
nodeId
=
ref
<
number
|
string
>
(
'-1'
)
const
nodeId
=
ref
<
number
|
string
>
(
'-1'
)
...
@@ -436,6 +447,7 @@ const treeRef = ref<InstanceType<typeof ElTree>>()
...
@@ -436,6 +447,7 @@ const treeRef = ref<InstanceType<typeof ElTree>>()
const
editForm
=
ref
<
AccountStatementNote
>
({
const
editForm
=
ref
<
AccountStatementNote
>
({
billNumber
:
''
,
billNumber
:
''
,
lanshouAddress
:
''
,
lanshouAddress
:
''
,
shipmentId
:
''
,
totalPrice
:
''
,
totalPrice
:
''
,
shipmentNum
:
''
,
shipmentNum
:
''
,
passNum
:
''
,
passNum
:
''
,
...
@@ -455,7 +467,7 @@ const {
...
@@ -455,7 +467,7 @@ const {
onPageSizeChange
:
handleSizeChange
,
onPageSizeChange
:
handleSizeChange
,
}
=
usePageList
({
}
=
usePageList
({
statistics
:
true
,
statistics
:
true
,
query
:
(
page
,
pageSize
)
=>
customJomallReconciliation
(
query
:
(
page
,
pageSize
)
=>
(
customJomallReconciliation
(
{
{
...
searchForm
.
value
,
...
searchForm
.
value
,
status
:
nodeId
.
value
===
'-1'
?
null
:
nodeId
.
value
,
status
:
nodeId
.
value
===
'-1'
?
null
:
nodeId
.
value
,
...
@@ -464,20 +476,19 @@ const {
...
@@ -464,20 +476,19 @@ const {
},
},
page
,
page
,
pageSize
,
pageSize
,
).
then
((
res
)
=>
res
.
data
),
).
then
((
res
)
=>
res
.
data
)
as
never
)
,
})
})
onMounted
(()
=>
{
onMounted
(()
=>
{
(
treeRef
as
any
).
value
.
setCurrentKey
(
nodeId
.
value
,
true
)
treeRef
.
value
!
.
setCurrentKey
(
nodeId
.
value
,
true
)
})
})
const
dialogVisible
=
ref
<
boolean
>
(
false
)
const
dialogVisible
=
ref
<
boolean
>
(
false
)
const
getTreeNum
=
async
()
=>
{
const
getTreeNum
=
async
()
=>
{
le
t
res
=
await
getReconciliationAmount
()
cons
t
res
=
await
getReconciliationAmount
()
let
data
:
any
=
res
.
data
treeData
.
value
=
[{
treeData
.
value
=
[{
label
:
'全部'
,
label
:
'全部'
,
id
:
'-1'
,
id
:
'-1'
,
...
@@ -502,22 +513,20 @@ const getTreeNum = async () => {
...
@@ -502,22 +513,20 @@ const getTreeNum = async () => {
},
},
],
],
}]
}]
nextTick
(()
=>
{
await
nextTick
(()
=>
{
(
treeRef
as
any
).
value
.
setCurrentKey
(
nodeId
.
value
,
true
)
treeRef
.
value
!
.
setCurrentKey
(
nodeId
.
value
,
true
)
})
})
treeData
.
value
.
forEach
((
el
)
=>
{
treeData
.
value
.
forEach
((
el
)
=>
{
if
(
!
el
.
children
)
{
if
(
!
el
.
children
)
{
el
.
children
=
[]
el
.
children
=
[]
}
}
el
.
children
.
forEach
((
it
)
=>
{
el
.
children
.
forEach
((
it
)
=>
{
it
.
count
=
0
it
.
count
=
0
})
})
})
treeData
.
value
.
forEach
((
el
)
=>
{
el
.
children
.
forEach
((
it
)
=>
{
el
.
children
.
forEach
((
it
)
=>
{
data
.
forEach
((
item
:
any
)
=>
{
res
.
data
.
forEach
((
item
:
CountStatus
)
=>
{
if
(
it
.
id
===
item
.
status
)
{
if
(
it
.
id
===
item
.
status
)
{
it
[
'count'
]
=
item
.
count
it
[
'count'
]
=
item
.
count
}
}
...
@@ -527,9 +536,9 @@ const getTreeNum = async () => {
...
@@ -527,9 +536,9 @@ const getTreeNum = async () => {
}
}
})
})
})
})
treeData
.
value
[
0
].
label
=
''
treeData
.
value
[
0
].
label
=
''
treeData
.
value
[
0
].
label
=
'全部'
+
(
data
.
find
((
el
:
any
)
=>
el
.
totalSum
)
?
`(
${
data
.
find
((
el
:
any
)
=>
el
.
totalSum
).
totalSum
}
)`
:
'(0)'
)
treeData
.
value
[
0
].
label
=
'全部'
+
(
res
.
data
.
find
((
el
:
CountStatus
)
=>
el
.
totalSum
)
?
`(
${
res
.
data
.
find
((
el
:
CountStatus
)
=>
el
.
totalSum
)
!
.
totalSum
}
)`
:
'(0)'
)
console
.
log
(
treeData
.
value
)
}
}
const
onEditOrder
=
async
(
item
:
AccountStatementNote
)
=>
{
const
onEditOrder
=
async
(
item
:
AccountStatementNote
)
=>
{
try
{
try
{
...
@@ -562,7 +571,7 @@ const submitData = async () => {
...
@@ -562,7 +571,7 @@ const submitData = async () => {
showError
(
e
)
showError
(
e
)
}
}
}
}
const
rowClick
=
(
row
:
any
)
=>
{
const
rowClick
=
(
row
:
AccountStatementNote
)
=>
{
currentRow
.
value
=
row
currentRow
.
value
=
row
tabsValue
.
value
=
'0'
tabsValue
.
value
=
'0'
tabsClick
(
tabsValue
.
value
)
tabsClick
(
tabsValue
.
value
)
...
@@ -571,35 +580,35 @@ const rowClick = (row:any) => {
...
@@ -571,35 +580,35 @@ const rowClick = (row:any) => {
const
tabsClick
=
async
(
name
:
string
)
=>
{
const
tabsClick
=
async
(
name
:
string
)
=>
{
if
(
!
currentRow
.
value
)
return
if
(
!
currentRow
.
value
)
return
if
(
name
===
'0'
)
{
if
(
name
===
'0'
)
{
let
{
data
}
=
await
getShipmentDetailsById
((
currentRow
.
value
as
any
)
.
shipmentId
)
const
{
data
}
=
await
getShipmentDetailsById
(
currentRow
.
value
!
.
shipmentId
)
detailList
.
value
=
data
detailList
.
value
=
data
}
else
if
(
name
===
'1'
)
{
}
else
if
(
name
===
'1'
)
{
await
logOrder
(
currentRow
.
value
)
await
logOrder
(
currentRow
.
value
)
}
}
}
}
const
handleSelectionChange
=
(
v
:
any
)
=>
{
const
handleSelectionChange
=
(
v
:
AccountStatementNote
[]
)
=>
{
selections
.
value
=
v
selections
.
value
=
v
}
}
const
getSummaries
=
(
data
:
any
)
=>
{
const
getSummaries
=
(
data
:
SummaryMethodProps
)
=>
{
le
t
columns
=
data
.
columns
cons
t
columns
=
data
.
columns
let
sums
:
any
[]
=
[]
const
sums
:
string
[]
=
[]
columns
.
forEach
((
column
:
any
,
index
:
number
)
=>
{
columns
.
forEach
((
column
,
index
)
=>
{
console
.
log
(
column
)
console
.
log
(
column
)
if
(
index
===
0
)
{
if
(
index
===
0
)
{
sums
[
index
]
=
'统计'
sums
[
index
]
=
'统计'
}
}
if
(
index
===
4
)
{
if
(
index
===
4
)
{
sums
[
index
]
=
totalData
[
'sumNotPassNum'
]
sums
[
index
]
=
String
(
totalData
.
value
[
'sumNotPassNum'
])
}
}
if
(
index
===
5
)
{
if
(
index
===
5
)
{
sums
[
index
]
=
totalData
[
'sumShipmentNum'
]
sums
[
index
]
=
String
(
totalData
.
value
[
'sumShipmentNum'
])
}
}
if
(
index
===
6
)
{
if
(
index
===
6
)
{
sums
[
index
]
=
totalData
[
'sumPassNum'
]
sums
[
index
]
=
String
(
totalData
.
value
[
'sumPassNum'
])
}
}
if
(
index
===
7
)
{
if
(
index
===
7
)
{
sums
[
index
]
=
totalData
[
'sumTotalPrice'
]
sums
[
index
]
=
String
(
totalData
.
value
[
'sumTotalPrice'
])
}
}
})
})
return
sums
return
sums
...
@@ -625,7 +634,7 @@ watch(() => tableData.value, () => {
...
@@ -625,7 +634,7 @@ watch(() => tableData.value, () => {
if
(
tableData
.
value
&&
tableData
.
value
.
length
>
0
)
{
if
(
tableData
.
value
&&
tableData
.
value
.
length
>
0
)
{
if
(
singleTableRef
.
value
)
{
if
(
singleTableRef
.
value
)
{
singleTableRef
.
value
!
.
setCurrentRow
(
tableData
.
value
[
0
])
singleTableRef
.
value
!
.
setCurrentRow
(
tableData
.
value
[
0
])
currentRow
.
value
=
tableData
.
value
[
0
]
currentRow
.
value
=
(
tableData
.
value
as
never
)
[
0
]
}
}
}
else
{
}
else
{
detailList
.
value
=
[]
detailList
.
value
=
[]
...
...
src/views/order/index.vue
View file @
a925ab80
<
template
>
<
template
>
<div
class=
"card flex-column h-100 overflow-hidden"
>
<div
class=
"card flex-column h-100 overflow-hidden"
>
<split-div
size=
"10"
>
<template
#
top
>
<div
class=
"header-filter"
>
<div
class=
"header-filter"
>
<div
class=
"header-filter-form"
>
<div
class=
"header-filter-form"
>
<ElForm
:model=
"searchForm"
size=
"default"
inline
>
<ElForm
:model=
"searchForm"
size=
"default"
inline
>
...
@@ -8,7 +10,7 @@
...
@@ -8,7 +10,7 @@
v-model=
"searchForm.mainSku"
v-model=
"searchForm.mainSku"
placeholder=
" SKU"
placeholder=
" SKU"
clearable
clearable
style=
"width: 16
0px"
style=
"width: 13
0px"
@
blur=
"searchForm.mainSku = searchForm.mainSku.trim()"
@
blur=
"searchForm.mainSku = searchForm.mainSku.trim()"
></ElInput>
></ElInput>
</ElFormItem>
</ElFormItem>
...
@@ -17,7 +19,7 @@
...
@@ -17,7 +19,7 @@
v-model=
"searchForm.endProductId"
v-model=
"searchForm.endProductId"
placeholder=
"请输入成品ID"
placeholder=
"请输入成品ID"
clearable
clearable
style=
"width: 16
0px"
style=
"width: 13
0px"
@
blur=
"searchForm.endProductId = searchForm.endProductId.trim()"
@
blur=
"searchForm.endProductId = searchForm.endProductId.trim()"
></ElInput>
></ElInput>
</ElFormItem>
</ElFormItem>
...
@@ -26,7 +28,7 @@
...
@@ -26,7 +28,7 @@
v-model=
"searchForm.subOrderNumber"
v-model=
"searchForm.subOrderNumber"
placeholder=
"生产单号"
placeholder=
"生产单号"
clearable
clearable
style=
"width: 16
0px"
style=
"width: 13
0px"
@
blur=
"
@
blur=
"
searchForm.subOrderNumber = searchForm.subOrderNumber.trim()
searchForm.subOrderNumber = searchForm.subOrderNumber.trim()
"
"
...
@@ -37,7 +39,7 @@
...
@@ -37,7 +39,7 @@
v-model=
"searchForm.orderNumber"
v-model=
"searchForm.orderNumber"
placeholder=
"订单号"
placeholder=
"订单号"
clearable
clearable
style=
"width: 16
0px"
style=
"width: 13
0px"
@
blur=
"searchForm.orderNumber = searchForm.orderNumber.trim()"
@
blur=
"searchForm.orderNumber = searchForm.orderNumber.trim()"
></ElInput>
></ElInput>
</ElFormItem>
</ElFormItem>
...
@@ -46,7 +48,7 @@
...
@@ -46,7 +48,7 @@
v-model=
"searchForm.shopNumber"
v-model=
"searchForm.shopNumber"
placeholder=
"店铺单号"
placeholder=
"店铺单号"
clearable
clearable
style=
"width: 16
0px"
style=
"width: 13
0px"
@
blur=
"searchForm.shopNumber = searchForm.shopNumber.trim()"
@
blur=
"searchForm.shopNumber = searchForm.shopNumber.trim()"
></ElInput>
></ElInput>
</ElFormItem>
</ElFormItem>
...
@@ -55,7 +57,7 @@
...
@@ -55,7 +57,7 @@
v-model=
"searchForm.internalMemo"
v-model=
"searchForm.internalMemo"
placeholder=
"内部标签"
placeholder=
"内部标签"
clearable
clearable
style=
"width: 16
0px"
style=
"width: 13
0px"
@
blur=
"searchForm.internalMemo = searchForm.internalMemo.trim()"
@
blur=
"searchForm.internalMemo = searchForm.internalMemo.trim()"
></ElInput>
></ElInput>
</ElFormItem>
</ElFormItem>
...
@@ -64,7 +66,7 @@
...
@@ -64,7 +66,7 @@
v-model=
"searchForm.logisticsTracking"
v-model=
"searchForm.logisticsTracking"
placeholder=
"物流跟踪号"
placeholder=
"物流跟踪号"
clearable
clearable
style=
"width: 16
0px"
style=
"width: 13
0px"
@
blur=
"
@
blur=
"
searchForm.logisticsTracking =
searchForm.logisticsTracking =
searchForm.logisticsTracking.trim()
searchForm.logisticsTracking.trim()
...
@@ -76,7 +78,7 @@
...
@@ -76,7 +78,7 @@
v-model=
"searchForm.billNumber"
v-model=
"searchForm.billNumber"
placeholder=
"发货单号"
placeholder=
"发货单号"
clearable
clearable
style=
"width: 16
0px"
style=
"width: 13
0px"
@
blur=
"searchForm.billNumber = searchForm.billNumber.trim()"
@
blur=
"searchForm.billNumber = searchForm.billNumber.trim()"
></ElInput>
></ElInput>
</ElFormItem>
</ElFormItem>
...
@@ -85,7 +87,7 @@
...
@@ -85,7 +87,7 @@
v-model=
"searchForm.lanshouName"
v-model=
"searchForm.lanshouName"
placeholder=
"收货人"
placeholder=
"收货人"
clearable
clearable
style=
"width: 16
0px"
style=
"width: 13
0px"
></ElInput>
></ElInput>
</ElFormItem>
</ElFormItem>
<ElFormItem>
<ElFormItem>
...
@@ -111,6 +113,8 @@
...
@@ -111,6 +113,8 @@
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<
/template
>
<
template
#
bottom
>
<
div
class
=
"order-content flex-1 flex-column overflow-hidden"
>
<
div
class
=
"order-content flex-1 flex-column overflow-hidden"
>
<!--
操作按钮
-->
<!--
操作按钮
-->
<
div
class
=
"order-operate-btn"
>
<
div
class
=
"order-operate-btn"
>
...
@@ -597,11 +601,13 @@
...
@@ -597,11 +601,13 @@
background
background
layout
=
"total, sizes, prev, pager, next, jumper"
layout
=
"total, sizes, prev, pager, next, jumper"
:
total
=
"total"
:
total
=
"total"
style
=
"margin: 10px auto 0
; text-align: right"
style
=
"margin: 10px auto 10px
; text-align: right"
@
size
-
change
=
"handleSizeChange"
@
size
-
change
=
"handleSizeChange"
@
current
-
change
=
"handleCurrentChange"
@
current
-
change
=
"handleCurrentChange"
/>
/>
<
/div
>
<
/div
>
<
/template
>
<
/split-div
>
<
/div
>
<
/div
>
<
el
-
dialog
<
el
-
dialog
v
-
model
=
"shipmentVisible"
v
-
model
=
"shipmentVisible"
...
@@ -721,7 +727,7 @@
...
@@ -721,7 +727,7 @@
<
el
-
dialog
<
el
-
dialog
v
-
model
=
"quarantineVisible"
v
-
model
=
"quarantineVisible"
title
=
"质检"
title
=
"质检"
width
=
"
1600px
"
width
=
"
80%
"
:
close
-
on
-
click
-
modal
=
"false"
:
close
-
on
-
click
-
modal
=
"false"
@
opened
=
"onQaDialogOpened"
@
opened
=
"onQaDialogOpened"
@
close
=
"onClose"
@
close
=
"onClose"
...
@@ -763,6 +769,7 @@
...
@@ -763,6 +769,7 @@
<
/template
>
<
/template
>
<
script
setup
lang
=
"ts"
>
<
script
setup
lang
=
"ts"
>
import
Shipment
from
'./Shipment.vue'
import
Shipment
from
'./Shipment.vue'
import
SplitDiv
from
'@/components/splitDiv/splitDiv.vue'
import
type
{
import
type
{
SearchForm
,
SearchForm
,
SpanMethodProps
,
SpanMethodProps
,
...
@@ -1243,6 +1250,7 @@ const onChangeCurrentRow = (item: ProductList) => {
...
@@ -1243,6 +1250,7 @@ const onChangeCurrentRow = (item: ProductList) => {
.
order
-
content
{
.
order
-
content
{
margin
-
top
:
10
px
;
margin
-
top
:
10
px
;
height
:
100
%
;
}
}
.
order
-
list
{
.
order
-
list
{
...
...
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