Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
W
WebPublic
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
前端开发小组
WebPublic
Commits
db53adf8
提交
db53adf8
authored
5月 09, 2020
作者:
徐立
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'master' of
http://scjoyedu.eicp.net:9121/front-team/webPublic
上级
79cb4c87
e2d3ff0b
隐藏空白字符变更
内嵌
并排
正在显示
16 个修改的文件
包含
1308 行增加
和
15 行删除
+1308
-15
Services.js
Services.js
+1
-1
DraftEditor.js
one_stop_public/App/DraftEditor.js
+1
-1
ExportCurrentInfo.js
one_stop_public/App/ExportCurrentInfo.js
+1
-1
ExportInfo.js
one_stop_public/App/ExportInfo.js
+1
-1
ImportUtil.js
one_stop_public/App/ImportUtil.js
+1
-1
MyBlockRender.js
one_stop_public/App/MyBlockRender.js
+1
-1
SearchInfo.js
one_stop_public/App/SearchInfo.js
+1
-1
StatisticsInfo.js
one_stop_public/App/StatisticsInfo.js
+1
-1
index.jsx
one_stop_public/Signature/index.jsx
+1
-1
config.js
one_stop_public/config.js
+43
-0
ImgUploadCom.jsx
one_stop_public/libs/ImgUploadCom.jsx
+1
-1
UploadCom.js
one_stop_public/libs/UploadCom.js
+1
-1
TreeListNew.js
one_stop_public/libs/formList/TreeListNew.js
+1251
-0
index.js
one_stop_public/libs/formList/index.js
+1
-3
index.jsx
one_stop_public/tableCompon/index.jsx
+1
-1
queryConfig.js
one_stop_public/utils/queryConfig.js
+1
-0
没有找到文件。
Services.js
浏览文件 @
db53adf8
import
{
uaaRequest
}
from
'./one_stop_public/utils/request'
;
import
{
uaaRequest
}
from
'./one_stop_public/utils/request'
;
import
config
from
'@/
config
/config'
;
import
config
from
'@/
webPublic/one_stop_public
/config'
;
import
{
message
}
from
'antd'
;
import
{
message
}
from
'antd'
;
import
{
setOneStopConfig
}
from
'@/webPublic/zyd_public/utils/utils'
;
import
{
setOneStopConfig
}
from
'@/webPublic/zyd_public/utils/utils'
;
...
...
one_stop_public/App/DraftEditor.js
浏览文件 @
db53adf8
...
@@ -15,7 +15,7 @@ import pic from '../assets/专家经验系统切图/智能报告/pic.png'
...
@@ -15,7 +15,7 @@ import pic from '../assets/专家经验系统切图/智能报告/pic.png'
import
video
from
'../assets/专家经验系统切图/智能报告/video.png'
import
video
from
'../assets/专家经验系统切图/智能报告/video.png'
import
sum
from
'../assets/专家经验系统切图/智能报告/sum.png'
import
sum
from
'../assets/专家经验系统切图/智能报告/sum.png'
import
attrs
from
'../assets/专家经验系统切图/智能报告/attr.png'
import
attrs
from
'../assets/专家经验系统切图/智能报告/attr.png'
import
config
from
'
../config
/config'
import
config
from
'
@/webPublic/one_stop_public
/config'
import
MyBlockRender
from
'./MyBlockRender'
import
MyBlockRender
from
'./MyBlockRender'
import
{
changeToDraftState2
,
changeFromDraftState2
}
from
'../utils/myutils'
import
{
changeToDraftState2
,
changeFromDraftState2
}
from
'../utils/myutils'
import
{
import
{
...
...
one_stop_public/App/ExportCurrentInfo.js
浏览文件 @
db53adf8
...
@@ -4,7 +4,7 @@ import ReactDOM from 'react-dom';
...
@@ -4,7 +4,7 @@ import ReactDOM from 'react-dom';
import
{
Select
,
Button
,
Modal
,
Input
,
Transfer
,
Row
,
Col
,
Form
,
message
,
notification
}
from
'antd'
;
import
{
Select
,
Button
,
Modal
,
Input
,
Transfer
,
Row
,
Col
,
Form
,
message
,
notification
}
from
'antd'
;
import
{
connect
}
from
'dva'
;
import
{
connect
}
from
'dva'
;
import
{
getToken
}
from
'../utils/token'
import
{
getToken
}
from
'../utils/token'
import
config
from
'
../config
/config'
;
import
config
from
'
@/webPublic/one_stop_public
/config'
;
import
QueryItem
from
'./QueryItem'
;
import
QueryItem
from
'./QueryItem'
;
import
OrderItem
from
'./OrderItem'
;
import
OrderItem
from
'./OrderItem'
;
...
...
one_stop_public/App/ExportInfo.js
浏览文件 @
db53adf8
...
@@ -4,7 +4,7 @@ import ReactDOM from 'react-dom';
...
@@ -4,7 +4,7 @@ import ReactDOM from 'react-dom';
import
{
Select
,
Button
,
Modal
,
Input
,
Transfer
,
Row
,
Col
,
Form
,
message
,
notification
}
from
'antd'
;
import
{
Select
,
Button
,
Modal
,
Input
,
Transfer
,
Row
,
Col
,
Form
,
message
,
notification
}
from
'antd'
;
import
{
connect
}
from
'dva'
;
import
{
connect
}
from
'dva'
;
import
{
getToken
}
from
'../utils/token'
import
{
getToken
}
from
'../utils/token'
import
config
from
'
../config
/config'
;
import
config
from
'
@/webPublic/one_stop_public
/config'
;
import
QueryItem
from
'./QueryItem'
;
import
QueryItem
from
'./QueryItem'
;
import
OrderItem
from
'./OrderItem'
;
import
OrderItem
from
'./OrderItem'
;
...
...
one_stop_public/App/ImportUtil.js
浏览文件 @
db53adf8
...
@@ -13,7 +13,7 @@ import {
...
@@ -13,7 +13,7 @@ import {
import
styles
from
'./ImportUtil.less'
;
import
styles
from
'./ImportUtil.less'
;
import
ButtonDiy
from
'./ButtonDiy/ButtonDiy'
;
import
ButtonDiy
from
'./ButtonDiy/ButtonDiy'
;
import
{
exportExcel
}
from
'xlsx-oc'
import
{
exportExcel
}
from
'xlsx-oc'
import
config
from
'
../config
/config'
;
import
config
from
'
@/webPublic/one_stop_public
/config'
;
import
{
connect
}
from
'dva'
;
import
{
connect
}
from
'dva'
;
const
Step
=
Steps
.
Step
;
const
Step
=
Steps
.
Step
;
const
TabPane
=
Tabs
.
TabPane
;
const
TabPane
=
Tabs
.
TabPane
;
...
...
one_stop_public/App/MyBlockRender.js
浏览文件 @
db53adf8
import
{
Table
,
Popover
}
from
'antd'
;
import
{
Table
,
Popover
}
from
'antd'
;
import
config
from
'
../config
/config'
;
import
config
from
'
@/webPublic/one_stop_public
/config'
;
import
table
from
'../assets/专家经验系统切图/智能报告/table.png'
import
table
from
'../assets/专家经验系统切图/智能报告/table.png'
import
chart
from
'../assets/专家经验系统切图/智能报告/chart.png'
import
chart
from
'../assets/专家经验系统切图/智能报告/chart.png'
import
React
from
'react'
;
import
React
from
'react'
;
...
...
one_stop_public/App/SearchInfo.js
浏览文件 @
db53adf8
...
@@ -4,7 +4,7 @@ import ReactDOM from 'react-dom';
...
@@ -4,7 +4,7 @@ import ReactDOM from 'react-dom';
import
{
Select
,
Button
,
Modal
,
Input
,
Transfer
,
Row
,
Col
,
Form
,
message
,
notification
}
from
'antd'
;
import
{
Select
,
Button
,
Modal
,
Input
,
Transfer
,
Row
,
Col
,
Form
,
message
,
notification
}
from
'antd'
;
import
{
connect
}
from
'dva'
;
import
{
connect
}
from
'dva'
;
import
{
getToken
}
from
'../utils/token'
import
{
getToken
}
from
'../utils/token'
import
config
from
'
../config
/config'
;
import
config
from
'
@/webPublic/one_stop_public
/config'
;
import
QueryItem
from
'./QueryItem'
;
import
QueryItem
from
'./QueryItem'
;
import
OrderItem
from
'./OrderItem'
;
import
OrderItem
from
'./OrderItem'
;
...
...
one_stop_public/App/StatisticsInfo.js
浏览文件 @
db53adf8
...
@@ -3,7 +3,7 @@ import ReactDOM from 'react-dom';
...
@@ -3,7 +3,7 @@ import ReactDOM from 'react-dom';
import
{
Select
,
Button
,
Modal
,
Input
,
Table
,
Row
,
Col
,
Tag
,
Form
,
message
,
notification
}
from
'antd'
;
import
{
Select
,
Button
,
Modal
,
Input
,
Table
,
Row
,
Col
,
Tag
,
Form
,
message
,
notification
}
from
'antd'
;
import
{
connect
}
from
'dva'
;
import
{
connect
}
from
'dva'
;
import
{
getToken
}
from
'../utils/token'
import
{
getToken
}
from
'../utils/token'
import
config
from
'
../config
/config'
;
import
config
from
'
@/webPublic/one_stop_public
/config'
;
import
QueryItem
from
'./QueryItem'
;
import
QueryItem
from
'./QueryItem'
;
import
OrderItem
from
'./OrderItem'
;
import
OrderItem
from
'./OrderItem'
;
import
styles
from
'./Ability.css'
;
import
styles
from
'./Ability.css'
;
...
...
one_stop_public/Signature/index.jsx
浏览文件 @
db53adf8
...
@@ -7,7 +7,7 @@ import React, { Component } from 'react'
...
@@ -7,7 +7,7 @@ import React, { Component } from 'react'
import
SignatureCanvas
from
'react-signature-canvas'
import
SignatureCanvas
from
'react-signature-canvas'
// import Button from '@/components/NewButton';
// import Button from '@/components/NewButton';
import
{
message
,
Button
}
from
'antd'
;
import
{
message
,
Button
}
from
'antd'
;
import
config
from
'
../config
/config'
;
import
config
from
'
@/webPublic/one_stop_public
/config'
;
import
{
queryApiActionPath
}
from
"../utils/queryConfig"
;
import
{
queryApiActionPath
}
from
"../utils/queryConfig"
;
import
reqwest
from
'reqwest'
;
import
reqwest
from
'reqwest'
;
function
dataURLtoFile
(
dataurl
,
filename
)
{
function
dataURLtoFile
(
dataurl
,
filename
)
{
...
...
one_stop_public/config.js
0 → 100644
浏览文件 @
db53adf8
import
req
from
'@/utils/request'
;
// import dictMap from './dictMap';
import
{
queryApiActionPath
,
queryWsPath
}
from
"@/webPublic/one_stop_public/utils/queryConfig"
;
var
localMockHostPath
=
"http://rap2api.taobao.org/app/mock/230899"
;
var
localhostPath
=
queryApiActionPath
();
var
wsPath
=
queryWsPath
();
// 测试对接接口用地址不用时删除
let
csPath
=
"http://192.168.3.133:8080/expense"
;
const
prefix
=
"http://scjoyedu.eicp.net:7180/onestop/#"
async
function
request
(
data
)
{
return
req
(
`
${
data
.
url
}
`
,
{
method
:
'POST'
,
body
:
data
.
params
,
});
}
//var localhostPath = "http://zyd.cdzhiyong.com:51335"
const
config
=
{
// dictMap:dictMap,
httpServer
:
localhostPath
,
httpMockServer
:
localMockHostPath
,
prefixServer
:
localhostPath
+
prefix
,
rapFlag
:
true
,
onlinePath
:
'/transacApi/'
,
onlineImagePath
:
""
,
cs
:
csPath
,
img
:
csPath
+
"/upload"
,
rapImagePath
:
localhostPath
,
uploadUrl
:
localhostPath
+
"/upload"
,
websocketUrl
:
wsPath
!=
null
?
wsPath
:
localhostPath
.
replace
(
"http"
,
"ws"
)
+
"/websocket"
,
payUrl
:
localhostPath
+
"/createWixinPayCode"
,
checkPath
:
false
,
//mobileHost:"http://localhost:51335",
//mobileHost:"http://zyd.cdzhiyong.com:51335",
mobileUrl
:
prefix
+
"/mobile/GHHome"
,
mobileHost
:
"http://localhost:33333"
,
request
:
request
}
export
default
config
one_stop_public/libs/ImgUploadCom.jsx
浏览文件 @
db53adf8
import
React
from
'react'
import
React
from
'react'
import
{
Upload
,
message
}
from
'antd'
;
import
{
Upload
,
message
}
from
'antd'
;
import
config
from
'@/
config
/config'
import
config
from
'@/
webPublic/one_stop_public
/config'
export
default
class
ImgUploadCom
extends
React
.
Component
{
export
default
class
ImgUploadCom
extends
React
.
Component
{
constructor
(
props
){
constructor
(
props
){
super
(
props
)
super
(
props
)
...
...
one_stop_public/libs/UploadCom.js
浏览文件 @
db53adf8
import
React
from
'react'
import
React
from
'react'
import
{
Tree
,
Upload
,
Icon
,
Button
,
message
}
from
'antd'
;
import
{
Tree
,
Upload
,
Icon
,
Button
,
message
}
from
'antd'
;
import
{
queryApiActionPath
}
from
"../utils/queryConfig"
;
import
{
queryApiActionPath
}
from
"../utils/queryConfig"
;
import
config
from
'
../config
/config'
import
config
from
'
@/webPublic/one_stop_public
/config'
const
TreeNode
=
Tree
.
TreeNode
;
const
TreeNode
=
Tree
.
TreeNode
;
...
...
one_stop_public/libs/formList/TreeListNew.js
0 → 100644
浏览文件 @
db53adf8
import
React
,
{
Fragment
}
from
'react'
;
import
{
Button
,
Card
,
DatePicker
,
Divider
,
Table
,
Form
,
Row
,
Col
,
Input
,
InputNumber
,
message
,
Modal
,
Select
,
Tree
,
Popconfirm
,
Tooltip
,
Spin
}
from
'antd'
;
import
{
connect
}
from
'dva'
;
import
PageHeaderWrapper
from
'./PageHeaderWrapper'
;
import
styles
from
'./TableList.less'
;
import
StandardTable
from
'./StandardTable'
;
import
moment
from
'moment'
;
import
router
from
'umi/router'
;
import
ExportInfo
from
'../../App/ExportInfo'
;
import
ExportCurrentInfo
from
'../../App/ExportCurrentInfo'
;
import
StatisticsInfo
from
'../../App/StatisticsInfo'
;
import
ImportUtil
from
'../../App/ImportUtil'
;
import
SearchInfo
from
'../../App/SearchInfo'
;
import
{
Base16Encode
}
from
"../../Base16/index"
;
import
{
isEmpty
}
from
'lodash'
import
FilePreview
from
"@/webPublic/one_stop_public/filePreview"
;
import
{
queryApiActionPath
}
from
"@/webPublic/one_stop_public/utils/queryConfig"
;
import
UploadCom
from
"@/webPublic/one_stop_public/libs/UploadCom"
;
const
FormItem
=
Form
.
Item
;
let
AllWidth
=
0
;
// 表格总长度
const
{
RangePicker
}
=
DatePicker
;
const
text
=
[
'BINARY'
,
'BIT'
,
'BLOB'
,
'CHAR'
,
'GEOMETRY'
,
'GEOMETRYCOLLECTION'
,
'JSON'
,
'LINESTRING'
,
'LONGBLOB'
,
'LONGTEXT'
,
'MEDIUMBLOB'
,
'MEDIUMINT'
,
'MEDIUMTEXT'
,
'MULTILINESTRING'
,
'MULTIPOINT'
,
'MULTIPOLYGON'
,
'POINT'
,
'POLYGON'
,
'REAL'
,
'DECIMAL'
,
'ENUM'
,
'SET'
,
'TEXT'
,
'TINYBLOB'
,
'TIBYTEXT'
,
'VARBINARY'
,
'VARCHAR'
,
];
const
number
=
[
'BIGINT'
,
'DOUBLE'
,
'FLOAT'
,
'INT'
,
'INTEGER'
,
'NUMERIC'
,
'SMALLINT'
,
'TINYINT'
];
const
data
=
[
'DATE'
,
'DATETIME'
,
'TIME'
,
'TIMESTAMP'
,
'YEAR'
];
const
CreateForm
=
Form
.
create
()(
props
=>
{
const
{
modalVisible
,
form
,
handleAdd
,
formLoading
,
formData
,
isAdd
,
handleModalVisible
,
formItem
,
getItem
,
isView
}
=
props
;
//通过回调
const
okHandle
=
()
=>
{
form
.
validateFields
((
err
,
fieldsValue
)
=>
{
if
(
err
)
return
;
if
(
isView
){
handleModalVisible
();
return
;
}
formItem
.
map
((
item
,
index
)
=>
{
if
(
item
.
type
.
indexOf
(
'DATE'
)
>
-
1
)
{
for
(
let
d
in
fieldsValue
)
{
if
(
item
.
name
===
d
&&
fieldsValue
[
d
])
{
fieldsValue
[
d
]
=
fieldsValue
[
d
].
format
(
'YYYY-MM-DD HH:mm:ss'
);
}
}
}
});
let
params
=
{
...
fieldsValue
};
handleAdd
(
params
,
isAdd
);
});
};
//需要获取动态表单
return
(
<
Modal
width
=
"700px"
maskClosable
=
{
false
}
destroyOnClose
title
=
{
isView
?
"查看详情"
:(
isAdd
?
'新增'
:
'编辑'
)}
visible
=
{
modalVisible
}
footer
=
{
isView
?
null
:[
<
Button
key
=
"back"
onClick
=
{()
=>
handleModalVisible
()}
>
取消
<
/Button>
,
<
Button
key
=
"submit"
type
=
"primary"
onClick
=
{
okHandle
}
>
确定
<
/Button
>
]}
onOk
=
{
okHandle
}
onCancel
=
{()
=>
handleModalVisible
()}
>
{
formItem
.
map
((
item
,
index
)
=>
getItem
(
false
,
form
,
item
,
isAdd
,
formData
,
{
span
:
5
},
{
span
:
15
}))}
<
/Modal
>
);
});
@
connect
(({
formList
,
loading
})
=>
({
formList
,
loading
:
loading
.
models
.
formList
,
}))
@
Form
.
create
()
class
TreeList
extends
React
.
Component
{
state
=
{
data
:
{
list
:
[],
pagination
:
{},
},
treeData
:
[{
title
:
'根目录'
,
key
:
'0-0'
}],
isReady
:
false
,
parentName
:
"根节点"
,
parentId
:
null
,
selects
:[],
modalVisible
:
false
,
formData
:
null
,
formValues
:
{},
formItem
:
[],
objId
:
this
.
props
.
objId
||
(
this
.
props
.
location
?
this
.
props
.
location
.
state
.
id
:
null
),
isAdd
:
false
,
querys
:
[],
selectedRows
:
[],
primaryKey
:
null
,
options
:
{},
isTable
:
true
,
tableWidth
:
500
,
rights
:
this
.
props
.
rights
||
[],
columnRights
:[],
isReady
:
false
,
groups
:{},
showDiv
:
''
,
showMobileDiv
:
''
,
isView
:
false
};
columns
=
[];
getOptions
=
()
=>
{
const
refIds
=
[]
for
(
var
i
=
0
;
i
<
this
.
state
.
formItem
.
length
;
i
++
)
{
if
(
this
.
state
.
formItem
[
i
].
referenceObjId
!=
null
&&
this
.
state
.
options
[
this
.
state
.
formItem
[
i
].
id
+
''
]
==
null
)
{
refIds
.
push
(
datas
[
t
].
id
)
}
}
if
(
refIds
.
length
>
0
)
{
dispatch
({
type
:
'formList/getBatchOptions'
,
payload
:
{
ids
:
refIds
},
callback
:
(
options
)
=>
{
this
.
setState
({
options
:
{
...
this
.
state
.
options
,
...
options
}
})
}
});
}
}
modify
=
record
=>
{
// if (this.state.formItem.length < 10) {
this
.
getOptions
()
this
.
setState
({
formData
:
record
,
modalVisible
:
true
,
isAdd
:
false
,
isView
:
false
});
// } else {
// router.push({
// pathname: '/admin/ddl/dataObj/formEdit',
// state: {
// id: this.state.objId,
// recordId: record[this.state.primaryKey],
// recordKey: this.state.primaryKey,
// isAdd: false,
// isView:false
// },
// });
// }
};
view
=
record
=>
{
// if (this.state.formItem.length < 10) {
this
.
getOptions
()
this
.
setState
({
formData
:
record
,
modalVisible
:
true
,
isAdd
:
false
,
isView
:
true
});
// } else {
// router.push({
// pathname: '/admin/ddl/dataObj/formEdit',
// state: {
// id: this.state.objId,
// recordId: record[this.state.primaryKey],
// recordKey: this.state.primaryKey,
// isAdd: false,
// isView:true
// },
// });
// }
};
isJSON
=
(
str
)
=>
{
if
(
typeof
str
==
'string'
)
{
try
{
var
obj
=
JSON
.
parse
(
str
);
if
(
typeof
obj
==
'object'
&&
obj
)
{
return
true
;
}
else
{
return
false
;
}
}
catch
(
e
)
{
console
.
log
(
'error:'
+
str
+
'!!!'
+
e
);
return
false
;
}
}
console
.
log
(
'这不是个字符串'
)
}
delete
=
record
=>
{
//找出主键
let
Keys
=
{};
Keys
[
this
.
state
.
primaryKey
]
=
record
[
this
.
state
.
primaryKey
];
this
.
props
.
dispatch
({
type
:
'formList/delete'
,
payload
:
{
keys
:
JSON
.
stringify
(
Keys
),
objId
:
this
.
state
.
objId
},
callback
:
()
=>
{
this
.
getPage
();
},
});
};
viewProcess
=
record
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'formList/getAppId'
,
payload
:
{
code
:
record
.
process_biz_key
,
},
callback
:
(
data
)
=>
{
router
.
push
({
pathname
:
'/portal/serviceCentre/getdetail'
,
state
:
{
id
:
data
.
id
}})
},
});
};
/**
* 宽度自适应函数
*/
resize
=
(
e
)
=>
{
let
scrollWidth
=
document
.
documentElement
.
clientWidth
||
document
.
body
.
clientWidth
;
//可使宽度
let
showMobileDiv
=
scrollWidth
-
77
if
(
document
.
querySelector
(
'#previewDiv'
)){
// 预览模式
this
.
setState
({
showMobileDiv
:
document
.
querySelector
(
'#previewDiv'
).
clientWidth
-
77
})
}
else
{
this
.
setState
({
showMobileDiv
,
})
}
console
.
log
(
showMobileDiv
)
}
//渲染值
componentDidMount
()
{
const
{
dispatch
,
isFormCom
,
isSelect
,
callback
,
valueName
}
=
this
.
props
;
window
.
addEventListener
(
'resize'
,
this
.
resize
);
if
(
this
.
props
.
objCode
){
const
{
dispatch
,
objCode
,
sql
}
=
this
.
props
;
if
(
objCode
==
1
||
objCode
==
"1"
){
this
.
initColumn
();
}
else
{
dispatch
({
type
:
'DataObj/findByCode'
,
payload
:
{
objCode
:
this
.
props
.
objCode
},
callback
:
dataObj
=>
{
this
.
setState
({
objId
:
dataObj
.
id
,
isTable
:
data
.
isTable
},()
=>
{
dispatch
({
type
:
'DataRight/getUserRight'
,
payload
:
{
objId
:
this
.
state
.
objId
},
callback
:
data
=>
{
if
(
!
this
.
props
.
rights
){
this
.
setState
({
rights
:
data
});
}
dispatch
({
type
:
'DataRight/getUserColumnRight'
,
payload
:
{
objId
:
this
.
state
.
objId
},
callback
:
data
=>
{
this
.
setState
({
columnRights
:
data
});
this
.
initColumn
();
}
});
}
});
});
},
});
}
}
else
{
dispatch
({
type
:
'formList/getObjDetail'
,
payload
:
{
id
:
this
.
state
.
objId
},
callback
:
data
=>
{
this
.
setState
({
isTable
:
data
.
isTable
});
}
});
dispatch
({
type
:
'DataRight/getUserRight'
,
payload
:
{
objId
:
this
.
state
.
objId
},
callback
:
data
=>
{
if
(
!
this
.
props
.
rights
){
this
.
setState
({
rights
:
data
});
}
dispatch
({
type
:
'DataRight/getUserColumnRight'
,
payload
:
{
objId
:
this
.
state
.
objId
},
callback
:
data
=>
{
this
.
setState
({
columnRights
:
data
});
this
.
initColumn
();
}
});
}
});
}
}
/**
* 移除监听器
*/
componentWillUnmount
(){
window
.
removeEventListener
(
'resize'
,
this
.
resize
);
}
custom
=
this
.
props
.
value
?
Base16Encode
(
JSON
.
stringify
(
this
.
props
.
value
)):
null
componentWillReceiveProps
(
nextProps
){
const
b
=
nextProps
.
value
||
{}
const
a
=
this
.
props
.
value
||
{}
if
(
JSON
.
stringify
(
a
)
!=
JSON
.
stringify
(
b
)){
const
params
=
{
pageNo
:
1
,
pageSize
:
this
.
props
.
pageSize
||
10
,
query
:
JSON
.
stringify
(
this
.
state
.
formValues
),
};
if
(
nextProps
.
value
.
columns
!=
null
&&
nextProps
.
value
.
columns
.
length
>
0
){
this
.
columns
=
nextProps
.
value
.
columns
}
this
.
custom
=
Base16Encode
(
JSON
.
stringify
(
b
))
if
(
nextProps
.
value
.
getPage
){
this
.
getPage
(
params
,
null
,
nextProps
.
value
.
getPage
);
}
else
{
if
(
this
.
state
.
objId
)
this
.
getPage
(
params
)
}
}
const
x
=
nextProps
.
selects
const
y
=
this
.
props
.
selects
if
(
JSON
.
stringify
(
x
)
!=
JSON
.
stringify
(
y
)){
this
.
setState
({
selects
:
x
})
}
}
initColumn
=
()
=>
{
const
{
dispatch
,
isFormCom
,
isSelect
,
callback
,
valueName
}
=
this
.
props
;
const
{
rights
,
columnRights
}
=
this
.
state
;
if
(
this
.
props
.
value
&&
this
.
props
.
value
.
columns
){
this
.
columns
=
this
.
props
.
value
.
columns
this
.
getPage
();
return
}
if
(
this
.
props
.
objCode
==
1
||
this
.
props
.
objCode
==
"1"
){
}
else
{
dispatch
({
type
:
'formList/getHead'
,
payload
:
{
dataObjId
:
this
.
state
.
objId
},
callback
:
datas
=>
{
const
querys
=
[]
const
refIds
=
[]
const
groups
=
{};
if
(
datas
)
{
this
.
state
.
formItem
=
datas
;
let
i
=
0
;
for
(
let
t
in
datas
)
{
if
(
datas
[
t
].
isPrimaryKey
)
this
.
state
.
primaryKey
=
datas
[
t
].
name
;
if
(
datas
[
t
].
isHidden
){
continue
}
let
column
=
{};
column
.
title
=
datas
[
t
].
title
;
column
.
dataIndex
=
datas
[
t
].
name
;
column
.
width
=
datas
[
t
].
width
;
if
(
i
==
0
)
column
.
fixed
=
'left'
;
if
(
columnRights
.
length
>
0
&&!
columnRights
.
includes
(
datas
[
t
].
id
)){
continue
;
}
if
(
data
.
includes
(
datas
[
t
].
type
))
{
column
.
render
=
(
val
)
=>
{
if
(
val
==
null
){
return
val
;
}
if
(
datas
[
t
].
dataFormatStrWeb
!=
null
){
return
moment
(
val
).
format
(
datas
[
t
].
dataFormatStrWeb
);
}
else
{
return
moment
(
val
).
format
(
'YYYY-MM-DD HH:mm:ss'
);
}
}
}
else
if
(
datas
[
t
].
name
.
indexOf
(
"process_status"
)
>-
1
){
column
.
render
=
(
val
)
=>
val
?(
val
===
"0"
?
"审核通过"
:
"审核未通过"
):
null
}
else
if
(
datas
[
t
].
extendTypeId
&&
datas
[
t
].
extendTypeId
.
indexOf
(
"file"
)
>-
1
){
//特殊处理附件
column
.
render
=
(
val
)
=>
{
if
(
this
.
isJSON
(
val
)){
val
=
JSON
.
parse
(
val
);
let
files
=
val
.
files
;
let
xx
=
(
<
ul
>
{
files
.
map
((
f
,
index2
)
=>
{
return
<
li
key
=
{
index2
}
><
FilePreview
path
=
{
queryApiActionPath
()
+
f
.
path
}
pathName
=
{
f
.
name
}
/></
li
>
}
)}
<
/ul
>
)
return
xx
;
}
else
{
return
val
;
}
}
}
else
{
column
.
render
=
(
val
)
=>
val
&&
val
.
length
>
100
?
<
Tooltip
title
=
{
val
}
overlayStyle
=
{{
width
:
1000
}}
>
<
span
style
=
{{
width
:
column
.
width
||
200
,
display
:
"block"
,
wordBreak
:
"keep-all"
,
whiteSpace
:
"nowrap"
,
overflow
:
"hidden"
,
textOverflow
:
"ellipsis"
}}
>
{
val
}
<
/span
>
<
/Tooltip>:va
l
}
this
.
setState
({
tableWidth
:((
datas
.
length
-
1
)
*
200
)})
this
.
columns
.
push
(
column
);
if
(
datas
[
t
].
isShowQuery
)
{
querys
.
push
(
datas
[
t
])
if
(
datas
[
t
].
referenceObjId
!=
null
)
{
refIds
.
push
(
datas
[
t
].
id
)
}
if
(
datas
[
t
].
isGroupQuery
!=
null
){
dispatch
({
type
:
'formList/getGroupList'
,
payload
:
{
columnId
:
datas
[
t
].
id
},
callback
:
(
gourp
)
=>
{
groups
[
datas
[
t
].
id
]
=
gourp
;
this
.
setState
({
groups
})
}
});
}
}
i
++
;
}
if
(
querys
.
length
>
0
)
{
this
.
setState
({
querys
})
if
(
refIds
.
length
>
0
)
{
dispatch
({
type
:
'formList/getBatchOptions'
,
payload
:
{
ids
:
refIds
},
callback
:
(
options
)
=>
{
this
.
setState
({
options
})
}
});
}
}
this
.
getPage
();
}
},
});
}
}
sqlBs16
=
Base16Encode
(
this
.
props
.
sql
)
getPage
=
(
params
,
values
,
callPage
)
=>
{
if
(
this
.
columns
==
null
||
this
.
columns
.
length
==
0
){
return
;
}
const
{
dispatch
}
=
this
.
props
;
const
pagination
=
this
.
state
.
data
.
pagination
;
if
(
params
==
null
)
{
params
=
{
pageNo
:
pagination
.
current
?
pagination
.
current
:
1
,
pageSize
:
pagination
.
pageSize
?
pagination
.
pageSize
:
(
this
.
props
.
pageSize
||
10
),
query
:
JSON
.
stringify
(
values
!=
null
?
values
:
this
.
state
.
formValues
),
};
}
if
(
this
.
props
.
objCode
&&
(
this
.
props
.
objCode
==
"1"
||
this
.
props
.
objCode
==
1
)){
if
(
callPage
){
callPage
(
params
,(
data
)
=>
{
if
(
!
this
.
state
.
isReady
){
this
.
setState
({
data
,
isReady
:
true
})
}
else
{
this
.
setState
({
data
})
}
})
}
else
if
(
this
.
props
.
value
&&
this
.
props
.
value
.
getPage
){
this
.
props
.
value
.
getPage
(
params
,(
data
)
=>
{
if
(
!
this
.
state
.
isReady
){
this
.
setState
({
data
,
isReady
:
true
})
}
else
{
this
.
setState
({
data
})
}
})
}
}
else
{
dispatch
({
type
:
'formList/fetch'
,
payload
:
{
custom
:
this
.
custom
,
...
params
,
sql
:
this
.
sqlBs16
,
dataObjId
:
this
.
state
.
objId
,
},
callback
:(
data
)
=>
{
if
(
!
this
.
state
.
isReady
){
this
.
setState
({
data
,
isReady
:
true
})
}
else
{
this
.
setState
({
data
})
}
}
});
}
};
handleStandardTableChange
=
(
pagination
,
filtersArg
,
sorter
)
=>
{
const
filters
=
Object
.
keys
(
filtersArg
)
.
reduce
((
obj
,
key
)
=>
{
const
newObj
=
{
...
obj
};
newObj
[
key
]
=
getValue
(
filtersArg
[
key
]);
return
newObj
;
},
{});
const
params
=
{
pageNo
:
pagination
.
current
,
pageSize
:
pagination
.
pageSize
,
...
filters
,
query
:
JSON
.
stringify
(
this
.
state
.
formValues
),
};
if
(
sorter
.
field
)
{
params
.
sorter
=
`
${
sorter
.
field
}
_
${
sorter
.
order
}
`
;
}
this
.
getPage
(
params
);
};
handleAdd
=
(
fields
,
isAdd
)
=>
{
let
params
=
{
...
fields
,
};
this
.
props
.
dispatch
({
type
:
'formList/add'
,
payload
:
{
params
:
params
,
objId
:
this
.
state
.
objId
,
isAdd
:
isAdd
,
isSelf
:
true
,
isView
:
false
},
callback
:
()
=>
{
message
.
success
(
'操作成功'
);
this
.
setState
({
modalVisible
:
false
,
});
this
.
getPage
();
},
});
};
handleModalVisible
=
()
=>
{
this
.
setState
({
modalVisible
:
this
.
state
.
modalVisible
?
false
:
true
,
formData
:
{},
});
};
add
=
()
=>
{
// if (this.state.formItem.length < 10) {
this
.
getOptions
()
this
.
setState
({
modalVisible
:
true
,
formData
:
{},
isAdd
:
true
,
isView
:
false
});
// } else {
// router.push({
// pathname: '/admin/ddl/dataObj/formEdit',
// state: { id: this.state.objId,isAdd: true,isView:false }
// });
// }
};
handleSelectRows
=
rows
=>
{
if
(
this
.
props
.
onSelectRow
){
this
.
props
.
onSelectRow
(
rows
)
}
this
.
setState
({
selectedRows
:
rows
,
});
};
batchDelete
=
e
=>
{
const
{
dispatch
}
=
this
.
props
;
const
{
selectedRows
}
=
this
.
state
;
if
(
!
selectedRows
)
return
;
let
columns
=
this
.
state
.
formItem
;
let
Keys
=
{};
for
(
let
i
in
columns
)
{
if
(
columns
[
i
].
isPrimaryKey
)
{
//key
Keys
[
columns
[
i
].
name
]
=
selectedRows
.
map
(
row
=>
row
[
columns
[
i
].
name
])
.
join
(
','
);
}
}
this
.
props
.
dispatch
({
type
:
'formList/delete'
,
payload
:
{
keys
:
JSON
.
stringify
(
Keys
),
objId
:
this
.
state
.
objId
,
isSelf
:
true
},
callback
:
()
=>
{
this
.
setState
({
selectedRows
:
[],
});
this
.
getPage
();
},
});
};
goBack
=
()
=>
{
router
.
goBack
();
};
handleSearch
=
(
e
)
=>
{
e
.
preventDefault
();
const
{
dispatch
,
form
}
=
this
.
props
;
const
{
formValues
}
=
this
.
state
;
form
.
validateFields
((
err
,
fieldsValue
)
=>
{
if
(
err
)
return
;
const
formItem
=
this
.
state
.
formItem
formItem
.
map
((
item
,
index
)
=>
{
if
(
item
.
type
.
indexOf
(
'DATE'
)
>
-
1
)
{
for
(
let
d
in
fieldsValue
)
{
if
(
item
.
name
===
d
&&
fieldsValue
[
d
])
{
if
(
fieldsValue
[
d
]
!=
null
&&
fieldsValue
[
d
].
length
>
0
){
fieldsValue
[
d
]
=
[
fieldsValue
[
d
][
0
].
format
(
'YYYY-MM-DD HH:mm:ss'
),
fieldsValue
[
d
][
1
].
format
(
'YYYY-MM-DD HH:mm:ss'
)];
}
else
{
fieldsValue
[
d
]
=
""
;
}
}
}
}
});
const
values
=
{
...
this
.
state
.
formValues
,
...
fieldsValue
};
this
.
setState
({
formValues
:
fieldsValue
,
});
this
.
getPage
(
null
,
values
)
});
}
hanldeHighSearch
=
(
e
)
=>
{
const
pagination
=
this
.
props
.
formList
.
data
.
pagination
;
let
params
=
{
pageNo
:
pagination
.
current
?
pagination
.
current
:
1
,
pageSize
:
pagination
.
pageSize
?
pagination
.
pageSize
:
(
this
.
props
.
pageSize
||
10
),
...
e
}
this
.
setState
({
formValues
:{...
e
,...
this
.
state
.
formValues
}})
this
.
getPage
(
params
)
}
handleFormReset
=
()
=>
{
const
{
form
,
dispatch
}
=
this
.
props
;
form
.
resetFields
();
this
.
setState
({
formValues
:
{},
},
()
=>
{
this
.
getPage
()
});
}
getItem
=
(
isQuery
,
form
,
item
,
isAdd
,
formData
,
labelCol
,
wrapperCol
)
=>
{
const
{
groups
}
=
this
.
state
;
if
(
item
.
isPrimaryKey
)
{
if
(
isAdd
)
{
return
(
<><
/>
)
;
}
else
{
return
(
<
FormItem
labelCol
=
{
labelCol
}
wrapperCol
=
{
wrapperCol
}
label
=
{
item
.
title
}
key
=
{
item
.
id
}
>
{
form
.
getFieldDecorator
(
item
.
name
,
{
initialValue
:
formData
==
null
?
''
:
formData
[
item
.
name
],
rules
:
[{
required
:
!
item
.
isNull
}],
})(
<
Input
style
=
{{
width
:
'70%'
}}
readOnly
=
{
!
isAdd
}
placeholder
=
"请输入"
/>
)}
<
/FormItem
>
);
}
}
else
if
(
item
.
referenceObjId
!=
null
)
{
const
{
options
}
=
this
.
state
const
ops
=
options
[
item
.
id
+
''
]
||
[]
return
(
<
FormItem
labelCol
=
{
labelCol
}
wrapperCol
=
{
wrapperCol
}
label
=
{
item
.
title
}
key
=
{
item
.
id
}
>
{
form
.
getFieldDecorator
(
item
.
name
,
{
initialValue
:
formData
==
null
?
''
:
formData
[
item
.
name
],
rules
:
[{
required
:
!
item
.
isNull
}],
})(
<
Select
style
=
{{
width
:
'70%'
}}
placeholder
=
"请选择"
allowClear
>
{
ops
.
map
((
r
)
=>
<
Option
value
=
{
r
[
item
.
referenceCodeName
]}
key
=
{
r
[
item
.
referenceCodeName
]}
>
{
r
[
item
.
referenceNameName
]}
<
/Option>
)
}
<
/Select>
)
}
<
/FormItem
>
);
}
else
if
(
item
.
name
.
indexOf
(
"process_status"
)
>-
1
){
return
(
<
FormItem
labelCol
=
{
labelCol
}
wrapperCol
=
{
wrapperCol
}
label
=
{
item
.
title
}
key
=
{
item
.
id
}
>
{
form
.
getFieldDecorator
(
item
.
name
,
{
initialValue
:
formData
==
null
?
''
:
formData
[
item
.
name
],
rules
:
[{
required
:
!
item
.
isNull
}],
})(
<
Select
style
=
{{
width
:
'70%'
}}
placeholder
=
"请选择"
allowClear
>
<
Option
value
=
{
'0'
}
key
=
{
'0'
}
>
审核通过
<
/Option
>
<
Option
value
=
{
'2'
}
key
=
{
'2'
}
>
审核未通过
<
/Option
>
<
/Select>
)
}
<
/FormItem
>
);
}
else
if
(
item
.
extendTypeId
&&
item
.
extendTypeId
.
indexOf
(
"file"
)
>-
1
){
//特殊处理附件 如果是查询就 跳过
if
(
isQuery
)
return
;
return
(
<
FormItem
labelCol
=
{
labelCol
}
wrapperCol
=
{
wrapperCol
}
label
=
{
item
.
title
}
key
=
{
item
.
id
}
>
{
form
.
getFieldDecorator
(
item
.
name
,
{
initialValue
:
formData
==
null
?
''
:
(
formData
[
item
.
name
]
&&
this
.
isJSON
(
formData
[
item
.
name
])?
JSON
.
parse
(
formData
[
item
.
name
]):
null
),
rules
:
[{
required
:
!
item
.
isNull
}],
})(
<
UploadCom
/>
)}
<
/FormItem
>
);
}
else
if
(
isQuery
&&
item
.
isGroupQuery
!=
null
&&
item
.
isGroupQuery
){
//如果是查询 并且是组合查询
const
ops
=
groups
[
item
.
id
+
''
]
||
[]
return
(
<
FormItem
labelCol
=
{
labelCol
}
wrapperCol
=
{
wrapperCol
}
label
=
{
item
.
title
}
key
=
{
item
.
id
}
>
{
form
.
getFieldDecorator
(
item
.
name
,
{
initialValue
:
formData
==
null
?
''
:
formData
[
item
.
name
],
rules
:
[{
required
:
!
item
.
isNull
}],
})(
<
Select
style
=
{{
width
:
'70%'
}}
placeholder
=
"请选择"
allowClear
>
{
ops
.
map
((
r
)
=>
<
Option
value
=
{
r
.
value
}
key
=
{
r
.
value
}
>
{
r
.
value
}
<
/Option>
)
}
<
/Select>
)
}
<
/FormItem
>
);
}
else
if
(
text
.
indexOf
(
item
.
type
)
>
-
1
)
{
return
(
<
FormItem
labelCol
=
{
labelCol
}
wrapperCol
=
{
wrapperCol
}
label
=
{
item
.
title
}
key
=
{
item
.
id
}
>
{
form
.
getFieldDecorator
(
item
.
name
,
{
initialValue
:
formData
==
null
?
''
:
formData
[
item
.
name
],
rules
:
[{
required
:
!
item
.
isNull
}],
})(
<
Input
style
=
{{
width
:
'70%'
}}
placeholder
=
"请输入"
/>
)}
<
/FormItem
>
);
}
else
if
(
number
.
indexOf
(
item
.
type
)
>
-
1
)
{
return
(
<
FormItem
labelCol
=
{
labelCol
}
wrapperCol
=
{
wrapperCol
}
label
=
{
item
.
title
}
key
=
{
item
.
id
}
>
{
form
.
getFieldDecorator
(
item
.
name
,
{
initialValue
:
formData
==
null
?
''
:
formData
[
item
.
name
],
rules
:
[{
required
:
!
item
.
isNull
}],
})(
<
InputNumber
placeholder
=
"请输入"
min
=
{
0
}
/>
)
}
<
/FormItem
>
);
}
else
if
(
isQuery
&&
data
.
indexOf
(
item
.
type
)
>
-
1
)
{
return
(
<
FormItem
labelCol
=
{
labelCol
}
wrapperCol
=
{
wrapperCol
}
label
=
{
item
.
title
}
key
=
{
item
.
id
}
>
{
form
.
getFieldDecorator
(
item
.
name
,
{
initialValue
:
formData
==
null
?
null
:
moment
(
formData
[
item
.
name
]),
rules
:
[{
required
:
!
item
.
isNull
}],
})(
<
RangePicker
format
=
{
item
.
dataFormatStrWeb
==
null
?
"YYYY-MM-DD HH:mm:ss"
:
item
.
dataFormatStrWeb
}
style
=
{{
width
:
'95%'
}}
/>
)
}
<
/FormItem
>
);
}
else
if
(
data
.
indexOf
(
item
.
type
)
>
-
1
)
{
return
(
<
FormItem
labelCol
=
{
labelCol
}
wrapperCol
=
{
wrapperCol
}
label
=
{
item
.
title
}
key
=
{
item
.
id
}
>
{
form
.
getFieldDecorator
(
item
.
name
,
{
initialValue
:
formData
==
null
?
moment
()
:(
formData
[
item
.
name
]?
moment
(
formData
[
item
.
name
]):
null
),
rules
:
[{
required
:
!
item
.
isNull
}],
})(
<
DatePicker
format
=
{
item
.
dataFormatStrWeb
==
null
?
"YYYY-MM-DD HH:mm:ss"
:
item
.
dataFormatStrWeb
}
style
=
{{
width
:
'100%'
}}
placeholder
=
"请输入"
/>
,
)}
<
/FormItem
>
);
}
else
{
return
(
<
FormItem
labelCol
=
{
labelCol
}
wrapperCol
=
{
wrapperCol
}
label
=
{
item
.
title
}
key
=
{
item
.
id
}
>
{
form
.
getFieldDecorator
(
item
.
name
,
{
initialValue
:
formData
==
null
?
''
:
formData
[
item
.
name
],
rules
:
[{
required
:
!
item
.
isNull
}],
})(
<
Input
style
=
{{
width
:
'70%'
}}
placeholder
=
"请输入"
/>
)}
<
/FormItem
>
);
}
}
renderForm
()
{
const
{
form
,
get
,
}
=
this
.
props
;
const
{
querys
}
=
this
.
state
if
(
querys
.
length
==
0
)
{
return
''
;
}
return
(
<
Form
layout
=
"inline"
>
<
Row
style
=
{{
padding
:
"15px"
}}
>
{
querys
.
map
((
item
)
=>
<
Col
style
=
{{
height
:
58
}}
span
=
{
get
===
'mobile'
?
24
:
8
}
key
=
{
item
.
id
}
>
{
this
.
getItem
(
true
,
form
,
{
...
item
,
isNull
:
true
},
true
)}
<
/Col
>
)}
<
Col
span
=
{
get
===
'mobile'
?
24
:
8
}
style
=
{{
textAlign
:
get
===
'mobile'
?
'right'
:
''
,
paddingRight
:
get
===
'mobile'
?
12
:
''
}}
>
<
span
className
=
{
styles
.
submitButtons
}
>
<
Button
type
=
"primary"
loading
=
{
this
.
props
.
loading
}
onClick
=
{
this
.
handleSearch
}
>
查询
<
/Button
>
<
Button
style
=
{{
marginLeft
:
8
}}
onClick
=
{
this
.
handleFormReset
}
>
重置
<
/Button
>
{
/* <a style={{ marginLeft: 8 }} onClick={this.toggleForm}>
展开 <Icon type="down" />
</a> */
}
<
/span
>
<
/Col
>
<
/Row
>
<
/Form
>
);
}
onSelect
=
(
selectedKeys
,
info
)
=>
{
if
(
info
.
selectedNodes
.
length
>
0
)
{
const
parentId
=
selectedKeys
[
0
]
!=
"0-0"
?
selectedKeys
[
0
]
:
null
this
.
setState
({
parentName
:
info
.
selectedNodes
[
0
].
props
.
title
,
parentId
})
this
.
getPage
({
parentId
:
parentId
})
}
}
onLoadData
=
(
treeNode
)
=>
{
return
new
Promise
((
resolve
)
=>
{
if
(
treeNode
.
props
.
childs
)
{
resolve
();
return
;
}
const
parentId
=
treeNode
.
props
.
eventKey
!=
"0-0"
?
treeNode
.
props
.
eventKey
:
null
this
.
getList
({
parentId
:
parentId
},
(
list
)
=>
{
treeNode
.
props
.
dataRef
.
childs
=
list
;
this
.
setState
({
treeData
:
[...
this
.
state
.
treeData
]
});
resolve
();
})
});
}
renderTreeNodes
=
(
list
)
=>
{
return
list
.
map
((
item
)
=>
{
if
(
item
.
childs
)
{
return
(
<
TreeNode
title
=
{
item
.
title
}
key
=
{
item
.
key
}
dataRef
=
{
item
}
>
{
this
.
renderTreeNodes
(
item
.
childs
)}
<
/TreeNode
>
);
}
return
<
TreeNode
{...
item
}
dataRef
=
{
item
}
/>
;
})
}
refesh
=
(
parentId
,
list
,
data
)
=>
{
if
(
parentId
==
null
)
{
data
[
0
].
childs
=
list
return
data
}
for
(
var
i
=
0
;
i
<
data
.
length
;
i
++
)
{
if
(
data
[
i
].
key
==
parentId
)
{
data
[
i
].
childs
=
list
break
;
}
else
{
if
(
data
[
i
].
childs
)
{
this
.
refesh
(
parentId
,
list
,
data
[
i
].
childs
)
}
}
}
return
data
}
render
()
{
const
{
modalVisible
,
selectedRows
,
querys
,
tableWidth
,
rights
,
data
,
isReady
,
}
=
this
.
state
;
if
(
!
isReady
){
return
<
div
style
=
{{
width
:
20
,
margin
:
"auto"
}}
><
Spin
/><
/div
>
}
const
{
isFormCom
,
isSelect
,
get
,
callback
,
valueName
,
notShowBack
,
istableCom
,
// 是否有模板设计器调用
}
=
this
.
props
;
const
{
showMobileDiv
,
isView
}
=
this
.
state
let
scrollWidth
=
document
.
documentElement
.
clientWidth
||
document
.
body
.
clientWidth
;
//可使宽度
let
isMobile
=
scrollWidth
<
1200
if
(
document
.
querySelector
(
'#previewDiv'
)){
isMobile
=
true
}
let
showDiv
=
document
.
querySelector
(
'#mobelDiv'
)
&&
document
.
querySelector
(
'#mobelDiv'
)?.
parentNode
.
clientWidth
const
parentMethods
=
{
handleAdd
:
this
.
handleAdd
,
handleModalVisible
:
this
.
handleModalVisible
,
formData
:
this
.
state
.
formData
,
formItem
:
this
.
state
.
formItem
,
isAdd
:
this
.
state
.
isAdd
,
getItem
:
this
.
getItem
,
isView
:
isView
,
};
if
(
!
isSelect
&&!
rights
.
includes
(
'edit'
)
&&!
rights
.
includes
(
'delete'
)
&&!
rights
.
includes
(
"view"
)
&&!
rights
.
includes
(
"viewProcess"
)){
}
else
{
let
width
=
0
;
if
(
rights
&&
rights
.
includes
(
'viewProcess'
)){
width
=
width
+
75
;
}
if
(
rights
&&
rights
.
includes
(
'view'
)){
width
=
width
+
75
;
}
if
(
rights
&&
rights
.
includes
(
'edit'
)){
width
=
width
+
40
;
}
if
(
rights
&&
rights
.
includes
(
'delete'
)){
width
=
width
+
40
;
}
const
column
=
{
title
:
'操作'
,
fixed
:
'right'
,
width
:
width
,
render
:
(
text
,
record
)
=>
{
return
<
Fragment
>
<
div
style
=
{{
textAlign
:
'center'
}}
>
{
isSelect
?
this
.
state
.
selects
.
includes
(
record
[
valueName
])
?
<><
span
>
已选择
<
/span><Divide
r
type
=
"vertical"
/><
/> : <><
a
onClick
=
{
callback
.
bind
(
this
,
record
,
this
.
columns
)}
>
选择
<
/a><Divide
r
type
=
"vertical"
/><
/> : ''
}
{
rights
&&
!
rights
.
includes
(
'view'
)
?
''
:
<><
a
onClick
=
{
this
.
view
.
bind
(
this
,
record
)}
>
查看详情
<
/a><Divider type="vertical"/
><
/>
}
{
rights
&&
!
rights
.
includes
(
'edit'
)
?
''
:
<><
a
onClick
=
{
this
.
modify
.
bind
(
this
,
record
)}
>
编辑
<
/a><Divider type="vertical"/
><
/>
}
{
rights
&&
rights
.
includes
(
"viewProcess"
)
&&
record
.
process_biz_key
?
<><
a
onClick
=
{
this
.
viewProcess
.
bind
(
this
,
record
)}
>
查看流程详情
<
/a><Divider type="vertical"/
><
/>:''
}
{
rights
&&
!
rights
.
includes
(
'delete'
)
?
''
:
<>
<
Popconfirm
title
=
"确定删除该数据?"
onConfirm
=
{
this
.
delete
.
bind
(
this
,
record
)}
okText
=
"确定"
cancelText
=
"取消"
>
<
a
>
删除
<
/a
>
<
/Popconfirm></
>
}
<
/div
>
<
/Fragment
>
}
}
if
(
this
.
columns
.
length
>
0
&&
this
.
columns
[
this
.
columns
.
length
-
1
].
title
==
"操作"
){
this
.
columns
[
this
.
columns
.
length
-
1
]
=
column
;
}
else
{
this
.
columns
.
push
(
column
);
}
}
if
(
this
.
columns
){
/**
* 计算总长度
*/
AllWidth
=
0
this
.
columns
=
this
.
columns
.
map
((
item
,
index
)
=>
{
if
(
isEmpty
(
item
)){
return
item
}
if
(
index
===
this
.
columns
.
length
-
1
&&
this
.
columns
[
this
.
columns
.
length
-
1
].
title
!==
'操作'
){
AllWidth
+=
150
item
.
width
=
''
return
item
}
let
width
=
item
.
width
?
item
.
width
:
150
if
(
!
item
.
width
){
item
.
width
=
150
}
AllWidth
+=
width
return
item
})
if
(
!
isEmpty
(
this
.
columns
[
this
.
columns
.
length
-
1
])
&&
this
.
columns
[
this
.
columns
.
length
-
1
].
title
===
'操作'
){
this
.
columns
[
this
.
columns
.
length
-
2
].
width
=
''
AllWidth
+=
100
}
}
const
xxxx
=
<>
<
Row
gutter
=
{
16
}
>
<
Col
span
=
{
4
}
>
<
Card
bordered
=
{
false
}
style
=
{{
minHeight
:
500
}}
>
<
Tree
showLine
defaultExpandedKeys
=
{[
"0-0"
]}
onSelect
=
{
this
.
onSelect
}
loadData
=
{
this
.
onLoadData
}
>
{
this
.
renderTreeNodes
(
this
.
state
.
treeData
)}
<
/Tree>
<
/Card
>
<
/Col
>
<
Col
span
=
{
20
}
>
<
Card
bordered
=
{
false
}
bodyStyle
=
{{
padding
:
0
}}
>
<
div
className
=
{
styles
.
tableList
}
>
<
div
className
=
{
styles
.
tableListForm
}
>
{
this
.
renderForm
()}
<
/div
>
<
div
className
=
{
styles
.
tableListOperator
}
>
{
notShowBack
?
notShowBack
:
<
Button
icon
=
"rollback"
type
=
"primary"
onClick
=
{
this
.
goBack
}
>
返回
<
/Button>
}
{
rights
&&
!
rights
.
includes
(
'add'
)
?
''
:
<
Button
icon
=
"plus"
type
=
"primary"
onClick
=
{
this
.
add
}
>
新建
<
/Button>
}
{
rights
&&
!
rights
.
includes
(
'searchData'
)
?
''
:
<
SearchInfo
hanldeHighSearch
=
{
this
.
hanldeHighSearch
}
objId
=
{
this
.
state
.
objId
}
/>
}
{
rights
&&
!
rights
.
includes
(
'importData'
)
?
''
:
<
ImportUtil
objId
=
{
this
.
state
.
objId
}
/>
}
{
rights
&&
!
rights
.
includes
(
'exportCurrent'
)
?
''
:
<
ExportCurrentInfo
objId
=
{
this
.
state
.
objId
}
query
=
{
JSON
.
stringify
(
this
.
state
.
formValues
)}
custom
=
{
this
.
props
.
value
?
Base16Encode
(
JSON
.
stringify
(
this
.
props
.
value
)):
null
}
sql
=
{
Base16Encode
(
this
.
props
.
sql
)}
/>
}
{
rights
&&
!
rights
.
includes
(
'exportData'
)
?
''
:
<
ExportInfo
objId
=
{
this
.
state
.
objId
}
/>
}
{
rights
&&
!
rights
.
includes
(
'statistics'
)
?
''
:
<
StatisticsInfo
objId
=
{
this
.
state
.
objId
}
/>
}
{
rights
&&
!
rights
.
includes
(
'delete'
)
?
''
:
selectedRows
.
length
>
0
&&
(
<
span
>
<
Popconfirm
title
=
"确定删除该数据?"
onConfirm
=
{
this
.
batchDelete
}
okText
=
"确定"
cancelText
=
"取消"
>
<
Button
>
批量删除
<
/Button></
Popconfirm
>
<
/span
>
)}
<
/div
>
{
(
!
istableCom
)
||
(
this
.
props
.
value
&&
this
.
props
.
value
.
columns
)?
<
StandardTable
showHeader
=
{
this
.
props
.
showHeader
!=
null
?
this
.
props
.
showHeader
:
true
}
noSelectRow
=
{
this
.
props
.
onSelectRow
==
null
&&
(
rights
==
null
||
!
rights
.
includes
(
'delete'
))
}
rowKey
=
"id"
data
=
{
data
}
isHiddenPage
=
{
this
.
props
.
isHiddenPage
!=
null
?
this
.
props
.
isHiddenPage
:
false
}
columns
=
{
this
.
columns
}
scroll
=
{
this
.
props
.
value
&&
this
.
props
.
value
.
columns
?{}:{
x
:
AllWidth
}}
selectedRows
=
{
selectedRows
}
onSelectRow
=
{
this
.
handleSelectRows
}
onChange
=
{
this
.
handleStandardTableChange
}
loading
=
{
this
.
props
.
loading
}
/
>
:
<
div
id
=
'mobelDiv'
style
=
{{
overflow
:
'hidden'
,
width
:
isMobile
?
showMobileDiv
:
showDiv
,
height
:
'100%'
}}
>
<
div
>
{
get
===
'mobile'
?
<
div
>
手机端
,
请将手机横屏查看
<
/div
>
:
null
}
{
showDiv
&&<
StandardTable
showHeader
=
{
this
.
props
.
showHeader
!=
null
?
this
.
props
.
showHeader
:
true
}
noSelectRow
=
{
this
.
props
.
onSelectRow
==
null
&&
(
rights
==
null
||
!
rights
.
includes
(
'delete'
))
}
rowKey
=
"id"
data
=
{
data
}
columns
=
{
this
.
columns
}
scroll
=
{
this
.
props
.
value
&&
this
.
props
.
value
.
columns
?{}:{
x
:
AllWidth
}}
selectedRows
=
{
selectedRows
}
isHiddenPage
=
{
this
.
props
.
isHiddenPage
!=
null
?
this
.
props
.
isHiddenPage
:
false
}
onSelectRow
=
{
this
.
handleSelectRows
}
onChange
=
{
this
.
handleStandardTableChange
}
loading
=
{
this
.
props
.
loading
}
/
>
}
<
/div
>
<
/div
>
}
<
/div
>
<
/Card></
Col
><
/Row
>
<
CreateForm
{...
parentMethods
}
modalVisible
=
{
modalVisible
}
/></
>
if
(
isFormCom
)
{
return
xxxx
}
return
(
<
PageHeaderWrapper
title
=
""
>
{
xxxx
}
<
/PageHeaderWrapper
>
);
}
}
export
default
TreeList
;
one_stop_public/libs/formList/index.js
浏览文件 @
db53adf8
...
@@ -30,13 +30,11 @@ import StatisticsInfo from '../../App/StatisticsInfo';
...
@@ -30,13 +30,11 @@ import StatisticsInfo from '../../App/StatisticsInfo';
import
ImportUtil
from
'../../App/ImportUtil'
;
import
ImportUtil
from
'../../App/ImportUtil'
;
import
SearchInfo
from
'../../App/SearchInfo'
;
import
SearchInfo
from
'../../App/SearchInfo'
;
import
{
Base16Encode
}
from
"../../Base16/index"
;
import
{
Base16Encode
}
from
"../../Base16/index"
;
import
baseX
from
'base-x'
import
{
isEmpty
}
from
'lodash'
import
{
isEmpty
}
from
'lodash'
import
FilePreview
from
"@/webPublic/one_stop_public/filePreview"
;
import
FilePreview
from
"@/webPublic/one_stop_public/filePreview"
;
import
{
queryApiActionPath
}
from
"@/webPublic/one_stop_public/utils/queryConfig"
;
import
{
queryApiActionPath
}
from
"@/webPublic/one_stop_public/utils/queryConfig"
;
import
UploadCom
from
"@/webPublic/one_stop_public/libs/UploadCom"
;
import
UploadCom
from
"@/webPublic/one_stop_public/libs/UploadCom"
;
const
BASE16
=
'0123456789abcdef'
const
bs16
=
baseX
(
BASE16
)
const
FormItem
=
Form
.
Item
;
const
FormItem
=
Form
.
Item
;
let
AllWidth
=
0
;
// 表格总长度
let
AllWidth
=
0
;
// 表格总长度
const
{
RangePicker
}
=
DatePicker
;
const
{
RangePicker
}
=
DatePicker
;
...
...
one_stop_public/tableCompon/index.jsx
浏览文件 @
db53adf8
...
@@ -54,7 +54,7 @@ import moment from 'moment';
...
@@ -54,7 +54,7 @@ import moment from 'moment';
import
router
from
'umi/router'
;
import
router
from
'umi/router'
;
import
TableList
from
'../libs/TableList'
;
import
TableList
from
'../libs/TableList'
;
import
styles
from
'./style.less'
;
import
styles
from
'./style.less'
;
import
config
from
'
../config
/config'
;
import
config
from
'
@/webPublic/one_stop_public
/config'
;
import
{
isEmpty
,
isNaN
,
cloneDeep
}
from
'lodash'
import
{
isEmpty
,
isNaN
,
cloneDeep
}
from
'lodash'
import
{
queryApiActionPath
}
from
"../utils/queryConfig"
;
import
{
queryApiActionPath
}
from
"../utils/queryConfig"
;
import
{
extend
}
from
'umi-request'
;
import
{
extend
}
from
'umi-request'
;
...
...
one_stop_public/utils/queryConfig.js
浏览文件 @
db53adf8
...
@@ -18,6 +18,7 @@ const queryConfig = (key) => {
...
@@ -18,6 +18,7 @@ const queryConfig = (key) => {
* */
* */
export
const
querySysCode
=
()
=>
queryConfig
(
"SYSCODE"
);
export
const
querySysCode
=
()
=>
queryConfig
(
"SYSCODE"
);
export
const
queryWsPath
=
()
=>
queryConfig
(
"WS_PATH"
);
/**
/**
* @description 获取服务端请求路径前戳
* @description 获取服务端请求路径前戳
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论