Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
W
WX_h5
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
godwithdh
WX_h5
Commits
1d57409a
Commit
1d57409a
authored
Jan 10, 2020
by
godwithdh
Browse files
Options
Browse Files
Download
Plain Diff
往来单位
parents
d345fbb8
e63b5c7a
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
853 additions
and
204 deletions
+853
-204
Table.vue
src/components/Table.vue
+33
-3
host.js
src/libs/host.js
+2
-2
index.js
src/router/index.js
+2
-2
kanban.js
src/store/modules/tiip/kanban.js
+17
-3
index.vue
src/view/shopVersion/form/index.vue
+28
-5
index.vue
src/view/shopVersion/form/liabilities/index.vue
+0
-1
inventory.vue
src/view/tiip/chart/inventory.vue
+14
-4
abnormal.vue
src/view/tiip/kanban/abnormal.vue
+17
-8
index.vue
src/view/tiip/kanban/index.vue
+1
-1
operateCustomDetail.vue
src/view/tiip/kanban/operateCustomDetail.vue
+279
-46
operateDetail.vue
src/view/tiip/kanban/operateDetail.vue
+399
-63
operateSaleDetail.vue
src/view/tiip/kanban/operateSaleDetail.vue
+27
-4
index.vue
src/view/tiip/orderDetails/index.vue
+33
-61
index.vue
src/view/tiip/profitAnalysis/index.vue
+1
-1
No files found.
src/components/Table.vue
View file @
1d57409a
...
...
@@ -145,7 +145,7 @@
'background':index % 2 == 0 ? tableStyle.complexTrBgColor : tableStyle.singleTrBgColor,
'text-overflow': x.ellipsis ? 'ellipsis' : 'none',
'overflow': x.ellipsis ? 'hidden' : 'none',
'white-space': x.ellipsis ? 'no
rmal
' : 'none',
'white-space': x.ellipsis ? 'no
wrap
' : 'none',
'position': x.fixed ? 'sticky' : 'static',
'left':x.fixed ? x.fixedLeftWidth : 'none',
'border-left':tableStyle.tbodyTdBorder ? tableStyle.tbodyTrBorderBottom : '0px',
...
...
@@ -154,15 +154,18 @@
'word-break': 'break-all'
}"
@click="clickTd(i,index)"
v-html="item[x.field]"
>
<RENDER
v-if=
"x.render"
:item=
"item"
:index=
"index"
:columns=
"x"
></RENDER>
<span
v-if=
"!x.render"
v-html=
"item[x.field]"
></span>
</td>
</tr>
<slot></slot>
</div>
<div
class=
"_tfoot"
ref=
"tfoot"
@
scroll=
"scrollTFoot"
v-if=
"showFooter & footerData.length > 0"
>
<tr
v-for=
"(x,i) in footerData"
:key=
"i"
:style=
"
{'width':'100%','min-width':tableStyle.width}">
<tr
v-for=
"(x,i) in footerData"
:key=
"i"
:style=
"
{'width':'100%','min-width':tableStyle.width
,'min-height':'60px'
}">
<td
v-for=
"(item,index) in columns"
:key=
"index"
...
...
@@ -172,11 +175,13 @@
'min-width':item.width,
'background':tableStyle.theadBgColor,
'position': item.fixed ? 'sticky' : 'static',
'min-height':'60px',
'left':item.fixed ? item.fixedLeftWidth : 'none',
'border-top':tableStyle.theadTdBorder ? tableStyle.tbodyTrBorderBottom : '0px',
'border-left':tableStyle.theadTdBorder ? tableStyle.tbodyTrBorderBottom : '0px',
'border-bottom':tableStyle.theadTdBorder ? tableStyle.tbodyTrBorderBottom : '0px',
'border-right':(index == columns.length - 1
&&
tableStyle.theadTdBorder) ? tableStyle.tbodyTrBorderBottom : '0px',
'text-decoration':'none'
}"
v-html="x[item.field]"
>
...
...
@@ -193,6 +198,31 @@
<
script
>
import
Util
from
'@/libs/util.js'
import
Vue
from
'vue'
;
Vue
.
component
(
'RENDER'
,
{
render
:
function
(
createElement
)
{
let
self
=
this
;
return
this
.
columns
.
render
(
createElement
,{
row
:
this
.
item
,
index
:
this
.
index
});
},
props
:
{
columns
:
{
type
:
Object
,
required
:
true
},
item
:{
type
:
Object
,
required
:
true
},
index
:{
type
:
Number
,
required
:
true
}
}
})
export
default
{
name
:
'Table'
,
...
...
src/libs/host.js
View file @
1d57409a
...
...
@@ -12,9 +12,9 @@ function urlFun(name){
/**
* 默认公司
*/
// default:`http://192.168.4.2
:5001`,
default
:
`http://192.168.4.34
:5001`
,
// default:`https://weixin.huansi.net/apiproxy/huansi/hszh_HSFabricTradeTest`,
default
:
`https://weixin.huansi.net/apiproxy/huansi/service/proxy/
${
userID
}
`
,
//
default:`https://weixin.huansi.net/apiproxy/huansi/service/proxy/${userID}`,
/**
* 基本地址
...
...
src/router/index.js
View file @
1d57409a
...
...
@@ -239,11 +239,11 @@ let tipRoutes = [
path
:
'/main'
,
children
:[
{
path
:
'/tiip/orderDetails/list
/:type
'
,
path
:
'/tiip/orderDetails/list'
,
name
:
'orderDetailsIndex'
,
component
:()
=>
import
(
'@/view/tiip/orderDetails/index.vue'
),
meta
:{
title
:
'
采购信息
'
title
:
'
订单详情
'
}
},
]
...
...
src/store/modules/tiip/kanban.js
View file @
1d57409a
...
...
@@ -10,9 +10,14 @@ const obj = {
},
orderItem
:{},
warehouseDetail
:{},
customerItem
:{}
customerItem
:{},
kanban
:{},
orderDetail
:{}
},
mutations
:
{
saveKanban
(
state
,
data
){
state
.
kanban
[
data
.
type
]
=
data
.
item
;
},
saveKanbanHdr
(
state
,
data
){
state
.
hdr
=
data
;
},
...
...
@@ -24,9 +29,15 @@ const obj = {
},
saveCustomerItem
(
state
,
data
){
state
.
customerItem
=
data
;
}
},
saveKanbanOrderDetail
(
state
,
data
){
state
.
orderDetail
=
data
;
},
},
actions
:
{
saveKanban
({
commit
},
data
){
commit
(
'saveKanban'
,
data
);
},
saveKanbanHdr
({
commit
},
data
){
commit
(
'saveKanbanHdr'
,
data
);
},
...
...
@@ -38,7 +49,10 @@ const obj = {
},
saveCustomerItem
({
commit
},
data
){
commit
(
'saveCustomerItem'
,
data
);
}
},
saveKanbanOrderDetail
({
commit
},
data
){
commit
(
'saveKanbanOrderDetail'
,
data
);
},
}
};
...
...
src/view/shopVersion/form/index.vue
View file @
1d57409a
...
...
@@ -124,15 +124,18 @@
</div>
<div
class=
"TAB"
>
<button-tab
class=
"buttonTab"
:value=
"activeBtn"
>
<button-tab-item
@
on-item-click=
"
situation='salesStatistics'
"
>
销售统计
</button-tab-item>
<button-tab-item
@
on-item-click=
"
situation='empAna'
"
>
员工排行
</button-tab-item>
<button-tab-item
@
on-item-click=
"
situation='liabilities'
"
>
负债分析
</button-tab-item>
<button-tab-item
@
on-item-click=
"
situation='custom'
"
>
账单分析
</button-tab-item>
<button-tab-item
@
on-item-click=
"
situation='income'
"
>
收支分析
</button-tab-item>
<button-tab-item
@
on-item-click=
"
changeTab
"
>
销售统计
</button-tab-item>
<button-tab-item
@
on-item-click=
"
changeTab
"
>
员工排行
</button-tab-item>
<button-tab-item
@
on-item-click=
"
changeTab
"
>
负债分析
</button-tab-item>
<button-tab-item
@
on-item-click=
"
changeTab
"
>
账单分析
</button-tab-item>
<button-tab-item
@
on-item-click=
"
changeTab
"
>
收支分析
</button-tab-item>
</button-tab>
</div>
<div
class=
"CONTENT"
>
<keep-alive>
<component
:is=
"situation"
/>
</keep-alive>
</div>
</div>
</
template
>
...
...
@@ -172,6 +175,26 @@ export default {
await
this
.
getData
();
},
methods
:{
changeTab
(
index
){
switch
(
index
){
case
0
:
this
.
situation
=
'salesStatistics'
;
break
;
case
1
:
this
.
situation
=
'empAna'
;
break
;
case
2
:
this
.
situation
=
'liabilities'
;
break
;
case
3
:
this
.
situation
=
'custom'
;
break
;
case
4
:
this
.
situation
=
'income'
;
break
;
}
},
async
getData
(){
let
res
=
await
this
.
request
(
'getCipTotalamount'
,{
data
:{}
...
...
src/view/shopVersion/form/liabilities/index.vue
View file @
1d57409a
...
...
@@ -140,7 +140,6 @@ export default {
await
this
.
getData
();
},
async
activated
(){
},
methods
:{
async
getData
(){
...
...
src/view/tiip/chart/inventory.vue
View file @
1d57409a
...
...
@@ -74,15 +74,15 @@
<div
class=
"iCard"
v-for=
"(item,index) in chartData"
:key=
"index"
@
click=
"routerToWarehouseDetail(item)"
>
<div
class=
"warehouse"
:style=
"
{'color':'white'}">
{{
item
.
sStoreName
}}
</div>
<div
class=
"TITLE"
>
<span>
单位
</span>
<span>
总匹数
</span>
<span>
总数量
</span>
<span>
总匹数
</span>
<span>
单位
</span>
</div>
<div
class=
"unit"
v-for=
"(v,i) in item.child"
:key=
"i"
>
<div
class=
"ITEM"
>
<span>
{{
v
.
sUnit
}}
</span>
<span
style=
"color:#8a8a8a;"
>
{{
Number
(
v
.
nStockPieceQty
).
toLocaleString
()
}}
</span>
<span
style=
"color:#8a8a8a;"
>
{{
Number
(
v
.
nQty
).
toLocaleString
()
}}
</span>
<span
style=
"color:#8a8a8a;"
>
{{
Number
(
v
.
nStockPieceQty
).
toLocaleString
()
}}
</span>
<span>
{{
v
.
sUnit
}}
</span>
</div>
</div>
</div>
...
...
@@ -191,6 +191,9 @@ export default {
await
this
.
renderChart
();
})
},
activated
(){
document
.
getElementsByClassName
(
'content'
)[
0
].
scrollTo
(
0
,
this
.
$store
.
state
.
kanban
.
kanban
.
inventory
.
scrollTop
)
},
methods
:{
renderResize
()
{
// 判断横竖屏
...
...
@@ -339,6 +342,13 @@ export default {
// if(res.hasOwnProperty('set2')) this.list = res.set2;
},
routerToWarehouseDetail
(
item
){
this
.
$store
.
dispatch
(
'saveKanban'
,{
type
:
'inventory'
,
item
:{
scrollTop
:
document
.
getElementsByClassName
(
'content'
)[
0
].
scrollTop
}
});
this
.
$store
.
dispatch
(
'saveWarehouseDetail'
,
item
);
this
.
$router
.
push
({
name
:
'tiipChartWarehouseDetail'
});
}
...
...
src/view/tiip/kanban/abnormal.vue
View file @
1d57409a
...
...
@@ -35,13 +35,13 @@
<div
class=
"abnormal"
>
<table
cellspacing=
"0"
>
<tr>
<td
style=
"width:100px;"
>
<td
style=
"width:100px;"
@
click=
"routerPushOperateDetail('销售退货')"
>
<div>
销售退货
</div>
</td>
<td>
<div>
{{
Number
(
value
[
'销售退货'
]
||
0
).
toLocaleString
()
}}
</div>
</td>
<td
style=
"width:100px;"
>
<td
style=
"width:100px;"
@
click=
"routerPushOperateDetail('采购退货')"
>
<div>
采购退货
</div>
</td>
<td>
...
...
@@ -49,13 +49,13 @@
</td>
</tr>
<tr>
<td>
<td
@
click=
"routerPushOperateDetail('加工回修')"
>
<div>
加工回修
</div>
</td>
<td>
<div>
{{
Number
(
value
[
'加工回修'
]
||
0
).
toLocaleString
()
}}
</div>
</td>
<td>
<td
@
click=
"routerPushOperateDetail('疵品汇总')"
>
<div>
疵品数量
</div>
</td>
<td>
...
...
@@ -80,13 +80,13 @@
</td>
</tr>
<tr>
<td>
<td
@
click=
"routerPushOperateDetail('供应商索赔')"
>
<div>
供应商赔款
</div>
</td>
<td>
<div>
{{
Number
(
value
[
'供应商索赔'
]
||
0
).
toLocaleString
()
}}
</div>
</td>
<td>
<td
@
click=
"routerPushOperateDetail('客户索赔')"
>
<div>
客户赔款
</div>
</td>
<td>
...
...
@@ -94,13 +94,13 @@
</td>
</tr>
<tr>
<td>
<td
@
click=
"routerPushOperateDetail('超期应收')"
>
<div>
超期应收额
</div>
</td>
<td>
<div>
{{
Number
(
value
[
'超期应收'
]
||
0
).
toLocaleString
()
}}
</div>
</td>
<td>
<td
@
click=
"routerPushOperateDetail('超期应付')"
>
<div>
超期应付额
</div>
</td>
<td>
...
...
@@ -155,6 +155,15 @@ export default {
})
}
},
routerPushOperateDetail
(
type
){
let
data
=
{};
data
.
sType
=
type
;
data
.
begin_date
=
util
.
dateFormat
(
this
.
start
,
"yyyy-MM-dd"
);
data
.
end_date
=
(
this
.
end
?
util
.
dateFormat
(
this
.
end
,
"yyyy-MM-dd"
):
util
.
dateFormat
(
new
Date
,
"yyyy-MM-dd"
))
+
' 23:59'
;
this
.
$store
.
dispatch
(
'saveKanbanHdr'
,
data
);
this
.
$store
.
dispatch
(
'saveRefresh'
,
true
);
this
.
$router
.
push
({
name
:
'tiipOperateDetail'
,
type
:
type
})
}
},
}
</
script
>
src/view/tiip/kanban/index.vue
View file @
1d57409a
...
...
@@ -124,7 +124,7 @@
<span
:class=
"
{active:situation=='capital'}" @click="situation='capital'">资金概况
</span>
<span
:class=
"
{active:situation=='Finance'}" @click="situation='Finance'">财务概况
</span>
<span
:class=
"
{active:situation=='abnormal'}" @click="situation='abnormal'">异常预警
</span>
<span
:class=
"
{active:situation=='tiipChartInventory'}" @click="situation='tiipChartInventory'">库存
情况
</span>
<span
:class=
"
{active:situation=='tiipChartInventory'}" @click="situation='tiipChartInventory'">库存
资金
</span>
</div>
<div
class=
"content"
>
<component
:is=
"situation"
:dateMode=
"dateMode"
:start=
"DateValue[0]"
:end=
"DateValue[1]"
/>
...
...
src/view/tiip/kanban/operateCustomDetail.vue
View file @
1d57409a
This diff is collapsed.
Click to expand it.
src/view/tiip/kanban/operateDetail.vue
View file @
1d57409a
This diff is collapsed.
Click to expand it.
src/view/tiip/kanban/operateSaleDetail.vue
View file @
1d57409a
...
...
@@ -62,6 +62,8 @@ export default {
tbodyTrBorderBottom
:
'1px solid #dbe9f8'
,
width
:
'100%'
},
page
:
1
,
per_page
:
50
}
},
computed
:{
...
...
@@ -74,6 +76,8 @@ export default {
window
.
d
=
this
;
},
async
activated
(){
this
.
page
=
1
;
this
.
per_page
=
50
;
await
this
.
getData
();
this
.
global
.
$off
(
'clickTd'
);
...
...
@@ -82,14 +86,23 @@ export default {
this
.
$store
.
dispatch
(
'saveCustomerItem'
,
this
.
list
[
res
.
trIndex
]);
this
.
$router
.
push
({
name
:
'tiipOperateCustomDetail'
,
params
:{
type
:
'custom'
}})
})
this
.
global
.
$off
(
'scrollTable'
);
this
.
global
.
$on
(
'scrollTable'
,
async
()
=>
{
this
.
getData
(
true
)
})
},
methods
:{
async
getData
(){
async
getData
(
flag
){
if
(
this
.
per_page
<
50
){
this
.
$vux
.
toast
.
text
(
'已加载全部数据!'
,
'middle'
)
return
false
;
}
let
postData
=
[
{
key
:
"url"
,
value
:
'Operation gai sType-customer-sales'
},
{
key
:
"sType"
,
value
:
this
.
hdr
.
sType
},
{
key
:
"begin_date"
,
value
:
this
.
hdr
.
begin_date
},
{
key
:
"end_date"
,
value
:
this
.
hdr
.
end_date
}
{
key
:
"end_date"
,
value
:
this
.
hdr
.
end_date
}
,
]
if
(
this
.
hdr
.
sType
==
'采购'
||
this
.
hdr
.
sType
==
'加工'
){
postData
.
push
({
key
:
"upbFollowerGUID"
,
value
:
this
.
orderItem
.
upbFollowerGUID
});
...
...
@@ -101,7 +114,10 @@ export default {
let
res
=
await
this
.
request
(
'getBoss'
,{
data
:
postData
,
params
:{},
params
:{
page
:
this
.
page
,
per_page
:
this
.
per_page
},
},
'加载中'
,{})
res
.
map
(
x
=>
{
if
(
this
.
hdr
.
sType
==
'采购'
||
this
.
hdr
.
sType
==
'加工'
){
...
...
@@ -123,8 +139,15 @@ export default {
}
x
.
nAmountHTML
=
`<div><span style="color:#339966;">
${
x
.
nAmount
}
</span></div>`
;
})
if
(
flag
){
this
.
list
.
splice
(
this
.
list
.
length
-
1
,
1
);
this
.
list
=
this
.
list
.
concat
(
res
);
}
else
{
this
.
list
=
res
;
}
this
.
page
++
;
this
.
per_page
=
res
.
length
-
1
;
}
},
components
:{
customerTable
,
...
...
src/view/tiip/orderDetails/index.vue
View file @
1d57409a
...
...
@@ -101,11 +101,11 @@
<div
v-for=
"(v2,i2) in v1.child"
:key=
'i2'
>
<div
v-for=
"(v3,i3) in v2.child"
:key=
"i3"
>
<div>
<span>
{{
v3
.
sFieldCaption
}}
</span>
<span>
{{
v3
.
key
}}
</span>
<div>
<div>
<div>
{{
DATA
[
v3
.
sFieldName
]
}}
{{
v3
.
value
}}
</div>
</div>
</div>
...
...
@@ -132,76 +132,48 @@ export default {
},
computed
:{
...
mapState
({
orderDetail
:
state
=>
state
.
kanban
.
orderDetail
})
},
async
mounted
(){
window
.
d
=
this
;
},
async
activated
(){
await
this
.
getDetail
();
this
.
filterFields
(
hdrFields
,
this
.
list
,
'采购基本合同'
);
this
.
list
=
this
.
filterFields
();
},
methods
:{
async
getDetail
(){
let
apiURL
;
switch
(
this
.
$route
.
params
.
type
){
case
'pbcontract'
:
apiURL
=
'getTiipPbcontract'
break
;
case
'pay'
:
apiURL
=
'getTiipFipayable'
break
;
case
'receive'
:
apiURL
=
'getTiipFireceivable'
break
;
case
'fabric'
:
case
'inspectionReport'
:
apiURL
=
'getTiipFabric'
break
;
default
:
break
;
}
let
hdrResult
=
await
this
.
request
(
apiURL
,{
data
:[
{
key
:
'url'
,
value
:
this
.
$route
.
params
.
type
==
'inspectionReport'
?
'Inspection Report'
:
'hdr'
}
]
},
true
);
hdrResult
.
map
(
x
=>
{
for
(
let
y
in
x
){
if
(
isNaN
(
x
[
y
])
&&!
isNaN
(
Date
.
parse
(
x
[
y
]))){
x
[
y
]
=
Util
.
dateFormat
(
x
[
y
],
'yyyy-MM-dd'
)
}
}
})
this
.
DATA
=
hdrResult
[
0
];
},
filterFields
(
fields
,
arr
,
title
){
arr
.
push
({
title
:
title
,
child
:[]});
let
data
=
arr
[
arr
.
length
-
1
];
for
(
let
y
of
hdrFields
){
let
flag
=
false
;
if
(
data
.
child
.
length
<=
0
){
data
.
child
.
push
({
rowCount
:
y
.
rowCount
,
filterFields
(){
var
data
=
Util
.
deepClone
(
this
.
orderDetail
);
var
arr
=
[];
for
(
let
a
in
data
){
for
(
let
b
of
data
[
a
]){
arr
.
push
({
title
:
b
.
sType
,
child
:[]});
let
item
=
arr
[
arr
.
length
-
1
];
if
(
item
.
child
.
length
<=
0
){
item
.
child
.
push
({
child
:[]
})
}
for
(
let
x
of
data
.
child
){
if
(
x
.
child
.
length
!=
x
.
rowCount
&&
x
.
rowCount
==
y
.
rowCount
){
for
(
let
c
in
b
){
var
flag
=
false
;
for
(
let
d
of
item
.
child
){
if
(
c
!=
'sType'
){
if
(
d
.
child
.
length
<
2
){
d
.
child
.
push
({
key
:
c
,
value
:
b
[
c
]
})
flag
=
true
;
x
.
child
.
push
(
y
);
}
}
if
(
!
flag
){
data
.
child
.
push
({
rowCount
:
y
.
rowCount
,
child
:[
y
]
})
}
if
(
!
flag
&&
c
!=
'sType'
){
item
.
child
.
push
({
child
:[{
key
:
c
,
value
:
b
[
c
]}]})
}
}
}
}
return
arr
;
}
},
components
:{
...
...
src/view/tiip/profitAnalysis/index.vue
View file @
1d57409a
...
...
@@ -109,7 +109,7 @@ export default {
singleTrBgColor
:
'#eef4fe'
,
theadTdBorder
:
false
,
tbodyTdBorder
:
false
,
tbodyHeight
:
'calc(100vh - 1
6
0px)'
,
tbodyHeight
:
'calc(100vh - 1
8
0px)'
,
tbodyTrBorderBottom
:
'1px solid #dbe9f8'
},
status
:[],
...
...
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