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
b261b7fb
Commit
b261b7fb
authored
Jan 06, 2020
by
张锡奇
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
upload
parent
7a1680e5
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
717 additions
and
158 deletions
+717
-158
Table.vue
src/components/Table.vue
+30
-2
host.js
src/libs/host.js
+1
-1
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
+245
-38
operateDetail.vue
src/view/tiip/kanban/operateDetail.vue
+329
-32
index.vue
src/view/tiip/orderDetails/index.vue
+33
-61
No files found.
src/components/Table.vue
View file @
b261b7fb
...
@@ -145,7 +145,7 @@
...
@@ -145,7 +145,7 @@
'background':index % 2 == 0 ? tableStyle.complexTrBgColor : tableStyle.singleTrBgColor,
'background':index % 2 == 0 ? tableStyle.complexTrBgColor : tableStyle.singleTrBgColor,
'text-overflow': x.ellipsis ? 'ellipsis' : 'none',
'text-overflow': x.ellipsis ? 'ellipsis' : 'none',
'overflow': x.ellipsis ? 'hidden' : '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',
'position': x.fixed ? 'sticky' : 'static',
'left':x.fixed ? x.fixedLeftWidth : 'none',
'left':x.fixed ? x.fixedLeftWidth : 'none',
'border-left':tableStyle.tbodyTdBorder ? tableStyle.tbodyTrBorderBottom : '0px',
'border-left':tableStyle.tbodyTdBorder ? tableStyle.tbodyTrBorderBottom : '0px',
...
@@ -154,10 +154,13 @@
...
@@ -154,10 +154,13 @@
'word-break': 'break-all'
'word-break': 'break-all'
}"
}"
@click="clickTd(i,index)"
@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>
</td>
</tr>
</tr>
<slot></slot>
<slot></slot>
</div>
</div>
...
@@ -193,6 +196,31 @@
...
@@ -193,6 +196,31 @@
<
script
>
<
script
>
import
Util
from
'@/libs/util.js'
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
{
export
default
{
name
:
'Table'
,
name
:
'Table'
,
...
...
src/libs/host.js
View file @
b261b7fb
...
@@ -12,7 +12,7 @@ function urlFun(name){
...
@@ -12,7 +12,7 @@ function urlFun(name){
/**
/**
* 默认公司
* 默认公司
*/
*/
default
:
`http://192.168.4.
2
:5001`
,
default
:
`http://192.168.4.
31
:5001`
,
// default:`https://weixin.huansi.net/apiproxy/huansi/hszh_HSFabricTradeTest`,
// 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 @
b261b7fb
...
@@ -231,11 +231,11 @@ let tipRoutes = [
...
@@ -231,11 +231,11 @@ let tipRoutes = [
path
:
'/main'
,
path
:
'/main'
,
children
:[
children
:[
{
{
path
:
'/tiip/orderDetails/list
/:type
'
,
path
:
'/tiip/orderDetails/list'
,
name
:
'orderDetailsIndex'
,
name
:
'orderDetailsIndex'
,
component
:()
=>
import
(
'@/view/tiip/orderDetails/index.vue'
),
component
:()
=>
import
(
'@/view/tiip/orderDetails/index.vue'
),
meta
:{
meta
:{
title
:
'
采购信息
'
title
:
'
订单详情
'
}
}
},
},
]
]
...
...
src/store/modules/tiip/kanban.js
View file @
b261b7fb
...
@@ -10,9 +10,14 @@ const obj = {
...
@@ -10,9 +10,14 @@ const obj = {
},
},
orderItem
:{},
orderItem
:{},
warehouseDetail
:{},
warehouseDetail
:{},
customerItem
:{}
customerItem
:{},
kanban
:{},
orderDetail
:{}
},
},
mutations
:
{
mutations
:
{
saveKanban
(
state
,
data
){
state
.
kanban
[
data
.
type
]
=
data
.
item
;
},
saveKanbanHdr
(
state
,
data
){
saveKanbanHdr
(
state
,
data
){
state
.
hdr
=
data
;
state
.
hdr
=
data
;
},
},
...
@@ -24,9 +29,15 @@ const obj = {
...
@@ -24,9 +29,15 @@ const obj = {
},
},
saveCustomerItem
(
state
,
data
){
saveCustomerItem
(
state
,
data
){
state
.
customerItem
=
data
;
state
.
customerItem
=
data
;
}
},
saveKanbanOrderDetail
(
state
,
data
){
state
.
orderDetail
=
data
;
},
},
},
actions
:
{
actions
:
{
saveKanban
({
commit
},
data
){
commit
(
'saveKanban'
,
data
);
},
saveKanbanHdr
({
commit
},
data
){
saveKanbanHdr
({
commit
},
data
){
commit
(
'saveKanbanHdr'
,
data
);
commit
(
'saveKanbanHdr'
,
data
);
},
},
...
@@ -38,7 +49,10 @@ const obj = {
...
@@ -38,7 +49,10 @@ const obj = {
},
},
saveCustomerItem
({
commit
},
data
){
saveCustomerItem
({
commit
},
data
){
commit
(
'saveCustomerItem'
,
data
);
commit
(
'saveCustomerItem'
,
data
);
}
},
saveKanbanOrderDetail
({
commit
},
data
){
commit
(
'saveKanbanOrderDetail'
,
data
);
},
}
}
};
};
...
...
src/view/shopVersion/form/index.vue
View file @
b261b7fb
...
@@ -124,15 +124,18 @@
...
@@ -124,15 +124,18 @@
</div>
</div>
<div
class=
"TAB"
>
<div
class=
"TAB"
>
<button-tab
class=
"buttonTab"
:value=
"activeBtn"
>
<button-tab
class=
"buttonTab"
:value=
"activeBtn"
>
<button-tab-item
@
on-item-click=
"
situation='salesStatistics'
"
>
销售统计
</button-tab-item>
<button-tab-item
@
on-item-click=
"
changeTab
"
>
销售统计
</button-tab-item>
<button-tab-item
@
on-item-click=
"
situation='empAna'
"
>
员工排行
</button-tab-item>
<button-tab-item
@
on-item-click=
"
changeTab
"
>
员工排行
</button-tab-item>
<button-tab-item
@
on-item-click=
"
situation='liabilities'
"
>
负债分析
</button-tab-item>
<button-tab-item
@
on-item-click=
"
changeTab
"
>
负债分析
</button-tab-item>
<button-tab-item
@
on-item-click=
"
situation='custom'
"
>
账单分析
</button-tab-item>
<button-tab-item
@
on-item-click=
"
changeTab
"
>
账单分析
</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>
</button-tab>
</div>
</div>
<div
class=
"CONTENT"
>
<div
class=
"CONTENT"
>
<keep-alive>
<component
:is=
"situation"
/>
<component
:is=
"situation"
/>
</keep-alive>
</div>
</div>
</div>
</div>
</
template
>
</
template
>
...
@@ -172,6 +175,26 @@ export default {
...
@@ -172,6 +175,26 @@ export default {
await
this
.
getData
();
await
this
.
getData
();
},
},
methods
:{
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
(){
async
getData
(){
let
res
=
await
this
.
request
(
'getCipTotalamount'
,{
let
res
=
await
this
.
request
(
'getCipTotalamount'
,{
data
:{}
data
:{}
...
...
src/view/shopVersion/form/liabilities/index.vue
View file @
b261b7fb
...
@@ -140,7 +140,6 @@ export default {
...
@@ -140,7 +140,6 @@ export default {
await
this
.
getData
();
await
this
.
getData
();
},
},
async
activated
(){
async
activated
(){
},
},
methods
:{
methods
:{
async
getData
(){
async
getData
(){
...
...
src/view/tiip/chart/inventory.vue
View file @
b261b7fb
...
@@ -74,15 +74,15 @@
...
@@ -74,15 +74,15 @@
<div
class=
"iCard"
v-for=
"(item,index) in chartData"
:key=
"index"
@
click=
"routerToWarehouseDetail(item)"
>
<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=
"warehouse"
:style=
"
{'color':'white'}">
{{
item
.
sStoreName
}}
</div>
<div
class=
"TITLE"
>
<div
class=
"TITLE"
>
<span>
单位
</span>
<span>
总匹数
</span>
<span>
总数量
</span>
<span>
总数量
</span>
<span>
总匹数
</span>
<span>
单位
</span>
</div>
</div>
<div
class=
"unit"
v-for=
"(v,i) in item.child"
:key=
"i"
>
<div
class=
"unit"
v-for=
"(v,i) in item.child"
:key=
"i"
>
<div
class=
"ITEM"
>
<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
.
nQty
).
toLocaleString
()
}}
</span>
<span
style=
"color:#8a8a8a;"
>
{{
Number
(
v
.
nStockPieceQty
).
toLocaleString
()
}}
</span>
<span>
{{
v
.
sUnit
}}
</span>
</div>
</div>
</div>
</div>
</div>
</div>
...
@@ -191,6 +191,9 @@ export default {
...
@@ -191,6 +191,9 @@ export default {
await
this
.
renderChart
();
await
this
.
renderChart
();
})
})
},
},
activated
(){
document
.
getElementsByClassName
(
'content'
)[
0
].
scrollTo
(
0
,
this
.
$store
.
state
.
kanban
.
kanban
.
inventory
.
scrollTop
)
},
methods
:{
methods
:{
renderResize
()
{
renderResize
()
{
// 判断横竖屏
// 判断横竖屏
...
@@ -339,6 +342,13 @@ export default {
...
@@ -339,6 +342,13 @@ export default {
// if(res.hasOwnProperty('set2')) this.list = res.set2;
// if(res.hasOwnProperty('set2')) this.list = res.set2;
},
},
routerToWarehouseDetail
(
item
){
routerToWarehouseDetail
(
item
){
this
.
$store
.
dispatch
(
'saveKanban'
,{
type
:
'inventory'
,
item
:{
scrollTop
:
document
.
getElementsByClassName
(
'content'
)[
0
].
scrollTop
}
});
this
.
$store
.
dispatch
(
'saveWarehouseDetail'
,
item
);
this
.
$store
.
dispatch
(
'saveWarehouseDetail'
,
item
);
this
.
$router
.
push
({
name
:
'tiipChartWarehouseDetail'
});
this
.
$router
.
push
({
name
:
'tiipChartWarehouseDetail'
});
}
}
...
...
src/view/tiip/kanban/abnormal.vue
View file @
b261b7fb
...
@@ -35,13 +35,13 @@
...
@@ -35,13 +35,13 @@
<div
class=
"abnormal"
>
<div
class=
"abnormal"
>
<table
cellspacing=
"0"
>
<table
cellspacing=
"0"
>
<tr>
<tr>
<td
style=
"width:100px;"
>
<td
style=
"width:100px;"
@
click=
"routerPushOperateDetail('销售退货')"
>
<div>
销售退货
</div>
<div>
销售退货
</div>
</td>
</td>
<td>
<td>
<div>
{{
Number
(
value
[
'销售退货'
]
||
0
).
toLocaleString
()
}}
</div>
<div>
{{
Number
(
value
[
'销售退货'
]
||
0
).
toLocaleString
()
}}
</div>
</td>
</td>
<td
style=
"width:100px;"
>
<td
style=
"width:100px;"
@
click=
"routerPushOperateDetail('采购退货')"
>
<div>
采购退货
</div>
<div>
采购退货
</div>
</td>
</td>
<td>
<td>
...
@@ -49,13 +49,13 @@
...
@@ -49,13 +49,13 @@
</td>
</td>
</tr>
</tr>
<tr>
<tr>
<td>
<td
@
click=
"routerPushOperateDetail('加工回修')"
>
<div>
加工回修
</div>
<div>
加工回修
</div>
</td>
</td>
<td>
<td>
<div>
{{
Number
(
value
[
'加工回修'
]
||
0
).
toLocaleString
()
}}
</div>
<div>
{{
Number
(
value
[
'加工回修'
]
||
0
).
toLocaleString
()
}}
</div>
</td>
</td>
<td>
<td
@
click=
"routerPushOperateDetail('疵品汇总')"
>
<div>
疵品数量
</div>
<div>
疵品数量
</div>
</td>
</td>
<td>
<td>
...
@@ -80,13 +80,13 @@
...
@@ -80,13 +80,13 @@
</td>
</td>
</tr>
</tr>
<tr>
<tr>
<td>
<td
@
click=
"routerPushOperateDetail('供应商索赔')"
>
<div>
供应商赔款
</div>
<div>
供应商赔款
</div>
</td>
</td>
<td>
<td>
<div>
{{
Number
(
value
[
'供应商索赔'
]
||
0
).
toLocaleString
()
}}
</div>
<div>
{{
Number
(
value
[
'供应商索赔'
]
||
0
).
toLocaleString
()
}}
</div>
</td>
</td>
<td>
<td
@
click=
"routerPushOperateDetail('客户索赔')"
>
<div>
客户赔款
</div>
<div>
客户赔款
</div>
</td>
</td>
<td>
<td>
...
@@ -94,13 +94,13 @@
...
@@ -94,13 +94,13 @@
</td>
</td>
</tr>
</tr>
<tr>
<tr>
<td>
<td
@
click=
"routerPushOperateDetail('超期应收')"
>
<div>
超期应收额
</div>
<div>
超期应收额
</div>
</td>
</td>
<td>
<td>
<div>
{{
Number
(
value
[
'超期应收'
]
||
0
).
toLocaleString
()
}}
</div>
<div>
{{
Number
(
value
[
'超期应收'
]
||
0
).
toLocaleString
()
}}
</div>
</td>
</td>
<td>
<td
@
click=
"routerPushOperateDetail('超期应付')"
>
<div>
超期应付额
</div>
<div>
超期应付额
</div>
</td>
</td>
<td>
<td>
...
@@ -155,6 +155,15 @@ export default {
...
@@ -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
>
</
script
>
src/view/tiip/kanban/index.vue
View file @
b261b7fb
...
@@ -124,7 +124,7 @@
...
@@ -124,7 +124,7 @@
<span
:class=
"
{active:situation=='capital'}" @click="situation='capital'">资金概况
</span>
<span
:class=
"
{active:situation=='capital'}" @click="situation='capital'">资金概况
</span>
<span
:class=
"
{active:situation=='Finance'}" @click="situation='Finance'">财务概况
</span>
<span
:class=
"
{active:situation=='Finance'}" @click="situation='Finance'">财务概况
</span>
<span
:class=
"
{active:situation=='abnormal'}" @click="situation='abnormal'">异常预警
</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>
<div
class=
"content"
>
<div
class=
"content"
>
<component
:is=
"situation"
:dateMode=
"dateMode"
:start=
"DateValue[0]"
:end=
"DateValue[1]"
/>
<component
:is=
"situation"
:dateMode=
"dateMode"
:start=
"DateValue[0]"
:end=
"DateValue[1]"
/>
...
...
src/view/tiip/kanban/operateCustomDetail.vue
View file @
b261b7fb
This diff is collapsed.
Click to expand it.
src/view/tiip/kanban/operateDetail.vue
View file @
b261b7fb
This diff is collapsed.
Click to expand it.
src/view/tiip/orderDetails/index.vue
View file @
b261b7fb
...
@@ -101,11 +101,11 @@
...
@@ -101,11 +101,11 @@
<div
v-for=
"(v2,i2) in v1.child"
:key=
'i2'
>
<div
v-for=
"(v2,i2) in v1.child"
:key=
'i2'
>
<div
v-for=
"(v3,i3) in v2.child"
:key=
"i3"
>
<div
v-for=
"(v3,i3) in v2.child"
:key=
"i3"
>
<div>
<div>
<span>
{{
v3
.
sFieldCaption
}}
</span>
<span>
{{
v3
.
key
}}
</span>
<div>
<div>
<div>
<div>
<div>
<div>
{{
DATA
[
v3
.
sFieldName
]
}}
{{
v3
.
value
}}
</div>
</div>
</div>
</div>
</div>
</div>
...
@@ -132,76 +132,48 @@ export default {
...
@@ -132,76 +132,48 @@ export default {
},
},
computed
:{
computed
:{
...
mapState
({
...
mapState
({
orderDetail
:
state
=>
state
.
kanban
.
orderDetail
})
})
},
},
async
mounted
(){
async
mounted
(){
window
.
d
=
this
;
window
.
d
=
this
;
},
},
async
activated
(){
async
activated
(){
await
this
.
getDetail
();
this
.
list
=
this
.
filterFields
();
this
.
filterFields
(
hdrFields
,
this
.
list
,
'采购基本合同'
);
},
},
methods
:{
methods
:{
async
getDetail
(){
filterFields
(){
let
apiURL
;
var
data
=
Util
.
deepClone
(
this
.
orderDetail
);
switch
(
this
.
$route
.
params
.
type
){
var
arr
=
[];
case
'pbcontract'
:
for
(
let
a
in
data
){
apiURL
=
'getTiipPbcontract'
for
(
let
b
of
data
[
a
]){
break
;
arr
.
push
({
title
:
b
.
sType
,
child
:[]});
case
'pay'
:
let
item
=
arr
[
arr
.
length
-
1
];
apiURL
=
'getTiipFipayable'
if
(
item
.
child
.
length
<=
0
){
break
;
item
.
child
.
push
({
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
,
child
:[]
child
:[]
})
})
}
}
for
(
let
x
of
data
.
child
){
for
(
let
c
in
b
){
if
(
x
.
child
.
length
!=
x
.
rowCount
&&
x
.
rowCount
==
y
.
rowCount
){
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
;
flag
=
true
;
x
.
child
.
push
(
y
);
}
}
}
}
}
if
(
!
flag
){
if
(
!
flag
&&
c
!=
'sType'
){
data
.
child
.
push
({
item
.
child
.
push
({
child
:[{
key
:
c
,
value
:
b
[
c
]}]})
rowCount
:
y
.
rowCount
,
}
child
:[
y
]
}
})
}
}
}
}
return
arr
;
}
}
},
},
components
:{
components
:{
...
...
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