Compare commits

...

34 Commits

Author SHA1 Message Date
xielei 8c99a043a3 Merge branch 'master' of http://10.0.41.100:3000/lishenfeng/tsg-web 2024-10-09 08:58:59 +08:00
xielei 933a9ef08f 页面搭建 2024-10-09 08:58:52 +08:00
秦子超 e8f667264b Merge branch 'master' of http://10.0.41.100:3000/lishenfeng/tsg-web 2024-10-08 17:14:15 +08:00
秦子超 426a9931da 修改 2024-10-08 17:14:14 +08:00
李神峰 1e4dd7cf66 Merge branch 'lsf-dev' 2024-10-08 11:32:24 +08:00
李神峰 247e4378bf feat(): 权限修改 2024-10-08 11:31:48 +08:00
xielei 6cf31ab253 页面搭建 2024-09-30 16:04:53 +08:00
xielei 9d694ae173 Merge branch 'master' of http://10.0.41.100:3000/lishenfeng/tsg-web 2024-09-30 15:41:02 +08:00
xielei 8bacb42f9a 页面搭建 2024-09-30 15:40:57 +08:00
李神峰 a41fb4bf91 Merge branch 'lsf-dev' 2024-09-30 15:25:12 +08:00
李神峰 6ed971f5eb feat(): 背景图片更改 2024-09-30 15:24:43 +08:00
秦子超 4c9f3f368d 弹窗样式修改 2024-09-30 15:19:34 +08:00
xielei 93a2610ae2 Merge branch 'master' of http://10.0.41.100:3000/lishenfeng/tsg-web 2024-09-30 15:07:38 +08:00
xielei b09cee71f1 页面搭建 2024-09-30 15:07:34 +08:00
秦子超 bcb3d1c9e2 Merge branch 'master' of http://10.0.41.100:3000/lishenfeng/tsg-web 2024-09-30 14:52:19 +08:00
秦子超 f36f999f8c 本月记录修改 2024-09-30 14:52:16 +08:00
xielei 2f19185cba Merge branch 'master' of http://10.0.41.100:3000/lishenfeng/tsg-web 2024-09-30 14:44:41 +08:00
xielei ec5bf12469 页面搭建 2024-09-30 14:44:35 +08:00
李神峰 9c91131348 Merge branch 'lsf-dev' 2024-09-30 14:31:59 +08:00
xielei 4545172312 Merge branch 'master' of http://10.0.41.100:3000/lishenfeng/tsg-web 2024-09-30 14:27:53 +08:00
xielei 21994d4217 页面搭建 2024-09-30 14:27:50 +08:00
李神峰 ab01f1d0bc fix(): bug修复 2024-09-30 13:46:09 +08:00
秦子超 bb849641af 跟路径修改 2024-09-30 13:17:33 +08:00
秦子超 4ce1b9bea7 Merge branch 'qzc-dev' 2024-09-30 13:16:47 +08:00
李神峰 3492bcff3c Merge branch 'lsf-dev' 2024-09-30 13:14:04 +08:00
李神峰 79aceb1e01 fix(): 考核统计bug修复 2024-09-30 13:13:27 +08:00
xielei a1143b9260 页面搭建 2024-09-30 12:23:53 +08:00
xielei f6651f9d68 Merge branch 'master' of http://10.0.41.100:3000/lishenfeng/tsg-web 2024-09-30 11:23:30 +08:00
xielei f296c3c785 页面搭建 2024-09-30 11:23:26 +08:00
李神峰 1eda2bb38f fix(): 菜单排序更改 2024-09-30 10:58:41 +08:00
李神峰 8303462fe0 Merge branch 'lsf-dev' 2024-09-30 10:25:05 +08:00
李神峰 65608d9985 fix():上传文件路径修复 2024-09-30 10:24:35 +08:00
xielei 5db2dd767f Merge branch 'master' of http://10.0.41.100:3000/lishenfeng/tsg-web 2024-09-30 10:22:01 +08:00
xielei bde0f178ec 页面搭建 2024-09-30 10:21:57 +08:00
65 changed files with 628 additions and 229 deletions

View File

@ -1 +1 @@
PUBLIC_URL=/xyt
PUBLIC_URL=/tsg

View File

@ -1,2 +1,2 @@
GENERATE_SOURCEMAP=false
PUBLIC_URL=/xyt
PUBLIC_URL=/tsg

View File

