Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
W
WebPublic
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
前端开发小组
WebPublic
Commits
4160092a
提交
4160092a
authored
5月 08, 2020
作者:
钟是志
浏览文件
操作
浏览文件
下载
差异文件
Merge remote-tracking branch 'origin/master'
上级
aec065c1
f41d6010
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
19 个修改的文件
包含
492 行增加
和
82 行删除
+492
-82
index.js
FormInsertDiy/AffairPage/ApplyPage/index.js
+5
-2
AuditPage.js
FormInsertDiy/AffairPage/AuditPage/AuditPage.js
+4
-4
BatchAudit.js
FormInsertDiy/AffairPage/AuditPage/BatchAudit.js
+22
-0
index.js
FormInsertDiy/AffairPage/AuditPage/index.js
+7
-0
services.js
FormInsertDiy/List/services.js
+3
-1
index.js
FormInsertDiy/ListWithAddEditTemplate/index.js
+0
-0
index.js
FormInsertDiy/SingleDataPageInFirstRow/index.js
+106
-0
index.js
FormInsertDiy/SingleDataPageTemplate/index.js
+2
-0
index.jsx
one_stop_public/Table/index.jsx
+2
-0
isNewMobileTable.jsx
one_stop_public/Table/isNewMobileTable.jsx
+6
-1
isNewWebTable.jsx
one_stop_public/Table/isNewWebTable.jsx
+2
-0
ImgUploadCom.jsx
one_stop_public/libs/ImgUploadCom.jsx
+66
-0
MobileDate.jsx
one_stop_public/libs/MobileDate.jsx
+5
-3
TableList.js
one_stop_public/libs/TableList.js
+25
-1
TreeList.js
one_stop_public/libs/formList/TreeList.js
+0
-0
index.js
one_stop_public/libs/formList/index.js
+72
-24
index.jsx
one_stop_public/tableCompon/index.jsx
+24
-46
index.js
zyd_public/components/DraggableSetting/index.js
+119
-0
index.less
zyd_public/components/DraggableSetting/index.less
+22
-0
没有找到文件。
FormInsertDiy/AffairPage/ApplyPage/index.js
浏览文件 @
4160092a
...
...
@@ -166,9 +166,12 @@ export default class AffairPage extends React.Component {
if
(
event
.
data
===
'returnList'
)
{
this
.
returnList
(
true
);
}
if
(
event
.
data
.
indexOf
(
'iframeHeight'
)
>
-
1
)
{
if
(
event
&&
event
.
data
&&
event
.
data
.
indexOf
&&
event
.
data
.
indexOf
(
'iframeHeight'
)
>
-
1
)
{
let
height
=
Number
(
event
.
data
.
split
(
'-'
)[
1
]);
document
.
getElementById
(
'applyIframeId'
).
height
=
height
;
const
iframe
=
document
.
getElementById
(
'applyIframeId'
);
if
(
iframe
)
{
iframe
.
height
=
height
;
}
}
},
false
);
...
...
FormInsertDiy/AffairPage/AuditPage/AuditPage.js
浏览文件 @
4160092a
...
...
@@ -18,10 +18,10 @@ export default class AuditPage extends Component {
componentDidMount
()
{}
handleButtonSet
=
()
=>
{
const
{
addFields
,
workId
}
=
this
.
props
;
const
{
addFields
,
workId
,
hasBatchAudit
}
=
this
.
props
;
return
{
tab1
:
[
{
hasBatchAudit
?
{
type
:
'audit'
,
component
:
'RenderComponent'
,
render
:
({
selectRows
,
getPage
})
=>
{
...
...
@@ -52,8 +52,8 @@ export default class AuditPage extends Component {
<
/AuditModal
>
);
},
},
],
}
:
false
,
]
.
filter
(
i
=>
i
)
,
tab2
:
[],
};
};
...
...
FormInsertDiy/AffairPage/AuditPage/BatchAudit.js
0 → 100644
浏览文件 @
4160092a
/***
* 批量审核
* 2020年5月7日 09:53:12
* 钟是志
*
* */
import
React
,
{
Component
}
from
'react'
;
import
AuditPage
from
'./index'
;
export
default
class
BatchAudit
extends
Component
{
constructor
(
props
)
{
super
(
props
);
}
render
()
{
return
(
<
AuditPage
{...
this
.
props
}
hasBatchAudit
=
{
true
}
/
>
)
}
}
FormInsertDiy/AffairPage/AuditPage/index.js
浏览文件 @
4160092a
...
...
@@ -12,6 +12,11 @@ import * as destructionFunc from '../destruction';
import
{
Link
}
from
'dva/router'
;
export
default
class
Index
extends
React
.
Component
{
static
defaultProps
=
{
hasBatchAudit
:
false
,
// 是否有批量审核按钮 默认关掉 如果有需要再在外面包一层 2020年5月6日 18:44:11 钟是志
};
constructor
(
props
)
{
super
(
props
);
...
...
@@ -112,11 +117,13 @@ export default class Index extends React.Component {
render
()
{
const
{
workId
,
dataBaseId
,
columns
,
searchCondition
,
addFields
,
allConfigSetInfo
,
tableInfo
}
=
this
.
state
;
const
{
hasBatchAudit
}
=
this
.
props
;
if
(
!
workId
){
return
null
;
}
return
(
<
AuditPage
hasBatchAudit
=
{
hasBatchAudit
}
workId
=
{
workId
}
dataBaseId
=
{
dataBaseId
}
columns
=
{
columns
}
...
...
FormInsertDiy/List/services.js
浏览文件 @
4160092a
...
...
@@ -3,7 +3,9 @@ import { uaaRequest } from '@/webPublic/one_stop_public/utils/request';
export
const
getHead
=
(
payload
,
callback
)
=>
{
uaaRequest
(
'/DataColumnApi/getHeaderList'
,
payload
).
then
(
res
=>
{
if
(
!
res
)
return
;
if
(
callback
)
callback
(
res
);
if
(
callback
)
{
callback
(
res
);
}
});
};
...
...
FormInsertDiy/ListWithAddEditTemplate/index.js
浏览文件 @
4160092a
差异被折叠。
点击展开。
FormInsertDiy/SingleDataPageInFirstRow/index.js
0 → 100644
浏览文件 @
4160092a
import
React
,
{
useState
,
useEffect
}
from
'react'
;
import
{
Form
,
Button
}
from
'antd'
;
import
Shell
from
'@/baseComponent/Shell'
;
import
{
ModalInfo
}
from
'@/baseComponent/Modal'
;
import
{
addOrEditTableItem
,
fetchTableData
,
fetchTableHeader
,
}
from
'@/webPublic/Services'
;
import
{
preHandle
}
from
'@/webPublic/one_stop_public/utils/myutils'
;
import
{
getOneStopConfig
}
from
'@/baseComponent/utils'
;
import
{
RenderFormByContent
}
from
'../RenderForm'
;
// 直接获取的表格数据的字段是明文,找换成base转换后的字段
function
getBaseEncodedData
(
rowData
,
tableHeader
)
{
// {name: base52}
const
nameBaseMap
=
tableHeader
.
reduce
((
acc
,
header
)
=>
{
return
{...
acc
,
[
header
.
name
]
:
header
.
base52
};
},
{});
// 明文字段转换成base后的字段, eg. {process_status: 1} => {JbZWZHoGRsA: 1}
return
Object
.
keys
(
rowData
).
reduce
((
acc
,
name
)
=>
{
const
base52
=
nameBaseMap
[
name
];
if
(
!
base52
)
return
acc
;
return
{...
acc
,
[
base52
]:
rowData
[
name
]
};
},
{});
}
// 配置页面,配置数据在元数据表格的第一行
// 1. 页面显示通过模板id渲染。
// 2. 页面数据通过元数据表id, 查询和修改。
// templateCode, 页面模板id
// tableId, 元数据列表id
// children, 可以传children,但children不能是数组(不能传属性),children里可以自定义其他组件。
function
SingleDataPageInFirstRow
(
props
)
{
const
{
children
,
form
,
templateCode
:
templateCodeFromProps
,
dataObjId
:
dataObjIdFromProps
,
location
:
{
pathname
}
}
=
props
;
// templateCode 和 dataObjId 可以通过组件属性或者根据路径配置获取
const
templateCodeFromPathname
=
getOneStopConfig
(
`
${
pathname
}
-templateCode`
);
const
dataObjIdFromPathname
=
getOneStopConfig
(
`
${
pathname
}
-dataObjId`
);
const
templateCode
=
templateCodeFromPathname
||
templateCodeFromProps
;
const
dataObjId
=
dataObjIdFromPathname
||
dataObjIdFromProps
;
if
(
!
templateCode
||
!
dataObjId
)
{
console
.
warn
(
"模板code或者元数据表格id为空,templateCode: "
+
templateCode
+
", dataObjId: "
+
dataObjId
);
return
null
;
}
const
[
isAdd
,
setIsAdd
]
=
useState
(
false
);
const
[
content
,
setContent
]
=
useState
({});
useEffect
(
()
=>
{
fetchTableHeader
(
dataObjId
).
then
(
tableHeader
=>
{
if
(
!
tableHeader
)
return
;
fetchTableData
({
pageNo
:
1
,
pageSize
:
10
,
isBase
:
true
,
dataObjId
,
query
:
{}
}).
then
(
res
=>
{
const
firstRowData
=
(
res
&&
res
.
rows
&&
res
.
rows
[
0
])
||
{};
setContent
(
getBaseEncodedData
(
firstRowData
,
tableHeader
));
setIsAdd
(
!!
(
!
res
||
res
.
errMsg
))
});
});
},
[
dataObjId
]
);
function
handleSave
()
{
const
{
validateFields
}
=
form
;
validateFields
((
err
,
values
)
=>
{
if
(
err
)
return
;
// console.log(JSON.stringify(values.JjvkRobXWTE), JSON.stringify(values.JjvkwLqcsyY));
preHandle
(
values
);
// console.log(JSON.stringify(values.JjvkRobXWTE));
addOrEditTableItem
({
objId
:
dataObjId
,
isAdd
,
data
:
values
}).
then
(
res
=>
{
if
(
res
)
{
ModalInfo
(
'保存成功!'
);
}
});
});
}
let
ClonedChildren
;
if
(
children
)
{
ClonedChildren
=
React
.
cloneElement
(
React
.
Children
.
only
(
children
),
{
form
,
isAdd
,
url
:
'/DataObjApi/addFormData'
,
});
}
return
(
<
Shell
styleShell
=
{{
marginTop
:
0
}}
>
<
RenderFormByContent
content
=
{
content
}
templateCode
=
{
templateCode
}
form
=
{
form
}
/
>
{
ClonedChildren
||
(
<
div
style
=
{{
textAlign
:
'center'
,
padding
:
16
}}
>
<
Button
type
=
"primary"
shape
=
"round"
ghost
onClick
=
{
handleSave
}
>
保存
<
/Button
>
<
/div
>
)}
<
/Shell
>
);
}
export
default
Form
.
create
()(
SingleDataPageInFirstRow
);
FormInsertDiy/SingleDataPageTemplate/index.js
浏览文件 @
4160092a
...
...
@@ -24,7 +24,9 @@ function SingleDataPageTemplate(props) {
validateFields
((
err
,
values
)
=>
{
if
(
err
)
return
;
// console.log(JSON.stringify(values.JjvkRobXWTE), JSON.stringify(values.JjvkwLqcsyY));
preHandle
(
values
);
// console.log(JSON.stringify(values.JjvkRobXWTE));
addOrEditTableItem
({
objId
:
tableId
,
isAdd
,
data
:
values
}).
then
(
res
=>
{
if
(
res
)
{
ModalInfo
(
'保存成功!'
);
...
...
one_stop_public/Table/index.jsx
浏览文件 @
4160092a
...
...
@@ -571,6 +571,7 @@ export default class ZdyTable extends Component {
<
TableCom
formCode=
{
formCode
}
// 当前表单code
modalInit=
{
modalInit
}
formId=
{
formId
}
// 当前表单Id
i=
{
i
}
// 当前组件下标
j=
{
j
}
// 当前行数下班
...
...
@@ -657,6 +658,7 @@ export default class ZdyTable extends Component {
})
:
""
}
<
IsNewTable
modalInit=
{
modalInit
}
items=
{
items
}
checkAllHidden=
{
this
.
checkAllHidden
}
isBorder=
{
isBorder
}
...
...
one_stop_public/Table/isNewMobileTable.jsx
浏览文件 @
4160092a
...
...
@@ -8,6 +8,7 @@ import { Row, Col } from 'antd';
export
default
class
isNewTable
extends
Component
{
render
()
{
const
{
items
,
checkAllHidden
,
isBorder
,
...
...
@@ -30,7 +31,8 @@ export default class isNewTable extends Component {
formCode
,
formId
,
fatherObj
,
style
style
,
modalInit
}
=
this
.
props
if
(
!
isEdit
){
// 展示栏 暂不做处理
return
<>
...
...
@@ -51,6 +53,7 @@ export default class isNewTable extends Component {
item
.
map
((
ary
,
j
)
=>
{
return
!
allhidden
&&
ary
.
hidden
?
""
:
<><
TableCom
modalInit=
{
modalInit
}
formCode=
{
formCode
}
formId=
{
formId
}
i=
{
i
}
...
...
@@ -176,6 +179,7 @@ export default class isNewTable extends Component {
title=
{
!
allhidden
&&
ary
.
hidden
?
""
:<><
TableCom
modalInit=
{
modalInit
}
formCode=
{
formCode
}
formId=
{
formId
}
i=
{
i
}
...
...
@@ -208,6 +212,7 @@ export default class isNewTable extends Component {
// textAlign:ary.content&&ary.content.comName === 'Table'?"left":'right'
}
}
>
<><
TableCom
modalInit=
{
modalInit
}
formCode=
{
formCode
}
formId=
{
formId
}
i=
{
i
}
...
...
one_stop_public/Table/isNewWebTable.jsx
浏览文件 @
4160092a
...
...
@@ -33,6 +33,7 @@ export default class isNewWebTable extends Component {
fatherObj
,
style
,
max
,
modalInit
}
=
this
.
props
return
(
<
div
...
...
@@ -89,6 +90,7 @@ export default class isNewWebTable extends Component {
isEdit=
{
isEdit
}
formKey=
{
currentFormKey
}
init=
{
init
}
modalInit=
{
modalInit
}
get=
{
get
}
// 区分移动端或wen端
json=
{
cell
.
content
}
obj=
{
obj
||
{}
}
// 是否存在默认值
...
...
one_stop_public/libs/ImgUploadCom.jsx
0 → 100644
浏览文件 @
4160092a
import
React
from
'react'
import
{
Upload
,
message
}
from
'antd'
;
import
config
from
'@/config/config'
export
default
class
ImgUploadCom
extends
React
.
Component
{
constructor
(
props
){
super
(
props
)
const
value
=
props
.
value
this
.
state
=
{
url
:
value
}
}
triggerChange
=
(
changedValue
)
=>
{
// Should provide an event to pass value to Form.
const
onChange
=
this
.
props
.
onChange
;
if
(
onChange
)
{
onChange
(
changedValue
);
}
}
componentWillReceiveProps
(
nextProps
)
{
// Should be a controlled component.
if
(
'value'
in
nextProps
)
{
const
value
=
nextProps
.
value
;
this
.
setState
({
url
:
value
});
}
}
changeUrl
=
(
info
,
key
)
=>
{
if
(
info
.
file
.
status
===
'done'
)
{
message
.
success
(
`图片上传成功`
);
if
(
!
(
'value'
in
this
.
props
))
{
this
.
setState
({
url
:
info
.
file
.
response
});
}
this
.
triggerChange
(
info
.
file
.
response
);
}
else
if
(
info
.
file
.
status
===
'error'
)
{
message
.
error
(
`图片上传失败`
);
}
}
changePos
=
(
obj
)
=>
{
if
(
!
(
'value'
in
this
.
props
))
{
this
.
setState
({...
obj
});
}
this
.
triggerChange
({...
obj
});
}
render
()
{
const
{
json
,
disabled
}
=
this
.
props
const
{
url
}
=
this
.
state
return
(
<
Upload
.
Dragger
disabled=
{
disabled
}
accept=
{
"image/*"
}
url=
{
url
}
showUploadList=
{
false
}
name=
"file"
action=
{
config
.
uploadUrl
}
onChange=
{
this
.
changeUrl
}
multiple=
{
false
}
style=
{
{
padding
:
0
}
}
>
{
url
?
<
img
src=
{
config
.
httpServer
+
(
url
)
}
style=
{
{
height
:
json
.
height
,
width
:
json
.
width
}
}
/>
:
<
div
style=
{
{
height
:
json
.
height
,
width
:
json
.
width
}
}
>
</
div
>
}
</
Upload
.
Dragger
>
);
}
}
\ No newline at end of file
one_stop_public/libs/MobileDate.jsx
浏览文件 @
4160092a
...
...
@@ -64,7 +64,7 @@ export default class MobileDate extends Component {
}
render
()
{
let
{
dates
}
=
this
.
state
const
{
format
}
=
this
.
props
const
startTime
=
dates
.
length
>
0
?
dates
[
0
].
valueOf
():
null
const
endTime
=
dates
.
length
>
1
?
dates
[
1
].
valueOf
():
null
...
...
@@ -72,18 +72,20 @@ export default class MobileDate extends Component {
<
div
>
<
DatePicker
// value={this.state.date}
extra=
{
<
span
style=
{
{
fontSize
:
14
}
}
>
{
!!
startTime
?
moment
(
startTime
).
format
(
'YYYY-MM-DD HH:mm:ss'
):
'请选择时间'
}
</
span
>
}
extra=
{
<
span
style=
{
{
fontSize
:
14
}
}
>
{
!!
startTime
?
moment
(
startTime
).
format
(
format
?
format
:
'YYYY-MM-DD HH:mm:ss'
):
'请选择时间'
}
</
span
>
}
locale=
{
{
okText
:
"确定"
,
dismissText
:
'取消'
}
}
value=
{
!!
startTime
?
new
Date
(
startTime
):
null
}
format=
{
format
?
format
:
'YYYY-MM-DD HH:mm:ss'
}
onChange=
{
date
=>
this
.
handelStartChange
(
date
)
}
>
<
List
.
Item
arrow=
"horizontal"
>
开始时间
</
List
.
Item
>
</
DatePicker
>
<
DatePicker
// value={this.state.date}
extra=
{
<
span
style=
{
{
fontSize
:
14
}
}
>
{
!!
endTime
?
moment
(
endTime
).
format
(
'YYYY-MM-DD HH:mm:ss'
):
'请选择时间'
}
</
span
>
}
extra=
{
<
span
style=
{
{
fontSize
:
14
}
}
>
{
!!
endTime
?
moment
(
endTime
).
format
(
format
?
format
:
'YYYY-MM-DD HH:mm:ss'
):
'请选择时间'
}
</
span
>
}
value=
{
!!
endTime
?
new
Date
(
endTime
):
null
}
locale=
{
{
okText
:
"确定"
,
dismissText
:
'取消'
}
}
format=
{
format
?
format
:
'YYYY-MM-DD HH:mm:ss'
}
onChange=
{
date
=>
this
.
handelEndChange
(
date
)
}
>
<
List
.
Item
arrow=
"horizontal"
>
结束时间
</
List
.
Item
>
...
...
one_stop_public/libs/TableList.js
浏览文件 @
4160092a
...
...
@@ -9,6 +9,7 @@
import
React
from
'react'
;
import
{
Tree
,
Table
,
Spin
}
from
'antd'
;
import
FormList
from
'./formList'
;
import
TreeList
from
'./formList/TreeList'
import
{
connect
}
from
'dva'
;
export
default
class
TableList
extends
React
.
Component
{
...
...
@@ -40,7 +41,30 @@ export default class TableList extends React.Component {
}
render
()
{
return
<
FormList
const
{
isTree
}
=
this
.
props
return
isTree
?
<
TreeList
onSelectRow
=
{
this
.
props
.
value
.
onSelectRow
}
istableCom
=
{
true
}
showHeader
=
{
this
.
props
.
showHeader
}
get
=
{
this
.
props
.
get
}
isHiddenPage
=
{
this
.
props
.
isHiddenPage
!=
null
?
this
.
props
.
isHiddenPage
:
false
}
loading
=
{
this
.
props
.
loading
}
pageSize
=
{
this
.
props
.
pageSize
||
10
}
value
=
{
this
.
state
}
notShowBack
=
{
true
}
rights
=
{
this
.
props
.
rights
||
[]}
objCode
=
{
this
.
props
.
objCode
}
isFormCom
=
{
true
}
sql
=
{
this
.
props
.
sql
}
/>
:
<
FormList
onSelectRow
=
{
this
.
props
.
value
.
onSelectRow
}
istableCom
=
{
true
}
showHeader
=
{
this
.
props
.
showHeader
}
...
...
one_stop_public/libs/formList/TreeList.js
0 → 100644
浏览文件 @
4160092a
差异被折叠。
点击展开。
one_stop_public/libs/formList/index.js
浏览文件 @
4160092a
...
...
@@ -32,6 +32,9 @@ import SearchInfo from '../../App/SearchInfo';
import
{
Base16Encode
}
from
"../../Base16/index"
;
import
baseX
from
'base-x'
import
{
isEmpty
}
from
'lodash'
import
FilePreview
from
"@/webPublic/one_stop_public/filePreview"
;
import
{
queryApiActionPath
}
from
"@/webPublic/one_stop_public/utils/queryConfig"
;
import
UploadCom
from
"@/components/libs/UploadCom"
;
const
BASE16
=
'0123456789abcdef'
const
bs16
=
baseX
(
BASE16
)
const
FormItem
=
Form
.
Item
;
...
...
@@ -232,6 +235,24 @@ class FormList extends React.Component {
// }
};
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
=
{};
...
...
@@ -361,29 +382,25 @@ class FormList extends React.Component {
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
),
};
this
.
custom
=
Base16Encode
(
JSON
.
stringify
(
b
))
if
(
this
.
state
.
objId
)
this
.
getPage
(
params
)
}
if
(
this
.
props
.
objCode
==
"1"
||
this
.
props
.
objCode
==
1
){
const
params
=
{
pageNo
:
1
,
pageSize
:
this
.
props
.
pageSize
||
10
,
query
:
JSON
.
stringify
(
this
.
state
.
formValues
),
};
this
.
columns
=
nextProps
.
value
.
columns
if
(
nextProps
.
value
.
getPage
){
this
.
getPage
(
params
,
null
,
nextProps
.
value
.
getPage
);
}
}
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
)){
...
...
@@ -444,7 +461,27 @@ class FormList extends React.Component {
}
}
else
if
(
datas
[
t
].
name
.
indexOf
(
"process_status"
)
>-
1
){
column
.
render
=
(
val
)
=>
val
?(
val
===
"0"
?
"审核通过"
:
"审核未通过"
):
null
}
else
{
}
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
...
...
@@ -770,7 +807,18 @@ class FormList extends React.Component {
<
/FormItem
>
);
}
else
if
(
isQuery
&&
item
.
isGroupQuery
!=
null
&&
item
.
isGroupQuery
){
//如果是查询 并且是组合查询
}
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
(
...
...
@@ -965,7 +1013,7 @@ class FormList extends React.Component {
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"/
><
/>
}
{
rig
nt
&&
rights
.
includes
(
"viewProcess"
)
&&
record
.
process_biz_key
?
<><
a
onClick
=
{
this
.
viewProcess
.
bind
(
this
,
record
)}
>
查看流程详情
<
/a><Divider type="vertical"/
><
/>:''
}
{
rig
hts
&&
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
)}
...
...
one_stop_public/tableCompon/index.jsx
浏览文件 @
4160092a
...
...
@@ -49,6 +49,7 @@ import TableSelect from '../libs/TableSelect';
import
LocationCom
from
'../libs/LocationCom'
import
MobileDate
from
'../libs/MobileDate'
;
import
ChildForm
from
'../libs/ChildForm'
;
import
ImgUploadCom
from
'../libs/ImgUploadCom'
;
import
moment
from
'moment'
;
import
router
from
'umi/router'
;
import
TableList
from
'../libs/TableList'
;
...
...
@@ -115,13 +116,6 @@ const errorHandler = error => {
}
};
let
oldProps
=
{}
const
normFile
=
(
e
)
=>
{
if
(
Array
.
isArray
(
e
))
{
return
e
;
}
return
e
&&
e
.
fileList
[
0
];
}
@
connect
(({
DataColumn
,
SqlManageEntity
,
formList
,
loading
})
=>
({
DataColumn
,
SqlManageEntity
,
formList
,
loading
:
loading
.
models
.
DataColumn
||
loading
.
models
.
SqlManageEntity
||
loading
.
models
.
formList
...
...
@@ -430,7 +424,7 @@ export default class tableCom extends Component {
componentWillReceiveProps
(
props
)
{
const
{
json
,
mapData
,
obj
}
=
props
;
if
(
json
==
null
)
{
if
(
json
==
null
||
this
.
props
.
safe
)
{
return
;
}
if
(
!
(
this
.
dataFilter
.
includes
(
json
.
comName
)
||
json
.
comName
==
"TableSelect"
)
&&
json
.
isFormulaOnce
)
{
...
...
@@ -772,11 +766,11 @@ export default class tableCom extends Component {
}
reqUtil
=
(
base52
,
json
,
orgCallback
,
url
,
method
,
params
,
callback
,
options
=
{})
=>
{
//查缓存
var
isChange
=
fals
e
;
var
isChange
=
tru
e
;
if
(
url
.
indexOf
(
"http"
)
===
-
1
)
{
url
=
config
.
httpServer
+
url
}
const
{
reqUrls
}
=
this
.
state
const
{
reqUrls
}
=
this
.
state
if
(
reqUrls
[
url
]
!=
null
)
{
const
ps
=
reqUrls
[
url
].
params
...
...
@@ -858,7 +852,7 @@ export default class tableCom extends Component {
}
return
"norefeshxxxxxxxxxxxxxxxxxxxx"
}
this
.
setState
({
reqUrls
},
()
=>
{
this
.
setState
({
},
()
=>
{
for
(
let
i
in
params
)
{
if
(
params
[
i
]
==
null
)
{
delete
params
[
i
]
...
...
@@ -882,10 +876,10 @@ export default class tableCom extends Component {
method
:
method
,
requestType
:
"form"
}).
then
(
data
=>
{
this
.
setState
({
res
:
data
},
()
=>
{
const
{
reqUrls
}
=
this
.
state
reqUrls
[
url
].
data
=
data
this
.
setState
({
reqUrls
})
const
{
reqUrls
}
=
this
.
state
reqUrls
[
url
].
data
=
data
this
.
setState
({
res
:
data
,
reqUrls
},
()
=>
{
if
(
callback
)
{
if
(
json
.
optionType
&&
json
.
optionType
==
"func"
)
{
...
...
@@ -1287,9 +1281,9 @@ export default class tableCom extends Component {
}
}
this
.
getData
(
json
,
dataColumn
,
obj
)
if
(
json
.
formula
!=
null
&&
json
.
formula
!=
""
)
{
if
(
json
.
formula
!=
null
&&
json
.
formula
!=
""
&&!
this
.
props
.
safe
)
{
this
.
getFunctionValue
(
json
.
formula
,
dataColumn
,
json
)
}
...
...
@@ -1469,16 +1463,7 @@ export default class tableCom extends Component {
return
dataColumn
;
};
changeUrl
=
(
info
,
key
)
=>
{
if
(
info
.
file
.
status
===
'done'
)
{
message
.
success
(
`图片上传成功`
);
this
.
setState
({
url
:
info
.
file
.
response
})
}
else
if
(
info
.
file
.
status
===
'error'
)
{
message
.
error
(
`图片上传失败`
);
}
}
render
()
{
/**
* json为申请表单
...
...
@@ -1931,19 +1916,14 @@ export default class tableCom extends Component {
if
(
end
!=
null
)
ivs
.
push
(
moment
(
parseInt
(
init
[
end
.
base52
])));
}
if
(
begin
!=
null
&&
end
!=
null
)
{
if
(
!
isEdit
)
{
r
:
cm
=
<
span
>
{
moment
(
parseInt
(
obj
[
begin
.
base52
])).
format
(
json
.
format
?
json
.
format
:
'YYYY-MM-DD HH:mm:ss'
)
}
至
{
' '
}
{
moment
(
parseInt
(
obj
[
end
.
base52
])).
format
(
json
.
format
?
json
.
format
:
'YYYY-MM-DD HH:mm:ss'
)
}
</
span
>
}
else
{
cm
=
getFieldDecorator
(
begin
.
base52
+
'_'
+
end
.
base52
,
{
initialValue
:
ivs
,
rules
:
[{
required
:
required
,
message
:
'请选择起止时间'
}],
})(<
RangePicker
showTime
/>);
}
}
else
{
cm
=
""
}
...
...
@@ -2106,6 +2086,8 @@ export default class tableCom extends Component {
}
cm
=
<
TableList
get=
{
get
}
isTree
=
{
json
.
isTree
}
json=
{
json
}
loading=
{
this
.
props
.
loading
}
showHeader=
{
json
.
showHeader
}
isHiddenPage=
{
json
.
isHiddenPage
}
...
...
@@ -2543,7 +2525,7 @@ export default class tableCom extends Component {
cm
=
getFieldDecorator
(
begin
.
base52
+
'$'
+
end
.
base52
,
{
initialValue
:
ivs
,
rules
:
json
.
vlds
&&
json
.
vlds
.
length
>
0
?
json
.
vlds
:
[{
required
:
required
,
message
:
'请选择起止时间'
}],
})(<
MobileDate
disabled=
{
disabled
}
/>);
})(<
MobileDate
disabled=
{
disabled
}
formate=
{
json
.
format
}
/>);
if
(
json
.
isLabel
&&
title
)
{
cm
=
<
Form
.
Item
labelCol=
{
{
span
:
json
.
labelSpan
}
}
...
...
@@ -2558,7 +2540,7 @@ export default class tableCom extends Component {
cm
=
getFieldDecorator
(
begin
.
base52
+
'$'
+
end
.
base52
,
{
initialValue
:
ivs
,
rules
:
json
.
vlds
&&
json
.
vlds
.
length
>
0
?
json
.
vlds
:
[{
required
:
required
,
message
:
'请选择起止时间'
}],
})(<
RangePicker
showTime
disabled=
{
disabled
}
/>);
})(<
RangePicker
showTime
=
{
json
.
showTime
!=
null
?
json
.
showTime
:
true
}
format=
{
json
.
format
?
json
.
format
:
"YYYY-MM-DD HH:mm:ss"
}
disabled=
{
disabled
}
/>);
}
if (json.label == null) title = '起止时间';
break;
...
...
@@ -2610,7 +2592,7 @@ export default class tableCom extends Component {
rules
:
json
.
vlds
&&
json
.
vlds
.
length
>
0
?
json
.
vlds
:
[{
required
:
required
,
message
:
'请选择起止时间'
}],
}
)(
<
DatePicker
disabled=
{
disabled
}
showTime
showTime
=
{
json
.
showTime
!=
null
?
json
.
showTime
:
true
}
onOpenChange=
{
get
===
'mobile'
?
()
=>
{
// 取消唤起移动端小键盘
setTimeout
(()
=>
{
if
(
document
.
querySelector
(
'.ant-calendar-input '
))
{
...
...
@@ -2711,15 +2693,9 @@ export default class tableCom extends Component {
break
;
case
'ImgUploadCom'
:
cm
=
getFieldDecorator
(
"img$"
+
dataColumn
.
base52
,
{
valuePropName
:
'fileList[0]'
,
getValueFromEvent
:
normFile
,
})(<
Upload
.
Dragger
disabled=
{
disabled
}
accept=
{
"image/*"
}
url=
{
this
.
state
.
url
||
initValue
}
showUploadList=
{
false
}
name=
"file"
action=
{
config
.
uploadUrl
}
onChange=
{
info
=>
this
.
changeUrl
(
info
,
dataColumn
.
base52
)
}
multiple=
{
false
}
style=
{
{
padding
:
0
}
}
>
{
this
.
state
.
url
||
initValue
?
<
img
src=
{
config
.
httpServer
+
(
this
.
state
.
url
||
initValue
)
}
style=
{
{
height
:
json
.
height
,
width
:
json
.
width
}
}
/>
:
<
div
style=
{
{
height
:
json
.
height
,
width
:
json
.
width
}
}
>
</
div
>
}
</
Upload
.
Dragger
>);
cm
=
getFieldDecorator
(
dataColumn
.
base52
,
{
initialValue
:
initValue
,
})(<
ImgUploadCom
json=
{
json
}
disabled=
{
disabled
}
/>);
if
(
get
===
'mobile'
&&
json
.
isLabel
&&
title
)
{
cm
=
<
Form
.
Item
labelCol=
{
{
span
:
json
.
labelSpan
}
}
...
...
@@ -2755,6 +2731,8 @@ export default class tableCom extends Component {
initialValue
:
initValue
||
{}
})(<
TableList
json=
{
json
}
isTree
=
{
json
.
isTree
}
isHiddenPage=
{
json
.
isHiddenPage
}
showHeader=
{
json
.
showHeader
}
loading=
{
this
.
props
.
loading
}
...
...
zyd_public/components/DraggableSetting/index.js
0 → 100644
浏览文件 @
4160092a
import
React
,
{
Fragment
,
Component
}
from
'react'
;
import
styles
from
'./index.less'
;
import
ButtonDiy
from
'@/baseComponent/ButtonDiy'
;
import
Shell
from
'@/baseComponent/Shell'
;
import
{
ModalConfirm
}
from
'@/baseComponent/Modal'
;
export
default
class
FormatSetting
extends
Component
{
dragEventList
=
()
=>
{
const
{
formatSettingObject
,
updateFormatSettingObject
}
=
this
.
props
;
let
draggedRef
=
null
;
document
.
addEventListener
(
'dragstart'
,
function
(
event
)
{
// 保存拖动元素的引用(ref.)
draggedRef
=
event
.
target
;
// 使其半透明
event
.
target
.
style
.
opacity
=
0.5
;
},
false
);
document
.
addEventListener
(
'dragend'
,
function
(
event
)
{
// 重置透明度
event
.
target
.
style
.
opacity
=
''
;
},
false
);
/* 放下目标节点时触发事件 */
document
.
addEventListener
(
'dragover'
,
function
(
event
)
{
// 阻止默认动作
event
.
preventDefault
();
},
false
);
document
.
addEventListener
(
'drop'
,
function
(
event
)
{
// 阻止默认动作(如打开一些元素的链接)
event
.
preventDefault
();
// 将拖动的元素到所选择的放置目标节点中
if
(
event
.
target
.
id
===
'dropZone'
)
{
const
left
=
event
.
offsetX
;
if
(
left
>
(
event
.
target
.
width
-
draggedRef
.
offsetWidth
-
10
))
{
console
.
log
(
'拖拽到了图片区域外部,不能进行拖拽'
);
return
false
;
}
const
top
=
event
.
offsetY
;
updateFormatSettingObject
(
draggedRef
.
id
,
left
,
top
);
draggedRef
.
style
.
left
=
left
;
// `${left}px`;
draggedRef
.
style
.
top
=
top
;
// `${top}px`;
}
},
false
);
};
componentDidMount
()
{
this
.
dragEventList
();
}
initConfig
=
()
=>
{
ModalConfirm
(
'您确定初始化打印录取通知书格式吗?'
,{
onOk
:
()
=>
{
this
.
props
.
initConfig
();
},
});
};
render
()
{
const
{
bgImage
,
formatSettingObject
,
saveConfig
}
=
this
.
props
;
const
configInfo
=
Object
.
keys
(
formatSettingObject
);
return
<
Fragment
>
<
Shell
styleShell
=
{{
marginTop
:
'0'
,
marginBottom
:
'20px'
}}
>
<
div
style
=
{{
height
:
'54px'
,
padding
:
'12px 0 12px 12px'
}}
>
<
ButtonDiy
name
=
"保存"
className
=
"primary"
handleClick
=
{
saveConfig
}
/
>
<
ButtonDiy
name
=
{
'初始化格式'
}
handleClick
=
{
this
.
initConfig
}
/
>
<
/div
>
<
/Shell
>
<
div
className
=
{
styles
.
outSideDiv
}
>
<
div
>
<
img
src
=
{
bgImage
}
id
=
{
'dropZone'
}
draggable
=
{
false
}
className
=
{
styles
.
bgimage
}
alt
=
{
'背景图'
}
/
>
{
configInfo
.
map
((
x
)
=>
{
return
(
<
div
draggable
=
{
true
}
className
=
{
styles
.
inSideItem
}
key
=
{
x
}
id
=
{
x
}
style
=
{
formatSettingObject
[
x
].
style
}
>
{
formatSettingObject
[
x
].
title
}
<
/div
>
);
})}
<
/div
>
<
/div
>
<
/Fragment
>
;
}
}
/***
* formatSettingObject: {
* content_set: {
* font: "宋体"
isNeedConfig: true
key: "JjqCiRYamxs"
name: "content_set"
size: "12"
style: {top: 300, left: 50}
title: "--详细内容--"
* }
* }
*
* */
zyd_public/components/DraggableSetting/index.less
0 → 100644
浏览文件 @
4160092a
.outSideDiv{
position: relative;
text-align: left;
width: 100%;
.bgimage{
height: auto;
overflow: auto;
z-index: 1;
}
.inSideItem{
position: absolute;
cursor: move;
z-index: 10;
color: #000;
padding-left: 10px;
padding-right: 10px;
font-size: 14px;
line-height: 28px;
border: 1px solid gray;
background-color: #CCC;
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论