@ -29,7 +29,7 @@
<script type="text/javascript" src="%PUBLIC_URL%/popmotion.xl.min.js"></script>
<script type="text/javascript" src="%PUBLIC_URL%/imouplayer.js"></script>
<script src="%PUBLIC_URL%/h5Player/h5player.min.js"></script>
<title>咸丰县智慧水利平台</title>
<title>檀树岗水库现代化运行管理矩阵平台</title>
<style>
.lf{

View File

@ -4,6 +4,7 @@ import { FolderOutlined, ProfileOutlined } from '@ant-design/icons';
import { useLocation, useNavigate } from 'react-router';
import { MenuItem } from '../../models/_';
import { useSelector } from 'react-redux';
import { debug } from 'console';
const { SubMenu } = Menu;
@ -38,11 +39,11 @@ const SiderMenu: React.FC<{
}
useEffect(()=>{
if(openKeys?.[0]==='undefined'){
setOpenKeys(menuIndexes[1])
}
},[menuIndexes[1]])
// useEffect(() => {
// if (openKeys?.[0] === 'undefined') {
// setOpenKeys(menuIndexes[1])
// }
// },[menuIndexes[1]])
const onOpenChange = (keys: any) => {

View File

@ -211,12 +211,6 @@ export async function loadMenu(): Promise<MenuItem[]> {
]
},
{ id: id(), title: '全周期', redirect: '/mgr/sq/qzq/gcdsj',
children: [
{ id: id(), title: '工程大事记', path: '/mgr/sq/qzq/gcdsj'},
{ id: id(), title: '全周期档案', path: '/mgr/sq/qys/qzqda'},
]
},
{ id: id(), title: '全天候', redirect: '/mgr/sq/qth/sksq',
children: [
{ id: id(), title: '水库水情', path: '/mgr/sq/qth/sksq'},
@ -226,6 +220,13 @@ export async function loadMenu(): Promise<MenuItem[]> {
{ id: id(), title: '视频监控', path: '/mgr/sq/qth/spjk'},
]
},
{ id: id(), title: '全周期', redirect: '/mgr/sq/qzq/gcdsj',
children: [
{ id: id(), title: '工程大事记', path: '/mgr/sq/qzq/gcdsj'},
{ id: id(), title: '全周期档案', path: '/mgr/sq/qys/qzqda'},
]
},
]
},
{

View File

@ -1,13 +1,16 @@
import React, { useEffect, useState } from 'react';
import React, { useEffect, useState, useRef } from 'react';
import { Descriptions, Modal } from 'antd';
import {CloseOutlined} from '@ant-design/icons';
import { httpget2 } from '../../../../utils/request';
import BasicCrudModal from '../../../../components/crud/BasicCrudModal'
import ModalForm from '../../../rcgl/xcxj/xjrw/detailForm';
import apiurl from '../../../../service/apiurl';
import moment from "moment"
function Wxq({ id, data, dispatch }) {
console.log(data);
const width = 400;
const refModal = useRef();
const [detail, setDetail] = useState({})
const [visible,setVisible] = useState(false)
const closePop = () => {
@ -37,9 +40,11 @@ function Wxq({ id, data, dispatch }) {
<div className="title">
<div className="name flex flexac">
<div className='nameBorder'></div>
{data.stnm}
{data.taskTitle}
</div>
<div style={{cursor:'pointer',marginRight:'10px'}} onClick={()=>{setVisible(true)}}>详情</div>
<div style={{cursor:'pointer',marginRight:'10px'}} onClick={()=>{
refModal.current.showView(data);
}}>详情</div>
<div className="extra">
<CloseOutlined onClick={closePop} style={{color:"#333"}}/>
</div>
@ -47,11 +52,11 @@ function Wxq({ id, data, dispatch }) {
<div className="body">
<Descriptions labelStyle={{padding:"5px 0"}}>
<Descriptions.Item label="巡查完成日期" span={3} contentStyle={{ padding: "5px 0" }}>{data?.adnm || detail?.adnm}</Descriptions.Item>
<Descriptions.Item label="检查人" span={3} contentStyle={{padding:"5px 0"}}>{data?.ptcount || detail?.ptcount}</Descriptions.Item>
<Descriptions.Item label="巡查完成日期" span={3} contentStyle={{ padding: "5px 0" }}>{data?.finishTime || detail?.adnm}</Descriptions.Item>
<Descriptions.Item label="检查人" span={3} contentStyle={{padding:"5px 0"}}>{data?.inspectUserName || detail?.ptcount}</Descriptions.Item>
<Descriptions.Item label="任务类型" span={3} contentStyle={{padding:"5px 0"}}>{data?.etcount || detail?.etcount}</Descriptions.Item>
<Descriptions.Item label="问题数量" span={3} contentStyle={{padding:"5px 0"}}>{data.htcount || detail?.htcount}</Descriptions.Item>
<Descriptions.Item label="待处理" span={3} contentStyle={{padding:"5px 0"}}>{data.htcount || detail?.htcount}</Descriptions.Item>
<Descriptions.Item label="问题数量" span={3} contentStyle={{padding:"5px 0"}}>{data.problemNum || detail?.htcount}</Descriptions.Item>
<Descriptions.Item label="待处理" span={3} contentStyle={{padding:"5px 0"}}>{data.handleNum || detail?.htcount}</Descriptions.Item>
</Descriptions>
</div>
</div>
@ -60,17 +65,17 @@ function Wxq({ id, data, dispatch }) {
</div>
<Modal
visible={visible}
title={'巡查任务详情'}
footer={null}
onCancel={()=>{setVisible(false)}}
width="60vw"
destroyOnClose
className="queryDrpModal"
style={{top:"15px", height:"58vh"}}
>
</Modal>
<BasicCrudModal
width={1000}
ref={refModal}
style={{top:'100px'}}
title=""
title1="巡查任务详情"
component={ModalForm}
onCrudSuccess={()=>{}}
// onCrudSuccess={()=>{refresh({addvcd:localStorage.getItem('ADCD6')})}}
/>
</>
)
}

View File

@ -19,13 +19,23 @@ const Page = ({showPanels}) => {
const [data,setData] = useState({})//水库
useEffect(()=>{
dispatch.map.setLayerVisible({ ShuiKuLayer: true })
// dispatch.map.setLayerVisible({ ShuiKuLayer: true })
dispatch.map.setLayerVisible({ HdswLayer: true })
getData()
return ()=>{
dispatch.map.setLayerVisible({ ShuiKuLayer: false })
dispatch.map.setLayerVisible({ HdswLayer: false })
}
},[])
useEffect(()=>{
if(myKey==='2'){
dispatch.map.setLayerVisible({ ShuiKuLayer: true })
}else{
dispatch.map.setLayerVisible({ ShuiKuLayer: false })
}
},[myKey])
useEffect(()=>{
if(mapObj){
setMyKey('1')

View File

@ -53,7 +53,7 @@ const items = [
// { key:'23', label:'溢洪道', labelRight:'基本信息', icon:'yihongdao' },
// ] },
{ key:'2', label:'巡查巡检', children:[
{ key:'21', label:'巡查巡检', labelRight:'工程巡检', icon:'shuiku' },
{ key:'21', label:'巡查巡检', labelRight:'工程巡检', icon:'jianceshebeizhuangtai' },
// { key:'22', label:'大坝', labelRight:'基本信息', icon:'daba' },
// { key:'23', label:'溢洪道', labelRight:'基本信息', icon:'yihongdao' },
] },
@ -126,7 +126,7 @@ const HomePage = ({showPanels}) => {
dispatch.runtime.setHome()
setCheckedObj({ key:'11', label:'预警', labelRight:'预警', icon:'yujing' })
}else if(a==='2'){
// setShowTable(true)
setShowTable(true)
// dispatch.runtime.setHome()
setCheckedObj({ key:'21', label:'巡查巡检', labelRight:'工程巡检', icon:'shuiku' })
}else if(a==='3'){

View File

@ -30,7 +30,7 @@ const Page = ({mySetTms}) => {
const columns1 = [
{ title: '巡查完成日期', key: 'finishTime', dataIndex: 'finishTime',align: "center", ellipsis: true },
{ title: '巡查完成日期', key: 'finishTime', dataIndex: 'finishTime',align: "center",width:180, ellipsis: true },
{ title: '巡查人', key: 'inspectUserName', dataIndex: 'inspectUserName',align: "center" },
{ title: '异常项次', key: 'problemNum', dataIndex: 'problemNum',align: "center" },
];
@ -44,6 +44,17 @@ const Page = ({mySetTms}) => {
getDcl()
getBy()
getBn()
return ()=>{
mapObj && mapObj.getLayers().getArray().forEach((layer)=> {
const a = layer.values_
if( (layer.values_.name) && ((layer.values_.name).indexOf("HlSX_") !== -1 || (layer.values_.name).indexOf("HlItem_") !== -1 || (layer.values_.name).indexOf("LyItem_") !== -1) ){
layer.getSource().clear();
}
})
dispatch.runtime.closeFeaturePopAll()
}
},[])
const getDcl = async()=>{
@ -153,10 +164,17 @@ const Page = ({mySetTms}) => {
onRow={
(data)=>({
onClick:()=>{
addHlLayer(data.data,'HlItem_'+data.stnm,'#00FFFF',data)
data.data = {
"type":"MultiLineString",
"coordinates":[[
[114.746, 31.479],
[114.776, 31.509]
]]
}
addHlLayer(data.data,'HlItem_'+data.id,'#00FFFF',data)
const center = geometryCenter({type:"LineString",coordinates:data.data.coordinates[0]});
dispatch.runtime.setFeaturePop({
id: data.stnm,
id: data.id,
data: data,
type: 'xunjian',
lgtd: center[0],
@ -205,6 +223,7 @@ const Page = ({mySetTms}) => {
<BasicCrudModal
width={1000}
ref={refModal}
style={{top:'100px'}}
title=""
component={ModalForm}
title1="详情"

View File

@ -12,7 +12,7 @@ import moment from 'moment';
const Page = () => {
const { tableProps, search, refresh } = usePageTable(createCrudService('/gunshiApp/xyt/rescue/goods/page/query').find_noCode,{});
const { tableProps, search, refresh } = usePageTable(createCrudService('/gunshiApp/tsg/rescue/goods/page/query').find_noCode,{});
useEffect(()=>{
const params = {

View File

@ -25,7 +25,7 @@ const MyImg = ({ record }) => {
return (
<div style={{
flexGrow: 1,
height: '36vh',
height: '33vh',
overflow: 'hidden',
position: 'relative',
backgroundColor: "#eff3f6",

View File

@ -39,7 +39,7 @@ const Player: React.FC<IProps> = ({ activeKey, badgeType, tm, ts }) => {
const onSearchClick = (val:any) => {
setSelectTime(moment(val).format("YYYYMMDD"));
mapObj.getLayers().getArray().forEach((layer:any)=> {
mapObj && mapObj.getLayers().getArray().forEach((layer:any)=> {
if( (layer.values_.name) && (layer.values_.name).indexOf("radarImage") !== -1 ){
layer.setOpacity(0);
layer.setSource(null);
@ -105,7 +105,7 @@ const Player: React.FC<IProps> = ({ activeKey, badgeType, tm, ts }) => {
return ()=>{
dispatch.runtime.closeFeaturePopAll()
mapObj.getLayers().getArray().forEach((layer:any)=> {
mapObj && mapObj.getLayers().getArray().forEach((layer:any)=> {
if( (layer?.values_.name) && (layer?.values_.name)?.indexOf("radarImage") !== -1 ){
layer.dispose();
}
@ -138,7 +138,7 @@ const Player: React.FC<IProps> = ({ activeKey, badgeType, tm, ts }) => {
useEffect(() => {
//console.log("110",badgeType);
if(badgeType === 1){
mapObj.getView().setZoom(9);
mapObj && mapObj.getView().setZoom(9);
setTooltipOpen(true);
}
}, [badgeType]);
@ -146,7 +146,7 @@ const Player: React.FC<IProps> = ({ activeKey, badgeType, tm, ts }) => {
const setIndex = (index:any) => {
setNum(index);
mapObj.getLayers().getArray().forEach((layer:any)=> {
mapObj && mapObj.getLayers().getArray().forEach((layer:any)=> {
if( (layer.values_.name) && (layer.values_.name).indexOf("radarImage") !== -1 ){
layer.dispose();
}
@ -176,11 +176,11 @@ const Player: React.FC<IProps> = ({ activeKey, badgeType, tm, ts }) => {
// @ts-ignore
const deleteLayer = (layerId) => {
// @ts-ignore
var layer = mapObj.getLayers().getArray().find(function(layer) {
var layer = mapObj && mapObj.getLayers().getArray().find(function(layer) {
return layer.get('id') === layerId;
});
if (layer) {
mapObj.removeLayer(layer);
mapObj && mapObj.removeLayer(layer);
}
};
@ -223,7 +223,7 @@ const Player: React.FC<IProps> = ({ activeKey, badgeType, tm, ts }) => {
deleteLayer("radarImage");
mapObj.addLayer(sateCloudLayer);
mapObj && mapObj.addLayer(sateCloudLayer);
}
}
}, [radarImgData, mapObj, num, activeKey]);//radarImgData, mapObj, channelVariables, num

View File

@ -131,7 +131,7 @@ export default function SetDrpStation({tms, setTableData}) {
const point2 = transform([item.lgtd, item.lttd], 'EPSG:4326', 'EPSG:3857');
const feature = new Feature({
geometry: new Point(point2),
data:{...item,myParams:tms}
data:{...item,myParams:tms,myLayerType:'drp'}
});
return feature
@ -150,7 +150,7 @@ export default function SetDrpStation({tms, setTableData}) {
});
if (feature) {
const data = feature.values_.data
if(data){
if(data && data.myLayerType==='drp'){
dispatch.runtime.setFeaturePop({
id: data.stcd,
data:{...data,myParams:tms},

View File

@ -84,7 +84,7 @@ export default function SetDrpStation({tms}) {
});
const feature = new Feature({
geometry,
data:{...item.properties,geometry:item.geometry},
data:{...item.properties,geometry:item.geometry,myLayerType:'wxq'},
});
return feature
@ -104,8 +104,7 @@ export default function SetDrpStation({tms}) {
const data = feature.values_.data
const center = geometryCenter(data.geometry);
if(data){
if(data && data.myLayerType==='wxq'){
dispatch.runtime.setCameraTarget({
center: [center[0], center[1]],

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 MiB

After

Width:  |  Height:  |  Size: 1.7 MiB

View File

@ -90,7 +90,7 @@ const ModalForm = ({ mode, record,onEdit,onSave,onCrudSuccess }) => {
const download = (params) => {
let downloadLink = document.createElement("a");
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/xyt/resPlanB/file/download/${params}`;
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/tsg/resPlanB/file/download/${params}`;
downloadLink.download = `${params.fileName}`;
downloadLink.style.display = "none";
// 将链接添加到页面中
@ -192,7 +192,7 @@ const ModalForm = ({ mode, record,onEdit,onSave,onCrudSuccess }) => {
>
<Upload
name='file'
action="/gunshiApp/xyt/resPlanB/file/upload/singleSimple"
action="/gunshiApp/tsg/resPlanB/file/upload/singleSimple"
onChange={fileChange}
fileList={fileList}
maxCount={1}
@ -309,7 +309,7 @@ const ModalForm = ({ mode, record,onEdit,onSave,onCrudSuccess }) => {
border: 0,
marginTop: 20,
}}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/xyt/resPlanB/file/download/${iframeId}`)}`}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/tsg/resPlanB/file/download/${iframeId}`)}`}
/>
</Modal>
</>

View File

@ -47,7 +47,7 @@ export default function Zrtx() {
}
const download = (params) => {
let downloadLink = document.createElement("a");
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/xyt/resPlanB/file/download/${params?.fileId}`;
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/tsg/resPlanB/file/download/${params?.fileId}`;
downloadLink.download = `${params.fileName}`;
downloadLink.style.display = "none";
// 将链接添加到页面中
@ -118,7 +118,7 @@ export default function Zrtx() {
border: 0,
marginTop: 20,
}}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/xyt/resPlanB/file/download/${iframeSrc.fileId}`)}`}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/tsg/resPlanB/file/download/${iframeSrc.fileId}`)}`}
/>
</Modal>
</div>

View File

@ -90,7 +90,7 @@ const ModalForm = ({ mode, record,onEdit,onSave,onCrudSuccess }) => {
const download = (params) => {
let downloadLink = document.createElement("a");
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/xyt/resPlanB/file/download/${params}`;
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/tsg/resPlanB/file/download/${params}`;
downloadLink.download = `${params.fileName}`;
downloadLink.style.display = "none";
// 将链接添加到页面中
@ -192,7 +192,7 @@ const ModalForm = ({ mode, record,onEdit,onSave,onCrudSuccess }) => {
>
<Upload
name='file'
action="/gunshiApp/xyt/resPlanB/file/upload/singleSimple"
action="/gunshiApp/tsg/resPlanB/file/upload/singleSimple"
onChange={fileChange}
fileList={fileList}
maxCount={1}
@ -309,7 +309,7 @@ const ModalForm = ({ mode, record,onEdit,onSave,onCrudSuccess }) => {
border: 0,
marginTop: 20,
}}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/xyt/resPlanB/file/download/${iframeId}`)}`}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/tsg/resPlanB/file/download/${iframeId}`)}`}
/>
</Modal>
</>

View File

@ -47,7 +47,7 @@ export default function Zrtx() {
}
const download = (params) => {
let downloadLink = document.createElement("a");
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/xyt/resPlanB/file/download/${params?.fileId}`;
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/tsg/resPlanB/file/download/${params?.fileId}`;
downloadLink.download = `${params.fileName}`;
downloadLink.style.display = "none";
// 将链接添加到页面中
@ -118,7 +118,7 @@ export default function Zrtx() {
border: 0,
marginTop: 20,
}}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/xyt/resPlanB/file/download/${iframeSrc.fileId}`)}`}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/tsg/resPlanB/file/download/${iframeSrc.fileId}`)}`}
/>
</Modal>
</div>

View File

@ -281,7 +281,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
*/
const download = (params) => {
let downloadLink = document.createElement("a");
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/xyt/rescue/team/file/download/${params}`;
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/tsg/rescue/team/file/download/${params}`;
downloadLink.download = `${params.fileName}`;
downloadLink.style.display = "none";
// 将链接添加到页面中
@ -508,7 +508,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
<Dragger
name='file'
// multiple
action="/gunshiApp/xyt/rescue/team/file/upload/singleSimple"
action="/gunshiApp/tsg/rescue/team/file/upload/singleSimple"
onChange={fileChange}
onDrop={(info) => { console.log(info.dataTransfer.files); }}
fileList={fileList}
@ -631,7 +631,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
border: 0,
marginTop: 20,
}}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/xyt/rescue/goods/file/download/${iframeSrc}`)}`}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/tsg/rescue/goods/file/download/${iframeSrc}`)}`}
/>
</Modal>
</>

View File

@ -156,7 +156,7 @@ const ModalForm = ({ mode, record,onEdit,onSave,onSimilarSave }) => {
*/
const download = (params) => {
let downloadLink = document.createElement("a");
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/xyt/rescue/goods/file/download/${params}`;
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/tsg/rescue/goods/file/download/${params}`;
downloadLink.download = `${params.fileName}`;
downloadLink.style.display = "none";
// 将链接添加到页面中
@ -280,7 +280,7 @@ const ModalForm = ({ mode, record,onEdit,onSave,onSimilarSave }) => {
<Dragger
name='file'
// multiple
action="/gunshiApp/xyt/rescue/goods/file/upload/singleSimple"
action="/gunshiApp/tsg/rescue/goods/file/upload/singleSimple"
onChange={fileChange}
onDrop={(info) => { console.log(info.dataTransfer.files); }}
fileList={fileList}
@ -391,7 +391,7 @@ const ModalForm = ({ mode, record,onEdit,onSave,onSimilarSave }) => {
border: 0,
marginTop: 20,
}}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/xyt/rescue/goods/file/download/${iframeSrc}`)}`}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/tsg/rescue/goods/file/download/${iframeSrc}`)}`}
/>
</Modal>
</>

View File

@ -35,7 +35,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
*/
const download = (params) => {
let downloadLink = document.createElement("a");
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/xyt/safety/check/file/download/${params.fileId}`;
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/tsg/safety/check/file/download/${params.fileId}`;
downloadLink.download = `${params.fileName}`;
downloadLink.style.display = "none";
// 将链接添加到页面中
@ -245,7 +245,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
<Dragger
name='file'
// multiple
action="/gunshiApp/xyt/safety/check/file/upload/singleSimple"
action="/gunshiApp/tsg/safety/check/file/upload/singleSimple"
onChange={fileChange}
onDrop={(info) => { console.log(info.dataTransfer.files); }}
fileList={fileList}
@ -344,7 +344,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
border: 0,
marginTop: 20,
}}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/xyt/safety/check/file/download/${iframeSrc}`)}`}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/tsg/safety/check/file/download/${iframeSrc}`)}`}
/>
</Modal>
</>

View File

@ -47,7 +47,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
*/
const download = (params) => {
let downloadLink = document.createElement("a");
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/xyt/safety/identify/file/download/${params.fileId}`;
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/tsg/safety/identify/file/download/${params.fileId}`;
downloadLink.download = `${params.fileName}`;
downloadLink.style.display = "none";
// 将链接添加到页面中
@ -266,7 +266,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
<Dragger
name='file'
// multiple
action="/gunshiApp/xyt/safety/identify/file/upload/singleSimple"
action="/gunshiApp/tsg/safety/identify/file/upload/singleSimple"
onChange={fileChange}
onDrop={(info) => { console.log(info.dataTransfer.files); }}
fileList={fileList}
@ -365,7 +365,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
border: 0,
marginTop: 20,
}}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/xyt/safety/identify/file/download/${iframeSrc}`)}`}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/tsg/safety/identify/file/download/${iframeSrc}`)}`}
/>
</Modal>
</>

View File

@ -38,7 +38,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
*/
const download = (params) => {
let downloadLink = document.createElement("a");
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/xyt/safety/accident/reg/file/download/${params.fileId}`;
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/tsg/safety/accident/reg/file/download/${params.fileId}`;
downloadLink.download = `${params.fileName}`;
downloadLink.style.display = "none";
// 将链接添加到页面中
@ -271,7 +271,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
{mode !== "view" &&
<Dragger
name='file'
action="/gunshiApp/xyt/safety/accident/reg/file/upload/singleSimple"
action="/gunshiApp/tsg/safety/accident/reg/file/upload/singleSimple"
onChange={imgfileChange}
beforeUpload={imgbeforeUpload}
onDrop={(info) => { console.log(info); }}
@ -375,7 +375,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
<Dragger
name='file'
// multiple
action="/gunshiApp/xyt/safety/accident/reg/file/upload/singleSimple"
action="/gunshiApp/tsg/safety/accident/reg/file/upload/singleSimple"
onChange={fileChange}
onDrop={(info) => { console.log(info.dataTransfer.files); }}
fileList={fileList}
@ -474,7 +474,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
border: 0,
marginTop: 20,
}}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/xyt/safety/accident/reg/file/download/${iframeSrc}`)}`}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/tsg/safety/accident/reg/file/download/${iframeSrc}`)}`}
/>
</Modal>
</div>

View File

@ -30,7 +30,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
*/
const download = (params) => {
let downloadLink = document.createElement("a");
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/xyt/safety/hazard/invest/file/download/${params.fileId}`;
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/tsg/safety/hazard/invest/file/download/${params.fileId}`;
downloadLink.download = `${params.fileName}`;
downloadLink.style.display = "none";
// 将链接添加到页面中
@ -203,7 +203,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
<Dragger
name='file'
// multiple
action="/gunshiApp/xyt/safety/hazard/invest/file/upload/singleSimple"
action="/gunshiApp/tsg/safety/hazard/invest/file/upload/singleSimple"
onChange={fileChange}
onDrop={(info) => { console.log(info.dataTransfer.files); }}
fileList={fileList}
@ -302,7 +302,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
border: 0,
marginTop: 20,
}}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/xyt/safety/hazard/invest/file/download/${iframeSrc}`)}`}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/tsg/safety/hazard/invest/file/download/${iframeSrc}`)}`}
/>
</Modal>
</>

View File

@ -38,7 +38,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
*/
const download = (params) => {
let downloadLink = document.createElement("a");
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/xyt/safety/reinforcement/file/download/${params.fileId}`;
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/tsg/safety/reinforcement/file/download/${params.fileId}`;
downloadLink.download = `${params.fileName}`;
downloadLink.style.display = "none";
// 将链接添加到页面中
@ -266,7 +266,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
<Dragger
name='file'
// multiple
action="/gunshiApp/xyt/safety/reinforcement/file/upload/singleSimple"
action="/gunshiApp/tsg/safety/reinforcement/file/upload/singleSimple"
onChange={fileChange}
onDrop={(info) => { console.log(info.dataTransfer.files); }}
fileList={fileList}
@ -365,7 +365,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
border: 0,
marginTop: 20,
}}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/xyt/safety/reinforcement/file/download/${iframeSrc}`)}`}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/tsg/safety/reinforcement/file/download/${iframeSrc}`)}`}
/>
</Modal>
</>

View File

@ -293,7 +293,7 @@ const AdcdTreeSelector: React.FC<IProps> = ({ onSelectFun, setAdcd, showCheckbox
<Row>
<Col span={24}>
<Form.Item
label="视频区域"
label="管控区域"
name="name"
rules={[{required: true}]}
>

View File

@ -74,7 +74,7 @@ const getResultList = async() => {
*/
const download = (params) => {
let downloadLink = document.createElement("a");
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/xyt/risk/info/file/download/${params.fileId}`;
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/tsg/risk/info/file/download/${params.fileId}`;
downloadLink.download = `${params.fileName}`;
downloadLink.style.display = "none";
// 将链接添加到页面中
@ -195,7 +195,7 @@ const getResultList = async() => {
},
}))
setFileList(imgFile)
form.setFieldValue("result",record.result.map(item => item.sysDictId))
form.setFieldValue("result",record?.result?.map(item => item.sysDictId))
}
}, [record, mode])
@ -304,7 +304,7 @@ const getResultList = async() => {
<Dragger
name='file'
// multiple
action="/gunshiApp/xyt/risk/info/file/upload/singleSimple"
action="/gunshiApp/tsg/risk/info/file/upload/singleSimple"
onChange={fileChange}
onDrop={(info) => { console.log(info.dataTransfer.files); }}
fileList={fileList}
@ -404,7 +404,7 @@ const getResultList = async() => {
border: 0,
marginTop: 20,
}}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/xyt/risk/info/file/download/${iframeSrc}`)}`}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/tsg/risk/info/file/download/${iframeSrc}`)}`}
/>
</Modal>
</>

View File

@ -95,7 +95,7 @@ const Page = () => {
<Table
title={() => (
<>
<h2 style={{ textAlign: "center" }}>小玉潭水库{searchVal?.year}年日平均水位年报表</h2>
<h2 style={{ textAlign: "center" }}>檀树岗水库{searchVal?.year}年日平均水位年报表</h2>
<div style={{ textAlign: "right" }}>单位m</div>
</>
)}

View File

@ -94,7 +94,7 @@ const Page = () => {
<Table
title={() => (
<>
<h2 style={{ textAlign: "center" }}>小玉潭水库{searchVal?.year}年日降雨年报表</h2>
<h2 style={{ textAlign: "center" }}>檀树岗水库{searchVal?.year}年日降雨年报表</h2>
<div style={{ textAlign: "right" }}>单位mm</div>
</>
)}

View File

@ -371,7 +371,7 @@ const getResultList = async() => {
<Dragger
name='file'
// multiple
action="/gunshiApp/xyt/termite/survey/file/upload/singleSimple"
action="/gunshiApp/tsg/termite/survey/file/upload/singleSimple"
onChange={imgfileChange}
beforeUpload={imgbeforeUpload}
onDrop={(info) => { console.log(info); }}
@ -422,7 +422,7 @@ const getResultList = async() => {
{mode !== "view" &&
<Dragger
name='file'
action="/gunshiApp/xyt/termite/survey/file/upload/singleSimple"
action="/gunshiApp/tsg/termite/survey/file/upload/singleSimple"
onChange={videoFileChange}
beforeUpload={videoBeforeUpload}
onDrop={(info) => { console.log(info); }}

View File

@ -83,7 +83,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onCrudSuccess }) => {
>
<Upload
name='file'
action="/gunshiApp/xyt/termite/pic/file/upload/singleSimple"
action="/gunshiApp/tsg/termite/pic/file/upload/singleSimple"
onChange={fileChange}
fileList={fileList}
disabled={loading}

View File

@ -80,7 +80,7 @@ const Page = () => {
}
const download = (params) => {
let downloadLink = document.createElement("a");
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/xyt/termite/adver/file/download/${params}`;
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/tsg/termite/adver/file/download/${params}`;
downloadLink.download = `${params.fileName}`;
downloadLink.style.display = "none";
// 将链接添加到页面中
@ -126,7 +126,7 @@ const Page = () => {
<span>宣传资料</span>
{uploadBtn ? <Upload
name='file'
action="/gunshiApp/xyt/termite/adver/file/upload/singleSimple"
action="/gunshiApp/tsg/termite/adver/file/upload/singleSimple"
onChange={fileChange}
fileList={fileList}
disabled={loading}

View File

@ -31,7 +31,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
*/
const download = (params) => {
let downloadLink = document.createElement("a");
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/xyt/projectEvents/file/download/${params}`;
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/tsg/projectEvents/file/download/${params}`;
downloadLink.download = `${params.fileName}`;
downloadLink.style.display = "none";
// 将链接添加到页面中
@ -188,7 +188,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
<Dragger
name='file'
// multiple
action="/gunshiApp/xyt/projectEvents/file/upload/singleSimple"
action="/gunshiApp/tsg/projectEvents/file/upload/singleSimple"
onChange={fileChange}
onDrop={(info) => { console.log(info.dataTransfer.files); }}
fileList={fileList}
@ -287,7 +287,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
border: 0,
marginTop: 20,
}}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/xyt/projectEvents/file/download/${iframeSrc}`)}`}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/tsg/projectEvents/file/download/${iframeSrc}`)}`}
/>
</Modal>
</>

View File

@ -61,7 +61,7 @@ const Page = () => {
const download = (params) => {
let downloadLink = document.createElement("a");
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/xyt/projectEvents/file/download/${params}`;
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/tsg/projectEvents/file/download/${params}`;
downloadLink.download = `${params.fileName}`;
downloadLink.style.display = "none";
// 将链接添加到页面中
@ -213,7 +213,7 @@ const viewPdf = (params) => {
border: 0,
marginTop: 20,
}}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/xyt/projectEvents/file/download/${iframeSrc}`)}`}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/tsg/projectEvents/file/download/${iframeSrc}`)}`}
/>
</Modal>
</>

View File

@ -610,7 +610,7 @@ const EditableRow = ({ index, ...props }) => {
<Dragger
name='file'
action="/gunshiApp/xyt/assessTeamRating/file/upload/singleSimple"
action="/gunshiApp/tsg/assessTeamRating/file/upload/singleSimple"
onChange={imgfileChange}
beforeUpload={imgbeforeUpload}
onDrop={(info) => { console.log(info); }}

View File

@ -203,7 +203,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
*/
const download = (params) => {
let downloadLink = document.createElement("a");
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/xyt/assessTask/file/download/${params.fileId}`;
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/tsg/assessTask/file/download/${params.fileId}`;
downloadLink.download = `${params.fileName}`;
downloadLink.style.display = "none";
// 将链接添加到页面中
@ -607,7 +607,7 @@ const [selectPerson, setSelectPerson] = useState([])
<Dragger
name='file'
// multiple
action="/gunshiApp/xyt/assessTask/file/upload/singleSimple"
action="/gunshiApp/tsg/assessTask/file/upload/singleSimple"
onChange={fileChange}
onDrop={(info) => { console.log(info.dataTransfer.files); }}
fileList={fileList}
@ -726,7 +726,7 @@ const [selectPerson, setSelectPerson] = useState([])
border: 0,
marginTop: 20,
}}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/xyt/assessTask/file/download/${iframeSrc}`)}`}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/tsg/assessTask/file/download/${iframeSrc}`)}`}
/>
</Modal>
{/* 模版 */}

View File

@ -26,6 +26,10 @@ export default function jgOptions(personData) {
tooltip: {},
xAxis: {
type: 'category',
axisLabel: {
interval: Xdata.length > 5 ? 0 : 1, // 强制显示所有标签
rotate: Xdata.length > 5 ? 20 : 0 // 旋转角度
},
data: Xdata
},
yAxis: {

View File

@ -31,7 +31,7 @@ console.log("record",record);
*/
const download = (params) => {
let downloadLink = document.createElement("a");
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/xyt/assessTeamRating/file/download/${params.fileId}`;
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/tsg/assessTeamRating/file/download/${params.fileId}`;
downloadLink.download = `${params.fileName}`;
downloadLink.style.display = "none";
// 将链接添加到页面中
@ -238,7 +238,7 @@ console.log("record",record);
<Dragger
name='file'
// multiple
action="/gunshiApp/xyt/assessTeamRating/file/upload/singleSimple"
action="/gunshiApp/tsg/assessTeamRating/file/upload/singleSimple"
onChange={fileChange}
onDrop={(info) => { console.log(info.dataTransfer.files); }}
fileList={fileList}
@ -337,7 +337,7 @@ console.log("record",record);
border: 0,
marginTop: 20,
}}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/xyt/assessTeamRating/file/download/${iframeSrc}`)}`}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/tsg/assessTeamRating/file/download/${iframeSrc}`)}`}
/>
</Modal>
</div>

View File

@ -229,7 +229,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
<Dragger
name='file'
// multiple
action="/gunshiApp/xyt/maintain/service/file/upload/singleSimple"
action="/gunshiApp/tsg/maintain/service/file/upload/singleSimple"
onChange={imgfileChange}
beforeUpload={imgbeforeUpload}
onDrop={(info) => { console.log(info); }}
@ -280,7 +280,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
{mode !== "view" &&
<Dragger
name='file'
action="/gunshiApp/xyt/maintain/service/file/upload/singleSimple"
action="/gunshiApp/tsg/maintain/service/file/upload/singleSimple"
onChange={videoFileChange}
beforeUpload={videoBeforeUpload}
onDrop={(info) => { console.log(info); }}

View File

@ -13,7 +13,7 @@ import {CrudOpRender_text} from '../../../../components/crud/CrudOpRender';
const url = "http://223.75.53.141:9102/test.by-lyf.tmp"
const Page = () => {
const role = useSelector(state => state.auth.role);
const viewBtn = role?.rule?.find(item => item.menuName == "详情");
const viewBtn = role?.rule?.find(item => item.menuName == "详情") || true;
const refModal = useRef();
const [searchVal, setSearchVal] = useState(false)
const [tabs, setTabsChange] = useState(0)

View File

@ -16,9 +16,9 @@ const Page = () => {
const role = useSelector(state => state.auth.role);
console.log(role);
const editBtn = role?.rule?.find(item => item.menuName == "编辑");
const viewBtn = role?.rule?.find(item => item.menuName == "查看");
const delBtn = role?.rule?.find(item => item.menuName == "删除");
const editBtn = role?.rule?.find(item => item.menuName == "编辑") || true;
const viewBtn = role?.rule?.find(item => item.menuName == "查看") || true;
const delBtn = role?.rule?.find(item => item.menuName == "删除") || true;
const checkType = {
1: "低风险",
2: "一般风险",

View File

@ -2,8 +2,8 @@ import { Image } from "antd"
import zd from '../../../assets/img/u0.png'
const Page = () => {
return (
<div style={{display:'flex',justifyContent:'center',alignItems:'center',backgroundColor:'#fff',height:'100%'}}>
<Image src={zd} style={{margin:'auto'}} preview={false}/>
<div style={{display:'flex',justifyContent:'center',alignItems:'center',backgroundColor:'#fff',height:'100%',padding:'20px'}}>
<Image src={zd} style={{margin:'auto',margin:'20px',height:'750px'}} preview={false}/>
</div>
)
}

View File

@ -5,6 +5,7 @@ import KrLine from './KrLine'
import MonthLl from './monthLl'
import apiurl from '../../../../service/apiurl';
import { httpget2, httppost2 } from '../../../../utils/request';
import XlLine from './xlLine'
import "./index.less"
export default function ShuikuBasicInfo() {
const [tabVal, setTabVal] = useState('1')
@ -39,6 +40,10 @@ export default function ShuikuBasicInfo() {
className={tabVal === '3' ? 'fxdd_hsybjs_toolbar_item hsybjs_checked' : 'fxdd_hsybjs_toolbar_item'}
onClick={() => setTabVal('3')}>水库库容曲线
</div>
<div
className={tabVal === '4' ? 'fxdd_hsybjs_toolbar_item hsybjs_checked' : 'fxdd_hsybjs_toolbar_item'}
onClick={() => setTabVal('4')}>水库泄流曲线
</div>
<div
className={tabVal === '5' ? 'fxdd_hsybjs_toolbar_item hsybjs_checked' : 'fxdd_hsybjs_toolbar_item'}
onClick={() => setTabVal('5')}>月生态流量
@ -51,6 +56,7 @@ export default function ShuikuBasicInfo() {
{tabVal === "1" ? <ProjectBasciInfo /> : null}
{tabVal === "2" ? <TzParams /> : null}
{tabVal === "3" ? <KrLine dataInfo={data}/> : null}
{tabVal === "4" ? <XlLine /> : null}
{tabVal === "5" ? <MonthLl dataInfo={data}/> : null}
</div>

View File

@ -358,7 +358,7 @@ export default function ProjectBasciInfo() {
>
<Upload
name='file'
action="/gunshiApp/xyt/attResBase/file/upload/singleSimple"
action="/gunshiApp/tsg/attResBase/file/upload/singleSimple"
onChange={fileChange}
fileList={fileList}
maxCount={1}
@ -452,7 +452,7 @@ export default function ProjectBasciInfo() {
border: 0,
marginTop: 20,
}}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/xyt/attResBase/file/download/${iframeId}`)}`}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/tsg/attResBase/file/download/${iframeId}`)}`}
/>
</Modal>
</div>

View File

@ -0,0 +1,97 @@
import echarts from 'echarts/lib/echarts';
import { GetInterval } from '../../../../../utils/tools'
export default function drpOption({data}) {
const maxVal = Math.ceil(Math.max(...data.map(obj => obj.q)))
const minVal = Math.floor(Math.min(...data.map(obj => obj.q)))
const maxValX = Math.max(...data.map(obj => obj.z))
const minValX = Math.min(...data.map(obj => obj.z))
let arr =[]
data.forEach(item=>{
console.log(data);
arr.push([item.q,item.z])
})
// console.log(GetInterval(minValX,maxValX),'jhsdjkashdjkahjk');
return {
toolbox: {
show: true,
feature: {
saveAsImage: {
show: true,
excludeComponents: ['toolbox'],
pixelRatio: 2,
name:"泄流曲线图"
}
},
right: "14%",
top:"5%"
},
title: {
text: "泄流曲线图",
left: "40%",
},
tooltip: {
trigger: 'axis',
},
grid: [
{
top: "10%",
left: "15%",
right: "15%",
bottom: "8%"
},
],
xAxis: [
{
name: "流量(m³/s)",
nameGap: 5,
type: 'value',
min:Math.floor(minValX / 5) *5,
max:Math.ceil(maxValX / 5) *5,
interval:GetInterval(minValX,maxValX),
data: data.map(o => o.z),
splitLine: {
show: false
},
}
],
yAxis: [
{
type: 'value',
name: "库水位(m)",
minInterval:1,
splitLine: {
show: true,
lineStyle: {
color: '#07a6ff',
width: 0.25,
type: 'dotted'
}
},
axisLabel: {
color: '#333',
fontSize: 12,
},
axisLine: {
show: false
},
axisTick: {
show: false,
},
min: minVal,
max: maxVal
}
],
series: [
{
type: 'line',
color: "#007AFD",
data: arr,
smooth: true
},
]
};
}

View File

@ -0,0 +1,82 @@
import React,{useEffect,useState,useRef} from 'react';
import { Form, Button, Input, Row, Col} from 'antd';
import { formItemLayout, btnItemLayout } from '../../../../../components/crud/FormLayoutProps';
import apiurl from '../../../../../service/apiurl';
const ModalForm = ({ mode, record,onEdit,onSave,onCrudSuccess }) => {
const [form] = Form.useForm();
const onFinish = async (values) => {
values.resCode = "42120250085"
values.id = record?.id
if (mode === 'edit') {
const params = {
...record,
q: Number(values?.q),
z: Number(values?.z),
}
onEdit(apiurl.dataResourcesCenter.projectAndWater.xl.update,params)
}
if (mode === 'save') {
onSave(apiurl.dataResourcesCenter.projectAndWater.xl.save,values)
}
}
return (
<>
<Form
form={form}
// {...formItemLayout}
onFinish={onFinish}
initialValues={record}
// labelCol={{ span: 1 }}
// wrapperCol={{ span: 15 }}
>
<Row>
<Col span={24}>
<Form.Item
label="水位(m)"
name="q"
labelCol={{ span: 4, offset: 0 }}
wrapperCol={{span:20,offset:0}}
rules={[{ required: true }]}
>
<Input
style={{ width: '100%' }}
allowClear
/>
</Form.Item>
</Col>
</Row>
<Row>
<Col span={24}>
<Form.Item
label="流量(m³/s)"
name="z"
labelCol={{ span: 4, offset: 0 }}
wrapperCol={{ span: 20, offset: 0 }}
rules={[{ required: true }]}
>
<Input
style={{ width: '100%' }}
allowClear
/>
</Form.Item>
</Col>
</Row>
{
mode==='view'?null:(
<>
<Form.Item {...btnItemLayout}>
<Button type="primary" htmlType="submit">
{mode === 'save' ? '提交' : '修改'}
</Button>
</Form.Item>
</>
)
}
</Form>
</>
);
}
export default ModalForm;

View File

@ -0,0 +1,88 @@
import React,{useEffect,useState,useRef,useMemo} from 'react'
import { Table, Button } from 'antd'
import ModalForm from './form';
import ReactEcharts from 'echarts-for-react';
import drpOption from './drpOption'
import apiurl from '../../../../../service/apiurl';
import { httppost2 } from '../../../../../utils/request';
import { CrudOpRender_text } from '../../../../../components/crud/CrudOpRender';
import BasicCrudModal from '../../../../../components/crud/BasicCrudModal2';
export default function Zrtx() {
const refModal = useRef();
const columns = [
{
title: '序号', dataIndex: 'index', key: 'index', align: "center",
render: (r, c,i) => <span>{i + 1}</span>
},
{ title: '水位(m)', dataIndex: 'q', key: 'rz',align:"center" },
{ title: '流量(m³/s)', dataIndex: 'z', key: 'z',align:"center" },
{
title: '操作', dataIndex: 'op', key: 'op', align: "center",width:200,
render: (value, row, index) => (<CrudOpRender_text del={true} edit={true} command={(cmd) => () => command(cmd)(row)} />)
},
];
const [data, setData] = useState([])
const option = useMemo(() => {
return drpOption({data});
}, [data])
const getData = async () => {
try {
const res = await httppost2(apiurl.dataResourcesCenter.projectAndWater.xl.list)
setData(res.data.map((item,i) => ({...item,inx:i + 1})))
} catch (error) {
console.log(error);
}
}
const command = (type) => (params) => {
if (type === 'save') {
refModal.current.showSave({});
} else if (type === 'edit') {
refModal.current.showEdit(params)
} else if (type === 'view') {
refModal.current.showView(params);
} else if (type === 'del') {
refModal.current.onDeletePost(apiurl.dataResourcesCenter.projectAndWater.xl.delete,params);
}
}
useEffect(() => {
getData();
}, [])
return (
<div>
<h1><Button type='primary' onClick={() => {refModal.current.showSave({})}}>新增</Button></h1>
<div style={{display:"flex",columnGap:10,width:"100%"}}>
<div style={{width:500}}>
<Table
rowKey="inx"
columns={columns}
dataSource={data}
pagination={false}
scroll={{ y:"calc( 100vh - 300px )"}}
/>
</div>
<div className='right-echarts' style={{ flex: 1 }}>
{
data.length > 0 ?
<ReactEcharts
option={option}
style={{width: "100%", height: '100%'}}
/> : <div style={{textAlign: "center", margin: "10%"}}>
<img src={`${process.env.PUBLIC_URL}/assets/noData.png`} alt=""/>
</div>
}
</div>
</div>
<BasicCrudModal
width={550}
ref={refModal}
title=""
component={ModalForm}
onCrudSuccess={getData}
/>
</div>
)
}

View File

@ -61,7 +61,7 @@ const Page = () => {
x: 200,
y: 60,
width: '80%',
height: 'calc(100% - 100px)'
height: 'calc(100% - 200px)'
}}
>
<div style={{ display: 'flex', justifyContent: 'center', alignItems: 'center', width:'72%',height:'98%',}}>

View File

@ -49,6 +49,7 @@ const Page = () => {
}
const { tableProps, search, refresh } = usePageTable(createCrudService(apiurl.gcdsj.qzqda.list).find_noCode);
console.log(tableProps);
/**
* @description pdf文件预览
@ -62,6 +63,9 @@ const Page = () => {
const onExport = () => {
let params = {
...searchVal,
pageSo:{
pageNum:1,pageSize:9999
}
}
httppost5(apiurl.gcdsj.qzqda.export, params).then(res => {
exportFile(`全周期档案.xlsx`,res.data)
@ -94,7 +98,11 @@ const onExport = () => {
{tableProps.dataSource?.map((item, index) => (
<Timeline.Item key={index}>
<div className='time-line-item'>
<span style={{width:100}}>{item.eventsDate}</span>
<div style={{width:100}}>
<span>{item.eventsDate}</span>
<div className='dsj'>{item.typeName}</div>
</div>
<div className='item-right'>
<span>{item.eventsDesc}</span>
<div style={{ display: "flex"}}>

View File

@ -1,13 +1,14 @@
.basic-info{
.basic-info {
position: relative;
font-size: 16px;
margin-bottom: 20px;
padding:5px 25px;
padding: 5px 25px;
border-bottom: 1px solid #eee;
&::before{
&::before {
position: absolute;
top:8px;
left:0;
top: 8px;
left: 0;
content: "";
display: block;
width: 5px;
@ -15,16 +16,35 @@
background-color: #0079fe;
}
}
.time-line{
.time-line {
width: 50%;
margin-left: 6%;
margin-top: 1%;
.time-line-item{
.time-line-item {
display: flex;
// align-items: center;
column-gap: 20px;
.item-right{
flex:1;
.dsj {
border-width: 0px;
width: 82px;
height: 30px;
background: inherit;
background-color: rgba(128, 255, 255, 1);
border: none;
border-radius: 4px;
-moz-box-shadow: none;
-webkit-box-shadow: none;
box-shadow: none;
line-height: 30px;
text-align: center;
margin-top: 10px;
}
.item-right {
flex: 1;
display: flex;
flex-direction: column;
justify-content: space-between;

View File

@ -1,5 +1,5 @@
import React, { useEffect, useState } from 'react';
import { Form, Input, Button, DatePicker } from 'antd';
import { Form, Select, Button, DatePicker } from 'antd';
import moment from 'moment';
const { RangePicker } = DatePicker;
@ -25,8 +25,10 @@ const ToolBar = ({ setSearchVal, onExport, storeData, role }) => {
<>
<div style={{ display: 'flex', justifyContent: 'space-between' }}>
<Form form={form} className='toolbarBox' layout="inline" onFinish={onFinish}>
<Form.Item label="名称" name="name">
<Input allowClear style={{ width: '150px' }} />
<Form.Item label="类型" name="types">
<Select options={[
{value:1,label:'大事记'}, {value:2,label:'调度指令'}, {value:3,label:'维修养护'},{value:4,label:'安全鉴定'}, {value:5,label:"除险加固"}, {value:6,label:'白蚁普查'}
]} allowClear mode='multiple' maxTagCount='responsive' style={{ width: "200px" }}/>
</Form.Item>
<Form.Item label="发生日期" name="tm">
<RangePicker

View File

@ -37,7 +37,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
*/
const download = (params) => {
let downloadLink = document.createElement("a");
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/xyt/SzRuleByLaw/file/download/${params}`;
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/tsg/SzRuleByLaw/file/download/${params}`;
downloadLink.download = `${params.fileName}`;
downloadLink.style.display = "none";
// 将链接添加到页面中

View File

@ -156,7 +156,7 @@ const Page = () => {
border: 0,
marginTop: 20,
}}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/xyt/projectEvents/file/download/${iframeSrc}`)}`}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/tsg/projectEvents/file/download/${iframeSrc}`)}`}
/>
</Modal>
</>

View File

@ -74,7 +74,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
*/
const download = (params) => {
let downloadLink = document.createElement("a");
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/xyt/rescue/team/file/download/${params}`;
downloadLink.href = `http://local.gunshiiot.com:18083/gunshiApp/tsg/rescue/team/file/download/${params}`;
downloadLink.download = `${params.fileName}`;
downloadLink.style.display = "none";
// 将链接添加到页面中
@ -407,7 +407,7 @@ const ModalForm = ({ mode, record, onEdit, onSave, onSimilarSave }) => {
border: 0,
marginTop: 20,
}}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/xyt/rescue/goods/file/download/${iframeSrc}`)}`}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/tsg/rescue/goods/file/download/${iframeSrc}`)}`}
/>
</Modal>
</div>

View File

@ -4,6 +4,7 @@ import { useForm } from 'antd/lib/form/Form';
import { useEffect, useState } from 'react';
import { httpgetExport, httppostAddfile } from '../../../../utils/request';
import { exportFile } from '../../../../utils/tools';
import PdfView from './pdfView'
const { Dragger } = Upload;
@ -115,9 +116,9 @@ const Page = ({ uploadUrl, downloadUrl, type, getFormInfo, formJsonData }) => {
return null;
}
const preView = (item) => {
if (checkMediaType(item.name) == 'pdf') {
if (checkMediaType(item.fileName) == 'pdf') {
// window.open(baseUrl + item.previewUrl)
setUrl(item.previewUrl)
setUrl(item.fileId)
setIsModal(true)
}
@ -209,6 +210,7 @@ const Page = ({ uploadUrl, downloadUrl, type, getFormInfo, formJsonData }) => {
<Button type="" style={{ marginRight: 10 }} onClick={cancel}>取消</Button>
<Button type="primary" onClick={getInfo} loading={loading}>确定</Button>
</div>
<PdfView url={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/tsg/rescue/goods/file/download/${url}`)}`} isModal={isModal} setModalN={(e)=>setIsModal(e)}/>
</Form >
)

View File

@ -93,32 +93,22 @@ const Page = ({ mode, onCrudSuccess,record,submit }) => {
})
}
useEffect(()=>{
let obj = {
createName: localStorage.getItem('userName'),
createTime: dayjs().format('YYYY-MM-DD HH:mm:ss'),
createBy:localStorage.getItem('userId')
}
if(mode == 'edit' || mode =='view'){
httpget(apiurl.szzf.ajdj.detail + record.id).then(async res=>{
let obj = {
createName: localStorage.getItem('userName'),
createTime: dayjs().format('YYYY-MM-DD HH:mm:ss'),
createBy:localStorage.getItem('userId')
}
if(res.data?.caseDate){
obj.caseDate=dayjs(res.data.caseDate)
}
if(res.data?.illegalDate){
obj.illegalDate=dayjs(res.data.illegalDate)
}
// if(res.data.IllegalDate){
// obj.IllegalDate = dayjs(res.data.IllegalDate)
// }
setFormData({...res.data,...obj})
})
}else if(mode == 'save'){
let obj = {
createName: localStorage.getItem('userName'),
createTime: dayjs().format('YYYY-MM-DD HH:mm:ss'),
createBy:localStorage.getItem('userId'),
}
setFormData({...obj})
}

View File

@ -152,7 +152,7 @@ const Page = () => {
border: 0,
marginTop: 20,
}}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/xyt/projectEvents/file/download/${iframeSrc}`)}`}
src={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/tsg/projectEvents/file/download/${iframeSrc}`)}`}
/>
</Modal>
</>

View File

@ -4,6 +4,7 @@ import { useForm } from 'antd/lib/form/Form';
import { useEffect, useState } from 'react';
import { httpgetExport, httppostAddfile } from '../../../../utils/request';
import { exportFile } from '../../../../utils/tools';
import PdfView from './pdfView'
const { Dragger } = Upload;
@ -104,9 +105,9 @@ const Page = ({ uploadUrl, downloadUrl, type, getFormInfo, formJsonData }) => {
return null;
}
const preView = (item) => {
if (checkMediaType(item.name) == 'pdf') {
if (checkMediaType(item.fileName) == 'pdf') {
// window.open(baseUrl + item.previewUrl)
setUrl(item.previewUrl)
setUrl(item.fileId)
setIsModal(true)
}
@ -173,6 +174,7 @@ const Page = ({ uploadUrl, downloadUrl, type, getFormInfo, formJsonData }) => {
<Button type="" style={{ marginRight: 10 }} onClick={cancel}>取消</Button>
<Button type="primary" onClick={getInfo} loading={loading}>确定</Button>
</div>
<PdfView url={`${process.env.PUBLIC_URL}/static/pdf/web/viewer.html?file=${encodeURIComponent(`/gunshiApp/tsg/rescue/goods/file/download/${url}`)}`} isModal={isModal} setModalN={(e)=>setIsModal(e)}/>
</Form >
)

View File

@ -0,0 +1,47 @@
import React, { Component, useEffect, useState } from 'react';
import { Document, Page, pdfjs } from 'react-pdf';
import { Modal } from 'antd';
const Pdf = ({ url,isModal,setModalN }) => {
const [isModalOpen, setIsModalOpen] = useState(false);
const handleOk = () => {
setIsModalOpen(false);
setModalN(false)
};
const handleCancel = () => {
setIsModalOpen(false);
setModalN(false)
};
useEffect(()=>{
setIsModalOpen(isModal)
},[isModal])
return (
<div>
<Modal
title={<div style={{ backgroundColor: '#259dff', padding: 10, color: "#fff" }}>pdf</div>}
open={isModalOpen}
width={1000}
onOk={handleOk}
footer={false}
onCancel={handleCancel}
style={{ marginTop: "-5%" }}
destroyOnClose>
<div style={{ padding: "0 10px" }}>
<iframe
style={{
height: '80vh',
width: '100%',
border: 0,
marginTop: 20,
}}
src={url}
/>
</div>
</Modal>
</div>
);
}
export default Pdf

View File

@ -36,18 +36,29 @@ const Page = ({ title = '标题' }) => {
}
},
series: {
name: '圆环图系列名称',
name: '执行情况',
type: 'pie',
// center: ['50%', '50%'],
// radius: ['35%', '50%'],
hoverAnimation: true,
// hoverAnimation: true,
data: plandata,
label: {
normal: {
show: true,
position: 'outside',
formatter: '{c}'
}
show:false,
},
labelLine: {
show: false
},
itemStyle:{
color: function (colors) {
var colorList = [
'#5b8ff9',
'#5ad8a6',
'#5d7092',
'#f6bd16',
'#6f5ef9',
];
return colorList[colors.dataIndex];
}
}
}

View File

@ -49,18 +49,29 @@ const Page = ({ title = '标题' }) => {
}
},
series: {
name: '圆环图系列名称',
name: '案件来源',
type: 'pie',
center: ['50%', '50%'],
radius: ['60%', '80%'],
hoverAnimation: true,
// hoverAnimation: true,
data: plandata,
label: {
normal: {
show: true,
position: 'outside',
formatter: '{c}'
}
show:false,
},
labelLine: {
show: false
},
itemStyle:{
color: function (colors) {
var colorList = [
'#5b8ff9',
'#5ad8a6',
'#5d7092',
'#f6bd16',
'#6f5ef9',
];
return colorList[colors.dataIndex];
}
}
}

View File

@ -18,81 +18,70 @@ let obj =
const Page = ({ title = '标题' }) => {
const [echart2, setEchart2] = useState(Object())
const [inspectordata, setInspectorData] = useState([{}])
const [plandata, setPlanData] = useState(Object())
const [plandata, setPlanData] = useState([])
const [problemdata, setProblemData] = useState(Object())
const [sumTotal, setSum] = useState(0)
const getPlanOption = useMemo((name, data) => {
// let total = 0
// for (let i = 0; i < data.length; i++) {
// total = total + Number(data[i].value)
// }
return {
legend: {
data: Object.values(obj)
show: true,
data: plandata?.map(item=>item.name),
type: 'scroll'
},
tooltip: {},
polar: {
// radius: [0, '80%']
},
angleAxis: {
type: 'category',
data: Object.values(obj)
data: plandata?.map(item=>item.name),
},
// radar: [
// {
// indicator: [
// { text: '' },
// { text: '' },
// { text: '' },
// { text: '' },
// { text: '' },
// { text: '' },
// { text: '' },
// ],
// radius: '80%',
// splitNumber: 12,
// shape: 'circle',
// splitArea: {
// areaStyle: {
// color: '#fff',
// }
// },
// axisLine: {
// lineStyle: {
// color: '#d4d4d4'
// }
// },
// },
// ],
radiusAxis: {
min: 0,
max: 20,
interval: 2,
// 刻度
axisTick: {
show: false
axisTick:{
show:false
},
//刻度数值
axisLabel: {
show: false
axisLabel:{
show:false
},
// 线
axisLine: {
show: false
axisLine:{
show:false
},
},
polar: {},
series: [
{
name: '案件类型',
stack: 'a',
type: 'pie',
center: ['50%', '50%'],
selectedOffset: 0,
radius: [0, 140],
center: ['50%', '50%'],
roseType: 'area',
itemStyle: {  //去除饼图的指示折线label
stillShowZeroSum:false,
label: {
show:false,
},
labelLine: {
show: true
},
itemStyle: {
normal: {
label: {
show: false,
},
borderRadius: 8
color: function (colors) {
var colorList = [
'#5b8ff9',
'#5ad8a6',
'#5d7092',
'#f6bd16',
'#6f5ef9',
];
return colorList[colors.dataIndex];
}
},
},
data: plandata
@ -100,8 +89,6 @@ const Page = ({ title = '标题' }) => {
]
}
}, [plandata])
console.log(getPlanOption);
const onOk = (event, index) => {
if (event !== null) {
let params = {
@ -113,15 +100,23 @@ const Page = ({ title = '标题' }) => {
}
}
const getInfo = (params) => {
let obj1 = []
let sum = 0
httppost(apiurl.szzf.ajtj.info + 1, params).then(res => {
res.data.map(item => {
obj1.push({ value: item.count, name: obj[item.type] })
sum = sum + item.count
const arr = Object.values(obj).map(item1=>{
let obj1=res.data.find(item => obj[item.type] == item1)
if(obj1?.count){
sum =sum+1
return { value: obj1?.count, name: item1 }
}else{
return { value: 0, name: item1 }
}
})
// debugger;
setPlanData(obj1)
if(sum == 0){
setPlanData([])
}else{
setPlanData(arr)
}
setSum(sum)
})

View File

@ -1,6 +1,5 @@
export default function jgOption(data1) {
console.log("123", data1);
const one = `${process.env.PUBLIC_URL}/assets/images/one.png`;
const two = `${process.env.PUBLIC_URL}/assets/images/two.png`;
const three = `${process.env.PUBLIC_URL}/assets/images/three.png`;

View File

@ -183,7 +183,7 @@ const ToolBar = ({ value, onChange, tm, callback,role }) => {
<Dragger
name='file'
// multiple
action="/gunshiApp/xyt/rota/importData"
action="/gunshiApp/tsg/rota/importData"
onChange={fileChange}
beforeUpload={beforeUpload}
onDrop={(info) => { console.log(info); }}